Skip to main content

MinionPy

Logo

PyPI Python Version PyPI version PyPI downloads PyPI License Documentation Status DOI

MinionPy is the Python interface to the Minion C++ optimization library. It focuses on single-objective, derivative-free optimization. The package includes several population-based and local optimization methods, along with CEC benchmark suites that can be used for testing and comparison.

Features

  • Optimization Algorithms

    • Differential Evolution-based algorithms:
      • Basic Differential Evolution (DE)
      • JADE
      • LSHADE
      • ARRDE
      • and other DE variants
    • Other population-based algorithms:
      • Artificial Bee Colony (ABC)
      • Canonical PSO, SPSO-2011, Dynamic Multi-Swarm PSO (DMS-PSO)
      • CMA-ES (Covariance Matrix Adaptation Evolution Strategy)
      • BIPOP-aCMAES
      • RCMAES
    • Classical optimization algorithms:
      • Nelder-Mead
      • Generalized Simulated Annealing (Dual Annealing)
      • L-BFGS-B (vectorized & noise-robust)
      • L-BFGS (vectorized & noise-robust)
  • Benchmark Support
    The library includes benchmark functions from the CEC competitions (2011, 2014, 2017, 2019, 2020, 2022) and BBOB2009, providing a standardized environment for algorithm development, testing, and comparison.

  • Performance
    Most implemented algorithms are population-based, making them suitable for parallelization. MinionPy is optimized for vectorized functions, enabling efficient use of multithreading and multiprocessing capabilities.

  • Explicit termination status
    Optimization results expose status so callers can distinguish convergence, evaluation budget exhaustion, callback stops, numerical errors, and other termination reasons. The status prints as a readable string.

  • Callback early stopping
    Python callbacks receive a MinionResult. Return True to stop optimization early, or return False/None to continue.

  • Cross-Platform Compatibility
    MinionPy is implemented in C++ with a Python wrapper, supporting usage in both languages. It has been tested on the following platforms:

    • Windows 11
    • Linux Ubuntu 24.04
    • macOS Sequoia 15

Applications

MinionPy is applicable in scenarios where single objective, bound-constrained/unconstrauned optimization is required, including engineering, physics, and machine learning. Its standardized benchmarks and high-performance algorithms make it suitable for developing and evaluating new optimization techniques as well as solving real-world optimization problems.

📖 Documentation

For full usage instructions, API reference, and examples, visit the official documentation:

Citing Minion

If you use MinionPy in your research or projects, we would be grateful if you could cite the following publication:

Muzakka, K. F., Möller, S., & Finsterbusch, M. (2025).
Minion: A high-performance derivative-free optimization library designed for solving complex optimization problems.
Zenodo. https://doi.org/10.5281/zenodo.14794239

Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

minionpy-1.9.0-cp314-cp314-win_amd64.whl (9.2 MB view details)

Uploaded CPython 3.14Windows x86-64

