Version: 0.6.1.3

# MW¶

MW [47] is a constrained multi-objective test suite constructed in a similar fashion to CTP or WFG with 3 different distance functions and 3 local adjustment methods. Most problems are biobjective problems, except MW4, MW8 and MW14 which are scalable ($$m \geq 3$$).

They aim at replacing the CTP test suite by proposing more complex problems with up to 4 inequality constraints.

[1]:

from pymoo.problems import get_problem
from pymoo.util.plotting import plot
from pymoo.problems import get_problem
from pymoo.util.ref_dirs import get_reference_directions
from pymoo.visualization.scatter import Scatter


## MW1¶

[2]:

problem = get_problem("mw1")
plot(problem.pareto_front(), no_fill=True)


## MW2¶

[3]:

problem = get_problem("mw2")
plot(problem.pareto_front(), no_fill=True)


## MW3¶

[4]:

problem = get_problem("mw3")
plot(problem.pareto_front(), no_fill=True)


## MW4¶

[5]:

ref_dirs = get_reference_directions("das-dennis", 3, n_partitions=12)
pf = get_problem("mw4").pareto_front(ref_dirs)

[5]:

<pymoo.visualization.scatter.Scatter at 0x11784d790>


## MW5¶

[6]:

problem = get_problem("mw5")
plot(problem.pareto_front(), no_fill=True)


## MW6¶

[7]:

problem = get_problem("mw6")
plot(problem.pareto_front(), no_fill=True)

/Users/blankjul/workspace/pymoo/pymoo/problems/multi/mw.py:212: RuntimeWarning: divide by zero encountered in divide
l = np.cos(6 * np.arctan(F[:, 1] / F[:, 0]) ** 4) ** 10


## MW7¶

[8]:

problem = get_problem("mw7")
plot(problem.pareto_front(), no_fill=True)


## MW8¶

[9]:

ref_dirs = get_reference_directions("das-dennis", 3, n_partitions=12)
pf = get_problem("mw8").pareto_front(ref_dirs)

[9]:

<pymoo.visualization.scatter.Scatter at 0x1273dcc50>


## MW9¶

[10]:

problem = get_problem("mw9")
plot(problem.pareto_front(), no_fill=True)


## MW10¶

[11]:

problem = get_problem("mw10")
plot(problem.pareto_front(), no_fill=True)


## MW11¶

[12]:

problem = get_problem("mw11")
plot(problem.pareto_front(), no_fill=True)


## MW12¶

[13]:

problem = get_problem("mw12")
plot(problem.pareto_front(), no_fill=True)


## MW13¶

[14]:

problem = get_problem("mw13")
plot(problem.pareto_front(), no_fill=True)


## MW14¶

[15]:

ref_dirs = get_reference_directions("das-dennis", 3, n_partitions=12)
pf = get_problem("mw14").pareto_front()

[15]:

<pymoo.visualization.scatter.Scatter at 0x1272fd1c0>