collectively solving the kidnapped robot problem · 2011-10-03 · collectively solving the...

18
Collectively solving the kidnapped robot problem Daniel Kostro and Matthew Parkan, EPFL, 2010 ? ?

Upload: others

Post on 10-Mar-2020

8 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Collectively solving the kidnapped robot problem · 2011-10-03 · Collectively solving the kidnapped robot problem ? Daniel Kostro and Matthew Parkan, EPFL, 2010 . Who is involved?

Collectively solving the kidnapped robot

problem

Daniel Kostro and Matthew Parkan, EPFL, 2010

??

Page 2: Collectively solving the kidnapped robot problem · 2011-10-03 · Collectively solving the kidnapped robot problem ? Daniel Kostro and Matthew Parkan, EPFL, 2010 . Who is involved?

Who is involved?

the robots the death arena

8 distance sensors

(infrared)

camera

compass

emitter/receiver

map of the arena

odometry

painted in blue

red walls

green cylinders

homogenous (more or less)

lighting

Why am I following him…

Page 3: Collectively solving the kidnapped robot problem · 2011-10-03 · Collectively solving the kidnapped robot problem ? Daniel Kostro and Matthew Parkan, EPFL, 2010 . Who is involved?

What is the problem?

The robots must localize themselves efficiently from any

starting position in the arena

How do we solve it?

Using particle filter localization

θtθ

ty

tx

?

