Firefly algorithm

Uses your system voice; voice and rate in settings.

Snapshot

≈ 2 min read

Names in other languages

No names in other languages are held for this entry yet.

Article bodies are English and are not machine-translated. A name in another language is not a translation of the article.

In mathematical optimization, the firefly algorithm is a metaheuristic proposed by Xin-She Yang and inspired by the flashing behavior of fireflies.

In mathematical optimization, the firefly algorithm is a metaheuristic proposed by Xin-She Yang and inspired by the flashing behavior of fireflies. for i = 1 : n (all n fireflies) for j = 1 : i (n fireflies) Vary attractiveness with distance r via move firefly i towards j; Evaluate new solutions and update light intensity; end if end for j end for i Rank fireflies and find the current best; end while end Note that the number of objective function evaluations per loop is one evaluation per firefly, even though the above pseudocode suggests it is n×n. (Based on Yang's MATLAB code.) Thus the total number of objective function evaluations is (number of generations) × (number of fireflies). The main update formula for any pair of two fireflies \mathbf{x}_i and \mathbf{x}_j is \mathbf{x}_i^{t+1}=\mathbf{x}_i^t + \beta \exp[-\gamma r_{ij}^2] (\mathbf{x}_j^t - \mathbf{x}_i^t) +\alpha_t \boldsymbol{\epsilon}_t where \alpha_t is a parameter controlling the step size, while \boldsymbol{\epsilon}_t is a vector drawn from a Gaussian or other distribution. It can be shown that the limiting case \gamma \rightarrow 0 corresponds to the standard particle swarm optimization (PSO). In fact, if the inner loop (for j) is removed and the brightness I_j is replaced by the current global best g^* , then FA essentially becomes the standard PSO. ==See also== Swarm intelligence ==External links== [https://www.mathworks.com/matlabcentral/fileexchange/29693-firefly-algorithm] Files of the Matlab programs included in the book: Xin-She Yang, Nature-Inspired Metaheuristic Algorithms, Second Edition, Luniver Press, (2010).

Text derived from https://en.wikipedia.org/w/index.php?oldid=1368856634 under CC BY-SA 4.0; modifications have been made.

Provenance

snapshot enwiki-001368856634 · captured 1786446277.0 · version history

Cite this page as: encyclopegia.org, “Firefly algorithm”, snapshot enwiki-001368856634. https://encyclopegia.org/a/firefly-algorithm