mobile robot localization

106
1/106 Mobile robot localization Francesco Martinelli University of Rome “Tor Vergata” Roma, Italy [email protected]

Upload: anastasia-sutton

Post on 31-Dec-2015

44 views

Category:

Documents


0 download

DESCRIPTION

Mobile robot localization. Francesco Martinelli University of Rome “Tor Vergata” Roma, Italy [email protected]. Objective :. Determination of the pose (= position + orientation) of a mobile robot in a known environment in order to succesfully perform a given task. Summary :. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Mobile robot localization

1/106

Mobile robot localization

Francesco MartinelliUniversity of Rome “Tor Vergata”

Roma, [email protected]

Page 2: Mobile robot localization

2/106

Objective:

Determination of the pose (= position + orientation)of a mobile robot in a known environment in order to succesfully perform a given task

Page 3: Mobile robot localization

3/106

Summary:

• Robot localization taxonomy (4-5)

• Robot localization as an estimation problem: the Bayes filter (6-17)

• Observability issue (18-23)

• Robot description (24) Motion model: the differential drive (25-34) Measurement model: rangefinder or landmarks (35-39)

• Robot localization algorithms (40-42): Gaussian filters: EKF, UKF (43-60) Non parametric filters: HF, PF (61-77)

• Examples (78-104)• Conclusions (105)• References (106)• Video

Page 4: Mobile robot localization

4/106

Robot Localization Taxonomy:

• Position tracking• Global localization• Kidnapped problem

Increasing degreeof difficulty

Other classifications include:• type of environment (static or dynamic; completely or partially known)• active or passive localization• single or multi robot localization.

Page 5: Mobile robot localization

5/106

Robot Localization Taxonomy:

• Position tracking• Global localization• Kidnapped problem

Increasing degreeof difficulty

Other classifications include:• type of environment (static or dynamic; completely or partially known)• active or passive localization• single or multi robot localization.

Page 6: Mobile robot localization

6/106

Localization as an estimation problem

The robot must infer its pose from available data

Data (noisy):

• Motion information:

Proprioceptive sensors (e.g. encoders, accelerometers, etc.)

• Environment Measurements

Exteroceptive sensors (e.g. laser, sonar, IR, GPS, camera, RFID, etc.)

A filtering approach is required to fuse all information

Page 7: Mobile robot localization

7/106

Localization as an estimation problem

Notation

Robot pose

x

y

Robot poses from time 0 to time t

Robot exteroceptive measurements from time 1 to time t

Motion commands (or proprioceptive measurements) from time 0 to time t

Page 8: Mobile robot localization

8/106

Localization as an estimation problem

Notation

Belief of the robot at time t: probability density function (pdf) describing the information the robot has regarding its pose at time t, based on all available data (exteroceptive measurements and motion commands):

Prior belief of the robot at time t: pdf before acquiring the last measurement zt:

Page 9: Mobile robot localization

9/106

Localization as an estimation problem

Notation

The robot motion model is the pdf of the robot pose at time t+1 given the robot pose and the motion action at time t. It takes into account the noise characterizing the proprioceptive sensors:

The measurement model describes the probability of observing at time t a given measurement zt when the robot pose is xr,t. It takes into account the noise characterizing the exteroceptive sensors:

Page 10: Mobile robot localization

10/106

Localization as an estimation problem

The Bayes Filter

Based on the total probability theorem:

where Bi, i=1,2,... is a partition of . In the continuous case:

(discrete case)

Prediction

Motion modelRobot pose space

Page 11: Mobile robot localization

11/106

Illustration of the prediction step in an ideal case

Localization as an estimation problem

Assume a robot moving along a unidimensional space, i.e. xr = x, and assume an ideal motion model:

x

The Bayes Filter - Prediction

Page 12: Mobile robot localization

12/106

Localization as an estimation problem

The Bayes Filter - Prediction

Illustration of the prediction step in a realistic case

