Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Implementation of Firefly Algorithm in Python

License

NotificationsYou must be signed in to change notification settings

firefly-cpp/FireflyAlgorithm

Repository files navigation

Firefly Algorithm --- Implementation of Firefly algorithm in Python

PyPI VersionPyPI - Python VersionDownloadsGitHub repo sizeAUR packageGitHub licensebuild

GitHub commit activityAverage time to resolve an issuePercentage of issues still openGitHub contributorsPackaging status

DOI

📋 About📦 Installation🚀 Usage📚 Reference Papers📄 Cite us🔑 License

📋 About

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

📦 Installation

To install FireflyAlgorithm with pip, use:

pip install fireflyalgorithm

To install FireflyAlgorithm on Fedora, use:

dnf install python-fireflyalgorithm

To install FireflyAlgorithm on Arch Linux, please use anAUR helper:

$ yay -Syyu python-fireflyalgorithm

To install FireflyAlgorithm on Alpine Linux, use:

$ apk add py3-fireflyalgorithm

🚀 Usage

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

Test functions 📈

In thefireflyalgorithm.problems module, you can find the implementations of 33 popular optimization test problems. Additionally, the module provides a utility function,get_problem, that allows you to retrieve a specific optimization problem function by providing its name as a string:

fromfireflyalgorithm.problemsimportget_problem# same as from fireflyalgorithm.problems import rosenbrockrosenbrock=get_problem('rosenbrock')

For more information about the implemented test functions,click here.

Command line interface 🖥️

The package also comes with a simple command line interface which allows you to evaluate the algorithm on several popular test functions. 🔬

firefly-algorithm -h
usage: firefly-algorithm [-h] --problem PROBLEM -d DIMENSION -l LOWER -u UPPER -nfes MAX_EVALS [-r RUNS] [--pop-size POP_SIZE] [--alpha ALPHA] [--beta-min BETA_MIN] [--gamma GAMMA] [--seed SEED]Evaluate the Firefly Algorithm on one or more test functionsoptions:  -h, --help            show this help message and exit  --problem PROBLEM     Test problem to evaluate  -d DIMENSION, --dimension DIMENSION                        Dimension of the problem  -l LOWER, --lower LOWER                        Lower bounds of the problem  -u UPPER, --upper UPPER                        Upper bounds of the problem  -nfes MAX_EVALS, --max-evals MAX_EVALS                        Max number of fitness function evaluations  -r RUNS, --runs RUNS  Number of runs of the algorithm  --pop-size POP_SIZE   Population size  --alpha ALPHA         Randomness strength  --beta-min BETA_MIN   Attractiveness constant  --gamma GAMMA         Absorption coefficient  --seed SEED           Seed for the random number generator

Note: The CLI script can also run as a python module (python -m fireflyalgorithm ...).

📚 Reference Papers

I. Fister Jr., X.-S. Yang, I. Fister, J. Brest, D. Fister.A Brief Review of Nature-Inspired Algorithms for Optimization. Elektrotehniški vestnik, 80(3), 116-122, 2013.

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.

📄 Cite us

Fister Jr., I., Pečnik, L., & Stupan, Ž. (2023). firefly-cpp/FireflyAlgorithm: 0.4.3 (0.4.3). Zenodo.https://doi.org/10.5281/zenodo.10430919

🔑 License

This package is distributed under the MIT License. This license can be found online athttp://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!

About

Implementation of Firefly Algorithm in Python

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Contributors5

Languages


[8]ページ先頭

©2009-2025 Movatter.jp