benchmarkfcns.levy¶
- benchmarkfcns.levy(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 Levy benchmark function. SCORES = levy(X) computes the value of the Levy function at point X. levy accepts a matrix of size M-by-N and returns a vector 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: [-10, 10]^n
Number of local minima: many
Number of global minima: 1
Convexity: non-convex
Separability: non-separable
Modality: multimodal
Mathematical Definition
\[\begin{split}w_i = 1 + \frac{x_i - 1}{4}, \quad \text{for } i=1, \dots, n \\\end{split}\]
f(mathbf{x}) = sin^2(pi w_1) + sum_{i=1}^{n-1} (w_i - 1)^2 [1 + 10sin^2(pi w_i + 1)] + (w_n - 1)^2 [1 + sin^2(2pi w_n)]
Visualization