Alireza Sabzalian
Dolphin echolocation mimics strategies used by dolphins for their hunting process. Dolphins produce a kind of voice called sonar to locate the target,
doing this dolphin change sonar to modify the target and its location. This fact is mimicked here as the main feature of the new optimization method.
DOLPHIN ECHOLOCATION ALGORITHM
Regarding an optimization problem, it can be understood that echolocation is similar to optimization in some aspects; the process of foraging preys
using echolocation in dolphins is similar to finding the optimum answer of a problem.
Dolphins initially search all around the search space to find the prey. As soon as a dolphin approaches the target, the animal restricts its search, and
incrementally increases its clicks in order to concentrate on the location.
The method simulates dolphin echolocation by limiting its exploration proportional to the distance from the target. For making the relationship much
clear, consider an optimization problem. Two stages can be identified: in the first stage the algorithm explores all around the search space to perform
a global search, therefore it should look for unexplored regions. This task is carried out by exploring some random locations in the search space, and
in the second stage it concentrates on investigation around better results achieved from the previous stage. These are obvious inherent
characteristics of all meta-heuristic algorithms.
DOLPHIN ECHOLOCATION ALGORITHM
Before starting optimization, search space should be sorted using the following rule:
Search Space Ordering: For each variable to be optimized during the process, sort alternatives of the search space in an ascending or descending
order. If alternatives include more than one characteristic, perform ordering according to the most important one.
Using this method, for ππππππππ π, ππππ‘ππ π΄π of length πΏπ΄π is created which contains all possible alternatives for the ππ‘β variable putting these vectors
next to each other, as the columns of a matrix, the Matrix π΄ππ‘πππππ‘ππ£ππ ππ΄Γππ is created, in which ππ΄ is πππ₯(πΏπ΄π)π=1:ππ ; with ππ being the number
of variables.
DOLPHIN ECHOLOCATION ALGORITHM
By applying Dolphin Echolocation (DE) algorithm, the user would be able to change the ratio of answers produced in phase 1 to the answers
produces in phase 2 according to a predefined curve. In other words, global search, changes to a local one gradually in a user defined style. The
user defines a curve on which the optimization convergence should be performed, and then the algorithm sets its parameters in order to be able to
follow the curve. The method works with the likelihood of occurrence of the best answer in comparison to the others. In other words, for each variable
there are different alternatives in the feasible region, in each loop the algorithm defines the possibility of choosing the best so far achieved alternative
according to the user determined convergence curve. By using this curve, the convergence criterion is dictated to the algorithm, and then the
convergence of the algorithm becomes less parameter dependent. The curve can be any smooth ascending curve but there are some
recommendations for it.
A Convergence Factor (CF) is defined as the average possibility of the elitist answer.
DOLPHIN ECHOLOCATION ALGORITHM
DOLPHIN ECHOLOCATION ALGORITHM
Sample Convergence Curves, Applying Eq. 1 for Different Values of Power
πΈπ. 1:
ππ πΏππππ = ππ1 + 1 β ππ1πΏππππ
πππ€ππ β 1
πΏππππ ππ’ππππ πππ€ππ β 1
a curve according to which the convergence factor should change
during the optimization process should be assigned. Here, the change
of CF is considered to be according to the following curve:
ππ: Predefined probability
ππ1: Convergence factor of the first loop in which the answers are selected randomly
πΏππππ: Number of the current loop
πππ€ππ: Degree of the curve. As it can be seen, the curve in Eq.1 is a polynomial of Power degree.
πΏππππ ππ’ππππ: Number of loops in which the algorithm should reach to the convergence point.
This number should be chosen by the user according to the computational effort that can be
afforded for the algorithm.
DOLPHIN ECHOLOCATION ALGORITHM
πΈπ. 1:
ππ πΏππππ = ππ1 + 1 β ππ1πΏππππ
πππ€ππ β 1
πΏππππ ππ’ππππ πππ€ππ β 1
The flowchart of the algorithm is shown:
DOLPHIN ECHOLOCATION ALGORITHM
The main steps of Dolphin Echolocation (DE) for optimization are as follows:
1- Initiate ππΏ locations for a dolphin randomly. This step contains creating πΏππΏΓππ matrix, in which ππΏ is the number of locations and ππ is the
number of variables.
2- Calculate the PP of the loop using Eq.1
DOLPHIN ECHOLOCATION ALGORITHM
πΈπ. 1:
ππ πΏππππ = ππ1 + 1 β ππ1πΏππππ
πππ€ππ β 1
πΏππππ ππ’ππππ πππ€ππ β 1
3- Calculate the fitness of each location. Fitness should be defined in a manner that the better answers get higher values. In other words the
optimization goal should be to maximize the fitness.
4- Calculate the accumulative fitness according to dolphin rules as follows:
A)
πππ π = 1 π‘π ππΏ
πππ π = 1 π‘π ππ
πΉπππ π‘βπ πππ ππ‘πππ ππ πΏ π, π ππ ππ‘β ππππ’ππ ππ π΄ππ‘πππππ‘ππ£ππ πππ‘πππ₯ πππ ππππ ππ‘ ππ π΄
πππ π = βπ π π‘π π π
π΄πΉ π΄+π π =1
π πΓ π π β π Γ πΉππ‘πππ π π + π΄πΉ π΄+π π
πππ
πππ
πππ
DOLPHIN ECHOLOCATION ALGORITHM
π΄πΉ π΄+π π: The accumulative fitness of the (π΄ + πΎ)π‘β alternative to be chosen for the ππ‘β variable
π π is the effective radius in which accumulative fitness of the alternative π΄β²π neighbors are affected from its fitness.
This radius is recommended to be not more than 1/4 of the search space.
πΉππ‘πππ π (π) is the fitness of location π.
It should be added that for alternatives close to edges (where π΄ + π is not a valid; π΄ + π < 0 or π΄ + π > πΏπ΄π), the
π΄πΉ is calculated using a reflective characteristic. In this case, if the distance of an alternative to the edge is less than
π π, it is assumed that the same alternative exists where picture of the mentioned alternative can be seen, if a mirror
is placed on the edge.
DOLPHIN ECHOLOCATION ALGORITHM
B) In order to distribute the possibility much evenly in the search space, a small value of π is added to all the arrays as π΄πΉ = π΄πΉ + π .
Here, π should be chosen according to the way the fitness is defined. It is better to be less than the minimum value achieved for the fitness.
C) Find the best location of this loop and name it βThe best locationβ. Find the alternatives allocated to the variables of the best location, and let their AF be
equal to zero. In other words:
πππ π = 1 π‘π ππ’ππππ ππ πππππππππ
πππ π = 1 π‘π ππ’ππππ ππ π΄ππ‘πππππ‘ππ£ππ
ππ π = πβπ πππ π‘ πππππ‘πππ π
π΄πΉππ = 0
πππ
πππ
πππ
DOLPHIN ECHOLOCATION ALGORITHM
5- For variable π(π=1 π‘π ππ), calculate the probability of choosing alternative π(π=1 π‘ππ΄πΏπ), according to the following relationship:
πππ =π΄πΉππ
π=1
πΏπ΄ππ΄πΉππ
6- Assign a probability equal to ππ to all alternatives chosen for all variables of the best location and devote rest of the probability to the other alternatives
according to the following formula:
πππ π = 1 π‘π ππ’ππππ ππ πππππππππ
πππ π = 1 π‘π ππ’ππππ ππ π΄ππ‘πππππ‘ππ£ππ
ππ π = πβπ πππ π‘ πππππ‘πππ π
πππ = ππ
πππ π
πππ = (1 β ππ)πππ
πππ
πππ
πππ
DOLPHIN ECHOLOCATION ALGORITHM
7- Calculate the next step locations according to the probabilities assigned to each alternative.
8- Repeat Steps 2 to 7 as many times as the Loops Number.
DOLPHIN ECHOLOCATION ALGORITHM
[1] Kaveh A, Farhoudi N., A new optimization method: Dolphin Echolocation, Advances in Engineering Software, 59(2013) 53-70.
[2] Kaveh A, L. Jafari and N. Farhoudi, Truss optimization with natural frequency constraints using a dolphin echolocation algorithm, Asian Journal of Civil
Engineering (BHRC) Vol. 16, No. 1 (2014) Pages 29-46
[3] K. Lenina, Dr. B. Ravindranath Reddyb and Dr. M. Surya Kalavathic , Dolphin Echolocation Algorithm for Solving Optimal Reactive Power Dispatch Problem,
International Journal of Computer (IJC) (2014) Volume 12, No 1, Pages 1-15
[4] Au WWL. The sonar of dolphins. New York: Springer, 1993.
[5] Thomas JA, Moss CF, Vater M. Echolocation in bats and dolphins. University of Chicago Press, 2002.
DOLPHIN ECHOLOCATION ALGORITHM