# macop.algorithms.multi.MOEAD

Multi-Ojective Evolutionary Algorithm with Scalar Decomposition algorithm

Functions

`moEvaluator`(_solution, _evaluator, _weights) |

Classes

`MOEAD`(_mu, _T, _initalizer, _evaluator, …) | Multi-Ojective Evolutionary Algorithm with Scalar Decomposition

class `macop.algorithms.multi.MOEAD.``MOEAD`(_mu, _T, _initalizer, _evaluator, _operators, _policy, _validator, _maximise=True, _parent=None)

  Multi-Ojective Evolutionary Algorithm with Scalar Decomposition

  `mu`

    {int} – number of sub problems

  `T`

    {[float]} – number of neightbors for each sub problem

  `nObjectives`

    {int} – number of objectives (based of number evaluator)

  `initalizer`

    {function} – basic function strategy to initialize solution

  `evaluator`

    {[function]} – list of basic function in order to obtained fitness (multiple objectives)

  `operators`

    {[Operator]} – list of operator to use when launching algorithm

  `policy`

    {Policy} – Policy class implementation strategy to select operators

  `validator`

    {function} – basic function to check if solution is valid or not under some constraints

  `maximise`

    {bool} – specify kind of optimization problem

  `population`

    [{Solution}] – population of solution, one for each sub problem

  `pfPop`

    [{Solution}] – pareto front population

  `weights`

    [[{float}]] – random weights used for custom mu sub problems

  `callbacks`

    {[Callback]} – list of Callback class implementation to do some instructions every number of evaluations and load when initializing algorithm

  `end`()

    Display end message into run method

  `initRun`()

    Method which initialiazes or re-initializes the whole algorithm context specifically for MOEAD

  `progress`()

    Log progress and apply callbacks if necessary

  `run`(_evaluations)

    Run the local search algorithm

    Parameters

      _evaluations – {int} – number of Local search evaluations

    Returns

      {Solution} – best solution found