Ant lion optimizer



The Ant Lion Optimizer, known as ALO or Antlion Optimizer, is a recent meta-heuristic that mathematically models the interaction of ants and antlions in nature. An optimization algorithm has been developed to solve optimization problems considering random walk of ants, building traps, entrapment of ants in traps, catching preys, and re-building traps are implemented.

Inspiration
Antlions are knowns as doodlebugs sometimes. They are under the Myrmeleontidae family and live in two phases of larvae and adult. Their hunt mechanism is interesting when they are larvae. The small cone-shape trapped that we see in nature are made by antlions to trap ants. Antlions sit under the pit and wait for prey to be trapped. After consuming the prey’s flesh, antlions throw the leftovers outside the pit and amend the pit for the next hunt. It has been observed that antlions tend to dig a bigger pit when they are hungry and this is exactly the main inspiration for ALO algorithm.

Operators of the ALO algorithm
As mentioned above, the ALO algorithm simulates five main steps of hunts in larvae: random walk of ants, building traps, entrapment of ants in traps, catching preys, and re-building traps are implemented. The following paragraphs and sub-sections present the mathematical models:

The main random walk in this algorithm is as follows: $$ X(t)=[0, cumsum(2r(t_1)-1), cumsum(2r(t_2)-1),...,cumsum(2r(t_n)-1),] $$

$$ r(t)=\begin{cases}1 & rand >0.5\\0 & rand \leq 0.5\end{cases} $$

where cumsum calculates the cumulative sum, n is the maximum number of iteration, t shows the step of random walk (iteration in this study), r(t) is a stochastic function and rand is a random number generated with uniform distribution in the interval of [0, 1].

The location of ants should be stored in the following matrix:

$$ M_{Ant}=\begin{bmatrix}A_{1,1} & A_{1,2}&...&...& A_{1,d} \\ A_{2,1} & A_{2,2}&...&...& A_{2,d} \\ ... & ... & ...& ... & ...                               \\ ... & ... & ...& ... & ...                                \\ A_{n,1} & A_{n,2}&...&...& A_{n,d} \end{bmatrix} $$

where $$M_{Ant}$$ is the matrix for saving the position of each ant, $$A_{i,j}$$ shows the value of the j-th variable (dimension) of i-th ant, n is the number of ants, and d is the number of variables.

The corresponding objective value for each antlion is calculated and stored in the following matricx:

$$ M_{OA}=\begin{bmatrix}f([A_{1,1},A_{1,2},...,A_{1,d}]) \\ f([A_{2,1},A_{2,2},...,A_{2,d}]) \\ ...                                \\ ...                                 \\ f([A_{n,1},A_{n,2},...,A_{n,d}]) \end{bmatrix} $$

where $$M_{OA}$$ is the matrix for saving the fitness of each ant, $$A_{i,j}$$ shows the value of j-th dimension of i-th ant, n is the number of ants, and $$f$$ is the objective function. In ALO, it is assumed that the antlions also hide somewhere in the search space. To save their positions and fitness values, the following matrices are utilized:

$$ M_{OAL}=\begin{bmatrix}f([AL_{1,1},AL_{1,2},...,AL_{1,d}]) \\ f([AL_{2,1},AL_{2,2},...,AL_{2,d}]) \\ ...                                \\ ...                                 \\ f([AL_{n,1},AL_{n,2},...,AL_{n,d}]) \end{bmatrix} $$

where $$M_{OAL}$$ is the matrix for saving the fitness of each antlion, $$AL_{i,j}$$ shows the j-th dimension’s value of i-th antlion, n is the number of antlions, and $$f$$ is the objective function.

Random walks of ants
The random walk discussed above is used in the following equation to update the position of ants:

$$ X_{i}^{t}=\frac{(X_{i}^{t}-a_i)\times (d_i-c_{i}^{t})}{(d_{i}^{t}-a_i)}+c_i $$

where $$a_i$$ is the minimum of random walk of i-th variable, $$b_i$$ is the maximum of random walk in i-th variable, $$c^t_i$$ is the minimum of i-th variable at t-th iteration, and $$d^t_i$$ indicates the maximum of i-th variable at t-th iteration.



Trapping in antlion’s pits
The impact of antlions on the movement of ants is modelled as follows: $$ c_{i}^{t}=Antlion_{j}^{t}+c^t $$

