A Robust Layered Control System for a Mobile Robot               By Rodney A. Brooks          A Software Engineering Persp...
A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksAgenda   •   Introduction   •   Software Engineering...
A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksIntroduction      • In Software Engineering, complex...
A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksHierarchyIn this paper Brooks (1986) describes a new...
A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksHierarchyBrooks (1986) Hierarchy approach: (Continue...
A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksDecomposition:•   Brooks (1986) then focuses on deco...
A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksDecomposition (Vertical) of a Layered Control System...
A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksDecomposition (Horizontal) of a Layered Control Syst...
A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksAbstract Functional Requirements:• Brooks notes that...
A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksRobot Functional Units:• Brooks notes that the usual...
A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksRobot Functional Units:• According to Brooks after a...
A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksRequirements:Brooks points out that a number of requ...
A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksStarting Assumptions:• Brooks’ proposed design decis...
A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksStarting Assumptions:Brooks’ proposed design decisio...
A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksStarting Assumptions• Brooks’ proposed design decisi...
A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksPhysical Robot - Levels and layers• Brooks (1986) no...
A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksPhysical Robot - Levels of Competence• Traditionally...
A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksPhysical Robot - Levels of Competence       • Brooks...
A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksPhysical Robot - Levels of Competence0) Avoid contac...
A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksPhysical Robot - Layers of ControlThe key idea of le...
A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksPhysical Robot - Subsumption Architecture•   Brooks ...
A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksLimitations of this approach:• Brooks notes that one...
A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksConclusion:• Brooks focuses on decomposition - a pro...
A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksReferences:[1] Brooks, R., "A robust layered control...
Upcoming SlideShare
Loading in …5
×

A Robust Layered Control System for a Mobile Robot, Rodney A. Brooks; A Software Engineering Perspective

1,163 views
1,045 views

Published on

0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,163
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
26
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

