Multiple Objective Optimization Test Evaluators
Multi-objective optimization test problems. Each evaluator has two or more objectives that must be simultaneously optimized, typically producing a Pareto front.
- class C2_DTLZ2
Bases:
TestEvaluatorCompute the objective values for the DTLZ2 multi-objective optimization problem.
The DTLZ2 problem is defined for M objectives and n decision variables, where n >= M and k = n - M + 1. The decision vector x is composed of n variables, each in the range [0, 1].
- Problem formulation:
Minimize f_m(x) for m = 1, …, M, where
f_1(x) = (1 + g(x_M)) * prod_{i=1}^{M-1} cos(x_i * pi/2) f_2(x) = (1 + g(x_M)) * (prod_{i=1}^{M-2} cos(x_i * pi/2)) * sin(x_{M-1} * pi/2) … f_{M-1}(x) = (1 + g(x_M)) * cos(x_1 * pi/2) * sin(x_2 * pi/2) f_M(x) = (1 + g(x_M)) * sin(x_1 * pi/2)
- where
g(x_M) = sum_{x_i in x_M} (x_i - 0.5)^2, x_M = (x_M, x_{M+1}, …, x_n).
- Parameters:
x (array-like of shape (n,)) – Decision variable vector, with each element in [0, 1].
M (int) – Number of objectives.
- Returns:
f – Objective values [f_1, f_2, …, f_M].
- Return type:
list of float
Notes
The Pareto-optimal front corresponds to g(x_M) = 0, i.e., x_i = 0.5 for all i >= M.
On the Pareto front, the objective vectors lie on the unit hypersphere: sum_{m=1}^M f_m^2 = 1.
The parameter k = n - M + 1 controls the number of distance variables and typically k >= 10.
The function g(x_M) introduces multimodality and convergence difficulty.
References
Deb, K., Thiele, L., Laumanns, M., & Zitzler, E. (2002). Scalable test problems for evolutionary multiobjective optimization. Evolutionary multiobjective optimization, 105-145.
Problem Description
General DTLZ2 Problem Formulation
For M objectives and n decision variables, where k = n - M + 1, the problem is:
\[\begin{split}\begin{aligned} \text{Minimize } & f_1(\mathbf{x}) = (1 + g(\mathbf{x}_M)) \prod_{i=1}^{M-1} \cos\left(x_i \frac{\pi}{2}\right) \\ \text{Minimize } & f_2(\mathbf{x}) = (1 + g(\mathbf{x}_M)) \left(\prod_{i=1}^{M-2} \cos\left(x_i \frac{\pi}{2}\right)\right) \sin\left(x_{M-1} \frac{\pi}{2}\right) \\ & \vdots \\ \text{Minimize } & f_{M-1}(\mathbf{x}) = (1 + g(\mathbf{x}_M)) \cos\left(x_1 \frac{\pi}{2}\right) \sin\left(x_2 \frac{\pi}{2}\right) \\ \text{Minimize } & f_M(\mathbf{x}) = (1 + g(\mathbf{x}_M)) \sin\left(x_1 \frac{\pi}{2}\right) \end{aligned}\end{split}\]where:
\[g(\mathbf{x}_M) = \sum_{x_i \in \mathbf{x}_M} (x_i - 0.5)^2\]x = (x_1, x_2, …, x_n), with x_i in [0, 1] for all i
x_M = (x_M, x_{M+1}, …, x_n)
The Pareto-optimal front corresponds to g(x_M) = 0, i.e., x_i = 0.5 for all i in {M, …, n}, and the objective vectors lie on the unit hypersphere:
\[\sum_{m=1}^M f_m^2 = 1\]Reference
Deb, K., Thiele, L., Laumanns, M., & Zitzler, E. (2002). Scalable test problems for evolutionary multiobjective optimization. Evolutionary multiobjective optimization, 105-145.
Problem Metadata
- Test Goal:
Multiple Objective Optimization
- Problem Type:
Continuous
- Variables:
7
- Continuous Variables:
7
- Discrete Variables:
0
- Constraints:
0
- Equality Constraints:
0
- Inequality Constraints:
0
- Bounded Variables:
Yes
- class DasKnee
Bases:
TestEvaluatorThis is a truss optimization problem. As a more realistic mid-sized problem the objectives can be combined in various ways to explore problems of different dimension. Any stress response which is not included as an objective should be included in a maximum stress constraint (g4-g6).
Problem Description:
A beam of length D has three bars suspended via pin joints (free-rotating).
The middle bar is placed at position x. It is vertical and of length L.
The left and right bars are placed at the beginning and end of the beam, and adjusted in length and angle to join the middle bar at point P. The angles are t0 and t1 for the left and right bars, respectively.
A horizontal wind load W0 and a suspended load W1 are applied at point P.
The placement of the middle bar, x, and the cross sectional areas (a0, a1, and a2) are the design variables.
The objectives include total displacement, total volume, and maximum stress in each of the bars.
The constraints are geometric consistency and maximum allowable stress.
- Objectives:
f0: Squared Total Displacement
f1: Total Volume of Beams
f2, f3, f4: Absolute Stress of Left, Middle, and Right Bars (respectively)
- Design Variables
x: Placement of middle bar along beam
a0, a1, a2: Cross-sectional areas of left, middle, and right bars (resp.)
- Constraints:
g0, g1, g2, g3: Geometric Consistency Constraints*
g4, g5, g6: Maximum Stress Constraints
- State Variables:
t0, t1: Angles of left and right bars
u0, u1: Total Displacement (horizontal, vertical)
d0, d1, d2: Elongation of left, middle, and right bars
K: Structure stiffness matrix
A: Matrix relating bar forces to load forces
- Givens:
Modulus of Elasticity (steel) = EM = 29,000,000.0 lbf / in^2
Length of middle bar, fixed = L = 720 in
Length of beam = D = 1440 in
Wind load (horizontal) = W0 = 100,000 lbf
Suspended load (vertical) = W1 = 1,000,000 lbf
Maximum stress allowable for bars = Smax = 550,000 lbf / in^2
Note
g1 = -g0, and g3 = -g2, because these are originally equality constraints that have been transformed to inequality constraints.
Number of Objectives: 2-5 Medium
Number of Design Variables: 4 Low-Medium
Number of Constraints: 4-7 Low-Medium
- minimize
\(f_0(X) = u_0^2 + u_1^2\)
\(f_1(X) = a_0\frac{L}{\sin(t_0)} + a_1L + a_2\frac{L}{\sin(t_1)}\)
\(f_2(X) = \frac{EM}{L} * |d_0| * \sin(t_0)\)
\(f_3(X) = \frac{EM}{L} * |d_1|\)
\(f_4(X) = \frac{EM}{L} * |d_2| * \sin(t_1)\)
over
X = [x, a0, a1, a2]
- such that
\(g_0(X) = x - L\cot(t_0) \leq 0\)
\(g_1(X) = L\cot(t_0) - x \leq 0\)
\(g_2(X) = (D-x) - L\cot(t_1) \leq 0\)
\(g_3(X) = L\cot(t_1) - (D-x) \leq 0\)
\(g_4(X) = |f_2| - S_\text{max} \leq 0\) // g4 - g6 included only
\(g_5(X) = |f_3| - S_\text{max} \leq 0\) // if these responses are
\(g_6(X) = |f_4| - S_\text{max} \leq 0\) // not objectives
where
0.25*D <= x <= 0.75*D (in)
0.8 <= a0, a1, a2 <= 3.0 (in)
- Starting Point
x = 0.50*D (Center of space)
a0, a1, a2 = 1.9
Problem Description
This is a truss optimization problem. As a more realistic mid-sized problem the objectives can be combined in various ways to explore problems of different dimension. Any stress response which is not included as an objective should be included in a maximum stress constraint (g4-g6).
Problem Description:
A beam of length D has three bars suspended via pin joints (free-rotating).
The middle bar is placed at position x. It is vertical and of length L.
The left and right bars are placed at the beginning and end of the beam, and adjusted in length and angle to join the middle bar at point P. The angles are t0 and t1 for the left and right bars, respectively.
A horizontal wind load W0 and a suspended load W1 are applied at point P.
The placement of the middle bar, x, and the cross sectional areas (a0, a1, and a2) are the design variables.
The objectives include total displacement, total volume, and maximum stress in each of the bars.
The constraints are geometric consistency and maximum allowable stress.
- Objectives:
f0: Squared Total Displacement
f1: Total Volume of Beams
f2, f3, f4: Absolute Stress of Left, Middle, and Right Bars (respectively)
- Design Variables
x: Placement of middle bar along beam
a0, a1, a2: Cross-sectional areas of left, middle, and right bars (resp.)
- Constraints:
g0, g1, g2, g3: Geometric Consistency Constraints*
g4, g5, g6: Maximum Stress Constraints
- State Variables:
t0, t1: Angles of left and right bars
u0, u1: Total Displacement (horizontal, vertical)
d0, d1, d2: Elongation of left, middle, and right bars
K: Structure stiffness matrix
A: Matrix relating bar forces to load forces
- Givens:
Modulus of Elasticity (steel) = EM = 29,000,000.0 lbf / in^2
Length of middle bar, fixed = L = 720 in
Length of beam = D = 1440 in
Wind load (horizontal) = W0 = 100,000 lbf
Suspended load (vertical) = W1 = 1,000,000 lbf
Maximum stress allowable for bars = Smax = 550,000 lbf / in^2
Note
g1 = -g0, and g3 = -g2, because these are originally equality constraints that have been transformed to inequality constraints.
Number of Objectives: 2-5 Medium
Number of Design Variables: 4 Low-Medium
Number of Constraints: 4-7 Low-Medium
- minimize
\(f_0(X) = u_0^2 + u_1^2\)
\(f_1(X) = a_0\frac{L}{\sin(t_0)} + a_1L + a_2\frac{L}{\sin(t_1)}\)
\(f_2(X) = \frac{EM}{L} * |d_0| * \sin(t_0)\)
\(f_3(X) = \frac{EM}{L} * |d_1|\)
\(f_4(X) = \frac{EM}{L} * |d_2| * \sin(t_1)\)
over
X = [x, a0, a1, a2]
- such that
\(g_0(X) = x - L\cot(t_0) \leq 0\)
\(g_1(X) = L\cot(t_0) - x \leq 0\)
\(g_2(X) = (D-x) - L\cot(t_1) \leq 0\)
\(g_3(X) = L\cot(t_1) - (D-x) \leq 0\)
\(g_4(X) = |f_2| - S_\text{max} \leq 0\) // g4 - g6 included only
\(g_5(X) = |f_3| - S_\text{max} \leq 0\) // if these responses are
\(g_6(X) = |f_4| - S_\text{max} \leq 0\) // not objectives
where
0.25*D <= x <= 0.75*D (in)
0.8 <= a0, a1, a2 <= 3.0 (in)
- Starting Point
x = 0.50*D (Center of space)
a0, a1, a2 = 1.9
Reference
Das (1997) Nonlinear multicriteria optimization and robust optimality. Ph.D. Thesis, Dept. of Computational and Applied Mathematics, Rice University, Houston, TX.
Problem Metadata
- Test Goal:
Multiple Objective Optimization
- Problem Type:
Continuous
- Variables:
5
- Continuous Variables:
5
- Discrete Variables:
0
- Constraints:
5
- Equality Constraints:
0
- Inequality Constraints:
5
- Bounded Variables:
Yes
- class DasTruss
Bases:
TestEvaluatorThis is a truss optimization problem. As a more realistic mid-sized problem, the objectives can be combined in various ways to explore problems of different dimension. Any stress response which is not included as an objective should be included in a maximum stress constraint (g4-g6).
For example, cases considered in the reference are:
Minimize displacement (f0) and volume (f1)
Minimize stress in right bar (f4) and volume (f1)
Minimize stress in left bar (f2) and volume (f1)
Minimize stress in left (f2) and right bar (f4) and volume (f1)
You will need to set up your own OptProblem and constraints for these smaller cases.
- Problem Description:
A beam of length D has three bars suspended via pin joints (free-rotating).
The middle bar is placed at position x. It is vertical and of length L.
The left and right bars are placed at the beginning and end of the beam, and adjusted in length and angle to join the middle bar at point P. The angles are t0 and t1 for the left and right bars, respectively.
A horizontal wind load W0 and a suspended load W1 are applied at point P.
The placement of the middle bar, x, and the cross sectional areas (a0, a1, and a2) are the design variables.
The objectives include total displacement, total volume, and maximum stress in each of the bars.
The constraints are geometric consistency and maximum allowable stress.
- Objectives:
f0: Squared Total Displacement
f1: Total Volume of Beams
f2, f3, f4: Absolute Stress of Left, Middle, and Right Bars (respectively)
- Design Variables
x: Placement of middle bar along beam
a0, a1, a2: Cross-sectional areas of left, middle, and right bars (resp.)
- Constraints:
g0, g1, g2, g3: Geometric Consistency Constraints*
g4, g5, g6: Maximum Stress Constraints
- State Variables:
t0, t1: Angles of left and right bars
u0, u1: Total Displacement (horizontal, vertical)
d0, d1, d2: Elongation of left, middle, and right bars
K: Structure stiffness matrix
A: Matrix relating bar forces to load forces
- Givens:
Modulus of Elasticity (steel) = EM = 29,000,000.0 lbf / in^2
Length of middle bar, fixed = L = 720 in
Length of beam = D = 1440 in
Wind load (horizontal) = W0 = 100,000 lbf
Suspended load (vertical) = W1 = 1,000,000 lbf
Maximum stress allowable for bars = Smax = 550,000 lbf / in^2
Note
g1 = -g0, and g3 = -g2, because these are originally equality constraints that have been transformed to inequality constraints.
Number of Objectives: 2-5 Medium
Number of Design Variables: 4 Low-Medium
Number of Constraints: 4-7 Low-Medium
- minimize
\(f_0(X) = u_0^2 + u_1^2\)
\(f_1(X) = a_0\frac{L}{\sin(t_0)} + a_1L + a_2\frac{L}{\sin(t_1)}\)
\(f_2(X) = \frac{EM}{L} * |d_0| * sin(t_0)\)
\(f_3(X) = \frac{EM}{L} * |d_1|\)
\(f_4(X) = \frac{EM}{L} * |d_2| * sin(t_1)\)
over
X = [x, a0, a1, a2]
- such that
\(g_0(X) = x - L\cot(t_0) \leq 0\)
\(g_1(X) = L\cot(t_0) - x \leq 0\)
\(g_2(X) = (D-x) - L\cot(t_1) \leq 0\)
\(g_3(X) = L\cot(t_1) - (D-x) \leq 0\)
\(g_4(X) = |f_2| - S_\text{max} \leq 0\) // g4 - g6 included only
\(g_5(X) = |f_3| - S_\text{max} \leq 0\) // if these responses are
\(g_6(X) = |f_4| - S_\text{max} \leq 0\) // not objectives
- where
0.25*D <= x <= 0.75*D (in)
0.8 <= a0, a1, a2 <= 3.0 (in)
- Starting Point
x = 0.50*D (Center of space)
a0, a1, a2 = 1.9
Problem Description
This is a truss optimization problem. As a more realistic mid-sized problem, the objectives can be combined in various ways to explore problems of different dimension. Any stress response which is not included as an objective should be included in a maximum stress constraint (g4-g6).
For example, cases considered in the reference are:
Minimize displacement (f0) and volume (f1)
Minimize stress in right bar (f4) and volume (f1)
Minimize stress in left bar (f2) and volume (f1)
Minimize stress in left (f2) and right bar (f4) and volume (f1)
You will need to set up your own OptProblem and constraints for these smaller cases.
- Problem Description:
A beam of length D has three bars suspended via pin joints (free-rotating).
The middle bar is placed at position x. It is vertical and of length L.
The left and right bars are placed at the beginning and end of the beam, and adjusted in length and angle to join the middle bar at point P. The angles are t0 and t1 for the left and right bars, respectively.
A horizontal wind load W0 and a suspended load W1 are applied at point P.
The placement of the middle bar, x, and the cross sectional areas (a0, a1, and a2) are the design variables.
The objectives include total displacement, total volume, and maximum stress in each of the bars.
The constraints are geometric consistency and maximum allowable stress.
- Objectives:
f0: Squared Total Displacement
f1: Total Volume of Beams
f2, f3, f4: Absolute Stress of Left, Middle, and Right Bars (respectively)
- Design Variables
x: Placement of middle bar along beam
a0, a1, a2: Cross-sectional areas of left, middle, and right bars (resp.)
- Constraints:
g0, g1, g2, g3: Geometric Consistency Constraints*
g4, g5, g6: Maximum Stress Constraints
- State Variables:
t0, t1: Angles of left and right bars
u0, u1: Total Displacement (horizontal, vertical)
d0, d1, d2: Elongation of left, middle, and right bars
K: Structure stiffness matrix
A: Matrix relating bar forces to load forces
- Givens:
Modulus of Elasticity (steel) = EM = 29,000,000.0 lbf / in^2
Length of middle bar, fixed = L = 720 in
Length of beam = D = 1440 in
Wind load (horizontal) = W0 = 100,000 lbf
Suspended load (vertical) = W1 = 1,000,000 lbf
Maximum stress allowable for bars = Smax = 550,000 lbf / in^2
Note
g1 = -g0, and g3 = -g2, because these are originally equality constraints that have been transformed to inequality constraints.
Number of Objectives: 2-5 Medium
Number of Design Variables: 4 Low-Medium
Number of Constraints: 4-7 Low-Medium
- minimize
\(f_0(X) = u_0^2 + u_1^2\)
\(f_1(X) = a_0\frac{L}{\sin(t_0)} + a_1L + a_2\frac{L}{\sin(t_1)}\)
\(f_2(X) = \frac{EM}{L} * |d_0| * sin(t_0)\)
\(f_3(X) = \frac{EM}{L} * |d_1|\)
\(f_4(X) = \frac{EM}{L} * |d_2| * sin(t_1)\)
over
X = [x, a0, a1, a2]
- such that
\(g_0(X) = x - L\cot(t_0) \leq 0\)
\(g_1(X) = L\cot(t_0) - x \leq 0\)
\(g_2(X) = (D-x) - L\cot(t_1) \leq 0\)
\(g_3(X) = L\cot(t_1) - (D-x) \leq 0\)
\(g_4(X) = |f_2| - S_\text{max} \leq 0\) // g4 - g6 included only
\(g_5(X) = |f_3| - S_\text{max} \leq 0\) // if these responses are
\(g_6(X) = |f_4| - S_\text{max} \leq 0\) // not objectives
- where
0.25*D <= x <= 0.75*D (in)
0.8 <= a0, a1, a2 <= 3.0 (in)
- Starting Point
x = 0.50*D (Center of space)
a0, a1, a2 = 1.9
Reference
Das (1997) Nonlinear multicriteria optimization and robust optimality. Ph.D. Thesis, Dept. of Computational and Applied Mathematics, Rice University, Houston, TX.
Problem Metadata
- Test Goal:
Multiple Objective Optimization
- Problem Type:
Continuous
- Variables:
5
- Continuous Variables:
5
- Discrete Variables:
0
- Constraints:
4
- Equality Constraints:
0
- Inequality Constraints:
4
- Bounded Variables:
Yes
- class Disconnect
Bases:
TestEvaluatorThe SphereEvaluator class is a multiobjective test problem. It models a hyperellipsoid in n-dimensional space, centered at an arbitrary point and extending to the coordinate planes on each axis, although an optional offset may be used as well. The default bounds on the object are the interior and surface of the hyperellipsoid, hence a multiobjective problem would expect to find the minimum-facing surface of the object.
The default problem seeks to minimize each coordinate. This can be easily checked by asserting that a point x is <= center and that the constraint value is equal to 1 (within toleance).
For example, a center of [2, 5, 1] with an offset of [1, 2, 3] would have minima at [1, 7, 4], [3, 2, 4], and [3, 7, 1].
Problem Description
The SphereEvaluator class is a multiobjective test problem. It models a hyperellipsoid in n-dimensional space, centered at an arbitrary point and extending to the coordinate planes on each axis, although an optional offset may be used as well. The default bounds on the object are the interior and surface of the hyperellipsoid, hence a multiobjective problem would expect to find the minimum-facing surface of the object.
The default problem seeks to minimize each coordinate. This can be easily checked by asserting that a point x is <= center and that the constraint value is equal to 1 (within toleance).
For example, a center of [2, 5, 1] with an offset of [1, 2, 3] would have minima at [1, 7, 4], [3, 2, 4], and [3, 7, 1].
Reference
David A. Van Veldhuizen, Multiobjective Evolutionary Algorithms: Classifications, Analyses and New Innovations, Dissertation, AFIT/DS/ENG/99-01. Appendix B (Problem Tanaka)
Problem Metadata
- Test Goal:
Multiple Objective Optimization
- Problem Type:
Continuous
- Variables:
2
- Continuous Variables:
2
- Discrete Variables:
0
- Constraints:
2
- Equality Constraints:
0
- Inequality Constraints:
2
- Bounded Variables:
Yes