ГК и ВО России
НГТУ
Кафедра АСУ
Реферат на тему:
Метод Зойтендейка
Факультет: АВТ
Группа: АС-513
Студент: Ефименко Д.В.
Преподаватель: Ренин С.В.
1997
Содержание:
Геометрическаяинтерпретация возможного
направления спуска2
Я хочу описать Вам метод возможных направлений Зойтендейка. На каждой итерации метода строится возможное направление спуска и затем проводится оптимизация вдоль этого направления.
Следующее определение вводит понятие возможного направления спуска.
ОПРЕДЕЛЕНИЕ. Рассмотрим задачу минимизации f(х) при условии, что хÍS, где f: Еn-Е1, а S—непустое множество из Еn. Ненулевой вектор d называется возможным направлением в точке хÍS, если существует такое d>0, что х+lxÍS для всех lÍ(0,d). Вектор d называется возможным направлением спуска в точке xÍS, если существует такое d>0, что f(х+ld)<f(x) и х+ldÍS для всех lÍ(0, 6).
Случай линейных ограничений
Вначале рассмотрим случай, когда допустимая область S определена системой линейных ограничений, так что рассматриваемая задача имеет вид
минимизировать f(х)
при условиях Ах£b,
Ех=е.
Здесь А—матрица порядка m´ n,Е—матрица порядка l ´ n, b есть m-мерный вектор, а е есть l-мерный вектор. В следующей лемме приводятся соответствующие характеристики допустимойобласти и формулируются достаточные условия для существования возможного направления спуска. В частности, векторdявляется возможным направлением спуска, если A1d£0, Еd=0 и Ñf(х)Td<0.
ЛЕММА. Рассмотрим задачу минимизации f(х) при условиях Ах£b и Ех=е. Пусть х—допустимая точка, и предположим, что А1x=b1 и А2x<b2, где АT=(А1T, А2T), а bT=(b1T, b2T). Тогда ненулевой вектор и является возможным направлением в точке х в том и только в том случае, если A1d£0и Еd=0. Если, кроме того, Ñf(х)Td<0, то d является возможным направлением спуска.
Геометрическаяинтерпретация возможного направления спуска
Проиллюстрируем теперь геометрически на примере множество возможных направлений спуска.
ПРИМЕР
Минимизировать при условиях
(x1-6)2+(x2-2)2
-x1+2x2£4
3x1+2x2£12
-x1£0
-x2£0
Возьмем х=(2, 3)T и заметим, что первые два ограничении являются активными в этой точке. В частности, матрица А1 из леммы равна А1=[-13 22]. Следовательно, вектор dявляется возможным направлением тогда и только тогда, когда А1d£0, т.е. в том и только в том случае, если
3d1+2d2£0.
На рис. 1, где начало координат перенесено в точку х, изображена совокупность этих направлений, образующая конус возможных направлений. Заметим, что если сдвинуться на небольшое расстояние от точки х вдоль любого вектора d, удовлетворяющего двум приведенным выше неравенствам, то останемся в допустимой области.
Если вектор d удовлетворяет неравенству 0>Ñf(х)Td=-8d1+2d2, то он является направлением спуска. Таким образом, совокупность направлений спуска определяется открытым полупространством {(d1,d2}:-8d1+2d2<0}. Пересечение конуса возможных направлений с этим полупространством задает множество всех возможных направлений спуска.
Рис. 1. Возможные направления спуска,1—конус возможных направлений: 2 — конус возможных направлений спуска; 3 — линии уровня целевой функции; 4 — полупространство направлений спуска.
Построение возможных направлений спуска
Пусть задана допустимая точка х. Как показано в лемме , ненулевой вектор и является возможным направлением спуска. Естественный подход к построению такого направления заключается в минимизации Ñf(х)Td. Заметим, однако, что если существует вектор d, такой, что Ñf(х)Td <0, А1d£0, Еd= 0, то оптимальное значение целевой функции в сформулированной задаче равно —¥, так как ограничениям этой задачи удовлетворяет любой вектор ld, где l—сколь угодно большое число. Таким образом, в задачу должно быть включено условие, которое ограничивало бы вектор и или оптимальное значение целевой функции. Такое ограничение обычно называют нормирующим. Ниже приведены три задачи построения
Задачи Р1 и РЗ являются задачами линейного программирования и, следовательно, могут быть решены симплекс-методом. Задача Р2 содержит квадратичное ограничение, но может быть рассмотрена в несколько упрощенном виде. Так как d = 0 является допустимой точкой в каждой из приведенных выше задач и так как значение целевой функции в этой точке равно нулю, то ее оптимальное значение в задачах Р1, Р2 и РЗ не может быть положительным. Если минимальное значение целевой функции в задачах Р1, Р2 или РЗ отрицательно, то по лемме построено возможное направление спуска. С другой стороны, если минимальное значение целевой функции равно нулю, то, как показано ниже, х является точкой Куна —Таккера.
ЛЕММА. Рассмотрим задачу минимизации f(х) при условиях Ах£b и Ех=е. Пусть х — допустимая точка, для которой А1x=b и А2x<b2, где АT=(А1T, А2T), а bT=(b1T, b2T). Тогда х является точкой Куна—Таккера в том и только в том случае, если оптимальное значение целевой функции в задачах Р1, Р2 или РЗ равно нулю.
Доказательство. Вектор х является точкой Куна—Таккера тогда и только тогда, когда существуют векторы u³0 и v, такие, что. По следствию 2 из теоремы эта система разрешима в том и только в том случае, если система не имеет решений, т. е. тогда и только тогда, когда оптимальное значение в задачаxР1, Р2 или РЗ равно нулю.
Только что было показано, как строить возможное направление спуска или убедиться, что текущая точка удовлетворяет условиям Куна—Таккера. Пусть теперь хk —текущая точка, а dk-возможное направление спуска. В качестве следующей точки xk+1 берется, где длина шага К& определяется из решения следующей задачи одномерной минимизации:
Минимизировать
при условиях
Предположим теперь, что АT=(А1T, А2T), а bT=(b1T, b2T), такчто и .Тогда задачу одномерной минимизации можно упростить следующим образом. Во-первых, заметим, что Ехk=е и Еdk=0, так что ограничение излишне. Так как и для всех l³0. Таким образом, рассматриваемая задача приводится к следующей задаче линейного поиска;
(1)
Алгоритм метода Зойтендейка (случай линейных ограничений)
Ниже приведен алгоритм метода Зойтендейка для минимизации дифференцируемой функции f при условии, что .
Начальный этап. Найти начальную допустимую точку х1, для которой . Положить k= 1 и перейти к основному этапу.
Основной этап. Шаг 1. Пусть задан хk. Предположим, что АT=(А1T, А2T), а bT=(b1T, b2T),так что . Взять в качестве dk оптимальное решение следующей задачи(заметим, что вместо этой задачи можно использовать Р2 или РЗ):