Skip to main content

MinionPy is the Python implementation of the Minion (C++) ibrary.

Project description

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)
      • Grey Wolf DE Optimization
      • 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), 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.

  • 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

Project details


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

Uploaded CPython 3.14Windows x86-64

minionpy-1.6.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (9.2 MB view details)

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

minionpy-1.6.1-cp314-cp314-macosx_11_0_arm64.whl (9.1 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

minionpy-1.6.1-cp314-cp314-macosx_10_15_x86_64.whl (9.2 MB view details)

Uploaded CPython 3.14macOS 10.15+ x86-64

minionpy-1.6.1-cp313-cp313-win_amd64.whl (9.3 MB view details)

Uploaded CPython 3.13Windows x86-64

minionpy-1.6.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (9.2 MB view details)

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

minionpy-1.6.1-cp313-cp313-macosx_11_0_arm64.whl (9.1 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

minionpy-1.6.1-cp313-cp313-macosx_10_13_x86_64.whl (9.2 MB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

minionpy-1.6.1-cp312-cp312-win_amd64.whl (9.3 MB view details)

Uploaded CPython 3.12Windows x86-64

minionpy-1.6.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (9.2 MB view details)

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

minionpy-1.6.1-cp312-cp312-macosx_11_0_arm64.whl (9.1 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

minionpy-1.6.1-cp312-cp312-macosx_10_13_x86_64.whl (9.2 MB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

minionpy-1.6.1-cp311-cp311-win_amd64.whl (9.3 MB view details)

Uploaded CPython 3.11Windows x86-64

minionpy-1.6.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (9.2 MB view details)

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

minionpy-1.6.1-cp311-cp311-macosx_11_0_arm64.whl (9.1 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

minionpy-1.6.1-cp311-cp311-macosx_10_9_x86_64.whl (9.2 MB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

minionpy-1.6.1-cp310-cp310-win_amd64.whl (9.3 MB view details)

Uploaded CPython 3.10Windows x86-64

minionpy-1.6.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (9.2 MB view details)

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

minionpy-1.6.1-cp310-cp310-macosx_11_0_arm64.whl (9.1 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

minionpy-1.6.1-cp310-cp310-macosx_10_9_x86_64.whl (9.2 MB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

minionpy-1.6.1-cp39-cp39-win_amd64.whl (9.3 MB view details)

Uploaded CPython 3.9Windows x86-64

minionpy-1.6.1-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (9.2 MB view details)

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

minionpy-1.6.1-cp39-cp39-macosx_11_0_arm64.whl (9.1 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

minionpy-1.6.1-cp39-cp39-macosx_10_9_x86_64.whl (9.2 MB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

File details

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

File metadata

  • Download URL: minionpy-1.6.1-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 9.0 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.6.1-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 745f4e5266322e810790c40b8fad125b7780e26895c0b80522fe5464ed06c9e1
MD5 76aeb5cd13c0b87a356fa649841f708e
BLAKE2b-256 2c80d2bbd153ab1d12b242996912501cea343f2dc310204ca48db04c4577d1fd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.6.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d680f6265b86f209254f89c5a5175e530d44b2ff5d000c1016c3df9c67f36645
MD5 de5e871a549f3ef35a60d826f9a3ccbf
BLAKE2b-256 3318657f16b2c82c56e037fdccc793290ff7eec1a93768e8078e8a690e913897

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.6.1-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 6938b17597cccb5b634df5d4a27530f8dd9dd2c73634e50047fdf282c2bd1e90
MD5 18138debea1e06c8b538b9bcc59a2d0c
BLAKE2b-256 52f31ab058b8f4f96676087e81d5ce78d50fcb91ff0b35f387e98131e6fc5979

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.6.1-cp314-cp314-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 5c5e0dfeb644fc84d956060b3dc72c529aa7f5842ffe58f003246aeae54e0261
MD5 f4de245b3f5411bd6a3d375925979611
BLAKE2b-256 75bc9ec641a4c8915a919b6106ebdccb2b0aab5db40c6d903b93a82e9d57b9eb

See more details on using hashes here.

File details

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

File metadata

  • Download URL: minionpy-1.6.1-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 9.3 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.6.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 ef0fa137ad39429252c547bda5f032cfca5561dc9f4f1b6311036275bd83cc87
MD5 8bbb8df3f9fdf7ce0e04692176c72c6f
BLAKE2b-256 a595607e2857bcf71a56ddded6d6dc3ec52f402515107a84f85b7b1fafbf7767

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.6.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b94a3d94ddccadf2c4f1f8a8c63f22d4c9c3223ba011e8f88aa63f88d0159d52
MD5 351bb8569f8e4ed3818b3d33478c3061
BLAKE2b-256 68fae79350a92cc9d00978e87364275d6e9ae9a12d68832c18f1380f74a38060

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.6.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0a50edb8c155b150ce4cb5e9f35afe8b1faa2ee5741999e8f02b0fd1b349dd80
MD5 066fc97f243014e1cf8fbc2bff957797
BLAKE2b-256 e5c57ef5952710e5c7cc9c51d2d4ef330ab16296c065243abe958a49e50bbde7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.6.1-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 6e6888f73c8caac419c99934d11e70f82769ccc55b080710161fad569aaa8cdf
MD5 286f4869c0e30f1892f41d8a537f0683
BLAKE2b-256 d61c71abe7ec8a714fde36fa77a29e0491246cea64b1f4ffa99a8b51e72b9359

See more details on using hashes here.

File details

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

File metadata

  • Download URL: minionpy-1.6.1-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 9.3 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.6.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 cd8441d36b0041cd543840809a6c1c847e70a4adb6d2c3dc4b631c5f7117a01a
MD5 ce2f72f713b6934a1acb0557d7e5043a
BLAKE2b-256 1069d71fe85679d84b420c2a24abe68187b8adc1f2dba251d0d6f76053361458

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.6.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 2aeecafade8e7fc6b5938af89305a7db12135d9b0fc88c3766b2e7ac9772cbf0
MD5 e2d25a14413334cb1f57289785b8b0b8
BLAKE2b-256 353fe474d64bd26f7db048c61a2b254d6e69539772f5738676b62c2e89db2d49

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.6.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 87f6e73c8966c1deb0221069db5158744fbb2e7745161cd3eadff7cc5a7422dc
MD5 6c114b27604985bed3b576891810988e
BLAKE2b-256 98387e8097061c127cff4ce5b90f0a47184e29fffb9aea6f7440ad95c5ae80f6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.6.1-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 80228aeadeffdf4199eeb1c2cdbb0f2a7101735760f94b0fe835d927722f808b
MD5 d9980e98fe837c18949c608ee544ef42
BLAKE2b-256 35ad2e2374d1e9aee55e87de16c642f1b643e003505ac4bdae1a09e63b475818

See more details on using hashes here.

File details

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

File metadata

  • Download URL: minionpy-1.6.1-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 9.3 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.6.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 cf5257638de0873797ca121ff0591b7f6acfcc97662bdd91758360205c82ba85
MD5 5211dca973875c6c6a9226920ec6e3de
BLAKE2b-256 09035c2b1bca27e131fe2725fa84065ff50a3a19cb53d5666017cd567ad55eb2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.6.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 fa397d59f6a016fb260797c0a5366ca840e761a528c3caa6e9564ae85417538f
MD5 d7aa6c465dd7e1ce050f283324648adc
BLAKE2b-256 71c3183329384f9c122b44b90a87e3745c5da1bdefc5ef18b7130f1004014c03

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.6.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a2b1ce68300a4f254d2c444967b54669b79d9acc64a00107d32b6402744fa724
MD5 d55f873379195684b3eef30f878a1711
BLAKE2b-256 6697a6b90f3112c9c8a666f4fb488b828e6b691b9d83ff3ce7b3107f2ce137fd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.6.1-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 c2774486239c62172b7eac63aab99c04cfaaf0e8fdf55dd491cddc7bd0bbc5a7
MD5 9b4142a813fcbe8f2be59eab15014b81
BLAKE2b-256 092a10dfef758ab41a1ae2fe667ad879757de0b5ee0aad4c365fd9344f9b5313

See more details on using hashes here.

File details

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

File metadata

  • Download URL: minionpy-1.6.1-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 9.3 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.6.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 3aaccea55805497253367c7e8317fec25f20c6ea0f6698d147e5e173325ba052
MD5 2b195d69c9f8be8dfb1cf0cf9582a8aa
BLAKE2b-256 4a1e0a4dfbd5d262f693083adff825b023c9b8c62c010fbc14e070b2985275db

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.6.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 904e6eb656a5d5027f85f3891f2793f563227f3dafd848f12e92d5a210283460
MD5 fcc8586ab0ff5a395881f1467273f898
BLAKE2b-256 bba6db1cda131777a3833da01c55828c8efb29cc6c97738da986b7ee0c01444c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.6.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 65bbfb92f1e3bc95a60daf973b7d866e37d1ed69572cb7d8856d5a91ed34bada
MD5 15ce8a65f4966a0769649233cd9d714b
BLAKE2b-256 bc5326f28424058dcd9204f401fb35e417e2a63d357e99ed5df109b533854c75

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.6.1-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 abdf2d6b7c4832af631727bbe5a610fdedb6db7eb4da74b3d128ef4776080bb2
MD5 a63fc7197a9f6d9e2daee43d98480b7c
BLAKE2b-256 59b69fc9e90ef3cc4cc14effc36bb7ee852e9a19a3dd347cabafd0409c578d96

See more details on using hashes here.

File details

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

File metadata

  • Download URL: minionpy-1.6.1-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 9.3 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.6.1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 df3aa0c64db0a19efeeed5d939b93c86e10ed3656a835422e4a5a4fef5b7d607
MD5 1a7e08e6dd18ec1359d40779c4efdd32
BLAKE2b-256 7ebd9f795b135c34a4560805a2b12ad9a915ce2bf9fb8b5a48807ef4d30580e7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.6.1-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e7f05d4b34d930fa9bc3c836e58808cd286d44e7a427bac89b09fa8ae7da2e8d
MD5 b12ea669ff38d12186565db9b9f0baa0
BLAKE2b-256 e0888812b9e53bbdad853530e98638da117c7103b64438f0e8320b965a9e5fbf

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.6.1-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 6d1b3e0175ce8bdc0374c5a9cc9d8dc61b75d4108a2f34acef9afb8515bc4c49
MD5 d2122b5fe1d165b6e0591e88c14b122f
BLAKE2b-256 b81b81e4029e9ea822babd0ba14ecddb626cf1639390f7030af0ac8d5f2991b8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.6.1-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 7254e6b9915bd354e2023d0308b09157a8df2d07a49c00b680d117f3aec3c71b
MD5 47bbbe8ecb171a328a8597543110104c
BLAKE2b-256 3aa5c75d317b0e124c29a53fd7926d25e732b4d2e8623ba83e97657f40e83564

See more details on using hashes here.

Supported by

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