1

A Cooperative Framework for
Fireworks Algorithm

arXiv:1505.00075v1 [] 1 May 2015

Shaoqiu Zheng, Student Member, IEEE, Junzhi Li, Student Member, IEEE, Andreas Janecek,
and Ying Tan, Senior Member, IEEE
Abstract—This paper presents a cooperative framework for fireworks algorithm (CoFFWA). A detailed analysis of existing fireworks
algorithm (FWA) and its recently developed variants has revealed that (i) the selection strategy lead to the contribution of the firework
with the best fitness (core firework) for the optimization overwhelms the contributions of the rest of fireworks (non-core fireworks) in the
explosion operator, (ii) the Gaussian mutation operator is not as effective as it is designed to be. To overcome these limitations, the
CoFFWA is proposed, which can greatly enhance the exploitation ability of non-core fireworks by using independent selection operator
and increase the exploration capacity by crowdness-avoiding cooperative strategy among the fireworks. Experimental results on the
CEC2013 benchmark functions suggest that CoFFWA outperforms the state-of-the-art FWA variants, artificial bee colony, differential
evolution, the standard particle swarm optimization (SPSO) in 2007 and the most recent SPSO in 2011 in term of convergence
performance.
Index Terms—Swarm Intelligence, Fireworks Algorithm, Cooperative Strategy, Explosion Amplitude

F

1

I NTRODUCTION

In the past two decades, many stochastic and population-based
swarm intelligence (SI) algorithms have been proposed. These
algorithms have shown great success in dealing with optimization
problems in various application fields. SI refers to the ability
presented by the swarm behavior to solve problems through
the direct or indirect interaction among the agents with their
environment [1]. Usually, SI system consists of a population of
decentralized and simple natural or artificial agents, the iteration
among the agents lead to the emergence of intelligent ability [2].
By the observing and modeling of the cooperative swarm behavior
of living creatures, artificial systems and the physical properties
of non-living objects, researchers are trying to understand those
mechanisms and use them to design new algorithms.
The famous SI algorithms comprise ant colony optimization
(ACO) by modeling the cooperative behavior among ant colony
through environment to search for the shortest path from the
colony to the food [3], and particle swarm optimization (PSO) by
mimicking the aggregating motion of a flock of birds for searching
for food [4].
Recently, the great successes of ACO and PSO for solving
optimization problems greatly push the SI developments forward.
Algorithms inspired by collective biologic behavior of bee, glowworm, fish school, firefly, cuckoo, krill herd [5] [6] [7] [8] [9] [10]
[11] [12] [13] [14] [15] [16] and collective artificial system are
proposed [17] [18] [19]. See [20] for a detailed review of recently
developed computational intelligence algorithms.
•

•
•

Shaoqiu Zheng, Junzhi Li and Ying Tan are with the Department of
Machine Intelligence, School of Electronics Engineering and Computer
Science, Peking University, Key Laboratory of Machine Perception (Ministry of Education), Peking University, Beijing,100871, P.R. China. (email:
{zhengshaoqiu, ljz, ytan}@pku.edu.cn).
Andreas Janecek is with University of Vienna, Research Group Theory and Applications of Algorithms, 1090 Vienna, Austria (email: andreas.janecek@univie.ac.at )
Ying Tan is the corresponding author.

Manuscript

(a) fireworks explosion

(b) solution search

Fig. 1. Comparison between fireworks explosion and solution search for
optimization problems.

Inspired by the phenomenon of fireworks explosion in
the night sky, a new SI algorithm called fireworks algorithm
(FWA) [19] has been proposed recently. In FWA, each firework
in the fireworks population performs a local search around its
position, and cooperates with each other for the global search.
The explosion of fireworks can be seen as the search of solutions
in the feasible range (see Fig. 1). Since FWA has shown success
in solving practical optimization problems, it is believed that FWA
is efficient and worth for further study.

1.1

Related work

Related work based on FWA can be grouped into three categories,
theory analysis, algorithm developments and applications.
1.1.1

Theory analysis

In [21], Liu presented a theory analysis for FWA, and proved
that FWA is an absorbing Markov stochastic process. Moreover,
the convergence property and time complexity of FWA was also
discussed.

2

1.1.2 Algorithm developments
Most studies focussed on algorithmic improvements of single
objective FWA developments, multi-objective FWA developments
and parallel FWA implementations.
In [22], Pei et al. investigated the influences of approximation
landscape approaches on accelerating FWA by introducing the
elite point of the approximation landscape into the fireworks
swarm. Additionally, Liu et al. [23] investigated the influences
on FWA when using new methods for computing the explosion
amplitude and the number of explosion sparks while still maintaining the core idea that fireworks with smaller fitness will have
more sparks and smaller explosion amplitudes.
The first comprehensive study of the operators of FWA can be
found in [24], where Zheng S. et al. proposed the enhanced fireworks algorithm (EFWA), which incorporates five modifications
compared to conventional FWA: (i) a new minimal explosion amplitude check, (ii) a new operator for generating explosion sparks,
(iii) a new mapping strategy for sparks which are out of the search
space, (iv ) a new operator for generating Gaussian sparks, and (v )
a new operator for selecting the population for the next iteration.
The limitations in conventional FWA are presented and several
improvements are proposed to deal with these limitations.
Based on the work of EFWA, Zheng S. et al. proposed the
dynamic search fireworks algorithm (dynFWA) [25]. In dynFWA,
the firework with minimal fitness in each iteration is called core
firework and uses the dynamic explosion amplitude strategy while
for the rest of fireworks, they use the same strategies as in EFWA
(see 3.2.1 for the details of dynFWA). In addition, Li [26] proposed
an adaptive version of FWA (AFWA), in which the explosion
amplitude of the firework with minimal fitness is calculated as the
infinite norm distance between the firework and a certain candidate
from the explosion sparks (see 3.2.2 for the details of AFWA).
Additionally, a number of hybrid algorithms between FWA
and other algorithms have been proposed. Gao et al. [27] proposed
cultural fireworks algorithm which is the hybrid between cultural
algorithm and FWA. Zheng Y. et al. [28] proposed a hybrid algorithm FWA-DE of FWA and differential evolution (DE). Zhang et
al. [29] proposed a hybrid biogeography-based optimization with
fireworks algorithm while Yu et al. [30] also presented a hybrid
algorithm between DE with FWA.
For multi-objective FWA (MOFWA), Zheng Y.et al. proposed
the framework of MOFWA which uses the fitness assignment
strategy from [31] and minimal pairwise distance metrics in [32].
For Parallel FWA implementation, Ding et al. proposed GPUFWA [33], a GPU implementation which maintains a high speedup
value.
1.1.3 Applications
For the practical applications, FWA has been applied in FIR and
IIR digital filters design [27], the calculation of non-negative
matrix factorization (NMF) [34]–[36], spam detection [37], image
recognition [38], power system reconfiguration scheme [39], mass
minimisation of trusses [40] [41], non-linear equation set [42] and
0/1 knapsack problems [43].
All above applications indicate that FWA is one promising SI
algorithm and has a profound value and wide future.
1.2

Contributions

The main contributions of this paper are: (i) an evaluation of
the cooperative strategies among the fireworks of EFWA, dyn-

FWA and AFWA is conducted. (ii) the proposal of the cooperative framework for FWA with independent selection method
and crowdness-avoiding cooperative strategy. In the cooperative
framework, the independent selection method will ensure the
information inheritance and improve the local search ability for
each firework while the cooperative strategy can enhance the
global search ability of the fireworks swarm. (iii) a comparison of
the two different explosion amplitude strategies in dynFWA and
AFWA, as well as the relationship between them are presented.
The remainder of this paper is organized as follows: Section 2 introduces the framework of FWA and EFWA, and gives
a comparison between FWA with other meta-heuristic algorithms.
Section 3 describes two state-of-the-art improvement works on
FWA, i.e dynFWA and AFWA, which focus on the explosion
amplitude strategies. In Section 4, we present a comprehensive
analysis of cooperative strategies in conventional FWA framework.
To overcome the limitations, the new cooperative framework of
FWA is finally proposed. To validate the ideas, several experiments
are conducted in Section 5 and 6. Finally, concluding remarks are
given in Section 7.

2
2.1

T HE F RAMEWORK OF FWA AND EFWA
General Framework

