A Virtual Behavior-Based (or "Bottom-Up") Robotics Lab
Josh De Leeuw: Designer & Primary Author
Ken Livingston: Author
An ethologist is a scientist who tries to learn why animals behave as they do by studying them in their natural environments. By careful observation the ethologist begins to understand events and objects animals notice, and what rules or principles guide the animal's reactions to those events. This sounds easy enough, but building a theory about the causes of behavior from such observations can be quite difficult. One of the reasons for this is that very simple systems of rules can give rise to surprisingly complicated behavior. Observers sometimes have trouble seeing the simple rules behind the behavior, tending to attribute more complexity than is really there.
This same principle is at work in behavior-based robotics, where the rules that govern how a robot behaves are often quite simple indeed. But the final behavior produced by the robot depends on how those rules interact with the environment in which the robot operates. In the robo-ethology exercise you will play the role of the scientist observing behavior and trying to figure out what rules are creating it. By completing this exercise you will begin to understand is designed to help you understand one of the most basic ways of making a robot behave in an intelligent way.
The Logic of Behavior Hierarchies
Imagine a simple robot, let's call it Critter, that responds to bright light by moving toward it, responds to loud sounds by moving away from the noise, and reacts to contact with an object by backing up and turning to avoid it. Programming these responses into Critter can be done fairly simply, but once we have these behaviors in place, we have one more very important problem to solve. At any given moment in time, which one of these things should Critter do? Consider a very special kind of problem that can develop. Imagine that light and noise occur at the same location at the same time. Given the rules by which Critter operates, it is both drawn to the source and repelled by it. If it approaches the light, it violates the rule to run from the sound, but if it runs from the sound, it violates the rule to approach the light. This is the problem of behavior arbitration. When a robot has conflicting goals, how does it decide which one wins out?
There have been many answers to this question in the history of robotics, but one of the simplest was suggested by Rodney Brooks in the 1980s. Brooks had become impatient with the standard world-modeling approach to building autonomous robots, which depends on complex, high-level goals and elaborate decision-making systems in order to select the actions the robot should take. These systems are often very slow, difficult to implement and test, and prone to very dangerous mistakes, especially during their development. Brooks took his cue from the strategies that seem to explain behavior in insects and other relatively simple animals. Although unlikely to win prizes for creative brilliance, they do a remarkably good job of keeping these creatures alive and functioning.
The idea is to think of the world as its own best model, always up to date. No complicated internal models are needed if the Critter just keeps track of what things are like from moment to moment. Different kinds of events in the world can then be set to trigger specific actions directly, without going through any kind of elaborate decision process. Some of those world events are more important to the Critter than others, so, if more than one event occurs, the action chosen is always the most important one that has been triggered by the events in the world.
To see how this might work in a biological critter, think about moths. Moths engage in three kinds of very important behaviors: they seek out food, they release (if female) and track (if male) pheromones so they can get together to mate, and they try to avoid predators like bats. Mating and finding food are obviously very important, but if a moth hears the ultrasonic sounds that a bat makes when it is hunting, it stops trying to mate or find food and instead flies away from the source of the bat's chirping. The sound of the bat suppresses the other behaviors and triggers flight, even if the air is filled with the smells of mates and food. Once the bat is no longer heard, the moth is free to respond to food or the possibility of mating. We can describe the behavior hierarchy of the moth in a drawing like this.
In the exercise you will do, the robot has the ability to do more than three things. Those behaviors are also organized in a hierarchy, but you will not know what the hierarchy is. Instead, you will watch the robot run around in a simple area, just as an ethologist watches animals behave in the wild. Your task will be to figure out the robot's behavior hierarchy by watching very carefully how it acts. Make notes about the robot's behavior, and try to think about which ordering of behaviors would be most likely to produce the actions you observed. Once you have an idea about the likely order, you can test your hypothesis by building a hierarchy using the graphical interface. Now it is time to go to the ETHOLOGY TASK to see if you can create the hierarchy that will exactly match the "Target Behavior" of the mobile robot. Experiment by creating a few hierarchies on your own. Then, for a little help, click on the "Examples/Help" button. Have fun. Time to go to the ETHOLOGY TASK.Vassar College
This module was supported by National Science Foundation Grants #9981217 and #0127561.