$$ d_{i}^{t}=Antlion_{j}^{t}+d^t $$

where $$c^t$$ is the minimum of all variables at t-th iteration, $$d^t$$ indicates the vector including the maximum of all variables at t-th  iteration, View the MathML source is the minimum of all variables for i-th   ant, View the MathML source is the maximum of all variables for i-th   ant, and View the MathML source shows the position of the selected j-th antlion at t-th iteration.

Building trap
Building traps is done with a roulette wheel is employed. The roulette wheel operator selects antlions based of their fitness during optimization. This mechanism gives high chances to the fitter antlions for catching ants.

Sliding ants towards antlion
The mathematical model of this step of hut is given below. It may be seen in the equation that the radius of ants’s random walks hyper-sphere is decreased adaptively. $$ c^{t}=\frac{c^{t}}{I} $$

$$ d^{t}=\frac{d^{t}}{I} $$

where I is a ratio, ct is the minimum of all variables at t-th iteration, and dt indicates the vector including the maximum of all variables at t-th iteration.

Catching prey and re-building the pit
In ALO, catching prey occurs when ants get fitter (dives inside the sand) than its associated antlion. An antlion is then required to update its position to the latest position of the hunted ant to enhance its chance of catching new prey. The following equation simulates this behaviour:

$$ Antlion_j^t=Ant_i^t \quad \quad if f(Ant_i^t)>f(Antlin_j^t) $$

where t  shows the current iteration, View the MathML source shows the position of selected j-th antlion at t-th   iteration, and View the MathML source indicates the position of i-th ant at t-th iteration.

Elitism
Elitism is an important characteristic of evolutionary algorithms that allows them to maintain the best solution(s) obtained at any stage of optimization process. In this study the best antlion obtained so far in each iteration is saved and considered as an elite. Since the elite is the fittest antlion, it should be able to affect the movements of all the ants during iterations. Therefore, it is assumed that every ant randomly walks around a selected antlion by the roulette wheel and the elite simultaneously as follows:

$$ Ant_i^t=\frac{ R_{A}^{t}+ R_{E}^{t}}{2} $$

where Rt A is the random walk around the antlion selected by the roulette wheel at t-th iteration, Rt E is the random walk around the elite at t-th iteration, and Antti indicates the position of i-th ant at t-th iteration.

Binary ALO
The binary version of ALO called BALO uses a threshold function to solve discrete optimization problems.

Multi-objective ALO
The multi-objective version of ALO called MOLAO has been proposed to solve multi-objective problems. MOALO uses an archive to store and improve Pareto optimal fronts.

Applications
ALO has been widely used in the literature to solve a variety of problems. some of the applications are:

Automatic generation control of a multi-area system

Optimum design of skeletal structures

Optimal load dispatch problem

Flexible process planning

Non-convex economic load dispatch problem for small-scale power systems

Multi-objective optimum generation scheduling

Training Neural Networks

Route planning for unmanned aerial vehicle

Regulator in Automatic Generation Control of Interconnected Power System

Integrated Process Planning and Scheduling

Hydro-thermal-wind scheduling

Optimal community detection

control side lobe level and null depths in linear antenna arrays

Load Frequency Control of Multi-Area Interconnected Power Systems

Structural design problems

Optimal power flow with enhancement of voltage stability and reduction of power loss

Feature selection

MPPT of a Partially Shaded Photovoltaic Module

Unified Reliability Centric Preventive Generator Maintenance Scheduling Measure

optimal reactive power dispatch solution

Reactive and Active Power Loss Reduction

Complex power setting for optimal power flow problem

Power System Engineering

Multi-Objective Distribution Network Operation Based on Distributed Generation Optimal Placement

A multi-objective optimal sizing and siting of distributed generation

Efficient Modeling of Linear Discrete Filters

Optimum VAr planning problem

Optimal location and sizing of renewable distributed generations

Optimal real power rescheduling of generators for congestion management

Segmentation for MRI Liver Images

Renewable Distributed Generations

FOPID controller for Speed control and Torque ripple minimization of SRM Drive System

Segmentation for MRI Liver Images

Cost/Reliability Evaluation

Voltage stability enhancement and Voltage Deviation Minimization

Generator maintenance scheduling

Optimal allocation and sizing of renewable distributed generation

AUV sensor selection