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

"Оврагът на Розенброк" е класически проблем за оптимизация, известен също като функцията на банана. Глобалният оптимум е в дълъг, тесен, с формулата на парабола овраг. Намирането на оврага е тривиално, но сходимостта към глобалния оптимум е трудна и затова тази задача се използва непрекъснато при оценяване на свойствата на оптимизационните алгоритми.

Скрипт: rosenbrock.qscript

'script language = VBscript
function Main()
    sum = 0
    for i = 1 to qs_NVARS-1
        sum = sum + qs_sqr(1-qs_VAR(i)) + 105 * qs_sqr(qs_VAR(i+1)-qs_sqr(qs_VAR(i)))
    next
    qs_RESULT(1) = sum
end function

QstatLab модел (виж OptimizationModels.qsl в Примери):

type = spreadsheet
nvars = 2
vars
2
1
result
=SQR(1-B4)+105*SQR(B5-B4*B4)
lvars
-2
-2
uvars
2
2

или

Type =script
nvars = 2
scriptfile = rosenbrock.qscript
lvar1 = -2
uvar1 = 2
var1 = 0
lvar2 = -2
uvar2 = 2
var2 = 0
 

Минимум

Минималната стойност е 0 за Var(i) = 1

Графики:

Обратно към Въвеждане на данни