Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Теория и методы оптимизации. Учебное пособие
.pdf
Пример 2. Решить задачу из Примера 1 со следующими условиями:
x
x
x
x
x
x
x
x
B
z
NM mFyz
3, 63, 1, ( , ) .
y
k
3
ˆˆ
Zxu
(,) max.
kk k
xx u k
k
xk
k
uk
03
xx
1
[1, 64], 1, 2 .
[0,63], 1,2,3.
1, 64 .
u
k
1
k
x
1
,1,2,3.
Этап I. Условная оптимизация.
Найдем уравнения Беллмана по формуле (4.19).
3
Bx
Шаг 1.
() max
3
Диапазон u
2
ux
[0;64 ]
3
1
найден из следующих соображений:
u
.
2
2
так как
323
xu
,
то
332
Учитывая, что
3
Функция
u
2
uxx
2
[1, 64]x , получаем диапазон изменения u
32
при всех значениях
.
[0;64 ]ux.
2
является возрастающей аргу-
3
:
мента
3
u , поэтому ее максимум
32 2
()64 ,
ux x
*
*2
() .
Bx
3
Шаг 2. С учетом формулы (4.20)
1
() max( )
Bx
2
21
[0;64 ]
ux
Находим стационарную точку из условия
2*1
() 8 , () 2( 1).ux x x Bx
*1 1 1 2
2
64
64
12 1
212
xxu
2
12 2
uu
ux
111
()
2
u
8
.
1
x
:
2
x
1

Шаг 3.
0
() max(2 1 ).
Bx
*0 0 0 1 0 0
1
1*
()4() , ()12() 3.ux x x Bx x
ux
1
0
[0;64 ]
21
33
8
xu
01
Этап II. Безусловная оптимизация.
Шаг 0.
Шаг 1.
Шаг 2.
Шаг 3.
00
11.xx
*
11 101
(1) 3, 4.uu xxu
** ***
22 212
** ***
33 323
** ***
{3, 12, 48},
u
{1, 4 , 1 6 , 6 4 } ,
x
*
()9,
Bx
10
*
() 7,
Bx
21
*
()3.
Bx
32
(4) 12, 16.uu xxu
(16) 48, 64.uu xxu
u
1
x
0
112

5.НЕЛИНЕЙНОЕПРОГРАММИРОВАНИЕ
f
x
j
x
x
x
В наиболее общем виде задача нелинейного программирования
(НЛП) имеет вид
() min,
fx
где
(), (), ()
xgxhx
ik
– заданные, в общем случае нелинейные функции
векторной переменной
Ограничения, накладываемые на координаты
() , 1, ,
gx bi m
hx k l
(, ,..., )
ii
() 0, 1, ,
k
xx x .
12
n
(5.1)
, могут быть равен-
ствами и неравенствами (I и II рода).
В ряде задач НЛП должно выполняться условие 0
x . Это усло-
j
вие можно записать в виде
( ) , 0, 1, 2...
gx x b j m m
ijj
Известно, что в задачах безусловной оптимизации необходимым
условием существования экстремума является наличие стационарной
точки. В задачах с ограничениями это условие может нарушаться.
Следующий пример иллюстрирует нарушение необходимых условий.
Пример
() ( 2) min,
fx x
2
4.
Найдем стационарную точку
() 0,
fx
2( 2) 0,
x
x
стац
2.
Полученная стационарная точка не удовлетворяет ограничению
Поэтому точка
4.
*
4x является оптимальным решением задачи
НЛП, хотя не является стационарной.
Приведенный тривиальный пример демонстрирует особенности
решения задач НЛП.
В течение последних двух десятилетий из нелинейного программирования выделились самостоятельные разделы:
выпуклое программирование;
квадратичное программирование;
113

