pymoo
Latest Version: pymoo==0.4.2

SYM-PART

The SYM-PART [34] problem suite is a multi-modal multi-objective optimization problem (MMOP). In MMOPs, a solution :math:`y` in the objective space may have several inverse images in the decision space. For this reason, an MMOP could have more than one Pareto subsets.

The SYM-PART has two variants: SYM-PART simple and SYM-PART rotated. Both of them have the same Pareto front. But their Pareto sets are different.

1. SYM-PART Simple

Pareto subsets

[1]:
from pymoo.problems.multi.sympart import SYMPART, SYMPARTRotated
from pymoo.visualization.scatter import Scatter

problem = SYMPART()
ps = problem.pareto_set()
Scatter(title="Pareto set", xlabel="$x_1$", ylabel="$x_2$").add(ps).show()
../../_images/problems_multi_sym_part_3_0.png

Pareto front

[2]:
pf = problem.pareto_front()
Scatter(title="Pareto front").add(pf).show()
../../_images/problems_multi_sym_part_5_0.png

2. SYM-PART Rotated

Pareto subsets

The pareto subsets can be rotated.

[3]:
from numpy import pi

# rotate pi/3 counter-clockwisely
problem = SYMPARTRotated(angle=pi/3)
ps = problem.pareto_set()
Scatter(title="Pareto set", xlabel="$x_1$", ylabel="$x_2$").add(ps).show()
../../_images/problems_multi_sym_part_7_0.png

Pareto front

[4]:
pf = problem.pareto_front()
Scatter(title="Pareto front").add(pf).show()
../../_images/problems_multi_sym_part_9_0.png