Direction Election in Flocking Swarms
Ohad Ben-Shahar, Shlomi DolevAndrey Dolgin, Michael Segal
Ben-Gurion University of the Negev
Agenda• Introduction• Spring network• Rotating leadership election• Future research
Introduction
• Gathering and Leading Direction Election
• Entities obtain only position of neighbors
• Multiple entities may want to lead
What problem we are dealing with?
Reynolds Ruleshttp://www.red3d.com/cwr/boids/
Reynolds suggests three intuitive rules:• Separation
• Alignment
• Cohesion
steer towards the average heading of local flockmates
steer to avoid crowding local flockmates
steer to move toward the average position of local flockmates
Reynolds RulesUnfortunately do not cope with
Symmetry…
Two move in opposite directions…
or towards each other preventing simultaneous flocking
Related Work [TJP03] Potential function:• Collision avoidance• Maintaining links• Single leader only• No errors
Tanner, H. G., Jadbabaie, A., and Pappas, G. J., “Stableflocking of mobile agents, Part II: dynamic topology", Proc.IEEE Conference on Decision and Control, Maui, Hawaii,pp. 2016-2021, 2003.
Related Work [TJP03] IF the graph is always connected… then
• All pair-wise velocity differences converge asymptotically to zero,
• Collisions between the agents are avoided.
Tanner, H. G., Jadbabaie, A., and Pappas, G. J., “Stableflocking of mobile agents, Part II: dynamic topology", Proc.IEEE Conference on Decision and Control, Maui, Hawaii,pp. 2016-2021, 2003.
Related Work [JW09]
Multiple Leaders…All entities exponentially converge to
the weighted average position and velocity of leaders, WHEN connectivity is preserved.
Jiang-Ping, H., Hai-Wen, Y., “Collective coordination ofmulti-agent systems guided by multiple leaders", IEEETransactions On Robotics, Vol. 18, No. 9, 2009.
Our Spring Network
Definition Spring is a virtual structure connecting any two neighboring entities.
The force that the spring applies on its ends is F = (rij - (R - r)/2)/2.
The spring attains its equilibrium state in the middle between R and r.
Moreover a spring never exceeds R nor reduced to less than r.
Spring NetworkTheorem: Connectivity Preserving and Collision Avoidance Given the spring graph initial connectivity And the fact that the algorithm does not violate the spring definition.
Leader motion
e includes a random variable term added for symmetry breaking
Non Leader Motion• Try to move to relax the spring• Avoiding moves that may violate R
or r• Take in account the movement of
the neighbors and the errors in the measurements.
Rotating Leader Election• Each candidate tries to define
the direction for T time.
Rotating Leader Election
• A part of T is dedicated for spring network convergence --- to provide each leader a possibility to move,
• Since the equilibrium state of each spring is in the middle between r and R, this is the optimal position, to move in any desired direction.
Leader Election for Labeled Entities
ORDER = [1..n]. Wait until ORDER == (Tglobal mod nT )+ 1
then lead for time slot T, preserving spring
definition. Update neighbor list with newly created
springs. Start over again
Leader Election for Labeled Entities
convergence leading
entity i
entity i+1
waiting
convergence leading waitingwaiting
Leader Election for Unlabeled Entities
Uniformly choose ORDER on the range [1,P].
Wait until ORDER == (Tglobal mod P )+ 1 then
lead for time slot T, preserving spring definition.
Update neighbor list with newly created springs
Start over again
Leader Election for Unlabeled Entities
convergence leading
entity i
entity j
waiting
convergence leadingwaitingconvergence leading
Leader Election The probability for all entities to
have a chance to lead alone for time slot T
Leader election theorem
Theorem: Direction election algorithms will make the swarm follow a single leader at least k times in a leading period with predetermined probability.
Leader election forunsynchronized clocks
An additional part in the time slot T should be allocated for synchronization.
Allowing entities to lead only after this additional part, no two entities with different ORDER values can compete for leadership.
All other properties are preserved.
Leader election forunsynchronized clocks
ORDER=kconvergencesynchronization leading
entity i
waiting
ORDER=k+1 convergencesynchronization leading
entity j
waiting
start s “with” j T length period
If starts more than T/2 following the previous and more than T/2 before the next, then no collision, same probability as having an index of T for yourself in the slotted T (rather than 2T) case…
Leader election forunsynchronized clocks
Uniformly choose ORDER in the range [1,P]. Wait until ORDER == (Tglobal mod P )+ 1 then lead for time slot T, preserving spring
definition. Update neighbor list with newly created
springs Start over again
Leader electionPriority Scheduling
NP different leading scenarios are possible.
NP=1 for highest priority. ORDER is multiplied by NP . Leader Election Algorithm.
Calculating TF
L
The relative error is bounded by 2X/L goes down as L increases.X is bounded by nR.
X
2X
Conclusion Bounded errors are considered. Collision avoidance and connectivity
is preserved all the time. Leadership direction is efficiently
elected with predetermined probability.
THANK YOU
Top Related