Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛИНЕЙННОЕ ПРОГРАММИРОВАНИЯ БЛЯТЬ.doc
Скачиваний:
31
Добавлен:
08.03.2015
Размер:
1.18 Mб
Скачать

4. Двойственность в задачах линейного программирования

С каждой задачей линейного программирования тесно связана другая линейная задача, называемая двойственной; первоначальная задача называется исходной или прямой.

Исходная задача

Двойственная задача

Две приведенные задачи образуют двойственную пару.

Двойственная задача по отношению к исходной составляется согласно следующим правилам:

1) целевая функция исходной задачи формулируется на максимум, а целевая функция двойственной задачи — на минимум, при этом в задаче на максимум все неравенства в функциональных ограничениях имеют вид "£", в задаче на минимум — вид "³";

2) матрица А, составленная из коэффициентов при неизвестных в системе ограничений исходной задачи и аналогичная матрицаАтв двойственной задаче получаются друг из друга транспонированием;

3) число переменных в двойственной задаче равно числу функциональных ограничений исходной задачи, а число ограничений в системе двойственной задачи — числу переменных в исходной задаче;

4) коэффициентами при неизвестных в целевой функции двойственной задачи являются свободные члены в системе ограничений исходной задачи, а правыми частями в ограничениях двойственной задачи — коэффициенты при неизвестных в целевой функции исходной задачи;

5) если переменная xjисходной задачи может принимать только положительные значения, тоj-ое условие в системе ограничений двойственной задачи является неравенством вида "≥". Если же переменная может принимать как положительные, так и отрицательные значения, тоj-ое условие представляет собой уравнение. И наоборот, еслиi-ое соотношение в системе ограничений исходной задачи является неравенством, тоi-ая переменная двойственной задачиyi ≥0. В противном случае переменнаяyiможет принимать как положительные, так и отрицательные значения.

В теории двойственности используются четыре пары двойственных задач (приведем их в матричной форме записи):

Исходная задача

Двойственная задача

Симметричные пары

1.

1.

2.

2.

Несимметричные пары

3.

3.

4.

4.

Первая теорема двойственности.

Если одна из пары двойственных задач имеет оптимальный план, то и другая имеет оптимальный план и значения целевых функций задач при их оптимальных планах равны между собой, т. е. .

Если же целевая функция одной из пары двойственных задач не ограничена (для исходной – сверху, для двойственной – снизу), то другая задача вообще не имеет планов.

Вторая теорема двойственности.

План исходной задачи и пландвойственной задачи являются оптимальными планами этих задач тогда и только тогда, когда для любыхiиj выполняются равенства:

Если в оптимальном плане одной из задач соответствующая переменная отлична от нуля, то ограничение другой задачи в оптимальном плане выполняются в виде равенства. Если в оптимальном плане одной из задач какое-либо ограничение выполняется в виде строгого неравенства, то соответствующая переменная другой задачи в оптимальном плане равна нулю.

Эти условия позволяют, зная оптимальное решение одной из взаимно двойственных задач, найти оптимальное решение другой задачи.

Пример. Решить задачу линейного программирования симплексным методом. Составить для данной задачи линейного программирования двойственную задачу и по решению прямой задачи найти решение двойственной, используя теоремы двойственности.

Приведем задачу к каноническому виду. Для этого к левой часть первого неравенства прибавим дополнительнуюнеотрицательную переменную, к левой части второго -. А вот из левой части третьего неравенства вычтем переменную. В целевую функцию каждая из этих переменных входит с коэффициентом 0 (т. е. не входят). Получаем

Преобразованную систему уравнений запишем в векторной форме:

,

где ;;;;;.

Среди векторов P1, P2, P3, P4, P5,только два единичных вектора (P3 и P4), т.е. единичного базиса нет. Поэтому составим расширенную задачу. Для этого в левую часть третьего уравнения системы ограничений добавимискусственнуюпеременную. Её нужно как можно быстрее вывести из базиса. Поэтому в целевую функцию в задаче максимизации новая переменная войдёт с очень большим отрицательным коэффициентом –М. Расширенная задача имеет опорный план, определяемый системой трёх единичных векторов:.

Составим симплексную таблицу для Iитерации:

Базис

2

3

0

0

0

1

0

1

-1

2

1

0

0

0

2

0

8

2

1

0

1

0

0

3

3

2

1

0

0

-1

1

4

F0

0

-2

-3

0

0

0

0

5

-3

-2

-1

0

0

1

0

Вычислим оценки разложений векторов по базису опорного решения по формуле , гдеzj находится как скалярное произведение вектораPj (j=1,m)на векторСб=(с1, с2, ...,сm):

.

Оценки векторов, входящих в базис, всегда равны нулю.

Значение F0равно скалярному произведению вектораP0на векторСб:F0=1*0+8*0+3*(-М)=-3М.

Значения F0исостоят из двух слагаемых. Слагаемое, которое не содержит М, записываем в 4-й строке, а число, стоящее при М – в 5-й.