?

)(

)(

)(Remember, the robot has an

accurate and precise compass

Page 4: Collectively solving the kidnapped robot problem · 2011-10-03 · Collectively solving the kidnapped robot problem ? Daniel Kostro and Matthew Parkan, EPFL, 2010 . Who is involved?

odometric information

Our particle filter localization method…

particle filter

obstacle avoidance &

identification

position estimate

Page 5: Collectively solving the kidnapped robot problem · 2011-10-03 · Collectively solving the kidnapped robot problem ? Daniel Kostro and Matthew Parkan, EPFL, 2010 . Who is involved?

Obstacle avoidance & identification

1.The robot moves forward at a random angle

towards the obstacle (wall, cylinder, other

robot)

2.The robot senses the proximity of an

obstacle using IR sensors. It turns to

face it then moves slightly backwards

3.The robot identifies the obstacle using

camera (color threshold) and compass

(bearing intervals)

4.The robot enters obstacle avoidance

state (rule based algorithm) and moves

away

>NORTH WALL PROXIMITY

>CYLINDER PROXIMITY

Page 6: Collectively solving the kidnapped robot problem · 2011-10-03 · Collectively solving the kidnapped robot problem ? Daniel Kostro and Matthew Parkan, EPFL, 2010 . Who is involved?

odometric information

Our particle filter localization method…

particle filter

obstacle avoidance &

identification

position estimate

Page 7: Collectively solving the kidnapped robot problem · 2011-10-03 · Collectively solving the kidnapped robot problem ? Daniel Kostro and Matthew Parkan, EPFL, 2010 . Who is involved?

Odometry (dead reckoning)

wrv

tvd

),()( 2Ntt

robot speed translation error εt at time step t

rotation error εθ at time step t

μ = 0 and ζ2(t) = δd (t)

),( 2N

μ = 0 and ζ2 = 0.01

travelled distance

Page 8: Collectively solving the kidnapped robot problem · 2011-10-03 · Collectively solving the kidnapped robot problem ? Daniel Kostro and Matthew Parkan, EPFL, 2010 . Who is involved?

odometric information

Our particle filter localization method…

particle filter

obstacle avoidance &

identification

position estimate

Page 9: Collectively solving the kidnapped robot problem · 2011-10-03 · Collectively solving the kidnapped robot problem ? Daniel Kostro and Matthew Parkan, EPFL, 2010 . Who is involved?

(0,1.5) (1,1.5)

(0,0) (1,0)

y

x

rcyl

N

Authorized zones

(xi,yi)

There are small buffer zones

near obstacles

δc,min

Xmin= 0 Xmax= 1

ymin= 0 ymax= 1.5

Authorized zones

δc,max

δw,min

δw,max

Page 10: Collectively solving the kidnapped robot problem · 2011-10-03 · Collectively solving the kidnapped robot problem ? Daniel Kostro and Matthew Parkan, EPFL, 2010 . Who is involved?

Authorized zones (with formulas)

22

pcpcpccp yyxxPPd

If rc + δc,min < dcp < rc + δc,max

→ particle is invalid → relocate particle to valid position

If xmax – δw,max < xp < xmax + δw,min || xmin + δw,min < xp < xmin + δw,max

|| ymax – δw,max < yp < ymax - δw,min || ymin + δw,min < yp < ymin + δw,max

→ particle is invalid → relocate particle to valid position

Cylinder intersection is tested

Wall intersection is tested

Page 11: Collectively solving the kidnapped robot problem · 2011-10-03 · Collectively solving the kidnapped robot problem ? Daniel Kostro and Matthew Parkan, EPFL, 2010 . Who is involved?

The particle filter in action

has the same velocity (with some

noise) as its associated robot, so

particle positions propagate like this:

Each particle i with position (xi,yi):

can only be located inside

authorized zones which are regularly

redefined by obstacle identification

)sin()()()( dttytty tii

)cos()()()( dttxttx tii

Bayesian filtering isn’t used (this

means all the particles have the same

weight)

is given a random initial position in

the arena

Initial forbidden zones and particle

distribution

Page 12: Collectively solving the kidnapped robot problem · 2011-10-03 · Collectively solving the kidnapped robot problem ? Daniel Kostro and Matthew Parkan, EPFL, 2010 . Who is involved?

Once an obstacle is identified, the

forbidden zone is redefined and the

particles are repositioned in the new

authorized zone

Each relocated particle is given

coordinates of a randomly chosen valid

particle

In addition, if all particles are

invalid they are reinitialized (given

new random valid positions distributed

in the whole arena)

Forbidden zones and particle distribution after East wall

identification

Page 13: Collectively solving the kidnapped robot problem · 2011-10-03 · Collectively solving the kidnapped robot problem ? Daniel Kostro and Matthew Parkan, EPFL, 2010 . Who is involved?

Robot particle information exchange

1.Two robots meet, locally broadcast the

positions of their respective particles and

compare them

2. Particles which are too far apart are

recentered (centroids of clouds get closer)

Through iterative obstacle identification and particle repositioning, the

robots get a pretty good estimate of their true position

Page 14: Collectively solving the kidnapped robot problem · 2011-10-03 · Collectively solving the kidnapped robot problem ? Daniel Kostro and Matthew Parkan, EPFL, 2010 . Who is involved?

How is the performance evaluated?

valid

N

i

i

pN

x

x 1

valid

N

i

i

pN

y

y 1

the position accuracy

the time taken to attain a position accuracy of 0.05 (~1.4 robot radius)

r

r

r

p

p

p

y

x

y

x

accuracy

We measure:

the number of times all the particles were reinitialized

the position precision (standard deviation) isn’t used in the evaluation

Difference between particle cloud centroid and real robot position

Page 15: Collectively solving the kidnapped robot problem · 2011-10-03 · Collectively solving the kidnapped robot problem ? Daniel Kostro and Matthew Parkan, EPFL, 2010 . Who is involved?

The Movie

Page 16: Collectively solving the kidnapped robot problem · 2011-10-03 · Collectively solving the kidnapped robot problem ? Daniel Kostro and Matthew Parkan, EPFL, 2010 . Who is involved?

Results

1 2 4 6 8 100

10

20

30

40

50

60

70

Robot performance

Number of robots

tim

e (

s)

1 2 4 6 8 100

0.002

0.004

0.006

0.008

0.01

0.012

0.014

0.016

0.018

Robot reinitializations

Number of robots

Nu

mb

er

of re

initia

liza

tio

ns p

er

se

c

1 2 4 6 8 100

0.02

0.04

0.06

0.08

0.1

0.12

Robot encounters

Number of robots

Nu

mb

er

of ro

bo

t e

nco

un

ters

pe

r se

c

Number of runs:

100 with 1 robot

50 with 2 robots

25 with 4 robots

20 with 6, 8, 10 robots

Results are highly variable (no significant difference)

However, a lower number of robots seems to work better

Page 17: Collectively solving the kidnapped robot problem · 2011-10-03 · Collectively solving the kidnapped robot problem ? Daniel Kostro and Matthew Parkan, EPFL, 2010 . Who is involved?

Conclusion & remarks

•Our particle filter approach generally allows to get a good estimate

of positions (though the time taken is highly variable).

•There doesn’t seem to be an optimal number of robots adapted to the

size of the given arena.

Issues:

•Alot of problems with obstacle identification (e.g. robots facing

green cylinders would see through, on some occasions)

•We had to reverse to Webots 6.1.5 to visualize particles, and used

6.2.4 to evaluate performances

Further study:

•Compare performance with/without communication

•Effects of robot speed

Page 18: Collectively solving the kidnapped robot problem · 2011-10-03 · Collectively solving the kidnapped robot problem ? Daniel Kostro and Matthew Parkan, EPFL, 2010 . Who is involved?

>Thank you