Вы находитесь на странице: 1из 14

Анализ чувствительности решения задачи

линейного программирования

• Пример: задача о производстве краски


• Оптимальное решение задачи
• Анализ чувствительности к изменению целевых
коэффициентов
• Анализ чувствительности к изменению правых частей
ограничений
• Теневые цены
• Модель и отчет по устойчивости GLPK

v 1.2, 02.03.2015 1
Задача линейного программирования

• В задаче линейного программирования*


целевая функция и все ограничения линейны:
F ( x1 , x2 ) =c1 x1 + c2 x2 → min/ max
при условии что:
a11 x1 + a12 x2 ≤ b1
a x ≥ b
 21 1 2

 a 31 x1 + a32 x 2 =
b3
 x1 ≥ 0, x2 ≥ 0
* Термин происходит от англ. Programming – разработка программ, планов действий

2
Геометрическая интерпретация задачи
линейного программирования
• Целевая функция - уравнение вида: F(x1,x2) = c1x1 + c2x2
задает плоскость в 3х-мерном пространстве
• Ограничение-равенство вида: a1x1+a2x2 = b1
задает прямую в плоскости OXY
• Ограничение-неравенство вида: a1x1+a2x2 ≤ b1
задает одну из полуплоскостей
плоскости OXY
3

x1 ≥ 0
2⋅ x1 + 6⋅ x2 ≤ 12
2
x1
( )
c1 x1
x2 ≤ 2 −
3
c1( x1)
x1
1
( )
c1 x1 → 2 −
3

x2 ≥ 0
0
0 2 4 6 8
x1
3
Пример задачи планирования производства

• Предприятие производит краску для наружных (A) и внутренних (B) работ


• Расходы ключевых видов сырья (в 100 кг/т краски), а также прибыль от
продажи 1т краски (в тыс. руб) приведены в таблице

Ресурс на тонну А на тонну B Доступно


Связующее 6 4 24
Пигмент 1 2 6
Доход /т 5 4 → max

• Маркетинговые ограничения:
– невозможно продать более 2 т краски B работ в день
– Производство краски B не должно превышать производство краски A
более чем на 1 т

• Необходимо составить план производства, обеспечивающий


наибольшую прибыль

4
Математическая постановка задачи
Ресурс на тонну А на тонну B Доступно
Связующее 6 4 24
Пигмент 1 2 6
Доход /т 5 4 → max

• Маркетинговые ограничения:
– невозможно продать более 2 т краски B работ в день
– Производство краски B не должно превышать производство краски A более чем на 1 т
• Необходимо составить план производства, обеспечивающий
наибольшую прибыль
• Математическая постановка задачи:
c1 : 6 x1 + 4 x2 ≤ 24
F ( x1 , x2 ) = 5 x1 + 4 x2 → max c : 1x + 2 x ≤ 6


2 1 2

c3 : x2 ≤ 2
при условии:
c : x − x ≤ 1
 4 2 1

c5 : x1 ≥ 0, c6 : x2 ≥ 0
 5
Графическое решение
A, B, C, D, E, F –
угловые точки
Примечание: в GeoGebra
приходится использовать
переменные x, y вместо x1 и x2

связывающие
ограничения

оптимальное
решение
не связывающие
ограничения
• Оптимальное решение достигается в точке C – пересечение ограничений c1 и c2
• Координаты можно найти, решив систему, составленную из уравнений прямых,
соответствующих этим ограничениям:
c1 : 6 x1 + 4 x2 =
24 x1 = 3

c2 : 1x1 + 2 x2 =6 x2 = 1.5
• Значение целевой функции получается подстановкой координат в уравнение для
целевой функции:

F ( x1 , x2 ) = 5 x1 + 4 x2 = 5 ⋅ 3 + 4 ⋅1.5 = 21
6
Изменение целевых коэффициентов

𝑐𝑐1 𝐹𝐹
𝐹𝐹 = 𝑐𝑐1 𝑥𝑥1 + 𝑐𝑐2 𝑥𝑥2 → 𝑥𝑥2 = − 𝑥𝑥1 +
𝑐𝑐2 𝑐𝑐2
𝑎𝑎1 𝑏𝑏
𝑎𝑎1 𝑥𝑥1 + 𝑎𝑎2 𝑥𝑥2 = 𝑏𝑏 → 𝑥𝑥2 = − 𝑥𝑥1 +
𝑎𝑎2 𝑎𝑎2

