fundamental problems in robotics - mcgill universityyiannis/417/2013/lectureslides/23-o... · 2013....

48
Fundamental Problems In Robotics What does the world looks like? (mapping) sense from various positions integrate measurements to produce map assumes perfect knowledge of position Where am I in the world? (localization) Sense relate sensor readings to a world model compute location relative to model assumes a perfect world model Together, these are SLAM (Simultaneous Localization and Mapping)

Upload: others

Post on 21-Aug-2021

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

Fundamental Problems In Robotics

• What does the world looks like? (mapping)– sense from various positions

– integrate measurements to produce map

– assumes perfect knowledge of position

• Where am I in the world? (localization)– Sense

– relate sensor readings to a world model

– compute location relative to model

– assumes a perfect world model

• Together, these are SLAM (Simultaneous Localization and Mapping)

Page 2: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

Sensors

CS-417 Introduction to Robotics and Intelligent Systems 2

• Proprioceptive Sensors(monitor state of robot)

– IMU (accels & gyros)

– Wheel encoders

– Doppler radar …

• Exteroceptive Sensors(monitor environment)

– Cameras (single, stereo, omni, FLIR …)

– Laser scanner

– MW radar

– Sonar

– Tactile…

Page 3: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

Types of sensor

Specific examples– tactile

– close-range proximity

– angular position

– infrared

– Sonar

– laser (various types)

– radar

– compasses, gyroscopes

– Force

– GPS

– vision3CS-417 Introduction to Robotics and Intelligent Systems

Page 4: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

Orientation Representations

• Describes the rotation of one coordinate system with respect to another

CS-417 Introduction to Robotics and Intelligent Systems 4

XA

YA

ZA

A

B

Page 5: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

Rotation Matrix

• Rotation Matrix:

(9 variables)

• Euler Angles [roll, pitch, yaw]• (Gimbal Lock, 0-360 discontinuity,

multiple representations)

• Angle-Axis [V,q]

• Quaternions

CS-417 Introduction to Robotics and Intelligent Systems 5

XA

YA

ZA

A

B

333231

232221

131211

rrr

rrr

rrr

RA

B

kqjqiqqq 3214

Page 6: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

Path Planning

• Visibility Graph

• Bug Algorithms

• Potential Fields

• Skeletons/Voronoi Graphs

• C-Space

• PRM’s

• RRT’s

Page 7: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

Generalized Voronoi Graph (GVG)

Free Space with Topological Map (GVG)

Page 8: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

Generalized Voronoi Graph (GVG)

Free Space with Topological Map (GVG)

•Access GVG

Page 9: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

Generalized Voronoi Graph (GVG)

Free Space with Topological Map (GVG)

•Access GVG

•Follow Edge

Page 10: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

Generalized Voronoi Graph (GVG)

Free Space with Topological Map (GVG)

•Access GVG

•Follow Edge

•Home to the MeetPoint

Page 11: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

Generalized Voronoi Graph (GVG)

Free Space with Topological Map (GVG)

•Access GVG

•Follow Edge

•Home to the MeetPoint

•Select Edge

Page 12: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

Local techniques

Potential Field methods

• compute a repulsive force away from obstacles

• compute an attractive force toward the goal

let the sum of the forces control the robot

To a large extent, this is computable from sensor readings

Page 13: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

SONAR modeling using Occupancy Grids

• The key to making accurate maps is combining lots of data.

• But combining these numbers means we have to know what they are !

What should our map contain ?

• small cells

• each represents a bit of

the robot’s environment

• larger values => obstacle

• smaller values => free

what is in each cell of this sonar model / map ?

Page 14: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

Configuration Space

Page 15: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

Tool: Configuration Space(C-Space C)

q1

q1

q2

q2

Page 16: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

Tool: Configuration Space(C-Space C)

q1

q1

q2

q2

Page 17: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

Tool: Configuration Space(C-Space C)

Page 18: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

RRT-Connect: example

Connection made !

Page 19: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

Coverage

• First Distinction

– Deterministic

– Random

• Second Distinction

– Complete

– No Guarantee

• Third Distinction

– Known Environment

– Unknown Environment

Demining

Vacuum Cleaning

Page 20: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

Cellular Decomposition

Direction of Coverage

Cell 0

Critical Point (CP)

Page 21: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

Single Cell Coverage

Direction of Coverage

Page 22: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

Cellular Decomposition

Direction of Coverage

Cell 0Cell N

Cell 1

Cell 2

CP0

CP1

CP2

CPm-1

CP3

CPm

Reeb Graph

Page 23: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

Human Robot Interaction

• Active roles Human or Robot

– Supervisor

– Operator

– Mechanic / Assistant

– Peer

– Slave

Page 24: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

Human Robot Interaction• Levels of Autonomy (LOA) [Sheridan 1978]

1. Computer offers no assistance; human does it all

2. Computer offers a complete set of action alternatives

3. Computer narrows the selection down to a few choices

4. Computer suggests a single action

