Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
шпоры бухов.docx
Скачиваний:
12
Добавлен:
27.09.2019
Размер:
494.92 Кб
Скачать

9. Определение двойственной задачи

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

(32)

при условиях

(33)

(34)

Определение 1. Задача, состоящая в нахождении минимального значения функции

(35)

при условиях

(36)

(37)

называется двойственной по отношению к задаче (32) – (34). Задачи (32) – (34) и (35) – (37) образуют пару задач, называемую в линейном программировании двойственной парой. Сравнивая две сформулированные задачи, видим, что двойственная задача составляется согласно следующим правилам:

1. Целевая функция исходной задачи (32) – (34) задается на максимум, а целевая функция двойственной (35) – (37) – на минимум.

2. Матрица

(38)

составленная из коэффициентов при неизвестных в системе ограничений (33) исходной задачи (32) – (34), и аналогичная матрица

(39)

в двойственной задаче (35) – (37) получаются друг из друга транспонированием (т. е. заменой строк столбцами, а столбцов – строками).

3. Число переменных в двойственной задаче (35) – (37) равно числу ограничений в системе (33) исходной задачи (32) – (34), а число ограничений в системе (36) двойственной задачи – числу переменных в исходной задаче.

4. Коэффициентами при неизвестных в целевой функции (35) двойственной задачи (35) – (37) являются свободные члены в системе (33) исходной задачи (32) – (34), а правыми частями в соотношениях системы (36) двойственной задачи – коэффициенты при неизвестных в целевой функции (32) исходной задачи.

5. Если переменная xj исходной задачи (32) – (34) может принимать только лишь положительные значения, то j–е условие в системе (36) двойственной задачи (35) – (37) является неравенством вида “ ”. Если же переменная xj может принимать как положительные, так и отрицательные значения, то1 – соотношение в системе (54) представляет собой уравнение. Аналогичные связи имеют место между ограничениями (33) исходной задачи (32) – (34) и переменными двойственной задачи (35) – (37). Если i – соотношение в системе (33) исходной задачи является неравенством, то i–я переменная двойственной задачи  . В противном случае переменная уj может принимать как положительные, так и отрицательные значения.

Двойственные пары задач обычно подразделяют на симметричные и несимметричные. В симметричной паре двойственных задач ограничения (33) прямой задачи и соотношения (36) двойственной задачи являются неравенствами вида “  ”. Таким образом, переменные обеих задач могут принимать только лишь неотрицательные значения.

Пример 1. Составить двойственную задачу по отношению к задаче, состоящей в максимизации функции

(40)

при условиях

(41)

(42)

Решение. Для данной задачи

и 

Число переменных в двойственной задаче равно числу уравнений в системе (41), т. е. равно трем. Коэффициентами в целевой функции двойственной задачи являются свободные члены системы уравнений (41), т.е. числа 12, 24, 18.

Целевая функция исходной задачи (40) – (42) исследуется на максимум, а система условий (41) содержит только уравнения. Поэтому в двойственной задаче целевая функция исследуется на минимум, а ее переменные могут принимать любые значения (в том числе и отрицательные). Так как все три переменные исходной задачи (40) – (42) принимают только лишь неотрицательные значения, то в системе условий двойственной задачи должны быть три неравенства вида “ ”. Следовательно, для задачи (40) – (42) двойственная задача такова: найти минимум функции  при условиях

Теорема двойственности

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

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

Нахождение решения двойственных задач

Графический метод решения

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

При этом имеют место три случая:

1) обе задачи имеют решение; 2) решение имеет одна задача; 3) обе задачи не имеют решения.

Пример 1.

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