A Robust Layered Control System for a Mobile Robot, Rodney A. Brooks; A Software Engineering Perspective

  1. 1. A Robust Layered Control System for a Mobile Robot By Rodney A. Brooks A Software Engineering Perspective By Kato Mivule Computer Science Department Bowie State University AI Agents - COSC 897 Fall 2012
  2. 2. A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksAgenda • Introduction • Software Engineering Principles • Robot Functional Units • Requirements • Starting Assumptions • Physical Robot • Conclusion • Limitations • References
  3. 3. A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksIntroduction • In Software Engineering, complexity can be handled via: • Abstraction • Decomposition • Hierarchy
  4. 4. A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksHierarchyIn this paper Brooks (1986) describes a new architecture for controlling mobilerobots, first, by using the Hierarchy approach: • Layers of control system are built to let the robot operate at increasing levels of competence. • Layers are made up of asynchronous modules which communicate over low bandwidth channels. • Each module is an instance of a fairly simple computational machine.
  5. 5. A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksHierarchyBrooks (1986) Hierarchy approach: (Continued) • Higher level layers can subsume the roles of lower levels by suppressing their outputs. • However, lower levels continue to function as higher levels are added. • The result is a robust and flexible robot control system. • The intended ‘Brooks robot’ was supposed to move around the laboratory and build maps of its surroundings.
  6. 6. A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksDecomposition:• Brooks (1986) then focuses on decomposition - a process of breaking down the complex problem into smaller and simpler manageable pieces.• Brooks (1986) suggests a breakdown of the layered control system into the following components: • Perception • Modeling • Planning • Task execution • Motor control
  7. 7. A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksDecomposition (Vertical) of a Layered Control System:Fig 1: A Traditional decomposition of a mobile robot control system into functionalmodules as adapted from Brooks (1986).
  8. 8. A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksDecomposition (Horizontal) of a Layered Control System:Fig 2: A decomposition of a mobile robot control system based on task achieving behavioras adapted from Brooks (1996).
  9. 9. A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksAbstract Functional Requirements:• Brooks notes that a control system for a completely autonomous mobile robot must do the following: • Perform many complex information processing tasks in real time. • Operate in an environment where the boundary conditions are changing rapidly. • Determination of those boundary conditions is done over very noisy channels since there is no straightforward mapping between sensors (e.g. TV cameras) and the form required of the boundary conditions.
  10. 10. A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksRobot Functional Units:• Brooks notes that the usual approach to building control systems for such robots is to decompose the problem into a series of functional units below: • Perception • Modeling • Planning • Task execution • Motor control
  11. 11. A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksRobot Functional Units:• According to Brooks after analyzing the computational requirements, task achieving behaviors as a primary decomposition of the problem in conjunction with the Robots Sensors and Actuators are used: • Reason about behavior of objects • Plan changes to the world • Identify objects • Monitor changes • Build maps • Explore • Wander • Avoid objects• Brooks notes that as with a functional decomposition, each task is implemented explicitly and then combined to form a robot control system.
  12. 12. A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksRequirements:Brooks points out that a number of requirements (constraints) of a control system for anintelligent autonomous mobile robot can be identified as follows: • Multiple Goals: Often the robot will have multiple goals, some conflicting, including avoiding obstacles to reach a goal. • Multiple Sensors: The robot will most likely have multiple sensors e.g. TV cameras, encoders on steering and drive mechanisms, etc. • Robustness: The robot ought to be robust. When some sensors fail it should be able to adapt and cope by relying on those still functional. • Additivity: As more sensors and capabilities are added to a robot it needs more processing power; otherwise the original capabilities of the robot will be impaired relative to the How of time.
  13. 13. A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksStarting Assumptions:• Brooks’ proposed design decisions for mobile robot are based on nine dogmatic principles: • Complexity in Simplicity: Complex behavior need not necessarily be a product of an extremely complex control system. • Things should be simple. Brooks notes that this principle has two underlying principles: • Keep Interfaces Simple: Interfaces should be kept simple. • Don’t solve unstable problems: Robot should not dwell on solving unstable problems. • Cheap Robots: Robots should be inexpensive to build but can wander around human inhabited space with no human intervention, advice or control and at the same time do useful work.
  14. 14. A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksStarting Assumptions:Brooks’ proposed design decisions for mobile robot are based on nine dogmaticprinciples: (Continued) • Three Dimensional Robot: Since the human world is three dimensional, robots must model the world as three dimensional space as humans. • Avoid Absolute Coordinate systems: Absolute coordinate systems for a robot are the source of large cumulative errors and therefore relational maps are more useful. • Avoid Artificial Environments: Brooks suggests that artificial environments should be avoided so robots move and train in the real world environment. • Utilize Visual Data: Brooks also suggests utilizing visual data rather than sonar data, because visual data is richer in description of the environment.
  15. 15. A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksStarting Assumptions• Brooks’ proposed design decisions for mobile robot are based on nine dogmatic principles: (Continued) • Self-Calibrating For Robustness: Brooks points out that for robustness sake: • The robot must be able to perform when one of its sensors fails. • The recovery should be quick. • Built-in self-calibration must be occurring at all times. • Self-Sustaining Robots: Finally, Brooks suggests that the goal should be: • To build artificial beings. • To build robots which can survive for long periods of time without human assistance in a dynamic complex environment. • To build self-sustaining robots.
  16. 16. A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksPhysical Robot - Levels and layers• Brooks (1986) notes that previous robotic design approaches dealt with complexity in the following order: 1. Decomposition 2. Hierarchy 3. Abstraction• However, Brooks (1986) suggested altering this systematic approach in dealing with complexity.
  17. 17. A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksPhysical Robot - Levels of Competence• Traditionally, mobile robot builders decomposed the complexity problem into the following Horizontal decomposition: • Sensing • Mapping sensor data • Planning • Task execution • Motor control
  18. 18. A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksPhysical Robot - Levels of Competence • Brooks (1986) proposed to decompose the problem vertically as a primary way of slicing up the problem. • A number of levels of competence for an autonomous mobile robot where then proposed. • A level of competence is an informal specification of a desired class of behaviors for a robot over all environments it will encounter. • A higher level of competence implies a more specific desired class of behaviors
  19. 19. A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksPhysical Robot - Levels of Competence0) Avoid contact with objects (whether the objects move or1) Wander aimlessly around without hitting things.2) Explore the world by seeing places in the distance that look reachable and heading for them.3) Build a map of the environment and plan routes from one place to another.4) Notice changes in the “static” environment.5) Reason about the world in terms of identifiable objects and perform tasks related to certainobjects.6) Formulate and execute plans that involve changing the state of the world in some desirable way.7) Reason about the behavior of objects in the world and modify plans accordingly.Notice that each level of competence includes as a subset each earlier level of competence.
  20. 20. A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksPhysical Robot - Layers of ControlThe key idea of levels of competence is to build layers of a control system corresponding to each levelof competence and simply add a new layer to an existing set to move to the next higher level ofoverall competence.A Robust Layered Control System for a Mobile Robot in which control is layered with higher levellayers subsuming the roles of lower level layers when they wish to take control (Brooks 1986).
  21. 21. A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksPhysical Robot - Subsumption Architecture• Brooks (1986) started by building a complete robot control system that achieves level 0 competence (zeroth-level control system).• Brooks (1986) then proceeded to build the next control layer, the first-level control system.• This level examined data from the level 0 system and was also permitted to inject data into the internal interfaces of level 0 suppressing the normal data flow.• This layer, with the aid of the zeroth, achieves level 1 competence.• The zeroth layer continues to run unaware of the layer above it which sometimes interferes with its data paths.• The same process is repeated to achieve higher levels of competence.• Brooks (1986) called this architecture subsumption architecture.
  22. 22. A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksLimitations of this approach:• Brooks notes that one of the limitation of this approach is a demonstration with a real robot. • How to realize the full control system. • How to realize separation between Robot Control algorithms and implementations mediums.
  23. 23. A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksConclusion:• Brooks focuses on decomposition - a process of breaking down the complex problem into smaller and simpler manageable pieces. • Brooks points out the following key ideas in conclusion: • The robot control problem can be handled via decomposition in terms of behavior rather than in terms of functional modules. • This approach provides an incremental way to build complex robot systems from fairly simple systems. • There is no need for central control module in this type of mobile robot. • The control system is viewed as a system of agents each busy with their own solipsist world - each simple robot completing its own simple task.•
  24. 24. A Robust Layered Control System for a Mobile Robot by Rodney A. BrooksReferences:[1] Brooks, R., "A robust layered control system for a mobile robot," Robotics and Automation, IEEEJournal of , vol.2, no.1, pp. 14- 23, Mar 1986. doi: 10.1109/JRA.1986.1087032URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=1087032&isnumber=23631

×