Main components

Solution

moead_framework.solution.one_dimension_solution.OneDimensionSolution

Represent a one dimension solution for combinatorial and numerical problems

Algorithms

These algorithms are implemented on the basis of the original papers ([ZhangLi07], [LZ09], [ZhangLiuLi09], [PDL+20a]).

moead_framework.algorithm.abstract_moead.AbstractMoead

Abstract class to implement a new algorithm based on MOEA/D in the framework

For combinatorial problems

moead_framework.algorithm.combinatorial.moead.Moead

Implementation of MOEA/D for combinatorial problems.

moead_framework.algorithm.combinatorial.moead_delta_nr.MoeadDeltaNr

Implementation of MOEA/D with parameters delta / nr

moead_framework.algorithm.combinatorial.moead_dra.MoeadDRA

Implementation of MOEA/D-DRA

moead_framework.algorithm.combinatorial.moead_sps_random.MoeadSPSRandom

Implementation of MOEA/D with the component SpsRandomAndBoundaries.

For numerical problems

moead_framework.algorithm.numerical.moead.Moead

Implementation of MOEA/D for numerical problems.

Note

You can implement your own algorithm by following this tutorial.

Aggregation functions

The aggregation function is used in MOEA/D to decompose the multi-objective problem into several mono-objective sub-problems. The two main functions used are the Weighted Sum and the Tchebycheff function. In our framework, the aggregation function is a required parameter of the algorithm.

moead_framework.aggregation.tchebycheff.Tchebycheff

Tchebycheff aggregation function.

moead_framework.aggregation.weighted_sum.WeightedSum

Weighted Sum aggregation function

moead_framework.aggregation.functions.AggregationFunction

Abstract class to implement an aggregation function in the framework