A principal FWA works as follows: At first, N fireworks are
initialized randomly, and their quality (i.e., fitness) is evaluated
in order to determine their explosion amplitude (i.e., the explosion
range) and the number of sparks for each firework. Subsequently,
the fireworks explode and generate different types of sparks
within their local space. In order to ensure diversity and balance
the global and local search, the explosion amplitude and the
population of the newly generated explosion sparks differ among
the fireworks. A firework with better fitness can generate a larger
population of explosion sparks within a smaller range, i.e., with a
small explosion amplitude. Contrary, fireworks with lower fitness
can only generate a smaller population within a larger range, i.e.,
with higher explosion amplitude. This technique allows to balance
between exploration and exploitation capabilities of the algorithm.
Exploration refers to the ability of the algorithm to explore various
regions of the search space in order to locate promising good solutions, while exploitation refers to the ability to conduct a thorough
search within a smaller area recognized as promising in order to
find the optimal solution [44]. Exploration is achieved by fireworks
with large explosion amplitudes (i.e., lower fitness), since they
have the capability to escape from local minima. Exploitation is
achieved by fireworks with small explosion amplitudes (i.e, high
fitness), since they reinforce the local search ability in promising
areas. After the explosion, another type of sparks are generated
based on a Gaussian mutation of randomly selected fireworks.
The idea behind this is to further ensure diversity of the swarm.
In order to improve readability we assign new notations to the
two distinct types of sparks: “explosion sparks” are generated
by the explosion operator, and “Gaussian sparks” are generated
by Gaussian mutation operator. To retain the information of the
fireworks swarm, and pass it to the next iteration, a subset of
the whole population is selected at the end of each iteration.
The algorithm continues until the terminal criterion is met. The
framework of (E)FWA is given in Alg. 1.

3

Algorithm 1 – The general structure of (E)FWA.
1: Initialize N fireworks and set the constant parameters
2: repeat
3:
4:
5:
6:
7:

// Explosion operator
Calculate the explosion amplitudes
Calculate the numbers of explosion sparks
Generate “explosion sparks” (check if out-of-bounds)
Evaluate the fitness

8:
9:
10:

// Gaussian mutation operator
Generate “Gaussian sparks” (check if out-of-bounds)
Evaluate the fitness

11:
12:

// Selection strategy
Select fireworks for the next iteration

where, t refers to the number of function evaluation at the
beginning of the current iteration, and Emax is the maximum
number of evaluations. Ainit and Afinal are the initial and final
minimum explosion amplitude, respectively.
2.2.2

Now, each firework explodes and creates a different number of
explosion sparks within a given range of its current location. For
each of the si explosion sparks of each firework Xi , Algorithm 2
is performed once.
Algorithm 2 – Generating one “explosion spark” in EFWA
1: Initialize location of “explosion sparks”: x̂i = Xi
2: Set z k = round(rand(0, 1)), k = 1, 2, ..., d.
3: for each dimension of x̂i , where z k == 1 do
4:
Calculate offset displacement: 4X k = Ai × rand(−1, 1)

13: until termination criterion is met.

2.2

Generating explosion sparks

Explosion Operator

5:
x̂ik = x̂ik + 4X k
6:
if x̂ik is out of bounds then
7:
randomly map x̂ik to the potential space
8:
end if
9: end for

To perform the search for a firework, the points around the
firework’s position are sampled with uniform distribution ( taking
the inspiration from fireworks explosion process in the nature, see
Fig. 1). For this sampling operation, the sampling points number
and the sampling range are two important factors which will
influence the optimization results. The sampling points number
is denoted as explosion sparks number and the sampling range is
denoted explosion amplitude.

2.2.3

2.2.1 Explosion amplitude and explosion sparks number
Assume that the optimization problem f 1 is a minimization
problem, the fireworks number is N , the explosion amplitude A
(Eq. 1) and the number of explosion sparks s (Eq. 2) for each
firework Xi are calculated as follows.

When the location of a new explosion spark exceeds the search
range in dimension k , this spark will be mapped to another location in the search space with uniform distribution (in dimension k )
k
k
k
according to x̂ik = Xmin
+ rand(0, 1) ∗ (Xmax
− Xmin
), here
rand(a, b) denotes a random number from uniform distribution in
[a, b].

f (Xi ) − ymin + ε

i=1

(f (Xi ) − ymin ) + ε

ymax − f (Xi ) + ε

si = Me · PN

i=1 (ymax

− f (Xi )) + ε

(1)
2.3
(2)

where, ymax = max(f (Xi )), ymin = min(f (Xi )), and Â
and Me are two constants to control the explosion amplitude
and the number of explosion sparks, respectively, and ε is the
machine epsilon. Additionally, the number of sparks si that can be
generated by each firework is limited by the lower/upper bounds.
Eq. 1 reveals that the explosion amplitude of the firework at the
best location Xb is usually very small [close to 0], the explosion
sparks for Xb will be located at the same location as Xb . As a
result, these sparks cannot improve the location of Xb . To overcome this problem, EFWA used the minimal explosion amplitude
check strategy (MEACS) to bound the explosion amplitude Ai of
firework Xi as follows.
(
Amin if Ai < Amin ,
Ai =
(3)
Ai
otherwise,

Gaussian Mutation Operator

In addition to the explosion sparks for local search, FWA uses
another kind of sparks called Gaussian sparks, to further ensure
diversity of the swarm. Compared to the explosion sparks, Gaussian sparks have global search ability.
In the history of FWA, two typical Gaussian mutation operators were proposed. In FWA, the Gaussian mutation operator focuses on the mutation ability for each firework alone by
multiplying a random value under Gaussian distribution with the
positions of the firework in the selected dimensions. Later on in
EFWA, the introduced Gaussian mutation operator emphasizes the
cooperative evolution in the fireworks swarm (see Fig. 2).
core firework

dim 2

Ai = Â · PN

Mapping out-of-bounds sparks

where, Akmin decreases non-linearly with increasing number of
function evaluations such that
(0,0)

Amin = Ainit −

Ainit − Afinal
Emax

q

(2 ∗ Emax − t ) t,

(4)

1. In this paper, without loss of generality, the optimization problem f is
assumed to be a minimization problem.

selected
firework

dim 1

Fig. 2. Gaussian mutation operator in FWA and EFWA

4

2.3.1 Generating Gaussian sparks
Alg. 3 gives some details about how Gaussian sparks are generated
in EFWA. This algorithm is performed Mg times, each time with
a randomly selected firework Xi (Mg is a constant to control the
number of Gaussian sparks, Gaussian(a, b) denotes a random
value from a normal distribution with expected value and variance
set to a and b, respectively).
Algorithm 3 – Generating one “Gaussian spark” in EFWA
1: Initialize the location of the “Gaussian sparks”: x̄i = Xi
2: Set z k = round(rand(0, 1)), k = 1, 2, ..., d
3: Calculate offset displacement: e = Gaussian(0, 1)
4: for each dimension x̄i , where z k == 1 do
5:
x̄ik = x̄ik + (Xbk − x̄ik ) ∗ e, where Xb is the position of
the best firework found so far.
6:
if x̄ik is out of bounds then
k
k
k
7:
x̄ik = Xmin
+ rand(0, 1) ∗ (Xmax
− Xmin
)
8:
end if
9: end for

2.3.2 Mapping out-of-bounds sparks
When the location of a new Gaussian spark exceeds the search
range in the k th dimension, the mapping method is similar as the
explosion sparks which exceed the search range.
2.4

Selection Strategy

To retain the information of the swarm and pass them to the next
iteration, a subset of the whole population has to be selected.
EFWA applies a computationally efficient selection method called
Elitism-Random Selection (ERP, [45]). The optimum of the set
(i.e. all fireworks, the explosion sparks, and the Gaussian sparks)
will be selected firstly and the rest of individuals are selected
randomly. Although this method is rather simple compared to
e.g., distance based selection method in FWA (cf. [19], [46]), our
analysis in [24] has shown that there is almost no difference in
terms of convergence, final fitness and standard deviation between
the distance based selection of conventional FWA and ERP.
2.5

Comparison with Other Meta-heuristic Algorithms

Since its introduction, FWA has shown great success for optimization problems, which indicates that some mechanisms of this
algorithm are efficient. Here, we pick two famous algorithms,
particle swarm optimization (PSO) and genetic algorithm (GA)
for comparison.
2.5.1 Reproduction Mechanism
From the offspring generation view, we present the following
definitions: “cross-propagation” means that the offspring is generated by at least two parents, while “self-propagation” means the
offspring is generated by only one parent.
Thus, it can be seen that both cross-propagation and selfpropagation are presented in GA, and there is no bijection from
generation to generation. In PSO, the position of the son particle
is based on the information of this particle’s history information
and the global information of the best particle. Only the crosspropagation lies in PSO and there is a bijection from generation
to generation. The reproduction mechanism in FWA is similar to
GA. The explosion sparks are generated by the explosion operator

performed by one firework and mutation sparks are generated
by the mutation operator, i.e. both cross-propagation and selfpropagation are presented in FWA and there is no bijection.
However, different from the GA, the explosion operator in FWA
plays the major role for optimization.
2.5.2 Exploration and Exploitation Capacities
Previous work in [47] has given the comparison between PSO
and GA. For GA, the crossover operator is usually very effective.
At the early search phase, the crossover operator can move the
chromosome to a very far space in the solution space, which
makes GA maintain high exploration capacity. While at the later
phase, as the population of chromosomes converges, the crossover
operator will not be able to move it to a far space as the two
chromosomes usually have the similar structure, which makes the
GA maintain high exploitation capacity. In addition, the mutation
operator can move the chromosome to anywhere in the solution
space which enhances the exploration capacity of GA. In PSO,
each particle is attracted by current position, its previous best
position and the global best position (of the entire population).
This has similar function as the crossover operator in GA [47],
and finally the whole population of particles will converge to one
position, which makes the swarm maintain a high exploitation
capacity. The particles have to move one by one step from one
place to another, which cannot jump with a quite high step to
another place in one iteration [47]. However, it seems that GA
and FWA can do this by uding a big mutation rate and a big
explosion amplitude, respectively. For FWA, the exploration and
exploitation capacities are gained by taking different explosion
amplitudes and explosion sparks number for each firework. A
small explosion amplitude with large explosion sparks number
can make the firework perform a comprehensive local search. To
some extend, FWA is quite similar to GA, the smaller explosion
amplitude has the similar effect as mutation operator with small
mutation rate while the big amplitude has the similar effect as
mutation operator with big mutation rate.
2.5.3 Survival strategy
In GA, the selection strategy is performed in each iteration to
maintain and pass the information to the next iteration. The fittest
candidate will be surely selected to the next iteration, while for the
rest of candidates, they are selected with probability, which means
that there is no bijection from generation to generation. For PSO,
it does not utilize the selection operator, and there is bijection from
generation to generation for each particle. In FWA, the selection
operator is performed like GA in each iteration. Section 4.1 will
give a detailed discussion with the survival strategy.

3

S TATE - OF - THE - ART
AFWA

I MPROVEMENT

W ORK :

DYN FWA AND

3.1

Definition

For the convenience of discussion, the following definitions are
introduced at first:
Core firework (CF) and non-core firework (non-CF): Among the
fireworks swarm, the firework with minimal fitness according to
the f is denoted as CF. All other fireworks except the CF are
denoted as non-CFs.
General core firework (GCF) and non-general core firework
(non-GCF): The fireworks which have the same parent firework

5

as current CF may have the similar performance as the CF due to
the selection method. Thus, we extend the CF to general CF by
including the fireworks which have the same parent as CF. The
detailed definition is given below.
In each iteration, after the generation of explosion sparks, in
the candidates set (Sc ), which includes the fireworks and explosion
sparks, the selection operation is performed. Let us define xb as
the “best” newly created explosion spark of all fireworks in the
swarm, and XCF as the current core firework. Assume that P (xi )
denotes the firework which generated xi , and SGCF s denotes the
set of GCF.
•

If f (xb ) − f (XCF ) < 0, and the candidate xi which
is from the candidate set Sc is subjected to the following
condition,

xi = arg (P (xi ) == P (xb ))||(xi == P (xb ))
xi

•

and xi is selected as firework into next iteration, then xi ∈
SGCF s .
If f (xb ) − f (XCF ) ≥ 0, and the candidate xi which
is from the candidate set Sc is subjected to the following
condition,

xi = arg (P (xi ) == XCF )||(xi ∈ SGCF s )
xi

and xi is selected as firework into next iteration, then xi ∈
SGCF s .
For the non-GCF, among the fireworks swarm, the fireworks
except for GCF are denoted as non-GCFs.
3.2

Explosion Strategies in dynFWA and AFWA

In EFWA, the MEACS (ref Section 2.2) enforces the exploration
capabilities at the early phase of the algorithm (larger Amin ⇒
global search), while at the final phase of the algorithm the exploitation capabilities are enforced (smaller Amin ⇒ local search).
Additionally, the non-linear decrease of Amin (cf. Eq. 4) enhances
exploitation already at an earlier stage of the EFWA algorithm.
However, this procedure decreases the explosion amplitude solely
with the current number of function evaluations which heavily
depends on the pre-defined number of iterations for the algorithm.
The explosion amplitude strategy should consider the optimization
process information and the information of the explosion sparks
rather than solely the information about the current iteration
[evaluation] count. To approach this problem, the adaptive explosion amplitude strategies for fireworks were proposed, which are
dynamic search in FWA (dynFWA) and adaptive FWA (AFWA).
In dynFWA and AFWA, the fireworks are separated into two
groups. The first group consists of the CF, while the second group
consists of all remaining fireworks. The responsibility of the CF
is to perform a local search around the best location found so far,
while the responsibility of the second group is to maintain the
global search ability.
3.2.1 The dynFWA
Let us define xb as the “best” newly created explosion spark of all
fireworks in the swarm, for the dynFWA, the explosion amplitude
adapts itself according to the quality of the generated sparks.
Case 1) : One or several explosion sparks have found a better
position. It is possible that (i) an explosion spark generated by
the CF has found the best position, or that (ii) an explosion spark

