SYM-PART#
The SYM-PART [8] 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()
[1]:
<pymoo.visualization.scatter.Scatter at 0x10393d0c0>
Pareto front#
[2]:
pf = problem.pareto_front()
Scatter(title="Pareto front").add(pf).show()
[2]:
<pymoo.visualization.scatter.Scatter at 0x1077f7e50>
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()
[3]:
<pymoo.visualization.scatter.Scatter at 0x10393cb50>
Pareto front#
[4]:
pf = problem.pareto_front()
Scatter(title="Pareto front").add(pf).show()
[4]:
<pymoo.visualization.scatter.Scatter at 0x1102d7d60>