0% found this document useful (0 votes)
81 views56 pages

MAS Mobile Robots Mapping 1

Mobile Robots Mapping

Uploaded by

Noyeem Mahbub
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
81 views56 pages

MAS Mobile Robots Mapping 1

Mobile Robots Mapping

Uploaded by

Noyeem Mahbub
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 56

University of applied Sciences

Bonn-Rhein-Sieg

Mobile Robots
Mapping I
University of applied Sciences
Bonn-Rhein-Sieg
Last Lecture
Last week's main topics
Kinematic models of whole vehicles
wheel constraints revisited
- only fixed and steered standard wheels impose real constraints
full vehicle description
- all sliding constraints are combined into one matrix equation
- all rolling constraints are combined into one matrix equation
- equations solved either for position change or for wheel speeds
vehicle characteristics
mobility
- immediately achievable velocities
maneuverability
- ability to achieve different poses

2
University of applied Sciences
Bonn-Rhein-Sieg
Today's Lecture

Today's topics:
Introduction to Mapping building maps from sonar
Types of Maps data
Metric maps using sonars to estimate
- Grid maps obstacles
Topological maps a sonar sensor model
Sensor maps building an occupancy grid
Map representation map from sonar data
Grid based
Tree based
Other methods

3
University of applied Sciences
Bonn-Rhein-Sieg

Types of maps

4
University of applied Sciences
Bonn-Rhein-Sieg

Types of maps
Metric maps
Describe distances, sizes, shapes
Topological maps
Landmark based
Describe pathways, connectivity of landmarks
Sensor maps
Special kind of landmark-based maps
Tailored to specific perception of a robot
Can be combined with metric or topological maps

Humans usually use combinations

5
University of applied Sciences
Bonn-Rhein-Sieg

Usefulness of maps
Depend on the user
Depend on the task at hand

Example: City plan


An abstract drawing of the city ground
Partly metric
The drawing encodes precise distances and (absolute) positions
Partly topological
The drawing highlights pathways, outstanding landmarks and
their connections

6
+
University of applied Sciences
Bonn-Rhein-Sieg

Example: Electronic navigator (GPS) map


Large set of connections between landmarks
Landmarks are junctions of streets
Assigns distances or costs to each connection
Multiple levels of detail
Encoded as kind of tree, machine-readable

Both types serve the same purpose


Find path from address A to address B!
But are mutually useless for the other user
Same holds for different robot tasks

7
+
University of applied Sciences
Bonn-Rhein-Sieg

Metric maps
Focuses
On the position of objects
On the geometric shape of the world
Enables
To predict measurement
To obtain relations (sizes, distances) of arbitrary objects in the
map
Defined by its content, not the storage of the content
Can be grid based
Can be mathematical description
Can be tree
many more possibilities (drawing )

8
University of applied Sciences
Bonn-Rhein-Sieg

Topological map
Focuses on
Connection between places
- Which other place is directly reachable?
Sparse representation of the environment
Enables
Efficient path planning using graph-based algorithms
Direct encoding of distances or path costs
Two-fold representation
Connections (arcs or edges)
Description of places or landmarks (nodes)
- Required for localization

9
University of applied Sciences
Bonn-Rhein-Sieg

Map representation
(Sigwart Chapter 5.5)

Mostly slide set to Siegwart et.al. Autonomous Mobile Robots


Source: http://www.asl.ethz.ch/education/master/mobile_robotics
10
Autonomous Mobile Robots, Chapter 5 5.5

Representation of the Environment


Environment Representation
Continuos Metric x,y,
Discrete Metric metric grid
Discrete Topological topological grid
Environment Modeling
Raw sensor data, e.g. laser range data, grayscale images
o large volume of data, low distinctiveness on the level of individual
values
o makes use of all acquired information
Low level features, e.g. line other geometric features
o medium volume of data, average distinctiveness
o filters out the useful information, still ambiguities
High level features, e.g. doors, a car, the Eiffel tower
o low volume of data, high distinctiveness
o filters out the useful information, few/no ambiguities, not enough
information
R. Siegwart, I. Nourbakhsh
Autonomous Mobile Robots, Chapter 5 5.5.1

Map Representation: Continuous Line-Based


a) Architecture map
b) Representation with set of infinite lines

R. Siegwart, I. Nourbakhsh
Autonomous Mobile Robots, Chapter 5 5.5.2

Map Representation: Decomposition (1)


Exact cell decomposition

R. Siegwart, I. Nourbakhsh
Autonomous Mobile Robots, Chapter 5 5.5.2

Map Representation: Decomposition (2)


Fixed cell decomposition
Narrow passages disappear

R. Siegwart, I. Nourbakhsh
Autonomous Mobile Robots, Chapter 5 5.5.2

