A Novel Multi-Objective Velocity-Free Boolean Particle Swarm Optimization
guided by cognitive (via a personal best position vector,
pi
and social (via a global best,
g
) influences, and defined, for
an N-dimensional search space, by the velocity and position update rules
vt+1
i=wvt
i+c1r1(pt
i−xt
i) + c2r2(gt−xt
i),(1)
xt+1
i=xt
i+vt+1
i,(2)
in which
pt
i
is the best parameter position found at time
t
by particle
i
,
gt
the best position found by any particle,
c1
and
c2
are positive constants most often set to 2.0 [
8
],
r1
and
r2
are random numbers
∈[0,1]
, and
w
is a usually
iteration-decreasing “inertia weight” that controls the extent to which new search directions are pursued. It is also
usually recommended to clip the velocity to a maximum magnitude
Vmax
so that the search remains within useful
bounds.
The update equations (1), (2) assume a continuous search space. However, Kennedy and Eberhart also proposed a
binary PSO (BPSO) [
9
], in which to generate an updated binary position, velocities are transformed into
[0,1]
by a
sigmoid transfer function
sig()
, with
P rob(xij = 1) = sig(vij )
. The vast majority of later BPSOs have retained the
concept of velocity, as well as the use of a transfer function to generate the velocity update. However, simpler BPSOs,
without a velocity update rule, have proven to be equally, if not more, effective [
3
] [
7
], a central theme of this current
work.
An alternative to the use of BPSOs in a discrete space is the boolean PSO of [
6
], which eliminates problems such as the
velocity, in BPSO, not being associated with the likelihood of a change in position. Boolean PSO considers all variables
to be binary and all arithmetic operators to be logical operators, with velocity and position update equations
vt+1
i=w.vt
i+r1.(pt
i⊕xt
i) + r2.(gt⊕xt
i),(3)
xt+1
i=xt
i⊕vt+1
i,(4)
where “.” is the AND operator, “+” the OR operator, "
⊕
" the XOR operator (all operators being applied bitwise),
and where
P rob(r1= 1) = ρ1
,
P rob(r2= 1) = ρ2
,
P rob(w= 1) = ω
. We note that
Vmax
is now defined as the
maximum number of velocity bits allowed to flip from 0 to 1 or 1 to 0.
There have been a number of applications of boolean single-objective PSO in electrical engineering that demonstrate its
simplicity and computational efficiency, such as its application to antenna design in [
6
] and [
10
]. Outside of electrical
engineering, a single-objective boolean PSO was used in [
11
] for feature selection, with encouraging results that suggest
a multi-objective variant, such as we propose here, might be an effective way forward in this area.
2.2 Multi-objective optimization
Unlike single-objective problems, multi-objective problems have conflicting objectives [
12
]. It is therefore necessary to
obtain a non-dominated solution set, based on Pareto dominance, because no single solution can be considered ideal
with respect to all objectives. The non-dominated set of the entire solution space is termed the Pareto-optimal set, and
the boundary of this region is termed the Pareto-optimal front. Multi-objective PSO (MOPSO) was first proposed in
[
13
], using Pareto dominance during the fitness evaluation stage. MOPSO then stores the non-dominated solutions
produced by each particle in an external global best repository, the repository helping each particle to select a global
best guidance during the search process.
3 Benchmarked algorithms
This section will briefly describe each of the algorithms used for benchmarking, summarized in Table 1. We note that
examples of binary MOPSOs are relatively few, and that examples of boolean MOPSOs are limited to the current work.
Hence, some benchmarks will be first uses of the underlying single-objective PSO in a multi-objective setting.
3.1 Boolean benchmark
As previously noted, there have been no previous examples of a boolean multi-objective PSO in the literature. However,
it is possible to extend a single-objective boolean algorithm to the multi-objective domain. For this purpose, we choose
2