Still a unidimensional space but consider a more realistic motion model:

x

where the noise

Page 13: Mobile robot localization

13/106

Based on the Bayes Rule:

Correction or Measurement Update

Measurement modelNormalizing factor

Taking:

We have:

i.e. also:

Localization as an estimation problem

The Bayes Filter

Page 14: Mobile robot localization

14/106

Illustration of the correction step in an ideal case

Assume a robot moving along a unidimensional space, i.e. xr = x, and measuringthe distance to a landmark placed in the origin. Under an ideal measurement model:

x

zt = z = x

Localization as an estimation problem

The Bayes Filter - Correction

Page 15: Mobile robot localization

15/106x

zt = z = x+

Illustration of the correction step in a realistic caseStill a unidimensional space, still the robot is measuring the distance to a landmark placed in the origin. Under a realistic measurement model:

where the noise

Localization as an estimation problem

The Bayes Filter - Correction

Page 16: Mobile robot localization

16/106

Localization as an estimation problem

The Bayes Filter

Motion model

Measurement model

For all xr do the following:

It is a recursive algorithm. At time t, given the belief at time t-1 belt-1(xr), the last motion control ut-1 and the last measurement zt, determine thenew belief belt(xr) as follows:

Page 17: Mobile robot localization

17/106

Localization as an estimation problem

The Bayes Filter - Observations

1. The Bayes filter is not a practical algorithm

Gaussian Filters: Extended Kalman Filter (EKF), Unscented Kalman Filter (UKF),Extended Information Filter (EIF)

Non Parametric Filters: Histogram Filter (HF), Particle Filter (PF)

2. Important to check if we have enough information to localize the robot (observability issue).

Sometimes the observability can be evaluated through the observability rank condition (see Hermann&Krener, TAC 1977)

Page 18: Mobile robot localization

18/106

Observability issueThe robot may have not enough sensors to determine its pose, even if assuming perfect (i.e. without noise) measurements.

x

yThe robot is equipped with encoder readings and can measure the distance r to a landmark located in the origin.

t1t2

r1

r2

d12

d23

t3r3

2

ri = range measurement at time ti

dij = distance covered (and measured) by the robot in time interval [ti,tj]

2 = robot turn at time t2 (known

from odometry)

In the figure we represent two different robot paths agreeing with measurements. The robot pose is not completely observable: there is a radial symmetry around the origin

Page 19: Mobile robot localization

19/106

Observability issueCase the robot measures (with noise) the distance from two landmarks (in addition to the odometry). The robot pose is not completely observable.

True path

Path reconstructedthrough the EKF(position tracking)

The noise makes the estimated pose jump to the specular path.

Page 20: Mobile robot localization

20/106

Observability issue

In the nonlinear case, the observability depends on the particular control input considered.

Hence, the possibility of localizing a mobile robot may depend on the particular motion executed which in any case affects the localization performance Active Localization

x

t1

t2d12

d23

t3

y

The robot is equipped withodometry and measures theangle (a non symmetric landmark is located in the origin).

dij = distance covered (and measured) by the robot in time interval [ti,tj]

Under this motion (radial) thedistance of the robot from the origin(hence x and y) cannot be determinedbut only the orientation

Page 21: Mobile robot localization

21/106

Observability issue

A different kind of motion would make the pose observable (active localization):

x

t1t2d12

d23

t3

y

The robot is equipped withodometry and measures theangle (a non symmetric landmark is located in the origin).

Under this motion all the pose of the robot can be determined

dij = distance covered (and measured) by the robot in time interval [ti,tj]

Page 22: Mobile robot localization

22/106

Often localization is performed under a generic motion (passive localization): the robot tries to localize itself while performing its mission (once a satisfactory pose estimation has been reached) or under a random motion away from obstacles (at the beginning, when the pose is still completely unknown).

Observability issue

Page 23: Mobile robot localization

23/106

