saealib.TchebycheffDecomposition#
- class saealib.TchebycheffDecomposition[source]#
Bases:
DecompositionTchebycheff (Chebyshev) scalarization.
score_i = max_{j} { w_j * |f_{ij} - z_j*| }where
z*is the ideal point. Unlike the weighted sum, this scalarization can reach any point on the Pareto front, including parts of non-convex fronts, by varying the weight vector.Zero weights are replaced by
1e-6to avoid degenerate sub-problems (a convention from Zhang & Li 2007, Appendix A).References
[9]: Zhang, Q., & Li, H. (2007). MOEA/D: A multiobjective evolutionary algorithm based on decomposition. IEEE Transactions on Evolutionary Computation, 11(6), 712-731.
Methods
Compute the Tchebycheff scalar score. |
|
Return the decomposition contract. |
Method Details
- TchebycheffDecomposition.__init__()#
- TchebycheffDecomposition.aggregate(f, weights, ideal_point)[source]#
Compute the Tchebycheff scalar score.
- Parameters:
f (np.ndarray) – Objective matrix, shape
(N, n_obj).weights (np.ndarray) – Non-negative weight vector, shape
(n_obj,). Zero entries are internally replaced by1e-6.ideal_point (np.ndarray) – Ideal (reference minimum) point, shape
(n_obj,).
- Returns:
Scores, shape
(N,). Lower is better.- Return type:
np.ndarray
- TchebycheffDecomposition.contract()#
Return the decomposition contract.
- Return type: