Title: Probabilistic Techniques for Mobile Robot Navigation
1Probabilistic Techniquesfor Mobile Robot
Navigation
Wolfram Burgard University of Freiburg
Department of Computer Science http//www.informa
tik.uni-freiburg.de/burgard/
2Robotics Today
3DARPA Grand Challenge
Courtesy by Sebastian Thrun
4Robot Projects Interactive Tour-guides
Rhino
Albert
Minerva
5Probabilistic Techniques in Robotics
- Perception state estimation
- Action utility maximization
- Key Question
- How to scale to higher-dimensional spaces
6Nature of Data
Odometry Data
7Platforms
8Robot Projects Acting in the Three-dimensional
World
Herbert
Zora
Groundhog
9Dimensions of Mobile Robot Navigation
SLAM
localization
mapping
integrated approaches
active localization
exploration
motion control
10Dimensions of Mobile Robot Navigation
SLAM
localization
mapping
integrated approaches
active localization
exploration
motion control
11Outline
- Localization
- Mapping
- Exploration
12Probabilistic Localization
13Mobile Robot Localization with Particle Filters
14MCL Sensor Update
15PF Robot Motion
16Particle Filter Algorithm
4. Re-sample
17MCL Global Localization (Sonar)
18Vision-based Localization
19Dimensions of Mobile Robot Navigation
SLAM
localization
mapping
integrated approaches
active localization
exploration
motion control
20Outline
- Localization
- Mapping
- Exploration
21Simultaneous Localization and Mapping (SLAM)
- To determine its position, the robot needs a map.
- During mapping, the robot needs to know its
position to learn a consistent model - Simultaneous localization and mapping (SLAM) is a
chicken and egg problem
22Why SLAM is Hard Raw Odometry
23Scan Matching
- Maximize the likelihood of the i-th pose and map
relative to the (i-1)-th pose and map.
24Mapping using Scan Matching
25Probabilistic Formulation of SLAM
26Key Question/Problem
- How to maintain multiple map and pose hypotheses
during mapping? - Ambiguity caused by the data association problem.
27A Graphical Model for SLAM
28Rao-Blackwellized Particle Filters for SLAM
- Observation
- Given the true trajectory of the robot, we can
efficiently compute the map (mapping with known
poses). - Idea
- Use a particle filter to represent potential
trajectories of the robot. - Each particle carries its own map.
- Each particle survives with a probability that is
proportional to the likelihood of the observation
given that particle and its map.
Murphy et al., 99
29Factorization Underlying Rao-Blackwellization
Mapping with known poses
Particle filter representing trajectory hypotheses
30Example
3 particles
31Limitations
- A huge number of particles is required.
- This introduces enormous memory and computational
requirements. - It prevents the approach from being applicable in
realistic scenarios.
32Challenge
- Reduction of the number of particles.
- Approaches
- Focused proposal distributions (keep the samples
in the right place) - Adaptive re-sampling (avoid depletion of
relevant particles)
33Motion Model for Scan Matching
Raw Odometry
Scan Matching
34Incorporating the Current Measurement
End of a corridor Free space Corridor
35Application Example
Loop Closure
36Application Example
Loop Closure
37Application Example
38Map of the Intel Lab
- 15 particles
- four times faster than real-timeP4, 2.8GHz
- 5cm resolution during scan matching
- 1cm resolution in final map
39Outdoor Campus Map
- 30 particles
- 250x250m2
- 1.75 km (odometry)
- 20cm resolution during scan matching
- 30cm resolution in final map
40Multi-Level Surface Maps
- Map size 195 by 146 m
- Cell resolution 10 cm
- Number of data points 20,207,000
41Resulting Map
42MIT Kilian Court
43MIT Kilian Court
44Dimensions of Mobile Robot Navigation
SLAM
localization
mapping
integrated approaches
active localization
exploration
motion control
45Exploration
- The approaches seen so far are purely passive.
- Given an unknown environment, how can we control
the robot(s) to efficiently learn a map? - By reasoning about control, the mapping process
can be made much more effective.
46Decision-Theoretic Formulation of Exploration
cost (path length)
reward (expected information gain)
47Exploration with Known Poses
48Multi-Robot Exploration
- How to control teams of robots to effectively
cover an unknown environment? - How to deal with the complexity of the assignment
problem? - How to deal with limitedcommunication ranges?
49Levels of Coordination
- No exchange of information
- Implicit coordination Sharing a joint map
- Communication of the individual maps and poses
- Central mapping system
- Explicit coordination Determine better target
locations to distribute the robots - Central planner for target point assignment
50Example
Second robot
First robot
51Idea
- Choose target locations at the frontier to the
unexplored area by trading off the expected
information gain and travel costs. - Reduce utility of target locations whenever they
are expected to be covered by another robot.
52Coordinated Multi-Robot Exploration
- Determine the frontier cells.
- Compute for each robot the cost for reaching each
frontier cell. - Choose the robot with the optimal overall
evaluation and assign the corresponding target
point to it. - Reduce the utility of the frontier cells visible
from that target point. - If there is one robot left go to 3.
53Application Example
First robot
Second robot
54Real World Experiment
55Real World Experiment
56A Simulated Run
Independent robots
Coordinated robots
57Extension to Systems with Limited Communication
Maps are only communicated within clusters
58Combining SLAM and Exploration
59Where to Move Next?
60Naïve Approach to Combine Exploration and Mapping
- Learn the map using a Rao-Blackwellized particle
filter. - Apply an exploration approach that minimizes the
map uncertainty.
61Disadvantage of the Naïve Approach
- Exploration techniques only consider the map
uncertainty for generating controls. - They avoid re-visiting known areas.
- Data association becomes harder.
- More particles are needed to learn a correct map.
62Application Example
Path estimated by the particle filter
True map and trajectory
63Map and Pose Uncertainty
pose uncertainty
map uncertainty
64Goal
- Integrated approach that considers
- exploratory actions,
- place revisiting actions, and
- loop closing actions
- to control the robot.
65Dual Representation for Loop Detection
- Trajectory graph stores the path traversed by the
robot. - Occupancy grid map represents the space covered
by the sensors. - Loops correspond to long paths in the trajectory
graph and short paths in the geometric map.
66Example Trajectory Graph
67Application Example
68Real Exploration Example
69Comparison
Map uncertainty only
Map and pose uncertainty
70Quantitative Results
Localization error
avg. localization error m
map uncertainty
map and pose uncertainty
71Corridor Exploration
72Example Entropy Evolution
73Summary
- Probabilistic techniques are a powerful tool for
solving fundamental robot navigation problems - One key challenge lies in the high dimensionality
of the underlying state estimation problems - They can be addressed by
- developing appropriate representations and
algorithms and by - actively controlling the robots.
74Future Work
- Learning
- Utilizing background knowledge in state
estimation problems - Applications
- Integrated/embedded systems
- Human-robot interaction
75Place Labeling
76Online Categorization of Places
77Mapping in Dynamic Environments
78Tracking People
79Advanced Security for (Autonomous Cars)