benchmarkfcns.f8f2

benchmarkfcns.f8f2(arg0: Annotated[numpy.typing.NDArray[numpy.float64], '[m, n]', 'flags.c_contiguous']) Annotated[numpy.typing.NDArray[numpy.float64], '[m, 1]']

Computes the value of the Expanded Griewank plus Rosenbrock (F8F2) benchmark function. SCORES = f8f2(X) computes the value of the F8F2 function at point X. f8f2 accepts a matrix of size M-by-N and returns a vetor SCORES of size M-by-1 in which each row contains the function value for the corresponding row of X. Properties:

  • Global minimum: 0

  • Location of global minimum: (1, 1, …, 1)

  • Number of dimensions: n

  • Recommended domain: [-100, 100]^n

  • Modality: multimodal

  • Characteristic: Highly non-separable.

Mathematical Definition

\[\begin{split}F2(\mathbf{x}, \mathbf{y}) = 100(x^2 - y)^2 + (x - 1)^2 \\\end{split}\]

F8(mathbf{x}) = frac{x^2}{4000} - cos(x) + 1 \ f(mathbf{x}) = sum_{i=1}^{n-1} F8(F2(x_i, x_{i+1})) + F8(F2(x_n, x_1))

Visualization