Title: Control Behaviors of Mobile Robots
1 Control Behaviors of Mobile Robots
- Architectures and Behaviors
With special interest in hexapods and soccer
2Pets -- expensive and not
Sony Aibo 1500
NEC R100 a lot
iCybie 160
Tekno 40
Poo-chi 30
3Pets -- expensive and not
Sony Aibo 1500
NEC R100 a lot
iCybie 160
Tekno 40
Poo-chi 30
- voice recog.
- 18 motors
- wireless LAN
- color camera
- walks, gets up
- voice recog.
- 6 sonars et al.
- wireless LAN
- 2 color cameras
- rolls around
- voice recog.
- 16 motors
- wireless LAN
- walks ?
- sound recog.
- 2 motors
- light sensor
- walks
- sound recog.
- 1 motor
- pivots
4dogfight
5You can find this material in Norvig book,
chapter 2
- 2.1 Perception and Action
- Perception
- Action
- Boolean Algebra
- Classes and Forms of Boolean Functions
- 2.2 Representing and Implementing Action
Functions - Production Systems
- Networks
- The Subsumption Architecture
6Other material covered
- Control models
- the sense-think-act control cycle
- model-based controllers
- Reactive robotics
- reactive controllers
- behaviour-based controllers
- Other approaches
- other reactive controllers
- hybrid controllers
- learning robots
7Control of Hexapod Robots
- 1. Goals and overview
- 2. Brooks Subsumption
- 3. Biologically Inspired
- 4. Logically Inspired
- 5. Neural and Immunological Networks
- 6. Hardware issues
8Legged Locomotion
From the ONR proposal
- Make use of simple nervous systems involved in
sensorimotor performance to specify the circuits
involved in adaptive legged locomotion in
invertebrates. - The objectives of this program are to develop
- neural models that reproduce the experimentally
derived characteristics of the neuronal circuitry
underlying legged locomotion - new controller architectures for autonomous
legged robots - which exhibit stable locomotion,
- and which respond adaptively to unknown terrain
and obstacles.
9Legged Locomotion
- The research issues include
- biomechanics of dynamically stable locomotion,
- specification of local leg control circuits,
- including central pattern generators,
- the neural mechanisms of adaptation to context
and task, - implementation of neural models as real time
controllers on prototype hexapod robots
10- M2 is a 3D bipedal walking robot which is
currently being developed in the MIT Leg
Laboratory. - The robot has 12 active degrees of freedom 3 in
each hip, 1 in each knee, and 2 in each ankle. - It will be used to investigate
- Various walking algorithms
- Motion description and control techniques,
particularly Virtual Model Control - Force control actuation techniques, particularly
Series Elastic Actuation - Automatic learning techniques.
- The goals of M2 are the following
- Walk fast (1.0 meters/second)
- Walk efficiently
- Be reliable (work 9 out of 10 attempts)
- Have a large margin of stability and be robust to
small disturbances (reasonable pushes) - Be confident looking
- Become a "robotic workhorse" -
- a robot which can be reliably used to perform
experiments without breaking - Get it right the first time in design and
schedule
Example of walker
11Biologically Inspired
12Past Control Architectures for Hexapods
- 1. Marc Donner, 1986, decomposition of task,
locality of control, special language - 2. Rodney Brooks, MIT, 1989 - Subsumption
Architecture - 3. Yuasa and Ito, Nagoya, Japan, 1990 -
decentralized autonomous system based on
generators. Biologically inspired. - 4. Randall Beer and John Gallagher, 1992 -
genetic algorithm to develop a neural net to
control a simulated cockroach. - 5. Graham Spencer, 1992 - genetic programming and
a priori knowledge, not real robot.
13Past Control Architectures for Hexapods
- 6. Gary Parker, 1992, Indiana Cyclic Genetic
Algorithm with a priori knowledge, simulation. - 7. Salama, Hingston, University of Western
Australia, 1995, GA develops NN. Stiquito. - 8. Berns, Cordes, Karlsruhe, 1995 - NN, real
robot, small. - 9. Ishiguro, Kuboskiki, Ichikawa and Uchikawa,
Nagoya, Japan, 1996-1998 - Immune Networks.
Simulation. - 10. Gallagher, Beer, Espenschied, Quinn, Case,
1996. Dynamical neural network. Real robot. - 11. Parker, Braun and Cyliax, 1997. CGA for
Stiquito Robot. - 12. Ilg, Muhlfriedel and Berns, Karlsruhe,
Germany, 1997, Self-Organizing Neural Net
14Past Control Architectures for Hexapods
- 13. Eng, Robertson and Blackman, Monash,
Australia, 1997-1999 - Layered Learning System
architecture, agents, real robot. - 14. Barnes, Wardle, University of Salford, UK,
1999 - reactionary system with central pattern
generators - 15. Ahuja, Nelson, Delcomyn, Hart, University of
Illinois, 1997 - 2000 (?) - Biologically Inspired - 16. Reinforcement Learning
- 17. Levy, PSU, 2001, Generators controlled by
Constructive Induction, robot walks but not
completed. - 18. Zielinska, Singapur, Poland, 2001 - current -
big, network of parallel processors and
controllers, sensors.
15Conclusion on past research on hexapod control
- Based on my limited literature search
- 1. The total of walking robots in the world
estimated to be 200, not counting toys and kits - 2. Not much recent work, recently more on
bio-inspired - 3. Even less work on real robots
- 4. Especially on controlling large hexapods
- 5. Few papers on sensors and sensors integration
- 6. Relatively few papers from USA
- 7. Not much practical evaluation and description
of experiments.
16Past research on mobile robot controllers
- The brains behind a mobile, autonomous robot
(using the lite definition of autonomous) - Even though the controller is sometimes not
physically on the robot - Three schools
- The Old School Sense-Plan-Act (Shakey at
Stanford) - The Brooks School Subsumption
- The Modern School Three-Layer
- New Approaches
- Bio-Inspired
- Probabilistic
17Overview Robot Control Schemes
Representative examples
Representative examples
- RAPs, Firby 87
- AuRA, GeorgiaTech, Arkin 87
- Atlantis, JPL/NASA, Gat 92
- Saphira, SRI, Saffiotti et al, 93
- TCA, CMU, Simmons 94
- AMOR, Pirjanian et al. 94
- ALLIANCE, Parker 94
- DAMN, CMU, Rosenblatt Payton 96
- 3T, NASA, Kortenkamp et al 96
Representative examples
- Subsumption Arch, MIT, Brooks 86
- Motor schemas, GeorgiaTech, Arkin 87
- Activation nets, MIT, Maes 89
- Dynamical sys., Schoner 92
- MOBC, Pirjanian 97
- Stanford Cart, Moravec 1977
- NASREM, NASA/NIST, Albus et al 1987
- VINAV, Christensen et al 1992
18Control Problems for an autonomous robot
- Rapidly changing boundary conditions
- Real-time response
- Information collected over noisy channels
19 Perception and Action
- Stimulus-response (S-R) agents
- Machines that have no internal state and that
simply react to immediate stimuli in their
environments - Based on motor response to rather simple
functions of immediate sensory inputs - Examples
- Machina speculatrix,
- Braitenberg machine
20Stimulus Response Agents
21Mapping Perception into Action
obstacle
0 1 0 1 1 0 1 1
Feature detectors
SENSORS
ACTION FUNCTION
MOTORS
wall
22Example Robot navigator Clips
N
2
E
1
0
0
1
2
23A Robot in a Two-Dimensional Grid World (1)
- Environment
- Enclosed by boundaries
- Contains unmovable objects
- No tight spaces
- Spaces between objects and boundaries that are
only one cell wide - Task
- Go to a cell adjacent to a boundary or object and
then follow that boundary along its perimeter
24A Robot in a Two-Dimensional Grid World (2)
- Sensory inputs
- Robot movements
- north moves the robot one cell up in the cellular
grid - east moves the robot one cell to the right
- south moves the robot one cell down
- west moves the robot one cell to the left
- Division of processes
- Perception processing and action computation
25A Robot in a Two-Dimensional Grid World (3)
- Perceptual processing
- produces feature vector X
- numeric features real numbers
- categorical features categories
- Action computation
- selects an action based on feature vector
26A Robot in a Two-Dimensional Grid World (4)
- The split between perception and action is
arbitrary - The split is made in such a way that the same
features would be used repeatedly in a variety of
tasks to be performed - The computation of features from sensory signals
can be regarded as often used library routines - needed by many different action functions
- The next problems
- (1) converting raw sensory data into a feature
vector - (2) specifying an action function
27Perception example
- For the robot task, there are four binary-valued
features of the sensory values that are useful
for computing an appropriate action - Perceptual processing might occasionally give
erroneous, ambiguous, or incomplete information
about the robots environment - Such errors might evoke inappropriate actions
- For robots with more complex sensors and tasks,
designing appropriate perceptual processing can
be challenging
28Action example
- Specifying a function that selects the
appropriate boundary-following action - None of the features has value 1, the robot can
move in any direction until it encounters a
boundary
29Boolean Algebra
- Boolean algebra is a convenient notation for
representing Boolean functions - Rules for Boolean algebra
- Commutative
- Associative
- DeMorgans law
- Distributive law
30Classes and Forms of Boolean Functions
- A conjunction of literals or a monomial
- The conjunction itself is called a term
- Bound of the number of monomials of size k or
less - A clause or a disjunction of literals
- Terms and clauses are duals of each other
- Disjunctive normal form (DNF) disjunction of
terms - K-term DNF disjunction of k terms
- Conjunctive normal form (CNF) conjunction of
clauses - K-clause CNF the size of its largest clause is k
31Outline on Reactive Agents
- How to design stimulus-response (reactive)
agents? - Abstracting sensory values into features
- Modes of action
- Representation of mapping from sensors to actions
- Examples
- Layered reactive agents (subsumption architecture)
32Properties of Reactive Agents
- No internal state current value of sensors
determines response - Speed Reactive agents respond quickly to a new
stimulus - Sensor values are mapped into features using
boolean (state-free) functions - Actions are computed using an action function
33Feature Selection
- What are good features?
- Easy to compute from sensor values
- Useful in multiple tasks
- Need not be perfect
- Help improve task performance
- Examples from biology
- Insect detector for a frog
- Sun direction and earths magnetic field for
navigating birds - Imprinting in birds
34OBELIX A Robot
SENSORS
8 ultrasonic sonar sensors, 4 long IRs, 8 short
IRs, 1 very-short-range IR
35Feature Detectors on OBELIX
- Stuck motor current gt threshold
- Bumped very-short-range IR on
- Intersection Long side IR off
- Corridor Two long side IRs on
- Box-detectors boolean combinations of FAR and
NEAR sonar bits
36Action Functions
Three approaches are the most popular
- 1. Production Systems
- List of condition-action rules
- Parallelizable for fast matching
- 2. (artificial, neural) Networks
- Threshold-logic circuits
- Noise immunity, learnability
- 3. Subsumption architectures
- Layered set of mappings
37Production Systems
38Production Systems
Condition1
Action 1
Action 2
Condition2
Example RIR Long right IR
LIR Long left IR
39 Representing and Implementing Action Functions
Production systems (1)
- Production system comprises an ordered list of
rules called production rules or productions - , where is the condition
part and is the action part - Production system consists of a list of such
rules - Condition part
- Can be any binary-valued function of the features
- Often a monomial
- Action part
- Primitive action, a call to another productive
system, or a set of actions to be executed
simultaneously
40Production Systems (2)
- Production system representation for the boundary
following routine - An example of a durative systems-system that
- never ends
- Teleo-reactive (T-R) programs
- Each properly executed action in the ordering
works toward achieving a condition higher in the
list - Usually easy to write, given an overall goal for
an agent - Quite robust actions proceed inexorably toward
the goal - Can have parameters that are bound when the
programs are called - Can call other T-R programs and themselves
recursively
41Discussion Issues for robot soccer architectures
- Origination
- Low Cost vs. Big Model
- Elegancy vs. Efficiency
42Basic Architecture for Soccer
Using software simulator as a basic development
methodology in soccer robot research
Production rules
Neural Nets
Subsumption
43Production system based agent architecture for a
soccer robot
44Switch Competitive behaviors
Switching and voting, subsumption
45Teleo-reactive ProgramsNilsson
Variant of Production Systems to handle goals and
durative behaviors. 1st Rule specifies the goal
goal
Nil
A rule is placed at a point where it achieves the
condition of some higher level rule. The
condition 1 means it is always true.
46Example of a teleo-reactive (TR) Program
Exercise write the wall-follower example as a TR
program
47Black Board Architecture
KS communicate through Black Board
Knowledge specialist
48Example RoboCup98 rule hierarchy
Play
Normal
Attack left
Run to wing
49- Labyrinth, Robot Environments and Object-Based
Simulation
50Simulation
Simulation is the mimicking of a real system
within a computer. A computer model is created to
represent part of a real-world environment. The
computer model is then executed to investigate
real-world behavior as predicted by the computer
model.
51Simulation and OO
- Simula-67
- Event-based systems
- Visualization of complex data
52Applications
- Complex situations,
- large-scale,
- many interactions
- Dangerous situations,
- Entertainment
53Computer Simulation
- Build a model to represent the real world,
- Implement physical constraints,
- Implement physical behaviors,
- Generate and process events,
- events occur at discrete points in time,
- events affect the state of the system.
SimCity
games
54Construct a Model
- Classes are kinds of things in the real world
- Objects represent actual things,
- Methods of objects implement behavior
- Events stimulate object behavior.
55Braitenberg Vehicles
Light sensors Motors Control
From http//people.cs.uchicago.edu/wiseman/vehic
les/ Inspired by Valentino Braitenberg,
Vehicles Experiments in Synthetic Psychology,
1984.
56How they Work?
Connect light-sensor to motor. Sensor output can
be EXCITATORY or INHIBITORY. When sensor output
fires, the motor is driven.
Both motors step forward One motor rotate
57Simulation of Vehicles
- Create an artificial plane,
- Populate it with light sources and vehicles
- Run a time-based simulation
- for each time step,
- compute light source effect on vehicle
- simulate movement
- detect collisions
58View of Simulation
59Another View
http//people.cs.uchicago.edu/wiseman/vehicles/te
st-run.html
60Simulation of Vehicles
- Complex behavior can arise from simple systems.
- Simulation of such a system can reveal
interesting aspects of interaction amongst simple
objects. - These simulations can drive the development of
new theory.
61Example
http//people.cs.uchicago.edu/wiseman/vehicles/te
st-run.html
62Views
Views of simulations may help to explain what is
happening. Different views may be
appropriate. The VIEW is NOT the SIMULATION.
63Events and Simulation
- Every event stimulates behavior,
- Events occur at discrete times,
- Simultaneous events must have simultaneous
effects - Stimulated behavior may cause events
64Discrete Time
Everything in a computer simulation is
digitized. We create a digital representation of
real things. Even time. Simulation proceeds
stepwise in time. Effects of simulation take
place at the end of a discrete time
step. Parallel processing is useful.
65Effects of Behavior
Object behavior may affect the model. All object
behaviors must occur simultaneously i.e. at the
end of the simulation time step. Parallel
processing may be needed to avoid object behavior
contaminating the system within a time step. Not
all real-world behaviors may have been
implemented.
66Visualization
67Visualization
- Enables us to see the effects of behavior
- Large-scale, complex systems,
- View several dimensions
- 3D space
- time
- other graphical codes for other variables
- color, sound, pictures etc.
68Summary on Simulation
- Object-based simulation is useful,
- Constructing a world can be complex,
- The quality of the simulation depends on
- the quality of real-world implementation
- implementation of variables that are not the
primary focus of the simulation - e.g. gravity, air resistance, viscosity etc.
69Micromouse Basics Software and Simulation of
Maze Behaviors
70Maze Solving Algorithms
- Wall Following Method
- Good start
- May not find the destination
- Depth First Search
- Explores every cell
- Will find destination eventually
- Flood-Fill Search
- Finds shortest path to destination
71Flood-Fill
- Each cell is assigned a distance value
- Destination cells are assigned a zero value
72Flood-Fill
Destination cells are assigned a zero value
73Flood-Fill
- An example 3x3 maze
- Starting state
74Flood-Fill
- First rule
- Always move to the open neighboring cell with the
lowest distance value
75Flood-Fill
- Walls are found and mapped during exploration
sensors
76Flood-Fill
- Following distance values, 4-gt3-gt2-gt1, now would
be trouble, but wall is found earlier
77Flood-Fill
78Flood-Fill
- Second Rule
- Second rule If a cell is not the destination,
its value should be one plus the minimum value of
its open neighbors
79Flood-Fill
- Second Rule
- If a cell is not the destination, its value
should be one plus the minimum value of its open
neighbors, 1min(2,2)3
80Flood-Fill
- Other cells now need to be updated
81Flood-Fill
82Flood-Fill
- Done updating
- Can now find destination cell
83Flood-Fill
- Use same technique to get back to start
84Flood-Fill
85Flood-Fill
86BEHAVIOR DESCRIPTION AND MODELING
- Also called dynamic modeling
- Models how objects respond to external events
- Types
- Combinatorial truth tables, decision tables,
decision trees - Finite state machines
- State charts
87COMBINATORIAL ANDSEQUENTIAL CONTROL
- - Decision tables allow the specification of
combinatorial - mechanisms.
- That is, which processes to activate is
- important
- order and timing are not
considered. - - Process activation tables allow a form of
sequential - modeling.
- That is, the order in which certain processes
- can be activated can be specified.
- - If sequencing is an even more important
aspect of - control modeling, then a sequential model
can be used. - -gt The most typical form of this is the
finite state machine.
88DECISION TABLES
- - One common way to model control is with
decision - tables. They are used when a number of
possible input - conditions hold and a number of responses
are - possible.
- - The conditions are called inputs and the
responses are - called outputs.
- - The input side of the table enumerates all
possible - combinations of conditions.
-
- For example, if each of three switches can
have one of two possible values, "on" or
"off", - then the table will contain 3 columns
and 2 or 8 rows. - - Likewise, if the three switches control two
output - devices (one switch is a master override)
then there will - be two output columns ( along with the
eight rows from - the input ).
3
89EXAMPLE DECISION TABLE - 1
INPUT
OUTPUT
Master Control
Light Switch
Power Switch
Lights
Motor
ON
ON
ON
ON
ON
ON
ON
OFF
OFF
ON
OFF
ON
ON
ON
OFF
OFF
OFF
OFF
OFF
ON
ON
OFF
OFF
ON
OFF
OFF
ON
OFF
OFF
OFF
ON
OFF
OFF
OFF
OFF
OFF
OFF
OFF
OFF
OFF
90EXAMPLE DECISION TABLE -2
- Note that the last four rows of the output
are identical. The table can be shortened
by making use of "don't care" entries.
A don't care entry is indicated by a dash
in an input cell.
INPUT
OUTPUT
Master Control
Light Switch
Power Switch
Lights
Motor
ON
ON
ON
ON
ON
ON
ON
OFF
OFF
ON
OFF
ON
ON
ON
OFF
OFF
OFF
OFF
OFF
ON
OFF
OFF
OFF
---
---
91FINITE STATE MACHINES
- Many systems have the characteristic of "memory".
- That is, past behavior can influence future
behavior. - For example, a pay phone must remember how much
money has been inserted to know how much service
to provide - The most typical technique for modeling these
situations is with a finite state machine. - The states serve as the memory
- Abstract machines with memory are called
sequential machines to distinguish them from
"memory-less combinatorial machines like those
represented by decision tables
92STATE MACHINE MODELING
- - A telephone is a device that at any given
time is in one of several states. - For example, the state can be busy,
- ringing, dialing, in use, or on hook.
- - User actions cause the current state to
change. - For example, a user picking up a ringing
telephone causes the current state to change from
ringing to in use. - - State transition diagrams can be used to
model - software with user interfaces.
93STATE TRANSITION DIAGRAMS
- One mechanism for representing finite state
machines (FSMs) is the state transition diagram - A state is denoted by a rectangle containing the
state's name - The machine is always in exactly one state.
- When the system obtains a new input, the machine
moves to another state and performs an action,
which may be used to produce an output - States are connected by labeled directed arcs
denoting the transitions among the states - The labels on the arcs consist of two parts.
- The first is the input/event/stimulus provoking
the transition. - The second is the action/response performed.
- The two parts are separated by a short horizontal
line
94EXAMPLE STATE TRANSITION DIAGRAM
Number dialed
Number dialed
OFF HOOK
DIALING
Last number dialed
Handset lifted
Handset replaced
Handset replaced
RINGING
Handset replaced
ON HOOK
Line in use
Handset replaced
BUSY
Callee answers
Handset replaced
Callee hangs up
CONNECTED
95EXAMPLE STATE TRANSITIONDIAGRAM GARAGE DOOR
OPENER
Door Closed Motor off
button pressed/ start motor
door closed detected/ stop motor
/ start motor
Door Partially Closed Motor off
Motor Running Up
button pressed/ stop motor
button pressed/ stop motor
Door Partially Open Motor off
Motor Running Down
button pressed/ start motor
door open detected/ stop motor
button pressed/ start motor
Door Open Motor off
96STATE TRANSITION TABLES
- Another way of representing a FSM is with a state
transition table - Here, the rows correspond to states, and there
are four columns - The first is the name of the state
- The second column describes input event
possibilities. Note that a given state may need
to have several rows, one for each allowable
input event - The third column describes output actions
- The fourth contains next state information
- State transition tables contain exactly the same
information as state transition diagrams
97STATE TRANSITION TABLE FOR A GARAGE DOOR OPENER
INPUT
Effect
Next State
Current State
Door closed / Motor off
Button Pressed
Start Motor
Motor Running Up
Motor Running Up
Door Open Detected
Stop Motor
Door Open Motor Off
Motor Running Up
Button Pressed
Stop Motor
Door Partially Open/ Motor Off
Door Partially Open/ Motor Off
Button Pressed
Start Motor
Motor Running Down
Door Open / Motor Off
Button Pressed
Start Motor
Motor Running Down
Motor Running Down
Door Closed Detected
Stop Motor
Door Closed Motor off
Motor Running Down
Button Pressed
Stop Motor
Door Partially Closed / Motor Off
Door Partially Closed / Motor Off
Button Pressed
Start Motor
Motor Running Up
98STATE CHARTS
- One problem with finite state machines is the
explosion in the number of states that occurs
when several independent activities are going on
simultaneously - Also, traditional finite state machines provide
no mechanisms for abstraction. - Abstraction is the grouping together of related
states that are relatively independent from the
other states in a system - David Harel has developed an extension to finite
state machines called state charts to overcome
these difficulties
99PROBLEMS WITH FSMS
- Too many arrows n2 (with n states)
- Too many states 2m (with m concurrent
activities) - No concept of abstraction/nesting
100STATE CHART ADDITIONS
- Depth (hierarchical state machines)
- Concurrency
- Broadcast (define and generate new events)
- Default states
- Conditional (guarded) transitions
- History
- Entry/exit actions/activities
- Event attributes (parameters passed with events)
101NESTING
102CONCURRENCY
103Concluding on robot architectures
- 1. Various architectures have been briefly
outlined - 2. Robot should be simulated
- 3. Various formalisms are used for representation
of simulation, they are partially independent on
robot behaviors and architectures. - 4. Architectures and representations create a
space of robot designs. (of course, together with
kinematics)
104categorizing robots
Abstraction
With respect to autonomy and abstraction
Just model
software
hardware
Autonomy
human-controlled
independent
105categorizing robots
Abstraction
just is
Just model
software
hardware
Autonomy
human-controlled
independent
106categorizing robots
categorizing robots
Abstraction
just is
Just model
software
hardware
Autonomy
human-controlled
independent
107categorizing robots
categorizing robots
Abstraction
just is
Just model
software
hardware
Autonomy
human-controlled
independent
108categorizing robots
categorizing robots
Abstraction
just is
Just model
software
hardware
Autonomy
human-controlled
independent
109categorizing robots
categorizing robots
Abstraction
just is
Just model
software
hardware
Autonomy
human-controlled
independent
110categorizing robots
categorizing robots
Abstraction
just is
Just model
software
hardware
Autonomy
human-controlled
independent
111categorizing robots
categorizing robots
Abstraction
just is
Just model
algorithms and strategies for programming
autonomous robots
software
hardware
Autonomy
human-controlled
independent
112categorizing robots
the world is not enough
how much of the world do we need to represent
internally ? how should we internalize the world
? what outputs can we effect ? what inputs do
we have ? what algorithms connect the two ? how
do we use this internal world effectively ?
113Robot Architecture
how much / how do we represent the world
internally ?
114how much / how do we represent the world
internally ?
Robot Architecture
None.
Absolute Control
Just the current world.
Purely Reactive Control
Subsumption paradigm
Just what we need.
Motor Schema
As much as possible.
SPA architecture (sensing next planning next
action)
115Robot Architecture
how much / how do we represent the world
internally ?
None. - ignore the outside world - whats left?
Absolute Control
kamikaze robot example
116Robot Architecture
how much / how do we represent the world
internally ?
Just the current world.
Purely Reactive Control
- Decision-making based only on the current sensor
readings.
117Robot Architecture
how much / how do we represent the world
internally ?
Subsumption paradigm
Just what we need.
Motor Schema
- Enough world state is preserved to perform a
desired task. - Subsumption composes simple behaviors by letting
one take control at an appropriate time.
118Robot Architecture
how much / how do we represent the world
internally ?
Subsumption paradigm
Just what we need.
Motor Schema
- Motor schemas compose simple behaviors by adding
the outputs that each would send to the robot.
119Robot Architecture
how much / how do we represent the world
internally ?
As much as possible.
SPA architecture
- Sense -- plan -- act was the first widely
studied robot architecture. - Complex tasks ultimately will require a
deliberative approach, i.e., reasoning about the
world. - Current robots incorporate both reactive and
deliberative design. (termed hybrid
systems.)
120Another taxonomy
World Modeling
All
Need-based
Now
None
Wow!
Ow!
Capability
121Possible Future Projects
A) Small Battle Bot B) Path-planning and
reasoning large truck or other vehicle C) wall
following robot D) The Extinguisher
(fire-fighting lego design) E) The Robix
Manipulator on a wheeled robot F) Pioneer
(can-collecting and delivery) G) Big Brother
(visual camera control)
122Problem 1
Use this taxonomy for all robots from PSU Lab. Is
this a good taxonomy?
Abstraction
Just model
algorithms and strategies for programming
autonomous robots
software
hardware
Autonomy
human-controlled
independent
123Sources
- Rodney Brooks
- Dodds, Harvey Mudd College
- Maja Mataric
- Nilssons book
- Jeremy Elson
- Norvigs book, chapter 2. Good. Stimulus-Response
Agents - English PH.D thesis, recent
- Jon Garibaldi
- Prof. Bruce Donald, Changxun Wu, Dartmouth
College - Leo Ilkko
- Prof. Manuela Veloso, Dr. Tucker Balch, and Dr.
Brett BrowningCarnegie Mellon University - Rabih Neouchi , Donald C. Onyango and Stacy F.
President - Axel Roth
- Ramon Brena Pinero ITESM
- Rhee, Taik-heon, Computer Science Department,
KAIST - Brian R. Duffy, Gina Joue
- Lucy Moffatt, Univ of Sheffield
- Yorick Wilks, Computer Science Department,
University of Sheffield - University of Otago
124Sources
- Curtis Bahn, RPI
- J.E. Wampler
- Michael Rodemer, University of Michigan, School
of Art and Design - Physics and Media Group, MIT
- Josh R. Fairley
- Dr. Raymond S. Winton
- Mike Haney, University of Illinois
- Steve Benkovic, Cal State University , Northridge
http//homepage.mac.com/SBenkovics.benkovic_at_ieee.o
rg - Franklin Alioto, Christine Beltran, Eric Cina,
Vince Francisco, Margo Gaitan, Matthew OConnor,
Mike Rasay. - Kenneth Chin and Prang Chim
- Bob Miller, Wally Szczesniak, Terry Kientz,
- Brett Balogh , Siddharth Deliwala, John Bowen,
- Darnel Degand, Kapil Kedia,
- Adrian Fox, Christopher Li,
- Dr. Jim Ostrowski