Optimisation modules built for optimization problem during thesis

Jérôme BUISINE 389c2124c7 add test when building package hace 3 años
.github 6612bb6381 github ci push event for pypi updated hace 3 años
docs 389c2124c7 add test when building package hace 3 años
examples 8adb876ae9 update macop paper for JOSS hace 3 años
macop 389c2124c7 add test when building package hace 3 años
.gitignore feb1e4263c enable solutions dynamic imports using python package hace 3 años
CONTRIBUTING.md df8251b5ac new package name : macop; use of new policy for operators hace 3 años
LICENSE 3589fb944b Initial commit hace 4 años
README.md d5f6dbaa97 badges styles updated hace 3 años
__init__.py 0a1b108095 First version of OR framework hace 4 años
build.sh 389c2124c7 add test when building package hace 3 años
logo_macop.png df8251b5ac new package name : macop; use of new policy for operators hace 3 años
paper.bib 0e743faba7 Prepare to major version hace 3 años
paper.md 8adb876ae9 update macop paper for JOSS hace 3 años
requirements.txt 4fbbbf39d3 documentation updates for algorithms hace 3 años
setup.py 389c2124c7 add test when building package hace 3 años

README.md

Minimalist And Customizable Optimization Package

Description

macop is an optimization Python package which not implement the whole available algorithms in the literature but let you the possibility to quickly develop and test your own algorithm and strategies. The main objective of this package is to be the most flexible as possible and hence, to offer a maximum of implementation possibilities.

Modules

  • algorithms: generic and implemented OR algorithms
  • evaluator: example of an evaluation function to use (you have to implement your own evaluation function)
  • solutions: solutions used to represent problem data
  • operators: mutators, crossovers update of solution. This folder also has policies folder to manage the way of update and use solution.
  • callbacks: callbacks folder where Callback class is available for making callback instructions every number of evaluations.

Note: you can pass a custom validator function to the algorithm in order to check if a solution is always correct for your needs after an update.

How to use ?

Fully documentation of package with examples is available.

You can also see examples of use:

Add as dependency

git submodule add https://github.com/jbuisine/macop.git

License

The MIT License