- •А.В. Аттетков, С.В. Галкин, В.С. Зарубин
- •ПРЕДИСЛОВИЕ
- •Задания для самопроверки
- •ОСНОВНЫЕ ОБОЗНАЧЕНИЯ
- •Буквы латинского алфавита
- •Буквы греческого алфавита
- •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
- •Аттетков Александр Владимирович Галкин Сергей Владимирович Зарубин Владимир Степанович
- •МЕТОДЫ ОПТИМИЗАЦИИ
■ 4 Н е о б х о д и м о с т ь . Пусть х — точка открытого выпук лого множества П и h 6 R". Тогда при достаточно малом ео > О имеем х + eh € fi при |е| < ео и функция
ф{t) = (grad/(а; + th), h)
определена и дифференцируема на некотором отрезке [0, т], т > 0. К этой функции можно применить формулу конечных приращений:
ф ( т ) — ='ф '('дт)т, ч9€ (0,1).
Непосредственным вычислением с помощью правила дифферен цирования сложной функции получаем
df(x + th)
п п d2 f(x + th)
=ЕЕ hihj = (H(x)h, h), j —1 i=1
где h — (hi, ..., hn). Таким образом,
(grad/(x + TH) —grad/(x), h) = (H{x + &Th)Th, h), (3.31)
где e (0,1).
Если функция f(x) сильно выпукла, то для нее выполняется неравенство (3.28). Используя это неравенство для точек х 1 = = х + Th, х 2 = х, находим
(Н(х + i?r/i)/i, h) = —j (grad/ (JC+ т/i) -grad/(a;), rh) ^ ^|/i|2.
Переходя в этом неравенстве к пределу при т -> 0, получаем неравенство (3.30),
Д о с т а т о ч н о с т ь . Покажем, что если для произвольных х е П и h G Мп верно неравенство (3.30), то для произвольных
точек ж1, ж2 Е верно неравенство (3.28). Согласно теореме 3.16, это и будет означать, что функция /(ж ) сильно выпукла.
Выберем произвольные точки аз1, х 2 Е fi. Тогда, преобразуя равенство (3.31), которое выполняется для любой функции /(ж ), дважды дифференцируемой на отрезке [ж, х + т/г], можем записать
(g r a d /^ 1) - g r a d /^ 2), /г) = (#(ж 2 +tffr)/i, /г), |
(3.32) |
где в данном случае h = ж1 — ж2. Используя неравенство (3.30) при ж = ж2 + tf/i и h = ж1 —ж2, заключаем, что
(grad/(ж 1) - grad/(ж 2), ж1 - ж2) > /г|жх - ж|2,
т.е. выполняется неравенство (3.28). ►
Пример 3.14. Убедимся в том, что функция /(ж ) = |ж —у|2 является сильно выпуклой на множестве Мп (здесь у Е Кп — произвольная фиксированная точка).
Вычислим градиент функции /(ж) = (ж — у, ж —у):
grad/(ж ) = 2(ж — у).
Используя это выражение, можем записать
(g r a d /^ 1) — g r a d /^ 2), ж1 - ж2) =
= (2(жх — у) - 2(ж2 - у), ж1 — ж2) = 2 \х1 —ж2|.
Отсюда видно, что неравенство (3.28) будет выполнено, если выбрать параметр /г из интервала (0, 2).
К тому же выводу можно прийти, если вычислить матрицу Гессе функции и применить теорему 3.17.
Теорема 3.18. Пусть функция /(ж) сильно выпукла на выпуклом множестве Q С Ш71 Если ж* Е Г2 — точка локального минимума функции /(ж ), то для любого ж Е справедливо неравенство
ж —ж ^ 2 |
(3.33) |
7
где 7 — параметр сильной выпуклости. Если к тому же функ ция /(sc) непрерывно дифференцируема на Г2, то для любого sc € П выполнены неравенства
' 7 | ж - ж * | 2 ^ ( g r a d / ( x ) , s c - s c * ) ,
< 7 | ® ~ ® * | < |g r a d / (sc)|, |
(3.34) |
|
0 |
< / ( ж ) - / ( ж * ) ^ - | g r a d / ( x ) | 2. |
|
v |
7 |
|
◄ Отметим, что точка локального минимума выпуклой функ ции является точкой ее наименьшего значения (см. теорему 3.14). Поэтому для любой точки х € П выполняется неравен ство /(ж ) ^ /(sc*)- Из неравенства (3.27) при ж1 = х, ж2 = х* и а = 1/2 имеем
/ (sc/2 + х * /2) <
Отсюда, учитывая, что /(ж*) ^ /(ж /2 + ж*/2), приходим к неравенству (3.33).
Если функция f(x) дифференцируема на 9 и сильно вы пукла, то для ее точки х* локального минимума, согласно теореме 3.15, справедливо неравенство (grad/(x*), sc — х*) ^ 0. С учетом этого неравенства из соотношения (3.28), в котором, согласно доказательству теоремы 3.16, можно положить ц = 7 , при h = х —х* находим
7 |гс - ж *|2 < (grad/(sc) -grad/(sc*), х —х*) =
= (grad/(a:),a;-sc*) - (g ra d /(x *),x -x *) < (grad/(sc),sc-sc*),
что равносильно первому неравенству в (3.34). Применяя к его правой части неравенство Коши — Вуняковского, получаем
7 |ж-® * |2 < (g r a d /(x ),x -x * ) < |grad/(sc)| |ж — sc*|. (3.35)
Это приводит ко второму неравенству в (3.34). Наконец, используя неравенства (3.20) и (3.35), заключаем, что
f(x ) - /(а?*) < (grad/(®), х - х*) ^
< |grad/(®)| |® — ®*| < —|grad/ (®)|2 7
Записанные неравенства в сочетании с неравенством о < / ( * ) - —f(x*) дают третье неравенство в (3.34). ►
Теорема 3.19. Функция /(ж ), сильно выпуклая и непре рывная на замкнутом выпуклом множестве fi С К П, -достигает своего наименьшего значения на fi.
◄ Выберем произвольную точку х° Е fi и рассмотрим множе ство Хо = {жЕ fi: f{x) < /(ж 0)}. Если функция /(ж ) достигает на X Q наименьшего значения в некоторой точке ж*, то эта точка будет и точкой наименьшего значения функции на мно жестве О, так как для любой точки ж Е fi \ Хо в ы п о л н я ю т с я неравенства /(ж*) ^ /(ж 0) < /(ж). Чтобы доказать, что на X Q функция /(ж ) достигает наименьшего значения, достаточно (с учетом непрерывности функции) доказать, что множество X Q замкнуто и ограничено, т.е. компактно [V].
Множество X Q замкнуто в силу непрерывности функции /(ж ) на множестве fi. Действительно, пусть ж — предельная точка множества X Q. Поскольку Хо С fi, а О, — замкнутое множество, то ж Е fi и функция /(ж ) непрерывна в точке ж. Выберем последовательность {ж71} точек множества Хо, схо дящуюся к точке ж. В силу определения множества Хо верно неравенство / ( жп) ^ / (ж0). Переходя в этом неравенстве к пре делу при п -> оо, получаем
/(®) = iim / ( * п) < /(*°),
71—>00
что равносильно соотношению ж Е X Q.
Множество Хо является выпуклым. В самом деле, выберем произвольные точки х 1, х 2 € Хо. Тогда для любого а € [0,1] точка ах 1 + (1 —а)х2 принадлежит ft и
/( а х 1 |
+ (1 - а )х 2) < а /( х х) + (1 - а )/(х 2) |
^ |
|
|
||
|
|
< а /( х°) + (1 - |
a)f(x°) = /(as0), |
|||
т.е. ах 1 |
+ (1 —а)х2 G Хо- |
|
|
|
|
|
Докажем, что множество Хо ограничено. |
Используя |
не |
||||
равенство (3.27) для точки х° и произвольной точки х 1 |
из |
|||||
выпуклого множества Хо, заключаем, что |
|
|
|
|||
а(1 — а)7 |®1 — х ° \ 2 < |
|
|
|
|
|
|
|
< а /( х х) + (1 - |
a)f(x°) - |
/( а х 1 + (1 - |
а)х°) < |
|
|
|
< а /(х °) + (1 - |
а )/(х °) - |
/( а х 1 + (1 - |
а)х°) = |
|
= / ( х ° ) - / ( а х 1 + (1 -а )х ° ). (3.36)
Так как функция /(х ) непрерывна, то можно указать такую окрестность точки х°, что в пересечении этой окрестности с ft функция будет ограниченной. Следовательно, для некоторого числа S > 0 и некоторого М б К выполняется неравенство /(х ) ^ М при |х— х°| < 6, х € ft. Предполагая, что 6 < lx1 —х°|,
выберем а = . ^— ^т. Тогда для точки х = а х 1 + (1 — а)х°
ZI2/1 X I
имеем |х — х°| = а|х: —х°| < 6 и /(х ) ^ М. Из неравенств (3.36) получаем
а(1 —а)7 |хг — х°|2 < /(х °) — М.
Так как при <5< |х1 —х° |выполняются соотношения
а(1 - а)7 |хг - х°|2 ^ 2^ д0|•^ •7 |х - х°|2 = у |х - х°|,
заключаем, что
|x-x°| ^max |<5, |
М^|. |