целочисленное программирование;
x
стохастическое программирование;
динамическое программирование и др.
Задачи выпуклого программирования – это задачи, в которых определяется минимум выпуклой функции (или максимум вогнутой), заданной на выпуклом замкнутом множестве. Эти задачи среди задач нелинейного программирования наиболее изучены.
Среди задач выпуклого программирования более подробно изучены задачи квадратичного программирования. В этих задачах целевая
функция – квадратична
, а ограничения – линейны.
В задачах целочисленного программирования неизвестные параметры могут принимать только целочисленные значения.
В задачах стохастического программирования в целевой функции
или в функциях ограничений содержатся случайные величины, которые
подчиняются законам теории вероятностей.
В задачах динамического программирования ограничения содержат
как параметр время и при этом описываются дифференциальными
уравнениями. Процесс
нахождения решений в задачах динамического
программирования является многоэтапным.
Методы решения задач НЛП различаются в зависимости от вида
ограничений.
5.1.Задачинелинейногопрограммированиясограничениями
ввидеравенств
Существует два наиболее распространенных метода решения задач
НЛП с ограничениями в виде равенств.
Эта задача может быть сведена к задаче безусловной оптимизации
путем исключения из целевой функции l независимых переменных.
Число исключаемых переменных равно количеству ограниченийравенств.
Пример. Найти решение задачи НЛП.
() min,
fx x x x
123
1xxx
312
Из ограничения
() -1 0.
hx x x x
1123
() 0hx выразим
1
и подставим в целевую функцию
() 1 minfx x x x x .
12 1 2
:
3
114

Получена задача безусловной оптимизации, которая может быть
x
L
j
решена любым из рассмотренных выше методов.
Замечание 1. Наличие ограничений в виде равенств фактически по-
зволяет уменьшить размерность задачи оптимизации с n до (n – l).
Замечание 2. Метод исключения переменных может быть применен
для ограниченного вида уравнений, которые можно разрешить относительно некоторого конкретного набора независимых
переменных.
Например, в следующем уравнении нельзя исключить никакую переменную
() 0.
hx x x x x
22
13 23
x
1
x
2
В таких случаях рекомендуется использовать метод множителей
Лагранжа.
5.1.2.МетодмножителейЛагранжа
Основная идея данного метода заключается в следующем. Оптимизационная задача с ограничениями преобразуется в задачу безусловной
оптимизации, дополненную некоторыми неизвестными параметрами.
Эти параметры носят название неопределенных множителей Лагранжа.
Пусть
() min;
fx
() 0, 1, ;
hx k l
Введем переменные
, , ...,
12
(, ) ()
xfx h
(5.2)
, , ..., .
xx x
12
и составим функцию Лагранжа
l
n
l
. (5.3)
k
1
kk
Задача на условный экстремум (5.2) преобразована к задаче безусловной оптимизации. Множители Лагранжа
, , ...,
12
l
не имеют огра-
ничения на знак.
Неизвестными задачи безусловной оптимизации (5.3) являются
, , ..., , , , ...,
xx x
12 1 2
nl
. Для нахождения переменных необходимо
взять частные производные
(, )
Lx
x
j
Lx
(, )
k
0, 1, ;
kl
0, 1, .
n
115

Рассмотрим полученную систему уравнений
j
x
x
x
f
L
x
(, ) () ()
Lx f x h x
Lx
(, )
xx x
jj j
() 0, 1,.
hx k l
k
k
l
k
k
0, 1, ,
n
(5.4)
Решение системы (5.4) определяет точку метрического пространст-
*** *
ва
функции задачи (5.2). Полученное решение
(, ,..., )
xx x , в которой может иметь место экстремум целевой
12
n
*
удовлетворяет и целевой
функции, и ограничениям. Однако это лишь стационарная точка. Для
проверки цели оптимизации, так же как в случае безусловной оптимизации (раздел 3), необходима проверка матрицы Гессе. В случае поло-
*
жительной определенности Гессиана стационарная точка
определяет
минимум задачи (5.2).
Пример. Решить задачу НЛП методом множителей Лагранжа:
() min,
xxx
22
12
xx
12
5.
Графическое решение представлено на рис. 5.1. Для этого построим ограничение и целевую функцию
22
12
constxx . Выберем констан-
ту, позволяющую привести исходную задачу к задаче безусловной оптимизации.
Составим функцию Лагранжа.
(, ) (5 ).
xxx xx
Для нахождения переменных
22
12 12
,,
x
12
необходимо взять частные
производные
Lx
(, )
Lx
(, )
Lx
(, )
x
1
x
2
x
20;
20;
xx
12
1
x
2
50.
Вычтем из первого уравнения системы второе, получим:
xx
12
xx
12
116
0;
5.