Algorithm 4 – dynFWA explosion amplitude update strategy
Require: Define:
XCF is the current location of the CF;
xb is the best location among all explosion sparks;
AtCF is the CF’s explosion amplitude in iteration t;
Ca is the amplification factor;
Cr is the reduction factor;
Ensure:
1: if f (xb ) − f (XCF ) < 0 then
2:
AtCF ← At−1
CF × Ca ;
3: else
4:
AtCF ← At−1
CF × Cr ;
5: end if

generated by a different firework than the CF has found the best
position. Both cases indicate that the swarm has found a new
promising position and that xb will be the CF for the next iteration.
(i) In most cases, xb has been created by the CF. In such
cases, in order to speed up the convergence of the algorithm,
the explosion amplitude of the CF for the next iteration will be
increased compared to the current iteration.
(ii) In other cases, a firework different from the CF will create
xb . In such cases, xb will become the new CF for the next iteration.
Since the position of the CF is changed, the current explosion
amplitude of the current CF will not be effective to the newly
selected CF. However, it is possible that xb is located in rather
close proximity to the previous CF due to the fact that the random
selection method may select several sparks created by the CF,
which are initially located in close proximity to the CF. If so, the
same consideration as in (i) applies. If xb is created by a firework
which is not in close proximity to the CF, the explosion amplitude
can be re-initialized to the pre-defined value. However, since it
is difficult to define “close” proximity, we do not compute the
distance between xb and XCF but rely on the dynamic explosion
amplitude update ability. Similarly to (i), the explosion amplitude
is increased. If the new CF cannot improve its location in the next
iteration, the new CF is able to adjust the explosion amplitude
itself dynamically.
We underline the idea why an increasing explosion amplitude
may accelerate the convergence speed: Assume that the current
position of the CF is far away from the global/local minimum. Increasing the explosion amplitude is a direct and effective approach
in order to increase the step-size towards the global/local optimum
in each iteration, i.e., it allows for faster movements towards the
optimum. However, we should make sure that the fireworks walk
towards to global/local optimal position. In fact, the probability
to find a position with better fitness decreases with increasing
explosion amplitude due to the increased search space, it will be a
hard job and a challenge for fireworks.
Case 2) : None of the explosion sparks of the CF nor of all other
fireworks has found a position with better fitness compared to
the CF, i.e., ∆f >= 0. Under this circumstance, the explosion
amplitude of the CF is reduced in order to narrow down the search
to a smaller region around the current location and to enhance
the exploitation capability of the CF. The probability for finding
a position with better fitness usually increases with the decreasing
of explosion amplitude.

•

Its fitness is worse than the one of the current CF, which
guarantees that the specific spark is not too close to CF;
The distance between the specific spark with the best
individual is minimal among all the candidates, which is
to ensure the convergence.

As in FWA, the explosion sparks are generated independently
in each dimension, the infinite norm is taken as the distance
measure as follows.

kxk∞ = max(|xi |)
i

(5)

The AFWA’s explosion amplitude update strategy includes two
cases:
Case 1) The CF does not generate sparks with smaller fitness than
the firework’s, i.e. the best fitness of all the explosion sparks xCF,b
is worse than the core firework’s fitness XCF , and the explosion
amplitude will be set to the infinite norm between the core firework
and the specific spark. If so, the explosion amplitude in the next
iteration will be reduced according to Alg. 5.
Case 2) The generated xCF,b has smaller fitness than XCF ,
according to Alg. 5, it will be hard to determinate whether the
explosion amplitude will be increased or decreased. Generally, the
explosion amplitude will be increased with high probability while
be reduced with smaller probability.
Moreover, as the infinite norm between the specific spark and
the firework changes radically, AFWA introduces the smoothing
t
strategy (AtCF ← 0.5 · (At−1
CF + λ · ACF )).
Algorithm 5 AFWA explosion amplitude update strategy
Require: Define:
M is explosion sparks number of CF;
AtCF is the CF’s explosion amplitude in iteration t;
xCF,k is the k -th explosion spark of CF;
xCF,b is the best explosion spark of CF;
λ is a constant parameter which controls the update rate.
Ensure:
1: for k = 1 to M do
2:
if ||xCF,k − xCF,b ||∞ > AtCF and f (xCF,k ) > f (XCF )
then
3:
AtCF ← ||xCF,k − xCF,b ||∞
4:
end if
5: end for
t−1
6: AtCF ← 0.5 · (ACF + λ · AtCF )

3.3

dynFWA vs AFWA

From Alg. 4 and Alg. 5, it can be seen that if the CF cannot generate any sparks with better fitness, then the explosion amplitude
of the firework will be reduced in both AFWA and dynFWA. If

0.8

0.8

0.7

0.7

probability

1
0.9

0.6
0.5
0.4

0.6
0.5
0.4

0.3

