
- •А.В. Аттетков, С.В. Галкин, В.С. Зарубин
- •ПРЕДИСЛОВИЕ
- •Задания для самопроверки
- •ОСНОВНЫЕ ОБОЗНАЧЕНИЯ
- •Буквы латинского алфавита
- •Буквы греческого алфавита
- •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
- •Аттетков Александр Владимирович Галкин Сергей Владимирович Зарубин Владимир Степанович
- •МЕТОДЫ ОПТИМИЗАЦИИ
значений функции (или количества шагов поиска). Этот пара метр необходим для реализации первого шага алгоритма при выборе точек хц и х \2 деления отрезка [aj, 61]. Если пара метр N по каким-либо причинам не может быть задан заранее, следует использовать другие методы, например дихотомии или золотого сечения.
2.5. Сравнение методов последовательного поиска
В качестве оценки скорости сходимости методов прямого поиска можно использовать скорость убывания длины интер вала неопределенности в зависимости от числа п вычисленных значений минимизируемой функции в различных методах. Для метода дихотомии, пренебрегая в (2.8) малой величиной 6, на ходим
,d |
1 — ‘ЛЛ |
ftf |
1 |
|
1 - 2 5 |
(2.16) |
|||
l i = |
-тт-вг- + 2<5! |
2п/2 ’ |
||
|
2п/2 |
|
|
а для метода золотого сечения и метода Фибоначчи, согласно (2.10) и (2.14), получаем
IПZ |
1 |
—^ |
+ 26 ^ - |
1 |
7*n—1 ’ |
(2.17) |
|||
|
|
Fn+i |
Fn + 1 |
Fn+i |
соответственно, где т « 1,618034 — отношение золотого сече ния, Fm, т € N, — числа Фибоначчи.
Используя формулу Вине*
( - r ) - ( n+1)
Fn =
ч/б
сравним два последних метода при п —>•оо:
lz |
lim |
lim -4 = |
|
п —>00 1J |
П—>00 |
1п |
|
F n + i
71— 1
lim |
Тп+1 _ ( _ т)-(п+1) |
^7= »1,17082. |
|
ТП~1\/5 |
|||
П-»00 |
ч/б |
*См.: Воробьев Н .Н .
Таким образом, скорость сходимости метода Фибоначчи при больших значениях п всего примерно на 17% выше, чем ско рость сходимости метода золотого сечения.
Сравнивая при больших значениях п методы золотого сече ния и дихотомии, получаем
|
|
2n/2 |
lim ( V2 |
lim ■£■= |
lim |
П—1 = т |
|
n-ю о l* |
77.—УООТ |
п->оо \ |
Таким образом, метод золотого сечения качественно „лучше" метода дихотомии. Но из (2.5) и (2.16) следует
,. |
= |
1/2"'2 |
,. |
п + 1 |
п |
lim J Z |
lim тг-77------- гг = |
lim |
^ ,. |
= О, |
|
п—>оо /* |
|
п—Ю о2/(п+1) |
п—foo |
|
|
т.е. скорость сходимости метода дихотомии при больших зна чениях п выше, чем скорость сходимости метода оптимального пассивного поиска.
Итак, метод золотого сечения уступает по скорости схо димости лучшему методу — методу Фибоначчи — примерно в 1,17 раза, но является более гибким, поскольку не требует выбора заранее определенного числа точек, в которых предсто ит вычислить значения минимизируемой функции. В табл. 2.2 приведены значения длины интервалов неопределенности для рассмотренных методов в зависимости от числа N вычислен ных значений функции.
Пример 2.3. Используя методы дихотомии, золотого сече ния и Фибоначчи, при заданном значении £* = 0,1 наибольшей допустимой длины интервала неопределенности найдем интер вал, в котором расположена точка х* минимума унимодальной на отрезке [0,1] функции /(х ) = 100(х —0,24)2. График этой функции показан на рис. 2.10.
Для данной функции f ,r{x) = 200 = const. Поэтому в соот ветствии с формулой (2.20) (см. 2.7) при вычислении значе ний функции с точностью Д / = Ю"5 имеем нижнюю оценку
|
|
|
|
Таблица 2.2 |
N |
|
|
1% |
'it |
~Г |
1,0 |
1,0 |
1,0 |
1,0 |
2 |
0,667 |
0,500 |
0,618 |
0,500 |
3 |
0,500 |
— |
0,382 |
0,333 |
4 |
0,400 |
0,250 |
0,236 |
0,200 |
5 |
0,333 |
— |
0,146 |
0,125 |
6 |
0,286 |
0,125 |
0,090 |
0,077 |
7 |
0,250 |
— |
0,056 |
0,048 |
8 |
0,222 |
0,0625 |
0,0345 |
0,0294 |
9 |
0,200 |
— |
0,0213 |
0,0182 |
10 |
0,182 |
0,0312 |
0,0132 |
0,0112 |
11 |
0,167 |
— |
0,00813 |
0,00694 |
12 |
0,154 |
0,0156 |
0,00502 |
0,00429 |
13 |
0,143 |
— |
0,00311 |
0,00265 |
14 |
0,133 |
0,00781 |
0,00192 |
0,00164 |
15 |
0,125 |
— |
0,00119 |
0,00101 |
16 |
0,118 |
0.00391 |
0,000733 |
0,000626 |
17 |
0,111 |
— |
0,000453 |
0,000387 |
18 |
0,105 |
0,00195 |
0,000280 |
0,000239 |
19 |
0,100 |
— |
0,000173 |
0,000148 |
20 |
0,095 |
0,000976 |
0,000107 |
0,0000913 |
Рис. 2.10
Д* = 2y/Af/f"(x*) w 0,447 10"“3 для абсолютной погрешности нахождения точки х* минимума этой функции любым методом прямого поиска. Поэтому границы интервалов неопределенно сти достаточно вычислять с тремя знаками после запятой, а
вметоде дихотомии из условия (2.7) можно выбрать 2S= 10“ 3 Такое же значение Sпримем и на последнем шаге метода Фибо наччи, причем в нем для выполнения условия 1^ ^ е* достаточно
всоответствии с табл. 2.2 взять N = 6, т.е. ограничиться чи слами Фибоначчи до -FV+1 = F7 = 13 включительно.
Применение метода дихотомии потребовало вычисления зна чений минимизируемой функции в восьми точках (табл. 2.3), что согласуется с табл. 2.2, а в методе золотого сечения (табл. 2.4) оказалось достаточным вычислить шесть значений этой функции, т.е. столько же, сколько и в-методе Фибоначчи (табл. 2.5), что также согласуется с табл. 2.2. Отметим, что
Таблица 2.3
к |
Интервал |
zjfci |
/(*fcl) |
Xk2 |
/(® м ) |
|
|
неопределенности |
|
|
|
|
|
1 |
(0,000, |
1,000) |
0,499 |
6,7081 |
0,501 |
6,8121 |
2 |
(0,000, |
0,501) |
0,250 |
0,0090 |
0,252 |
0,0132 |
3 |
(0,000, |
0,252) |
0,125 |
1,3283 |
0,127 |
1,2826 |
4 |
(0,125, |
0,252) |
0,187 |
0,2796 |
0,189 |
0,2588 |
5 |
(0,187, |
0,252) |
|
|
|
|
|
|
|
|
|
Таблица 2.4 |
|
к |
Интервал |
Хк1 |
Д я а ) |
®fc2 |
f(Xk2 ) |
|
|
неопределенности |
|
|
|
|
|
1 |
(0,000, |
1,000) |
0,382 |
2,0154 |
0,618 |
14,2910 |
2 |
(0,000, |
0,618) |
0,236 |
0,0015 |
0,382 |
2,0154 |
3 |
(0,000, |
0,382) |
0,146 |
0,8855 |
0,236 |
0,0015 |
4 |
(0,146, |
0,382) |
0,236 |
0,0015 |
0,292 |
0,2683 |
5 |
(0,146, |
0,292) |
0,202 |
0,1473 |
0,236 |
0,0015 |
6 |
(0,202, |
0,292) |
|
|
|
|