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) 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.

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

Uploaded CPython 3.14Windows x86-64

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

Uploaded CPython 3.14macOS 11.0+ ARM64

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

Uploaded CPython 3.14macOS 10.15+ x86-64

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

Uploaded CPython 3.13Windows x86-64

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

Uploaded CPython 3.13macOS 11.0+ ARM64

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

Uploaded CPython 3.13macOS 10.13+ x86-64

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

Uploaded CPython 3.12Windows x86-64

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

Uploaded CPython 3.12macOS 11.0+ ARM64

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

Uploaded CPython 3.12macOS 10.13+ x86-64

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

Uploaded CPython 3.11Windows x86-64

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

Uploaded CPython 3.11macOS 11.0+ ARM64

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

Uploaded CPython 3.11macOS 10.9+ x86-64

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

Uploaded CPython 3.10Windows x86-64

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

Uploaded CPython 3.10macOS 11.0+ ARM64

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

Uploaded CPython 3.10macOS 10.9+ x86-64

minionpy-1.7.0-cp39-cp39-win_amd64.whl (9.5 MB view details)

Uploaded CPython 3.9Windows x86-64

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

Uploaded CPython 3.9macOS 11.0+ ARM64

minionpy-1.7.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.7.0-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: minionpy-1.7.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.7.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 e816e252383a92fcf2e6d6969a1824fa1ecde75af6a8e9e9c4caab30fee2ae0f
MD5 abb03216ea52b169ab863f2b3816258b
BLAKE2b-256 20422fc6fbf22f972106c4025019051246b9f3bbd9d2b65155cb98ca469a5bf8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.7.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 90f86e5f3bb0e073e58074de3ac1dcdc341c7572a6b036a3ff324728b913bb98
MD5 76c9515e32478ecbc494215be3572b6b
BLAKE2b-256 afedef1041d6328458dfe0920105aaf1a5e16fb0e49fd7f2688f6d10cae8df96

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.7.0-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3b3dd66dd027f54b3b0357d3212885c53b387311714df7b3aa61c6b25e3dbc0b
MD5 1520210c30303ce96b42dd7b9e8cdd71
BLAKE2b-256 2c3005771bf1b72a7b5718098b8d09cc811046f5f6a634730a593db3d989172f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.7.0-cp314-cp314-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 621a02ee2d8a53d89969b6415d4fad7aa2ff47f5dd5c24ce4ff6411216a4cf0c
MD5 7a58fc21a45783441df90fb348df8651
BLAKE2b-256 b048971eacf94c885ddde17e2e92ceac845a53164bf16e8a218ba22c8b4c192e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: minionpy-1.7.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.7.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 cd8e466b9a5f34102166f64656dd0ab491e87ad59b6ab2a7bb248a8b7b97cfc3
MD5 c648712a6bb014aebfc664831ec9cc79
BLAKE2b-256 72b2307328e4088fa48b1ccb26516ac6b325c69fe1c73cdd7d09ff35ca398480

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.7.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 cb9689f02a2a966e011f1572de0cb9b3c937b5d5fa94e49ec745ab05c26e2e4a
MD5 1ad8eff0cdfde246e459c17f330c31ba
BLAKE2b-256 33aca0b7a7bfff84d2dbcfb7cbb94fbe6a05d7fd85c6cbe246b30f875ec50f63

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.7.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 be0bc0065331b7dde407e92f85deb33096e4e26278269a19fe60ee5bc9c609d1
MD5 c95fab6b9de48aac9836d87bd7ef2535
BLAKE2b-256 e887bbe797c93ffe996c190534525296bfc927b289cb16bd75b1c519a9603cf2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.7.0-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 f5a115cd2854b3bdc2d0e6d5ad86461246636ea5713df9c6a1a400ec88fd20d6
MD5 351cac9ffcd2f5af334ea895f1411c0a
BLAKE2b-256 9102f79c32e7dce082213071644306ee45e0362588d184e8055ea25ebb595329

See more details on using hashes here.

File details

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

File metadata

  • Download URL: minionpy-1.7.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.7.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 0f5caf743853334057956ff3858df48c7cb6be8c09af63b10e3157aa91a23c18