0.3

0.2

0.2

0
0.8

0.1
0.9

1

1.1

0
0.8

1.2

0.9

At+1
/At
CF CF

1

1.1

1.2

At+1
/At
CF CF

(a) dynFWA, the explosion amplitude (b) dynFWA, the explosion amplitude
is updated when no better solutions is updated when a better solution is
are found.
found.
1

1

0.9

0.9

0.8

0.8

0.7

0.7

probability

•

1
0.9

0.1

probability

3.2.2 The AFWA
In AFWA, the motivation is to calculate the most suitable amplitude for the CF without preseted parameters by making full use of
the region’s information based on the generated explosion sparks
around the current position [26].
AFWA aims at finding a specific spark and using its distance
to the best individual (which is either the XCF or xb , and will be
selected as the CF for the next iteration) as the explosion amplitude
for the next round. The specific spark that AFWA chooses should
be subject to the following two conditions:

probability

6

0.6
0.5
0.4

0.6
0.5
0.4

0.3

0.3

0.2

0.2

0.1
0
0.8

0.1
0.9

1

At+1
/At
CF CF

1.1

1.2

0
0.8

0.9

1

1.1

1.2

At+1
/At
CF CF

(c) AFWA, the explosion amplitude is (d) AFWA, the explosion amplitude
updated when no better solutions are is updated when a better solution is
found.
found.
Fig. 3. The comparison of explosion amplitude update between AFWA
and dynFWA.

the CF has generated a spark with better fitness, the explosion
amplitude of the firework in dynFWA will be amplified. However,
for AFWA, the determination of amplification or reduction is more
complex.
To investigate the relationship between of the amplification
and reduction with whether a better solution is found or not,
we record the values of AtCF /At−1
CF . For dynFWA, if a better
solution is found, the recorded value AtCF /At−1
CF will be Ca
and the explosion amplitude is updated with the amplification
factor. Otherwise, the recorded value AtCF /At−1
CF will be Cr and
the explosion amplitude is updated with the reduction factor (cf.
Fig. 3(b) and Fig. 3(a)).
To investigate the explosion amplitude update process of
AFWA, Sphere function is chosen as the benchmark function to
study the explosion amplitude amplification and reduction when
the firework has found or not found a better solution.
Fig. 3(d) presents the histogram of AtCF /At−1
CF in the iterations
when a better solution is found, here the y-coordinate denotes the
probability. Fig. 3(c) presents the histogram of AtCF /At−1
CF in the
iterations when no better solutions are found. The geometric mean
in Fig. 3(d) is 1.017, while the geometric mean in Fig. 3(c) is
0.976. It can been seen that if the firework has found a better
position with smaller fitness, the explosion amplitude in AFWA
will be increased with higher probability, and reduced with smaller
probability.
Here, a special case is also considered to compare the two
explosion amplitude strategies. Assume that explosion sparks
number M is a very big value, i.e. M → +∞, and the gen-

7

AFWA

The firework
The generated explosion spark

dynFWA

The firework in the next iteration
The selected spark

Fig. 4. dynFWA vs AFWA in a special case

erated sparks are located in a float and continues region. Under
this circumstance, if the generated sparks have found any better
positions, usually the best explosion spark will be located at the
edge of the region (see Fig. 4 with dimension is set to 2), then
both AFWA and dynFWA will increase the explosion amplitude
for the next iteration according to Alg.4 and Alg.5.
Thus, we can draw the following conclusions:
•

•

4

The explosion amplitude is one of the most crucial parameters for FWA to balance the global and local search
ability.
From the statistical view, the two methods – dynFWA
and AFWA are from different start points to adjust the
explosion amplitude, but in a sense, finally they reach the
same goal by different means.

T HE P ROPOSED FWA C OOPERATIVE F RAME -

WORK

In this section, we first give a detailed analysis of the cooperative
strategies in conventional FWA framework and the limitations
are pointed out, and then the new cooperative FWA framework
(CoFFWA) is finally proposed, which includes the independent
selection method for each firework and crowdness-avoiding cooperative strategy among the fireworks.
4.1 Analysis of Cooperative Strategies in Conventional
FWA Framework
FWA is designed as one swarm intelligence algorithm, in which
the fireworks in the swarm cooperate with each other to deal with
the task that one firework cannot work well on. In EFWA, two
cooperative operations are used for the implementation of this
idea:
•

•

the sharing of the fitness values in the population for the
calculation of explosion amplitudes and explosion sparks
number in the explosion operator (cf subsection 2.2);
the Gaussian mutation strategy in the Gaussian mutation
operator (cf subsection 2.3).

The sharing of fitness values among the fireworks to calculate
the explosion amplitudes and sparks numbers makes the fireworks
with smaller fitness have smaller explosion amplitudes and larger
number of explosion sparks, which maintains the capacity of

exploitation while the fireworks with bigger fitness have bigger
explosion amplitudes and smaller numbers of explosion sparks,
which maintains the capacity of exploration. As for the Gaussian
mutation operator, the generated Gaussian mutation sparks will
locate along the direction between the core firework and the
selected firework which is assumed to improve the diversity of
the fireworks swarm.
However, for EFWA, dynFWA, and AFWA, all of them take
the selection method from the candidates set which includes the
fireworks in current iteration, the generated explosion sparks and
Gaussian mutation sparks in each iteration. For all of the FWA
variants, the basic principle of the selection method is that the
optimum among the candidates is always kept while for the rest
of fireworks, different methods have different selection probability
calculation methods.
In the following, we will present an observation that these
kinds of selection methods result in the fact that in the explosion
operator the non-CFs contribute less for the optimization while
taking up the most evaluation times, and the Gaussian mutation
operator proposed in EFWA is not as effective as it was designed
to be.
4.1.1 Cooperative Performance Analysis of CF and nonCFs in Explosion Operator
In FWA, the calculation method of explosion amplitude will make
the explosion amplitude of the CF close to zero. To avoid this
limitation, EFWA introduces the MEACS (cf Section 2.2), where
the CF’s explosion amplitude is in fact calculated based on the
MEACS which is not relevant to the non-CFs in the population.
In dynFWA or AFWA, the situation is similar, that the explosion
amplitude of CF is calculated based on the dynamic search strategy
or adaptive strategy which is also not relevant to the non-CF’s
fitness. Compare the CF in EFWA, dynFWA and AFWA, it can be
seen that the CF’s explosion amplitude strategies are independent
of the non-CFs’ in the fireworks swarm, the only interaction
between the CF and non-CFs except for the selection method is
the calculation of explosion sparks number which is powerless for
dealing with complex problems.
Comparing the CF with non-CFs, the differences between
them lie in two aspects, one is that the explosion amplitudes’
calculation methods, the other is the selection method. For the
explosion amplitude calculation method, different explosion amplitude calculation methods are taken to maintain the diversity of
the fireworks swarm. However, the selection method makes the
initial idea that the non-CFs are to increase the diversity of the
fireworks swarm not effective.
In the selection, most of the sparks generated by CF and nonCFs are brought together. The candidate with minimal fitness [will
be the CF in the next iteration] is always selected at first, while
for the rest of fireworks [will be non-CFs in the next iteration],
they are selected with probability. If a selected non-CF candidate
is generated by the CF, then it will have similar performance
as the CF. Alternatively, the selected candidate is generated by
the non-CFs. In this case, the non-CFs are usually generated by
the parent fireworks within large explosion explosion amplitudes
which can be seen as randomly generating of sparks within the
search range as the information of the non-CF can only be passed
to the next iteration within few iterations with the conventional
selection method, thus after a number of iterations, the position of
the non-CF will be reinitialized in a new position and will be kept
only in few iterations.

8

In fact, these kind of selection strategies will make the generated sparks by the non-CFs have the similar performance with
randomly generated sparks in the search space to some extend or
have the similar performance with sparks generated by CF. We
cannot expect the good fitness by randomly generating the sparks
if there is no much heuristic information.
In Section 5, experiments are designed to evaluate the performance of CF and GCF to validate our idea that the non-CFs and
non-GCFs make little contribution to the optimization.
4.1.2

Cooperative Strategy in Gaussian Mutation Operator

The motivation of Gaussian sparks is to increase the diversity
of the swarm. The prerequisites for successful performance by
cooperating in the fireworks population is that the information of
each firework is different and effective.
In EFWA, the newly generated sparks locate along the direction between the selected firework (Xi ) and CF (XCF ). For
the selected firework Xi , it can be classified into two categories.
The first category comprises fireworks which are very close to
XCF , usually these fireworks have the same parent firework as the
CF. If so, the newly generated Gaussian sparks may have similar
performance with the explosion sparks which cannot increase
the diversity of the swarm effectively. The other category is the
fireworks which are not close to the CF, usually it is because these
fireworks are generated by a firework different from the parent
firework of CF. If so, the newly generated Gaussian sparks will be
(i) close to CF (ii) close to the selected firework, (iii) not close
to any fireworks. If the newly generated Gaussian spark is close to
either of the CF or the selected firework, it has similar performance
with the explosion sparks generated by them. If the generated
Gaussian spark is not close to them, then it can be seen as the
spark generated by firework with large explosion amplitude. Thus,
based on above analysis, the newly generated Gaussian spark will
not work effectively and is not be able to increase the diversity of
the fireworks population.
Moreover, assume that the selected firework Xi is a non-CF
with a random position due to the selection method, then the
generated Gaussian mutation spark will have the similar effects
with randomly generating a spark in the search range under the
case (ii) and case (iii). Thus, the generated Gaussian sparks will
not be able to improve the diversity of the fireworks swarm.
4.1.3
egy

