Skip to main content

Multiobjective optimization in Python

Project description

Platypus

Test and Publish Documentation Status PyPI Latest Release PyPI

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

platypus_opt-1.4.1.tar.gz (442.1 kB view details)

Uploaded Source

Built Distribution

Platypus_Opt-1.4.1-py3-none-any.whl (124.4 kB view details)

Uploaded Python 3

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

Hashes for platypus_opt-1.4.1.tar.gz
Algorithm Hash digest
SHA256 b341790be67354c2c964bb3431b9acc8a1a147aca9d9464a43720dc58b3895e8
MD5 3b5cb41a582a2a64a0b8d5e0f90cdf5d
BLAKE2b-256 a7a2032cfd9c716edeb386c431a841195b4d43c7c98dfba54982ece4dce5835d

See more details on using hashes here.

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

Hashes for Platypus_Opt-1.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 9c22883a3ffd91bd3a6dfb75412fc6b80368850fdb9b24f9e301a8cbf160fdda
MD5 20c2e26ef93e064e9e4926cd7e6ead5b
BLAKE2b-256 0335cc1b9e3942af4ba74330736ee369cf29c3cc517823812d74f665737239ae

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page