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; use succeeded() for the C++-matching success predicate.

  • 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.8.0-cp314-cp314-win_amd64.whl (9.2 MB view details)

Uploaded CPython 3.14Windows x86-64

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

Uploaded CPython 3.14macOS 11.0+ ARM64

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

Uploaded CPython 3.14macOS 10.15+ x86-64

minionpy-1.8.0-cp313-cp313-win_amd64.whl (9.5 MB view details)

Uploaded CPython 3.13Windows x86-64

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

Uploaded CPython 3.13macOS 11.0+ ARM64

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

Uploaded CPython 3.13macOS 10.13+ x86-64

minionpy-1.8.0-cp312-cp312-win_amd64.whl (9.5 MB view details)

Uploaded CPython 3.12Windows x86-64

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

Uploaded CPython 3.12macOS 11.0+ ARM64

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

Uploaded CPython 3.12macOS 10.13+ x86-64

minionpy-1.8.0-cp311-cp311-win_amd64.whl (9.5 MB view details)

Uploaded CPython 3.11Windows x86-64

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

Uploaded CPython 3.11macOS 11.0+ ARM64

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

Uploaded CPython 3.11macOS 10.9+ x86-64

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

Uploaded CPython 3.10Windows x86-64

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

Uploaded CPython 3.10macOS 11.0+ ARM64

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

Uploaded CPython 3.10macOS 10.9+ x86-64

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

Uploaded CPython 3.9Windows x86-64

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

Uploaded CPython 3.9macOS 11.0+ ARM64

minionpy-1.8.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.8.0-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: minionpy-1.8.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.8.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 3fb8486c8d25d872b489d483a5fdf14ca47679d6854360ff680b72ed21ad7270
MD5 0f70192106f6ee3015ccad67052238eb
BLAKE2b-256 66a705ce9602c68bd4a8844597fd200f81e6d27ca8d64c5ecd36b6d9efd72c72

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.8.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b539dd4ade9c0de67ecd6c659b92b57e66e9c4ee5610cdde155cb275fa6c0dec
MD5 7efdfaefe33537e3b72bf78b531e68a8
BLAKE2b-256 ba907c1894447ce8f8814e942ea10bcf5c239c85865b50b7386318ff04bb6b7e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.8.0-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d72324121575fdd6e3e88076c222e2d4fa07e29708d9f396f65675e599e57bc6
MD5 d03c0bd4cb0e940df009b8bdb83f4c79
BLAKE2b-256 dcae0987b4e10f584cf3d6279e6c1aa695978b204c3e4560973647ddb59603c0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.8.0-cp314-cp314-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 b6afee4cf1deb96ae5417da7b3ca71144fbdc89cc7986ac1da12fa23af7d4369
MD5 ce21357af2e1710402178701d1515520
BLAKE2b-256 733bd87ea4e8df03a1610be8ada948a7a7c75d141efffb5af8f3462451b3b956

See more details on using hashes here.

File details

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

File metadata

  • Download URL: minionpy-1.8.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 9.5 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.8.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 6cbdc20bd558e7698b1dd381612f94d5a37837caf73a23db02e7efa10be97fb1
MD5 ce6803ad6c8c840ec33b420e96a9fadd
BLAKE2b-256 ad9e08062998e2c5e59a2828b6dbbeb7541963f0b52e39fb17f23832d469ef64

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.8.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 495a938614eca2814909c80f68bc6ddd8d62bf1af63e0825707faafc9fe2fb95
MD5 03cad37b657d7df7d4949025338d6088
BLAKE2b-256 74660541d54b03bbe88683c57464b6932813f682dc055b6cb96364b42cb2b31e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.8.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0659a31826e6833267ced82cd1fea0bb8fbb0ed5ae97bd26e8561129bca08fb8
MD5 7d34db6b8bc1fdb202977efbf184f5a3
BLAKE2b-256 590c3c37562995ba89ffa657b0aaea2db7e79abc6a2a50ca483b0d6acdff67b7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.8.0-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 13f9e4e3d49b5d48b3e6ba345e5d09282612f9f47debba7334cbfcc3931a7e55
MD5 2cec519406d2ce62b3074e8668ad3141
BLAKE2b-256 d19c20e21330ec6ed05ca881d353a62b66c64104865f1838517f8592c6fe67fb

See more details on using hashes here.

File details

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

File metadata

  • Download URL: minionpy-1.8.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 9.5 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.8.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 fb39b938f8e1065a749d2c6cbc9b6a21da3626c3d2df18d14c128d826cd849b2