Map Representation: Decomposition (3)


Adaptive cell decomposition

R. Siegwart, I. Nourbakhsh
Autonomous Mobile Robots, Chapter 5 5.5.2

Map Representation: Decomposition (4)


Fixed cell decomposition Example with very small cells

Courtesy of S. Thrun
R. Siegwart, I. Nourbakhsh
Autonomous Mobile Robots, Chapter 5 5.5.2

Map Representation: Decomposition (5)

Topological Decomposition

R. Siegwart, I. Nourbakhsh
Autonomous Mobile Robots, Chapter 5 5.5.2

Map Representation: Decomposition (6)


Topological Decomposition

node

Connectivity
(arch)

R. Siegwart, I. Nourbakhsh
Autonomous Mobile Robots, Chapter 5 5.5.2

Map Representation: Decomposition (7)


Topological Decomposition

R. Siegwart, I. Nourbakhsh
Autonomous Mobile Robots, Chapter 5 5.5.3
State-of-the-Art: Current Challenges in Map
Representation
Real world is dynamic
Perception is still a major challenge

Error prone
Extraction of useful information difficult

Traversal of open space


How to build up topology (boundaries of

nodes)
Sensor fusion

R. Siegwart, I. Nourbakhsh
Autonomous Mobile Robots, Chapter 5 5.8

Autonomous Map Building


Starting from an arbitrary initial point,
a mobile robot should be able to autonomously
explore the environment with its on board sensors,
gain knowledge about it,
interpret the scene,
build an appropriate map
and localize itself relative to this map.

SLAM
The Simultaneous Localization and Mapping
Problem
R. Siegwart, I. Nourbakhsh
Autonomous Mobile Robots, Chapter 5 5.8
Map Building:
How to Establish a Map
3. Basic Requirements of a Map:
1. By Hand a way to incorporate newly sensed
information into the existing world
model
information and procedures for
estimating the robots position
information to do path planning and
other navigation task (e.g. obstacle
2. Automatically: Map Building avoidance)

The robot learns its environment Measure of Quality of a map


topological correctness
Motivation: metrical correctness predictability
- by hand: hard and costly
- dynamically changing environment But: Most environments are a mixture of
- different look due to different predictable and unpredictable features
perception hybrid approach

R. Siegwart, I. Nourbakhsh
Autonomous Mobile Robots, Chapter 5 5.8
Map Building:
The Problems
1. Map Maintaining: Keeping track 2. Representation and
of changes in the environment Reduction of Uncertainty

e.g. disappearing position of robot -> position of wall


cupboard

position of wall -> position of robot

- e.g. measure of belief of each probability densities for feature positions


environment feature additional exploration strategies

R. Siegwart, I. Nourbakhsh
Autonomous Mobile Robots, Chapter 5 5.8.1

General Map Building Schematics

R. Siegwart, I. Nourbakhsh
Autonomous Mobile Robots, Chapter 5 5.8.1

Map Representation
M is a set of n probabilistic feature locations z
Each feature is represented by the covariance matrix t and an
associated credibility factor ct

ct is between 0 and 1 and quantifies the belief in the existence of


the feature in the environment

a and b define the learning and forgetting rate and ns and nu are
the number of matched and unobserved predictions up to time k,
respectively.
R. Siegwart, I. Nourbakhsh
Autonomous Mobile Robots, Chapter 5 5.8.1
Autonomous Map Building
Stochastic Map Technique

Stacked system state vector:

State covariance matrix:

R. Siegwart, I. Nourbakhsh
Autonomous Mobile Robots, Chapter 5 5.8.2

Cyclic Environments Courtesy of Sebastian Thrun

Small local error accumulate to arbitrary large global


errors!
This is usually irrelevant for navigation
However, when closing loops, global error does matter

R. Siegwart, I. Nourbakhsh
Autonomous Mobile Robots, Chapter 5 5.8.2

Dynamic Environments
Dynamical changes require continuous mapping

If extraction of high-level features would be


possible, the mapping in dynamic
environments would become
significantly more straightforward.
e.g. difference between human and wall
Environment modeling is a key factor
for robustness ?

R. Siegwart, I. Nourbakhsh
University of applied Sciences
Bonn-Rhein-Sieg

That's all
on basic mapping
Next:
Example: sonar maps

29
University of applied Sciences
Bonn-Rhein-Sieg

Building a map from sonar data

30
University of applied Sciences
Bonn-Rhein-Sieg
Sonar maps
The task
use low resolution sonar sensors
cone width ~30, ~ +/- 5 cm distance error, 0.3 5 m range
on a moving robot
to build a high resolution map
resolution approximately distance error

The problem
30 at 5 m yields 250 cm uncertainty

31
University of applied Sciences
Bonn-Rhein-Sieg
Sonar maps

