1.42k likes | 1.45k Views
Brooks and Subsumption. Intelligent Robot Systems. Knowledge. AI control. Perception. Planning and control. Supervision. Basic level control. Sensors. Actuators. World. Typical Robot System. world. human. Human interface. Actuators. Sensors. Robot. Control. Execution of program.
E N D
Intelligent Robot Systems Knowledge AI control Perception Planning and control Supervision Basic level control Sensors Actuators World
Typical Robot System world human Human interface Actuators Sensors Robot Control Execution of program Data acquisition
Tradition approach Perception Modeling Planning Task execution Motor control • decomposition by function Sensors Actuators
Traditional AI model R. Brooks, “Cambrian Intelligence”
Supervision/Control of a robot Human Interface Control of high levels Supervision Control of low level Control of low levels Robot
Hierachical Architecture StrategicThis level generates goals and strategies for achieving those goals which result in the achievement of an overall objective Where to go TacticalThis level generates the tactics by which a goal is to be achieved how ExecutiveThis level execute the tactical plan execute Three Level Architecture
Context • Physical symbol system hypothesis • PSS: Has physical patterns called symbols and collections of these symbols called expressions • PSSH: A PSS has the necessary & sufficient means for general intelligent action • Important assumption • Intelligence occurs via reasoning • E.g., searching for operators; logical inference • Thinking vs. acting • PSSH type approaches emphasize thinking • But what about intelligence based on acting? • E.g., some nonhuman animals may act more than think but they seem to have a kind of intelligence
The Brooks School Reactive Robotics Behavioral Robotics Subsumption architectures for walking machines Rodney Brooks, Connell Brooks, R. A. (1999). Cambrian Intelligence: The Early History of the New AI. Cambridge, MA MIT Press.
Who is Rodney Brooks? • Adelaide born. Flinders, Stanford, …, MIT • Fujitsu Professor of Computer Science and Engineering (EECS Dept) at MIT. • Director of the Artificial Intelligence Laboratory at MIT. • Companies: Lucid, IS Robotics Inc., Artificial Creatures. • Claims he is a pragmatist.
The early years of subsumption • Aware of the failure of mobile robotics to live up to its potential. • Autonomous vehicles were not that autonomous and weren't even very good vehicles. • Brooks identified various aspects of mobile robotics which he considered to be important and obvious
Key Topics of Behaviour-based Approach • Situatedness • Embodiment • (animal or insect) Intelligence • Emergence
Situatedness A situated automaton is a finite-state machine whose inputs are provided by sensors connected to the environment, and whose outputs are connected to effectors. The world is its own best model Traditional AI, working in symbolic abstracted domain. Problem solvers which are not participating in the world as agents. Dealing with model world - no real connection to external world.
Why situatedness is better for mobile robot behaviors? • Alternative approach, to use a mobile robot which uses the world as its own model, referring to information from sensorsrather than internal world model. • Representations are developed which capture relationships of entities to robot. • Situated agent must respond in timely fashion to inputs; but much information from the world.
Embodiment Embodiment: Physical grounding of robot in real world. According to Brooks (1991), embodiment is critical for two reasons. • Only an embodied agent is validated as one that can deal with real world. • Only through a physical grounding can any internal symbolic system be given meaning.
Emergence Level 3 Level 2 Level 1 Level 0 Sensors Actuators Intelligence emergesfrom interaction of components of the system. Behaviour-based approach - intelligence emergesfrom interaction of simple modules. e.g. Obstacle avoidance, goal finding, wall following modules.
Main Ideas of Behavior-based Approach Main ideas • No central model maintained of world • No central locus of control • No separation into perceptual system, central system and actuation system • Behavioural competence improved by adding one more behaviour specific network to existing network. • Crude analogy to evolutionary development • No hierarchical development • Layers or behaviorsrun in parallel
Model of Brooks: the perceptual and action subsystems are all there really is: Cognition is only in the eye of an observer A. Brooks, “Cambrian Intelligence”
Brooks Criticizes traditional robotics Intelligence is determined by the dynamics of interaction with the world = he says Some activities we think of as intelligent have only been taking place for a small fractionof our evolutionary lineage. ‘Simple’ behaviors to do with perception and mobility took much longer to evolve. Would make sense to begin by looking at simpler animals. - looking at dynamics of interaction of robot with its environment.
Example of Criticisms of traditional approach - Brooks • We should take evidence from biology and evolution. • SPA systems highly constrained. • Early work: formal systems, Blocks World. • Funding forced relevance and new slogan. • But this ignores knowledge acquisition! • Introspection is misleading. • Brooks rejects symbol system hypothesis.
Key Brooksian Ideas • Situatedness and embodiment, as discussed. • Approximate evolution • Incremental additions improve performance • Layers • Each layer • Corresponds to new behavior • Relies upon existing layers • Has minimal interaction with other layers • Is short connection between perception & actuation • Advantages of this paradigm.
Brook's General Robot Requirements • He identified a number of requirements of a control system for an intelligent autonomous mobile robot. • Multiple Goals: • Some conflict, context dependent • Multiple Sensors: • All have errors, inconsistencies and contradiction. • Robustness: • The robot must by fault-tolerant. • Extensible: • You have to be able to build on whatever you built
Subsumption architecture - the Brooks’ approach • levels of competence • example competences • layers of control • subsumption • structure of layers • extensions • finite state machines
What were the weaknesse of traditional approaches? • Can’t account for large aspects of Intelligence • Reliant on representation • Rapidly changing boundary conditions • Hard to map sensor values to physical quantities • Not robust • Relatively slow response • Hard to extend • Hard to test
Brook’s Dogma • Brooks also introduced, what he called, "9 dogmatic principles", • 1)Complex (and useful) behavior need not necessarily be a product of an extremely complex control system. • 2)Things should be simple: Interfaces to subsystems etc. • 3) Build cheap robots that work in human environments • 4) The world is three-dimensional therefore a robot must model the world in 3 dimensions.
Dogma (cont) • 5)Absolute coordinate systems for a robot are the source of large cumulative errors. • 6) The worlds where mobile robots will do useful work are not constructed of exact simple polyhedra. • 7)Visual data is useful for high level tasks. Sonar may only be good for low level tasks where rich environmental descriptions are unnecessary. • 8) The robot must be able to perform when one or more of its sensors fails or starts giving erroneous readings.
Dogma (cont) • 9) "We are interested in building "artificial beings" • --robots that survive for days, weeks and months, • without human assistance, • in a dynamic complex environment. • Such robots must be self-sustaining
Solution: Subsumption • Brooks and his group eventually came up with a computational architecture. • Model arrived atby continually refining attempts to program a robot to reactively avoid collisions in a people-populated environment. • Not intended as a realistic model of how neurological systems work. • The model is called "subsumption architecture”. • Its purpose is to program • intelligent, • situated, • embodied agents.
new architecture:subsumption • Introduced in Brooks’ seminal 1986 paper • Consists of layered behaviors, • from simple to complex, • with simple interfaces • Layers can “override” each other • Each layer has a control program that is capable of working at the speed of environmental change • Each layer now can do: • the appropriate model building, • sensor fusion, • etc. • 1. No central model of world. • 3. No separation into perception, central processing, and actuation. • 3. Layering increases capabilities. • 4. No hierarchical arrangement. • 5. Messages on input ports when needed. • 6. Behaviors run in parallel.
Basic Architecture of an autonomous agent • Control Problem for an autonomous robot • Traditional Approach: • functional decomposition • A new approach • decomposition by activity Sensors Cognition Effectors Vision, range, touch Decides actions and Carry out actions commands effectors Subsumption Architecture
Motivation To achieve cooperation and coordination among different robots and self governance with human like performance in a common work space.
Key Problems for Subsumption-based mobile robots. • Cooperation • Coordination • Learning • Vision • Localization
Subsumption Architecture • 1. Reactive robotics approach, which Brooks calls “behavioral robotics.” • 2. The central idea of Brooks’ approach is that more sophisticated robot competencies should be built on top of simpler ones. • Instead ofall robot inputs feeding into a sensory perception unit, which creates a “world model” of the robot’s environment, which feeds into a planning module, Brooks has argued that: • robot perception and action should be closely linked, • complex behaviors can be built from the interactions of simple ones. • Example: • a robot that must walk should first learn to stand. • Then later behaviors can “exploit” earlier ones: a task which causes a legged robot to move its legs can make use of the knowledge embedded in the behavior that allows the robot to simply stand.
Subsumption Architecture: Massiveness • Brooks has proposed that future unmanned interplanetary missions should be performed by hundreds—or thousands—of simple, insect-like robots that act in teams to accomplish work, rather than a large and complicated monolithic device. • Individual robots could be considered expendable without jeopardizing the success of the entire mission, whereas if a single large robot had a failure, the mission would be over. • Homework (not this year): • Read: • Rodney Brooks’s paper on “Fast, Cheap, and Out of Control”
Behavior-based Robotics in 1984 • Groups at MIT and SRI independently began rethinking how to organise intelligence (around 1984). • Requirements: • Reactive to dynamic environment • Operate on human time scales • Robustness to uncertainty/unpredictability • They implemented simple systems with similar features.
Subsumption Priciples: Network Construction • 1) Computation is organized as an asynchronous network of active computational elements: • they are augmented finite state machines, • with a fixed topology of unidirectional connections. • 2) Messages sent over connections have no implicitsemantics: • they are small numbers (typically 8 or 16 bits, but on some robots just 1 bit), • their meanings are dependent on the dynamics designed into both the sender and receiver • 3) Sensors and actuators are connected to this network, • usually through asynchronous two-sided buffers.
Subsumption Architecture: Incrementally build network of state machines • Incremental method for building robots • Network of finite state machines links sensors to actions • Internal timers • Control system built in layers • Model: Message passingaugmented finite state machines
Finite State Machines switch off on switch • In Brooks’ original work, each module was implemented as a finite state machine • augmented with some instance variables • A finite state machine has • a set of states • a start state; (one or more stop states) • a set of symbols • a set of transitions • For example • an FSM for a light switch • An FSM can be implemented in C • using a state variable and switch statement
Let us look again to more limitations of Conventional Approaches • Perception takes too long • Perception is not asolvedproblem, nor will it be solved in the near future. • Modeling/planning component assumes complete models are available • Overall system cannot respond in real-time • Most robots built this way have failed • (or run very slowly)
And the response of the Behavior-based Approach • Decompose overall control system into a layered set of reactive behaviors • Each behavior represents a complete mappingfrom sensors to motor commands • Low-level behaviors (e.g. avoid) can run in real-time since they use little computation • High-level behaviors are invoked only when necessary • Requires arbitration strategy to choose among (or combine) conflicting behaviors
What does it mean that behaviors run in parallel and control directly? observe changes build maps explore act wander avoid objects • The control system is broken down into horizontal modules, or behaviors, that run in parallel • each behavior has direct access to sensor readings and can control the robot’s motors directly sense
Brooks’ Assumptions for mobile robots: Complex behaviors from simple controls • Complex and useful behavior need not necessarily be a product of an extremely complex control system • Things should be simple • if a single module is getting too big: rethink the design • unstable or ill-conditioned solutions are not good • Ability to wanderin real environments is crucial • The real world is three dimensional • the robot must model its environment in 3D • Absolute coordinate systems are a source of error • relational maps are more useful to a mobile robot
Brooks’ Assumptions for mobile robots: sensors integration and autonomy - • The real world is not constructed of exact shapes • models may be useful, but should not be used alone • Sonar data, while easy to collect, do not lead to rich descriptions of the world • visual data is much better • For robustness, the robot must be able to function when one or more of its sensors fails or starts giving erroneous readings • recovery should be quick (self-calibrating) • Robots should be autonomous and self-sustaining (able to survive weeks without human assistance)
Robot Architecture how much / how do we represent the world internally ? Motor Schemas Just what we need. Subsumption paradigm • Subsumptioncomposes simple reactions (behaviors) by letting one take control at an appropriate time. • World state is computedin order to perform a specific task.
Larger example -- Genghis 1) Standing by tuning the parameters of two behaviors: the leg “swing” and the leg “lift” 2) Simple walking: one leg at a time 3) Force Balancing: incorporated force sensors on the legs 4) Obstacle traversal: the legs should lift much higher if need be 5) Anticipation: handles touch sensors (whiskers) to detect obstacles 6) Pitch stabilization: uses an inclinometer to stabilize fore/aft pitch 7) Prowling: uses infrared sensors to start walking when a human approaches 8) Steering: uses the difference in two IR sensors to follow 57 FSM’s wired together !
Brooks’ Approach • Don’t use logic-based description of percepts • Don’t apply search operators or logical inference or planning operators • Goal formalized, but not generalized • Arrive at a next action, not operator sequence • Apply that operator sequence to world (detail) • Respond based on contingencies & interaction
Levels for the Genghis Robot • Level1: standup • 2 modules per leg; control alpha (advance) & beta (balance) motor • Level2: simple walk • does not compensate for rough terrain • Level3: force balancing • Compensates for rough terrain • Level4: leg lifting • Level5: whiskers • Level6: pitch stabilization • Level7: steered prowling
Layers and modules • Each layer consists of a number of modules • Modules • Module is a hardware component • CPU + memory + specialized hardware + program • Modules connect to other h/w components via physical wires • Connections are fixed by design; not dynamic • Connections between modules are low bandwidth • Modules within a layer • Interconnect with data inputs & outputs • Modules are asynchronous • No centralized clock • No central memory
Conflict resolution on a path from sensors to actuators Module Example of suppression