Glowworm Swarm Optimization (GSO) is an algorithm inspired by the behavior of glowworms or fireflies. The optimization technique involves agents or ‘glowworms’ that communicate and interact with each other to collectively move towards areas of a search space with the highest ’luminosity’ or quality scores, thus optimizing a given problem.
Imagine a dark forest filled with magical fireflies. These fireflies glow brighter when they find a secret treasure. They also attract other fireflies to them. Every firefly can only see others who are close or very bright. Over time, all fireflies come together at the places with the most treasure. This is Glowworm Swarm Optimization! Except the forest is a problem we want to solve, the treasure is the best solution, and the fireflies are parts of the computer program.
Glowworm Swarm Optimization (GSO) is a nature-inspired optimization algorithm developed to handle multimodal optimization problems. The algorithm draws inspiration from the social behavior of certain species of glowworms, more specifically, their ability to modulate their light intensities to attract other glowworms.
Starting with an initial population of glowworms scattered throughout a given search space, each glowworm carries an amount of luminescence proportional to the function’s value at its current location. Upon execution, glowworms move around the space, sharing and capturing luminescence through a given radius of influence, and preferentially moving towards glowworms with higher luminescence.
The radius of influence for each glowworm is dynamic, meaning that it fluctuates throughout the execution of the algorithm and depends on both the particular glowworm’s luminescence and the luminescence of its neighbors. This directly models the biological behavior where the intensity of a glowworm’s light determines the distance at which it can be observed.
The algorithm operates in various iterations, with each iteration involving two steps: luminescence update and movement. During luminescence update, glowworm i will share a portion of its luminescence with all glowworms j in its field of view. In the movement phase, each glowworm moves a step towards a glowworm that is not only in its field of view but also has greater luminescence.
The algorithm is particularly effective in scenarios where there are numerous optima (i.e., multimodal functions), and localized search is required. The solutions given by GSO can present a number of optimal or near-optimal solutions, which is useful in practical application scenarios where multiple solution options are suitable or exploration of different solutions is beneficial.