
- •Донецкий университет экономики и права
- •Кафедра высшей математики и информационных технологий
- •А.А. Мадых, к.Э.Н.
- •Экономико-математическое моделирование
- •Курс лекций
- •Часть 1
- •Донецк ДонУэп 2010
- •Содержание
- •Введение
- •Тема 1 концептуальные аспекты математического моделирования экономики
- •1.1. Понятие модели. Классификация моделей
- •1.2. Этапы моделирования
- •Тема 2 оптимизационные экономико-математические модели
- •2.1. Понятие оптимизационной модели
- •2.2. Примеры постановки оптимизационных задач
- •Тема 3 задачи линейного программирования и методы их решения
- •3.1. Графический метод решения задач линейного программирования
- •3.2. Симплекс-метод решения задач линейного программирования
- •3.3. Метод искусственного базиса
- •3.4. Специальные случаи решения задач линейного программирования
- •Тема 4 теория двойственности и анализ линейных моделей оптимизационных задач
- •4.1. Понятие и экономический смысл двойственной задачи
- •4.2. Двойственный симплекс-метод
- •4.3. Анализ чувствительности
- •4.3.1. Изменение коэффициента целевой функции при небазисной переменной
- •4.3.2. Изменение коэффициента целевой функции при базисной переменной.
- •4.3.3. Изменение правой части ограничения
- •4.3.4. Изменение колонки коэффициентов при небазисной переменной. Оценка эффективности новых способов производства
- •Тема 5 целочисленное программирование
- •5.1. Понятие задачи целочисленного программирования
- •5.2. Метод ветвей и границ
- •5.3. Метод отсекающих плоскостей (Гомори)
- •Тема 6 нелинейные оптимизационные модели экономических систем
- •6.1. Понятие нелинейных оптимизационных моделей и подходы к их решению
- •6.2. Метод множителей Лагранжа
- •Литература
- •Відповідальний за випуск: завідувач кафедри вищої математики та інформаційних технологій к.Ф-м.Н., доцент л.М. Харламова
- •83048, М. Донецьк, вул. Університетська, 77
Тема 4 теория двойственности и анализ линейных моделей оптимизационных задач
4.1. Понятие и экономический смысл двойственной задачи
К любой задаче линейного программирования может быть поставлена двойственная задача, решение которой дает важную экономическую интерпретацию прямой задачи и информацию для анализа чувствительности модели.
Сформулируем постановку двойственной задачи для задачи о мебельной фабрике из примера 3.2. Пусть некая фирма решила выкупить все ресурсы мебельной фабрики, и она хочет узнать, по какой минимальной цене это сделать. Переменные y1, y2, y3, y4 – обозначают, соответственно, цены на каждый из четырех ресурсов (древесину, время на участке отделке, столярном участке и «квоты» на продажу столов). Цены же, очевидно, не должны быть ниже, чем стоимость продукции, которую из этих ресурсов мебельная фабрика могла бы произвести. Таким образом, целевая функция двойственной задачи будет минимизировать стоимость всех выкупаемых ресурсов, а ограничения отражают тот факт, что стоимость ресурсов, взятых в определенных пропорциях, должна дать цену не меньше стоимости соответствующей продукции мебельной фабрики.
Поставленную задачу можно записать в следующем виде (табл. 4.1).
Таблица 4.1 – Постановка двойственной задачи к примеру 3.2
Прямая задача:
|
Двойственная задача:
|
Сформулируем основные правила построения двойственной задачи.
1. Критерий оптимальности у двойственной задачи меняется на противоположный.
2. Число переменных двойственной задачи равно числу ограничений прямой и, наоборот, число ограничений двойственной задачи равно числу переменных прямой.
3. Коэффициенты ЦФ прямой задачи становятся правыми частями ограничений двойственной и, наоборот, правые части ограничений прямой задачи становятся коэффициентами ЦФ двойственной.
4. Матрицей коэффициентов при переменных в ограничениях двойственной задачи является транспонированная матрица этих коэффициентов прямой задачи.
5. Ограничения на знак переменных двойственной задачи связаны с типом соответствующего ограничения прямой задачи, а тип ограничений двойственной задачи связан с ограничением на знак соответствующей переменной прямой задачи. Эта связь выглядит следующим образом (табл. 4.2).
Таблица 4.2 – Связь типа ограничения с ограничением на знак переменной у прямой и двойственной задачи
Прямая |
Двойственная |
Прямая |
Двойственная |
max z(x) … bi … = bi … bi xi 0 xi неогр. на знак xi 0 |
min w(y) yi 0 yi неогр. на знак yi 0 … ci … = ci … ci |
min z(x) … bi … = bi … bi xi 0 xi неогр. на знак xi 0 |
max w(y) yi 0 yi неогр. на знак yi 0 … ci … = ci … ci |
Таким образом, если в ограничении задачи на максимум стоит знак , то соответствующая двойственная переменная будет неотрицательной. Если в ограничении задачи на минимум стоит знак , то соответствующая двойственная переменная будет тоже неотрицательной. Если в ограничении стоит знак =, то двойственная переменная не имеет ограничений на знак, – она может принимать любые значения, как положительные, так и отрицательные.
Задача с неотрицательными переменными на max, у которой все ограничения типа или на min, у которой все ограничения типа , называется нормальной задачей линейного программирования. То есть нормальная задача имеет вид
z = с1x1 + …+ сnxn max
a11x1 + …+ a1nxn b1,
… (10)
am1x1 + …+ amnxn bm;
x1 0, …, xn 0
или вид
z = с1x1 + …+ сnxn min
a11x1 + …+ a1nxn b1,
… (11)
am1x1 + …+ amnxn bm;
x1 0, …, xn 0.
Для нормальной задачи линейного программирования двойственная задача будет тоже нормальной.
Ограничения типа для задачи на максимум и типа для задачи на минимум называются нормальными.
Поэтому вместо таблицы 4.2, достаточно использовать правило: для нормальных ограничений – двойственные переменные будут неотрицательными; если переменные прямой задачи неотрицательны – двойственные ограничения будут нормальны.
Пример 4.1. Составим двойственную задачу к следующей:
Двойственная задача будет иметь 4 переменных (по числу ограничений прямой) с коэффициентами в ЦФ: 5, 6, 4, 5. У двойственной задачи будет три ограничения (по числу переменных прямой задачи) с правыми частями равными: –1, 3, 1. Переменные y1 и y3 не будут иметь ограничений на знак (так как в 1 и 3 ограничении знак =), переменная y2 будет неотрицательной (так как второе ограничение правильное), а переменная y4 будет неположительной (так как четвертое ограничение неправильное – ≥ у задачи на max).
Аналогично первое
ограничение двойственной задачи будет
иметь знак = (поскольку x1
не имеет ограничений на знак), второе –
≤ (будет неправильным, поскольку
),
третье – ≥ (будет правильным, поскольку
).
Получили двойственную задачу:
Решения прямой и двойственной задачи взаимосвязаны.
Во-первых, прямая и двойственная задача имеют равные оптимальные значения целевой функции. Это свойство получило название первой теоремы двойственности.
Во-вторых, оптимальное решение двойственной задачи находится автоматически при решении прямой задачи в последней симплекс-таблице в строке целевой функции. При этом yi равно:
коэффициенту при Si, если i-е ограничение прямой задачи типа ;
коэффициенту при ei · (–1), или коэффициенту при ai в первой индексной строке, если i-е ограничение прямой задачи типа ;
коэффициенту при ai в первой индексной строке, если i-е ограничение типа = .
Решение двойственной задачи отражает теневые цены (двойственные оценки) ограничений, которые для связующих ограничений (критических ресурсов) отличны от нуля.
Напомним еще раз, что показывают теневые цены:
-
меру дефицитности ресурса – позволяют оценить насколько важным с точки зрения оптимального результата является от или иной ресурс;
-
меру влияния ограничения на ЦФ – величину на которую изменится ЦФ при изменении правой части ограничения на 1 единицу;
-
меру эффективности новых способов производства (как с помощью теневых цен оценить эффективность нового способа производства будет рассмотрено ниже).
В третьих, поскольку понятие двойственности симметрично, то есть для двойственной задачи двойственной будет прямая задача, то значение переменных прямой задачи будут являться теневыми ценами двойственной задачи. Этот факт более широко находит отражение во второй теореме двойственности (теореме о дополняющей нежесткости).
Рассмотрим
нормальную задачу на максимум (10) с n
переменными и m
ограничениями. Пусть S1,
…, Sm
– дополняющие переменные основной
задачи. Тогда двойственная задача имеет
m
переменных y1,
…, ym
и n
ограничений. Пусть e1,
…, en
– избыточные переменные двойственной
задачи. Тогда, если
– допустимое решение основной задачи,
а
– двойственной, то X
будет оптимальным решением прямой
задачи, а Y
– двойственной тогда и только тогда,
когда выполняется:
(12)
Таким образом, если основная переменная прямой задачи отлична от нуля, соответствующая дополнительная переменная двойственной задачи равна нулю. Если же дополнительная переменная прямой задачи отлична от нуля – соответствующая двойственная переменная равна нулю.
При решении прямой задачи на максимум симплекс-методом, строка целевой функции отражает значение переменных двойственной задачи, а столбец bj по сути является строкой ЦФ для двойственной задачи. При решении задачи на минимум, строка целевой функции отражает значение переменных двойственной задачи, взятых со знаком «–».
Рассмотрим последнюю симплекс-таблицу решения задачи (табл. 3.4) о мебельной фабрике (8) и найдем соответствующее решение двойственной задачи (9).
Базис |
cj |
|
х1 |
х2 |
х3 |
S1 |
S2 |
S3 |
S4 |
60 |
30 |
20 |
0 |
0 |
0 |
0 |
|||
1) S1 |
0 |
24 |
0 |
-2 |
0 |
1 |
2 |
-8 |
0 |
2) х3 |
20 |
8 |
0 |
-2 |
1 |
0 |
2 |
-4 |
0 |
3) х1 |
60 |
2 |
1 |
5/4 |
0 |
0 |
-1/2 |
3/2 |
0 |
4) S4 |
0 |
5 |
0 |
1 |
0 |
0 |
0 |
0 |
1 |
|
280 |
0 |
5 |
0 |
0 |
10 |
10 |
0 |
Получим: y1 = y4 = 0, y2 = y3 = 10, e1 = e3 = 0, e2 = 5, Z = 280. Из этого решения видно выполнение условий (12) второй теоремы двойственности.