# Documentation

## macop

## macop.algorithms

`macop.algorithms.Algorithm` | Abstract Algorithm class used as basic algorithm implementation with some specific initialization
`macop.algorithms.mono.IteratedLocalSearch` | Iterated Local Search Algorithm implementation
`macop.algorithms.mono.LocalSearch` | Local Search algorithm
`macop.algorithms.multi.MOEAD` | Multi-Ojective Evolutionary Algorithm with Scalar Decomposition algorithm
`macop.algorithms.multi.MOSubProblem` | MOEAD sub problem algorithm class

## macop.callbacks

`macop.callbacks.BasicCheckpoint` | Basic Checkpoint class implementation
`macop.callbacks.MultiCheckpoint` | Multi Checkpoint class implementation
`macop.callbacks.ParetoCheckpoint` | Pareto front Checkpoint class implementation
`macop.callbacks.UCBCheckpoint` | UCB policy Checkpoint class implementation
`macop.callbacks.Callback` | Abstract Checkpoint class

## macop.evaluators

`macop.evaluators.EvaluatorExample` | Python evaluator function example

## macop.operators

`macop.operators.crossovers.Crossover` | Abstract Crossover class
`macop.operators.crossovers.RandomSplitCrossover` | Crossover implementation which generated new solution by randomly splitting best solution and current solution
`macop.operators.crossovers.SimpleCrossover` | Crossover implementation which generated new solution by splitting at mean size best solution and current solution
`macop.operators.mutators.Mutation` | Abstract Mutation class
`macop.operators.mutators.SimpleBinaryMutation` | Mutation implementation for binary solution, swap bit randomly from solution
`macop.operators.mutators.SimpleMutation` | Mutation implementation for binary solution, swap two bits randomly from solution
`macop.operators.policies.Policy` | Abstract class which is used for applying strategy when selecting and applying operator
`macop.operators.policies.RandomPolicy` | Policy class implementation which is used for selecting operator randomly
`macop.operators.policies.UCBPolicy` | Policy class implementation which is used for selecting operator using Upper Confidence Bound
`macop.operators.Operator` | Abstract Operator class

## macop.solution

`macop.solutions.BinarySolution` | Binary solution class implementation
`macop.solutions.CombinatoryIntegerSolution` | Combinatory integer solution class implementation
`macop.solutions.IntegerSolution` | Integer solution class implementation
`macop.solutions.Solution` | Abstract solution class