3.1 Chemotaxis
Chemotaxis simulates the foraging movement of
E.coli bacteria through tumbling and swimming. To
absorb more nutrients, each bacterium tries to find
food in two ways: tumbling and swimming. A bac-
terium tumbles in a random direction to exploratively
search for food. If the food is rich in the selected di-
rection, the bacterium will swim along this direction,
till the food gets bad or the bacterium has swum the
fixed steps.
A random direction is a random unit vector in n-
dimensional space. In the original BFO algorithm, it
is very cumbersome to calculate a random unit vector
for each bacterium in every chemotaxis. In the pro-
posed MABFO algorithm, we use a simple unit vec-
tor e
m
with n dimensions as the chemotaxis direction,
in which only one component randomly selected (i.e.
the mth component) is either -1 or 1 and all the others
are 0. The method of updating a solution is given as
follows:
x
i
( j + 1, k, l) = x
i
( j,k,l) + c(i) e
m
, (6)
where x
i
( j,k,l) represents the ith bacterium at jth
chemotaxis, kth reproduction, lth elimination-and-
dispersal step. c(i) is the step size along the direc-
tion e
m
. The original BFO algorithm uses a fixed
step size which would lead to bad convergence per-
formances (S Dasgipta, S Das, A Abraham and A
Biswas, 2009). In the proposed MABFO algorithm, a
dynamic step size is adopted and is given as follows:
c(i) = r (x
i
′
m
( j,k,l) − x
i
m
( j,k,l)), (7)
where r is a random number uniformly distributed
between −1 and 1, x
i
′
m
( j,k,l) denotes the mth com-
ponent of another different bacterium i
′
which is se-
lected randomly in P.
When bacterium i carries out a chemotaxis oper-
ator, it first generates a direction e
m
and a step size
c(i) as described above, and then swims a step along
the direction e
m
according to Eq.(6). If the new solu-
tion x
i
( j+1,k,l) dominates the old solution x
i
( j,k,l),
bacterium i will swim another step in the direction e
m
according to Eq.(6). This process is continued until
bacterium i has swum the maximum steps N
s
or the
obtained new solution x
i
( j + 1,k,l) is dominated by
the old solution x
i
( j,k,l). Such chemotaxis mecha-
nism is an important driving force for locally opti-
mizing each candidate solution, where each bacterium
ties its best to search for non-dominated solutions.
3.2 Archive Updating
The main goal of the external archive is to keep a his-
torical record of the nondominated solutions obtained
in the search process. In MABFO, we use an exter-
nal archive A with a fixed number N2. Whenever the
populationP carries out a chemotaxis process, we will
reselect all the nondominated solutions from the joint
population of P and A, and then update archive A by
copying them to A. If the size of A exceeds N2, an
archive truncation procedure is invoked, which itera-
tively remove individuals from A based on the crowd-
ing distance until the size of A is N2. At each itera-
tion, the individual which has the minimum distance
to another individual is removed according to the for-
mula:
dis(x
i
) < dis(x
j
) ⇔
∀ 0 < k < |Q| : σ
k
i
= σ
k
j
∨
∃ 0 < k < |Q| : [(∀0 < l < k : σ
l
i
= σ
l
j
) ∧ σ
k
i
< σ
k
j
]
(8)
where Q is a group of individuals, |Q| denotes the size
of Q and here Q = A. σ
k
i
is the distance of ith solution
x
i
to its kth nearest neighbor in Q.
The external archive A promises not to miss the
nondominated solutions found in the search process.
The crowding distance eliminates the individuals in
dense area, which can ensure the obtained solutions
distributed evenly. The using of external archive
and crowding distance is beneficial to find well-
distributed Pareto solutions.
3.3 Conjugation
Conjugation, as well as chemotaxis, is an important
biological behavior of bacteria. Bacterial conjugation
is the transfer of part of plasmid (genetic material)
from donor bacteria to recipient bacteria by directly
physical contact and is often regarded as the sex-
ual reproduction or mating between bacteria. Some
researchers have taken the bacterial conjugation as
a message passaging mechanism in their work (C
Perales-Grav´an, R Lahoz-Beltra, 2008; A Balassub-
ramaniam, Memeber, IEEE, P Lio, 2013).
In this paper, we also simulate the bacterial con-
jugation behavior as an information exchange mech-
anism between bacteria in population P and archive
A. To model this biological behavior, we first define
conjugation length L (L < n) measured by the number
of decision variables. Then each bacterium i in pop-
ulation P will randomly select another bacterium i
′
in
A and a conjugation point Bt (Bt < n − L) to take a
conjugation step. In this step, the way of updating the
solution is given as follows:
x
i
new
( j,k,l) = x
i
( j,k,l) + ω ◦ (x
i
′
( j,k,l) − x
i
( j,k,l)),
(9)
where x
i
new
( j,k,l) denotes the new solution after bac-
terium i performing the conjugation operator. ω is