The definition ca be found in [54]. It is a non-convex function, introduced by Howard H. Rosenbrock in 1960 and also known as Rosenbrock’s valley or Rosenbrock’s banana function.


\begin{align} \begin{split} f(x) &=& \sum_{i=1}^{n-1} \bigg[100 (x_{i+1}-x_i^2)^2+(x_i - 1)^2 \bigg] \\ &&-2.048 \leq x_i \leq 2.048 \quad i=1,\ldots,n \end{split} \end{align}


\[f(x^*) = 0 \; \text{at} \; x^* = (1,\ldots,1)\]

Fitness Landscape

import numpy as np

from pymoo.problems import get_problem
from pymoo.visualization.fitness_landscape import FitnessLandscape

problem = get_problem("rosenbrock", n_var=2)

FitnessLandscape(problem, angle=(45, 45), _type="surface").show()
<pymoo.visualization.fitness_landscape.FitnessLandscape at 0x7fdb26ac67f0>
FitnessLandscape(problem, _type="contour", colorbar=True).show()
<pymoo.visualization.fitness_landscape.FitnessLandscape at 0x7fdb27489250>