Conventional FWA Framework vs Evolutionary Strat-

In the previous sections, we have pointed out that the non-CFs
and Gaussian sparks do not contribute much to the optimization
due to the selection method in the conventional FWA framework.
If we simply eliminate the Gaussian mutation operator and nonCFs in the explosion operator, we will get the minimalist fireworks
algorithm (MFWA) using only one firework, as shown in Alg. 6.
Algorithm 6 The MFWA
1: Initialize the firework and explosion amplitude
2: repeat
3:
Generate explosion sparks (cf. Alg. 2)
4:
Update explosion amplitude (cf. Alg. 4 or Alg. 5)
5:
Select the best individual as the new firework
6: until termination criterion (time, max. # evals, convergence,
... ) is met

For comparison, we briefly describe a kind of evolutionary
algorithms: evolutionary strategy (ES) [48]. Generally speaking,
ES conducts the search process by keeping the iterations of
sampling and learning. In the sampling step, a number of points
are randomly sampled from a Gaussian distribution. In the learning
step, the parameters of the Gaussian distribution are updated
according to the qualities of the sampled points.
The iteration process of MFWA is very similar to a (1 + λ)ES: one parent generates many sons, and the sampling parameters
are updated according to the qualities of them (the position and
the fitness). The explosion amplitude in FWA and the variance in
ES can both be regarded as the step size. The methodology to
control them are also very similar: dynamic explosion amplitude
is similar to the 1/5 rule in (1 + 1)-ES, while adaptive explosion
amplitude is comparable to (1 + λ)-ES. So the properties of these
algorithms are similar: they are all locally convergent, they all
work poor in dimension sensitive functions, and they are all easily
trapped in local minima. After the comparison with ES, it leaves a
profound insight that the new FWA framework which can utilize
all the fireworks information should be designed and the powerful
and efficient cooperative mechanisms are essential for the future
developments.
4.2

Cooperative Framework of FWA

To make FWA be a successful swarm intelligence algorithm [45],
the information for each firework should be passed to the next
iteration and fireworks can cooperate with each other for the
optimization.
However, the conventional FWA framework lacks the local
search ability for non-CFs, while the cooperative strategy in the
Gaussian mutation operator is not very effective. To tackle these
limitations, the CoFFWA with independent selection method and
cooperative strategy is finally proposed.
Algorithm 7 – The Cooperative Framework for FWA
1: Initialize N fireworks
2: repeat
3:
for each firework do
4:
Generate the explosion sparks
5:
Select best candidate among its generated sparks and
itself
6:
Perform the cooperative strategy
7:
end for
8: until termination criterion (time, max. # evals, convergence,
... ) is met

4.2.1 Independent Selection Method
The analyses in previous subsection suggest that the previous
random selection methods in FWA and its variants cause that nonCFs and non-GCFs do not contribute much to the optimization
for a problem while consuming a lot of resources, i.e. evaluation
times in the explosion operator, and the cooperative scheme of
Gaussian mutation operator among the fireworks is powerless to
solve complex problems. Furthermore, the selection method in
conventional FWA framework is seen as the main reason why
the non-CFs/non-GCF cannot evolve for a number of consecutive
iterations.
To implement the initial idea of FWA that each firework in the
swarm cooperate together to solve the optimization problem, it is

9

5.1 Significance Analysis of non-CFs/non-GCFs in Explosion Operator

reinitilization
firework

To investigate whether the non-CFs/non-GCFs are effective or
not compared with the CF/GCF in the explosion operator, the
following evaluation criterions, i.e. significant improvement and
resource cost are designed.
For these following criterions evaluation, FWA variants without Gaussian mutation operator, i.e. the algorithms only generate
explosion sparks are used to offset the influences of Gaussian
mutation operators.

firework

CF

Fig. 5. The Crowdness-avoiding Cooperative Strategy.

5.1.1

needed to ensure that the information for each firework is passed to
the next iteration. In the new framework of FWA, the independent
selection operator will be performed for each firework, i.e. each
firework will select the best candidate among its all generated
sparks and itself in each iteration respectively (cf. Alg.7).
4.2.2 The Crowdness-avoiding
among the Fireworks

Cooperative

Strategy

In the fireworks swarm, each firework will generate a number
of explosion sparks which can represent the quality of the local
regions. The quality of each firework’s position is shared in the
population to accelerate the convergence speed.
For the calculation of explosion amplitudes and explosion
sparks number in CoFFWA, CF still takes the dynamic explosion
amplitude strategy, while for the rest of fireworks, the explosion
amplitudes are calculated as in dynFWA by Eq.(1). For explosion
spark number calculation, it is same in CoFFWA as in dynFWA
as well by Eq.(2). After the generating of explosion sparks, each
firework performs the independent selection method, respectively.
Moreover, In COFFWA, a crowdness-avoiding operation is introduced in the fireworks population. For the crowdness-avoiding
operation, it means that whenever any fireworks in the fireworks
swarm is close to CF, i.e. within a fixed range of CF, then the
position of this firework will be reinitialized in the feasible search
space. The following gives two main reasons for the crowdnessavoiding operation:

Among the fireworks swarm, if a firework Xi generates the
explosion spark with minimal fitness among all the explosion
sparks and fireworks, then Xi is seen to have one time significant
improvement to the optimization. In the optimization process
of FWA, at each iteration, at most one firework can make the
significant improvement, thus to compare the performance of CF,
GCF and non-CFs, non-GCFs, the significant improvement times
of them during each run are recorded.
•
•

•
•

•

The selected firework (Xi ) has worse fitness and smaller
explosion sparks number than the CF, thus the region
that Xi locates is not promising, it is seen as a waste of
evaluation times to continue the search for the fireworks
with worse fitness around the CF.
To increase the diversity of the fireworks swarm, it is better
that the fireworks are not located close to each other.

Algorithm 8 – The crowdness-avoiding cooperative strategy
1: if ||Xi − XCF ||∞ < τ then
2:
Reinitialize the position of Xi
3: end if

•
•

5.2
tor

To validate the ideas presented previously, several groups of
experiments are designed.

θCF , the percentage of CF’s evaluation times among all
the evaluation times.
θGCF , the percentage of GCF’s evaluation times among
all the evaluation times.
Significance Analysis of Gaussian Mutation Opera-

To validate whether the Gaussian mutation operator introduced in
EFWA is effective or not, the following comparisons are made.

•

E XPERIMENTS D ESIGN

Resources Cost

For the optimization, the evaluation times (Emax ) is usually set to
D × 10 000, where D is the dimension of the problem [49].

•

5

αCF , the percentage of CF’s significant improvement
times among all the significant improvement times.
βCF , the percentage of CF’s significant improvement
times among all the significant improvement times
1
recorded from the 30
∗ Emax -th evaluation time.
αGCF , the percentage of GCF’s significant improvement
times among all the significant improvement times.
βGCF , the percentage of GCF’s significant improvement times among all the significant improvement times
1
∗ Emax -th evaluation time.
recorded from the 30

Here, Emax denotes the max number of evaluation times. It
is thought that βCF /βGCF are better than αCF /αGCF for the
performance comparison as at the early phase of the optimization,
it is likely that non-CFs gain more significant improvement times
due to the great number of explosion sparks. However, significant
improvements in the later phase of the optimization are more
important.
5.1.2

•

Significant Improvement

•

EFWA-G vs EFWA-NG.
dynFWA-G vs dynFWA-NG.
AFWA-G vs AFWA-NG,

here, “G” and “NG” refer to with and without Gaussian mutation
operator, respectively.

10

5.3

Significance Analysis of the Proposed CoFFWA

To validate the performance of the proposed CoFFWA, experiments are conducted to compare the performance of CoFFWA
with EFWA [24], dynFWA [25], AFWA [26], artificial bee colony
(ABC) [16], [50], differential evolution (DE) [51], standard PSO
in 2007 (SPSO2007) [4], and the most recent SPSO in 2011
(SPSO2011) [52].
5.4

Experimental Setup and Platform

Similar to dynFWA, the number of fireworks in CoFFWA is set to
5 and the explosion sparks number is set to 150. The reduction and
amplification factors Cr and Ca are also empirically set to 0.9 and
1.2, respectively. For the parameter τ is set to 10*ACF , and the
maximum explosion amplitude for CF is bounded with the search
range. For the rest of parameters in CoFFWA, they are identical
to dynFWA [25]. The parameters for AFWA, dynFWA, DE, ABC,
SPSO2007 and SPSO2011 are listed in [26] [16] [25] [51] [4] [53],
respectively.
In the experiments, the CEC2013 benchmark functions with
28 functions are used as the test suite and dimension is set to
30 [49]. For the recorded results in each algorithm, the number
of runs is set to 51, and Wilcoxon signed-rank test is used to
validate the performance improvement. The experimental platform
is MATLAB 2011b (Windows 7; Intel Core i7-2600 CPU @ 3.7
GHZ; 8 GB RAM).

