Optimisation modules built for optimization problem during thesis

Jérôme BUISINE bb83925526 find sphinx build path 3 lat temu
.github bb83925526 find sphinx build path 3 lat temu
docs 630c65ef12 add of workflow docs process 3 lat temu
examples ed1cb1cb7d example update for alrogithms and evaluators 3 lat temu
macop ba2569ee27 MOSubProblem test added 3 lat temu
.gitignore 630c65ef12 add of workflow docs process 3 lat temu
CONTRIBUTING.md 287df287e2 update math syntax on paper 4 lat temu
LICENSE 1bb5cb9f48 start of new documentation explanation 3 lat temu
README.md 287df287e2 update math syntax on paper 4 lat temu
__init__.py 0a1b108095 First version of OR framework 5 lat temu
build.sh 899ec8e7d3 rename all paramaters as protected 3 lat temu
logo_macop.png df8251b5ac new package name : macop; use of new policy for operators 4 lat temu
paper.bib 0e743faba7 Prepare to major version 4 lat temu
paper.md 287df287e2 update math syntax on paper 4 lat temu
requirements.txt 4fbbbf39d3 documentation updates for algorithms 4 lat temu
setup.py ed1cb1cb7d example update for alrogithms and evaluators 3 lat temu

README.md

Minimalist And Customisable Optimisation Package

Description

macop is an optimisation 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