What is glowworm swarm optimization (GSO)?
by Stephen M. Walker II, Co-Founder / CEO
What is glowworm swarm optimization?
Glowworm Swarm Optimization (GSO) is a meta-heuristic optimization algorithm inspired by the luminescent behavior of glowworms, which are also known as fireflies or lightning bugs. It was developed by Krishnanand N. Kaipa and Debasish Ghose and is particularly effective for capturing multiple optima of multimodal functions.
In this algorithm, each glowworm represents a potential solution to the problem at hand, and they communicate with each other using bioluminescence to find the best solution. The algorithm works by having each glowworm update its position based on the quality of the solutions it has found so far, as well as the positions of its neighbors. This process continues until a stopping criterion is met, such as reaching a certain number of iterations or finding a solution within a specified tolerance. GSO has been used in various applications, including optimization problems, clustering, and path planning.
How does glowworm swarm optimization work?
The GSO algorithm simulates the behavior of glowworms that emit light to attract peers and form subgroups. This behavior is abstracted to solve optimization problems. Here's a step-by-step explanation of the GSO process:
-
Initialization — A population of glowworms is randomly distributed in the search space. Each glowworm carries an initial amount of luciferin, a light-emitting compound.
-
Luciferin Update — At each iteration, glowworms update their luciferin levels based on their current location's objective function value. A higher objective function value results in a higher luciferin level, making the glowworm more attractive to others.
-
Movement — Glowworms move towards neighbors with higher luciferin levels within their local decision domain, which is dynamically adjusted and bounded by a sensor range. This movement is probabilistic and based on the relative luciferin levels of the neighbors.
-
Local Decision Domain Update — The local decision domain of each glowworm is updated based on the number of neighbors. This ensures that glowworms are neither too isolated nor too crowded, facilitating the discovery of multiple optima.
-
Termination — The algorithm iterates through the luciferin update and movement phases until a stopping criterion is met, such as a maximum number of iterations or convergence to a solution.
What are the benefits of glowworm swarm optimization?
GSO has been applied to various domains, including robotic path planning, optimal power flow in electrical systems, and even medical diagnosis, such as COVID-19 classification using deep learning models.
What are some of the challenges associated with glowworm swarm optimization?
GSO's ability to split into subgroups and converge on multiple optima makes it suitable for problems with multiple solutions. However, like many optimization algorithms, it can have weaknesses such as slow convergence or low accuracy in global search. To address these, improved versions of GSO, such as the parallel hybrid mutation GSO, have been developed to enhance performance.