image optimization using firefly algorithm
Posts: 6,843
Threads: 4
Joined: Mar 2015
matlab code for firefly algorithm for optimization
"The firefly algorithm (FA) is a metaheuristic algorithm, inspired by the flashing behaviour of fireflies. The primary purpose for a firefly's flash is to act as a signal system to attract other fireflies. Xin-She Yang formulated this firefly algorithm by assuming:
All fireflies are unisexual, so that one firefly will be attracted to all other fireflies;
Attractiveness is proportional to their brightness, and for any two fireflies, the less bright one will be attracted by (and thus move to) the brighter one; however, the brightness can decrease as their distance increases;
If there are no fireflies brighter than a given firefly, it will move randomly.
The brightness should be associated with the objective function.
Firefly algorithm is a nature-inspired meta-heuristic optimization algorithm."
Firefly Algorithm (FA) is a metaheuristic algorithm for global optimization, which is inspired by flashing behavior of firefly insects. This algorithm is proposed by Xin-She Yang in 2008. Fireflies use the flashing behavior to attract other fireflies, usually for sending signals to opposite sex. However, in the mathematical model, used inside Firefly Algorithm, simply the fireflies are unisex, and any firefly can attract other fireflies.
Attractiveness of a firefly is proportional to its brightness and for any couple of fireflies, the brighter one will attract the other; so the less bright one is moved towards the brighter one. This is performed for any binary combination of fireflies in the population, on every iteration of algorithm. For more information, you can refer to the related article on Wikipedia, here.
In this post, we are going to share with you, the open-source MATLAB implementation of Firefly Algorithm (FA), which is easy to use within your research and projects, if you are familiar with MATLAB programming language.