benchmarkfcns.multiobjective.dtlz6

benchmarkfcns.multiobjective.dtlz6(x: Annotated[numpy.typing.NDArray[numpy.float64], '[m, n]', 'flags.c_contiguous'], num_objectives: SupportsInt | SupportsIndex = 3) Annotated[numpy.typing.NDArray[numpy.float64], '[m, n]']

Computes the value of the DTLZ6 multi-objective benchmark function. SCORES = multiobjective.dtlz6(X, num_objectives) computes the value of the DTLZ6 function at point X. multiobjective.dtlz6 accepts a matrix of size M-by-N and returns a matrix SCORES of size M-by-K where K is the number of objectives. Properties:

  • Global Pareto front: Degenerate (Curve)

  • Number of dimensions: n (usually 10)

  • Recommended domain: [0, 1]^n

  • Modality: multimodal

  • Characteristic: A harder version of DTLZ5.

Mathematical Definition

\[\begin{split}g(\mathbf{x}_M) = \sum_{x_i \in \mathbf{x}_M} x_i^{0.1} \\\end{split}\]

theta_1 = x_1 pi/2 \ theta_i = frac{pi}{4(1+g(mathbf{x}_M))} (1 + 2g(mathbf{x}_M) x_i), quad i=2, dots, M-1 \ f_1(mathbf{x}) = (1 + g(mathbf{x}_M)) cos(theta_1) dots cos(theta_{M-1}) \ vdots \ f_M(mathbf{x}) = (1 + g(mathbf{x}_M)) sin(theta_1)

Visualization

No visualization available for this function.