MD5 48a7e9ac662a91c517e3737cef22f7d8
BLAKE2b-256 569267046d0e8334b686b9ae8e7ae8b1706958be948a1246ed32ec6d4386ba34

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.8.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 096dc3b2a804847f326da1d01506a2dada8953a9371c1e036ca583327e430b6d
MD5 36a746f4128b1ccce46d6f0f3c428a4a
BLAKE2b-256 f4823e17bf031baeb04f529b20ecc7ec7af4ac6c0adaac50d67d137d34b18139

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.8.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ab41a378c8321d9a94d5ef3c3ce82a7042aedbfc94adbf9b22545b862886b8ff
MD5 a355dc260ca0b807431d57cd60ca6a3b
BLAKE2b-256 5246ec5a142462a2c92f59a707d20dfc5da428ab55b14fab7fde04b50cba5e19

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.8.0-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 02c37ed0cdaeb0651e44547c2b45ca5a0f420d2eaa8cdbc807c1de2da29b892b
MD5 c9ef521da7ba313d5b2aa5a4de3872a4
BLAKE2b-256 4b29df6f6faa422041d1c3c15bd6246ac2784919e56dac55f867f839df222cc4

See more details on using hashes here.

File details

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

File metadata

  • Download URL: minionpy-1.8.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 9.5 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.8.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 deacad18c0abfffb754e0a86fe17155cc052238702c9907eca63ef340c4e389b
MD5 b4a7b8a18c021379c907bd5fb79abd33
BLAKE2b-256 567af879d1b60a4997f627a3f0b78bdcc30c35496d3494f357fb4fc1af132f65

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.8.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 0df5237b42057092b240cd538163c0bf28a634cac0032c6216a5590094e9f93e
MD5 049561b5ad1812b36af8d5055512a2c9
BLAKE2b-256 464b97954616e7a31ea46e091a4a9c92fd0592d99c607b9b2def9c5553f52ea7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.8.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 42ee5eb8dc235f47f0d3368452a5fa4aba9c161ce345caf194d74b0028fd6547
MD5 c0d7477b3039b6e230d6e01a5a2769a9
BLAKE2b-256 c27d1c509039076b0afd1606a3b908a20f664563720ca0ffd1b2babadfa6c45c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.8.0-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 a69e0f980e6a4ba8b9a2b8ce6448c6ae35b70e743c27d926e13ae08ff90dddb2
MD5 35165e609225bc0a5b0ca5462151fd6b
BLAKE2b-256 26acb83557da95bea20481c38f8b7187536f10f65a2f261e5d571a55e44deb86

See more details on using hashes here.

File details

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

File metadata

  • Download URL: minionpy-1.8.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.8.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 e09eeef92692bdd61af904a7f2ad90300fab5cc203a51d2aa9ce808c0c3078a2
MD5 b48e1bf105777a852844835ff591b599
BLAKE2b-256 503303878c07ef4cc4b46f747558b05d112ba33d86950b5bb0fbcb850bbd1daf

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.8.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 89ee662785644ed1460f73ff706f77df53f90056c2f14a012a9c716da4df99b4
MD5 e07d28e8e88b99673a9058d9b0dfe305
BLAKE2b-256 96918d0ee19b2685ff7c7ce49a61e7f83285245791e43adf4340152373b4928d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.8.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 34c1fb8b8c874de5f0aabb2c33e728aaecbfb30d6827d9a8f99035f461206d5b
MD5 2ababcfec56862387f0bc6e51a5bd2db
BLAKE2b-256 d7a92181b945abd242b905be7765eaea29b1d764d01a9019641a6d4eafc5af29

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.8.0-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 d3ef7549af223eeb215271faca0a551c506506a26916e10a7b964c024550e0fc
MD5 dd7c557b11912a07c6377123085141e8
BLAKE2b-256 1af26e9f95f5d7d617a00065684e8e0c90261768c3a80df5bf99bff93128a6ce

See more details on using hashes here.

File details

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

File metadata

  • Download URL: minionpy-1.8.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.8.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 6ab9ef15551fffbbe4aa42dc3f2e2b1403b8e01a260feaf14d6431de6a847c7d
MD5 351a31cb08dacdca3eca625bf5343bd4
BLAKE2b-256 95cd29efcd39fb4e0e416549bd8aaffe3db21e05f89f0db770e01caedacacc0d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.8.0-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1423062b988d03d299354b1b86e06971323f2ea290c6df9ff1012335fb822f48
MD5 1da6662b99e4a710aadc2a410a08776c
BLAKE2b-256 68307ff5c8e06f50dd097e5b62c603c597cd2cc1dc5a6acbaafbe0ae9f13e9b3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.8.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 af3a8e4d4f11a5c9321bf876dbfbdb77ee962b73cf3da5c8c47c02a681fe79ce
MD5 604bfb3ac897cedb8ee5b77fd7424e3c
BLAKE2b-256 dbbad1fcaec0b82d5e54946e73b385ffcaa76cbc34b2f13db4c3a069293f5bd2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.8.0-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 d7587cefd1a756c676db031eb4bf5b3d2de59f382886b10722c29cdef422d400
MD5 76c3e8e8b9969f4d0b0919c45d8d248b
BLAKE2b-256 f95ff450c6e06c6bd4c1144b8b7466b04fe94a69a644285f87a1811a3f4044bb

See more details on using hashes here.

Release history Release notifications | RSS feed

1.9.1

24 files

1.9.0

24 files

This release

1.8.0 This release

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