This is because usually mobile robots are equipped with several sensors: they can often localize themselves even if not moving (e.g. if measuring the distance to at least 3 non collinear landmarks).

Observability issue

Nevertheless...problems may arise with symmetrical environments (the robot has odometry + rangefinder, e.g. sonar or laser).

A proper robot motion may disambiguate in some cases the pose estimation.

Page 24: Mobile robot localization

24/106

Robot description

• Motion model (proprioceptive sensors)

• Measurement model (exteroceptive sensors)

From Thrun Burgard Fox, Probabilistic Robotics, MIT Press 2006

Page 25: Mobile robot localization

25/106

Motion model (proprioceptive sensors)

Assume:

• xr,t robot pose at time t • ut control input (i.e. motion command) at time t

Which is the pose at time t+1?

Due to sensor noise, xr,t+1 is available only through a probability density function.

Motion model

Usually, ut is obtained through proprioceptive sensors (e.g. encoders, gyroscopes, etc) Odometry motion model

From Thrun Burgard Fox, Probabilistic Robotics, MIT Press 2006

Page 26: Mobile robot localization

26/106

Bump (casual source of noise)

Ideal case Different wheeldiameters (systematic source of noise)

Carpet (casual source of noise)

and many more (e.g. distance between the wheels) …

From Thrun Burgard Fox, Probabilistic Robotics, MIT Press 2006

Possible sources of noiseMotion model

Page 27: Mobile robot localization

27/106

Accumulation of the pose estimation error under the robot motion(only proprioceptive measurements)

Motion model

From Thrun Burgard Fox, Probabilistic Robotics, MIT Press 2006

Page 28: Mobile robot localization

28/106

Motion model

Discretized unicycle model:

Robot shift in time interval [t,t+1]

Robot rotation in time interval [t,t+1]

xr,t

t

t

xr,t+1

x

y

Page 29: Mobile robot localization

29/106

Discretized unicycle model: the differential drive case

Motion model

Minibot

Page 30: Mobile robot localization

30/106

Motion model

uR,t = distance covered by the Right wheel in [t,t+1]uL,t = distance covered by the Left wheel in [t,t+1]d = distance between the wheels

If the sampling time is small enough:

Differential drive

xr,t

t

t

xr,t+1

x

y

t

D

d

Page 31: Mobile robot localization

31/106

Motion model

Differential drive

There is a bijective relation between () and (uR, uL):

Mismatch between real (uR,t, uL,t) and measured (uR,te, uL,t

e) distances covered by the wheels of the robot. The encoder readings are relatedto the real distances covered by the two wheels as follows:

(casual source of noise)

Page 32: Mobile robot localization

32/106

Motion model

Differential drive

Estimation (red points) of the path covered by a differential drive robot. Blue = real position in each step.

Starting point

Page 33: Mobile robot localization

33/106

Motion model

Differential drive

Given:

