метопт-пми / 3 / Выпуклое программирование
.pdf
L(x* , * ) max min L(x, ) min max L(x, ) , где
0 x Rn x Rn 0
m
L(x, ) (x) ( , f (x)) (x) i fi (x)
i1
(предполагаем, что условия регулярности выполняются).
Если обозначить ( ) min L(x, ) , то получаем двойственную задачу:
x Rn
max ( ) ( * )
0
(x* ) min (x) .
x
Построим двойственную задачу к исходной задаче линейного программирования, рассматривая её, как задачу выпуклого программирования (напомним, что там допустимое множество задается неравенством вида fi (x) 0).
Имеем (m + n)-ограничений:
f |
(x) b |
( A , x) 0, |
i 1...m |
|
i |
|
||
|
|
|||||||
i |
i |
|
i |
|
|
|
|
0 |
fm j (x) xj |
0, |
j 1...n |
|
|
||||
|
j |
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Каждому ограничению сопоставим элементы Тогда функция Лагранжа:
m |
|
n |
|
|
[bi |
( Ai , x)] j |
|
L(x, , ) (c, x) i |
|
||
i 1 |
|
j 1 |
|
i, j - компоненты вектора > 0.
( x j )
|
|
|
|
|
|
|
A |
|
b |
|
|
1 |
|
|
1 |
|
|
1 |
|
1 |
|
Т.к. |
|
|
, |
|
, A |
|
, b |
, то |
||
|
|
|
|
|
|
|
A |
|
b |
|
|
m |
|
n |
|
|
m |
m |
|||
L x, , c, x ,b , Ax , x b, x, c AT |
||||||||||
|
|
|
|
|
|
|
|
, Ax AT , x |
||
Введем функцию |
|
|
|
|
, |
если c A |
||||
|
|
|
|
|
|
|
|
|||
|
|
|
def |
|
|
|
|
|
|
T |
, min L x, , |
|
, если c AT 0 |
||||||||
|
|
|
x Rn |
|
|
|
b, |
|||
|
|
|
|
|
|
|
|
|
|
|
Итак, |
|
|
|
|
|
|
|
|
|
|
max |
, |
|
max b, |
|
max b, |
|||||
0, |
|
|
|
|
0, 0, |
|
0, |
|||
0 |
|
|
|
|
|
|||||
|
|
|
|
c AT 0 |
|
AT c |
||||
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
0 |
|
|
|
|
по условию 0 c AT 0 AT c
Получаем двойственную задачу линейного программирования:
Целевая функция ( ) (b, ) max
Допустимое множество: Rm : AT c, 0
При этом:
размерность исходной ЗЛП (n) совпадает с числом ограничений в двойственной:
AT c , и наоборот, число ограничений (m) в исходной ЗЛП совпадает с размерностью двойственной;
min меняется на max, знаки неравенств меняются на противоположные.
Справедливы следующие утверждения:
1) Двойственность взаимна, т.е. задача, двойственная к двойственной – исходная.
Действительно,
рассмотрим задачу, эквивалентную двойственной:
min b, , Rm : AT c, 0
получили ЗЛП в основной форме. Построим к ней двойственную:
max c, x , X x Rn : Ax b, x 0
X
эта задача эквивалентна исходной:
min c, x , X x Rn : Ax b, x 0 .
X
2)Если решение исходной задачи линейного программирования существует, то существует и решение двойственной ЗЛП, причем экстремумы целевых функций совпадают (было доказано в теореме о двойственности).
3)Экстремальная точка * двойственной задачи является векторным коэффициентом чувствительности исходной задачи по вектору b.
Рассмотрим видоизмененную задачу с вектором правых частей b+ b:
0 |
|
|
|
|
|
|
|
|
b b b |
i |
|
|
|
|
|
|
|
|
0 |
|
|
|
|
Для пассивных ограничений ( A , x* ) b |
небольшое изменение bi не нарушит строгого |
|||||||
|
i |
|
i |
|
|
|
|
|
неравенства. |
|
|
|
|
|
|
|
|
При этом заметим, что из условия |
* f |
(x* ) * b ( A , x* ) |
0 , которое называется |
|||||
|
|
i |
i |
i |
i |
i |
|
|
условием дополняющей нежесткости, |
следует, что |
* 0 для пассивных ограничений. |
||||||
|
|
|
|
|
i |
|
|
|
Для активных ограничений |
( A , x* ) b |
изменение bi |
может |
привести к большому |
||||
|
i |
i |
|
|
|
|
|
|
изменению экстремума. |
|
|
|
|
|
|
|
|
* характеризует скорость изменения экстремума, |
т.е. |
|
* . |
|||||
|
||||||||
i |
|
|
|
|
|
|
i |
i |
|
|
|
|
|
|
|
|
|
Действительно, для линейной задачи функция Лагранжа L имеет вид
L(x, ) (c, x) ( ,b Ax) , |
(x* ) L(x* , * ) |
||
L (c, x) ( * , b Ax) (c, x) ( *, b Ax) ( *, ) ( *, ) |
|||
lim |
* , ч.т.д. |
|
|
i 0 |
|
i |
|
i |
|
||
|
|
|
|
Пример.
Провести анализ чувствительности в следующей задаче оптимизации. Для
изготовления изделий четырех видов |
A1,..., A4 используют ресурсы трех типов, |
причем |
||||||||
запасы ресурсов ограничены. Исходные данные задачи представлены в таблице. |
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
Расход ресурсов на изготовление одного изделия Aj |
при его |
|
|
|
||||
|
Тип |
|
стоимости c j |
|
Запасы |
|
||||
|
ресурсов |
|
|
|
|
|
|
ресурсов |
|
|
|
A1 |
A2 |
|
A3 |
|
A4 |
||||
|
|
|
|
|
|
|
||||
|
|
c = 27 |
c = 10 |
|
c = 15 |
|
c = 28 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
I |
3 |
2 |
|
1 |
|
2 |
|
20 |
|
|
|
|
|
|
|
|
|
|
|
|
|
II |
3 |
1 |
|
3 |
|
4 |
|
50 |
|
|
|
|
|
|
|
|
|
|
|
|
|
III |
2 |
1 |
|
1 |
|
2 |
|
60 |
|
|
|
|
|
|
|
|
|
|
|
|
Цель: составить план выпуска изделий Aj , обеспечивающий max стоимость произведенной продукции.
Взяв в качестве управляемых переменных xj , j 1,..., 4 – количество выпускаемых изделий Aj получим следующую математическую модель:
(x) 27x1 10x2 15x3 28x4 min
3x1 2x2 x3 2x4 20
3x1 x2 3x3 4x4 502x1 x2 x3 2x4 60
x j 0, j 1,..., 4
Решив задачу симплекс-методом, найдем: x* = (0,0,10,5), т.е. max стоимость произведенной продукции * = 290 будет получена, если изделия A1 и A2 не выпускать, а изготовить 10 изделий A3 и 5 изделий A4.
Двойственная задача имеет вид:
( y) 20 y1 50 y2 60 y3 max
3y1 3y2 2 y3 272 y1 y2 y3 10y1 3y2 y3 152 y1 4 y2 2 y3 28
y 0, i 1, 2,3
i
Решив её, получим y* = (12,1,0), (y*) = 290.
Из этого решения видно, что при небольших приращениях b1 запасов ресурса I максимально достижимая стоимость изготовленной продукции * изменится на величину
12 b1
Например, если этот ресурс представляет собой сырье, то увеличение его запасов на 1 кг при оптимальном планировании, вызовет возрастание стоимости изготовленной продукции на 12 руб. То же приращение ресурсов II обеспечит увеличение объема продукции только на 1 руб. И, наконец, изменение в небольших пределах запасов ресурса III вовсе не повлияет на стоимость произведенной продукции.
Это означает, что запасы ресурса III при оптимальном плане расходуются не полностью и являются избыточными.
Наиболее дефицитным в рассматриваемой задаче является ресурс I, его запасы следует по возможности, увеличивать в первую очередь. Второй ресурс менее дефицитен, а запасы ресурса III превосходят потребности, соответствующие оптимальному плану выпуска изделий.
