- •Введение
- •Задание 1. Графический метод решения задач линейного программирования
- •Задание 2. Решение задач лп симплекс-методом
- •Задание 3. Метод искусственного базиса
- •Задание 4. Двойственная задача лп
- •Задание 5. Двойственный симплекс-метод
- •Задание 6. Решение задач целочисленного линейного программирования
- •Задание 7. Транспортная задача
- •Задание 8. Сетевое планирование
- •Задание 9. Матричные игры
- •Библиографический список
Задание 4. Двойственная задача лп
Пусть задача ЛП задана в постановке (1)-(3), причем все ограничения в виде неравенств приведены к виду Двойственной к ней называется задача ЛП, построенная по следующим правилам:
Количество переменных равно m, обозначим их y1,…,ym. Целевая функция выглядит как
Каждому ограничению соответствует условиеyi ≥ 0.
Каждому ограничению соответствует условие “yi произвольного знака”.
Каждому ограничению xj ≥ 0 соответствует
Каждому условию “xj произвольного знака” соответствует
Ограничения, соответствующие друг другу, называются сопряженными.
Известно, что если одна из пары двойственных задач разрешима, то разрешима и другая, причем оптимальные значения целевых функций совпадают. Для решения двойственной задачи можно воспользоваться симплекс-методом. Если уже известно решение прямой задачи, то значения y1,…,ym можно также найти с помощью условий дополняющей нежесткости (УДН): решения x и y являются оптимальными тогда и только тогда, когда в каждой паре сопряженных ограничений хотя бы одно выполнено как равенство. Необходимо выписать все эти равенства и решить полученную систему линейных уравнений относительно y1,…,ym.
Варианты заданий. Поставить и решить двойственную задачу ЛП для задания № 2. Для проверки убедиться, что решение является допустимым и оптимальное значение целевой функции совпадает с оптимумом прямой задачи.
Задание 5. Двойственный симплекс-метод
Если задача приведена к специальному виду, но симплексная таблица оказалась недопустимой (некоторые из bi меньше нуля), но все коэффициенты c1,…,cn неотрицательны, то для решения такой задачи вместо метода искусственного базиса можно использовать двойственный симплекс-метод. По сути он является применением обычного симплекс-метода к двойственной задаче. Симплексная таблица записывается в виде
|
x0 |
x1 x2 . . . xn |
f |
c0 |
c1 c2 . . . cn |
x1 x2 ... xn |
0 0 ... 0 |
–1 0 . . . 0 0 –1 . . . 0 . . . 0 0 . . . –1 |
xn+1 ... xn+m |
b1 ... bm |
a11 a12 . . . a1n . . . am1 am2 . . . amn |
Элементы таблицы будем обозначать через αij , где i = 0,…,n+m обозначает номер строки, а j=0,…,n обозначает номер столбца.
Алгоритм двойственного симплекс-метода
Шаг 0. Начать работу с двойственно допустимой симплекс-таблицы.
Шаг 1. Проверка оптимальности: если все элементы столбца x0 неотрицатель-
ны, то базисное решение оптимально.
Шаг 2. Проверка неразрешимости: если существует строка p, такая, что αp0 < 0 и
αpj ≥ 0 для всех столбцов j=1,…,n, то в задаче нет допустимых решений.
Шаг 3. Выбор ведущей строки: выбрать p так, что αp0 < 0.
Шаг 4. Выбор ведущего столбца: выбрать q ≠ 0 так, что отношение α0q /αpq
максимально среди всех столбцов, где αpq < 0.
Шаг 5. Пересчет таблицы:
ведущий столбец делится на (– αpq ), ведущий элемент заменяется на –1;
из каждого столбца j ≠ q вычитается ведущий, умноженный на αpj /αpq.
Варианты заданий. Решить двойственным симплекс-методом задачу задания №3.