Перейти к содержанию

Функция Розенброка

Эта статья находится на начальном уровне проработки, в одной из её версий выборочно используется текст из источника, распространяемого под свободной лицензией
Материал из энциклопедии Руниверсалис
График функции Розенброка для двух переменных. Глобальный минимум перенесён в точку (0,0).

Функция Розенброка (англ. Rosenbrock function, Rosenbrock's valley, Rosenbrock's banana function) — невыпуклая функция, используемая для оценки производительности алгоритмов оптимизации, предложенная Ховардом Розенброком[англ.] в 1960 году[1]. Считается, что поиск глобального минимума для данной функции является нетривиальной задачей.

Является примером тестовой функции для локальных методов оптимизации. Имеет минимум 0 в точке (1,1)[2].

Каноническое определение

Значение функции Розенброка для двух переменных в окрестности точки [math]\displaystyle{ (x, y)=(0, 0) }[/math].

Функция Розенброка для двух переменных определяется как:

[math]\displaystyle{ f(x, y) = (1-x)^2 + 100(y-x^2)^2 .\quad }[/math]

Она имеет глобальный минимум в точке [math]\displaystyle{ (x, y)=(1, 1) }[/math] где [math]\displaystyle{ f(x, y)=0 }[/math].

Многомерное обобщение

Встречаются два классических варианта многомерного обобщения функции Розенброка.

В первом случае, как сумма [math]\displaystyle{ N/2 }[/math] несвязанных двумерных функций Розенброка:

[math]\displaystyle{ f(\mathbf{x}) = f(x_1, x_2, \dots, x_N) = \sum_{i=1}^{N/2} \left[100(x_{2i-1}^2 - x_{2i})^2 + (x_{2i-1} - 1)^2 \right]. }[/math][3]

Более сложным вариантом является:

[math]\displaystyle{ f(\mathbf{x}) = \sum_{i=1}^{N-1} \left[ (1-x_i)^2+ 100 (x_{i+1} - x_i^2 )^2 \right] \quad \forall x\in\mathbb{R}^N. }[/math][4]

Существует также вероятностное обобщение функции Розенброка, предложенное англ. Xin-She Yang[5]:

[math]\displaystyle{ f(\mathbf{x}) =\sum_{i=1}^{n-1} \Big[(1-x_i)^2+100 \epsilon_i (x_{i+1}-x_i^2)^2 \Big], }[/math]

где случайные переменные [math]\displaystyle{ \epsilon_i (i=1,2,...,n-1) }[/math] являются равномерно распределёнными Unif(0,1).

См. также

Примечания

  1. Rosenbrock, H.H. An automatic method for finding the greatest or least value of a function (англ.) // The Computer Journal[англ.] : journal. — 1960. — Vol. 3. — P. 175—184. — ISSN 0010-4620. — doi:10.1093/comjnl/3.3.175.
  2. Жилинискас А., Шатлянис В. Поиск оптимума: компьютер расширяет возможности. - М.: Наука, 1989, с. 14, ISBN 5-02-006737-7
  3. L C W Dixon, D J Mills. Effect of Rounding errors on the Variable Metric Method. Journal of Optimization Theory and Applications 80, 1994. [1] Архивная копия от 14 апреля 2020 на Wayback Machine
  4. Generalized Rosenbrock's function (недоступная ссылка). Дата обращения: 16 сентября 2008. Архивировано 26 сентября 2008 года.
  5. Yang X.-S. and Deb S., Engineering optimization by cuckoo search, Int. J. Math. Modelling Num. Optimisation, Vol. 1, No. 4, 330—343 (2010).

Литература

Ссылки