Fireworks Algorithm

What Is the Fireworks Algorithm?

The Fireworks Algorithm is a swarm intelligence optimization method inspired by the explosion patterns of fireworks. Introduced by Ying Tan and Yuanchun Zhu at Peking University in 2010, the algorithm addresses continuous-space global optimization problems by simulating the behavior of fireworks exploding in the night sky: each firework represents a candidate solution that generates a cluster of sparks in its local vicinity, with the spatial spread and number of sparks determined by the quality of the solution. The original paper, published in the proceedings of the First International Conference on Swarm Intelligence (ICSI 2010), demonstrated that the algorithm outperforms standard Particle Swarm Optimization (PSO) variants on several benchmark functions in both convergence speed and solution accuracy.

The Fireworks Algorithm belongs to the broader class of nature-inspired population-based metaheuristics, which includes PSO, differential evolution, and ant colony optimization. Like PSO, it maintains a population of candidate solutions that iteratively explore and exploit the search space, but the explosion mechanism provides a distinctive local search structure that adapts to solution quality rather than relying solely on social and individual velocity updates.

Explosion Mechanics

The central operation of the Fireworks Algorithm is the explosion step, in which each firework generates a set of sparks distributed around its current position in the search space. Two parameters govern the explosion: amplitude, which determines the radius of the explosion cloud, and the number of sparks, which determines the density of the search. A firework located at a good solution position (low function value for a minimization problem) generates more sparks concentrated in a smaller region, intensifying local search near promising areas. A firework at a poor position generates fewer sparks spread over a wider area, encouraging exploration. In addition to standard sparks, Gaussian mutation sparks are generated to introduce random perturbations that help the swarm escape local optima. After each explosion, a selection mechanism retains one representative location from each firework's spark cloud, along with globally chosen sparks, to form the next generation's population.

Variants and Parameter Control

Since the original formulation, researchers have proposed many variants to improve the algorithm's performance. The Enhanced Fireworks Algorithm (EFWA), introduced in 2013, addressed issues with search boundary handling and spark number calculations that caused uneven exploration in the original version. The Dynamic Search Fireworks Algorithm (dynFWA) replaced the fixed explosion amplitude with a dynamic scheme that adjusts amplitude based on how much the best solution has improved, providing faster convergence on unimodal functions without sacrificing performance on multimodal ones. The Cooperative Framework for Fireworks Algorithm (CFWA) decomposes high-dimensional problems and allocates fireworks to different subspaces, addressing the scalability challenges that affect most swarm algorithms in very large search spaces. A comprehensive review of these variants is compiled in the book Fireworks Algorithm: A Novel Swarm Intelligence Optimization Method by Ying Tan. The ACM Digital Library hosts the original conference proceedings with full citation data.

Applications

The Fireworks Algorithm has applications in a range of engineering and computational domains, including:

  • Hyperparameter optimization for machine learning models and deep neural networks
  • Antenna design and electromagnetic parameter tuning in signal processing
  • Scheduling and resource allocation in cloud computing and distributed systems
  • Chemical process optimization where objective functions are computationally expensive to evaluate
  • Trajectory planning for robotic systems operating in complex environments
Loading…