6

is significantly better than EFWA-NG on 4 functions, which suggests that Gaussian mutation operator is effective to improve the
performance for EFWA. However, for dynFWA-NG and AFWANG, the versions without Gaussian mutation operator have better
performance. Moreover, in terms of the computational complexity,
our previous results in [25] suggest that Gaussian mutation operator is more time consuming than explosion sparks operator. Thus,
the Gaussian mutation operator will be removed from CoFFWA.
TABLE 1
Wilcoxon signed-rank test results for EFWA-G vs EFWA-NG and
dynFWA-G vs dynFWA-NG and AFWA-G vs AFWA-NG (bold values
indicate the performance difference is significant, while 1/0/-1 denotes
the version with Gaussian sparks operator is significant better / not
significant different / significant worse than the version without
Gaussian sparks.).
F.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28

E XPERIMENTAL R ESULTS

6.1 Significance Analysis of non-CFs/non-GCFs in Explosion Operator
To validate the performance of CF and GCF, the αCF , βCF ,
θCF and αGCF , βGCF , θGCF are calculated on EFWA-NG
and dynFWA-NG respectively, and the recorded results on 28
functions can be found in Fig. 6.
Compare the performance between CF and non-CFs, it can be
seen that, for both EFWA-NG and dynFWA-NG, CF takes smaller
percentage of resources (i.e. evaluation times), but makes the more
significant improvement times to the search.
Compare the evaluation criterion αCF and βCF , it can be
seen that for all functions, βCF which records the statistical results
1
from the 30
∗Emax -th evaluation times is higher than αCF , which
means that at the beginning of the optimization, the non-CFs have
high probability for making significant improvements, while at the
later phase, the chance goes smaller. For GCF, the above situation
is similar to CF.
Compare the results of CF with GCF, the GCF makes more
significant improvements while taking more resources (i.e evaluation times), due to that some fireworks except for CF may be close
to CF, thus to have a high chance to make improvements.
In all, from the results in Fig. 6, it can be concluded that the CF
makes much more contributions than non-CF while taking smaller
resources. While comparing the results of CF and GCF, it seems
that the non-GCFs do not make any contribution to the search.
6.2
tor

Significance Analysis of Gaussian Mutation Opera-

Tab. 1 gives the experimental results of the versions of EFWA,
dynFWA, AFWA with and without Gaussian mutation operator.
Comparing EFWA with EFWA-NG, it can be seen that EFWA-G

6.3

EFWA-G vs
EFWA-NG
2.316E-03
4.256E-01
8.956E-01
7.858E-01
4.290E-02
1.654E-01
9.552E-01
9.776E-01
5.178E-01
3.732E-01
5.830E-02
6.193E-01
8.220E-01
4.101E-02
6.869E-01
2.811E-01
9.179E-01
6.938E-01
9.402E-01
1.559E-02
6.910E-04
9.776E-01
7.217E-01
1.079E-02
8.734E-01
2.687E-01
3.534E-01
6.460E-01

1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
-1
1
0
0
1
0
0
0
0

dynFWA-G vs
dynFWA-NG
1.000E+00
9.328E-01
2.339E-01
7.492E-02
7.646E-02
7.858E-01
6.869E-01
4.704E-01
4.997E-01
5.057E-01
6.629E-01
3.783E-01
1.863E-01
3.834E-01
3.438E-01
4.256E-01
1.863E-01
4.762E-01
1.542E-01
5.830E-02
7.997E-01
3.583E-01
7.642E-01
5.486E-01
2.091E-01
7.217E-01
8.734E-01
0.000E+00

0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
-1

AFWA-G vs
AFWA-NG
1.000E+00
4.647E-01
7.191E-02
5.689E-03
5.239E-01
9.030E-01
2.728E-01
8.808E-01
7.571E-01
9.545E-03
3.204E-01
1.801E-01
4.590E-01
5.239E-01
4.879E-01
8.220E-01
2.339E-01
6.460E-01
7.786E-01
4.997E-01
5.937E-01
4.202E-01
6.260E-01
7.500E-01
1.369E-02
3.834E-01
1.597E-01
3.285E-03

0
0
0
-1
0
0
0
0
0
-1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
-1
0
0
-1

Significance Analysis of CoFFWA

Tab. 2 shows the mean fitness value over 51 runs for the 28
functions for ABC, DE, SPSO2007, SPSO2011, EFWA, AFWA,
dynFWA and CoFFWA and the corresponding rank of each algorithm. It can be seen that CoFFWA is able to achieve better
results than dynFWA(AFWA) on 24(22) functions while dynFWA(AFWA) is better than CoFFWA on 3(5) functions. For 1(1)
function, the results are identical. For the comparison with EFWA,
the advantage is especially obvious.
The Wilcoxon signed-rank test results in Tab. 3 suggest that
CoFFWA is significantly better than dynFWA(AFWA) on 8(8)
functions while significant worse on 2(2) functions. Furthermore,
in terms of computation complexity (cf Tab. 4), CoFFWA has the
similar computation cost as dynFWA. Runtime results in Tab. 4
suggest that compared to EFWA, dynFWA, the proposed CoFFWA
has almost the same runtime.
Compared with ABC, DE, SPSO2007, SPSO2011, EFWA,
AFWA and dynFWA in term of mean fitness rank, it can be
seen that CoFFWA achieves the best optimization results and

11

α
β
θ

0.6
0.4
0.2
0

1

2

3

4

5

6

7

8

1

evaluation criterior

evaluation criterior

1
0.8

0.6
0.4
0.2
0

9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28

α
β
θ

0.8

1

2

3

4

5

6

7

8

9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28

function id

function id

(a) Case 1: EFWA-NG, CF

(b) Case 2: EFWA-NG, GCF
α
β
θ

0.6
0.4
0.2
0

1

2

3

4

5

6

7

8

1

evaluation criterior

evaluation criterior

1
0.8

0.6
0.4
0.2
0

9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28

α
β
θ

0.8

1

2

3

4

5

6

7

8

9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28

function id

function id

(c) Case 3: dynFWA-NG, CF

(d) Case 4: dynFWA-NG, GCF

Fig. 6. Significant improvement and resources cost results of CF and GCF.

performances, i.e. the minimal average of mean fitness rank (3.00
in Tab. 2), thus we can conclude that the proposed cooperative
framework for FWA is significant.

TABLE 4
Runtime Comparison

EFWA
TABLE 3
Wilcoxon signed-rank test results for CoFFWA vs AFWA and CoFFWA
vs dynFWA ( 1/0/-1 denotes the CoFFWA is significant better / not
significant different / significant worse than EFWA/AFWA/dynFWA).

F.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28

CoFFWA vs
AFWA
1.000E+00
6.938E-01
1.313E-01
0.000E+00
0.000E+00
2.160E-01
1.132E-01
5.802E-01
4.202E-01
2.332E-01
2.853E-01
2.528E-01
4.041E-01
1.334E-02
8.600E-05
3.486E-01
1.000E-06
2.091E-01
4.094E-01
1.132E-01
0.000E+00
2.489E-01
2.811E-01
8.440E-01
3.659E-02
3.300E-05
2.966E-02
2.865E-02
8+/18/2-

0
0
0
-1
-1
0
0
0
0
0
0
0
0
1
1
0
1
0
0
0
1
0
0
0
1
1
1
1

CoFFWA vs
dynFWA
1.000E+00
6.460E-01
9.328E-01
0.000E+00
0.000E+00
3.989E-01
3.889E-03
7.077E-01
9.850E-01
2.981E-01
2.413E-01
7.963E-02
5.867E-01
8.676E-03
8.900E-05
1.153E-01
3.000E-06
4.148E-01
2.567E-01
6.260E-01
1.000E-06
8.513E-01
1.197E-01
2.528E-01
3.783E-01
2.316E-03
5.528E-03
1.594E-03
8+/18/2-

0
0
0
-1
-1
0
1
0
0
0
0
0
0
1
1
0
1
0
0
0
1
0
0
0
0
1
1
1

1.3

AFWA

—

dynFWA

1

CoFFWA

1.05

of CF, GCF, non-CFs and non-GCFs in EFWA, dynFWA
and AFWA are investigated and the designed criterions are
recorded to support our opinion that the non-CF/non-GCFs
do not make much contribution to the optimization for a
specific problem while taking a lot of evaluation times. For
the Gaussian mutation operator, experimental results suggest
that it is not as effective as it is designed to be.
2) Based on the analysis of cooperative strategies in conventional FWA framework, a cooperative framework of
FWA with an independent selection method and crowdnessavoiding cooperative strategy is finally proposed to ensure
the information inheritance and improve the diversity of
fireworks population.
3) Moreover, the explosion amplitude strategies in AFWA and
dynFWA are compared and the relationship between them is
presented.
Compared with PSO’s search manner— one individual generates one individual, CoFFWA presents a cooperative explosive
search manner — one individual generates a number of individuals which has the ability to estimate the property of typical local
search space and will make the search direction of the swarm
stable and the cooperative strategies among the fireworks make the
firework with better fitness will have more resources. In the future,
we need to focus on this unique search manner and try to develop
new kinds of cooperative search strategies among the fireworks
swarm to enhance the exploration and exploitation capacities.