5. Computer executes that action if human approves

6. Computer allows the human limited time to veto before automatic

execution

7. Computer executes automatically then always informs the human

8. Computer informs human after auto-execution only if human asks

9. Computer informs human after execution only if it decides to

10. Computer decides everything and acts autonomously, ignoring the

human direct control dynamic autonomy

Page 25: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

Human Robot Interaction

• Sliding Autonomy

Teleoperation Full AutonomyConfirmation Interruption

Page 26: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

Multi-Robot

• Team size

• Communication range

• Communication topology

• Communication bandwidth

• Processing ability

• Team Reconfigurability

• Team Composition

Page 27: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

Localization

• Tracking: Known initial position

• Global Localization: Unknown initial position

• Re-Localization: Incorrect known position

– (kidnapped robot problem)

Page 28: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

Graphical Models, Bayes’ Rule and the

Markov Assumption

States x1 x2

T(xj|ai, xi)

Z2

b1Beliefs

Z1Observations

a1Actions

O(zj|xi)

b2

Z2

Hidden

Observable

)(

)()|()|(

yp

xpxypyxp :rule Bayes

),|(),,,,,,,|( 1111001 ttttttt axxpzzazaaxxp :Markov

Page 29: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

Derivation of the Bayesian Filter

101111 ),...,|(),|()|()( ttttttttt dxoaxpaxxpxopxBel

1111 )(),|()|()( tttttttt dxxBelaxxpxopxBel

First-order Markov assumption shortens middle term:

Finally, substituting the definition of Bel(xt-1):

The above is the probability distribution that must be estimated from the robot’s data

Page 30: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

Iterating the Bayesian Filter

• Propagate the motion model:

• Update the sensor model:

1111 )(),|()( tttttt dxxBelxaxPxBel

)()|()( tttt xBelxoPxBel

Compute the current state estimate before taking a sensor reading by integrating over all possible previous state estimates and applying the motion model

Compute the current state estimate by taking a sensor reading and multiplying by the current estimate based on the most recent motion history

Page 31: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

Different Approaches

Discrete approaches (’95)

• Topological representation (’95)

• uncertainty handling (POMDPs)

• occas. global localization, recovery

• Grid-based, metric representation (’96)

• global localization, recovery

Particle filters (’98)

• Condensation (Isard and Blake ’98)

• Sample-based representation

• Global localization, recovery

• Rao-Blackwellized Particle Filter

Kalman filters (late-60s?)

• Gaussians

• approximately linear models

• position tracking

Extended Kalman Filter

Information Filter

Unscented Kalman Filter

Multi-hypothesis (’00)

• Mixture of Gaussians

• Multiple Kalman filters

• Global localization, recovery

Page 32: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

Monte-Carlo State Estimation(Particle Filtering)

• Employing a Bayesian Monte-Carlo simulation technique for pose estimation.

• A particle filter uses N samples as a discrete representation of the probability distribution function (pdf ) of the variable of interest:

where xi is a copy of the variable of interest and wi is a weight signifying the quality of that sample.

In our case, each particle can be regarded as an alternative hypothesis for the robot pose.

CS-417 Introduction to Robotics and

Intelligent Systems

]1:,[ NiwS ii

x

32

Page 33: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

Particle Filter (cont.)

The particle filter operates in two stages:

• Prediction: After a motion (a) the set of particles S is modified according to the action model

where (n) is the added noise.

The resulting pdf is the prior estimate before collecting any additional sensory information.

),,( naSfS

CS-417 Introduction to Robotics and

Intelligent Systems

33

Page 34: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

Particle Filter (cont.)

• Update: When a sensor measurement (z) becomes available, the weights of the particles are updated based on the likelihood of (z) given the particle xi

The updated particles represent the posterior distribution of the moving robot.

iii wzPw )|( x

CS-417 Introduction to Robotics and

Intelligent Systems

34

Page 35: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

For finite particle populations, we must focus population mass

where the PDF is substantive.

•Failure to do this correctly can lead to divergence.

•Resampling needlessly also has disadvantages.

One way is to estimate the need for resampling based on the

variance of the particle weight distribution, in particular the

coefficient of variance:

Resampling

2

1

2

2

2

1

)1)((1

))((

))(var(

t

t

M

i

t

t

tt

cv

MESS

iMwMiwE

iwcv

CS-417 Introduction to Robotics and

Intelligent Systems

35

Page 36: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

The Kalman Filter• Motion model is Gaussian…

• Sensor model is Gaussian…

• Each belief function is uniquely characterized by

its mean m and covariance matrix

• Computing the posterior means computing a new

mean m and covariance from old data using

actions and sensor readings

• What are the key limitations?

1) Unimodal distribution

2) Linear assumptions

Page 37: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

What we know…

What we don’t know…• We know what the control inputs of our process are

– We know what we’ve told the system to do and have a model for what the expected output should be if everything works right

• We don’t know what the noise in the system truly is– We can only estimate what the noise might be and try to put some sort of

