1
I ntroduction to Mobile Robotics Probabilistic Motion Models - - PowerPoint PPT Presentation
I ntroduction to Mobile Robotics Probabilistic Motion Models - - PowerPoint PPT Presentation
I ntroduction to Mobile Robotics Probabilistic Motion Models Wolfram Burgard 1 Robot Motion Robot motion is inherently uncertain. How can we model this uncertainty? 2 Dynam ic Bayesian Netw ork for Controls, States, and Sensations 3
2
Robot Motion
- Robot motion is inherently uncertain.
- How can we model this uncertainty?
3
Dynam ic Bayesian Netw ork for Controls, States, and Sensations
4
Probabilistic Motion Models
- To implement the Bayes Filter, we need the
transition model .
- The term specifies a posterior
probability, that action ut carries the robot from xt-1 to xt.
- In this section we will discuss, how
can be modeled based on the motion equations and the uncertain
- utcome of the movements.
5
Coordinate System s
- The configuration of a typical wheeled robot in 3D
can be described by six parameters.
- This are the three-dimensional Cartesian
coordinates plus the three Euler angles for roll, pitch, and yaw.
- For simplicity, throughout this section we consider
robots operating on a planar surface.
- The state space of such
systems is three- dimensional (x,y,θ).
6
Typical Motion Models
- In practice, one often finds two types of
motion models:
- Odom etry-based
- Velocity-based (dead reckoning)
- Odometry-based models are used when
systems are equipped with wheel encoders.
- Velocity-based models have to be applied
when no wheel encoders are given.
- They calculate the new pose based on the
velocities and the time elapsed.
7
Exam ple W heel Encoders
These modules provide + 5V output when they "see" white, and a 0V
- utput when they "see"
black. These disks are manufactured out of high quality laminated color plastic to offer a very crisp black to white transition. This enables a wheel encoder sensor to easily see the transitions.
Source: http: / / www.active-robots.com/
8
Dead Reckoning
- Derived from “deduced reckoning.”
- Mathematical procedure for determining the
present location of a vehicle.
- Achieved by calculating the current pose of
the vehicle based on its velocities and the time elapsed.
- Historically used to log the position of ships.
[ Image source: Wikipedia, LoKiLeCh]
9
Reasons for Motion Errors of W heeled Robots
bump ideal case different wheel diameters carpet and many more …
Odom etry Model
2 2
) ' ( ) ' ( y y x x
trans
− + − = δ θ δ − − − = ) ' , ' ( atan2
1
x x y y
rot 1 2
'
rot rot
δ θ θ δ − − =
- Robot moves from to .
- Odometry information .
θ , , y x ' , ' , ' θ y x
trans rot rot
u δ δ δ , ,
2 1
=
trans
δ
1 rot
δ
2 rot
δ
θ , , y x ' , ' , ' θ y x
11
The atan2 Function
- Extends the inverse tangent and correctly
copes with the signs of x and y.
Noise Model for Odom etry
- The measured motion is given by the true
motion corrupted with noise.
| | | | 1 1
2 1 1
ˆ
trans rot
rot rot δ α δ α
ε δ δ
+
+ =
| | | | 2 2
2 2 1
ˆ
trans rot
rot rot δ α δ α
ε δ δ
+
+ =
|) | | | ( | |
2 1 4 3
ˆ
rot rot trans
trans trans δ δ α δ α
ε δ δ
+ +
+ =
Typical Distributions for Probabilistic Motion Models
2 2 2
2 1 2
2 1 ) (
σ σ
πσ ε
x
e x
−
= − > =
2 2 2
6 | | 6 6 | x | if ) (
2
σ σ σ εσ x x
Normal distribution Triangular distribution
14
Calculating the Probability Density ( zero-centered)
- For a normal distribution
- For a triangular distribution
1. Algorithm prob_ norm al_ distribution(a,b): 2. return 1. Algorithm prob_ triangular_ distribution(a,b): 2. return query point
- std. deviation
1. Algorithm m otion_ m odel_ odom etry( x, x’,u) 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. return p1 · p2 · p3
15
Calculating the Posterior Given x, x’, and Odom etry
2 2
) ' ( ) ' ( y y x x
trans
− + − = δ θ δ − − − = ) ' , ' ( atan2
1
x x y y
rot 1 2
'
rot rot
δ θ θ δ − − =
2 2
) ' ( ) ' ( ˆ y y x x
trans
− + − = δ θ δ − − − = ) ' , ' ( atan2 ˆ
1
x x y y
rot 1 2
ˆ ' ˆ
rot rot
δ θ θ δ − − = ) | | , ˆ ( prob
trans 2 1 rot 1 1 rot 1 rot 1
δ α δ α δ δ + − = p |)) | | (| , ˆ ( prob
rot2 rot1 4 trans 3 trans trans 2
δ δ α δ α δ δ + + − = p ) | | , ˆ ( prob
trans 2 2 rot 1 2 rot 2 rot 3
δ α δ α δ δ + − = p
- dometry params (u)
values of interest (x,x’)
- dometry
hypotheses
Application
- Repeated application of the motion model
for short movements.
- Typical banana-shaped distributions
- btained for the 2d-projection of the 3d
posterior.
x u u x
Sam ple-Based Density Representation
18
Sam ple-Based Density Representation
19
How to Sam ple from a Norm al Distribution?
- Sampling from a normal distribution
1. Algorithm sam ple_ norm al_ distribution(b): 2. return
20
Norm ally Distributed Sam ples
106 samples
21
How to Sam ple from Norm al or Triangular Distributions?
- Sampling from a normal distribution
- Sampling from a triangular distribution
1. Algorithm sam ple_ norm al_ distribution(b): 2. return 1. Algorithm sam ple_ triangular_ distribution(b): 2. return
22
For Triangular Distribution
103 samples 104 samples 106 samples 105 samples
How to Obtain Sam ples from Arbitrary Functions?
23
Rejection Sam pling
- Sampling from arbitrary distributions
- Sample x from a uniform distribution from [-b,b]
- Sample c from [0, max f]
- if f(x) > c
keep the sample
- therwise
reject the sample
24
c x f(x) c’ x’ f(x’)
OK
25
Rejection Sam pling
- Sampling from arbitrary distributions
1. Algorithm sam ple_ distribution(f,b): 2. repeat 3. 4. 5. until ( ) 6. return
26
Exam ple
- Sampling from
Sam ple Odom etry Motion Model
1. Algorithm sam ple_ m otion_ m odel(u, x): 1. 2. 3. 4. 5. 6. 7. Return
) | | sample( ˆ
2 1 1 1 1 trans rot rot rot
δ α δ α δ δ + + = |)) | | (| sample( ˆ
2 1 4 3 rot rot trans trans trans
δ δ α δ α δ δ + + + = ) | | sample( ˆ
2 2 1 2 2 trans rot rot rot
δ α δ α δ δ + + = ) ˆ cos( ˆ '
1 rot trans
x x δ θ δ + + = ) ˆ sin( ˆ '
1 rot trans
y y δ θ δ + + =
2 1
ˆ ˆ '
rot rot
δ δ θ θ + + = ' , ' , ' θ y x θ δ δ δ , , , , ,
2 1
y x x u
trans rot rot
= =
sam ple_ norm al_ distribution
Exam ples ( Odom etry-Based)
Sam pling from Our Motion Model
Start
30
Velocity-Based Model
θ-90
Noise Model for the Velocity- Based Model
31
- The measured motion is given by the true
motion corrupted with noise.
- Discussion: What is the disadvantage of this
noise model?
| | | |
2 1
ˆ
ω α α
ε
+
+ =
v
v v
| | | |
4 3
ˆ
ω α α
ε ω ω
+
+ =
v
Noise Model for the Velocity- Based Model
32
- The -circle constrains the final
- rientation (2D manifold in a 3D space)
- Better approach:
| | | |
2 1
ˆ
ω α α
ε
+
+ =
v
v v
| | | |
6 5
ˆ
ω α α
ε γ
+
=
v | | | |
4 3
ˆ
ω α α
ε ω ω
+
+ =
v
Term to account for the final rotation
) ˆ , ˆ ( ω v
Motion I ncluding 3 rd Param eter
33
Term to account for the final rotation
34
Equation for the Velocity Model
Center of circle:
some constant (distance to ICC) (center of circle is orthogonal to the initial heading)
35
Equation for the Velocity Model
Center of circle:
some constant some constant (the center of the circle lies
- n a ray half way between x and x’ and is
- rthogonal to the line between x and x’)
36
Equation for the Velocity Model
Center of circle:
some constant
Allows us to solve the equations to:
37
Equation for the Velocity Model
and
Equation for the Velocity Model
- The parameters of the circle:
- allow for computing the velocities as
38
39
Posterior Probability for Velocity Model
40
Sam pling from Velocity Model
Exam ples ( Velocity-Based)
Map-Consistent Motion Model
) , | ' ( x u x p
) , , | ' ( m x u x p ≠
) , | ' ( ) | ' ( ) , , | ' ( x u x p m x p m x u x p η =
Approximation:
43
Sum m ary
- We discussed motion models for odometry-based
and velocity-based systems
- We discussed ways to calculate the posterior
probability p(x’| x, u).
- We also described how to sample from p(x’| x, u).
- Typically the calculations are done in fixed time
intervals ∆t.
- In practice, the parameters of the models have to
be learned.
- We also discussed how to improve this motion