ACKNOWLEDGMENTS
7

C ONCLUSION

In this paper, we have presented a cooperative framework for FWA
(CoFFWA). The contributions include three aspects.
1) The cooperative strategies in conventional FWA are analyzed
and evaluated. In the explosion operator, the performance

This work was supported by the Natural Science Foundation of
China (NSFC) under grant no. 61375119 and 61170057, and
partially supported by National Key Basic Research Development
Plan (973 Plan) Project of China with grant no. 2015CB352302.
Prof. Ying Tan is the corresponding author.

12

TABLE 2
Mean Fitness and mean fitness rank of ABC, DE, SPSO2007, SPSO2011, EFWA, AFWA, dynFWA and CoFFWA (AR denotes the average of
mean rank value).

F
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28

ABC
0.00E+00
6.20E+06
5.74E+08
8.75E+04
0.00E+00
1.46E+01
1.25E+02
2.09E+01
3.01E+01
2.27E-01
0.00E+00
3.19E+02
3.29E+02
3.58E-01
3.88E+03
1.07E+00
3.04E+01
3.04E+02
2.62E-01
1.44E+01
1.65E+02
2.41E+01
4.95E+03
2.90E+02
3.06E+02
2.01E+02
4.16E+02
2.58E+02
AR: 4.14

1
8
7
7
1
2
7
6
8
5
1
7
7
1
4
5
1
8
1
6
1
1
5
7
6
1
1
1

DE
1.89E-03
5.52E+04
2.16E+06
1.32E-01
2.48E-03
7.82E+00
4.89E+01
2.09E+01
1.59E+01
3.24E-02
7.88E+01
8.14E+01
1.61E+02
2.38E+03
5.19E+03
1.97E+00
9.29E+01
2.34E+02
4.51E+00
1.43E+01
3.20E+02
1.72E+03
5.28E+03
2.47E+02
2.80E+02
2.52E+02
7.64E+02
4.02E+02
AR: 3.18

7
1
1
1
7
1
1
2
1
1
3
1
1
3
8
8
2
7
2
5
6
2
6
1
1
3
2
5

SPSO2007
0.00E+00
6.08E+06
6.63E+08
1.03E+05
0.00E+00
2.52E+01
1.13E+02
2.10E+01
2.93E+01
2.38E-01
6.26E+01
1.15E+02
1.79E+02
1.59E+03
4.31E+03
1.27E+00
9.98E+01
1.80E+02
6.48E+00
1.50E+01
3.35E+02
2.98E+03
6.97E+03
2.90E+02
3.10E+02
2.57E+02
8.16E+02
6.92E+02
AR: 5.04

1
7
8
8
2
4
6
7
6
6
2
3
2
2
7
6
3
4
3
8
8
3
8
6
7
4
3
7

SPSO2011
0.00E+00
3.38E+05
2.88E+08
3.86E+04
5.42E-04
3.79E+01
8.79E+01
2.09E+01
2.88E+01
3.40E-01
1.05E+02
1.04E+02
1.94E+02
3.99E+03
3.81E+03
1.31E+00
1.16E+02
1.21E+02
9.51E+00
1.35E+01
3.09E+02
4.30E+03
4.83E+03
2.67E+02
2.99E+02
2.86E+02
1.00E+03
4.01E+02
AR: 4.64

R EFERENCES
[1]

A. P. Engelbrecht, Fundamentals of computational swarm intelligence.
Wiley Chichester, 2005, vol. 1.
[2] G. Beni and J. Wang, “Swarm intelligence in cellular robotic systems,”
in Robots and Biological Systems: Towards a New Bionics? Springer,
1993, pp. 703–712.
[3] M. Dorigo, M. Birattari, and T. Stutzle, “Ant colony optimization,”
Computational Intelligence Magazine, IEEE, vol. 1, no. 4, pp. 28–39,
2006.
[4] D. Bratton and J. Kennedy, “Defining a standard for particle swarm
optimization,” in Swarm Intelligence Symposium, 2007. SIS 2007. IEEE.
IEEE, 2007, pp. 120–127.
[5] D. Karaboga, “Artificial bee colony algorithm,” vol. 5, no. 3, p.
6915, 2010. [Online]. Available: http://www.scholarpedia.com/article/
Artificial bee colony algorithm
[6] K. Krishnanand and D. Ghose, “Glowworm swarm optimization for
simultaneous capture of multiple local optima of multimodal functions,”
Swarm Intelligence, vol. 3, no. 2, pp. 87–124, 2009. [Online]. Available:
http://dx.doi.org/10.1007/s11721-008-0021-5
[7] C. Bastos Filho, F. Lima Neto, A. Lins, A. I. S. Nascimento, and
M. Lima, “Fish school search: An overview,” in Nature-Inspired
Algorithms for Optimisation, ser. Studies in Computational Intelligence,
2009, vol. 193, pp. 261–277.
[8] S. Łukasik and S. Żak, “Firefly algorithm for continuous constrained
optimization tasks,” in Computational Collective Intelligence. Semantic
Web, Social Networks and Multiagent Systems. Springer, 2009, pp.
97–106.
[9] X.-S. Yang, “Firefly algorithm, stochastic test functions and design
optimisation,” International Journal of Bio-Inspired Computation, vol. 2,
no. 2, pp. 78–84, 2010.
[10] ——, “Engineering optimizations via nature-inspired virtual bee algorithms,” in Artificial Intelligence and Knowledge Engineering
Applications: A Bioinspired Approach. Springer, 2005, pp. 317–323.
[11] X.-S. Yang and S. Deb, “Cuckoo search via lévy flights,” in Nature &
Biologically Inspired Computing, 2009. NaBIC 2009. World Congress
on. IEEE, 2009, pp. 210–214.
[12] A. H. Gandomi and A. H. Alavi, “Krill herd: a new bio-inspired optimization algorithm,” Communications in Nonlinear Science and Numerical
Simulation, vol. 17, no. 12, pp. 4831–4845, 2012.

1
2
6
6
3
8
2
5
5
7
7
2
3
7
3
7
5
1
7
4
3
7
4
2
5
7
7
4

EFWA
8.50E-02
5.85E+05
1.16E+08
1.22E+00
8.05E-02
3.22E+01
1.44E+02
2.10E+01
2.98E+01
8.48E-01
2.79E+02
4.06E+02
3.51E+02
4.02E+03
4.28E+03
5.75E-01
2.17E+02
1.72E+02
1.24E+01
1.45E+01
3.28E+02
5.15E+03
5.73E+03
3.05E+02
3.38E+02
3.02E+02
1.22E+03
1.23E+03
AR: 6.79

8
3
3
2
8
7
8
8
7
8
8
8
8
8
6
3
8
2
8
7
7
8
7
8
8
8
8
8

AFWA
0.00E+00
8.92E+05
1.26E+08
1.14E+01
6.00E-04
2.99E+01
9.19E+01
2.09E+01
2.48E+01
4.73E-02
1.05E+02
1.52E+02
2.36E+02
2.97E+03
3.81E+03
4.97E-01
1.45E+02
1.75E+02
6.92E+00
1.30E+01
3.16E+02
3.45E+03
4.70E+03
2.70E+02
2.99E+02
2.73E+02
9.72E+02
4.37E+02
AR: 4.25

1
6
5
4
5
5
4
4
4
3
6
5
4
5
2
2
7
3
5
1
5
6
2
4
4
6
5
6

dynFWA
0.00E+00
8.71E+05
1.23E+08
1.04E+01
5.51E-04
3.01E+01
9.99E+01
2.09E+01
2.41E+01
4.81E-02
1.04E+02
1.58E+02
2.54E+02
3.02E+03
3.92E+03
5.80E-01
1.43E+02
1.88E+02
7.26E+00
1.33E+01
3.10E+02
3.33E+03
4.75E+03
2.73E+02
2.97E+02
2.61E+02
9.80E+02
2.96E+02
AR: 4.43

1
4
4
3
4
6
5
3
3
4
5
6
6
6
5
4
6
6
6
3
4
5
3
5
3
5
6
3

CoFFWA
0.00E+00
8.80E+05
8.04E+07
2.01E+03
7.41E-04
2.47E+01
8.99E+01
2.09E+01
2.40E+01
4.10E-02
9.90E+01
1.40E+02
2.50E+02
2.70E+03
3.37E+03
4.56E-01
1.10E+02
1.80E+02
6.51E+00
1.32E+01
2.06E+02
3.32E+03
4.47E+03
2.68E+02
2.94E+02
2.13E+02
8.71E+02
2.84E+02
AR: 3.00