MD5 256d6dbc63542227eb6d0b69c81a6431
BLAKE2b-256 7e7c67ea4d75ac44dfdc6dfc873dca81118d5cedfa59e65178caa700bb1497b2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.7.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e4c645f55d37515785fa385d085436e981338e55d9f3e2f53c06ce49e65ee544
MD5 68efed24628918a0260f9c31930aa0e2
BLAKE2b-256 f9bbde4989a2a68026ce762b48c18301152aa97ee8642679ca2c5191377cabae

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.7.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8ac949fe766199a5036964d4109e0c977f8f89e2de14a911ef2916d1a4e4c0a6
MD5 5ed00e769eeaacd776d28d4e2396d10a
BLAKE2b-256 cdeb4e43d1de35a68091b2ac97cffcd84c7d01b46c7bbebcb5f5f4e4a0b96fe8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.7.0-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 611b1036fee02b515937370bc6bc233057a288f7fc422867f0d10487495dbbc1
MD5 2ce58ef6dc60aaec4d5316906e60c4e2
BLAKE2b-256 0889103c9fd090977f7cffb703ed2169e4ad37c6aee29da178d1f2bbfa1a242b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: minionpy-1.7.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.7.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 cdc1d04b7fa14561974ae05706d6300ee7edca91caca185bca543b701accfd48
MD5 88a343ec7ecccf45c4d41e1666dd3809
BLAKE2b-256 4ac89f560b8d989ce17a8e82af8edca62026dfa04956a8cbd6f28d33bb67392e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.7.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 627fa96d0d215c9e976f4ce43dc251b5b7af2bac7544c707e17ca5c1fd0bb407
MD5 aef0a832f3510a90410fcf7c3fd408c7
BLAKE2b-256 02a51daf92234e6f1e4f6f2e9abd6393d5eb9b5a42713c5283239a6613102ae0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.7.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 71165bbe398fff6596050177a5f008fa459de6821acba4af8cd888ddfbacda49
MD5 4a063934cbea2ababb62639e08967e15
BLAKE2b-256 a3a5296c7a02128a02e6108a759a312049ab326fbd412eaa5813ce627192447a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.7.0-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 070cdc353256e7471fd9fcb5313bb1a67f21993364aaee2549d242e91c4b3ac2
MD5 1bb76d5ca9802bfbe77dd5dca53f810e
BLAKE2b-256 9530064d5151477276de0966985f538138ca390d235ba95294de6f4b03b52d25

See more details on using hashes here.

File details

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

File metadata

  • Download URL: minionpy-1.7.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.7.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 3c4d84e9e28af07ce719637759f323004e9666503d74f82d927be5f01a2dd69c
MD5 2cb1395ce983cd874ecb8ea9e01f4891
BLAKE2b-256 c9e7d4df934dcbe6a73f85cdb2828ffddbeeab6fdfea52474b7d1282408e6f80

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.7.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 591509f5c6c9ec51b7b5a300893a14c64f53314d6ec7d7a4434551588209a874
MD5 f5b7bed41399f465076d95f6ed46f0ec
BLAKE2b-256 ef3be9a75b7aeaf857066f3f578a80ffb0ecc51501cd9e3d77dce9256049a340

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.7.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ddba4f52854d2d5fbec84add6e1d47f9d9fcb0e83425c343392325a997ea4454
MD5 62c1b756ff533ead04f8e2d48aaebd68
BLAKE2b-256 315a4ee619bf219070dd255efd270679dd13f31b8b43697fd96c95b33ee7a7ec

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.7.0-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 5ce6bde3564138ef4ed049168b2dd42bef7d952870f6636dee9044c4df72e573
MD5 ac9caf316d6eb50955360a5689bfe1df
BLAKE2b-256 b9363dd20e3615f49a09e94e39628d701a6b1e3f676b4c2b16a4a0083427e6dc

See more details on using hashes here.

File details

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

File metadata

  • Download URL: minionpy-1.7.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 9.5 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.7.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 a05287ceda7f9f8447ca5fbbbea983f3a5a0cd23c70232efb6defa59ec3ff96c
MD5 62eb2716f26d768e60f531bcd2c019f6
BLAKE2b-256 5f3b06a134eba775b231ac66c76c10d60865fc16f2508c6e2d77698d49c71e26

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.7.0-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 dd3a243301aaede6ae8a07c3732beddf06789d6fc6ccae772eacd65d7124c948
MD5 486fd1365887a779eec61b208dc9210c
BLAKE2b-256 2d50d917fed6671653a2fc19efeea012b33ffad44476eb508a9acd84995ab549

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.7.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 734dbdffae48d03b19dd3453f7d36ee978c5d4f3f74693cad8849f0d5c0f0ab4
MD5 b7179e007d1afe01d135c6a2d3b7546e
BLAKE2b-256 a8dec81a581fe60f4d9fbbbd58b2166a5a39eb2d8fff5ead409abb2f6a6f46c6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for minionpy-1.7.0-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 e18506404084d7cb50feb8bd4817d9e268dca432296c4b45b5a07a129881d4dd
MD5 ac5d8490b52c28705451c08c1eb39c18
BLAKE2b-256 e3bcf2744956b6c89383e4dfb2e3745b92c427f278f899779747249c637e0ebf

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