Откуда
5.
5
,
2
xx
12
Проверим определенность матрицы Гессе:
22
ff
2
()
Hx
xxx
112
22
ff
xx x
12 2
2
20
02
.
Определители всех главных миноров данного Гессиана положительны. Следовательно, по критерию Сильвестра матрица Гессе положительно определена.
**
55 25
Таким образом, стационарная точка
xfx
,,
22 2
опре-
деляет минимум задачи.
x
2
5
4
3
2
1
1 2 3 4 5
Рис. 5.1. Графическое решение задачи НЛП
x
1
x
1
117

5.2.Задачинелинейногопрограммированиясограничениями
f
f
f
ввидеравенств
Методы решения задач нелинейного программирования разделяются на несколько классов:
градиентные методы;
методы линейного программирования;
методы штрафных функций.
Каждая группа методов используется при определенных условиях,
накладываемых на целевую функцию и ограничения. Однако в классе
выпуклых функций возможно нахождение оптимального решения задачи НЛП, основываясь на отыскании стационарной точки. Такое решение дают условия Куна–Таккера.
5.2.1.УсловияКуна–Таккера
Американские ученые Г. Кун и А. Таккер в 1951 г. обобщили метод
множителей Лагранжа, пригодный для задач НЛП с ограничениямиравенствами, на случай общей задачи НЛП (5.1) с ограничениями в виде
равенств и неравенств.
Пусть
() min;
x
() , 1, ;
gx bi m
hx l
ii
() 0, k 1, .
k
Кун и Таккер построили необходимые и достаточные условия оптимальности задач НЛП, исходя из предположения о дифференцируе-
(), (), ()
мости функций
xgxhx.
ik
Условия оптимальности Куна и Таккера можно сформулировать в
виде задачи нахождения решения некоторой системы нелинейных уравнений и неравенств.
Минимум функции
может быть найден как решение
() () ();
xgx hx
() 0, 1, ;
gx i m
hx l
i
() 0, k 1, ;
k
() 0, 1, ;
gx i m
ii
на допустимом множестве
()fx
** *
, , x
ml
ii kk
ik
11
следующей системы:
(), ()
gx hx
ik
(5.5)
0, 1, .
im
i
118

Таким образом, условия Куна–Таккера включают: обобщенное
i
уравнение Лагранжа, уравнения и неравенства, определяющие ограниче-
ния, а также ограничения на знак множителей
. Предпоследнее уравне-
ние системы (5.5) носит название условий дополнительной нежесткости.
Пример. Найти решение задачи НЛП с использованием
() min,
fx x x
xx
12
x
1
22
xx
12
2
12
6,
10,
26.
Запишем задачу НЛП в виде стандартной задачи (5.1):
2
fx x x
() min,
hx x x
() 6,
112
gx x
() 1,
11
gx x x
() 26 ,
212
nml
12
22
2, 2, 1.
Найдем градиенты функций:
() (2 , 1),
fx x
() 1, 1,
hx
1
1
() 1, 0,
gx
1
gx x x
212
() (2 , 2 ).
Обобщенные условия Лагранжа для системы такой размерности
имеют вид
() () () ()
fx g x g x hx
() () () ()
xx x x
jj j j
121
12 1
0, 1,2.
j
Перепишем их для нашего примера
21210, (1),
xxj
11 2 11
10 2 10, (2).
1221
xj
119

Запишем полный вид условий Куна–Таккера:
xx
220;
11 2 11
12 0;
x
221
x
10;
1
26 0;
xx
12
22
xx
12
60;
x
(1)0;
11
(26 ) 0;
211
22
xx
,0.
12
Полученная система нелинейных уравнений и неравенств может
быть решена известными методами. Отметим, что оптимальное решение
получено в пакете программ MathCad:
**
1, 5;
xx
12
**
3, 0;
12
*
fx
1;
1
***
,, 4.
Условия Куна–Таккера могут быть применены для решения относительно небольшого количества задач НЛП и не дают конструктивных
методов решения для сложных задач НЛП.
Важный класс градиентных методов применим лишь для выпуклых
функций. При этом метод условного градиента применим лишь для задач с линейными ограничениями. Метод Ньютона целесообразно применять в том случае, если целевая функция строго выпуклая и достаточно гладкая в окрестности начальных условий. Метод штрафных
функций применим к задачам со сложными ограничениями.
Так же ограниченный класс задач НЛП может быть решен с использованием столь популярных на практике методов линейного программирования. Рассмотрим подробно эту проблему.
120
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