1
5
2
5
6
3
3
1
2
2
4
4
5
4
1
1
4
5
4
2
2
4
1
3
2
2
4
2

[13] Y. Shi, “Brain storm optimization algorithm,” in Advances in Swarm
Intelligence. Springer, 2011, pp. 303–309.
[14] C. R. Blomeke, S. J. Elliott, and T. M. Walter, “Bacterial survivability
and transferability on biometric devices,” in Security Technology, 2007
41st Annual IEEE International Carnahan Conference on. IEEE, 2007,
pp. 80–84.
[15] X.-S. Yang, “A new metaheuristic bat-inspired algorithm,” in Nature
inspired cooperative strategies for optimization (NICSO 2010).
Springer, 2010, pp. 65–74.
[16] D. Karaboga, “An idea based on honey bee swarm for numerical optimization,” Technical report-tr06, Erciyes university, engineering faculty,
computer engineering department, Tech. Rep., 2005.
[17] N. Tayarani and M. Akbarzadeh-T, “Magnetic optimization algorithms a
new synthesis,” in Evolutionary Computation, 2008. CEC 2008. (IEEE
World Congress on Computational Intelligence). IEEE Congress on, June
2008, pp. 2659–2664.
[18] H. Shah-Hosseini, “The intelligent water drops algorithm: a natureinspired swarm-based optimization algorithm,” International Journal of
Bio-Inspired Computation, vol. 1, no. 1, pp. 71–79, 2009.
[19] Y. Tan and Y. Zhu, “Fireworks algorithm for optimization,” Advances in
Swarm Intelligence, pp. 355–364, 2010.
[20] B. Xing and W.-J. Gao, “Emerging biology-based ci algorithms,” in
Innovative Computational Intelligence: A Rough Guide to 134 Clever
Algorithms. Springer, 2014, pp. 217–317.
[21] J. Liu, S. Zheng, and Y. Tan, “Analysis on global convergence and time
complexity of fireworks algorithm,” in Evolutionary Computation (CEC),
2014 IEEE Congress on. IEEE, 2014, pp. 3207–3213.
[22] Y. Pei, S. Zheng, Y. Tan, and T. Hideyuki, “An empirical study on
influence of approximation approaches on enhancing fireworks algorithm,” in Proceedings of the 2012 IEEE Congress on System, Man and
Cybernetics. IEEE, 2012, pp. 1322–1327.
[23] J. Liu, S. Zheng, and Y. Tan, “The improvement on controlling exploration and exploitation of firework algorithm,” in Advances in Swarm
Intelligence. Springer, 2013, pp. 11–23.
[24] S. Zheng, A. Janecek, and Y. Tan, “Enhanced fireworks algorithm,” in
Evolutionary Computation (CEC), 2013 IEEE Congress on. IEEE, 2013,
pp. 2069–2077.
[25] S. Zheng, A. Janecek, J. Li, and Y. Tan, “Dynamic search in fireworks

13

[26]

[27]

[28]
[29]

[30]

[31]

[32]

[33]

[34]

[35]

[36]

[37]

[38]

[39]

[40]

[41]
[42]
[43]
[44]

[45]
[46]

[47]

[48]
[49]

[50]

algorithm,” in Evolutionary Computation (CEC), 2014 IEEE Congress
on, July 2014, pp. 3222–3229.
J. Li, S. Zheng, and Y. Tan, “Adaptive fireworks algorithm,” in
Evolutionary Computation (CEC), 2014 IEEE Congress on, July 2014,
pp. 3214–3221.
H. Gao and M. Diao, “Cultural firework algorithm and its application for
digital filters design,” International Journal of Modelling, Identification
and Control, vol. 14, no. 4, pp. 324–331, 2011.
Y. Zheng, X. Xu, and H. Ling, “A hybrid fireworks optimization method
with differential evolution,” Neurocomputing, 2012.
B. Zhang, M.-X. Zhang, and Y.-J. Zheng, “A hybrid biogeography-based
optimization and fireworks algorithm,” in Evolutionary Computation
(CEC), 2014 IEEE Congress on, July 2014, pp. 3200–3206.
C. Yu, J. Li, and Y. Tan, “Improve enhanced fireworks algorithm with
differential mutation,” in Systems, Man and Cybernetics (SMC), 2014
IEEE International Conference on, Oct 2014, pp. 264–269.
E. Zitzler, M. Laumanns, L. Thiele, E. Zitzler, E. Zitzler, L. Thiele, and
L. Thiele, “Spea2: Improving the strength pareto evolutionary algorithm,”
2001.
J. Hájek, A. Szöllös, and J. Šı́stek, “A new mechanism for maintaining
diversity of pareto archive in multi-objective optimization,” Advances in
Engineering Software, vol. 41, no. 7, pp. 1031–1057, 2010.
K. Ding, S. Zheng, and Y. Tan, “A gpu-based parallel fireworks
algorithm for optimization,” in Proceeding of the Fifteenth Annual
Conference on Genetic and Evolutionary Computation Conference, ser.
GECCO 2013. New York, NY, USA: ACM, 2013, pp. 9–16. [Online].
Available: http://doi.acm.org/10.1145/2463372.2463377
A. Janecek and Y. Tan, “Using population based algorithms for initializing nonnegative matrix factorization,” in Proceedings of the second
international conference on Advances in swarm intelligence. SpringerVerlag, 2011, pp. 307–316.
——, “Iterative improvement of the multiplicative update nmf algorithm
using nature-inspired optimization,” in Natural Computation (ICNC),
2011 Seventh International Conference on, vol. 3. IEEE, 2011, pp.
1668–1672.
——, “Swarm intelligence for non-negative matrix factorization,”
International Journal of Swarm Intelligence Research (IJSIR), vol. 2,
no. 4, pp. 12–34, 2011.
W. He, G. Mi, and Y. Tan, “Parameter optimization of local-concentration
model for spam detection by using fireworks algorithm,” in Advances in
Swarm Intelligence. Springer, 2013, pp. 439–450.
S. Zheng and Y. Tan, “A unified distance measure scheme for orientation
coding in identification.” in Information Science and Technology, 2013
IEEE Congress on. IEEE, 2013, pp. 979–985.
A. Mohamed Imran and M. Kowsalya, “A new power system reconfiguration scheme for power loss minimization and voltage profile enhancement
using fireworks algorithm,” International Journal of Electrical Power &
Energy Systems, vol. 62, pp. 312–322, 2014.
N. Pholdee and S. Bureerat, “Comparative performance of meta-heuristic
algorithms for mass minimisation of trusses with dynamic constraints,”
Advances in Engineering Software, vol. 75, pp. 1–13, 2014.
S. Bureerat, “Hybrid population-based incremental learning using real
codes,” Learning and Intelligent Optimization, pp. 379–391, 2011.
Z. Du, “Fireworks algorithm for solving non-linear equation set (in
chinese),” pp. 19–21, 2013.
——, “Fireworks algorithm for solving 0/1 knapsack problem (in chinese),” pp. 61–63, 2011.
M. Clerc and J. Kennedy, “The particle swarm - explosion, stability, and
convergence in a multidimensional complex space,” Trans. Evol. Comp,
vol. 6, no. 1, pp. 58–73, 2002.
A. P. Engelbrecht, Fundamentals of Computational Swarm Intelligence.
John Wiley & Sons, 2006.
G. Lu, D. Tan, and H. Zhao, “Improvement on regulating definition of antibody density of immune algorithm,” in Neural Information Processing,
2002. ICONIP’02. Proceedings of the 9th International Conference on,
vol. 5. IEEE, 2002, pp. 2669–2672.
R. C. Eberhart and Y. Shi, “Comparison between genetic algorithms
and particle swarm optimization,” in Evolutionary Programming VII.
Springer, 1998, pp. 611–616.
H.-G. Beyer and H.-P. Schwefel, “Evolution strategies–a comprehensive
introduction,” Natural computing, vol. 1, no. 1, pp. 3–52, 2002.
J. Liang, B. Qu, P. Suganthan, and A. G. Hernández-Dı́az, “Problem
definitions and evaluation criteria for the cec 2013 special session on
real-parameter optimization,” 2013.
M. El-Abd, “Testing a particle swarm optimization and artificial bee
colony hybrid algorithm on the cec13 benchmarks,” in Evolutionary

Computation (CEC), 2013 IEEE Congress on. IEEE, 2013, pp. 2215–
2220.
[51] N. Padhye, P. Mittal, and K. Deb, “Differential evolution: Performances
and analyses,” in Evolutionary Computation (CEC), 2013 IEEE Congress
on. IEEE, 2013, pp. 1960–1967.
[52] “Standard particle swarm optimisation,” in Particle Swarm Central,Tech.
Rep., 2012, pp. 1–15. [Online]. Available: http://clerc.maurice.free.fr/
pso/SPSOdescriptions.pdf
[53] M. Zambrano-Bigiarini, M. Clerc, and R. Rojas, “Standard particle
swarm optimisation 2011 at cec-2013: A baseline for future pso improvements,” in Evolutionary Computation (CEC), 2013 IEEE Congress
on, 2013, pp. 2337–2344.

