Nanchang Institute of Technology
The firefly algorithm is prone to fall into local optimality when dealing with multi-peak optimization problems. To solve this problem, this paper proposes a firefly algorithm based on self-learning. According to the fitness, the particle is divided into self-learning particle and ordinary particle. The self-learning particles randomly selects a particle from the population and randomly selects a dimension to generate three candidate solutions by using three learning strategies, and the best solution among itself and the candidate solutions is obtained; Ordinary particles simultaneously choose two particles superior to themselves to learn. Self-learning particles can not only maintain the algorithm's exploration of multiple extremum Spaces, but also improve the algorithm's optimization accuracy. Guided by the mixed information of two particles, ordinary particles makes the algorithm jump out of the local optimal. In addition, the elimination mechanism is used to make the algorithm abandon the maintenance of low-quality extremum space, so as to improve the development of high-quality extremum space. Experimental results show that the proposed algorithm has high performance in multi-peak optimization problems.