upper bound on it

• When estimating the state of a system, we try to find a set of values that comes as close to the truth as possible– There will always be some mismatch between our estimate of the system

and the true state of the system itself. We just try to figure out how much mismatch there is and try to get the best estimate possible

Page 38: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

Kalman Filter Components(also known as: Way Too Many Variables…)

Linear discrete time dynamic system (motion model)

ttttttt wGuBxFx 1

Measurement equation (sensor model)

1111 tttt nxHz

State transitionfunction

Control inputfunction

Noise inputfunction with covariance Q

State Control input Process noise

StateSensor reading Sensor noise with covariance R

Sensor function Note:Write these down!!!

Page 39: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

Computing the MMSE Estimate of the

State and Covariance

What is the minimum mean square error estimateof the system state and covariance?

ttttttt uBxFx ||1ˆˆ Estimate of the state variables

ttttt xHz |11|1ˆˆ

Estimate of the sensor reading

T

ttt

T

tttttt GQGFPFP ||1 Covariance matrix for the state

11|11|1 t

T

tttttt RHPHS Covariance matrix for the sensors

Page 40: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

The Kalman Filter…

Propagation (motion model):

T

ttt

T

tttttt

ttttttt

GQGFPFP

uBxFx

//1

//1ˆˆ

Update (sensor model):

tttt

T

ttttttt

tttttt

t

T

tttt

t

T

ttttt

ttt

tttt

PHSHPPP

rKxx

SHPK

RHPHS

zzr

xHz

/11

1

11/1/11/1

11/11/1

1

11/11

11/111

111

/111

ˆˆ

ˆ

ˆˆ

Page 41: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

…but what does that mean in

English?!?Propagation (motion model):

Update (sensor model):

- State estimate is updated from system dynamics

- Uncertainty estimate GROWS

- Compute expected value of sensor reading

- Compute the difference between expected and “true”

- Compute covariance of sensor reading

- Compute the Kalman Gain (how much to correct est.)

- Multiply residual times gain to correct state estimate

- Uncertainty estimate SHRINKS

T

ttt

T

tttttt

ttttttt

GQGFPFP

uBxFx

//1

//1ˆˆ

tttt

T

ttttttt

tttttt

t

T

tttt

t

T

ttttt

ttt

tttt

PHSHPPP

rKxx

SHPK

RHPHS

zzr

xHz

/11

1

11/1/11/1

11/11/1

1

11/11

11/111

111

/111

ˆˆ

ˆ

ˆˆ

Page 42: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

Kalman Filter Block Diagram

Page 43: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

tw

twt

t

tttt

ttt

~)(ˆ

ˆ~111

1

~tCalculation of

CS-417 Introduction to Robotics and

Intelligent Systems

43

Page 44: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

Calculation of111

111

ˆ~

ˆ~

ttt

ttt

yyy

xxx

111ˆ~

ttt xxx

...

ˆ~)ˆcos()ˆsin(

~~

)ˆcos()ˆcos()ˆsin(~

)ˆcos(~

)ˆcos()ˆcos()]ˆsin()~

sin()ˆcos()~

[cos(~

)ˆcos()ˆcos()ˆ~cos(~

)ˆcos()ˆcos()cos(ˆ

)ˆcos()(ˆ)cos(

ˆ~

111

111

ttt

tvtttt

tvtttttttt

tvtttttttt

tvtttttt

tvtttttt

tvttttt

ttt

yyy

twtvx

twtvtvtvx

twtvtvx

twtvtvx

twtvtvxx

twvxtvx

xxx

44CS-417 Introduction to Robotics and

Intelligent Systems

Page 45: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

Covariance Estimation

45CS-417 Introduction to Robotics and

Intelligent Systems

2

2

/

11/1

0

0][

where

][]~~

[

])~

)(~

[(

]~~

[

vT

ttt

T

ttt

T

tttt

T

t

T

ttt

T

t

T

ttt

T

tttttttt

T

tttt

wwEQ

GQGFPF

GwwEGFXXEF

wGXFwGXFE

XXEP

Page 46: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

Some observations

The larger the error, the smaller the effect on the final state estimate If process uncertainty is larger, sensor updates will dominate

state estimate

If sensor uncertainty is larger, process propagation will dominate state estimate

Improper estimates of the state and/or sensor covariance may result in a rapidly diverging estimator As a rule of thumb, the residuals must always be bounded

within a ±3 region of uncertainty

This measures the “health” of the filter

Many propagation cycles can happen between updates

Page 47: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

Exploration

Frontier Based Exploration

Graph Based Exploration

Conflicting goals:

Accuracy

Efficiency

Page 48: Fundamental Problems In Robotics - McGill Universityyiannis/417/2013/LectureSlides/23-o... · 2013. 12. 3. · Fundamental Problems In Robotics • What does the world looks like?

Computer Vision

• Projection 3D->2D

• Correspondence Problem

• Stereo

• Optical Flow

• Features