2.2 Self-Optimization as new PSO research branch
2.2.3 Self-Optimization in alternate bio-inspired algorithm’s
PSO is not the only research area with regard to swarm algorithms. In the meantime, many others swarm and bio-inspired approaches evolved such as:
• Artificial Bee Colony Algorithm (ABCA) • Artificial Ant Colony Algorithms (AACA) • Memetic Firefly Algorithm FFA (MFFA) • Glowworm Algorithm (GWA)
• Cuckoo Search Algorithm (CSA) • Bat Artificial Algorithm (BAA) • Cultural Algorithm (CA)
• Hunting Search Algorithm (HSA) • Etc.
In general, these swarm algorithms mimic behavior of social animal groups and colonies in order to apply them to complex optimization problems. The members of these groups communicate based on simple rules either directly or indirectly with each other. This interaction triggers emergent patterns in the system, which makes the colony to better react to the environment and therefore perform better on problems apparent to the group.
Out of these algorithms, two of them as representatives of other “bio-inspired algorithms” are more closely evaluated. The intent is not only to understand their algorithmic approach, but also what kind of approaches they have with regard to self-adaption or self-organization
The selection of the investigated algorithms is done based on the self-adaption capabilities of these bio-inspired algorithms, which means that they have just a few parameters to define and that these parameters do have potential to be self-adaptive during the algorithmic runtime.
2.2.3.1 BAT Artificial Algorithm (BAA)
BAA was originally created by (Yang, 2010). Bats uses sonar and echolocation to find prey and avoid barriers. They do this by sending a very loud sound pulse at certain frequencies and wavelength and then listen to the corresponding echo.
The BAT strategy can be theorized as follows:
• All bats use echolocation to determine the distance of objects. At the same time, they are able to differentiate between objects (e.g. prey or obstacles)
• Bats randomly fly with velocity vi to position xi at a fixed frequency fmin. They are able to adapt the wavelength λ and loudness A0 of the send pulses.
• Although loudness can vary significantly, it is assumed that loudness decreases from large value A0 to a minimum value A
min.
The bat colony is set into the search room with an initial position xi and velocity vi (similar to the PSO particles). Each bat is equal to a candidate solution xi = {x1, x2, …, xn} of the optimization problem.
In addition, m design variables are defined with
{𝑥} = {𝑥1, 𝑥2, …, 𝑥𝑚} T and an objective function f(x).
At the same time the pulse rate ri, the loudness Ai and the frequency fi at xi is initialized. New solutions at time step t are created due to the following update equations:
fi = fmin+ (fmax− fmin)β
Equation 28: BAT Algorithm – Frequency update of bat at position xi
vit = vit−1+ (xit−1− x∗)fi
Equation 29: BAT Algorithm – Velocity update of bat at iteration t+1
xit = xit−1+ vit
Equation 30: BAT Algorithm – Position update of bat at iteration t+1
β – is a random number from a uniform distribution [0,1], x∗ is the current best bat under n bats. If a generated random number is > than pulse rate ri, then the algorithm looks for a
solution among the best solutions. Furthermore, the algorithm generates a local solution around the best ones. In case a random generated number is > than the bats loudness Ai and the functional value is smaller than the functional value of the actual best bat x∗ then
it is time to accept new solutions. Pulse rate i of the bat increases accordingly and the loudness decreases according to a cooling mechanism. In order to find the new best bat, all the best bats need to be ranked to find the new x∗.
With regard to self-adaption, the BAT algorithm categorizes as a self-adaptive parameterization during the algorithmic runtime. The parameters adapted are the loudness and the pulse rate of a bat, which then compares against generated random numbers. They are a representation for exploitation and exploration when we talk in PSO terms. The overall falling loudness when getting to optimal solutions looks similar like the inertia weight factor which also cools down over time, indicating the exploitation phase, whereas higher loudness is comparable with exploration state. The pulse rate instead is comparable to the cognition factor in the PSO, which increases when an interesting place is found by a particle. Overall there are a couple of similarities in the BAT algorithm compared to PSO, the major difference lies in the concept of the multiple Gbest’s in the bat algorithm, whereas in the standard PSO there is just one.
2.2.3.2 Memetic Firefly Algorithm (MFFA)
The second example is the Memetic Firefly Algorithm (MFFA). In Yang et al. (Swarm Intelligence and Bio-Inspired Applications, 2013) the authors describe the criteria’s how the firefly algorithm works. The major principle is that of a flashing light and the appropriate light intensity IL. The light intensity shrinks when a firefly moves away from source r according to the following relation:
Equation 31: MFFA – Relation Light Intensity and distance r from source
The light intensity is a synonym of the fitness function of a candidate solution to a problem to be optimized. So, it can be written such that, IL≈ f(s), where s = S(x) is the candidate
solution.
The following characteristics must hold for the firefly algorithm: • Fireflies are unisex
• Attractiveness β is proportional to the light intensity (relative measure from beholders view)
• Light intensity is determined by the problem landscape (absolute emitted light)
The exact definition of light intensity is as follows:
IL(r) = ILo e
−γr2
Equation 32: MFFA – Light intensity varied by distance r
Where ILo is the light intensity at the source and λ a fixed light absorption coefficient. Similar to the light intensity also the attractiveness β depends on distance r according to the following formula:
β(r) = β0 e−γr
k
The distance between any pair of fireflies (i, j) is then calculated according the Euclidian Distance formula with:
rij = ||xi− xj|| = √∑n (xik− xjk)
k=1
Equation 34: MFFA – Euclidian distance between a pair of fireflies
Finally each firefly i will change its position and move to more intersting firefly j based on the following update equation:
xi = xi + β0e−γrij2 (x
j− xi) + αNi(0,1)
Equation 35: MFFA – Final update equation of a firefly i
The first portion of the equation describes the actual position, the second the attractiveness and the third part corresponds to the random movement of the firefly.
It is only similar to PSO with regard to the position update and the random movement of the firefly. Apart from that, it also differs such that MFFA has no conception of social and cognition between fireflies. It just employs the approach of attractiveness at varying strength between fireflies, which is simpler compared to the PSO algorithm.
Because the efficiency of MFFA is strongly dependent on the control parameters α, β and γ, the initial setting of these parameters can turn into a problem during the runtime of the algorithm.
The concept is as following:
The three control parameters α, β and γ are coded in the following form as a vector into the firefly’s gene. In other words, it describes the firefly in his actual state including the actual parameter values and the appropriate standard deviations of the parameter values:
xi(t) = (xi0(t), … , xin(t) ; α(t); σo(t); β(t); σ1(t); λ(t); σ12(t)), for i = 1 . . N
Equation 36: MFFA – Genotype of a firefly i as a base for self-adaption
MFFA then mutates the self-adaptive control parameters according to specific rules, which also implies randomness from a Gaussian distribution. In every iteration, MFFA then calculates the fitness of the fireflies according to this genotype.
There are no similarities to existing PSO’s with regard to self-adaption of control parameters. It is a new concept, which pretty much characterizes the firefly according its success in the problem landscape. This can be an interesting idea for application in the MSAPSO as well, although in the actual version there is no similarity between MFFA and MSAPSO.