Wednesday, May 31, 2006

What is a robot?

A few weeks ago we had a visitor to the lab who asked a seemingly straightforward question: "what is a robot?". A perfectly reasonable question, in fact, given that we are a robot lab.

Of course he got a different answer from everyone who offered a definition. No surprises there then. But that got me thinking, what is a robot? Of course the word has a well known dictionary definition from the Czech word Robota (meaning 'compulsory service'), the 'mechanical men and women' in Capek's play Rossum's Universal Robots.

In fact the OED gives a second definition 'A machine devised to function in place of a living agent; one which acts automatically or with a minimum of external impulse'. For me, this definition is also somehow archaic, since it does not admit to the possibility that a robot could have a function other than as a subservient machine. We can now contemplate robots that are not designed as servile machines, but are perhaps designed or evolved to exist because, well for no reason, they just exist.

Wikipedia gives a fullsome definition for 'robot' which starts with the (for me) deeply flawed statement 'A robot is a mechanical device that can perform preprogrammed physical tasks'. The parts I have a problem with here are 'preprogrammed' and 'tasks'. There are many research robots that are not preprogrammed - their behaviours are either learned, evolved or emergent (or some combination of those). My objection to 'tasks' is that some robots may not have tasks in any meaningful sense.

I believe we need a new definition for 21st century robots, that shakes off 20th C notions of subservient machines performing menial tasks for lazy humans. A definition that instead encompasses the possibility of future robots as a form of artificial life, neither preprogrammed or task oriented.

Ok, so here's my attempt at a definition.

A robot is a self-contained artificial machine that is able to sense it's environment and purposefully act within or upon that environment.

An important characteristic of a robot is, therefore, that its sense-action loop is closed through the environment in which it operates (the act of moving changes a robot's perception of its environment, thus giving the robot a fresh set of sense inputs). Thus, even simple robots may behave in a complex or unpredictable way, when placed in real-world environments. This is why designing robots for unsupervised operation in real-world environments is difficult.

A second characteristic of a robot is the degree of autonomy.

In respect of 'control' autonomy there is a spectrum of autonomy from none (i.e. a tele-operated robot) to full autonomy (no human supervision). A robot that has a high level of control autonomy will require an embedded and embodied artificial intelligence in order that the robot can choose the right actions and, perhaps, also adapt or learn from changes in the environment or its own actions.

Finally, and often overlooked is 'energy' autonomy. A robot typically requires its own self-contained power source, but if sustained operation over extended periods is required then the robot will need to have the ability to autonomously replenish its power source.


  1. Hi Alan,

    you define "A robot is a self-contained artificial machine that is able to sense it's environment and purposefully act within or upon that environment."

    I have a problem with the "self-contained". Of course it sounds meaningfull in the first place, but lets think twice.

    Recent robot research splits the robot into two parts, the body and the "mind". The mind - the computer - doesn't habe to sit "on top of the body". Even more, it is a standard personal computer, with a standard IDE, superb debugging possibilities etc.

    I won't say, that they don't deal with robots, do you?

    But this gives other interessting questions. Who is the robot? is the robot the computer, and the body is only its "tool"? Imagine the PC is a notebook and you put it into a shopping cart. Now the body can carry around its PC. Isn't the robot the body now, and the PC is a part of it, which has to be "with" the body? (Say, the wireless communication is restricted to 10 meters.)

    What, if one PC / one programm / one "personality" controls 2 bodies? Borg like?


  2. Hi tsmg

    Yes I admit that my first draft had 'self-contained' in parentheses.

    You are quite right, the robot's body and brain don't have to be integrated. We can build robots with high speed wireless connections to a PC which contains the robot's intelligent control system - just as if it were physically part of the robot.

    In this case the 'robot', I would argue is the whole system including the physical body with sensors and actuators, and its wierdly disembodied brain. So really I meant 'self-contained' in the logical rather than physical sense.


  3. Great job on your blog. I have just started blogging myself although I own another site lucid dream and hope to build a blog around that. Hope I do as good a job of mine ;-)

  4. ^^ Now that's the definition of a robot :P