<- Home    Architecture II ->

 

T-877-AUTO-2010-2 Autonomous Robots

Architecture I

 

February 8, 2010

 

 

 

1 Outline of Topics
  Coarse-grain mind model of intelligent systems  
  Why do we need to study architecture?  
  Architecture and the perception-action loop  
  Mutliple levels of processing  
  Realtime  
  Subsumption architecture  
  Subsumption architecture: What it is  
  Subsumption architecture Basics / Examples  
  Subsumption architecture Examples II  
  Subsumption Architecture: Characteristics  
  Where are we headed?  
  Large integrated systems  
  Remote Agent  
  Brain research architecture: Kosslyn & Koenig  
  HONDA Asimo  
  Tools  
     

 

 

 

 

 

 

 

 

 

2
Coarse-grain mind model of intelligent systems
  Sensation What comes in through the senses - "raw information" (processed data)
  Perception Includes interpretation and decisions about the sensory data
  Interpretation Interpret the perceptual data in context with knowledge and experience
  Decision Interpretation, decision making and planning are often intermixed. A simplification includes an initial decision between interpretation and planning, the decision to act.
  Planning The (mental and physical) act of deciding future actions
  Action The execution of a decision/plan
  Goals

It is generally considered necesssary to model all cognitive agents as having goals; without goals comparisons between choices cannot be made and decisions become random.

  • Implicit goals: goals are hard-wired into the agent (example: to let the fittest survive is one of nature's goals)
  • Explicit goals: goals are represented by symbols that can be manipulated, and more importantly learned, by the agent
  Memory Memory is "everywhere" in an advanced mind. Various memories serve various purposes. Nobody knows exactly how the human memory works as a whole, although bits and pieces are becoming clearer. Replicating the robust, sophisticated memory mechanisms found in nature in robots has nowhere nearly been achieved.
     

 

 

 

 

 

 

 

 

 

 

 

3
Why do we need to study architecture?
  (sw)architecture = (hw)architecture

Architecture in autonomous robots serves the same purpose as architecture when building physical structures

Just like in architectures for physical structures, A.I. architectures:

  • Use blueprints for specifying materials, the main components and their interconnections
  • Blueprints do not convey the full detail of implementation
  • Help coordinate the construction of complex (sw) structures
  • Specify the flow of elements (people/information) among units (rooms, buildings/ processing elements)
  A.I. systems get exceedingly complicated Only recent advances in science and technology allow us to attempt to build smart, adaptive systems (and to understand intelligent systems "in the wild")
  intelligence = organization

Intelligence is in essence an organizational matter.

An intelligence is defined by components:

  • What the components are
  • How they are structured
  • How they are interconnected
  • How they interact in realtime
  Science Complex systems are the next challenge
  Engineering We are headed towards larger and larger (and smarter and smarter) systems
  Holistic intelligence Architecture is now one of the remaining stumbling blocks towards understanding holistic intelligence
  All naturally intelligent systems perceive, think and act Perception-Action is about architecture
     

 

 

 

 

 

 

 

 

 

4 Architecture & the Perception-Action Loop
 
 
The old pipeline model of cognitive processing.
     
  The need for mental "threads"

To monitor one's own actions one has to sample the world after one has done an Act; sampling of multiple acts becomes a difficult problem in a pipeline model.

To cope with this the mind must be doing "load balancing" among "multiple threads".

  The issue of time A central concern is that in general, processing takes time. You can ignore time to make computation look simpler, but a robot that cannot handle the passage of time will never be useful.
     

 

 

 

 

 

 

 

 

 

5

Multiple Levels of Processing

 
 

The new model of layered continuous processing and execution.

The top layer provides a quick response time to time-critical perceptual events (a bus coming at you); the middle layer provides a somewhat more thought-out respone set (1-3 second range) while the bottom layer provides a lot of different processing that takes quite a bit more time (e.g. remembering the name of that singer from the 80s).

     
 
 

Coordination hierachies: A functional hierarchy organizes the execution of tasks according to their functions. A product hierarchy organizes production in little units, each focused on a particular product. Several types of markets exist - here two idealized versions are show, without and with brokers. De-centralized markets require more intelligence to be present in the nodes, which can be aleviated by brokers. Brokers, however, present weak points in the system: If you have a system with only 2 brokers mediating between processors and consumers/buyers, failure in these 2 points will render the system useless. Notice that in a basic program written in C++ every single character is such a potential point of failure, which is why bugs are so common in standard software.

The human and animal minds are probably ... a mixture of all of these. At the gross anatomical level the brain is a functional hierarchy, with motor control and perceptual inputs in specific places (vision, for example, is always in the back of your head -- no execptions, while language is in the left hemisphere in most people).

 

     

 

 

 

 

 

 

 

 

 

 

6
Realtime
  Perception-Action Loop A question of realtime
     
  "Realtime"

Realtime just means "real fast". Right?
Wrong.
Realtime involves (at least) all of the following:
1. Responsiveness: The system’s ability to stay alert to, and respond to, incoming information.
2. Timeliness: The system’s ability to manage and meet deadlines.
3. Graceful adaptation: The system’s ability to (re)set task priorities in light of changes in resources or workload, and to rearrange tasks and replan when problems arise, e.g. in light of missed deadlines.
4. Relevance. Are the decisions relevant to the situation?
5. Speed.

  To achieve realtime
  • Sample the world: Monitor information sources and manage sensory apparati
  • Load-balance threads: Monitor actions & their outcomes
  • Compare action outcomes to goals
     

 

 

 

 

 

 

 

 

 

 

 

7 Subsumption architecture: What it is
  What it is Robot control architecture system developed at the MIT AI Lab by Rodney Brooks (early 80s)
  why it exists An effort to shift attention from human-level intelligence to simpler organisms, and in the process create the simplest possible architecture that could express intelligent behavior.
  how it is useful You will study the subsumption architecture to a sufficient degree that you can implement it - to some useful extent - in the autonomous submarine
     

 

 

 

 

 

 

 

 

 

 

 

8

Subsumption Architecture Basics / More Examples
  Augmented Finite State Machines (AFSMs) Finite State Machines, augmented with timers
  Modules (FSMs) have internal state

The internal state includes:

  • the clock
  • the inputs (no history)
  • the (current) output (no history)
  • may include "activation level"
  External environment constists of connections ("wires")
  • Input
  • Inhibitor
  • Suppressor
  • Reset
  • Output
  Augmented Finite State Machine (AFSM) with connections

table 8

   
Suppressor: Replaces the input to the module
Inhibitor: Stops the output for a given period
Reset: Initialization puts the module in its original state
  Augmentation The finite state machines are augmented with timers.
The time is fixed for each I or R, per module.
  Timers Timers enable modules to behave autonomously based on a (relative) time
  The AFSMs are arranged in "layers" Layers separate functional parts of the architecture from each other
     

 

 

 

 

 

 

 

 

 

 

 

9
Subsumption Architecture Example I
 

 

table 7

 

 
Example subsumption architecture with layers.
  for definition of the term "quadrature" go here  

 

 

 

 

 

 

 

 

 

 

 

 

10 Subsumption Architecture Basics / More Examples
 
 
Level 0 example for a robot that cleans away soda cans.
   
 
 
Level 0 and 1 combined.
   
 
 
Level 0, 1 and 2 combined.
   

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

11

Subsumption Architecture: Characteristics
  Architectural characteristics
  • Low processing overhead
  • Tight coupling between perception and action
  • Modular structure
  • Low to medium number of modules
  Behavioral characteristics
  • Rapid, reflexive responses
  • Long-term and short-term goals
  Benefits
  • Easy to construct relatively complex systems
  • Systems tend to work well in the real world
  • Not CPU intensive (the architecture, that is - sensory mechanisms can still be quite expensive)
  • Well understood framework
  • No complicated representation of external conditions needs to be put into the creatures
  Drawbacks

Architectures tend to be uniform - it is difficult to extend them beyond controlling simple creatures.

Hard to do:

  • simultaneous (parallel) goals and complex goal structures
  • layered planning and action control

... i.e., it is difficult to construct large architectures that have features of human-level intelligence

     

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

12
Where are we headed? (next 10-20 years)
 

Move towards large integrated systems

Need to build integrated simulations of thinking systems to:

  • Improve autonomous systems (applications)
  • Realize proper models of intelligence (research)
  Move towards distributed systems No single computer is up to the task, at present
  Move towards automatic architectural construction Current approach: "constructionist A.I." (manual construction)
  • Current models of cognition are hand-built
  • Will be largely manually built for a while
     

 

 

 

 

 

 

 

 

 

 

 

 

 

 

13 Large Integrated Systems
  Increased autonomy …

…means we are moving towards systems that:

  • Sense, recognize, classify, plan, decide, act … integrated!
  Industry examples
  • Increased autonomy, flexibility in factories
  • Faster re-programmability, at a higher level
  Research examples
  • Remote Agent
  • Brain research
     

 

 

 

 

 

 

 

 

 

 

 

 

 

 

14 Remote Agent
  Deep Space One

NASA satellite went into orbit on Oct. 24th 1998
Purpose: Test the value of various new technologies

  Deep Space One Remote Agent
  • On-board AI system: “Remote Agent”
  • Remote Agent managed the mission autonomously
 
 
Deep Space 1 Remote Agent architecture of main software modules.
     
  Remote Agent Thought Process Example

Remote Agent knows that:

  • To turn on a power source requires “pushing a button”
  • A “button” is a physical thing that behaves according to the laws of physics - buttons can get stuck

If a physical thing gets stuck you can try to get it loose by “jiggling” it

  • Reasonable approach to solve the problem: Jiggle the switch for the power source
  • Remote Agent solved the problem and turned on the power source
  To think, Remote Agent uses:
  • Detailed model of itself, plus
  • Heuristics, rules about the world
     

 

 

 

 

 

 

 

 

 

 

Kosslyn & Koenig architecture. Based on decades of brain research.

 

 

 

 

 

 

 

asimo

 

 

 

 

 

 

asimo

Honda ASIMO - snapshots from a video showing ASIMO walk out of a subway station in New York.

 

 

Some research on ASIMO:

Ng-Thow-Hing, V., T. List, K. R. Thórisson, J. Lim, J. Wormer (2007). Design and Evaluation of Communication Middleware in a Distributed Humanoid Robot Architecture. IROS '07 Workshop Measures and Procedures for the Evaluation of Robot Architectures and Middleware, 29 Oct. - 2 Nov. San Diego, California. [PDF]

Ng-Thow-Hing, V., K. R. Thórisson, R. K. Sarvadevabhatla, J. Wormer, T. List (2009). The Cognitive Map architecture for facilitating human-robot interaction in humanoid robots. IEEE Robotics & Automation, March, 16(1):55-66. [PDF]