• xr,t = [x,y,^T robot pose at time t,

• encoder reading ut = [uRe, uL

e]^T (i.e.result of the control input) relative to the interval [t, t+1],

we want to estimate the probability that the robot pose at time t+1 will bea given xr,t+1 = [x’,y’,’]^T (under the differential drive model considered), i.e.:

Page 34: Mobile robot localization

34/106

We proceed as follows:

Actual robot displacement if we want to arrive at [x’,y’,’]^T from [x,y,]^T:

Corresponding distances covered by the two wheels, while the actual encoder readings are (uR

e, uLe):

The probability of arriving in [x’,y’,’]^T from [x,y,]^T is the probability of reading (uR

e, uLe) when the actual wheel shifts are (uR, uL)

Motion model

Differential drive

Page 35: Mobile robot localization

35/106

Measurement model (exteroceptive sensors)

Assume:

• xr,t robot pose at time t

Which is the reading zt of a sensor at time t?

Due to sensor noise, zt is available only through a probability density function.

Page 36: Mobile robot localization

36/106

Two typical settings are considered:

Range Finder (e.g. laser or sonar readings).

The environment is known and isrepresented by line segments (e.g. the walls). The robot senses the distance from them at some given directions.

Landmark measurements.

The environment is characterized by features (artificial or natural landmarks), whose position is known and whose identity can be known (e.g. RFID tags) or must be estimated (data association problem). The robot measures the distance and/or the bearing to these fixed points.

Measurement model (exteroceptive sensors)

Page 37: Mobile robot localization

37/106

Measurement model: the Range Finder case

Measurement given by beam i

Distance of sensor i from the reflecting obstacle (ideal reading of the sensor)

Each measurement zi,t is a range measurementtipically based on the time of flight of the beam (e.g. of a sonar or a laser) generated by sensor i and reflected by an obstacle

Page 38: Mobile robot localization

38/106

Measurement model: the Range Finder case

Given:

• xr,t = [x,y,^T robot pose at time t,

we want to estimate the probability that the measurement of sensor i (with orientation i with respect to the robot motion direction) at time t is a given zt.

x

y

i

yp

xp

P

• First compute the distance hi(xrt) between sensor i and the reflecting point P (this is possible given the robot pose since the environment is assumed known)

• Then:

Page 39: Mobile robot localization

39/106

Measurement model: landmark measurements

x

y

i,t

yi

xi

Li

r i,t

Assuming known the identities (and the position) of the landmarks, for each landmark Li = (xi,yi) there is a measurement

where

Let xr,t = [x,y,]^T be the robot pose at time t

and

Page 40: Mobile robot localization

40/106

Robot Localization Algorithms

The application of the Bayes filter is referred to as Markov Localization:

Motion model

Measurement model

For all xr do the following:

… in the case of Global Localization

Page 41: Mobile robot localization

41/106L

Robot Localization Algorithms

Example of Markov Localization (here xr = x)

Fro

m T

hru

n B

urg

ard

Fo

x, P

roba

bili

stic

Ro

bot

ics,

MIT

Pre

ss 2

00

6

z0: door detected

u0: the robot moves

z1: door detected again

u1: the robot moves again

Page 42: Mobile robot localization

42/106

The Bayes filter is not a practical algorithm

Gaussian Filters: Extended Kalman Filter (EKF), Unscented Kalman Filter (UKF),Extended Information Filter (EIF)

Non Parametric Filters: Histogram Filter (HF), Particle Filter (PF)

Robot Localization Algorithms

Page 43: Mobile robot localization

43/106

Gaussian filters (EKF, UKF)Robot Localization Algorithms

Tractable implementations of the Bayes Filter obtained by means of a Gaussian approximation of the pdf

Unimodal approximations completely defined through mean m and covariance P

OK for Position Tracking or in the global case if measurements allow to restrict the estimation to a small region (e.g. RFID)

The robot detects a corner and sees onlyfree corridors Bimodal pdf.A bimodal pdf is not well approximatedthrough a Gaussian density Multi-Hypothesis Gaussian (also in the case of unknown data association)

Page 44: Mobile robot localization

44/106

Robot Localization Algorithms

GaussianExtended Kalman Filter (EKF)

In the linear-gaussian case, all steps of the Bayes filter result in gaussian pdf the Kalman Filter (KF) is optimal for these systems.

EKF: extension of KF to non linear systems (no more optimal)

Linear-gaussian system:Process noise

Measurement noise

Assume:

Page 45: Mobile robot localization

45/106

Prediction step (Bayes filter)

Robot Localization Algorithms

Gaussian - EKF

... is the convolution of two Gaussian distributions still Gaussian!

The Kalman Filter results in the update of mean m and covariance P:

where:

Prediction Step KF

Page 46: Mobile robot localization

46/106

Correction step (Bayes Filter)

Robot Localization Algorithms

Gaussian - EKF

... is the product of two Gaussian distributions still Gaussian!

The Kalman Filter results in the update of mean m and covariance P:

where:

Kalman Gain

CorrectionStep KF

innovation

Page 47: Mobile robot localization

47/106

Extension to non linear systems (EKF)

Robot Localization Algorithms

Gaussian - EKF

Non linear - Gaussian system:Process noise

Measurement noise

Assume:

Page 48: Mobile robot localization

48/106

Prediction Step EKF

Robot Localization Algorithms

Gaussian - EKFPrediction Step KF

Correction Step EKF

Correction Step KF

Page 49: Mobile robot localization

49/106

Robot Localization Algorithms

Gaussian - EKFApplication to the localization problem:

Page 50: Mobile robot localization

50/106

Robot Localization Algorithms

GaussianUnscented Kalman Filter (UKF)

Specific for non linear systems: avoids jacobians and derives the pdf ofa random variable transformed through a non linear function through thetransformation of a set of Sigma Points. Same numerical complexity of EKF. Generally more performant, but still not optimal!

Let

a scalar gaussian random variable. Let

be a non linear function. Clearly y is not gaussian. If using Gaussian filters, y is approximated through a Gaussian random variable, i.e.:

Page 51: Mobile robot localization

51/106

Robot Localization Algorithms

The EKF:

The UKF:

1. Generate a set of Sigma Points i and corresponding weights wi.2. Compute the transformation of each Sigma Point:

3. Determine mean and covariance of the transformed variable y by:

Gaussian - UKF

Page 52: Mobile robot localization

52/106

Robot Localization AlgorithmsLinear transformation of a Gaussian variable

Fro

m T

hru

n B

urg

ard

Fo

x, P

roba

bili

stic

Ro

bot

ics,

MIT

Pre

ss 2

00

6

Gaussian

Page 53: Mobile robot localization

53/106

Robot Localization Algorithms

Non Linear transformation of a Gaussian variable

Fro

m T

hru

n B

urg

ard

Fo

x, P

roba

bili

stic

Ro

bot

ics,

MIT

Pre

ss 2

00

6

Gaussian

Page 54: Mobile robot localization

54/106

EKF approximationRobot Localization Algorithms

Fro

m T

hru

n B

urg

ard

Fo

x, P

roba

bili

stic

Ro

bot

ics,

MIT

Pre

ss 2

00

6

Gaussian

Page 55: Mobile robot localization

55/106

UKF approximationRobot Localization Algorithms

Gaussian

Fro

m T

hru

n B

urg

ard

Fo

x, P

roba

bili

stic

Ro

bot

ics,

MIT

Pre

ss 2

00

6

Page 56: Mobile robot localization

56/106

EKF vs UKF approximationRobot Localization Algorithms

UKF

EKF

Fro

m T

hru

n B

urg

ard

Fo

x, P

roba

bili

stic

Ro

bot

ics,

MIT

Pre

ss 2

00

6

Gaussian

Page 57: Mobile robot localization

57/106

EKF vs UKF approximation (2)Robot Localization Algorithms

Fro

m T

hru

n B

urg

ard

Fo

x, P

roba

bili

stic

Ro

bot

ics,

MIT

Pre

ss 2

00

6

Gaussian

Page 58: Mobile robot localization

58/106

UKF

EKF

Robot Localization Algorithms

EKF vs UKF approximation (2)

Fro

m T

hru

n B

urg

ard

Fo

x, P

roba

bili

stic

Ro

bot

ics,

MIT

Pre

ss 2

00

6

Gaussian

Page 59: Mobile robot localization

59/106

Robot Localization Algorithms

EKF vs UKF approximation (3)

Fro

m T

hru

n B

urg

ard

Fo

x, P

roba

bili

stic

Ro

bot

ics,

MIT

Pre

ss 2

00

6

Gaussian

Page 60: Mobile robot localization

60/106

Prediction quality of EKF vs UKF

EKF UKF

From Thrun Burgard Fox, Probabilistic Robotics, MIT Press 2006

Robot Localization Algorithms

Gaussian

Page 61: Mobile robot localization

61/106

Non parametric filters (HF, PF)

• Numerical implementation of the Bayes Filter

• Suitable also for global localization problems

• Precision dependent on the available computational time

Robot Localization Algorithms

Page 62: Mobile robot localization

62/106

Histogram filter: grid representation of the pdf The environment is partitioned into a set of cells and the pdf is numerically represented by the probability of each cell

Particle filter: sample (particles) representation of the pdf The pdf is represented by a set of particles: the larger the pdf in a given region, more particles in that region

Non parametric filters

Robot Localization Algorithms

Fro

m T

hru

n B

urg

ard

Fo

x, P

roba

bili

stic

Ro

bot

ics,

MIT

Pre

ss 2

00

6

Page 63: Mobile robot localization

63/106

Histogram filterNon parametric filters - HF

Robot Localization Algorithms

Grid representation of the belief:

Fro

m T

hru

n B

urg

ard

Fo

x, P

roba

bili

stic

Ro

bot

ics,

MIT

Pre

ss 2

00

6

Page 64: Mobile robot localization

64/106

Prediction step (Bayes filter)

Prediction Step HFFor all discretized ckD do:

Non parametric filters - HF

Robot Localization Algorithms

For all xr do the following:

Page 65: Mobile robot localization

65/106

Non parametric filters - HF

Robot Localization Algorithms

Correction step (Bayes filter)

Correction Step HFFor all discretized ckD do:

For all xr do the following:

Page 66: Mobile robot localization

66/106

Non parametric filters - HF

Robot Localization Algorithms

Fro

m T

hru

n B

urg

ard

Fo

x, P

roba

bili

stic

Ro

bot

ics,

MIT

Pre

ss 2

00

6

Page 67: Mobile robot localization

67/106

Particle filter Non parametric filters

Robot Localization Algorithms

Particle representation of the belief:

Fro

m T

hru

n B

urg

ard

Fo

x, P

roba

bili

stic

Ro

bot

ics,

MIT

Pre

ss 2

00

6

Page 68: Mobile robot localization

68/106

Prediction step (Bayes filter)

Prediction Step PF

Non parametric filters - PF

Robot Localization Algorithms

For all m = 1,2,...,M sample the new position of particle m accordingto the motion model:

Motion noise for particle m

(weights wtm unchanged)

For all xr do the following:

Page 69: Mobile robot localization

69/106

Motion model

Non parametric filters - PF

Robot Localization Algorithms

Page 70: Mobile robot localization

70/106

Non parametric filters - PF

Robot Localization Algorithms

Correction step (Bayes filter)

Correction Step PF

For all m = 1,2,...,M update particle weights according to the lastmeasurement (particle poses remain unchanged in this step):

For all xr do the following:

Page 71: Mobile robot localization

71/106

Non parametric filters - PF

Robot Localization Algorithms

Resampling (performed periodically, possibly at all steps,to regenerate the set of particles):

For M times:

1. Draw particle i with probability

2. Add the particle to the set of particles of time t+1

3. The weights are re-initialized:

Page 72: Mobile robot localization

72/106

Belief at time 0: Non parametric filters - PF

Robot Localization Algorithms

From Thrun Burgard Fox, Probabilistic Robotics, MIT Press 2006

Global localization problem:

• Particles spread uniformly in the environment and

Page 73: Mobile robot localization

73/106

Sensor Information: Importance SamplingNon parametric filters - PF

Robot Localization Algorithms

Fro

m T

hru

n B

urg

ard

Fo

x, P

roba

bili

stic

Ro

bot

ics,

MIT

Pre

ss 2

00

6

Page 74: Mobile robot localization

74/106

Resampling

Non parametric filters - PF

Robot Localization Algorithms

Fro

m T

hru

n B

urg

ard

Fo

x, P

roba

bili

stic

Ro

bot

ics,

MIT

Pre

ss 2

00

6

Page 75: Mobile robot localization

75/106

Robot motionNon parametric filters - PF

Robot Localization Algorithms

Fro

m T

hru

n B

urg

ard

Fo

x, P

roba

bili

stic

Ro

bot

ics,

MIT

Pre

ss 2

00

6

Page 76: Mobile robot localization

76/106

Sensor Information: Importance SamplingNon parametric filters - PF

Robot Localization Algorithms

Fro

m T

hru

n B

urg

ard

Fo

x, P

roba

bili

stic

Ro

bot

ics,

MIT

Pre

ss 2

00

6

Page 77: Mobile robot localization

77/106

Resampling + Robot MotionNon parametric filters - PF

Robot Localization Algorithms

Fro

m T

hru

n B

urg

ard

Fo

x, P

roba

bili

stic

Ro

bot

ics,

MIT

Pre

ss 2

00

6

Page 78: Mobile robot localization

78/106

ExamplesThe presentation ends with a simulative comparison of the approachesdescribed so far under different scenarios.

The environment considered is shown in the figure, together with the robot path (blue-dashed). Initial robot pose

It will be reported a comparisonbetween the estimation obtainedthrough Gaussian approaches (EKF, UKF) and the one obtained through non-parametric approaches (PF), in the case of:• global localization problems• or position tracking problems;considering a robot endowed with odometry and using, as exteroceptive measurements, either • sonar/laser readings (range finder)• range to a set of landmarks.

Page 79: Mobile robot localization

79/106

Examples

Simulation data

Motion model (in the simulation we consider a synchro drive system):

Measurement model (range measurements):

with:

with:

Page 80: Mobile robot localization

80/106

ExamplesSimulation Data

Standard deviation for the estimate of the initial pose in the position trackingcase: 0.01 m for x and y and 0.02 rad for

We assume that the exteroceptive meaurements (laser or landmark readings)are available every Ns steps, with Ns ≥ 1, while odometry is available at all steps

Page 81: Mobile robot localization

81/106

Examples

To evaluate the performance we consider an average position estimation error:

real position of the robot at time t

estimated position of the robot at time t

Page 82: Mobile robot localization

82/106

Odometry estimation = integration of the encoder readings:

while the real robot pose is given by:

Examples

Page 83: Mobile robot localization

83/106

Examples

Odometry estimation:

J = 4.9 m

Page 84: Mobile robot localization

84/106

Examples

Range finder case: 20 beams equally spaced in the robot motion direction

Page 85: Mobile robot localization

85/106

What to do if a measurement is very different from the expected one?It is possible that this does not depend on a bad pose estimation....

Examples

Actual reading

Expected reading

Select a threshold and reject the measurements which give an innovation larger than this threshold(this results in a reduction of the number of available measurements but makes the filter more robust).

Page 86: Mobile robot localization

86/106

... consider the "second" nearest intersection...

OK

NO

Examples

What to do if the estimate (in the EKF case) or a Sigma Point (in the UKF case) falls outside the map?

Page 87: Mobile robot localization

87/106

Examples

EKF estimation, Ns = 10:

Ns = number of steps between two consecutive exteroceptive measurements, while odometry is assumed available at all 5000 steps

J = 0.15 m

Page 88: Mobile robot localization

88/106

Examples

EKF estimation, Ns = 200:

J = 0.87 m

Page 89: Mobile robot localization

89/106

Examples

UKF estimation, Ns = 200:

J = 0.45 m

Page 90: Mobile robot localization

90/106

Examples

PF estimation, Mp = 100 particles, Ns = 200:

J = 0.24 m

Page 91: Mobile robot localization

91/106

ExamplesA comparison between EKF, UKF and PF is reported below for the range finder case (position tracking), after removing some outliers (Jodo=7.8m):

Zoom next page

Page 92: Mobile robot localization

92/106

Examples

Page 93: Mobile robot localization

93/106

Examples

The percentage of outliers (over 100 independent simulation runs, 10 for PF1000). Jk is considered an outlier if:

Page 94: Mobile robot localization

94/106

Examples

Computational times (for Ns=1):

• EKF: 3 s• UKF: 15 s• PF, 100 particles: 127 s• PF, 1000 particles: 1198 s

0

200

400

600

800

1000

1200

EKF PF_100

Time (s)

UKF PF_1000

Page 95: Mobile robot localization

95/106

The EKF can not be applied to global localization problems (Ns = 10):Examples

Page 96: Mobile robot localization

96/106

Examples

Similarly the UKF can not be applied to global localization problems (Ns = 10):

Page 97: Mobile robot localization

97/106

Examples

The EKF may work in the global case for suitable initial conditions of the estimation (left: the estimation of the initial orientation allows to recover the correct trajectory). Here Ns = 100.

Page 98: Mobile robot localization

98/106

Examples

The PF can be applied to global localization problems if a sufficient number of particles is adopted (here Mp = 1000 and Ns = 10):

Page 99: Mobile robot localization

99/106

Examples

In the landmark case the EKF and the UKF provide identical perfomances

A comparison between EKF and UKF is reported below for the landmark case (position tracking):

Landmark (range) case:

Page 100: Mobile robot localization

100/106

Examples

A comparison between PF100 and PF1000 is reported below for the landmark case (position tracking):

Page 101: Mobile robot localization

101/106

Examples

All the filters show similar performances…

Page 102: Mobile robot localization

102/106

A comparison between the range finder and the landmark case (position tracking):

• in the landmark case all filters provide similar performance;

• in the landmark case the performance is higher

Examples

Landmark case

Range finder case

Page 103: Mobile robot localization

103/106

The percentage of outliers in the landmark case (over 100 independent simulation runs, 10 for PF1000) is 0 for EKF, UKF and PF1000. There is only 1% of outliers for PF100.

In the landmark case the EKF and the UKF can also be applied to solve a global localization problem, unlike in the laser reading case (see also videos).

Examples

EKF estimation, Ns = 100

Page 104: Mobile robot localization

104/106

UKF estimation (global), Ns = 10 (left) and 100 (right)

Examples

Page 105: Mobile robot localization

105/106

Conclusions

• The localization of a mobile robot in a known environment can be cast as a filtering problem.

• The robot must be equipped with enough sensors to guarantee observability. Symmetric environment can also be problematic.

• The theoretical solution of the problem is the Bayes filter which usually cannot be implemented.

• Gaussian or non parametric implementations should be considered according to the considered problem (global vs position tracking, computational time).

• Active localization allows to improve localization capabilities of the robot.

• The basic problem can be extended to: dynamic environments, multi-robot, partially known environments, etc.

Page 106: Mobile robot localization

106/106

References

1. S. Thrun, W. Burgard and D. Fox. ''Probablistic Robotics''. MIT Press, 2006 (and references therein)

Robot motion models (Ch. 5), measurement models (Ch. 6), Localization(Ch. 7-8), Filtering (Ch. 2-4), Active localization (Ch. 17).

2. Observability issues:

• R. Herman and A. Krener. ''Nonlinear controllability and observability''. IEEE Transactions on Automatic Control, n. 22(5), p. 728-740, 1977

• A. Martinelli and R. Siegwart. ''Observability analysis for mobile robot localization''. Intelligent Robots and Systems, 2005. (IROS 2005), p. 1471 - 1476. Edmonton, Alberta, Canada. August 2005

3. A. Censi. ''On achievable accuracy for range-finder localization''. 2007 IEEE International Conference on Robotics and Automation, (ICRA 2007), p. 4170 - 4175. Roma, Italy. April 2007