In this document, we explain (on example of a football playing robot) how the EVAL subgroup understands the behavior-based architectures of complex robotic systems and possible uses of learning and evolutionary robotics in robotic systems.
There are 2 kinds of basic approaches to building systems. First, the top-down approach specifies the overall system from a black-box perspective and divides it into smaller and smaller subsystems, components, and parts. These parts are later assembled together to compose the whole system. A good football player should for example have
Behavior-based architectures (for example Brook's Subsumption architecture) are traditionally pure bottom-up systems. We believe that a successful robotic system has to be developed in an interaction of top-down and bottom-up approaches. The tendency in building robotic systems in the last decade shows increase in the use of hybrid (top-down combined with bottom-up) architectures.
Every robotic system consists of robot's body, sensors, actuators, and a controller. A robot is built for certain purpose, in our case to play football. While a robot operates in its environment, it has set of goals, that are configurable - possibly also during its operation. A football player is pretty simple and it has just 4 goals: to score in the opponent's gate, to avoid the opponent to score, to survive, and to play according to the rules. From these basic goals, a robot can infer (or has hard coded) strategies. Our football player can be equipped with various offensive, defensive, goal keeping, and cooperating strategies. During operations, robot observes the situation and applies the strategies. There might be more strategies that compete for use at the same time. The active strategy generates intentions (activities that the agent plans to execute in the near future) of the robot. A football player's intentions would be to block the opponent, to pass the ball to its company that is reaching a promising offensive position, to fool opponent player by pretending to kick the ball, etc. Intentions are fed into the controller's behavior-based architecture and here the top-down approach ends.
The bottom-up BB-architecture is layered into 3 levels:
Assemblages represent various activities that the robot can perform and the smallest non-dividable elements in their specifications are behaviors. Assemblage controls which behaviors are active and how they are coordinated. The output from behaviors can be used in 'programs' of assemlages. There can be more assemblages active at the same time. In those cases, however, the plan has to contain a coordinator of assemblages.
Behaviors are basic low-level activities that the robot is able to perform. They can be hard coded, programmed, or even learned during robot's lifetime. Behaviors are autonomous pieces of code that can run in parallel. They have access to direct and/or preprocessed sensory inputs and can control robot's actuators directly and/or through behaviors coordinator specified by the responsible assemlage. Examples of a football player behaviors are: test the presense of ball in front, move forward avoiding collision, move forward with a ball, locate opponents goal, move to the middle of the field, etc.
Evolutionary computation can be used in Behavior-Based robotics at the following places:
The above can be combined and more parts of the robot can be evolved simultaneously. In addition, evolution of assemblages and behaviors is often done in parallel in Genetic Programming, although it is very implicit. That is, one cannot locate the assemblages. On the other hand, GP does evolve hierarchical structures in which the lower levels may be similar to behaviors, while the S-expression (program) as a whole has a functionality similar to that of an assmeblage. See also Koza's Automatically Defined Functions (ADF).
Evolutionary computation used for BB-robotics brings several challenging problems:
and few more 'floating' problems:
Here is one of the possible classification of Evolutionary Robotics:
If you have any comments, ideas, suggestions, cooperation proposals, critique, or interest, please contact the EVAL group by e-mail.