I ntroduction to Mobile Robotics Probabilistic Motion Models - - PowerPoint PPT Presentation

i ntroduction to mobile robotics probabilistic motion
SMART_READER_LITE
LIVE PREVIEW

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


slide-1
SLIDE 1

1

Probabilistic Motion Models I ntroduction to Mobile Robotics

Wolfram Burgard

slide-2
SLIDE 2

2

Robot Motion

  • Robot motion is inherently uncertain.
  • How can we model this uncertainty?
slide-3
SLIDE 3

3

Dynam ic Bayesian Netw ork for Controls, States, and Sensations

slide-4
SLIDE 4

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.
slide-5
SLIDE 5

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,θ).

slide-6
SLIDE 6

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.

slide-7
SLIDE 7

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/

slide-8
SLIDE 8

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]

slide-9
SLIDE 9

9

Reasons for Motion Errors of W heeled Robots

bump ideal case different wheel diameters carpet and many more …

slide-10
SLIDE 10

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

slide-11
SLIDE 11

11

The atan2 Function

  • Extends the inverse tangent and correctly

copes with the signs of x and y.

slide-12
SLIDE 12

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 δ δ α δ α

ε δ δ

+ +

+ =

slide-13
SLIDE 13

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

slide-14
SLIDE 14

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
slide-15
SLIDE 15

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

slide-16
SLIDE 16

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

slide-17
SLIDE 17

Sam ple-Based Density Representation

slide-18
SLIDE 18

18

Sam ple-Based Density Representation

slide-19
SLIDE 19

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

slide-20
SLIDE 20

20

Norm ally Distributed Sam ples

106 samples

slide-21
SLIDE 21

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

slide-22
SLIDE 22

22

For Triangular Distribution

103 samples 104 samples 106 samples 105 samples

slide-23
SLIDE 23

How to Obtain Sam ples from Arbitrary Functions?

23

slide-24
SLIDE 24

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

slide-25
SLIDE 25

25

Rejection Sam pling

  • Sampling from arbitrary distributions

1. Algorithm sam ple_ distribution(f,b): 2. repeat 3. 4. 5. until ( ) 6. return

slide-26
SLIDE 26

26

Exam ple

  • Sampling from
slide-27
SLIDE 27

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

slide-28
SLIDE 28

Exam ples ( Odom etry-Based)

slide-29
SLIDE 29

Sam pling from Our Motion Model

Start

slide-30
SLIDE 30

30

Velocity-Based Model

θ-90

slide-31
SLIDE 31

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

slide-32
SLIDE 32

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

slide-33
SLIDE 33

Motion I ncluding 3 rd Param eter

33

Term to account for the final rotation

slide-34
SLIDE 34

34

Equation for the Velocity Model

Center of circle:

some constant (distance to ICC) (center of circle is orthogonal to the initial heading)

slide-35
SLIDE 35

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’)
slide-36
SLIDE 36

36

Equation for the Velocity Model

Center of circle:

some constant

Allows us to solve the equations to:

slide-37
SLIDE 37

37

Equation for the Velocity Model

and

slide-38
SLIDE 38

Equation for the Velocity Model

  • The parameters of the circle:
  • allow for computing the velocities as

38

slide-39
SLIDE 39

39

Posterior Probability for Velocity Model

slide-40
SLIDE 40

40

Sam pling from Velocity Model

slide-41
SLIDE 41

Exam ples ( Velocity-Based)

slide-42
SLIDE 42

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:

slide-43
SLIDE 43

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

model to take the map into account.