/FireflyAlgorithm

Implementation of Firefly Algorithm in Python

Primary LanguagePythonMIT LicenseMIT


Firefly Algorithm --- Implementation of Firefly algorithm in Python


PyPI Version PyPI - Python Version PyPI - Downloads Downloads AUR package GitHub license GitHub commit activity Average time to resolve an issue Percentage of issues still open GitHub contributors

About

This package implements a nature-inspired algorithm for optimization called Firefly Algorithm (FA) in Python programming language.

Installation:

Install FireflyAlgorithm with pip:

pip install fireflyalgorithm

To install FireflyAlgorithm on Fedora, use:

dnf install python-fireflyalgorithm

To install FireflyAlgorithm on Arch Linux, please use an AUR helper:

$ yay -Syyu python-fireflyalgorithm

Usage:

import numpy as np
from fireflyalgorithm import FireflyAlgorithm

def sphere(x):
    return np.sum(x ** 2)

FA = FireflyAlgorithm()
best = FA.run(function=sphere, dim=10, lb=-5, ub=5, max_evals=10000)

print(best)

Reference Papers:

I. Fister Jr., X.-S. Yang, I. Fister, J. Brest. Memetic firefly algorithm for combinatorial optimization in Bioinspired Optimization Methods and their Applications (BIOMA 2012), B. Filipic and J.Silc, Eds. Jozef Stefan Institute, Ljubljana, Slovenia, 2012

I. Fister, I. Fister Jr., X.-S. Yang, J. Brest. A comprehensive review of firefly algorithms. Swarm and Evolutionary Computation 13 (2013): 34-46.

License

This package is distributed under the MIT License. This license can be found online at http://www.opensource.org/licenses/MIT.

Disclaimer

This framework is provided as-is, and there are no guarantees that it fits your purposes or that it is bug-free. Use it at your own risk!