Multiobjective optimization in Python
Project description
Platypus
What is Platypus?
Platypus is a framework for evolutionary computing in Python with a focus on multiobjective evolutionary algorithms (MOEAs). It differs from existing optimization libraries, including PyGMO, Inspyred, DEAP, and Scipy, by providing optimization algorithms and analysis tools for multiobjective optimization. It currently supports NSGA-II, NSGA-III, MOEA/D, IBEA, Epsilon-MOEA, SPEA2, GDE3, OMOPSO, SMPSO, and Epsilon-NSGA-II. For more information, see our examples and online documentation.
Example
For example, optimizing a simple biobjective problem with a single real-valued decision variables is accomplished in Platypus with:
from platypus import NSGAII, Problem, Real
def schaffer(x):
return [x[0]**2, (x[0]-2)**2]
problem = Problem(1, 2)
problem.types[:] = Real(-10, 10)
problem.function = schaffer
algorithm = NSGAII(problem)
algorithm.run(10000)
Installation
To install the latest Platypus release, run the following command:
pip install platypus-opt
To install the latest development version of Platypus, run the following commands:
pip install -U build setuptools
git clone https://github.com/Project-Platypus/Platypus.git
cd Platypus
python -m build
python -m pip install --editable .
Anaconda
Platypus is also available via conda-forge.
conda config --add channels conda-forge
conda install platypus-opt
For more information, see the feedstock.
Citation
If you use this software in your work, please cite it as follows (APA style):
Hadka, D. (2024). Platypus: A Framework for Evolutionary Computing in Python (Version 1.3.0) [Computer software]. Retrieved from https://github.com/Project-Platypus/Platypus.
License
Platypus is released under the GNU General Public License.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file platypus_opt-1.4.1.tar.gz
.
File metadata
- Download URL: platypus_opt-1.4.1.tar.gz
- Upload date:
- Size: 442.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b341790be67354c2c964bb3431b9acc8a1a147aca9d9464a43720dc58b3895e8 |
|
MD5 | 3b5cb41a582a2a64a0b8d5e0f90cdf5d |
|
BLAKE2b-256 | a7a2032cfd9c716edeb386c431a841195b4d43c7c98dfba54982ece4dce5835d |
File details
Details for the file Platypus_Opt-1.4.1-py3-none-any.whl
.
File metadata
- Download URL: Platypus_Opt-1.4.1-py3-none-any.whl
- Upload date:
- Size: 124.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9c22883a3ffd91bd3a6dfb75412fc6b80368850fdb9b24f9e301a8cbf160fdda |
|
MD5 | 20c2e26ef93e064e9e4926cd7e6ead5b |
|
BLAKE2b-256 | 0335cc1b9e3942af4ba74330736ee369cf29c3cc517823812d74f665737239ae |