1 cal poly pomona robot navigation salomón oldak, ph.d. electrical and computer engineering 2/8/06
TRANSCRIPT
11
Cal Poly PomonaCal Poly Pomona
Robot NavigationRobot Navigation
Salomón Oldak, Ph.D.Salomón Oldak, Ph.D.Electrical and Computer Electrical and Computer
EngineeringEngineering2/8/062/8/06
22
DARPA Grand DARPA Grand ChallengeChallenge Congress mandate to increase the Congress mandate to increase the
use of ground unmanned vehicles. use of ground unmanned vehicles. Congressional Goal: 1/3 of armed Congressional Goal: 1/3 of armed
forces combat vehicles unmanned forces combat vehicles unmanned by 2015.by 2015.
Vehicles must be fully autonomousVehicles must be fully autonomous Nearly 250 miles on and off road in Nearly 250 miles on and off road in
10 hours.10 hours.
33
First DARPA Challenge First DARPA Challenge 20042004 First Challenge took place on 3/14/04First Challenge took place on 3/14/04 Between Los Angeles and Las VegasBetween Los Angeles and Las Vegas $1 Million Prize$1 Million Prize 25 Teams Participated25 Teams Participated
– CalTech, University of Florida, University CalTech, University of Florida, University of Alaska, Virginia Tech and othersof Alaska, Virginia Tech and others
– Palos Verdes High School Palos Verdes High School
44
Ghostrider(Blue Team, Ghostrider(Blue Team, Berkeley)Berkeley)
55
Blue Team MovieBlue Team Movie
66
ObstaclesObstacles
Paved RoadsPaved Roads OverpassesOverpasses Straight-Winding RoadsStraight-Winding Roads Sand, RockSand, Rock UnderpassesUnderpasses WaterWater Natural ObstructionNatural Obstruction
77
1st Challenge Results1st Challenge Results
Failure:
No Team
Completed Task.
Max Distance 7.4Mi
88
22ndnd DARPA Grand DARPA Grand Challenge (10/8/2005)Challenge (10/8/2005)
Success! 3 Robots Completed Success! 3 Robots Completed task!task!
99
The Winner: StanleyThe Winner: Stanley
1010
Stanford University Stanford University (Sebastian Thrun)(Sebastian Thrun)
1111
Sensors UsedSensors Used
GPS AntennaGPS Antenna Laser Range Finder (Lidar) (30m)Laser Range Finder (Lidar) (30m) Video Camera (80m)Video Camera (80m) Odometry (Photo Sensor on Odometry (Photo Sensor on
Wheel)Wheel)
1212
AlgorithmAlgorithm
Problems: Vibration would trick Problems: Vibration would trick sensors to “imagine” ghost sensors to “imagine” ghost obstacles, The vehicle thought it’s obstacles, The vehicle thought it’s own shadow is an obstacle.own shadow is an obstacle.
Solution: Teach the car. Assess Solution: Teach the car. Assess weights to pixels as a human weights to pixels as a human driver operates the car.driver operates the car.
1313
FutureFuture
43000 people die in traffic 43000 people die in traffic accidents/year in the USaccidents/year in the US
Robot driven cars will reduce # of Robot driven cars will reduce # of fatalitiesfatalities
Accidents can be avoidedAccidents can be avoided Liability?Liability?
1414
Spirit and OpportunitySpirit and Opportunity
1515
NavigationNavigation
Rover’s are mostly teleoperatedRover’s are mostly teleoperated 2 stereo hazard avoidance 2 stereo hazard avoidance
cameras front and backcameras front and back 1 Stereo Navigation camera on 1 Stereo Navigation camera on
mastmast Rovers moves 0.5m at max speed Rovers moves 0.5m at max speed
of 34m/h = 0.02MPHof 34m/h = 0.02MPH
1616
Robot ParadigmsRobot Paradigms
Paradigm: Paradigm: ““A "view" of how things work in the A "view" of how things work in the
world.”world.” “…“…a set of rules and regulations…”a set of rules and regulations…” Paradigm Primitives:Paradigm Primitives:
SENSE, PLAN, ACTSENSE, PLAN, ACT
1717
ParadigmsParadigms
Hierarchical Hierarchical
1967-19901967-1990 ReactiveReactive
1988-19921988-1992 Hybrid Deliberative/ReactiveHybrid Deliberative/Reactive
1990-1990-
1818
Hierarchical ParadigmHierarchical Paradigm
The robot operates in a top-down fashion, The robot operates in a top-down fashion, heavy on planning. heavy on planning.
The robot senses the world, plans the next The robot senses the world, plans the next action, acts; at each step the robot action, acts; at each step the robot explicitly plans the next move. explicitly plans the next move.
All the sensing data tends to be gathered All the sensing data tends to be gathered into one global world model. into one global world model.
1919
Shakey (SRI)Shakey (SRI)
First AI Robot(1967-70)
2020
AssumptionsAssumptions
Close World: World Model Close World: World Model Contains everything the Robot Contains everything the Robot needs to knowneeds to know
Frame Problem: The real-world Frame Problem: The real-world situation is computationally situation is computationally feasible.feasible.
2121
ProblemProblem
Robots designed under Hierarchical Robots designed under Hierarchical Paradigm were VERY slow.Paradigm were VERY slow.
2222
Reactive ParadigmReactive Paradigm
Sense-act type of organization. Sense-act type of organization. The robot has multiple instances of Sense-Act The robot has multiple instances of Sense-Act
couplings. couplings. These couplings are concurrent processes, These couplings are concurrent processes,
called behaviours, which take the local sensing called behaviours, which take the local sensing data and compute the best action to take data and compute the best action to take independently of what the other processes are independently of what the other processes are doing. doing.
The robot will do a combination of behavioursThe robot will do a combination of behaviours. .
2323
Biological Foundation Biological Foundation of Reactive Paradigmof Reactive Paradigm Reactive Paradigm is based on Reactive Paradigm is based on
observations of ethologists (study observations of ethologists (study of animal behavior) and cognitive of animal behavior) and cognitive psychology (how humans think psychology (how humans think and represent knowledge)and represent knowledge)
Biology provides existence proofs.Biology provides existence proofs.
2424
Behavior Definition Behavior Definition (graphical)(graphical)
BEHAVIOR
SensoryInput
Patternof MotorActions
2525
Arctic Arctic TernsTerns
Arctic terns live in Arctic (black, white, gray Arctic terns live in Arctic (black, white, gray environment, some grass) but adults have a red spot environment, some grass) but adults have a red spot on beakon beak
When hungry, baby pecks at parent’s beak, who When hungry, baby pecks at parent’s beak, who regurgitates food for baby to eatregurgitates food for baby to eat
How does it know its parent?How does it know its parent?– It doesn’t, it just goes for the largest red spot in its field It doesn’t, it just goes for the largest red spot in its field
of view (e.g., ethology grad student with construction of view (e.g., ethology grad student with construction paper)paper)
– Only red thing should be an adult ternOnly red thing should be an adult tern
– Closer = large redCloser = large red
2626
Types of BehaviorsTypes of Behaviors
ReflexiveReflexive – stimulus-response, often abbreviated S-R (like knee stimulus-response, often abbreviated S-R (like knee
tapped). “Hardwired”tapped). “Hardwired” ReactiveReactive
– learned or “muscle memory”. (Riding a bike, skiing, learned or “muscle memory”. (Riding a bike, skiing, etc.)etc.)
ConsciousConscious – deliberately stringing together (Building a Robot)deliberately stringing together (Building a Robot)
WARNING Overloaded terms:Roboticists often use “reactive behavior” to mean purely reflexive,
And refer to reactive behaviors as “skills”
WARNING Overloaded terms:Roboticists often use “reactive behavior” to mean purely reflexive,
And refer to reactive behaviors as “skills”
2727
Example: Cockroach Example: Cockroach HideHide light goes on, the cockroach turns and runslight goes on, the cockroach turns and runs
when it gets to a wall, it follows itwhen it gets to a wall, it follows it
when it finds a hiding place (thigmotrophic), when it finds a hiding place (thigmotrophic), goes in and faces outwardgoes in and faces outward
waits until not scared, then comes outwaits until not scared, then comes out
even if the lights are turned back off earliereven if the lights are turned back off earlier
2828
Behaviors are Behaviors are ConcurrentConcurrent
2929
What happens when What happens when there’s a conflict from there’s a conflict from concurrent behaviors?concurrent behaviors?
EquilbriumEquilbrium– Feeding squirrels-feed, Feeding squirrels-feed,
flee: hesitate in-flee: hesitate in-betweenbetween
DominanceDominance– Sleepy, hungry: either Sleepy, hungry: either
sleep or eatsleep or eat CancellationCancellation
– Sticklebacks defend, Sticklebacks defend, attack: build a nest attack: build a nest
?
3030
Reactive RobotsReactive Robots
Most apps are programmed with this paradigmMost apps are programmed with this paradigm Biologically based:Biologically based:
– Behaviors (independent processes), released by perceptual or Behaviors (independent processes), released by perceptual or internal events (state)internal events (state)
– No world models or long term memoryNo world models or long term memory– Highly modular, genericHighly modular, generic– Overall behavior Overall behavior emergesemerges
SENSE ACT
RELEASERbehavior
3131
Example : My Real Example : My Real BabyBaby Behaviors?Behaviors? Touch-> AwakeTouch-> Awake Upside down & Awake-> CryUpside down & Awake-> Cry Awake & Hungry -> CryAwake & Hungry -> Cry Awake & Lonely -> CryAwake & Lonely -> Cry
Note can get crying from multiple behaviorsNote can get crying from multiple behaviors Note internal state (countdown timer on Note internal state (countdown timer on
Lonely)Lonely)
www.irobot.com
3232
Subsumption Architecture:Subsumption Architecture:Rodney BrooksRodney Brooks
From http://www.spe.sony.com/classics/fastcheap/index.html
3333
RunawayRunaway
HALT
COLLIDE
PS MS
RUN AWAYPS MS
runaway 0
wander 1 follow-corridor 2
3434
Example Perception: Polar Example Perception: Polar PlotPlot
Plot is Plot is ego-centricego-centric Plot is distributed (available to whatever wants to use Plot is distributed (available to whatever wants to use
it)it) Although it is a representation in the sense of being a Although it is a representation in the sense of being a
data structure, there is no memory (contains latest data structure, there is no memory (contains latest information) and no reasoning (2-3 means a “wall”)information) and no reasoning (2-3 means a “wall”)
if sensing is ego-centric, canoften eliminate need for memory, representation
3535
Potential Fields Potential Fields (Example: Navigation)(Example: Navigation)
7
6
5
4
3
2
1
0
0 1 2 3 4 5 6 7 8 9101112131415
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0
0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2
3636
Wavefront AlgorithmWavefront Algorithm
7
6
5
4
3
2
1
0
0 1 2 3 4 5 6 7 8 910
11
12
13
14
15
18 17 16 15 14 13 12 11 10 9 9 9 9 9 9 9
17 17 16 15 14 13 12 11 10 9 8 8 8 8 8 8
17 16 16 15 14 13 12 11 10 9 8 7 7 7 7 7
17 16 15 15 1 1 1 1 1 1 1 1 6 6 6 6
17 16 15 14 1 1 1 1 1 1 1 1 5 5 5 5
17 16 15 14 13 12 11 10 9 8 7 6 5 4 4 4
17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 3
17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2
(0,7) -> (1,7) -> (2,7) -> (3,7) -> (4,7) -> (5,7) -> (6,7) -> (7,7) -> (8,7) -> (9,7) -> (10,7) -> (10,6) -> (11,6) -> (11,5) -> (12,5) -> (12,4) -> (12,3) -> (13,3) -> (13,2) -> (14,2) -> (14,1) -> (15,1) -> (15,0)
3737
Hybrid Hybrid Deliberate/Reactive Deliberate/Reactive ParadigmParadigm The robot first plans (deliberates) how to best The robot first plans (deliberates) how to best
decompose a task into subtasks (also called “mission decompose a task into subtasks (also called “mission planning”) and then what are the suitable behaviours planning”) and then what are the suitable behaviours to accomplish each subtask. to accomplish each subtask.
Then the behaviours starts executing as per the Then the behaviours starts executing as per the Reactive Paradigm. Reactive Paradigm.
Sensing organization is also a mixture of Hierarchical Sensing organization is also a mixture of Hierarchical and Reactive styles; sensor data gets routed to each and Reactive styles; sensor data gets routed to each behaviour the needs that sensor, but is also available behaviour the needs that sensor, but is also available to the planner for construction of a task-oriented to the planner for construction of a task-oriented global world model. global world model.
3838
Deliberation v.s. Deliberation v.s. PlanningPlanning Besides “planning” robot has to Besides “planning” robot has to
perform other tasks such as: map perform other tasks such as: map making, performance monitoring, making, performance monitoring, learning, etc.learning, etc.
All these tasks together with All these tasks together with planning are known as: planning are known as: DELIBERATIONDELIBERATION
3939
Sensing OrganizationSensing Organization
BEHAVIOR
BEHAVIOR
BEHAVIOR
SENSOR 1
SENSOR 2
ACTUATORS
WORLD MAP/KNOWLEDGE REP
SENSOR 3
virtual sensor
Deliberative functions*Can “eavesdrop”*Can have their ownSensors*Have output which Looks like a sensorOutput to a behavior(virtual sensor)
4040
Hybrid BehaviorsHybrid Behaviors
Behaviors are extended toBehaviors are extended to ReflexiveReflexive InnateInnate LearnedLearned
(Just like in ethology)(Just like in ethology)
4141
Architectures: Architectures: Common FunctionalityCommon Functionality
Mission planner Mission planner
CartographerCartographer
Sequencer agentSequencer agent
Behavioral managerBehavioral manager
Performance monitor/problem solving Performance monitor/problem solving agent (fairly rare)agent (fairly rare)
4242
Several Hybrid Several Hybrid Approaches Have Been Approaches Have Been DevelopedDeveloped
AuRA (Arkin 1986)AuRA (Arkin 1986) Atlantis (Gat 1991)Atlantis (Gat 1991) Sensor-Fusion Effects (SFX) (Murphy 1996)Sensor-Fusion Effects (SFX) (Murphy 1996) 3-Tiered (3T) (JPL1990s)3-Tiered (3T) (JPL1990s) Saphira (Konolige 1998)Saphira (Konolige 1998) Tack Control Architecture (Simmons 1997)Tack Control Architecture (Simmons 1997) Planner-Reactor (Lyons and Hendriks 1992)Planner-Reactor (Lyons and Hendriks 1992) Procedural Reasoning System (PRS) (Georgeff and Lansky 1987)Procedural Reasoning System (PRS) (Georgeff and Lansky 1987) SSS (Connell 1992)SSS (Connell 1992) Multi-Valued Logic (Saffiotti 1995)Multi-Valued Logic (Saffiotti 1995) SOMASS Hybrid Assembly System (Malcom and Smithers 1990)SOMASS Hybrid Assembly System (Malcom and Smithers 1990) Agent Architecture (Hayes-Roth 1993)Agent Architecture (Hayes-Roth 1993) Etc., Etc.Etc., Etc.
4343
Georgia Tech Georgia Tech TMR(Tactical Mobile TMR(Tactical Mobile Robot) RobotsRobot) Robots
4444
NAVIGATIONNAVIGATION
Topological Navigation – Topological Navigation – Qualitative NavigationQualitative Navigation
Metric Navigation – Quantitative Metric Navigation – Quantitative NavigationNavigation
Navigation Algorithm usually is Navigation Algorithm usually is part of Deliberative part of Hybrid part of Deliberative part of Hybrid Architecture.Architecture.
4545
Qualitative Navigation Qualitative Navigation uses Landmarksuses Landmarks
floor plan
relational graph
Relational Methods
Nodes: landmarks, gateways,goal locations
Edges: navigable path
Gateway is an opportunityto change path heading
4747
Quantitative Quantitative NavigationNavigation
Want to get from one point to Want to get from one point to another with an optimization another with an optimization criteria:criteria:
Minimize TimeMinimize Time Minimize EnergyMinimize Energy Minimize DistanceMinimize Distance Etc.Etc.
4848
Space Representation: Space Representation: Voronoi Graphs Voronoi Graphs Imagine a fire starting at the boundaries, creating a Imagine a fire starting at the boundaries, creating a
line where they intersect, intersections of lines are line where they intersect, intersections of lines are nodesnodes
Result is a relational graphResult is a relational graph
4949
Space Representation: Space Representation: Rectangular GraphRectangular Graph
5050
AA** AlgorithmAlgorithm
5151
DiscussionDiscussion
Questions ?
5252
ReferencesReferences
Murphy R.R.; “Introduction to AI Murphy R.R.; “Introduction to AI Robotics, MIT Press, 2000Robotics, MIT Press, 2000
http://www.policyalmanac.org/gahttp://www.policyalmanac.org/games/aStarTutorial.htmmes/aStarTutorial.htm (Accessed 2/6/06) (Accessed 2/6/06)
http://robots.stanford.edu/http://robots.stanford.edu/ (Accessed (2/6/06)(Accessed (2/6/06)
http://www.ghostriderrobot.com/ihttp://www.ghostriderrobot.com/index.php?id=robotndex.php?id=robot (Accessed 2/6/06) (Accessed 2/6/06)