Начальное опорное решение не является оптимальным, так как в 5-й строке имеется два отрицательных числаи. Для оптимальности опорного решения в задаче на максимум требуется неотрицательность оценок для всех векторов. Чтобы перейти к новому опорному решению в базис можно ввести любой из векторовP1иP2. ВыберемP1, так как ему соответствует наибольшая по модулю оценка. Для определения вектора, подлежащего выводу из базиса, находятдля всехaij>0. Для вектораP1 получим(, поэтому отношениене рассматриваем). Минимум достигается приi=3. В третьей строке столбца «Базис» находится вектор Р6. Следовательно, его из базиса исключаем.

Далее выполним преобразование Жордана с разрешающим элементом =2: 1) разделим всю третью строку на 2 и запишем результат в новую симплексную таблицу; 2) остальные элементы первого столбца нужно занулить, для этого полученную 3-ю строку сложим с первой, результат запишем в первую строку новой симплексной таблицы; 3) умножим новую 3-ю строку на -2 (или прежнюю на -1) и сложим со второй строкой, результат запишем во вторую строку новой симплексной таблицы.

Получим симплексную таблицу для IIитерации:

Базис

2

3

0

0

0

1

0

5/2

0

5/2

1

0

-1/2

1/2

2

0

5

0

0

0

1

1

-1

3

2

3/2

1

1/2

0

0

-1/2

1/2

4

3

0

-2

0

0

-1

1

Она содержит только четыре строки, так как искусственный вектор из базиса исключён и оценки больше не содержат слагаемого с М. Этот вектор не имеет смысла вводить ни в один из последующих базисов, поэтому в дальнейшем столбец данного вектора можно не заполнять. Но так как от нас требуется найти решение двойственно задачи, то мы его оставим.

Получили новый опорный план и значение целевой функцииF0 = 3.

Рассмотрим элементы 4-й строки. В столбце векторов иимеются отрицательные числа, значит, найденный план не является оптимальным. Вводить в базис будем вектор, исключать. Получим симплексную таблицу дляIIIитерации.

Базис

2

3

0

0

0

1

3

1

0

1

2/5

0

-1/5

1/5

2

0

5

0

0

0

1

1

-1

3

2

1

1

0

-1/5

0

-2/5

2/5

4

5

0

0

4/5

0

-7/5

7/5

Последняя строка снова содержит отрицательное число. В базис вводим вектор , исключаем.

Базис

2

3

0

0

0

1

3

2

0

1

2/5

1/5

0

0

2

0

5

0

0

0

1

1

-1

3

2

3

1

0

-1/5

2/5

0

0

4

12

0

0

4/5

7/5

0

0

В 4-й строке последней симплексной таблицы нет отрицательных чисел. Значит, найденный опорный план является оптимальным. Значение целевой функции.

Составим двойственную задачу.

Умножим третье ограничение на -1, тогда все неравенства будут содержать знак «≤». Задача примет вид исходной задачи симметричной пары 1 (см. выше):

Число переменных в двойственной задаче равно числу ограничений в исходной задаче, т.е. трём: .

Умножим правые части ограничений на соответствующие переменные двойственной задачи и сложим их, получим целевую функцию: .

Целевая функция исходной задачи исследуется на максимум, следовательно, целевая функция двойственной задачи исследуется на минимум.

Матрица системы ограничений исходной задачи имеет вид: . Транспонируем её и получим аналогичную матрицу двойственной задачи -. Так как в исходной задаче обе переменные неотрицательные, то оба ограничения двойственной задачи будут являться неравенствами.правыми частями в ограничениях двойственной задачи являются коэффициенты при неизвестных в целевой функции исходной задачи. И так как все три ограничения исходной задачи являются неравенствами, то все три переменные двойственной задачи будут неотрицательными.

Окончательно двойственная задача имеет следующий вид:

.

Найдём её решение, используя теоремы двойственности. По первой теореме двойственности оптимальные решения исходной и двойственной задач равны, следовательно, .

Из соотношений второй теоремы двойственности следует, что если в оптимальном плане исходной задачи какое-то ограничение выполняется в виде строгого неравенства, то соответствующая двойственная оценка равна нулю. Подставим найденное оптимальное решение в систему ограничений исходной задачи:

Третье ограничение выполняется в виде строгого неравенства, следовательно, .

Если некоторая компонента оптимального плана исходной задачи отлична от нуля, то соответствующее ограничение двойственной задачи выполняется в виде равенства. В нашем примере и, и, следовательно, оба ограничения двойственной задачи выполняются в виде равенства.

Учитывая, что, получим:

Решив систему, получим

Окончательно

Решение двойственной задачи можно получить другим способом, используя формулу .

Матрица находится в последней симплексной таблице. Ее столбцы расположены под столбцами единичной матрицы, образующими базис начального опорного решения, т. е. под векторами(именно для этой цели мы продолжали вычислять вектор):

Ответ: ,;