Behavior-based robotics [3] appeared in the mid 1980s in response to the traditional hierarchical approach. Brooks [8] proposed to tightly couple perception to action, and thereby, provide a reactive behavior that could deal with any unpredicted situation the robot may encounter. Moreover, Brooks advocated for avoiding keeping any model of the environment in which the robot operates, arguing that ``the world is its own best model''. Behavior-based robotics is a bottom-up methodology, inspired by biological studies, where a collection of behaviors acts in parallel to achieve independent goals. Each of these behaviors is a simple module that receives inputs from the robot's sensors, and outputs actuator commands (see Figure 2.3). The overall architecture consists of several behaviors reading the sensory information and sending actuator commands to a coordinator that combines them in order to send a single command to each actuator (see Figure 2.4).
The most representative of such architectures are Brooks' subsumption architecture [8], Maes' action selection [43] and Arkin's motor schemas [4]. Since then, many other architectures have been proposed.
Behavior-based architectures are classified depending on how the coordination between behaviors is done:
In this section we give a brief overview of the three most known behavior-based architectures and point out some others relevant to our work.