520 likes | 750 Views
Cal Poly Pomona. Robot Navigation Salomón Oldak, Ph.D. Electrical and Computer Engineering 2/8/06. DARPA Grand Challenge. Congress mandate to increase the use of ground unmanned vehicles. Congressional Goal: 1/3 of armed forces combat vehicles unmanned by 2015.
E N D
Cal Poly Pomona Robot Navigation Salomón Oldak, Ph.D. Electrical and Computer Engineering 2/8/06
DARPA Grand Challenge • Congress mandate to increase the use of ground unmanned vehicles. • Congressional Goal: 1/3 of armed forces combat vehicles unmanned by 2015. • Vehicles must be fully autonomous • Nearly 250 miles on and off road in 10 hours.
First DARPA Challenge 2004 • First Challenge took place on 3/14/04 • Between Los Angeles and Las Vegas • $1 Million Prize • 25 Teams Participated • CalTech, University of Florida, University of Alaska, Virginia Tech and others • Palos Verdes High School
Obstacles • Paved Roads • Overpasses • Straight-Winding Roads • Sand, Rock • Underpasses • Water • Natural Obstruction
1st Challenge Results Failure: No Team Completed Task. Max Distance 7.4Mi
2nd DARPA Grand Challenge (10/8/2005) Success! 3 Robots Completed task!
Sensors Used • GPS Antenna • Laser Range Finder (Lidar) (30m) • Video Camera (80m) • Odometry (Photo Sensor on Wheel)
Algorithm Problems: Vibration would trick sensors to “imagine” ghost obstacles, The vehicle thought it’s own shadow is an obstacle. Solution: Teach the car. Assess weights to pixels as a human driver operates the car.
Future • 43000 people die in traffic accidents/year in the US • Robot driven cars will reduce # of fatalities • Accidents can be avoided • Liability?
Navigation • Rover’s are mostly teleoperated • 2 stereo hazard avoidance cameras front and back • 1 Stereo Navigation camera on mast • Rovers moves 0.5m at max speed of 34m/h = 0.02MPH
Robot Paradigms • Paradigm: • “A "view" of how things work in the world.” • “…a set of rules and regulations…” • Paradigm Primitives: SENSE, PLAN, ACT
Paradigms • Hierarchical 1967-1990 • Reactive 1988-1992 • Hybrid Deliberative/Reactive 1990-
Hierarchical Paradigm • The robot operates in a top-down fashion, heavy on planning. • The robot senses the world, plans the next action, acts; at each step the robot explicitly plans the next move. • All the sensing data tends to be gathered into one global world model.
Shakey (SRI) First AI Robot (1967-70)
Assumptions • Close World: World Model Contains everything the Robot needs to know • Frame Problem: The real-world situation is computationally feasible.
Problem Robots designed under Hierarchical Paradigm were VERY slow.
Reactive Paradigm • Sense-act type of organization. • The robot has multiple instances of Sense-Act couplings. • These couplings are concurrent processes, called behaviours, which take the local sensing data and compute the best action to take independently of what the other processes are doing. • The robot will do a combination of behaviours.
Biological Foundation of Reactive Paradigm • Reactive Paradigm is based on observations of ethologists (study of animal behavior) and cognitive psychology (how humans think and represent knowledge) • Biology provides existence proofs.
Behavior Definition (graphical) BEHAVIOR Pattern of Motor Actions Sensory Input
Arctic terns live in Arctic (black, white, gray environment, some grass) but adults have a red spot on beak When hungry, baby pecks at parent’s beak, who regurgitates food for baby to eat How does it know its parent? It doesn’t, it just goes for the largest red spot in its field of view (e.g., ethology grad student with construction paper) Only red thing should be an adult tern Closer = large red Arctic Terns
Types of Behaviors • Reflexive • stimulus-response, often abbreviated S-R (like knee tapped). “Hardwired” • Reactive • learned or “muscle memory”. (Riding a bike, skiing, etc.) • Conscious • 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”
Example: Cockroach Hide • light goes on, the cockroach turns and runs • when it gets to a wall, it follows it • when it finds a hiding place (thigmotrophic), goes in and faces outward • waits until not scared, then comes out • even if the lights are turned back off earlier
What happens when there’s a conflict from concurrent behaviors? • Equilbrium • Feeding squirrels-feed, flee: hesitate in-between • Dominance • Sleepy, hungry: either sleep or eat • Cancellation • Sticklebacks defend, attack: build a nest ?
Reactive Robots RELEASER behavior • Most apps are programmed with this paradigm • Biologically based: • Behaviors (independent processes), released by perceptual or internal events (state) • No world models or long term memory • Highly modular, generic • Overall behavior emerges SENSE ACT
www.irobot.com Example : My Real Baby • Behaviors? • Touch-> Awake • Upside down & Awake-> Cry • Awake & Hungry -> Cry • Awake & Lonely -> Cry • Note can get crying from multiple behaviors • Note internal state (countdown timer on Lonely)
Subsumption Architecture:Rodney Brooks From http://www.spe.sony.com/classics/fastcheap/index.html
follow-corridor 2 wander 1 runaway 0 RUN AWAY PS MS PS MS HALT COLLIDE Runaway
Example Perception: Polar Plot • Plot is ego-centric • Plot is distributed (available to whatever wants to use it) • Although it is a representation in the sense of being a data structure, there is no memory (contains latest information) and no reasoning (2-3 means a “wall”) if sensing is ego-centric, can often eliminate need for memory, representation
Wavefront Algorithm (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)
Hybrid Deliberate/Reactive Paradigm • The robot first plans (deliberates) how to best decompose a task into subtasks (also called “mission planning”) and then what are the suitable behaviours to accomplish each subtask. • Then the behaviours starts executing as per the Reactive Paradigm. • Sensing organization is also a mixture of Hierarchical and Reactive styles; sensor data gets routed to each behaviour the needs that sensor, but is also available to the planner for construction of a task-oriented global world model.
Deliberation v.s. Planning • Besides “planning” robot has to perform other tasks such as: map making, performance monitoring, learning, etc. • All these tasks together with planning are known as: DELIBERATION
Sensing Organization Deliberative functions *Can “eavesdrop” *Can have their own Sensors *Have output which Looks like a sensor Output to a behavior (virtual sensor)
Hybrid Behaviors Behaviors are extended to • Reflexive • Innate • Learned (Just like in ethology)
Architectures: Common Functionality • Mission planner • Cartographer • Sequencer agent • Behavioral manager • Performance monitor/problem solving agent (fairly rare)
Several Hybrid Approaches Have Been Developed • AuRA (Arkin 1986) • Atlantis (Gat 1991) • Sensor-Fusion Effects (SFX) (Murphy 1996) • 3-Tiered (3T) (JPL1990s) • Saphira (Konolige 1998) • Tack Control Architecture (Simmons 1997) • Planner-Reactor (Lyons and Hendriks 1992) • Procedural Reasoning System (PRS) (Georgeff and Lansky 1987) • SSS (Connell 1992) • Multi-Valued Logic (Saffiotti 1995) • SOMASS Hybrid Assembly System (Malcom and Smithers 1990) • Agent Architecture (Hayes-Roth 1993) • Etc., Etc.
NAVIGATION • Topological Navigation – Qualitative Navigation • Metric Navigation – Quantitative Navigation • Navigation Algorithm usually is part of Deliberative part of Hybrid Architecture.
floor plan Gateway is an opportunity to change path heading relational graph Relational Methods Nodes: landmarks, gateways, goal locations Edges: navigable path
Quantitative Navigation Want to get from one point to another with an optimization criteria: • Minimize Time • Minimize Energy • Minimize Distance • Etc.
Space Representation: Voronoi Graphs • Imagine a fire starting at the boundaries, creating a line where they intersect, intersections of lines are nodes • Result is a relational graph