Алгоритм метода Зойтендейка (случай нелинейных ограничений-неравенств)
Начальный этап. Выбрать начальную точку х1, для которой gi(xi)£0 приi= 1, ...,m. Положить k= 1 и перейти к основному этапу.
Основной этап. Шаг 1. Положить и решить следующую задачу:
Пусть (zk, dk) — оптимальное решение. Если zk=0, то остановиться; xkявляется точкой Ф. Джона. Если zk< 0, то перейти к шагу 2.
где. Положить . заменить k на k+1 и перейти к шагу 1.
Решим эту задачу методом Зойтендейка. Начнем процесс из точки .Отметим, что
Итерация 1
Можно легко проверить, используя симплекс-метод, что оптимальным решением этой задачи является вектор
Линейный поиск. Любая точка по направлению d1== (1.00, —1.00)T из точки xi= (0.00, 0.75)T может быть представлена в виде ,а соответствующее ей значение целевой функции равно . Максимальное значение, для которого остается допустимой точкой, равно == 0.414. При этом значенииl активным становится ограничение . Значение l получается изрешения следующей задачи одномерной минимизации:
минимизировать 6l2—2.5l—3.375
при условии 0£l£0.414
Оптимальное значение равно l1= 0.2083. Следовательно, х2= (x1+l1d1) -(0.2083,0.5417)T.
Итерация 2
Поиск направления. В точке x2= (0.2083, 0.5417)T имеем (х2)=(—4,2500, —4.2500)T Активных ограничений в этой точке нет, и поэтому задача определения направления имеет вид
минимизировать z
при условиях —4.25d1—4.25d2—z£0,
Оптимальным решением является вектор d2=(1, 1)T, а z2= -8.50.
Линейный поиск. Можно легко проверить, что максимальное l, при котором точка x2+ld2 допустима, равно lmax== 0.3472. При этом активным становится ограничение . Значение l2 получается минимизацией при условии и, очевидно, равно l2 = 0.3472, так что хз=х2 +l2d2= (0.5555, 0.8889)T.
Итерация 3
Оптимальным решением является вектор.
Линейный поиск. Максимальное значение l при котором точка xз+ldз допустима, равно lmax= 0,09245. При этом l активным становится ограничение . Значение l3 получается минимизациейпри условии 0,09245. Оптимальным решением этой задачи являетсяl3= 0.09245, так что = (0.6479, 0.8397)T.
Итерация 4
Поиск, направления. Для точки х4= (0.6479, 0.8397)T имеем =(— 3.0878, —3.9370)^ а I={2}. Задача определения направления имеет вид
Оптимальным решением этой задачи является вектор d4= (-0.5171, 1.0000)T и z4=— 2.340.
Линейный поиск. Максимальное значение К, для которого точках4+ld4 допустима, равно lmах= 0.0343. При этом ограничение становится активным. Значение l4 получается минимизацией f(x4+ ld4) == 3,569l2— 2.340l —6.4681 при условии и равно l4= 0.0343. Следовательно, новой точкой является x5==x4+l4d4= (0.6302, 0.8740)T.Значение целевой функции в этой точке равно -6.5443, т. е. сравняю со значением —6.5590 в оптимальной точке (0.658872, 0.808226)T.
В табл. 2 приведены результаты вычислений на первых четырех итерациях метода. На рис. 7 показан процесс поиска оптимума.
Метод возможных направлений может быть модифицирован на случай, когда имеются нелинейные ограничения-равенства. Для иллюстрации обратимся к рис. 8, который отвечает единственному ограничению-равенству. Для заданной допустимой точки хk, в этом случае не существует ненулевого направления d, такого, что при для некоторого положительного d. Это затруднение можно преодолеть, если двигаться вдоль касательного направления dk, для которого , а затем скорректировать движение и возвратиться в допустимую область.
Рис. 8. Нелинейные ограничения-равенства. 1—касательное направление; 2 — корректирующее движение в допустимую область.
Чтобы быть более точным, рассмотрим следующую задачу:
минимизировать f(х)
при условиях gi(х)£0, i= 1,...,m,
Рис. 9. Использование почти активных ограничений. 1 — оптимальное решение; 2— линии уровня целевой функции; 3—1-е ограничение; 4— 2-е ограничение.
Использование почти активных ограничений
Напомним задачу определения направления как для случая линейных, так и нелинейных ограничений-неравенств. Если заданная точка близка к границе, определяемой одним из ограничений, и если это ограничение не используется в процессе нахождения направления движения, то может случиться так, что удастся сделать только маленький шаг и мы окажемся на границе, определяемой этим ограничением. На рис. 9 в точке х активным является только первое ограничение. Однако точка х близка к границе, определяемой вторым ограничением. Если множество I в задаче определения направления задать в виде I={1}, то оптимальным будет направление d и до выхода на границу допустимой области можно сделать только маленький шаг. Если же в множество активных ограничений включить оба ограничения, т. е. положить I={1, 2), то решение задачи Р