- •А.В. Аттетков, С.В. Галкин, В.С. Зарубин
- •ПРЕДИСЛОВИЕ
- •Задания для самопроверки
- •ОСНОВНЫЕ ОБОЗНАЧЕНИЯ
- •Буквы латинского алфавита
- •Буквы греческого алфавита
- •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
- •Аттетков Александр Владимирович Галкин Сергей Владимирович Зарубин Владимир Степанович
- •МЕТОДЫ ОПТИМИЗАЦИИ
Преобразование функции проведено за два шага: сначала переход к переменным yi, у2, а, затем — к переменным z1, Z2 . Формулы связи исходных переменных х\, х2 с конечными переменными z\ и Z2 имеют вид
XI = z\ - 2 Z 2 7 f ~
|
2zi + Z2 |
|
|
Х2 = |
-2 ^ 5 . |
|
~7b~ |
|
|
Началом конечной |
системы коор |
|
динат является точка 0 \, которая в |
|
|
исходной системе координат имеет |
|
|
координаты х\ = —л/5, я2 = —2-\/5- |
|
Рис. 3.3 |
Все три системы координат пока |
|
заны на рис. 3.3. |
|
|
|
|
Линиями уровня функции f{x\,x2) являются подобные ЭЛЛИ ПСЫ (см. рис. 3.3). Найдем, например, уравнение линии уровня, проходящей через точку х° = (—2, 1). Подстановка координат этой точки в (3.40) дает значение функции f(x°) = 57. Следова тельно, эта точка расположена на линии уровня f ( x и х2) = 57. Переходя к конечной системе координат 0\ъ\ъ2 , получаем урав
нение f{zi,z2) = 2z\ + 7z\ — 28 |
= 57, или |
|
~2 |
+ |
~2 |
zi |
z2 _ 1. |
|
85/2 |
|
85/7 |
Таким образом, искомая линия уровня — эллипс с полуосями а = ч/85/2 « 6,52 и b = ^/85/7 « 3,48. Найденная линия уровня показана на рис. 3.3 жирной линией.
3.7.Минимизация позиномов
Вприкладных задачах минимизации целевая функция часто
имеет вид
|
т |
У(х ) = |
(3 42) |
|
i=1 |
С{ > 0, i = 1 , г а , а функции
п |
(3.43) |
Pi{x) = \ \ x f , |
j=1
dij Е R, г = 1, га, j = 1, n, определены на множестве
R+ = {(а?1 , ... X n) e Rn: Xi > 0, г = I7n}
точек с положительными координатами. Функцию вида (3.42) называют позиномом.
Позином при определенных значениях показателей степени dij может не быть выпуклой функцией. Однако с помощью замены переменных
Xj = e^, j = 1, гг, |
(3.44) |
он преобразуется в выпуклую функцию в К". Это показано в примере 3.9. Там же показано, что эта функция является стро го выпуклой функцией в том случае, когда матрица А = ( )
имеет ранг, равный п.
Поскольку функция y(£i,...,£n) выпукла в Кп, любая точка ее локального минимума является точкой наименьшего зна чения функции (см. теорему 3.14). Более того, так как эта функция дифференцируема в Кп, множество ее точек наимень шего значения совпадает с множеством стационарных точек (см. замечание 3.3). В случае строгой выпуклости функция имеет не более одной точки локального минимума. Поскольку якобиан замены переменных (3.44) при любых значениях £i, ..., £п отличен от нуля, любой стационарной точке (£*, ..., £*) функции у(£1,...,£п) соответствует стационарная точка х* = = (я*, х*), Xj=e^i, i = 1, п, и наоборот. Таким образом, минимизация позинома сводится к поиску его стационарных точек, причем для определения наименьшего значения поэинома достаточно найти хотя бы одну стационарную точку.
Для строго выпуклой функции ехр(£) = егверно неравенство
Иенсена |
771 |
|
771 |
|
|
||
e x p (^ io ifi) |
< |
ехр(^), |
|
|
г=1 |
|
г=1 |
________ |
771 |
|
|
где Wi ^ 0, г = 1, га, и |
и;* = 1. Преобразуем левую часть этого |
||
равенства: |
i=i |
|
|
|
|
|
|
771 |
771 |
|
771 |
exp^JT'Wit?) = Д |
exp(u;ili) = |
||
г=1 |
г=1 |
|
г=1 |
Выполнив замену переменных е1' = щ, г = 1, га, получим нера венство взвешенных средних
|
771 |
771 |
|
|
(3.45) |
|
г=1 |
г=1 |
________ |
771 |
гиг- = 1. Неотрицательные коэффи- |
где щ, ь){ > 0, г = 1, га, и |
г=1
циенты в этом неравенстве, в сумме составляющие единицу, называют нормированными весами.
Выполнив в неравенстве (3.45) замену у* = W{Ui, г = l,m , получим
Пусть yi —СгрДж), г = 1, т , т.е. сумма в левой части послед него неравенства есть позином у(х) вида (3.42). Тогда
|
у{х) ^и(ж,ги), |
(3.46) |
где w = (г У 1, г^ 2, . . . , |
гит ) , а правая часть г > ( ж , г о ) неравенства с |
|
учетом вида функций рДж) равна |
|
|
771 |
71 |
|
•(•.-i=lj=l->1 --•пп(1 г £Г*г‘ |
|
Здесь
m
bj = Y l a 4 W i' J = t=l
Подберем нормированные веса W{ таким образом, чтобы функция v(x,w) не зависела от х. Для этого необходимо и до статочно, чтобы выполнялись равенства bj = 0. Другими сло вами, нормированные веса должны удовлетворять системе ли нейных уравнений
771 |
|
aijWi = 0, j ~ I7n. |
(3.47) |
i=i |
|
Такой выбор нормированных весов не всегда возможен. |
Для |
существования нормированных весов, удовлетворяющих систе ме линейных уравнений (3.47), необходимо, чтобы эта система имела ненулевые решения. Однако даже если система (3.47) и имеет ненулевые решения, то среди них может не оказаться решений с положительными (или хотя бы неотрицательными) значениями неизвестных wf. так будет, например, в случае, ко
гда все коэффициенты |
являются положительными. |
|
Если нормированные |
веса |
выбраны в соответствии с |
равенствами (3.47), то |
|
|
и неравенство (3.46) преобразуется к виду
771 71 771
у ( * ) = |
S |
CiI I a:i 0 |
' = d(w)- |
(3-48) |
|
|
г=1 |
j —l |
г=1 * |
|
|
Функцию d(w) называют двойственной к позиному |
|||||
у(х), а равенства |
(3.47) — |
условиями |
ортогональности |
(вектор с координатами ш*, г = 1, т , ортогонален каждому из п столбцов матрицы (aij) размера ш х п ).
В Rm рассмотрим множество
|
|
771 |
W = j(u>i, |
wm) 6 Km: Wi > 0, г = 1 ,m, |
= l|. (3.49) |
|
|
i —1 |
Нетрудно показать, что это множество представляет собой выпуклую оболочку элементов wiei G R771, г = 1, га, где ei, ет — стандартный базис в Шт. Другими словами, W —
m-мерный выпуклый многогранник. Для двойственной функции d(w) верна следующая теорема.
Теорема 3.20. Двойственная функция d(w) на множе стве W достигает наибольшего значения d* = ci + С2 + •••+ Cm в точке w* = (ci/d*, C2/d*, ..., cm/d*) G V7, и эта точка един ственная.
◄ Несложно, вычислив вторую производную, убедиться в том, что каждая из функций (pi(w{) = —Wiln(ci/wi) является строго выпуклой при > 0. Значит, и функция
|
771 |
— Ind(w) = — |
In— , |
|
г=1 |
как сумма строго выпуклых функций, является строго выпук лой (см. теорему 3.8). Если эта функция достигает на W наи меньшего значения, то точка, в которой достигается наимень шее значение, согласно теореме 3.14, единственная. Значит, функция d(w) может достигать наибольшего значения только в одной точке.
Согласно неравенству взвешенных средних,
771 771 771
»=1 1 i=i 1 i=1
причем это неравенство превращается в равенство в точке w* с координатами wf = Ci/d*, i = 1, т. Следовательно, d(w) < < d(w*), w e W , и в точке w* функция d(w) достигает наи большего значения. ►
Пусть W* — множество точек w = (wi, ..., wm) в вы пуклом многограннике W , которые удовлетворяют условию (3.47). Множество W* может быть и пустым, т.е. W* = 0. Но если W* Ф 0, то позином у(х) имеет двойственную функ цию d(w), причем для любых w Е W* и х Е К+ выполняется неравенство d(w) < у(х). Следовательно, позином у(х) ограни чен снизу положительным числом, в качестве которого можно взять значение d(w) в любой точке w £ W* Можно показать, что в этом случае позином достигает наименьшего значения. При этом число d(w) можно рассматривать как оценку сни зу наименьшего значения позинома. Отметим, что в некото рых случаях множество W* может состоять из единственной точки.
Позином может не достигать наименьшего значения, хотя он и ограничен снизу нулем (например, функция 1/х\). Как показывает предыдущее рассуждение, это возможно лишь в случае, когда множество W* пусто.
Пример 3.19. Выясним, достигает ли наименьшего значе ния позином
4
у(х) = ---------- \-Х\Х2 + 2X2^3 +4ziX3, X = (х\, Х2, Тз).
Х\Х2ХЗ
Если позином достигает наименьшего значения, то оценим его. Запишем для этого позинома систему, включающую условие
771
нормировки ^2 Wi = 1 и условия ортогональности (3.47): i=i
'w\ +г«2 + ггз + Ш4 = 1 ,
— uii + гтг + 104 = О,
<
- uii + гог + гтз = О,
k— w\ + и>з + Ш4 = 0.
Решая эту систему линейных алгебраических уравнений, на ходим ее единственное решение w\ = 2/5, W2 = W3 — = 1/5.