Problem of cone width


Sonar cone hits at lower
(green) point
Robot doesn't know which
part of cone hit an obstacle
Obstacle is sensed at upper
(red) position (center of
cone)

32
+
University of applied Sciences
Bonn-Rhein-Sieg
Sonar maps

Problem of motion
Robot moves
Two measurements of same obstacle are different d'
how to find matching observation d
Obstacles seem to move in local reference
frame
Sensed at t +1 Sensed at t +1
Sensed at t
Sensed at t

t+1
t+1

t t

33
University of applied Sciences
Bonn-Rhein-Sieg
Sonar maps

d'
Problem of motion d
Robot really moves
Two measurements of same obstacle are different
how to find matching observation
Obstacles seemingly move in local reference
frame
Need to keep track of obstacles
Kalman filter, but now tracks obstacles, not robot
- Here u is inverse robot motion
1st Alternative: transform previous estimate into new frame
- Allows direct update of estimate
2nd Alternative: keep all calculations in global reference frame
- Requires (precise) global localization

34
University of applied Sciences
Bonn-Rhein-Sieg
Sonar maps

Alternative #1: transform previous estimate into new frame


d j , t1= d j , t 2 d j , t u t cos t u t
2 2
dj,t dj,t+1

t 1== = atan
2

2 d j , t u t cost
u t sin t

ut

Alternative #2: keep all calculations in global reference frame


After motion step, convert into local coordinates
i.e. predict sensor data, use prediction as new mean
Update mean and variance based on new measurement
Convert back to global coordinates

35
+
University of applied Sciences
Bonn-Rhein-Sieg
Sonar maps

Common problems
What is measured and estimated?
Direct pose estimate works well only for localizable landmarks
What is the pose of a wall?
Same for averaging raw sensor data.
How to deal with occurring and disappearing landmarks?
Need to match readings at t+1 with landmarks from step t
How to deal with data association (or assignment) problem?
- If in view of more then one sensors, used best-matching sensor
- If no match is found, or new value dj is outside 3 , start new estimation
- Over time more estimations than sensors evolve, requiring match step for
each measurement
- One sensor may update more than one estimation

36
University of applied Sciences
Bonn-Rhein-Sieg

Method so far not very satisfying


Let's look for something better

37
University of applied Sciences
Bonn-Rhein-Sieg
Sonar maps

Better:
Use full angular range for
occupied estimate (grey)
Whole area between sensor and
range estimate is know to be free

38
University of applied Sciences
Bonn-Rhein-Sieg
Sonar maps

Estimating high resolution maps


form noisy low resolution sonar
Main problem of previous approach
Only distance has Gaussian error
Angle has large rectangular distribution
Result of multiple (shifted) measurements can neither be
described by Gaussian nor rectangular distribution
Subsequent measurements can not easily matched
Errors in motion estimation have been neglected

39
University of applied Sciences
Bonn-Rhein-Sieg
Sonar maps

Estimating high resolution sonar maps

Main problem was large angular uncertainty in single


measurement
Approach
Decompose measurement into several (artificial) sub-
measurement with small angular uncertainty
Estimate probably free space and probably occupied space
independently
Update free and occupied space estimation with each new
measurement

40
University of applied Sciences
Bonn-Rhein-Sieg
Sonar maps

41
University of applied Sciences
Bonn-Rhein-Sieg
Sonar maps

Estimating high resolution maps


Each sonar measurement
Has area of high occupation probability
Has area of high free probability
Is stored in grid
In subsequent measurements
Occupied reinforces occupied
Free reinforces free
Free weakens occupied and vice versa
Result is a probability map

42
University of applied Sciences
Bonn-Rhein-Sieg
Sonar maps

Estimate high resolution maps P


Free space Area
Let P = ( x, y ) be a point in the grid. S
Let
R distance measured (mean value) R
mean error
S position of sensor
opening angle of sonar cone
distance S to P
angle between main axis of sensor and line S to P
P is free space if R / 2
with probability p E = f E ,

43
University of applied Sciences
Bonn-Rhein-Sieg
Sonar maps

Estimate high resolution maps P


Occupied space Area

Let P = ( x, y) be a point in the grid. S
Let
R distance measured (mean value) R
mean error
S position of sensor
opening angle of sonar cone
distance S to P
angle between main axis of sensor and line S to P
P is occupied space if [ R , R ] / 2
with probability pO = f O ,

44
University of applied Sciences
Bonn-Rhein-Sieg

Cells with non-zero probability to be

occupied free

wall wall

45
University of applied Sciences
Bonn-Rhein-Sieg

Summary I
R distance measured
A point P( x, y) is error of distance
free space if R / 2 opening angle of sonar cone
, polar coordinates of P
with probability p E = f E , wrt. sonar sensor

