Multiobjective Cat Swarm Optimization
Multiobjective Cat Swarm Optimization
a r t i c l e i n f o a b s t r a c t
Keywords: This paper proposes a new multiobjective evolutionary algorithm (MOEA) by extending the existing cat
Multiobjective problems swarm optimization (CSO). It finds the nondominated solutions along the search process using the con-
Evolutionary algorithm cept of Pareto dominance and uses an external archive for storing them. The performance of our proposed
Swarm optimization approach is demonstrated using standard test functions. A quantitative assessment of the proposed
Cat swarm optimization
approach and the sensitivity test of different parameters is carried out using several performance metrics.
Multiobjective cat swarm optimization
Pareto dominance
The simulation results reveal that the proposed approach can be a better candidate for solving multiob-
jective problems (MOPs).
Ó 2011 Elsevier Ltd. All rights reserved.
0957-4174/$ - see front matter Ó 2011 Elsevier Ltd. All rights reserved.
doi:10.1016/j.eswa.2011.08.157
P.M. Pradhan, G. Panda / Expert Systems with Applications 39 (2012) 2956–2964 2957
concept of external archive and Pareto dominance is incorporated solutions and the use of a niching or clustering technique. The
into MOCSO for dealing with the nondominated solutions. fitness of each individual is computed using the strengths of
external nondominated solutions that dominate it. An improved
version of this technique, called SPEA2, is dealt in Zitzler,
2. Literature review Laumanns, and Thiele (2001).
Pareto-archived evolutionary strategy (PAES) (Knowles &
The literature provides a large number of classical techniques Corne, 2000): This algorithm starts with a randomly initialized
for solving MOPs (Ehrgott, 2005; Goicoechea, Hansen, & Duckstein, solution. In each iteration one solution is generated using muta-
1982; Miettinen, 1999; Steuer, 1986). These techniques can be ap- tion. An external archive is maintained to collect non-
plied to a MOP if the objective functions and the constraints are dominated solutions. Each mutated individual is compared with
differentiable. Since they give a single solution from each run, sev- the elements of archive. An adaptive grid that divides the objec-
eral runs using different initial values are required to obtain the tive space in a recursive manner is used to maintain diversity of
solution set. solutions.
In mid-1980s, some evolutionary algorithms are proposed for Multiobjective particle swarm optimization (MOPSO) (Coello
MOO. In these algorithms, a part of the population is selected & Lechuga, 2002): This algorithm uses an external archive to
according to each individual objective. This method gives a set of store the nondominated solutions. A special mutation operator
solutions which dominate in one objective but inferior in other is also incorporated to enhance the exploration capability of the
objectives. Thus an important part of the solution space remains particles. MOPSO could able to cover the full range of Pareto
undiscovered. Schaffer (1985) has proposed the vector evaluated front uniformly with exceptionally low computational cost.
genetic algorithm (VEGA) in which the concept of dominance is
implemented for the evaluation and selection of individuals. The In recent past, a large number of variants of these MOEAs are
evolutionary multiobjective (EMO) schemes based on weighted- proposed. Adra and Fleming (2009) has proposed a diversity man-
sums have also been proposed in which overall performance of agement operator for MOEAs. The fuzzy clustering concept is intro-
an individual is calculated as a weighted-sum of individual perfor- duced in Agrawal, Panigrahi, and Tiwari (2008). Daneshyari and
mance in each of the objectives. Haleja and Lin (1992) have in- Yen (2008) have proposed a cultural framework to adapt the
cluded the weight vector in the solution genotype and allowed parameters of MOPSO.
multiple weight combinations to propagate through the popula- Section 3 provides an outline of CSO algorithm. The proposed
tion during evolution. MOCSO algorithm is developed in detail in Section 4. The perfor-
Unlike these early attempts, the majority of modern EMO ap- mance metrics used for analysis of results are discussed in Sec-
proaches are based on the concept of Pareto dominance. The con- tion 5. Simulation results of MOCSO in comparison to NSGA-II
cept of Pareto optimum was originally introduced by Edgeworth (Deb et al., 2000b) and MOPSO (Coello & Lechuga, 2002) are pre-
(1881) and later generalized by Pareto (1896). Goldberg (1989) sented in Section 6. The comparison of MOCSO with different vari-
has incorporated the concept of Pareto optimality into an evolu- ants of MOPSO and NSGA-II is not included in this paper. Section 7
tionary algorithm. He has suggested that the use of nondominated provides the sensitivity analysis for MOCSO algorithm. Finally
ranking and selection moves the individuals in a population to- some concluding remarks and future work are listed in Section 8.
wards the Pareto front. These ideas of Goldberg have helped the
researchers in developing new MOEAs. Some of these MOEAs are
3. Cat swarm optimization
briefly described next.
4.1. Algorithm 7. Check the termination condition, if satisfied, terminate the pro-
gram. Otherwise repeat steps 3 to 5.
The CSO algorithm reaches its optimal solution using two
groups of cats i.e. one group containing cats in seeking mode and 4.2. Seeking mode
other group containing cats in tracing mode. The two groups com-
bine to solve the optimization problem. A mixture ratio (MR) is The seeking mode corresponds to a global search technique in
used which defines the ratio of number of cats in tracing mode the search space of the optimization problem. A term used in this
to that of number of cats in seeking mode. The flowchart of the mode is seeking memory pool (SMP). It is the number of copies of a
MOCSO algorithm is shown in Fig. 1 and the steps of the algorithm cat produced in seeking mode. The steps involved in this mode are:
are outlined below.
1. Create T (=SMP) copies of j th cat i.e. Ykd where (1 6 k 6 T) and
1. Randomly initialize the position of cats in D-dimensional space (1 6 d 6 D). D is the total number of dimensions.
i.e. Xid representing position of ith cat in dth dimension. 2. Apply a mutation operator to Yk.
2. Randomly initialize the velocity of cats i.e. Vid. 3. Evaluate the fitness of all mutated copies.
3. According to MR, cats are randomly picked from the population 4. Update the contents of the archive with the position of those
and their flag is set to seeking mode, and for others the flag is mutated copies which represent nondominated solutions.
set to tracing mode. 5. Pick a candidate randomly from T copies and place it at the
4. Evaluate the fitness of each cat. position of jth cat.
5. Store the position of the cats representing non-dominated solu-
tions in the archive. 4.3. Tracing mode
6. If ith cat is in seeking mode, apply the cat to the seeking mode
process, otherwise apply it to the tracing mode process. The tracing mode corresponds to a local search technique for the
optimization problem. In this mode, the cat traces the target while
spending high energy. The rapid chase of the cat is mathematically
Create N cats modeled as a large change in its position. Define position and veloc-
ity of ith cat in the D-dimensional space as Xi = (Xi1, Xi2, . . . , XiD) and
Vi = (Vi1, Vi2, . . . , ViD) where d (1 6 d 6 D) represents the dimension.
Initialize the position, The global best position of the cat swarm is represented as
velocity of each cat Xg = (Xg1, Xg2, . . . , XgD). The steps involved in tracing mode are:
N 12 obtained with four standard test functions. In each case, the results
P 2
di obtained from 30 independent experiments are reported and the
i¼1
GD ¼ ð7Þ best average result with respect to each metric is shown in bold
N
font. The Pareto fronts shown for each function correspond to the
where N is the number of nondominated solutions found so far average result obtained with respect to generational distance.
and di is the Euclidean distance between the ith solution and
the nearest member of Pareto optimal set.
6.1. Test function 1
3. Maximum Pareto-optimal front error (MFE): Veldhuizen (1999)
also suggested another metric which measures the maximum
This function was proposed by Deb (2002)
value of di where di is the Euclidean distance between the ith
solution of nondominated front and the member of Pareto opti-
Minimize f1 ðx1 ; x2 Þ ¼ x1
mal set nearest to ith solution. This metric gives a broad idea on F: ð10Þ
Minimize f2 ðx1 ; x2 Þ ¼ gðx1 ; x2 Þ hðx1 ; x2 Þ
the closeness to the Pareto optimal front.
4. Spacing (S): This metric is proposed by Schott (1995). It is calcu- where
lated with a relative distance measure between consecutive
solutions in the obtained non-dominated front. gðx1 ; x2 Þ ¼ 11 þ x22 10 cosð2px2 Þ
vffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi
u qffiffiffiffiffiffiffiffiffiffiffiffiffi
u1 X N (
S¼t ðdi dÞ 2 ð8Þ 1 f1 ðx1 ;x2 Þ
gðx1 ;x2 Þ
; if f 1 ðx1 ; x2 Þ 6 gðx1 ; x2 Þ
N i¼1 hðx1 ; x2 Þ ¼
0; otherwise
where N is the number
i ofk nondominated solutions found so far
P and 0 6 x1 6 1, 30 6 x2 6 30.
and di ¼ mink M m¼1 fm fm ; k ¼ 1; . . . ; N and i – k. M is the total
number of objectives to be optimized. d is the mean of all d . In this example, the total number of fitness evaluations carried
i
An algorithm having a smaller S is better because the solutions out is 4000. The Pareto fronts produced by MOCSO, MOPSO and
are closer to uniformly spread. NSGA-II respectively for the first test function are shown in Figs. 2–
5. Spread (D): Deb, Agrawal, Pratab, and Meyarivan (2000a) sug- 4. MOCSO and MOPSO are able to cover the entire Pareto-front
gested a metric which measures the extent of spread in the whereas NSGA-II fails. The true Pareto front for the first test func-
obtained solution set. tion is shown as a continuous line in each figure.
Table 1 shows the comparison of different performance metrics
PM e PN
m¼1 dm þ i¼1 jdi dj among the three algorithms. It can be seen that MOCSO performs
D¼ PM e
ð9Þ
better with respect to all metrics except spacing in which MOPSO
m¼1 dm þ N d
performs slightly better but with a higher standard deviation. It
also shows that MOCSO requires slightly higher computation time
where N is the number of nondominated solutions found so far, than MOPSO for the first test function. This limitation of MOCSO is
M is the total number of objectives to be optimized, di is the dis- attributed to the inherent higher computation time requirement of
tance between neighboring solutions and d is the mean of all d .
i the CSO algorithm. In PSO the complete swarm of particles start
e
The parameter dm is the distance between the extreme solutions their flight with a global search and finish with a local search in
of Pareto optimal set and the obtained non-dominated solution the last iteration. All the particles undergo a similar process of
set corresponding to m-th objective function. velocity and position updation in each iteration. But in CSO, in each
iteration, a part of the population perform global search (seeking
Apart from these metrics, the computation time is also mea- mode) whereas the remaining perform local search (tracing mode).
sured to show the trade-off between the quality of solution and In the last iteration, most of the cats reach the final solution
computation time for our proposed approach. whereas a part of the population continue the global search
expecting a better solution. Since local and global search is carried
6. Simulation results and analysis
1.4
Simulation study is carried out in MATLAB to demonstrate the
Pareto Front
potentiality of MOCSO algorithm for function approximation task. MOCSO
To validate the performance of our approach, the results are com- 1.2
pared with those of other two initial versions of MOEAs i.e. MOPSO
and NSGA-II. After several experiments with different simulation 1
parameters, the following are found to be suitable for providing
the best performance. The initial population chosen for all the
0.8
three algorithms is 100. The simulation parameters used for
f2
0.4
This function was proposed by Kita, Yabumoto, Mori, and
Nishikawa (1996) and is used as a test function for constrained
optimization. In this case multiple objectives are optimized in
0.2
presence of some linear or nonlinear constraints. The presence of
constraints makes it difficult for MOEAs to converge to the true
0 Pareto-optimal front and also causes difficulty in obtaining an uni-
0 0.2 0.4 0.6 0.8 1
f1 form distribution of solutions along the nondominated front.
Hence the performance of a MOEA is mostly determined by its con-
Fig. 3. Pareto front produced by MOPSO for the first test function. straint handling ability.
This function is defined as
(
Maximize f1 ðx1 ; x2 Þ ¼ x21 þ x2
1.4 F: ð11Þ
Pareto Front
Maximize f2 ðx1 ; x2 Þ ¼ 12 x1 þ x2 þ 1
NSGA − II
1.2 subject to
1 13
1
x1 þ x2 60
6 2
1 15
x1 þ x2 60
0.8 2 2
5x1 þ x2 30 6 0
f2
0.6
and x1, x2 P 0. The range adopted for our simulation exercise is
0 6 x1, x2 6 7.
0.4 In this example, the total number of fitness evaluations carried
out is 5000. Figs. 5–7 show the Pareto fronts produced by MOCSO,
0.2 MOPSO and NSGA-II respectively for the second test function. In
each figure the true Pareto front is shown as a continuous line. It
can be seen that MOCSO and MOPSO cover the complete Pareto
0
0 0.2 0.4 0.6 0.8 1 front whereas NSGA-II is not able to cover some parts of the true
f Pareto front. MOCSO is able to obtain the nondominated solutions
1
having f1 < 4 whereas MOPSO is not able to go beyond this limit.
Fig. 4. Pareto front produced by NSGA-II for the first test function. Table 2 shows the comparison of different performance metrics
among the three algorithms. It can be seen that MOCSO performs
best with respect to set coverage metric, generational distance
Table 1
Performance metrics for the first test function.
8.8
Algorithm MOCSO MOPSO NSGA-II True Pareto Front
MOCSO
Set coverage metric 8.6
Average 0.138 0.231 0.4297
Std. Dev. 0.0276 0.0192 0.3641
8.4
Generational distance
Average 0.0007692 0.001 0.0265
Std. Dev. 0.00005743 0.0001905 0.0000407 8.2
f2
8.2
7. Sensitivity analysis
2
f
7.6
7.1. Experiment 1: Effect of variation in population size
7.4 The number of cats as well as the number of iterations are var-
−4 −2 0 2 4 6 8
f ied for maintaining the total number of fitness evaluations. The
1
variation in performance is measured with respect to different
Fig. 6. Pareto front produced by MOPSO for the second test function. metrics discussed in Section 5. Different runs using 5, 25, 50, 75
and 100 cats are carried out. The results are discussed below in
detail.
8.8
True Pareto Front 7.1.1. Test function 1
NSGA − II
8.6 Table 3 shows that a population size of 100 cats provided the
best average results with respect to most of the metrics. With re-
8.4 spect to set coverage metric, the use of 25 cats provided the best
average result, but with a higher standard deviation in comparison
to the result obtained using 100 cats.
8.2
f2
8
7.1.2. Test function 2
A population size of 75 cats provided best average results with
7.8 respect to generational distance, maximum Pareto-optimal front
error, spacing and spread as shown in Table 4. The use of 100 cats
7.6 provided the best average result with respect to set coverage
metric.
7.4
−4 −2 0 2 4 6 8
f
1
7.1.3. Observation
Fig. 7. Pareto front produced by NSGA-II for the second test function.
The use of 100 cats performed best with respect to most of the
metrics for the test functions 1, 2 and 3 while a population size of
75 cats provided the best average results for the second test func-
tion. Hence a population size of 100 cats is a reasonable choice for
Table 2 any optimization problem.
Performance metrics for the second test function.
Table 4 Table 6
Results of experiment 1 for the second test function. Results of experiment 2 for the second test function.
7.2. Experiment 2: Effect of variation in archive size for each nondominated vector increases. Hence search effort and
complexity, involved in the selection of a new member of archive,
In this experiment the size of the archive is varied while all increases with increase in the size of the archive. Keeping this in
other parameters are kept constant. Different runs with archive mind, a value of 100 is adopted for our simulation exercise.
size of 100, 150, 200, 250 and 300 are carried out.
7.3. Experiment 3: Effect of variation in SMP
7.2.1. Test function 1
Table 5 shows that the best average results with respect to max- In this experiment the value of SMP is varied while all other
imum Pareto-optimal front error and spread are obtained using an parameters are kept unchanged. Different runs using 10, 30, 50,
archive size of 100. A value of 300 provided better average results 70 and 100 as SMP are carried out.
with respect to set coverage metric, generational distance and
spacing. 7.3.1. Test function 1
Table 7 shows that a value of 10 provided the best average re-
7.2.2. Test function 2 sults with respect to all metrics.
As we can see in Table 6, a mixed set of results are obtained. An
archive size of 100 performed best with respect to spread. An ar- 7.3.2. Test function 2
chive size of 250 performed best with respect to set coverage met- In this case a mixed set of results are obtained. As we can see in
ric, generational distance, maximum Pareto-optimal front error Table 8, a value of 10 performed best with respect to set coverage
and spacing. metric and spread. A value of 50 provided best average result with
respect to spacing and a value of 100 performed best with respect
7.2.3. Observation to generational distance and maximum Pareto-optimal front error.
It is seen that values of 100 and 300 for the size of archive pro- We can note that for those metrics where a value of 100 performed
vided best average results for different performance metrics. With best, a value of 10 provided competitive results.
increase in the size of archive, more number of nondominated
solutions enter into the archive. In each iteration the nondominat- 7.3.3. Observation
ed vectors are compared with all members of the archive. With in- It is seen that a value of 10 for SMP provided best average re-
crease in the archive size, the number of comparisons carried out sults for most of the performance metrics in test functions 1 and
Table 5 Table 7
Results of experiment 2 for the first test function. Results of experiment 3 for the first test function.
Veldhuizen, D. V. (1999). Multiobjective evolutionary algorithms: Classifications, EUROGEN 2001 – evolutionary methods for design, optimisation and control
analyses, and new innovations. Ph.D thesis. with applications to industrial problems, Barcelona, Spain
Zitzler, E. (1999). Evolutionary algorithms for multiobjective optimization. Ph.D Zitzler, E., & Thiele, L. (1999). Multiobjective evolutionary algorithms: A
thesis. comparative case study and the strength Pareto approach. IEEE Transactions
Zitzler, E., Laumanns, M., & Thiele, L. (2001). SPEA2: Improving the strength Pareto on Evolutionary Computation, Vol. 3, 257–271.
evolutionary algorithm for multiobjective optimization. In Proceedings of the