Пределы для отношения целевых


коэффициентов задаются угловыми
коэффициентами для связывающих
ограничений

1 𝑐𝑐1 3
≤ ≤
2 𝑐𝑐2 2
при 𝑐𝑐2 = 4: 2 ≤ 𝑐𝑐1 ≤ 6
10
при 𝑐𝑐1 = 5: ≤ 𝑐𝑐2 ≤ 10
3

7
Изменение правых частей ограничений
𝑎𝑎1 𝑏𝑏
𝑎𝑎1 𝑥𝑥1 + 𝑎𝑎2 𝑥𝑥2 = 𝑏𝑏 → 𝑥𝑥2 = − 𝑥𝑥1 +
𝑎𝑎2 𝑎𝑎2

Граничные
точки при
изменении b2

Граничные
точки при
изменении b1

8
Теневая цена
• Оптимальное решение остается
в точке C при изменении
правой части c1 в пределах:
– 20 ≤ 𝑏𝑏1 ≤ 36
• При этом оптимальному
решению будут соответствовать
точки:
– 𝐶𝐶 ≡ 𝐷𝐷 2,2 → 𝐹𝐹 = 18
– 𝐶𝐶 ≡ 𝐺𝐺 6,0 → 𝐹𝐹 = 30
• Теневая цена ресурса 𝑖𝑖:
𝜕𝜕𝜕𝜕 Δ𝐹𝐹
𝑦𝑦𝑖𝑖 = = lim
𝜕𝜕𝑏𝑏𝑖𝑖 Δ𝑏𝑏𝑖𝑖→0 Δb𝑖𝑖
• При изменении правой части в допустимых пределах (не меняющих оптимальную
угловую точку), теневая цена постоянна и может быть вычислена так:
Δ𝐹𝐹
𝑦𝑦𝑖𝑖 =
Δbi
• Теневая цена ресурса 1:
30 − 18 12 3
𝑦𝑦1 = = = = 0,75
36 − 20 16 4

9
Модель в GLPK
var x1 >= 0; #производство краски А и ограничение неотрицательности c5
var x2 >= 0; #производство краски B и ограничение неотрицательности c6

subject to C1_Varnish: #c1 - связующее


6 * x1 + 4 * x2 <= 24;

subject to C2_Pigment: #c2 - пигмент


x1 + 2 * x2 <= 6;

subject to C3_Demand: #c3 - маркетинговое ограничение по спросу


x2 <= 2;

subject to C4_Ratio:
#c4 - маркетинговое ограничение на соотношение объемов выпуска
x2 <= x1 + 1;

maximize Profit:
5 * x1 + 4 * x2;

solve;

display x1, x2, Profit;

end; 10
Отчет по устойчивости GLPK
Остаток или Область устойчивости теневой
теневая цена цены (при изменении правой части)
ограничения

Правая часть
Левая часть
ограничения Новое
ограничения в Величина
(ограничения связывающее
оптимальном целевой функции
могут быть ограничение
решении при граничных
двухсторонними)
значениях
правой части
11
Отчет по устойчивости GLPK

Целевой коэффициент и теневая Область устойчивости


цена, если границы области оптимального решения
значений переменной – (при изменении целевых
связывающие ограничения коэффициентов)

Отчет по устойчивости после добавления верхней границы: 𝑥𝑥1 ≤ 2


12
Неразрешимая задача

При добавлении ограничения: 𝑥𝑥 ≥ 4.5 ОДР – пустое множество


13
Рекомендуемая литература

1. Вентцель, Е.С. Исследование операций: задачи, принципы, методология. — М.: Наука,


1988. — 208 с.
2. Исследование операций в экономике / под ред. Н.Ш. Кремера.— М. : Банки и биржи,
Юнити, 1997. — 407 с.
3. Таха, Х. Введение в исследование операций. — 7-е изд. : пер. с англ.
— М. : Вильямс, 2005. — 912 с.
4. Мур, Дж. Экономическое моделирование в Microsoft Excel / Дж. Мур, Л. Уэдерфорд. — М.
: Вильямс, 2004. – 1024 с.
5. Шапиро, Дж. Моделирование цепи поставок / пер. с англ. под ред. В.С. Лукинского –
СПб.: Питер, 2006 – 720 с.

14