system models & basic terminology - hiroshima university...xavier dÉfago school of information...
TRANSCRIPT
Xavier DÉFAGOSchool of Information Science
Japan Advanced Institute of Science and Technology
Hiroshima, December 2009
Cooperative Mobile RobotsSystem Models & Basic Terminology
PDCAT Tutorial
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
Simple Illustration
2
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
Context & MotivationBottom-Up
1./ Build robots2./ Enforce coordination=> Realistic=> Coordination is an afterthought
Emergence / Stigmergy1./ Define simple behavior2./ Study combined behavior3./ Try to infer rules=> Works well ... on average cases
3
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
Context & MotivationAlgorithmic Approach
1./ Define model & problem2./ Find minimal set of assumptions3./ Prove possibility / impossibility=> Fundamental limits of coordination
4
HighlightsTop-down approachAims for self-organizing propertiesCombines:• Distributed algorithms, computational geometry
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
OutlineSystem Models
Basic Model
Model VariantsSynchrony, etc...
Main ProblemsDefinitionsSome Known Results
Leads for Discussion
5
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
System Models
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
System OverviewEnvironment
2D Euclidean planeNo landmarks / obstacles
RobotsProcess + LocationPrivate coordinate systemLOOK - COMPUTE - MOVE
InteractionsObservations, no comm.Activations
7
Basic Model
Synchrony
Environment
Sensing
Knowledge
Interactions
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
ModelOriginal Model
Called: SYm, SSYNC, ATOM.Starting point for other models/variants
8
[SY99] Suzuki, Yamashita. Distributed Anonymous Mobile Robots: formation of geometric patterns. SIAM J. Comp., 28(4):1347–1363 (1999).
SSYNC Atom
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
Environment2D Euclidean Space
Continuous coordinatesEuclidean distanceNo boundariesNo landmarksNo obstacles
9
!"
# similar w.r.t. symmetry
Z = (o, d, u)
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
EnvironmentCoordinate system
Origin, direction of x-axis, unit distanceGlobal system is unknown to robots
TimeDiscrete time: 0,1,2,...Time is unknown to robots
10
Z = (O, !x, !y)
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
RobotsRobots in the System
Robots are dimensionless (i.e., points)Can movePossibly occupy the same locationAre undistinguishableExecute the same codeDo not know their identifier (anonymous)• Disallows:
if me == then ...
11
{r1, r2, . . . , rn}
rx
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
RobotsLocal Coordinates
Common sense of orientation (chirality):• x,y-axes at 90º counter-clockwise
12
Let’s look at robot
ri
!oi
!xi
di
ui
!yi
O !x
Zi = (!oi, di, ui)
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
RobotsPosition
: position of robot at time
Initial Position
Positions Multiset => several robots @ same positionPosition distinct initially,
13
Let’s look at robot
riri tpi(t)
pi(0)
P (t) = {pi(t)|1 ! i ! n}
!i, j : i "= j # pi(0) "= pj(0)
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
RobotsAlgorithm
Sequential processRobot is: active | inactiveActivated randomly
ActivationLOOK at the environmentCOMPUTE a target destinationMOVE toward the target
14
Let’s look at robot
ri
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
LOOKNotation in terms of
ObservationGet a set of points
Get its own position
15
Zi[p]i ! p
Let’s look at robot
ri
[P (t)]i = {[pk(t)]i |1 ! k ! n}
r1
r3r4
r2x
x
xx
symmetrical
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
COMPUTECompute Target Destination
Outputs a single point
Function is deterministicComputes target destination
Variants:Oblivious: function is statelessNon-oblivious: retains past observations
16
!([P (t)]i , [pi]i) !" [p!i(t)]i
Robotri
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
MOVEMove Toward Target
Move toward target destinationLimited movement• Robot has reachability Δi > 0 (unit distance)• Moves to point within Δi nearest to target• Δi > 0 is not infinitesimally small
New position reached before time
17
t + 1
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
Activation ScheduleActivation
Infinite sequence: : set of active robots at
ConditionsAt each time: at least one robot is activeFor every robot: it is active infinitely-many times
Active RobotExecutes: LOOK - COMPUTE - MOVE
18
A = A0, A1, . . . , At, . . .At t
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
Activation Schedule
19
rc
rb
ra
look
compute
move
t
At
t + 1
Special CasesSynchronized:Centralized:
!t : "At" = n!t : "At" = 1
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
Gathering Problem
InitiallyRobots located arbitrarily
ObjectiveEventually all robots at same location
FormationMust reach goal in finite number of steps
20
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
Difficulty of Gathering
IllustrationTwo robots A and BSYm modelDeterministic algorithmOblivious robots=> 2-Gathering impossible [SY99]
21
A B
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
Model Variants
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
Activation ScheduleOriginal Model
Called: SYm, SSYNC, ATOM
Asynchronous
Called: CORDA, ASYNCSeparate events:• LOOK• COMPUTE• BEGIN MOVE• END MOVE
23
[FPSW05] Flocchini, Prencipe, Santoro, Widmayer. Gathering of asynchronous robots with limited visibility. T.C.S., 337:147–168, 2005.
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
CORDA Model
Important PointsRobots can be seen while movingDifferent robot “speed”
Special CasesSYm strictly included in CORDA
24
rc
rb
ra
look compute move
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
MultiplicityNo multiplicity detection
Set of pointsTwo+ collocated robots seen as single point.
Multiplicity detectionPoint of multiplicity identified (weak)Count of collocated robots (strong)
25
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
VisibilityFull visibility
All robots included in the set P(t)
Limited visibilityVisibility range RRobot ri gets subset:• Only the robots within distance R
Usually:• Initially, visibility graph is connected
26
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
MemoryNon-oblivious
Input includes all / part of past activationsActivation may include stateful information
ObliviousInput is last observation onlyActivation is stateless
27
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
IdentityAnonymous
Robots have no identity information
With IdentitySome robot can be designated as “leader”Allows: if me == “leader” then ...NB: Identity is visible or not
28
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
DeterminismDeterministic
Algorithm allows only deterministic operations
RandomizedAlgorithm allows probabilistic operations
29
A B
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
VolumeDimensionless Robots
Robots can share the same locationRobots have no size
Robots with VolumeRobots have a sizeRobots should not collide
30
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
MovementInstantaneous
Robot “teleports” to the target
Duration / PathMovement takes some timeRobots follows a pathAdditional possibility of collision
NoteNearly identical for SYm model
31
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
CompassNo assumption
Original SYm model
CompassRobots agree on a common directionNo agreement on origin
Eventual CompassRobots eventually agree on a common dir.
Faulty CompassesRobots agree within some angle errorStatic / dynamic variants
32
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
SchedulersFairness
Unfair: may active some robots unfairlyFair: all robots activated infinitely-often
k-BoundedAt most k activations of any robot r’between 2 activations of some robot r
CentralizedAt most 1 robot active
33
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
Fault-ToleranceCrash
Some robots may crash:• Disappear from the system (trivial)• Stop moving
ByzantineSome robots move against the algorithmStrong/weaker than schedulerAware/unaware of scheduler decisionAware/unaware of algorithm decisions
34
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
Error-ToleranceErrors
Errors on observationsUsually:• Errors are relative wr.t. robot’s location• Errors are bounded• Bounds are known
35
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
Problems
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
Gathering / ScatteringGathering
Initially: arbitrary configuration=> all robots share same location• permanently• location is not predetermined
ScatteringInitially: robots possibly at same location=> all robots have distinct positions• permanently
NB: Dual problems 37
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
Pattern FormationGeneral Pattern
Initially: arbitrary configurationGiven: geometric shape=> Organize into the shape
Special CasesCircle formation (regular n-gon)Point formation (gathering)
RelatedLeader election
38
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
FlockingFlocking
Initially: arbitrary configuration=> Robots eventually move together
VariantsMove while keeping given shapeMove while following given pathAssumes leader or not...
39
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
DiscussionsSummary
SYm model, CORDA modelMany model variantsMany fundamental problems
ApproachFormal modelProofs of correctness
AimMinimum requirements for cooperation
40
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
Important References•[SY99] Suzuki, Yamashita. Distributed anonymous mobile robots:
formation of geometric patterns. SIAM J. Comp., 28(4):1347–1363 (1999).
•[GP04] Gervasi, Prencipe: Coordination without communication: the case of the flocking problem. Discr. Applied Math. 144(3): 324-344 (2004)
•[FPSW05] Flocchini, Prencipe, Santoro, Widmayer: Gathering of asynchronous robots with limited visibility. Theor. Comput. Sci. 337(1-3): 147-168 (2005)
•[Pre05] Prencipe. The Effect of Synchronicity on the behavior of autonomous mobile robots. Theory Comput. Syst. 38(5): 539-558 (2005).
•[AP06] Agmon, Peleg. Fault-tolerant gathering algorithms for autonomous mobile robots. SIAM J. Comput. 36(1): 56-82 (2006)
•[DGMR06] Défago, Gradinariu Potop-Butucaru, Messika, Raipin Parvédy: Fault-Tolerant and Self-stabilizing Mobile Robots Gathering. DISC 2006: 46-60
41
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
•[IKIW07] Izumi, Katayama, Inuzuka, Wada: Gathering autonomous mobile robots with dynamic compasses: optimal result. DISC 2007: 298-312
•[Pre07] Prencipe. Impossibility of gathering by a set of autonomous mobile robots. Theor. Comput. Sci. 384(2-3): 222-231 (2007)
•[DS08] Défago, Souissi. Non-uniform circle formation algorithm for oblivious mobile robots with convergence toward uniformity. Theor. Comput. Sci. 396(1-3): 97-112 (2008)
•[FPSW08] Flocchini, Prencipe, Santoro, Widmayer. Arbitrary pattern formation by asynchronous, anonymous, oblivious robots. Theor. Comput. Sci. 407(1-3): 412-447 (2008)
•[CP08] Cohen, Peleg. Convergence of autonomous mobile robots with inaccurate sensors and movements. SIAM J. Comp. 38(1): 276-302 (2008)
•[DP08] Dieudonné, Labbani-Igbida, Petit. Circle formation of weak mobile robots. ACM Trans. Autonomous Adapt. Syst., 3(4): (2008)
•[BGT09] Bouzid, Gradinariu Potop-Butucaru, Tixeuil. Optimal Byzantine resilient convergence in asynchronous robots networks. SSS 2009: 165-179
42
X. Défago. “Tutorial: cooperative mobile robots: system models & basic terminology”. Hiroshima, Japan, December 2009.
•[DP09] Dieudonné, Petit. Scatter of robots. Parallel Processing Letters 19(1): 175-184 (2009)
•[SDY09] Souissi, Défago, Yamashita. Using eventually consistent compasses to gather memory-less mobile robots with limited visibility. ACM Trans. Autonomous Adapt. Syst., 4(1): (2009)
•[SIW09] Souissi, Izumi, Wada: Oracle-based flocking of mobile robots in crash-recovery model. SSS 2009: 683-697
43