SYM-PART¶
The SYM-PART [41] 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 0x7f3fb9ab4550>
![../../_images/problems_multi_sym_part_3_1.png](../../_images/problems_multi_sym_part_3_1.png)
Pareto front¶
[2]:
pf = problem.pareto_front()
Scatter(title="Pareto front").add(pf).show()
[2]:
<pymoo.visualization.scatter.Scatter at 0x7f3fb7956a60>
![../../_images/problems_multi_sym_part_5_1.png](../../_images/problems_multi_sym_part_5_1.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()
[3]:
<pymoo.visualization.scatter.Scatter at 0x7f3fb9ab4700>
![../../_images/problems_multi_sym_part_7_1.png](../../_images/problems_multi_sym_part_7_1.png)
Pareto front¶
[4]:
pf = problem.pareto_front()
Scatter(title="Pareto front").add(pf).show()
[4]:
<pymoo.visualization.scatter.Scatter at 0x7f3fb71c9160>
![../../_images/problems_multi_sym_part_9_1.png](../../_images/problems_multi_sym_part_9_1.png)