occupied space if [ R , R ] / 2
with probability p O = f O ,

What is computed here?


the probability of a (random) point P to be free / occupied,
given a single sonar measurement
we are NOT calculating the error of the measurement here!

46
University of applied Sciences
Bonn-Rhein-Sieg
Sonar maps
R distance measured
Estimating high resolution maps error of distance
Probability function has two opening angle of sonar cone
, polar coordinates of P
components wrt. sonar sensor

{
2

Ea angular probability E a , =
1
2

if

2
0 else

Er distance probability

{
2

1

R
if R

E r R , , = 2

1

R

if R R

0 else

47
University of applied Sciences
Bonn-Rhein-Sieg
Sonar maps
Probability for empty space
p E =E r ( R , ) E a ( , ) if [ R , R+ ]
Probability for occupied space
pO =E r R , E a , if [ R , R ]

Calculated here:
Confidence that a given (random)
point is free or occupied, based
on a single sonar measurement.
Note: pE pO
This is not a real probability.
Neither PE nor PO integrate to 1.

R
48
University of applied Sciences
Bonn-Rhein-Sieg
Sonar maps

Estimate high resolution maps


Combining multiple measurements
Free and occupied space is kept in global coordinates
Each sensor reading is combined with previous estimation
Combination is asymmetric
Areas read as free have higher confidence
- Occupied space has angular uncertainty
- Free space has no angular uncertainty
Free readings are used directly
Occupied readings are first modulated by a priori known free
space

49
University of applied Sciences
Bonn-Rhein-Sieg
Sonar maps

Estimate high resolution maps


Three states are maintained
Free space of current reading
Occupied space of current reading
Combined map
Let be
EmpM(X,Y) a priori probability for cell (X,Y) to be free (old map)
Empk(X,Y) probability for cell (X,Y) to be free in reading k
Emp k X , Y = min p E x , y
x X , yY

OccM(X,Y) a priori probability for cell (X,Y) to be occupied


Occk(X,Y) cell probability to be occupied in reading k
Occ k X ,Y = max pO x , y Sub-sampling:
xX , yY
Sample grid cell to find
min. or max. value.
50
University of applied Sciences
Bonn-Rhein-Sieg
Sonar maps

Estimating high resolution maps

Set of free space


Computed from current reading Empk() and last value Empt-1()
Emp ( X , Y )=[ 0,1]
Emp t ( X , Y ):=
Emp t1 ( X , Y )+
Emp k ( X , Y )Emp t 1 ( X , Y ) Emp k ( X , Y )
values: 01 values: 01

Emp t ( X , Y ):=Emp t 1 ( X , Y )+(1Emp t 1 ( X , Y )) Emp k ( X , Y )

51
+
University of applied Sciences
Bonn-Rhein-Sieg
Sonar maps

Estimate high resolution map

Set of occupied space


Computed from current reading Occk(), last value Occt-1() and
free space Emp()
Occ X ,Y [0,1]
Occ k ,c X , Y :=Occ k X ,Y 1Emp t X ,Y
Occ k ,c X , Y
Occ k , n X ,Y :=
Occ k ,c X ' , Y '
X ' ,Y '
(normalization over all covered cells)

Occ t X , Y :=Occ t 1 X , Y Occ k , n X , Y Occ t1 X , Y Occ k , n X ,Y

52
University of applied Sciences
Bonn-Rhein-Sieg
Sonar maps

Estimate high resolution map

Update map
Map computed from free space set and occupied space set
Encodes free, unknown and occupied areas
Map X , Y [1,1]
Map() < 0 free space, probability Map X , Y
Map() > 0 occupied, probability Map ( X, Y )

{
Occ t ( X , Y ) if Occt ( X , Y )> Emp t ( X , Y )
Map t ( X , Y )= Emp t ( X , Y ) if Occt ( X , Y )< Emp t ( X , Y )
0 unknown

53
University of applied Sciences
Bonn-Rhein-Sieg
Sonar maps

Estimate high resolution maps


Shown method
Properties
Increases (angular) resolution by integrating different
viewpoints
Does fairly good free space estimation
Tend to overestimate occupied space
Shortcomings
Assumes precise position estimate
Sonar readings need to be preprocessed to remove outliers

54
University of applied Sciences
Bonn-Rhein-Sieg
Sonar maps

Estimate high resolution maps

Incorporate motion estimation errors


Motion estimate used for determining S,
For position uncertainty p probability of point P to be free or
occupied become more uncertain
Take all possible values for S into account when calculation pE
and pO
The matching of map cells and reading cell becomes
uncertain
Distribute pE and pO over all possible target cells

55
University of applied Sciences
Bonn-Rhein-Sieg

That's all

56

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy