The Bat algorithm is a
metaheuristic
In computer science and mathematical optimization, a metaheuristic is a higher-level procedure or heuristic designed to find, generate, or select a heuristic (partial search algorithm) that may provide a sufficiently good solution to an optimizati ...
algorithm for
global optimization
Global optimization is a branch of applied mathematics and numerical analysis that attempts to find the global minima or maxima of a function or a set of functions on a given set. It is usually described as a minimization problem because the max ...
. It was inspired by the echolocation behaviour of
microbats, with varying pulse rates of emission and loudness. The Bat algorithm was developed by
Xin-She Yang
Xin-She Yang is Reader at the Middlesex University and was a senior research scientist at National Physical Laboratory, best known as a developer of various heuristic algorithms for engineering optimization. He obtained a DPhil in applied math ...
in 2010.
Metaphor
The idealization of the
echolocation of microbats can be summarized as follows: Each virtual bat flies randomly with a velocity
at position (solution)
with a varying frequency or wavelength and loudness
. As it searches and finds its prey, it changes frequency, loudness and pulse emission rate
. Search is intensified by a local
random walk
In mathematics, a random walk is a random process that describes a path that consists of a succession of random steps on some mathematical space.
An elementary example of a random walk is the random walk on the integer number line \mathbb Z ...
. Selection of the best continues until certain stop criteria are met. This essentially uses a frequency-tuning technique to control the dynamic behaviour of a swarm of bats, and the balance between exploration and exploitation can be controlled by tuning algorithm-dependent parameters in bat algorithm.
A detailed introduction of metaheuristic algorithms including the bat algorithm is given by Yang where a demo program in
MATLAB
MATLAB (an abbreviation of "MATrix LABoratory") is a proprietary multi-paradigm programming language and numeric computing environment developed by MathWorks. MATLAB allows matrix manipulations, plotting of functions and data, implementa ...
/
GNU Octave
GNU Octave is a high-level programming language primarily intended for scientific computing and numerical computation. Octave helps in solving linear and nonlinear problems numerically, and for performing other numerical experiments using a langu ...
is available, while a comprehensive review is carried out by Parpinelli and Lopes. A further improvement is the development of an evolving bat algorithm (EBA) with better efficiency.
See also
*
List of metaphor-based metaheuristics
References
Further reading
*Yang, X.-S. (2014), ''Nature-Inspired Optimization Algorithms'',
Elsevier
Elsevier () is a Dutch academic publishing company specializing in scientific, technical, and medical content. Its products include journals such as '' The Lancet'', ''Cell'', the ScienceDirect collection of electronic journals, '' Trends'', ...
.
{{swarming
Nature-inspired metaheuristics