- •А.В. Аттетков, С.В. Галкин, В.С. Зарубин
- •ПРЕДИСЛОВИЕ
- •Задания для самопроверки
- •ОСНОВНЫЕ ОБОЗНАЧЕНИЯ
- •Буквы латинского алфавита
- •Буквы греческого алфавита
- •1. ЗАДАЧИ ОПТИМИЗАЦИИ
- •1.1. Основные понятия
- •1.2. Некоторые простые примеры
- •1.3. Задачи оптимального проектирования
- •1.4. Задачи оптимального планирования
- •1.5. Классы задач оптимизации
- •Вопросы и задачи
- •2. МЕТОДЫ ОДНОМЕРНОЙ МИНИМИЗАЦИИ
- •2.1. Предварительные замечания
- •2.3. Оптимальный пассивный поиск
- •2.4. Методы последовательного поиска
- •2.5. Сравнение методов последовательного поиска
- •2.6. Методы полиномиальной аппроксимации
- •2.7. Методы с использованием производных
- •Вопросы и задачи
- •3. МИНИМИЗАЦИЯ ВЫПУКЛЫХ ФУНКЦИЙ
- •3.2. Выпуклые функции
- •3.4. Условия минимума выпуклых функций
- •3.5. Сильно выпуклые функции
- •ф{t) = (grad/(а; + th), h)
- •3.6. Примеры минимизации квадратичных функций
- •3.7. Минимизация позиномов
- •Qj = '%2aijci = Q> J = !.*»•
- •Вопросы и задачи
- •4. ЧИСЛЕННЫЕ МЕТОДЫ БЕЗУСЛОВНОЙ МИНИМИЗАЦИИ
- •4.1. Релаксационная последовательность
- •4.2. Методы спуска
- •4.4. Минимизация квадратичной функции
- •4.5. Сопряженные направления спуска
- •5. АЛГОРИТМЫ МЕТОДОВ ПЕРВОГО И ВТОРОГО ПОРЯДКОВ
- •|iufc|
- •5.3. Метод Ньютона
- •5.4. Модификации метода Ньютона
- •5.5. Квазиньютоновские методы
- •Вопросы и задачи
- •6. АЛГОРИТМЫ ПРЯМОГО ПОИСКА
- •6.1. Особенности прямого поиска минимума
- •6.2. Использование регулярного симплекса
- •6.4. Циклический покоординатный спуск
- •6.5. Метод Хука — Дживса
- •Щ + bjej,
- •6.6. Методы Розенброка и Пауэлла
- •Вопросы и задачи
- •7. АНАЛИТИЧЕСКИЕ МЕТОДЫ НЕЛИНЕЙНОГО ПРОГРАММИРОВАНИЯ
- •7.2. Минимизация при ограничениях типа равенства
- •7.4. Седловая точка функции Лагранжа
- •7.5. Двойственная функция
- •7.6. Геометрическое программирование
- •Вопросы и задачи
- •8. ЧИСЛЕННЫЕ МЕТОДЫ НЕЛИНЕЙНОГО ПРОГРАММИРОВАНИЯ
- •8.1. Метод условного градиента
- •8.2. Использование приведенного градиента
- •8.5. Метод проекции антиградиента
- •СПИСОК РЕКОМЕНДУЕМОЙ ЛИТЕРАТУРЫ
- •ПРЕДМЕТНЫЙ УКАЗАТЕЛЬ
- •ОГЛАВЛЕНИЕ
- •Математика в техническом университете Выпуск XIV
- •Аттетков Александр Владимирович Галкин Сергей Владимирович Зарубин Владимир Степанович
- •МЕТОДЫ ОПТИМИЗАЦИИ
проще исходной. Действительно, поиск седловой точки функ ции Лагранжа в соответствии с (7.15) означает минимизацию функции Лагранжа по переменным х.
7.5. Двойственная функция
Рассмотрим задачу нелинейного программирования (7.12), не имеющую ограничений типа равенства, предполагая, что целевая функция /о(ж), а также функции рДж), i = 1 , га, опре
делены в К71. |
Как и выше |
(см. |
7.4), |
сформируем функцию |
|
Лагранжа L(cc,/z) в виде (7.13), |
определенную при |
х Е Шп и |
|||
ц Е R™, где |
— неотрицательный ортант в Rm. |
|
|||
На множестве Ш™ определим функцию |
|
||||
|
u>(/x) = |
inf L(x,/x). |
(7.18) |
||
Функции /о (ж) и ш(/х) связаны соотношением |
|
||||
|
го(/х) < / 0(аг), |
/X GR™, |
ж G ft. |
(7.19) |
Действительно, функция Лагранжа удовлетворяет неравенству ^ /о(ж), ж G ft, /х 6 R™. Из этого неравенства вытекает,
что
= inf Ь{х,ц) < inf / 0(ж) < /о(®)-
Теорема 7.9. Бели для некоторых ж* G ft и /х* € R™ верно равенство /о(ж*) = то функция /о(ж) в точке ж* достигает наименьшего значения на множестве ft, а функция го(/х) в точке ц* — наибольшего значения на множестве R™.
◄Из неравенства (7.19) для ж = х* с учетом равенства /о(ж*) = = w(n*) заключаем, что
ш(/д)< ш(/4*), /X GR™
Это и означает, что значение функции и>(ц) в точке /х* является наибольшим на множестве R™.
Аналогично, полагая в неравенстве (7.19) /х = /х* и учиты
вая, что |
= /о(ж*), находим |
|
/о(®) ^ /о(® )? ж Е fi, |
т.е. в точке ж* функция /(ж) достигает наименьшего значе ния. ►
Любая точка локального максимума функции W(/JL) на мно
жестве |
является точкой ее наибольшего значения на этом |
||
множестве. |
Чтобы |
доказать это |
свойство функции ги(/х), до |
статочно показать, |
что функция |
выпукла на выпуклом |
множестве К™. Выберем произвольные несовпадающие точ ки /х1, /х2 в Ш™ и произвольное число Е [0,1]. Пусть \х — = а/х1 + (1 —а)/х2. В соответствии с определением функции w(fi) для произвольного числа е > 0 существует такая точка ж Е fi, что ги(/х) ^ 1/(ж,/х) — £. Из определения функции Лагран жа (она линейна по множителям Лагранжа) следует равенство
£(ж,/х) = Ь(х,ац1 + (1 — а)/х2) = аЬ(ж,/х1) + (1 — a)L( ж,/х2).
Сучетом этого равенства имеем
^aL(x,iil) + (1 - a)L(£,/x2) — е ^
^сп^/х1) + (1 - а)ги(/х2) — г.
Ввиду того, что число £ > 0 выбрано произвольно, заключаем, что
ги(/х) ^ аЦ /х1) + (1 - a)w(ii2),
а это равносильно выпуклости функции —ги(/х).
Теорема 7.10. Функция Лагранжа (7.13) имеет седловую точку (ж*, /х*) тогда и только тогда, когда
™(м*) = /о(я *). |
(7.20) |
◄ Пусть (ж*, /х*) — седловая точка функции Лагранжа. То гда, согласно определению седловой точки, L(ж*,/х*) ^ Ь(ж,/х*),
®бП , т.е. при заданном ц = ц* функция Лагранжа достигает на множестве О, наименьшего значения в точке ж*. Поэтому w(n*) = Далее, снова используя определение седло вой точки, заключаем, что Ь(х*,ц*) > L(x*,0) = /о (ж*), откуда /о(ж*) ^ Сопоставляя последнее неравенство с неравен ством (7.19), получаем равенство /о(®*) =
Пусть для х* £ Q и ц* G R™ верно равенство (7.20). Тогда, согласно теореме 7.9, точка ж* является точкой наименьшего значения функции /о (ж) на П, а точка ц* — точкой наиболь шего значения функции w{y) на R™. При этом
w(fj.*) = inf £,(*,/**) ^ L(ж*,р*) < /о(х*) = «>(***).
Следовательно,
L(x*,p*)= inf L(x,p*). хеп
Кроме того, L(x*,/х*) = /о(ж*), откуда, используя равенство (7.13), определяющее функцию Лагранжа, заключаем, что
тп
5 3 м?й (®*)=°»
г=1
где /х* = (/х*, ..., /х^). Так как все слагаемые в этом равенстве слева неотрицательны, то они все равны нулю, т.е. выполняется условие (7.16). Согласно теореме 7.8, точка (ж, /х) является седловой точкой функции Лагранжа. ►
Функцию определенную на соотношением (7.18), называют двойственной функцией по отношению к целе вой функции fo{x). Задачу поиска точки /х* Е К?1 наибольшего значения этой функции называют двойственной задачей по отношению к задаче минимизации функции /о (ж) на множестве £1, а теорему 7.10 — теоремой двойственности. Уста новленные свойства функции w(p) дают возможность вместо задачи поиска точки наименьшего значения целевой функции
решать двойственную задачу, которая может быть проще ис ходной. Найденное решение двойственной задачи далее можно использовать в качестве набора множителей Лагранжа и затем решать задачу минимизации функции Лагранжа.
Пример 7.3. В задаче
{х\ + х\ —> min;
2х\ + Х2 + 4 ^ О
найдем функцию ги(^х), двойственную по отношению к целевой функции /о(ж) = х\ + х\.
В данном случае допустимое множество f2 представляет со бой полуплоскость 2х\ + Х2 + 4 ^ 0. Чтобы найти двойственную функцию, нужно определить наименьшее значение функции Ла гранжа
L(X I,X2,/X) = х\ + х\ + fi(2xi + х2 + 4)
при ограничении 2х\ + Х2 + 4 ^ 0. Такую задачу можно решить, используя теорему Куна — Таккера: для функции L(xi,X2,/i), считая fi фиксированным, построить функцию Лагранжа (т.е. функцию Лагранжа для функции Лагранжа), для чего необхо димо ввести параметры Ао и Д; затем на основании теоремы Куна — Таккера записать систему четырех уравнений относи тельно неизвестных жъ д?2, Ао и Д и решить ее; среди найден ных точек путем сравнения выбрать ту, в которой функция L(X I ,X2,^) принимает наименьшее значение. Учитывая, что функция L{x 1,^2,/i) при фиксированном /i является квадратич ной с положительно определенной матрицей, а значит, сильно выпуклой функцией (см. пример 3.13), можно утверждать, что она достигает на полуплоскости 2х\ + Х2 + 4 ^ 0 (это выпуклое множество) наименьшего значения (см. теорему 3.19). Следова тельно, выбранная точка будет точкой наименьшего значения функции L(xi,X2,/i). Значение функции L(xI ,X2,A0 в выбран ной точке, зависящее от /i, и есть значение функции iu(/x) при фиксированном ц.
Мы, однако, отступим от этой стандартной последователь ности действий и учтем специфику рассматриваемой задачи. В выражении для функции Лагранжа L(X I,X2 ,H) выделим пол ные квадраты по переменным х\ и Х2 и запишем эту функцию следующим образом:
L{x\,х2 ,ц) = (х !+ ц )2 + (х2 + ц /2)2 + 4 ц - - ц 2.
Из этого представления вытекает, что значением функции Лагранжа является квадрат расстояния от точки (—ц, —ц/2) до точки (xi, Х2 ) плюс величина 4ц —^ц2, не зависящая от точки (xi, хг). Следовательно, наименьшее значение функции Лагранжа (т.е. значение двойственной функции ад(ц)) равно квадрату расстояния от точки (—ц, —ц /2) до полуплоскости ft плюс 4ц — ^ц2. Если точка (—ц, —ц/2) попадает в ft, то расстояние от нее до ft равно нулю. Если же (—ц, —ц/2) ^ ft, то это расстояние есть расстояние от точки (—ц, —ц /2) до границы множества ft — прямой 2xi + Х2 + 4 = 0. Условие (—ц, —ц /2) € ft означает, что
2( - M ) + ( - f ) + 4 ^ ° .
или ц > 8/5. Расстояние р(ц) от точки (—ц, —ц /2) до прямой 2xi + Х2 + 4 = 0 равно [III]
р М = ! - 2 д ^ 2 ± 4|
Следовательно, |
|
|
|
|
(4 - |
5ц/2)2 |
16 |
||
р2М = |
|
= Т - 4 / . + ^ . |
||
В результате получаем |
|
|
|
|
|
16 |
0 < /i < jl |
||
ш(ц) = < |
5 |
’ |
||
v 8 |
||||
я |
6 2 |
|||
|
4 ц --ц ^ , |
ц ^ - . |