Enter the maze

Strictly X-factor: Ozzie Offspring?

Can SharONN Osborne judges make Kelly judges without the help of Ozzie?

If you have been following the story so far then you will have seen how to create a plan for making instructions from which to make robot judges for game shows like X-factor. Those judges can be given different personalities, rude or supportive, make judgments about acts, and announce their point scores. To do this in an easy way we used ideas taken from biology and applied to programming about inheritence.

Making clones

We have been talking about inheritance so far the way a computer scientist does - but you should notice there is a subtle difference to the biological version. In the biological version, parents (individuals) pass on family traits to their children (other individuals). We have instead been using inheritance to describe how classes of individuals, not single individuals, share traits with other classes. With our Robot Judges a Kelly Judge would not inherit her character from an individual Sharon Judge - no sex with robots after all.

If we wanted lots of 'child' robots all sharing the same personality, we could, instead, create a class of (ie plan for) mass-produced Osborne judges that are all universally kind and have a class of mass-produced Kelly Judges inherit that kindness from them.

DESCRIPTION OF A OsborneJudge EXTENDS Judge WITH
    personality Supportive.

We could then mass-produce them.

SharONN1 IS A NEW OsborneJudge. 
SharONN2 IS A NEW OsborneJudge.

...and so on.

We could then similarly define a class of daughter robots by having them inherit the properties of the general OsborneJudge plan but with some differences (daughters are never identical to their mothers).

DESCRIPTION OF A OzzieChildJudge EXTENDS OsborneJudge WITH
  To ThrowTantrum: 
     SAY ...Actually I think I'll leave the details 
         of what she says to your imagination...

We can then mass-produce KeLEEs too.

KeLEE1 IS A NEW OzzieChildJudge. 
KeLEE2 IS A NEW OzzieChildJudge.

Notice we have used the Computer Science idea of inheritance twice here. Yes, OzzieChild Judges inherited the traits of Osborne Judges, but also our Osborne Judges had already inherited all the properties and behaviours of a basic Judge that the OzzieChild, and so all our KeLEE Judges, get too.

Concert

So we have specified what it means to be a robotic judge - lots of different kinds in fact. Better still we've only had to specify the basics of Judgeness once. That means that if we decide to change anything in the basic judge (like giving them a better way to come up with a mark than randomly or having them choose things to say from a big database of supportive or rude comments) changing it in the one place will apply to all the judges of whatever kind.

What we have created is our first object-oriented program - it would be relatively easy to convert this into a program in a programming language like Java or C#.

We could create robot performers in a similar way (after all don't all the winners seem to merge into one in the end). We would then also have to write some instructions about how to work out who won - does the audience have a vote? How many get knocked out each week? That's no harder - Why not have a go?