L = 2х1+7х2®max                  `L = 14у1+8у2®min

                     

 

                       

                                      

                              

10. Метод «искусственного» базиса. М–задача линейного программирования

Для применения алгоритма симплекс-метода система ограничений должна быть разрешена относительно исходного базиса. Однако в некоторых задачах линейного программирования базис усматривается не сразу. В этом случае используется метод «искусственного» базиса. Этот метод заключается в применении правил симплекс-метода к специальной задаче линейного программирования. Она получается из исходной задачи линейного программирования, записанной в канонической форме, добавлением в левые части уравнений системы ограничений, не имеющих предпочтительного вида, «искусственных» неизвестных   В целевую функцию неизвестные   вводят с коэффициентом М [–М] для задачи минимизации [максимизации], где М – достаточно большое положительное число. Составленная таким образом задача называется М–задачей линейного программирования. В процессе решения М–задачи следует вычёркивать из симплекс–таблицы «искусственные» неизвестные   по мере их выхода из базиса. Если все «искусственные» неизвестные вышли из базиса, то получаем исходную задачу линейного программирования. Если оптимальное решение М–задачи содержит хотя бы одну «искусственную» неизвестную или М–задача неразрешима, то исходная задача линейного программирования также неразрешима. Реализацию метода «искусственного» базиса рассмотрим на следующем примере.

Пример. Решить задачу линейного программирования для целевой функции

с системой ограничений

при условиях неотрицательности

Решение. Задача линейного программирования записана в общей форме. Приведём её к канонической форме, вводя дополнительно в систему ограничений неотрицательные балансовые неизвестные   следующим образом:

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

Составим М–задачу линейного программирования, для чего в левые части второго и третьего уравнений системы введём неотрицательные «искусственные» неизвестные   и  :

а в правую часть целевой функции добавим слагаемые   и  :

В этой задаче базис усматривается сразу:

Начальным опорным решением будет план

Разрешим целевую функцию относительно свободных неизвестных   Для этого найдём выражения базисных неизвестных через свободные из последней системы уравнений и подставим эти выражения в целевую функцию. После уединения свободного члена в правой части целевая функция примет вид:

Заполним начальную симплекс-таблицу (табл. 8.1). Последняя строка табл. 8.1 содержит три положительных числа: 3M−3, 8M−2 и 3M−3, следовательно, начальное опорное решение M−задачи линейного програм­мирования не является оптимальным, т. е. не доставляет целевой функции минимальное значение. Выберем столбец, соответствующий наибольшему положительному числу в последней строке.

 

 

Поскольку М – достаточно большое положительное число, выбираем и отмечаем вертикальной стрелкой столбец неизвестной  . Делением свободных членов на соответствующие положительные числа выделенного столбца (дописаны к табл. 8.1 справа) устанавливаем наименьшее частное и выбираем строку базисной неизвестной   (отмечена горизонтальной стрелкой), следовательно, «искусственная» неизвестная   выходит из базиса, а её место занимает неизвестная  . Таким образом, в следующей симплекс-таблице (табл. 8.2) становится на одну неизвестную, а значит, и на один столбец, меньше. Правила составления и заполнения табл. 8.2 те же, что и ранее рассмотренные нами в пункте 7, поэтому оставим их без комментариев.

 

 

 

 

Новая симплекс таблица содержит в последней строке единственное положительное число: M−5/2. Отметим столбец неизвестной   вертикальной стрелкой и убедимся в том, что в его строках есть положительные числа. Найдём частные от деления свободных членов табл. 8.2 на соответствующие положительные числа выделенного столбца (припишем их к табл. 8.2 справа).

Наименьшему частному соответствует строка «искусственной» базисной неизвестной   (отмечаем эту строку горизонтальной стрелкой). Переходя к составлению и заполнению следующей симплекс-таблицы (табл. 8.3), заменяем в базисе неизвестную   неизвестной . Табл. 8.3 уже не содержит неизвестную  , а следовательно, и соответствующего ей столбца. Таким образом, все «искусственные» неизвестные вышли из базиса, т. е. в табл. 8.3 мы получили исходную задачу линейного программирования, записанную в канонической форме.

                                                              Таблица 8.3

Базис

Свободные

члены

3/4

13/8

0

1

1

1/8

3/4

1/4

3/8

1

2

0

−1/8

1/4

1

0

0

1

0

0

−1

Форма L

7/2

−9/4

0

0

0

−1/4

−5/2

 

В последней строке табл. 8.3 нет положительных чисел, следовательно, найдено оптимальное решение задачи линейного программирования, записанной в канонической форме:

 

а соответствующее значение целевой функции равно

Исключая из решения балансовые неизвестные, получим ответ:

 

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]