benchmarkfcns.multiobjective.dtlz4

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

Computes the value of the DTLZ4 multi-objective benchmark function. SCORES = multiobjective.dtlz4(X, num_objectives, alpha) computes the value of the DTLZ4 function at point X. multiobjective.dtlz4 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: Concave

  • Number of dimensions: n (usually 10)

  • Recommended domain: [0, 1]^n

  • Modality: multimodal

  • Characteristic: Tests ability to maintain biased distribution.

Mathematical Definition

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

f_1(mathbf{x}) = (1 + g(mathbf{x}_M)) cos(x_1^alpha pi/2) dots cos(x_{M-1}^alpha pi/2) \ vdots \ f_M(mathbf{x}) = (1 + g(mathbf{x}_M)) sin(x_1^alpha pi/2)

Visualization

No visualization available for this function.