/swarmlib

This repository implements several swarm optimization algorithms and visualizes them. Implemented algorithms: Particle Swarm Optimization (PSO), Firefly Algorithm (FA), Cuckoo Search (CS), Ant Colony Optimization (ACO), Artificial Bee Colony (ABC), Grey Wolf Optimizer (GWO) and Whale Optimization Algorithm (WOA)

Primary LanguagePythonBSD 3-Clause "New" or "Revised" LicenseBSD-3-Clause

swarmlib

Pypi PyPI - Python Version Pypi - Downloads Stars
PyPI - License Lint, Test, Bundle and Deploy Codecov
Chat on Gitter Donate PRs Welcome

Description

This repository implements several swarm optimization algorithms and visualizes their (intermediate) solutions. To run the algorithms one can either use the CLI (recommended) or the API.

For a list of all available algorithms and their detailed description checkout the wiki.

Installation

You can install the package with pip from pypi. Installing the library in a virtual environment is recommended:

# Create virtual environment
python3 -m venv .venv
source .venv/bin/activate

# Install the latest version of swarmlib
pip install --upgrade swarmlib

# Verify installation
swarm --version

Usage

To print all available algorithms:

swarm --help

Contribution

If you found a bug or are missing a feature do not hesitate to file an issue or to ask questions on gitter. For a more detailed guide checkout the CONTRIBUTING.md file.

Pull Requests are welcome!

Wiki

Swarmlib's wiki includes all of the documentation and more details to each algorithm. It can be found here.

Support

When you like this package make sure to star the repository. I am always looking for new ideas and feedback.

In addition, it is possible to sponsor this project via PayPal or GitHub sponsors.

Example

Particle Swarm Optimization