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.1-cp314-cp314-win_amd64.whl (9.3 MB view details)

Uploaded CPython 3.14Windows x86-64

minionpy-1.9.1-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.1-cp314-cp314-macosx_11_0_arm64.whl (9.4 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

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

Uploaded CPython 3.14macOS 10.15+ x86-64

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

Uploaded CPython 3.13Windows x86-64

minionpy-1.9.1-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.1-cp313-cp313-macosx_11_0_arm64.whl (9.4 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

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

Uploaded CPython 3.13macOS 10.13+ x86-64

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

Uploaded CPython 3.12Windows x86-64

minionpy-1.9.1-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.1-cp312-cp312-macosx_11_0_arm64.whl (9.4 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

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

Uploaded CPython 3.12macOS 10.13+ x86-64

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

Uploaded CPython 3.11Windows x86-64

minionpy-1.9.1-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.1-cp311-cp311-macosx_11_0_arm64.whl (9.4 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

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

Uploaded CPython 3.11macOS 10.9+ x86-64

minionpy-1.9.1-cp310-cp310-win_amd64.whl (9.6 MB view details)

Uploaded CPython 3.10Windows x86-64

minionpy-1.9.1-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.1-cp310-cp310-macosx_11_0_arm64.whl (9.4 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

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

Uploaded CPython 3.10macOS 10.9+ x86-64

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

Uploaded CPython 3.9Windows x86-64

minionpy-1.9.1-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.1-cp39-cp39-macosx_11_0_arm64.whl (9.4 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

minionpy-1.9.1-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.1-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: minionpy-1.9.1-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 9.3 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.1-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 f637679c8c1510fc8f2d89922ab7bf35407aec9b9a26c03bacf3ef0045dc9dfd
MD5 820be00dac4b957c9ff4d8482255e813
BLAKE2b-256 b5f412930d6392875d8ac0730f8ea3b43a06f0e769e761d124211d74d8c9e3f4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.9.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 6e9d5fb72a18861fa67d95856300730ca2a35763ab32beae90d9c7dae8328e7e
MD5 9b96085dcd9a044aa984aa7c63653545
BLAKE2b-256 6b16761cbc00c6ddd9b1ba15a800d7afbfeebec7b4aa4d57e4ad921a2a607058

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.9.1-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8df9794c85c5124b38b5ffccc0fb0ab995d868ebbffbfef01016c5fb074adcad
MD5 01b4ce1eec0071afa098561f6c4b0301
BLAKE2b-256 888188e606c31c847bdab1ab317babdcec7490467f2adfa9e82b28105b05bec4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.9.1-cp314-cp314-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 36f169c220c5419d15472939d45ab328d7b242a64ef4fd49406aff36f73c6a94
MD5 37cbf9db4976a32b04b39a9b0c335d31
BLAKE2b-256 3f081e0f6bd1889a65d45d468c797792623b21beeca798811925461c5964ca4c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: minionpy-1.9.1-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.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 d1fff2563c12e689de39f84ddc3cec7f09e6ac5d44da0ec727acfdd6273a20d2
MD5 f811926e131429decd5c2e5c04c803bb
BLAKE2b-256 fe6634017be6b4f21a8318afb37092d8cfabd4e6835910f177b5858a8c35be98

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.9.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c595bd65105083a111abfffec5766ff449636a58c0572ab40ad166fb60547179
MD5 cf01940e39670badff16c7cb46f83fb7
BLAKE2b-256 713a1eea28d4325d3d3cdd4c1ee9c6df46970e08de9424df66684a910a506de6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.9.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 14c1eeec9cdbf0fe3b370a82b6b93dee0c4fb00e73429343ce79d4ed817274b7
MD5 ce437427e02ee69b4a628cb7ec6704f2
BLAKE2b-256 4b1e93d2c529541b925b85151db0123206b9ceef7bfb60e35618db8a237214b3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.9.1-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 24d9eadc151696ab5083e7fc6d9aaadc42fc1ec4654fb32386106ac1460f0e3f
MD5 f7631c7c7b991d92cfefe7ef9148f32c
BLAKE2b-256 ecaa2809fcc92bd6c2d81ce845e0f5e26c8d6d9480bfe47f803c521ea87eff65

See more details on using hashes here.

File details

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

File metadata

  • Download URL: minionpy-1.9.1-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.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 3b5b5873bacd321ea2646939be829e3c7677f450cf21f6b2d124d38f7150a643
MD5 6c98fcfaca3c6925e178cdef7e4e20af
BLAKE2b-256 5324ecbff09184fe6d1ece3e6fa36b54af3f95398b6cd9baad041a16c62f2f39

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.9.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 05cb72fec346591de0cce94627ef5b1ff91889b97a647a06f850354fa237711b
MD5 47b53862056ea965c3489180aaf0b903
BLAKE2b-256 e7df1f48c69153771eaa51a6f721a25e19eddbda65e54ae7fdefb3a3da0accbe

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.9.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8545394be9e2d519b36370688ad5c931f7c9d20c3e0975f9adac3bf38a812a48
MD5 df8b76855a69f4f77156952c46913613
BLAKE2b-256 c26f408f63df8f3429ebfc1cad912f5aaf3a35f0d22f9ce4a07ea95de219a77f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.9.1-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 07e960127e156032f38be9cf16c3bb558813061c99617ab4b262095b5259e516
MD5 084667f834e6b580ca89b7cfd9c9f91c
BLAKE2b-256 b155b68ad3a049a7d280db4fac9a8155f59049e8672d92278a1a14480b270c9d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: minionpy-1.9.1-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.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 2fbab3756db64bb25969e71d494dffe993d55b7a6da0dbf523095f527b23ad7c
MD5 592cb40a354b07db8f1bd95287f4e00d
BLAKE2b-256 a3ad38c3fc382c1da876b81042780364a07a4d7b67104a2709e62575cab0e52c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.9.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 5acdaced1ac53bc3d083bbd8250a8d8fa7e5fca7ba57889e1d11019088244056
MD5 802a90961d1a8eca777dec86c1d305f7
BLAKE2b-256 ba68784f788b4632b9de0cf959a0615a8f564414db50ef15b417e138328791ff

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.9.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c0d9b4c9cd172f7012e7ad5538e9920a85b410b1e0a22d4fcd3197de89b804d5
MD5 a3ac4e90bcddb0ecfe616d4cf13ee3b5
BLAKE2b-256 2c80b6d15baff6f545b5f684f1ee0d32afb5da8f67a4d6c3c5cf7d6f103f31e5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.9.1-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 0339b536b674484f451a09fac72e84e555bc5843282a86bb027f4eaacc7a6204
MD5 928eb68d7a86f292721b650250e3c4d5
BLAKE2b-256 f4e64f3bf3c7cc7ba3ce57eefeb3797bb399d64c283e691b4326d7a45e881c0c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: minionpy-1.9.1-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 9.6 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.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 79054e9afe593cdbe4384d4bdb1e88a3606a6a797e02db5a4e69efa720e86791
MD5 c7620df5d42a5d3c0afe8bf00a336c30
BLAKE2b-256 65dd08b54ebb6776d130992f33e4af8a0d840f36cf531d81ea80c9802698fb7d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.9.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d002b3835fabc033d69340d1e1228fff70d6574942036d01c281a79ea788435c
MD5 f1ca1813b9a9b883f258338856c77d14
BLAKE2b-256 aa8c94e6c2da686b4955be2f2764e2dea282ff6434394b34ed2e879937a0628e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.9.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 93a570acf1c438c20119a6ecf3630163d6d6fcf48b041ccb12d7ee6bf4f79e8b
MD5 4ab100ae680614b24d8842fa690b65f8
BLAKE2b-256 fb4ee275eb202495b4a0da4008b4037d157d5662d3a283c87591695691886ba3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.9.1-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 a2fd75f8d2c79296f028d21b9c1123c1badb229c29ce18fcc3f80c563e465abe
MD5 89f7afb9ab28f4f83db8a5530767681c
BLAKE2b-256 f8089bb08f3f804d4b02de515dc3c7a1d3029839c07caa26bda8baef19da745f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: minionpy-1.9.1-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.1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 533c7e594f6da77bf566dc44f52e936db998e7fe65e8febd7c609828f0cbdb54
MD5 10623e889a75444326d029fbe4a8eded
BLAKE2b-256 32dd3698ff18c7bfae57df41a05ae8d2c9bbdacd3d08db281e66cf80d3af6496

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.9.1-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 7b573be076ab6f176d9b33a406ffd7c3f6b9c91709b302e877ccc0e41c34b0d5
MD5 0372b0f8355e54fb3c876c6febfb3eb8
BLAKE2b-256 6dc784ee3b6e3215b899ef297ed5d6e189db2628dc380b052970a1d39a5eb965

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.9.1-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8be456ed0e5d58868867f74de79da6bc7a8724456b41b9de55aafcde2c108b27
MD5 d45de42f3f45905ab624c4ffa2c0958c
BLAKE2b-256 816b89557997e31a998769c8e60d2a882aaf3113b9d4a1e355a9fc1490cece29

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.9.1-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 99d0ea85158db128385b3860df063e001d80c3f363ef4b17665c08975c3c68dd
MD5 895656acedc6dbe9283d31fffb505b91
BLAKE2b-256 82ab38dae0d91e9625d73f7675b1f551cd4fb1adfe17b0b1c1cf0e05990882ec

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

1.9.1 This release

24 files

1.9.0

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