Autonomous robots are the intelligent agents par excellence. We frequently define a robot as a machine that senses, thinks and acts, i.e., an agent. They are distinguished from software agents in that robots are embodied agents, situated in the real world. As such, they are subject both to the joys and sorrows of the world. They can be touched and seen and heard (sometimes even smelled!), they have physical dimensions, and they can exert force on other objects. These objects can be like a ball in the RoboCup or Mirosot robot soccer games, they can be parts to be assembled, airplanes to be washed, carpets to be vacuumed, terrain to be traversed or cameras to be aimed. On the other hand, since robots are agents in the world they are also subject to its physical laws, they have mass and inertia, their moving parts encounter friction and hence heat, no two parts are precisely alike, measurements are corrupted by noise, and alas, parts break. Of course, robots also contain computers, and hence they are also subject to the slings and arrows of computer misfortunes, both in hardware and software. Finally, the world into which we place these robots keeps changing, it is non-stationary and unstructured, so that we cannot predict its features accurately in advance.