Content uploaded by Mohsen Raoufi
Author content
All content in this area was uploaded by Mohsen Raoufi on Apr 09, 2019
Content may be subject to copyright.
Self-organized Collective Motion with a
Simulated Real Robot Swarm?
Mohsen Raoufi1, Ali Emre Turgut2, and Farshad Arvin3
1Department of Aerospace Engineering, Sharif University of Technology, Tehran,
Iran, email: mohsen raoufi@ae.sharif.edu
2Mechanical Engineering Department, Middle East Technical University, 06800
Ankara, Turkey, email: aturgut@metu.edu.tr
3School of Electrical and Electronic Engineering, The University of Manchester,
M13 9PL, Manchester, UK, email: farshad.arvin@manchester.ac.uk
Abstract. Collective motion is one of the most fascinating phenomena
observed in the nature. In the last decade, it aroused so much attention
in physics, control and robotics fields. In particular, many studies have
been done in swarm robotics related to collective motion, also called
flocking. In most of these studies, robots use orientation and proxim-
ity of their neighbors to achieve collective motion. In such an approach,
one of the biggest problems is to measure orientation information using
on-board sensors. In most of the studies, this information is either simu-
lated or implemented using communication. In this paper, to the best of
our knowledge, we implemented a fully autonomous coordinated motion
without alignment using very simple Mona robots. We used an approach
based on Active Elastic Sheet (AES) method. We modified the method
and added the capability to enable the swarm to move toward a desired
direction and rotate about an arbitrary point. The parameters of the
modified method are optimized using TCACS optimization algorithm.
We tested our approach in different settings using Matlab and Webots.
Keywords: Swarm Robotics ·Collective Motion ·Coordinated Motion
·Flocking ·Self-organized.
1 Introduction
Collective motion (CM) is an eye-catching demonstration of a more broad phe-
nomenon called collective behaviour [22]. CM is observed in diverse domains
such as: physics [10], chemistry [11], from micro-size creatures such as bacteria
colonies [20], cells [1], macro-molecules [18] to handful macro-size examples of
fish [24], birds [3,4], even humans [15] and to non-living systems [21]. The princi-
ple feature of CM is that each individual agent behaves based on the interaction
between its neighbors; resulting in polarized motion of the group. This interac-
tion might be either simple (attraction/repulsion) or complex (combinations of
simple interactions) [23].
?This work was supported by EPSRC Impact Acceleration Account (EP/R511626/1).
2 M. Raoufi et al.
In most of the works on CM, agents use both orientation and proximity infor-
mation of their neighbors [7,5]. In contrast to these works, some works introduced
methods that do not rely on this information. An individual-based model is de-
fined in [17], where the interaction between neighbor agents is defined only by
escape-pursuit behavior. In [8], inelastic collisions between isotropic agents, and
in [12] a pairwise repulsive force between deform-able, self-propelled particles are
introduced as interaction mechanism regardless of the orientation of neighbors.
These methods leave an indirect effect on individual agents, and as a result,
enable them to establish aligning interaction in an effective, implicit manner.
By so doing, not only the swarm achieves CM, but also the reduced dynamics
reaches consensus in the heading direction of agents. An example of this implicit
aligning is [6], in which, Ferrante et al. identified a new elasticity-based approach
for achieving collective motion and illustrated the behavior by introducing an
Active Elastic Sheet (AES) model. In their proposed model, the motion of an
individual is determined by only attraction-repulsion forces. This feature is very
useful in practical cases, such as a swarm of robots in which a specific robot have
not any information of its neighbors’ orientation.
In this paper, we improve the AES model presented in [6], and optimize some
of the parameters of the proposed algorithm using a heuristic optimization algo-
rithm. To illustrate the improved performance of the model, various simulations
with different assumptions are performed. In addition, some simulations are con-
ducted in Webots [13] using the model of Mona robot [2]. Finally, We implement
the AES model on a swarm of simulated real Mona robots for the first time. To
the best of our knowledge, this is the first implementation of fully autonomous
CM using such a simple robotic platform without alignment information.
This paper is organized as follows: in the Sect. 2, we introduce the concept of
AES mechanism to achieve CM, and the modifications are addressed there. Then,
the optimization algorithm is discussed and the objective function is defined in
Sect. 3. We mention the settings of simulations in the Sect. 4. In Sect. 5, the
results are shown and we discuss them. Sect. 6 closes the paper with a conclusion
about the current work.
2 Collective Motion Control
In this section, the dynamic model of AES along with some modifications is
presented. The model is derived based on a simple two-dimensional active elastic
sheet mechanism [6]. After defining the basic mechanism, the numerical dynamics
of particles and modifications will be elaborated upon.
2.1 Active Elastic Sheet Model and Numerical Dynamics
Each agent iout of Nagents, is affected by the attraction-repulsion force of its
neighbors. This force will leave an effect on both the linear velocity ˙xiand the
rotational velocity ˙
θiof the agent. This effect is formulated in continuous-time
Self-organized Collective Motion with a Simulated Real Robot Swarm 3
i
γ
i
f
agent i
i
n
ˆ
Fig. 1: The angle between force and heading vectors
form as:
˙xi(t) = nv0(t) + αhfi(t) + Drˆ
ξr(t)ˆni(t)ioˆni(t) (1)
˙
θi(t) = βnhfi(t) + Drˆ
ξr(t)iˆn⊥
i(t)o+Dθξθ(t) (2)
where, v0is the forward biasing speed, and parameters αand βare the inverse
transitional and rotational coefficients, respectively. The unit vector ˆni(t) is the
heading vector which is parallel to the heading direction of agent i, and ˆn⊥
i(t)
is perpendicular to it.
ˆni(t) = cos(θi(t))
sin(θi(t))(3)
The term fiˆn⊥
iof Eq. (2) indicates that the angle between force and heading
vectors (γi) defines the rotation speed of the agent (Fig. 1). So, the rotation
speed will be zero if two vectors fiand ˆniare parallel (i.e. fiand ˆn⊥
iare
perpendicular.)
Agents are subject to measurement and actuation noises Drˆ
ξr(t) and Dθξθ(t);
in which, ˆ
ξr(t) is a randomly oriented unit vector and ξθ(t) is a random variable
with standard normal distribution. Drand Dθare noise strength coefficients.
Inducing total force vector fi(t) over agent iat time tcan be calculated by
the summation of linear spring-like forces, which link agent ito its interacting
neighbor j, member of set Si:
fi(t) = X
j∈Si−k
lij
(krij (t)k − lij )rij (t)
krij (t)k(4)
rij (t) = xj(t)−xi(t) (5)
lij is equilibrium distance (or alternatively called natural length) of the spring
that links agent iand j. In order to simulate the model, we need to numerically
integrate the dynamic equations of motion. Integrating Eq. (1) and (2) using
Euler method at time step t, results in the governing discrete-time kinematic
equations of each particle which is expressed by the following equations:
xt+1
i=xt
i+v0ˆnt
i+αft
i+Dr
√∆t
ˆ
ξt
rˆnt
iˆnt
i∆t (6)
4 M. Raoufi et al.
θt+1
i=θt
i+βft
i+Dr
√∆t
ˆ
ξt
rˆn⊥,t
i+Dθ
√∆tξt
θ∆t (7)
here, xt
iand θt
iare the position and orientation of agent iat step time t, re-
spectively, and ∆t is the numerical time-step interval of integration. It is note-
worthy that the velocity vector in Eq. (1) points parallel to the heading of
the agent which means it is assumed that each agent can only turn, and move
forward/backward. Modeling agents with 2 degrees of freedom provides many
advantages to robotic applications in which the robots are not able to move
omni-directionally, take E-puck [14] and Mona [2] robots for instance.
2.2 Modifications to AES
In this section, we present some modifications to AES model, which result in
collective linear and rotational motion of swarm. Firstly, we add a stimulating
force to compel the swarm to move toward a specific direction. This modifica-
tion leads to faster convergence of collective motion. Furthermore, the desired
direction of swarm movement is also achievable by such modification. To model
this auxiliary inducing force, at a certain time, we simply added the auxiliary
force faux, l to the induced force of Eq. (4). This force is parallel to the desired
velocity unit vector ˆvdand its magnitude is defined by a weighting parameter
wlas follows:
faux, l =wlˆvd(8)
The second modification enables the swarm to rotate collectively by adding
another auxiliary force. This force is also related to another desired linear velocity
which itself is proportional to the rate of rotation. According to the kinematics
of 2D rotation, the linear speed of each agent is proportional to its distance with
respect to the center of rotation xc. Thus, pointed in the following equation, the
linear velocity of rotation vris related to ric, the position vector of agent iwrt
the center of rotation, and ωis the rate of rotation. ric,x and ric,y are the x-
and y-component of ric.
vr=ωric,y
−ric,x(9)
ric =xi−xc(10)
Rotation center xcis an arbitrary point, yet it is common to consider it on
the center of swarm. Hence, same as the previous approach, we calculated the
modified force for rotation by the following equation:
faux, r =wrvr(11)
where, wris the weighting parameter of induced force for swarm rotation. It is
worth mentioning that faux, r should be calculated for each agent, but faux, l
is a universal force and is same for all agents. The linearity feature of the afore-
mentioned phenomena enables us to add both terms together and form the total
Self-organized Collective Motion with a Simulated Real Robot Swarm 5
auxiliary force, which still satisfies both motions. So, the final modified inducing
force is:
f=fneighors +faux, l +faux, r (12)
fneighors is exactly the same as Eq. (4), but we added the subscript to show
that this is the force which is defined by the influence of interacting neighbors.
2.3 Degree of Alignment
Since the symmetry is a principal feature for achieving flocking behavior, a cri-
teria is introduced to measure it. This metric is defined by a specific system
variable, called the degree of alignment. One of the most common, and widely
used definition is represented in [23]. In this case the variable ψis the average
normalized velocity vectors:
ψ=1
Nv0
N
X
i=1
vi
(13)
where Nis the total number of the agents, v0is the average absolute velocity,
and viis the velocity vector of the agent i. However, in methods with 2-DoF
agents, like AES, as previously mentioned, the velocity vector is parallel to the
heading direction. So, the degree of alignment of the system is defined as [6]:
ψ=1
N
N
X
i=1
ˆni
(14)
Because our purpose is to simulate the AES method on robots, we added another
criterion which is defined from a control viewpoint. In this respect, the alignment
of each particle ψiis defined by its desired direction of movement, i.e. an agent is
called aligned when its orientation is parallel to its desired direction of motion.
Referred to Fig. 1, the alignment is defined by the angle γias follows:
ψi=|cos(γi)|=
fiˆni
kfik
(15)
In this definition, ψiis between zero (agent’s orientation is perpendicular to the
force, γi=π/2) and one (agent is directed toward the force, γi= 0 or γi=π).
Note that, as the norm of the unit vector ˆniis equal to one, it is eliminated
from the denominator. Therefore, the degree of system alignment is calculated
by the following equation:
ψ=1
N
N
X
i=1
ψi
(16)
Mathematically, the value of this variable is between zero (asymmetric, disor-
dered, random orientation) and one (fully symmetric orientation).
6 M. Raoufi et al.
Initialization
Move ants to new Locations
Update tabu list,
promising list and
the best solution found
Update Pheromone
Distribution
Stopping Condition
is Reached?
End
Yes
No
Fig. 2: General Flowchart of TCACS
3 Optimization
In this section, the parameter optimization of the algorithm will be introduced.
For so doing, we utilized a heuristic optimization algorithm called Tabu Con-
tinuous Ant Colony System (TCACS) [9]. TCACS combines two algorithms:
Continuous Ant Colony System (CACS) [16], and Tabu Search (TS) [19]. We
will mention a brief description of the algorithm in the next subsection. Our aim
is to find the optimal decision parameters for AES model with a specific setup
configuration. The decision parameters to be tuned are α,β, and k.
3.1 TCACS Optimization Algorithm
The structure of the algorithm is very similar to CACS; however, the advantages
of tabu concept are also added. Borrowing the concept of tabu balls (meta-
spherical shapes in the decision-space), prevents the ants choosing their desti-
nation within the tabu regions. The flowchart of TCACS is illustrated in Fig. 2.
In this paper, we considered the parameters of TCACS as Nants = 15,
γ= 0.5, m= 2 (which are number of ants, weighting factor, and PCA fac-
tor, respectively) and used Roulette as the weighting strategy.
3.2 Objective Function
One of the most important steps in optimization is the definition of objective
function, which can leave a considerable effect on the performance of the algo-
rithm to solve the problem. Various objective functions can stand as candidates,
Self-organized Collective Motion with a Simulated Real Robot Swarm 7
depending on what the aim of the problem is and which conditions needs to be
satisfied. In case of collective motion using the modified AES method, we have
two main objectives:
–To minimize the total induced force, which, generally speaking, means that
agents are at their ideal position according to the elastic force of the sheet.
Satisfying this objective will result in maintaining the shape of swarm same
as its natural shape.
–To maximize the rate of convergence, which will be reached when the ori-
entation of agents are about the same as the desired ones. To fulfill this
objective, the optimization algorithm will try to maximize the degree of
system alignment.
Although the defined problem is multi-objective, we combine both previous func-
tions, multiplied by their weights, into a single objective function. This will help
us to simplify and solve the parameter tuning problem in a more straight-forward
manner.
It is notable that the system is subject to noise; consequently, the objective
function gets stochastic, and it is necessary to reduce the effect of noise on
it, otherwise, the performance of optimization will be reduced. Therefore, we
calculate the average of multiple Monte Carlo simulations as the output of the
objective function. With this in mind, the objective function is as follows:
J=1
NMC
NMC
X
m=1 (tf
X
t=0 "w1 N
X
i=1
ft
i
!+w2ψt#) (17)
In which, the first term of the RHS is calculated by Eq. (12), and the second
term by Eq. (16). Additionally, NMC is the number of Monte Carlo simulations
which is set to 10, and tfis the final time of simulation. Considering the fact
that the first objective is a minimization problem, and the second objective is
a maximization problem, we determined w1(the weighting parameter of the
first function) positive and w2negative. As the result, the optimization can be
alternatively called minimization, and the objective function is a cost function.
Determining the value of weighting parameters depends mainly on the purpose
of the optimization, however, a common initial setting is normalizing the order
of each term; so, we considered them as w1= 1/N, and w2=−1.
4 Experimental Setup
To model Mona robot [2] in Webots, we assembled different parts including
upper and lower boards, motors, and wheels which is shown in Fig. 3-b. A
population of 100 Monas, where presented in the simulations and each one has
its own specific ID in order for the supervisor to recognize them in the simulation
world-model, and calculate the adequate displacement of linear and rotational
motion. Besides the simulations in Webots, we also conducted some simulations
in Matlab to check the modifications and to run optimization programs. In this
8 M. Raoufi et al.
(a) (b)
Fig. 3: (a) Mona, an open-source miniature mobile robot developed for swarm
robotic applications and (b) Mona model in Webots.
paper, we represented three different setups for simulations in both Webots and
Matlab, which will be described in the following subsections.
4.1 Setup 1: Linear Motion
The first simulation is executed to prove the linear motion of swarm is achievable
thanks to the first modification. The configuration of this setup is similar to
Table 1, but the rate of rotation is set to zero, ω= 0. The result of this Matlab
simulation is illustrated in the first row of Fig. 5.
4.2 Setup 2: Rotational Motion
Similarly, the second modification is verified by another simulation, in which
the setting makes the swarm rotate about its center. The setting of Table 1
is analogous to the current setting, yet the desired linear speed is set to zero,
kˆvd= 0k. The second row of Fig. 5 represents a time lapse of this simulation in
Matlab.
4.3 Setup 3: Combination of Linear & Rotational Motion
This simulation is conducted in Webots. We considered the robots as indepen-
dent particles, each of which is determined by its orientation and position in the
xy-plane. In this paper, a supervisor code is programmed to calculate the posi-
tion and orientation of robots and dictate them to the corresponding agent. In
other words, it is assumed that the controller of robots are ideal and the desired
states of robots which supervisor calculates, is the same as the actual state of
robots.
The settings of this simulation is placed at Table 1. By defining such settings,
we expect the swarm to rotate about its center while moving collectively toward
the west direction. To depict the result of the simulation, we saved a log file
from Webots, and then plot the position and rotation of each robots in Matlab,
results of which are placed in the third row of Fig. 5.
Self-organized Collective Motion with a Simulated Real Robot Swarm 9
Table 1: AES Simulation Settings
Parameter Description Value
v0Absolute linear velocity of each agent 0.05 [m/sec]
tfFinal time of simulation 30 [sec]
NNumber of agents 10*10
dinit Initial distance between two side-by-side agents 0.2 [m]
ˆvdDesired linear velocity unit vector [−1.0,0.0]T[m/sec]
wlWeight for desired linear velocity 0.8
ωDesired rate of rotation 0.7 [rad/sec]
wrWeight for desired rotational velocity 1
DrStrength coefficient of measurement noise 0.5
DθStrength coefficient of actuation noise 0.02
5 Results & Discussion
Applying TCACS optimization algorithm on the previously defined problem
provided us the tuned parameter of the algorithm for a specific setting of simu-
lation. The setting was considered as Table 1. In the optimization, the maximum
number of function evaluations was limited to 300. Finally, the optimized pa-
rameters achieved as α∗= 0.066, β∗= 0.97, and k∗= 1.28. The shape of swarm
was considered as a square with 10 rows and 10 columns of agents.
In order to show the effect of optimized parameters on the performance of
flocking, we investigated those objectives with both the optimized and non-
optimized set of parameters. Fig. 4-b shows the significant improvements, in
comparison with the default parameters Fig. 4-a, which is achieved by optimized
parameters. As it is shown, the rate of convergence is increased, so the CM
achieved faster. Besides, the total force of the network is decreased, meaning
that the shape of the swarm is maintained better.
We also studied the effect of objective weights w1, and w2on the optimized
parameters. Since the behavior of swarm varies for each obtained parameters,
we defined two more different weight sets to show the effect of different weights
on swarm behavior:
–More emphasis on the first objective, w1= 10/N,w2=−1 (Fig. 4-c)
–More emphasis on the second objective, w1= 1/N,w2=−10 (Fig. 4-d)
As we expected, the former setting resulted in the more reduction of total force,
and the latter one, increased the rate of convergence of alignment, yet made the
system more sensitive to noise (the effect of which is shown on the fluctuating
behavior of force on Fig. 4-d). The first row of Fig. 5 proves that the initially
perturbed formation of the swarm is eliminated, then the collective motion of
swarm is achieved. The inducing linear force caused the swarm to move toward
the west direction, as it was expected by ˆvd. Due to the robustness of AES to
noises, noises were not effective enough to prevent the swarm from flocking. The
time history of the second row, for rotational motion, proves that the second
10 M. Raoufi et al.
0 5 10 15 20 25 30
time [sec]
0
0.2
0.4
0.6
0.8
1
Fitness
(a)
0 5 10 15 20 25 30
time [sec]
0
0.2
0.4
0.6
0.8
1
Fitness
F/kN
(b)
0 5 10 15 20 25 30
time [sec]
0
0.2
0.4
0.6
0.8
1
Fitness
(c)
0 5 10 15 20 25 30
time [sec]
0
0.2
0.4
0.6
0.8
1
Fitness
(d)
Fig. 4: Effect of Parameter optimization, and Weights on CM: a) Default param-
eters, b) optimized parameters, c) optimized parameters with emphasis on force
objective, d) optimized parameters with emphasis on alignment objective
modification is verified, similarly. In this simulation, the swarm rotates about its
center and maintain its shape, meanwhile.
The third row shows that the combination of linear and rotational motions
made the swarm to move toward the desired direction, and in the mean time,
rotate about its center. The same optimized parameters were used for this sim-
ulation, in Webots, proving that similar settings results in similar behavior in
Matlab and Webots.
6 Conclusion
We have addressed the parameter optimization and Webots simulations of AES
model, which is an elasticity-based approach for achieving CM. Some of its ad-
vantages such as not relying on exchanging orientation information, and assum-
ing 2-DoF agents attracted our attention. So, considering our robotic case, we
added some modifications helping the swarm of robots to move toward the de-
sired direction and turn about an arbitrary rotation center point. In addition, a
new criterion for measuring the alignment of the swarm is defined based on the
desired direction of motion.
utilizing TCACS optimization algorithm, we tuned the parameter of AES
model for a specific setup containing combination of linear and rotational motion
of swarm. The effect of optimization on the behavior of CM, such as increasing
Self-organized Collective Motion with a Simulated Real Robot Swarm 11
-2 -1 0 1 2
x [m]
-2
-1.5
-1
-0.5
0
0.5
y [m]
Time : 0.100 [sec]
-2 -1 0 1 2
x [m]
-2
-1.5
-1
-0.5
0
0.5
y [m]
Time : 5.100 [sec]
-2 -1 0 1 2
x [m]
-2
-1.5
-1
-0.5
0
0.5
y [m]
Time : 10.100 [sec]
-2 -1 0 1 2
x [m]
-2
-1.5
-1
-0.5
0
0.5
y [m]
Time : 15.100 [sec]
-2 -1 0 1 2
x [m]
-2.5
-2
-1.5
-1
-0.5
0
0.5
1
y [m]
Time : 0.100 [sec]
-2 -1 0 1 2
x [m]
-2.5
-2
-1.5
-1
-0.5
0
0.5
1
y [m]
Time : 5.100 [sec]
-2 -1 0 1 2
x [m]
-2.5
-2
-1.5
-1
-0.5
0
0.5
1
y [m]
Time : 10.100 [sec]
-2 -1 0 1 2
x [m]
-2.5
-2
-1.5
-1
-0.5
0
0.5
1
y [m]
Time : 15.100 [sec]
-2 -1 0 1 2
x [m]
-2.5
-2
-1.5
-1
-0.5
0
0.5
1
y [m]
Time: 0.1 [Sec]
-2 -1 0 1 2
x [m]
-2.5
-2
-1.5
-1
-0.5
0
0.5
1
y [m]
Time: 5.1 [Sec]
-2 -1 0 1 2
x [m]
-2.5
-2
-1.5
-1
-0.5
0
0.5
1
y [m]
Time: 10.1 [Sec]
-2 -1 0 1 2
x [m]
-2.5
-2
-1.5
-1
-0.5
0
0.5
1
y [m]
Time: 15.1 [Sec]
Fig. 5: Simulation Results: First row: Pure linear motion in Matlab, Second row:
Pure rotational motion in Matlab, Third row: Linear+rotational motion in We-
bots
the rate of convergence and decreasing the total force, has been shown. Various
weighting strategies for optimization has been studied, too.
Finally, three different scenarios have been conducted in Matlab and Webots.
For this end, we have designed a CAD model of Mona robot in Webots and
have simulated a supervised program to control agents. The results proved that
our modifications are applicable and the optimized parameters improved the
performance of the AES mechanism.
References
1. Arboleda-Estudillo, Y., Krieg, M., St¨uhmer, J., Licata, N.A., Muller, D.J., Heisen-
berg, C.P.: Movement directionality in collective migration of germ layer progeni-
tors. Current Biology 20(2), 161–169 (2010)
2. Arvin, F., Espinosa, J., Bird, B., West, A., Watson, S., Lennox, B.: Mona: an af-
fordable open-source mobile robot for education and research. Journal of Intelligent
& Robotic Systems pp. 1–15 (2018)
3. Ba jec, I.L., Heppner, F.H.: Organized flight in birds. Animal Behaviour 78(4),
777–789 (2009)
4. Ballerini, M., Cabibbo, N., Candelier, R., Cavagna, A., Cisbani, E., Giardina, I.,
Lecomte, V., Orlandi, A., Parisi, G., Procaccini, A., et al.: Interaction ruling animal
collective behavior depends on topological rather than metric distance: Evidence
from a field study. Proceedings of the national academy of sciences 105(4), 1232–
1237 (2008)
12 M. Raoufi et al.
5. Couzin, I.D., Krause, J., James, R., Ruxton, G.D., Franks, N.R.: Collective memory
and spatial sorting in animal groups. Journal of theoretical biology 218(1), 1–11
(2002)
6. Ferrante, E., Turgut, A.E., Dorigo, M., Huepe, C.: Collective motion dynamics of
active solids and active crystals. New Journal of Physics 15(9), 095011 (2013)
7. Gr´egoire, G., Chat´e, H.: Onset of collective and cohesive motion. Physical review
letters 92(2), 025702 (2004)
8. Grossman, D., Aranson, I., Jacob, E.B.: Emergence of agent swarm migration and
vortex formation through inelastic collisions. New Journal of Physics 10(2), 023036
(2008)
9. Karimi, A., Nobahari, H., Siarry, P.: Continuous ant colony system and tabu search
algorithms hybridized for global minimization of continuous multi-minima func-
tions. Computational Optimization and Applications 45(3), 639–661 (2010)
10. Kudrolli, A., Lumay, G., Volfson, D., Tsimring, L.S.: Swarming and swirling in
self-propelled polar granular rods. Physical review letters 100(5), 058001 (2008)
11. Lewandowski, J.R., Sein, J., Blackledge, M., Emsley, L.: Anisotropic collective
motion contributes to nuclear spin relaxation in crystalline proteins. Journal of
the American Chemical Society 132(4), 1246–1248 (2009)
12. Menzel, A.M., Ohta, T.: Soft deformable self-propelled particles. EPL (Europhysics
Letters) 99(5), 58001 (2012)
13. Michel, O.: Cyberbotics ltd. webots: professional mobile robot simulation. Inter-
national Journal of Advanced Robotic Systems 1(1), 5 (2004)
14. Mondada, F., Bonani, M., Raemy, X., Pugh, J., Cianci, C., Klaptocz, A., Magnenat,
S., Zufferey, J.C., Floreano, D., Martinoli, A.: The e-puck, a robot designed for
education in engineering. In: Proceedings of the 9th conference on autonomous
robot systems and competitions. vol. 1, pp. 59–65. IPCB: Instituto Polit´ecnico de
Castelo Branco (2009)
15. Moussa¨ıd, M., Helbing, D., Theraulaz, G.: How simple rules determine pedestrian
behavior and crowd disasters. Proceedings of the National Academy of Sciences
108(17), 6884–6888 (2011)
16. Pourtakdoust, S.H., Nobahari, H.: An extension of ant colony system to continuous
optimization problems. In: International Workshop on Ant Colony Optimization
and Swarm Intelligence. pp. 294–301. Springer (2004)
17. Romanczuk, P., Couzin, I.D., Schimansky-Geier, L.: Collective motion due to indi-
vidual escape and pursuit response. Physical Review Letters 102(1), 010602 (2009)
18. Schaller, V., Weber, C., Semmrich, C., Frey, E., Bausch, A.R.: Polar patterns of
driven filaments. Nature 467(7311), 73 (2010)
19. Siarry, P., Berthiau, G.: Fitting of tabu search to optimize functions of continuous
variables. International journal for numerical methods in engineering 40(13), 2449–
2457 (1997)
20. Sokolov, A., Aranson, I.S., Kessler, J.O., Goldstein, R.E.: Concentration depen-
dence of the collective dynamics of swimming bacteria. Physical review letters
98(15), 158102 (2007)
21. Suematsu, N.J., Nakata, S., Awazu, A., Nishimori, H.: Collective behavior of inan-
imate boats. Physical Review E 81(5), 056210 (2010)
22. Vicsek, T.: Fluctuations and scaling in biology. Oxford University Press New York
(2001)
23. Vicsek, T., Zafeiris, A.: Collective motion. Physics reports 517(3-4), 71–140 (2012)
24. Ward, A.J., Sumpter, D.J., Couzin, I.D., Hart, P.J., Krause, J.: Quorum decision-
making facilitates information transfer in fish shoals. Proceedings of the National
Academy of Sciences 105(19), 6948–6953 (2008)