An Algorithm Based On The Bacterial
An Algorithm Based On The Bacterial
net/publication/325797128
CITATION READS
1 86
3 authors, including:
All content following this page was uploaded by M. Arbulu on 02 August 2018.
1 Introduction
safe route from the current position of the robot vehicle to the final target posi-
tion, intelligently dodging obstacles in the environment, and according to some
motion policy that contemplates performance conditions and safe movement.
Path planning problems can be divided into two categories according to the
characteristics of the environment: static environments (do not change during
robot navigation) and dynamic environments (change during navigation task).
The majority of AGV’s researches contemplate static and generally observ-
able environments, which allows the mapping of the environment and the design
of the route in an off-line way, to then instruct the movement to the robots [5].
However, in real industrial environments the environments are usually dynamic,
with continuous movements of people and equipment. There are different docu-
mented cases in which biological systems efficiently solve this type of problems,
one of these schemes is observed in the interaction between bacteria [9,11].
Self-assembly processes are responsible for the generation of order in nature
[4]. They involve components at different scales, such as molecules, cells, organ-
isms, communities, ecosystems and weather systems. These interactions between
elements of relatively simple structure can be analyzed, modeled and replicated
in the design of artificial systems. One of these systems is the bacterial com-
munities. As biological organisms bacteria have a very simple structure, their
behavior can be described from local interactions between organisms and with
the environment, and as a system they have proven to be very successful in very
adverse conditions [1].
In the biological model, the cell-cell communication is performed through the
exchange of chemical molecules called auto inducers. This mechanism, called
Quorum Sensing (QS), allows bacteria to monitor their environment for the
presence of other bacteria, and thus, to respond to fluctuations in the number
and/or species present. That means, coordinate collective behavior in bacteria
under environment conditions [7].
During operation of this mechanism, the concentration of the signal molecule
reflects the number of bacterial cells in a particular area. The detection of a
threshold concentration, a molecular signal, indicates that the population has
reached the quorum, i.e., is ready to perform a specific collective behavior. This
means that QS is a mechanism used by bacteria to activate phenotypic changes
in the population, i.e., to coordinate gene-expression.
This research proposes a different design scheme inspired by this mecha-
nism of gene expression control, mechanism which is dependent on cell density,
and that allows to coordinate the navigation of a swarm of robots by means of
indications in the environment (landmarks), and local communication between
robots. The tasks to be carried out by robots are modeled as behaviours that are
expressed by the organism according to population density and a control policy.
That is, robots contain code equivalent to gene expression, which is responsible
for social behaviors of independent cells using extracellular signals.
The paper is organized as follows. In Sect. 2 presents a description of the
problem. Section 3 describes the proposed strategy and a general design outline
306 F. Martı́nez et al.
for basic navigation tasks. Section 4 introduces some results obtained with the
proposed strategy. Finally, conclusion and discussion are presented in Sect. 5.
2 Problem Statement
The multi-agent model adopted for artificial systems design is composed of a set
of artificial bacteria or agents. This set of agents, and their interactions, reflect
the dynamics that will solve the problems. All agents are identical in design.
Nevertheless, to solve tasks, each of them undergoes certain behavior inside the
system along the time.
A bacterium is a pair
V = (f, p) (1)
W0 = {V1 , V2 , V3 , · · · , Vm } (3)
Fig. 1. System and agents with three different behaviors. (a) System composed of a
group of agents (bacteria) in a three-stage process (a = 3), (b) system agents running
behavior l1 , (c) system agents running behavior l2 , and (d) system agents running
behavior l3 .
xi i = 1, 2, 3, · · · , b (5)
Hp = {X p , Lp }
X p ⊂ Rb (6)
l a ⊂ Lp
The algorithm does not intend to explicitly define the position of the robots.
On the contrary, it looks to abstract the information from the environment to
reduce the complexity in the design of the path. These features ensure navigation
in environments with obstacles, even when they are in motion. It also eliminates
the problem of impossible movements for the robot, since the dynamics of the
robot is not part of the model. This allows the normal differences between robots,
and even the use of radically different robots. Also, the problem of controller
design is independent of the number of robots, which promises scalability to
large groups and system functionality against the failure of a few of them.
3 Methodology
The research proposes the system as a three-stage process of individual behav-
iors. These three basic behaviors are: (1) Reproduction, (2) Exploration, and (3)
Virulence.
The first behavior, Reproduction, allows to activate the robot in the envi-
ronment. The last behavior, Virulence, must be the robot’s final behavior when
it finds the target area. The second behavior, Exploration, should help to find
potential grouping areas. The principle of the algorithm based on QS is the
grouping of agents. Agents are grouped into different areas of the environment
according to local readings and their genome (internal code) that follows some
search criteria. The areas with the highest number of agents must show viru-
lence and will correspond navigation task solution. These population sizes are
then the most important variables in the model.
The population size of each of these fractions is characterized by a continuous
variable in the following way:
When agents begin to explore and activate their virulence, they begin to
group in different areas of the environment (a total of b areas). This increases
the number of system variables, where i indicates the grouping area of the agents.
When the agents are reproducing there is no grouping.
The reproduction is the first behavior for all bacteria. After an artificial agent
is enabled on the system (R), it begins to take local information but without
activating its virulence (Xi ), to finally activate its virulence when the quorum
is fulfilled (Zi ). The activation or virulence of agents that are exploring the
environment starts when Zi = T , the quorum threshold. Both explorers and
virulent can switch to new areas of the environment if the local information
indicates that they are in areas of higher performance (according to the task).
This is the most important part of the process, because it gives the opportunity
to each agent individually to find the best solution.
This parallel navigation structure allows that the explorers consider different
areas of the environment before gathering around some of them. Thus, when a
quorum is reached, the agents begin to become virulent according to the best
option for each of them. The flow chart of Fig. 3 shows the rules by which agents
interact with each other and with the environment to meet the goal.
4 Results
The strategy was evaluated in different simulations and real platforms. In a
first simulated case we designed a simple navigation task. Let us think in an
environment with four high performance areas (for example, meeting areas with
some interesting variable: temperature, noise, light, humidity, ...) denoted by
the points p1 , p2 , p3 and p4 . Among these points, we will assume that p1 , p2
and p4 have a similar performance (local maxima, the variable is higher than
the average values of the environment, but not the maximum), while point p3
has a superior performance (global maximum, the variable has the maximum
value in the environment). Under these conditions, we expect that the agents
are distributed in the environment and navigate initially grouped around these
four points. But then, they must migrate to the point of higher performance p3 .
We assume for simplicity that for the initial selection of the four areas do
not exist favoritism criteria, i.e.:
μ1 = μ2 = μ3 = μ4 = μ
(7)
λ1 = λ2 = λ3 = λ4 = λ
Ṙ = −4μR
Ẋ1 = μR + λZ1 Θ (R) Θ (T − Z1 ) − ρ12 X1 + ρ21 X2 − k1 X1
Ẋ2 = μR + λZ2 Θ (R) Θ (T − Z2 ) − ρ23 X2 + ρ32 X3 + ρ12 X1 − ρ21 X2 − k2 X2
Ẋ3 = μR + λZ3 Θ (R) Θ (T − Z3 ) − ρ34 X3 + ρ43 X4 + ρ23 X2 − ρ32 X3 − k3 X3
Ẋ4 = μR + λZ4 Θ (R) Θ (T − Z4 ) + ρ34 X3 − ρ43 X4 − k4 X4 (8)
˙
Z1 = k1 X1 − ρ12 Z1 + ρ21 Z2 − λZ1 θ (R) Θ (T − Z1 )
Z˙2 = k2 X2 − ρ23 Z2 + ρ32 Z3 + ρ12 Z1 − ρ21 Z2 − λZ2 θ (R) Θ (T − Z2 )
Z˙3 = k3 X3 − ρ34 Z3 + ρ43 Z4 + ρ23 Z2 − ρ32 Z3 − λZ3 Θ (R) θ (T − Z3 )
Z˙4 = k4 X4 + ρ34 Z3 − ρ43 Z4 − λZ4 Θ (R) Θ (T − Z4 )
Each agent must determine the value of the coefficients from local interactions
between agents and with the environment. For this test will be assumed the
following values:
These values agree with the characteristics described for this example (higher
value for ρ23 , ρ43 and k3 ). Figures 4, 5 and 6 show the results. We simulate the
system with an initial population of 300 agents in reproduction and a quorum
An Algorithm Based on the Bacterial Swarm 311
250
200
Number of agents
150
100
50
0
0 50 100 150 200 250 300 350 400
t [min]
Fig. 4. Macro model simulation for a simple grouping task (T = 10) - Reproduction.
50
40
Number of agents
Number of agents
40
30
30
20
20
10
10
0 0
0 100 200 300 400 0 100 200 300 400
t [min] t [min]
50
40
Number of agents
Number of agents
40
30
30
20
20
10
10
0 0
0 100 200 300 400 0 100 200 300 400
t [min] t [min]
Fig. 5. Macro model simulation for a simple grouping task (T = 10) - Exploration.
(Color figure online)
60
20
Number of agents
Number of agents
50
40 15
30 10
20
5
10
0 0
0 100 200 300 400 0 100 200 300 400
t [min] t [min]
20
150
Number of agents
Number of agents
15
100
10
50
5
0 0
0 100 200 300 400 0 100 200 300 400
t [min] t [min]
Fig. 6. Macro model simulation for a simple grouping task (T = 10) - Virulence. (Color
figure online)
and area four at 73 min). Upon reaching a population of 10 agents, in four cases
there was an increase in the rate of population growth. With a quorum threshold
of T = 60, only area three activates the QS at 137 min. In the latter case, the
population of virulent agents in two and four areas never exceeds 10 agents, and
in the area one reaches up to 18 agents.
In experimental tests we evaluate the behaviors on a 45 cm × 61 cm robot
equipped with a set of nine infrared sensors (each with a range of 0.2 to 0.8 m).
From the signals of the infra-red sensors the robot determines the proximity to
other robots or obstacles in the environment. Once this information is identified,
the robot establishes its behavior, following the navigation policies of the model.
5 Conclusions
In this paper we propose a navigation scheme for robot swarms that mimics the
behavior of bacterial QS. The navigation scheme is supported in robot grouping,
which can be oriented to specific navigation tasks through landmarks in the envi-
ronment that the robot can identify locally. Grouping, and therefore navigation
is accelerated according to the number of agents in an area. In the cases ana-
lyzed, it is clear how the size of the quorum threshold affects QS. The variation
in the value of T directly affects the characteristics of the population growth in
each of the areas. Small values of T allow virulent agents to reach the QS and
increase their bacterial population in local minima, but they do not exceed the
local maximum. In this case, the grouping is also faster. With large values of T ,
the QS tends to be expressed only in the global maximum, but the process takes
a little longer. In both cases, the QS helps to find the global maximum (more
virulent bacteria gather at the area of higher performance).
An Algorithm Based on the Bacterial Swarm 313
References
1. Adamou, A., Gueroui, A., Labraoui, N., Omer, B., Titouna, C., Damakoa, I.: Adap-
tive scheme for collaborative mobile sensing in wireless sensor networks: bacterial
foraging optimization approach. In: IEEE 27th Annual Inter. Symposium on Per-
sonal, Indoor, and Mobile Radio Communications (PIMRC 2016), pp. 1–6 (2016)
2. Hazza, M., Nabila, A., Yulian, E., Hatem, A.: Empirical study on AGV guiding in
indoor manufacturing system using color sensor. In: 5th International Symposium
on Computational and Business Intelligence (ISCBI 2017), pp. 125–128 (2017)
3. Iwamura, K., Chen, J., Tanimizu, Y., Sugimura, N.: A study on transportation
processes of autonomous distributed AGV based on social force model. In: Inter-
national Symposium on Flexible Automation (ISFA), pp. 206–209 (2016)
4. Jones, G., King, P., Morgan, H., Planque, M., Zauner, K.: Autonomous droplet
architectures. Artif. Life 21(2), 195–204 (2015)
5. Li, G., Yang, Y., Zhao, F., Zhou, Y.: An improved differential evolution based
artificial fish swarm algorithm and its application to AGV path planning problems.
In: 36th Chinese Control Conference (CCC 2017), pp. 2556–2561 (2017)
6. Martı́nez, F., Acero, D.: Robótica Autónoma: Acercamientos a algunos proble-
mas centrales. CIDC, Distrital University Francisco José de Caldas (2015). ISBN
9789588897561
7. Martı́nez, F.H., Delgado, J.A.: Hardware emulation of bacterial quorum sensing.
In: Huang, D.-S., Zhao, Z., Bevilacqua, V., Figueroa, J.C. (eds.) ICIC 2010. LNCS,
vol. 6215, pp. 329–336. Springer, Heidelberg (2010). https://doi.org/10.1007/978-
3-642-14922-1 41
8. Oleari, F., Magnani, M., Ronzoni, D., Sabattini, L., Cardarelli, E., Digani, V., Sec-
chi, C., Fantuzzi, C.: Improving AGV systems: integration of advanced sensing and
control technologies. In: IEEE International Conference on Intelligent Computer
Communication and Processing (ICCP 2015), pp. 257–262 (2015)
9. Padilha, F., Subtil, M., Fabro, J., Schneider, A.: Trajectory planning in dynamic
environments for an industrial AGV, integrated with fuzzy obstacle avoidance. In:
12th Latin American Robotics Symposium (LARS) and 3rd Brazilian Symposium
on Robotics (LARS-SBR 2015), pp. 347–352 (2015)
10. Pia, M., Marcello, A., Pedroncelli, G., Ukovich, W.: A software tool for the decen-
tralized control of agv systems. In: International Conference on Control, Decision
and Information Technologies (CoDIT 2016), pp. 478–483 (20016)
11. Rendón, A.: Evaluación de estrategia de navegación autónoma basada en compor-
tamiento reactivo para plataformas robóticas móviles. Tekhnê 12(2), 75–82 (2015)