Presentation is loading. Please wait.

Presentation is loading. Please wait.

Bayesian Filtering for Robot Localization

Similar presentations


Presentation on theme: "Bayesian Filtering for Robot Localization"— Presentation transcript:

1 Bayesian Filtering for Robot Localization
CSE-473

2 Probabilistic Robotics
Key idea: Explicit representation of uncertainty (using the calculus of probability theory) Perception = state estimation Control = utility optimization

3 Localization “Using sensory information to locate the robot in its environment is the most fundamental problem to providing a mobile robot with autonomous capabilities.” [Cox ’91] Given Map of the environment. Sequence of sensor measurements. Wanted Estimate of the robot’s position. Problem classes Position tracking Global localization Kidnapped robot problem (recovery)

4 Bayes Filters for Robot Localization

5 Bayes Filters: Framework
Given: Stream of observations z and action data u: Sensor model P(z|x). Action model P(x|u,x’). Prior probability of the system state P(x). Wanted: Estimate of the state X of a dynamical system. The posterior of the state is also called Belief:

6 Graphical Model of Localization
u u u 1 t-1 ... x x x x 1 2 t m z z z 1 2 t

7 Markov Assumption Underlying Assumptions Static world
Independent noise Perfect model, no approximation errors

8 Two Time Slice Representation of Dynamic Bayes Net
u u t-1 t x x x t-1 t z z t-1 t

9 Belief Update u t x x t-1 t z t

10 Bayes Filters z = observation u = action x = state Bayes Markov
Total prob. Markov

11 Representations for Bayesian Robot Localization
Kalman filters (late-80s?) Gaussians approximately linear models position tracking Discrete approaches (’95) Topological representation (’95) uncertainty handling (POMDPs) occas. global localization, recovery Grid-based, metric representation (’96) global localization, recovery Robotics AI Particle filters (’99) sample-based representation global localization, recovery Multi-hypothesis (’00) multiple Kalman filters global localization, recovery

12 Particle Filters

13 Particle Filters Represent belief by random samples
Estimation of non-Gaussian, nonlinear processes Monte Carlo filter, Survival of the fittest, Condensation, Bootstrap filter, Particle filter Filtering: [Rubin, 88], [Gordon et al., 93], [Kitagawa 96] Computer vision: [Isard and Blake 96, 98] Dynamic Bayesian Networks: [Kanazawa et al., 95]d

14 Sample-based Density Representation

15 Importance Sampling Weight samples: w = f / g

16 Particle Filters

17 Sensor Information: Importance Sampling

18 Robot Motion

19 Sensor Information: Importance Sampling

20 Robot Motion

21 Particle Filter Algorithm
Importance factor for xit: draw xit from p(xt | xit-1,ut-1) draw xit-1 from Bel(xt-1)

22 Motion Model Reminder Start

23 Proximity Sensor Model Reminder
Sonar sensor Laser sensor

24 Sample-based Localization (sonar)

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44 Using Ceiling Maps for Localization
[Dellaert et al. 99]

45 Vision-based Localization
h(x) z P(z|x)

46 Under a Light Measurement z: P(z|x):

47 Next to a Light Measurement z: P(z|x):

48 Elsewhere Measurement z: P(z|x):

49 Global Localization Using Vision

50 Localization for AIBO robots

51 Adaptive Sampling

52 Example Run Sonar

53 Example Run Laser

54 Example Run

55 Tracking with a Moving Robot

56 Ball Tracking in RoboCup
Extremely noisy (nonlinear) motion of observer Inaccurate sensing, limited processing power Interactions between target and environment Interactions between robot(s) and target Goal: Unified framework for modeling the ball and its interactions.

57 Dynamic Bayes Network for Ball Tracking
z l z l z l Landmark detection k-2 k-1 k Robot localization r r r Map and robot location k-2 k-1 k u u Robot control k-2 k-1 m m m k-2 k-1 k Ball motion mode b b b Ball location and velocity Ball tracking k-2 k-1 k z b z b z b Ball observation k-2 k-1 k

58 Rao-Blackwellised PF for Inference
Represent posterior by random samples Each sample contains robot location, ball mode, ball Kalman filter Generate individual components of a particle stepwise using the factorization

59 Ball-Environment Interaction

60 Nokia 6600 Java Cell Phone with Bluetooth GPS unit
GPS Receivers We Used Today the GPS receivers become much smaller and cheaper than a few years ago. Nokia 6600 Java Cell Phone with Bluetooth GPS unit GeoStats wearable GPS logger

61 Geographic Information Systems
The second related system is …. The kernel of such systems is the database about geographic information. GIS technology has been used for tens of years and today there are a large number of different kinds of geographic data available. In this project we rely on two kinds of geographic data. The first data is the street map. The left picture shows…. The second is the bus route and bus stop data. The picture on the right… Street map Data source: Census 2000 Tiger/line data Bus routes and bus stops Data source: Metro GIS

62 Adding Mode of Transportation
Say something about the dependence between mode and x. How to model the dependence. mk-1 mk Transportation mode xk-1 xk Edge, velocity, position qk-1 qk Data (edge) association zk-1 zk GPS reading Time k-1 Time k

63 Infer Location and Transportation
Measurements Projections Bus mode Car mode Foot mode Green Red Blue Explain why it switches from foot to bus, not car: because of the bus stops If people ask why no car particle at all (there are car particles, just their weights are too small that can not be displayed).

64 Hierarchical Model gk-1 gk tk-1 tk mk-1 mk xk-1 xk qk-1 qk zk-1 zk
Goal tk-1 tk Trip segment mk-1 mk Transportation mode xk-1 xk Edge, velocity, position qk-1 qk Data (edge) association zk-1 zk GPS reading Time k-1 Time k

65 Predict Goal and Path Predicted goal Predicted path

66 Application: Opportunity Knocks
Finally I’ll give an application of our technique. The client side includes a cell phone and a GPS receiver. The cell phone can transmit GPS measurements to a server. Our learning and inference engines are run on the server side and transmit the inference results back to the cell phone. In this episode, suppose an elder person carries … Then the inference engine instantiate the goal as home.

67 Detect User Errors Untrained Trained Instantiated
In this episode, the person takes the bus home but missed the usual bus stop. The black disk is the goal and the cross mark is where the system think the person should get off the bus. The probability of normal and abnormal activities are represented using a bar here. The black part is the probability of being normal while the red part is the probability of being abnormal. At here, the person missed the bus stop and the probability of abnormal activity jump quickly. Untrained Trained Instantiated

68 Application: Opportunity Knocks

69 Particle Filter Algorithm

70 Resampling Given: Set S of weighted samples.
Wanted : Random sample, where the probability of drawing xi is given by wi. Typically done n times with replacement to generate new sample set S’.

71 Resampling Stochastic universal sampling Systematic resampling
w2 w3 w1 wn Wn-1 w2 w3 w1 wn Wn-1 Stochastic universal sampling Systematic resampling Linear time complexity Easy to implement, low variance Roulette wheel Binary search, log n

72 Resampling Algorithm

73 Probabilistic Kinematics
Robot moves from to Odometry information

74 Noise Model for Motion The measured motion is given by the true motion corrupted with noise. To predict sample position, just sample from “noisy version” of measured motion.

75 Gaussian Noise Model Normal distribution

76 Examples (odometry based)

77 When does this approximation fail?
Motion Model with Map When does this approximation fail?


Download ppt "Bayesian Filtering for Robot Localization"

Similar presentations


Ads by Google