minionpy-1.9.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (9.6 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

minionpy-1.9.0-cp314-cp314-macosx_11_0_arm64.whl (9.4 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

minionpy-1.9.0-cp314-cp314-macosx_10_15_x86_64.whl (9.5 MB view details)

Uploaded CPython 3.14macOS 10.15+ x86-64

minionpy-1.9.0-cp313-cp313-win_amd64.whl (9.6 MB view details)

Uploaded CPython 3.13Windows x86-64

minionpy-1.9.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (9.6 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

minionpy-1.9.0-cp313-cp313-macosx_11_0_arm64.whl (9.4 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

minionpy-1.9.0-cp313-cp313-macosx_10_13_x86_64.whl (9.5 MB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

minionpy-1.9.0-cp312-cp312-win_amd64.whl (9.6 MB view details)

Uploaded CPython 3.12Windows x86-64

minionpy-1.9.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (9.6 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

minionpy-1.9.0-cp312-cp312-macosx_11_0_arm64.whl (9.4 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

minionpy-1.9.0-cp312-cp312-macosx_10_13_x86_64.whl (9.5 MB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

minionpy-1.9.0-cp311-cp311-win_amd64.whl (9.6 MB view details)

Uploaded CPython 3.11Windows x86-64

minionpy-1.9.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (9.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

minionpy-1.9.0-cp311-cp311-macosx_11_0_arm64.whl (9.4 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

minionpy-1.9.0-cp311-cp311-macosx_10_9_x86_64.whl (9.5 MB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

minionpy-1.9.0-cp310-cp310-win_amd64.whl (9.5 MB view details)

Uploaded CPython 3.10Windows x86-64

minionpy-1.9.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (9.6 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

minionpy-1.9.0-cp310-cp310-macosx_11_0_arm64.whl (9.4 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

minionpy-1.9.0-cp310-cp310-macosx_10_9_x86_64.whl (9.5 MB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

minionpy-1.9.0-cp39-cp39-win_amd64.whl (9.6 MB view details)

Uploaded CPython 3.9Windows x86-64

minionpy-1.9.0-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (9.6 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

minionpy-1.9.0-cp39-cp39-macosx_11_0_arm64.whl (9.4 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

minionpy-1.9.0-cp39-cp39-macosx_10_9_x86_64.whl (9.5 MB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

File details

Details for the file minionpy-1.9.0-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: minionpy-1.9.0-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 9.2 MB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.13

File hashes

Hashes for minionpy-1.9.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 a0e3234ef509b3b651ea0fdf2462c87fd5ba8a0f250a09d2f2458487cfd51620
MD5 3846c0ba030388fe9c9e60202f6a4f9c
BLAKE2b-256 9dd10a1874feff562fc6e0ab5cf27346ceedd412daa2812f2b4e6f2adf32bbe5

See more details on using hashes here.

File details

Details for the file minionpy-1.9.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for minionpy-1.9.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9bf83d1d7c3edc8c0eb2365fcb590a661be4c8321ec67c0947a71333cff3ac03
MD5 885f16e256e460a0e9a923c708b8de6a
BLAKE2b-256 a50fe7945ebd5cba520e76b6c2c871850d60ab09499cfde092f0fcf90188efb7

See more details on using hashes here.

File details

Details for the file minionpy-1.9.0-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for minionpy-1.9.0-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9712d1718884e6c8fa1043b62cccddc07498a7b8bdcd333ee879fe555696133f
MD5 b2f01354d9d23375c1fa0104abee2271
BLAKE2b-256 2ded4f9b9e66c69f2b4feeeccfc1b2a39db6c8bf839d4e287fc68d67564f9b80

See more details on using hashes here.

File details

Details for the file minionpy-1.9.0-cp314-cp314-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for minionpy-1.9.0-cp314-cp314-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 c00257fd90ef52eb1c677c63630b813076281987c0ce0ea943b6f49089d3622a
MD5 34ba6ce195fb2ef9c80bf25a6ee83782
BLAKE2b-256 dc8925da0407724b3cb69c58190866f89fa486781ea1e2189c5dfa456ff87177

See more details on using hashes here.

File details

Details for the file minionpy-1.9.0-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: minionpy-1.9.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 9.6 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.13

File hashes

Hashes for minionpy-1.9.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 0ee735c0bfb6981fdcf31d8bffef8094827c4356315cb7dc4e3cbdf84ec945c6
MD5 9cd83d0ef89a1d1d761eb7b67576c6ea
BLAKE2b-256 b42cf2807148cbdbbe575b62fe0d65f46c118d82d2d736be047f8eade05bf47b

See more details on using hashes here.

File details

Details for the file minionpy-1.9.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for minionpy-1.9.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 7db6a30a6a493f9abf6d0e4655af009bd3c155ffc85f37a2554f5f32d31c1fcc
MD5 92e85275f4f95161f354f5346c1b31b0
BLAKE2b-256 24c8bfff1e965c783f162443197d0174b6ffbaa9e9456d81f5eabb55620c7a4a

See more details on using hashes here.

File details

Details for the file minionpy-1.9.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for minionpy-1.9.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d7781a54d161439eb1b90333e7dd8be24502129d374594860c6d988a01626892
MD5 d91dd885c5bd3fb7dd23c0b1fb52aac4
BLAKE2b-256 1446ae02631bd9096f7d3962d99defe48c50a86fa4a17c64d540efd60bf469c9

See more details on using hashes here.

File details

Details for the file minionpy-1.9.0-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for minionpy-1.9.0-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 a245031a132198df7e09d520de773cf29bc478faafc7efec7c398972f2130e1f
MD5 6fa50520b4336cb10fcdad07c6aeee1e
BLAKE2b-256 675e7a80ad217fe2979618509921106fd1d18dc0fb4e2935883bde21db872eb7

See more details on using hashes here.

File details

Details for the file minionpy-1.9.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: minionpy-1.9.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 9.6 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.13

File hashes

Hashes for minionpy-1.9.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 ab182748906f703ccc29619d91ccc642c80687433305b786e060e6a1f323b8ee
MD5 553044d3000843e1bedc3c28da8216f9
BLAKE2b-256 955cdff3c8b63ed4784a8a5e5c8760f7887feadfc94e20ec123ae422d7676c4c

See more details on using hashes here.

File details

Details for the file minionpy-1.9.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for minionpy-1.9.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 baf280ca511cce3a0e12a7df8520c08f2b890bfec63d9a2de952c17fbe1ff8e2
MD5 99ce1a69ef4f59ffd61d9a96abe779ee
BLAKE2b-256 908e582aa212256f3fe68f5ebbd62e9ca5c9c4da8e84837f38b9246793df2356

See more details on using hashes here.

File details

Details for the file minionpy-1.9.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for minionpy-1.9.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 772da4c74376c80bb816ff394f1eacf1c415d92649c631ec11b8d45b55bbc13a
MD5 8faefb2d0742aee70e0a5a7fe86ddbc8
BLAKE2b-256 cd0eb565eb0a27443cf7d29f2eb39d8406793cd2935eaf25823559ae1c38436c

See more details on using hashes here.

File details

Details for the file minionpy-1.9.0-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for minionpy-1.9.0-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 acf758c64b2f4d5827911b79975acf0800158a8de16d83d04866b231a1591e8d
MD5 ea01917e3307d1ac5ce3705aa3dff767
BLAKE2b-256 8f131cb0667e7e853e6b28a7e8902358b3cd48ae7e8281a8439cbd83781483c7

See more details on using hashes here.

File details

Details for the file minionpy-1.9.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: minionpy-1.9.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 9.6 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.13

File hashes

Hashes for minionpy-1.9.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 e854a358077326dc1ec0dc921a6404c752b047c8af797a203afc28ebaffe9994
MD5 0c12603e7c0e450f1122851e785bcdf0
BLAKE2b-256 8e2f9400b83a86e2e2c41ec683509348907ff047d1555f6d0a705e3347836027

See more details on using hashes here.

File details

Details for the file minionpy-1.9.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for minionpy-1.9.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 39e46b2630257c804e1cfaa8876e640b9ae5a4a1e9d5c02262c57f312a7cb744
MD5 c13f4c1fb81d8564b7c9c8d4093b167d
BLAKE2b-256 dd58ea9370527d133cafc9e7bdf2efcd6933d5fb2a9fcee681e82714ea7f2103

See more details on using hashes here.

File details

Details for the file minionpy-1.9.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for minionpy-1.9.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 93250f6b4f25489fcd93559279f1a815cd65fd16ce97c8545e28bb7a062f1fcf
MD5 7d339260d063bd8fd64eed150263d4d5
BLAKE2b-256 a686b086fb09222989b929da2ded046081f64724de5d08273e8b4abe83221c64

See more details on using hashes here.

File details

Details for the file minionpy-1.9.0-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for minionpy-1.9.0-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 ac4210b78c22dd5ae639c4511ebe675508c9844b37b4eaed3e8894a57035bef7
MD5 f9d58a241264477889182ca593201ca9
BLAKE2b-256 34cf66e9fc8aceb4dd35c49e6f79bc2b5502d9e6db92e3408f9929a130f15fd0

See more details on using hashes here.

File details

Details for the file minionpy-1.9.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: minionpy-1.9.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 9.5 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.13

File hashes

Hashes for minionpy-1.9.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 fb269db5138af8d417ae8a14db9fa72850cf7e5664dd4b25ae67b4f09ef8338d
MD5 7dcbe2cba0e002852f953274e969ab77
BLAKE2b-256 3700fc64283c806c0464030a7d5009f01e806be238437a565d079eff6118674f

See more details on using hashes here.

File details

Details for the file minionpy-1.9.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for minionpy-1.9.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e81ab4fc37153144cdb472170c246a89c988060338a01d30123ef352732b4d16
MD5 b1282954cc3a0044077394e8d0b87958
BLAKE2b-256 dcb3b11b2f6e9e155fc70f4b047fdc9c5ea6343c8aa48222ea5da15f478d9ca5

See more details on using hashes here.

File details

Details for the file minionpy-1.9.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for minionpy-1.9.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 570a0c0e742504091495670029e90029b01b60b9db7986a6c87553f59f447b6c
MD5 1f0295621a2e8c6f415dbaa9954466b8
BLAKE2b-256 6638c866ed49503485204d2f331d5726a92628fef4cd7664f94526846cf9da6e

See more details on using hashes here.

File details

Details for the file minionpy-1.9.0-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for minionpy-1.9.0-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 57615a0c7d31fa629abe1e1983fd8d92761ebadc41bc81f6e7463a3a857286e8
MD5 74a6c5b7c6f26392768978eba3173f50
BLAKE2b-256 511fddf0f575981cdc1da464326ff2c824ab62f79d78df674f4b546ff70f14af

See more details on using hashes here.

File details

Details for the file minionpy-1.9.0-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: minionpy-1.9.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 9.6 MB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.13

File hashes

Hashes for minionpy-1.9.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 b7a07cff9bde70df3f1ea99a49c6656c8fc89925aad50728b95abc38292ee5e1
MD5 a8599122697b9c91f0495a6eb25afdea
BLAKE2b-256 8d60c880e61bd36a90f3c5fd49c8fcbd6bcfc351c34c3027a2517911964a6351

See more details on using hashes here.

File details

Details for the file minionpy-1.9.0-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for minionpy-1.9.0-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 93f5136785ba334d0c3c6545e37a37e8c84f3c6bc0d79d007fdeb8343e03ece5
MD5 9bcfa3b54c8a6b19afae178f7c28474a
BLAKE2b-256 3da10dee505e07f7fb4b6ce91f672595f3cf8bbce08cb4929f2304ee976b8d78

See more details on using hashes here.

File details

Details for the file minionpy-1.9.0-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for minionpy-1.9.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d47722ad2971c0e0ae75328d6c79bacf467b9b2bdd08b29c12a46ff151a728d9
MD5 8b85a3c7afc723847dcce9ef3aafcb00
BLAKE2b-256 c993cdb764376d6de2d21e54d98597021cd8f6b7aee8ac44c3e8b7abe0f92776

See more details on using hashes here.

File details

Details for the file minionpy-1.9.0-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for minionpy-1.9.0-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 de9028429337cee903116841b6103af7a9afe41923ab5c8d9fdd123dcb9ab33a
MD5 3d2f6b0ab8e1ddc0a1bbaa931dab9513
BLAKE2b-256 874987c1e1df13db7266d3cbe4eb11729e1bbeb08dedbb958300f45fe17a8305

See more details on using hashes here.

Release history Release notifications | RSS feed

1.9.1

24 files

This release

1.9.0 This release

24 files

1.8.0

24 files

1.7.0

24 files

1.6.1

24 files

1.6.0

24 files

1.4.0

15 files

1.3.0

15 files

1.2.0

15 files

1.1.0

25 files

1.0.1

25 files

0.2.8

25 files

0.2.7

25 files

0.2.6

25 files

0.2.5

25 files

0.2.4

25 files

0.2.3

25 files

0.2.2

25 files

0.1.7

54 files

0.1.6

54 files

0.1.5

54 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page