benchmarkfcns.happycat

benchmarkfcns.happycat(x: Annotated[numpy.typing.NDArray[numpy.float64], '[m, n]', 'flags.c_contiguous'], alpha: SupportsFloat | SupportsIndex = 0.5) Annotated[numpy.typing.NDArray[numpy.float64], '[m, 1]']

Computes the value of the Happy Cat benchmark function. SCORES = happycat(X) computes the value of the Happy Cat function at point X. happycat 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. SCORES = happycat(X, ALPHA) specifies power of the sphere component of the function. Properties:

  • Global minimum: 0

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

  • Number of dimensions: n

  • Recommended domain: x_i ∈ [-2, 2]

  • Number of local minima: Numerous

  • Number of global minima: 1

  • Convexity: Non-convex

  • Separability: Non-separable (The variables are coupled via the Euclidean norm

    and the sum)

  • Modality: Multimodal

  • Symmetry: Non-symmetric (The minimum is at -1, not 0)

  • Differentiable: Yes

For more information, please visit: benchmarkfcns.info/doc/happycatfcn

Mathematical Definition

Visualization

happycat landscape