Introduction to Mobile Robotics Probabilistic...
Transcript of Introduction to Mobile Robotics Probabilistic...
![Page 1: Introduction to Mobile Robotics Probabilistic Roboticsais.informatik.uni-freiburg.de/.../robotics/slides/... · Introduction to Mobile Robotics Wolfram Burgard . 2 Probabilistic Robotics](https://reader034.fdocuments.us/reader034/viewer/2022042620/5f46da5e5b339b35db5a25ec/html5/thumbnails/1.jpg)
1
Probabilistic Robotics
Introduction to Mobile Robotics
Wolfram Burgard
![Page 2: Introduction to Mobile Robotics Probabilistic Roboticsais.informatik.uni-freiburg.de/.../robotics/slides/... · Introduction to Mobile Robotics Wolfram Burgard . 2 Probabilistic Robotics](https://reader034.fdocuments.us/reader034/viewer/2022042620/5f46da5e5b339b35db5a25ec/html5/thumbnails/2.jpg)
2
Probabilistic Robotics Key idea:
Explicit representation of uncertainty
(using the calculus of probability theory)
Perception = state estimation Action = utility optimization
![Page 3: Introduction to Mobile Robotics Probabilistic Roboticsais.informatik.uni-freiburg.de/.../robotics/slides/... · Introduction to Mobile Robotics Wolfram Burgard . 2 Probabilistic Robotics](https://reader034.fdocuments.us/reader034/viewer/2022042620/5f46da5e5b339b35db5a25ec/html5/thumbnails/3.jpg)
3
P(A) denotes probability that proposition A is true.
Axioms of Probability Theory
![Page 4: Introduction to Mobile Robotics Probabilistic Roboticsais.informatik.uni-freiburg.de/.../robotics/slides/... · Introduction to Mobile Robotics Wolfram Burgard . 2 Probabilistic Robotics](https://reader034.fdocuments.us/reader034/viewer/2022042620/5f46da5e5b339b35db5a25ec/html5/thumbnails/4.jpg)
4
A Closer Look at Axiom 3
B
BA ∧A BTrue
![Page 5: Introduction to Mobile Robotics Probabilistic Roboticsais.informatik.uni-freiburg.de/.../robotics/slides/... · Introduction to Mobile Robotics Wolfram Burgard . 2 Probabilistic Robotics](https://reader034.fdocuments.us/reader034/viewer/2022042620/5f46da5e5b339b35db5a25ec/html5/thumbnails/5.jpg)
5
Using the Axioms
![Page 6: Introduction to Mobile Robotics Probabilistic Roboticsais.informatik.uni-freiburg.de/.../robotics/slides/... · Introduction to Mobile Robotics Wolfram Burgard . 2 Probabilistic Robotics](https://reader034.fdocuments.us/reader034/viewer/2022042620/5f46da5e5b339b35db5a25ec/html5/thumbnails/6.jpg)
6
Discrete Random Variables
X denotes a random variable
X can take on a countable number of values in {x1, x2, …, xn}
P(X=xi) or P(xi) is the probability that the random variable X takes on value xi
P( ) is called probability mass function
E.g.
.
![Page 7: Introduction to Mobile Robotics Probabilistic Roboticsais.informatik.uni-freiburg.de/.../robotics/slides/... · Introduction to Mobile Robotics Wolfram Burgard . 2 Probabilistic Robotics](https://reader034.fdocuments.us/reader034/viewer/2022042620/5f46da5e5b339b35db5a25ec/html5/thumbnails/7.jpg)
7
Continuous Random Variables
X takes on values in the continuum. p(X=x) or p(x) is a probability density
function
E.g.
x
p(x)
![Page 8: Introduction to Mobile Robotics Probabilistic Roboticsais.informatik.uni-freiburg.de/.../robotics/slides/... · Introduction to Mobile Robotics Wolfram Burgard . 2 Probabilistic Robotics](https://reader034.fdocuments.us/reader034/viewer/2022042620/5f46da5e5b339b35db5a25ec/html5/thumbnails/8.jpg)
8
“Probability Sums up to One”
Discrete case Continuous case
![Page 9: Introduction to Mobile Robotics Probabilistic Roboticsais.informatik.uni-freiburg.de/.../robotics/slides/... · Introduction to Mobile Robotics Wolfram Burgard . 2 Probabilistic Robotics](https://reader034.fdocuments.us/reader034/viewer/2022042620/5f46da5e5b339b35db5a25ec/html5/thumbnails/9.jpg)
9
Joint and Conditional Probability
P(X=x and Y=y) = P(x,y)
If X and Y are independent then P(x,y) = P(x) P(y)
P(x | y) is the probability of x given y P(x | y) = P(x,y) / P(y) P(x,y) = P(x | y) P(y)
If X and Y are independent then P(x | y) = P(x)
![Page 10: Introduction to Mobile Robotics Probabilistic Roboticsais.informatik.uni-freiburg.de/.../robotics/slides/... · Introduction to Mobile Robotics Wolfram Burgard . 2 Probabilistic Robotics](https://reader034.fdocuments.us/reader034/viewer/2022042620/5f46da5e5b339b35db5a25ec/html5/thumbnails/10.jpg)
10
Law of Total Probability
Discrete case Continuous case
![Page 11: Introduction to Mobile Robotics Probabilistic Roboticsais.informatik.uni-freiburg.de/.../robotics/slides/... · Introduction to Mobile Robotics Wolfram Burgard . 2 Probabilistic Robotics](https://reader034.fdocuments.us/reader034/viewer/2022042620/5f46da5e5b339b35db5a25ec/html5/thumbnails/11.jpg)
11
Marginalization
Discrete case Continuous case
![Page 12: Introduction to Mobile Robotics Probabilistic Roboticsais.informatik.uni-freiburg.de/.../robotics/slides/... · Introduction to Mobile Robotics Wolfram Burgard . 2 Probabilistic Robotics](https://reader034.fdocuments.us/reader034/viewer/2022042620/5f46da5e5b339b35db5a25ec/html5/thumbnails/12.jpg)
12
Bayes Formula
![Page 13: Introduction to Mobile Robotics Probabilistic Roboticsais.informatik.uni-freiburg.de/.../robotics/slides/... · Introduction to Mobile Robotics Wolfram Burgard . 2 Probabilistic Robotics](https://reader034.fdocuments.us/reader034/viewer/2022042620/5f46da5e5b339b35db5a25ec/html5/thumbnails/13.jpg)
13
Normalization
Algorithm:
![Page 14: Introduction to Mobile Robotics Probabilistic Roboticsais.informatik.uni-freiburg.de/.../robotics/slides/... · Introduction to Mobile Robotics Wolfram Burgard . 2 Probabilistic Robotics](https://reader034.fdocuments.us/reader034/viewer/2022042620/5f46da5e5b339b35db5a25ec/html5/thumbnails/14.jpg)
14
Bayes Rule with Background Knowledge
![Page 15: Introduction to Mobile Robotics Probabilistic Roboticsais.informatik.uni-freiburg.de/.../robotics/slides/... · Introduction to Mobile Robotics Wolfram Burgard . 2 Probabilistic Robotics](https://reader034.fdocuments.us/reader034/viewer/2022042620/5f46da5e5b339b35db5a25ec/html5/thumbnails/15.jpg)
15
Conditional Independence
)|()|(),( zyPzxPzyxP =
),|()( yzxPzxP =
),|()( xzyPzyP =
Equivalent to and But this does not necessarily mean
(independence/marginal independence)
)()(),( yPxPyxP =
![Page 16: Introduction to Mobile Robotics Probabilistic Roboticsais.informatik.uni-freiburg.de/.../robotics/slides/... · Introduction to Mobile Robotics Wolfram Burgard . 2 Probabilistic Robotics](https://reader034.fdocuments.us/reader034/viewer/2022042620/5f46da5e5b339b35db5a25ec/html5/thumbnails/16.jpg)
16
Simple Example of State Estimation
Suppose a robot obtains measurement z What is P(open | z)?
![Page 17: Introduction to Mobile Robotics Probabilistic Roboticsais.informatik.uni-freiburg.de/.../robotics/slides/... · Introduction to Mobile Robotics Wolfram Burgard . 2 Probabilistic Robotics](https://reader034.fdocuments.us/reader034/viewer/2022042620/5f46da5e5b339b35db5a25ec/html5/thumbnails/17.jpg)
17
Causal vs. Diagnostic Reasoning
P(open|z) is diagnostic P(z|open) is causal In some situations, causal knowledge
is easier to obtain Bayes rule allows us to use causal
knowledge:
)()()|()|( zP
openPopenzPzopenP =
count frequencies!
![Page 18: Introduction to Mobile Robotics Probabilistic Roboticsais.informatik.uni-freiburg.de/.../robotics/slides/... · Introduction to Mobile Robotics Wolfram Burgard . 2 Probabilistic Robotics](https://reader034.fdocuments.us/reader034/viewer/2022042620/5f46da5e5b339b35db5a25ec/html5/thumbnails/18.jpg)
18
Example P(z|open) = 0.6 P(z|¬open) = 0.3 P(open) = P(¬open) = 0.5
67.015.03.0
3.05.03.05.06.0
5.06.0)|(
)()|()()|()()|()|(
=+
=⋅+⋅
⋅=
¬¬+=
zopenP
openpopenzPopenpopenzPopenPopenzPzopenP
z raises the probability that the door is open
![Page 19: Introduction to Mobile Robotics Probabilistic Roboticsais.informatik.uni-freiburg.de/.../robotics/slides/... · Introduction to Mobile Robotics Wolfram Burgard . 2 Probabilistic Robotics](https://reader034.fdocuments.us/reader034/viewer/2022042620/5f46da5e5b339b35db5a25ec/html5/thumbnails/19.jpg)
19
Combining Evidence Suppose our robot obtains another
observation z2
How can we integrate this new information?
More generally, how can we estimate P(x | z1, ..., zn )?
![Page 20: Introduction to Mobile Robotics Probabilistic Roboticsais.informatik.uni-freiburg.de/.../robotics/slides/... · Introduction to Mobile Robotics Wolfram Burgard . 2 Probabilistic Robotics](https://reader034.fdocuments.us/reader034/viewer/2022042620/5f46da5e5b339b35db5a25ec/html5/thumbnails/20.jpg)
20
Recursive Bayesian Updating
Markov assumption: zn is independent of z1,...,zn-1 if we know x
![Page 21: Introduction to Mobile Robotics Probabilistic Roboticsais.informatik.uni-freiburg.de/.../robotics/slides/... · Introduction to Mobile Robotics Wolfram Burgard . 2 Probabilistic Robotics](https://reader034.fdocuments.us/reader034/viewer/2022042620/5f46da5e5b339b35db5a25ec/html5/thumbnails/21.jpg)
21
Example: Second Measurement
P(z2|open) = 0.25 P(z2|¬open) = 0.3 P(open|z1)=2/3
• z2 lowers the probability that the door is open
![Page 22: Introduction to Mobile Robotics Probabilistic Roboticsais.informatik.uni-freiburg.de/.../robotics/slides/... · Introduction to Mobile Robotics Wolfram Burgard . 2 Probabilistic Robotics](https://reader034.fdocuments.us/reader034/viewer/2022042620/5f46da5e5b339b35db5a25ec/html5/thumbnails/22.jpg)
23
Actions
Often the world is dynamic since actions carried out by the robot, actions carried out by other agents, or just the time passing by
change the world How can we incorporate such actions?
![Page 23: Introduction to Mobile Robotics Probabilistic Roboticsais.informatik.uni-freiburg.de/.../robotics/slides/... · Introduction to Mobile Robotics Wolfram Burgard . 2 Probabilistic Robotics](https://reader034.fdocuments.us/reader034/viewer/2022042620/5f46da5e5b339b35db5a25ec/html5/thumbnails/23.jpg)
24
Typical Actions
The robot turns its wheels to move The robot uses its manipulator to grasp
an object Plants grow over time …
Actions are never carried out with
absolute certainty In contrast to measurements, actions
generally increase the uncertainty
![Page 24: Introduction to Mobile Robotics Probabilistic Roboticsais.informatik.uni-freiburg.de/.../robotics/slides/... · Introduction to Mobile Robotics Wolfram Burgard . 2 Probabilistic Robotics](https://reader034.fdocuments.us/reader034/viewer/2022042620/5f46da5e5b339b35db5a25ec/html5/thumbnails/24.jpg)
25
Modeling Actions
To incorporate the outcome of an action u into the current “belief”, we use the conditional pdf
P(x | u, x’)
This term specifies the pdf that executing u changes the state from x’ to x.
![Page 25: Introduction to Mobile Robotics Probabilistic Roboticsais.informatik.uni-freiburg.de/.../robotics/slides/... · Introduction to Mobile Robotics Wolfram Burgard . 2 Probabilistic Robotics](https://reader034.fdocuments.us/reader034/viewer/2022042620/5f46da5e5b339b35db5a25ec/html5/thumbnails/25.jpg)
26
Example: Closing the door
![Page 26: Introduction to Mobile Robotics Probabilistic Roboticsais.informatik.uni-freiburg.de/.../robotics/slides/... · Introduction to Mobile Robotics Wolfram Burgard . 2 Probabilistic Robotics](https://reader034.fdocuments.us/reader034/viewer/2022042620/5f46da5e5b339b35db5a25ec/html5/thumbnails/26.jpg)
27
State Transitions P(x | u, x’) for u = “close door”: If the door is open, the action “close door” succeeds in 90% of all cases
open closed0.1 10.9
0
![Page 27: Introduction to Mobile Robotics Probabilistic Roboticsais.informatik.uni-freiburg.de/.../robotics/slides/... · Introduction to Mobile Robotics Wolfram Burgard . 2 Probabilistic Robotics](https://reader034.fdocuments.us/reader034/viewer/2022042620/5f46da5e5b339b35db5a25ec/html5/thumbnails/27.jpg)
Continuous case: Discrete case: We will make an independence assumption to get rid of the u in the second factor in the sum.
28
Integrating the Outcome of Actions
![Page 28: Introduction to Mobile Robotics Probabilistic Roboticsais.informatik.uni-freiburg.de/.../robotics/slides/... · Introduction to Mobile Robotics Wolfram Burgard . 2 Probabilistic Robotics](https://reader034.fdocuments.us/reader034/viewer/2022042620/5f46da5e5b339b35db5a25ec/html5/thumbnails/28.jpg)
29
Example: The Resulting Belief
![Page 29: Introduction to Mobile Robotics Probabilistic Roboticsais.informatik.uni-freiburg.de/.../robotics/slides/... · Introduction to Mobile Robotics Wolfram Burgard . 2 Probabilistic Robotics](https://reader034.fdocuments.us/reader034/viewer/2022042620/5f46da5e5b339b35db5a25ec/html5/thumbnails/29.jpg)
30
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:
![Page 30: Introduction to Mobile Robotics Probabilistic Roboticsais.informatik.uni-freiburg.de/.../robotics/slides/... · Introduction to Mobile Robotics Wolfram Burgard . 2 Probabilistic Robotics](https://reader034.fdocuments.us/reader034/viewer/2022042620/5f46da5e5b339b35db5a25ec/html5/thumbnails/30.jpg)
31
Markov Assumption
Underlying Assumptions Static world Independent noise Perfect model, no approximation errors
![Page 31: Introduction to Mobile Robotics Probabilistic Roboticsais.informatik.uni-freiburg.de/.../robotics/slides/... · Introduction to Mobile Robotics Wolfram Burgard . 2 Probabilistic Robotics](https://reader034.fdocuments.us/reader034/viewer/2022042620/5f46da5e5b339b35db5a25ec/html5/thumbnails/31.jpg)
32
Bayes Filters
Bayes
z = observation u = action x = state
Markov
Markov
Total prob.
Markov
![Page 32: Introduction to Mobile Robotics Probabilistic Roboticsais.informatik.uni-freiburg.de/.../robotics/slides/... · Introduction to Mobile Robotics Wolfram Burgard . 2 Probabilistic Robotics](https://reader034.fdocuments.us/reader034/viewer/2022042620/5f46da5e5b339b35db5a25ec/html5/thumbnails/32.jpg)
33
Bayes Filter Algorithm 1. Algorithm Bayes_filter(Bel(x), d): 2. η=0
3. If d is a perceptual data item z then 4. For all x do 5. 6. 7. For all x do 8.
9. Else if d is an action data item u then 10. For all x do 11.
12. Return Bel’(x)
111 )(),|()|()( −−−∫= tttttttt dxxBelxuxPxzPxBel η
![Page 33: Introduction to Mobile Robotics Probabilistic Roboticsais.informatik.uni-freiburg.de/.../robotics/slides/... · Introduction to Mobile Robotics Wolfram Burgard . 2 Probabilistic Robotics](https://reader034.fdocuments.us/reader034/viewer/2022042620/5f46da5e5b339b35db5a25ec/html5/thumbnails/33.jpg)
34
Bayes Filters are Familiar!
Kalman filters Particle filters Hidden Markov models Dynamic Bayesian networks Partially Observable Markov Decision
Processes (POMDPs)
111 )(),|()|()( −−−∫= tttttttt dxxBelxuxPxzPxBel η
![Page 34: Introduction to Mobile Robotics Probabilistic Roboticsais.informatik.uni-freiburg.de/.../robotics/slides/... · Introduction to Mobile Robotics Wolfram Burgard . 2 Probabilistic Robotics](https://reader034.fdocuments.us/reader034/viewer/2022042620/5f46da5e5b339b35db5a25ec/html5/thumbnails/34.jpg)
Probabilistic Localization
![Page 35: Introduction to Mobile Robotics Probabilistic Roboticsais.informatik.uni-freiburg.de/.../robotics/slides/... · Introduction to Mobile Robotics Wolfram Burgard . 2 Probabilistic Robotics](https://reader034.fdocuments.us/reader034/viewer/2022042620/5f46da5e5b339b35db5a25ec/html5/thumbnails/35.jpg)
Probabilistic Localization
![Page 36: Introduction to Mobile Robotics Probabilistic Roboticsais.informatik.uni-freiburg.de/.../robotics/slides/... · Introduction to Mobile Robotics Wolfram Burgard . 2 Probabilistic Robotics](https://reader034.fdocuments.us/reader034/viewer/2022042620/5f46da5e5b339b35db5a25ec/html5/thumbnails/36.jpg)
37
Summary
Bayes rule allows us to compute probabilities that are hard to assess otherwise. Under the Markov assumption,
recursive Bayesian updating can be used to efficiently combine evidence. Bayes filters are a probabilistic tool
for estimating the state of dynamic systems.