В этом разделе рассмотрим симплексный алгоритм, который основан на соотношениях между прямой и двойственной задачами. Этот алгоритм эффективно решает определенный класс задач ЛП. Кроме того, он позволяет довести до конца анализ чувствительности модели ЛП.
В двойственном симплекс-методе решение задачи ЛП начинается с недопустимого, но лучшего, чем оптимальное решение. Последовательные итерации этого метода приближают решение к области допустимости без нарушения оптимальности (точнее супероптимальности) промежуточных решений. Когда будет достигнута область допустимых решений, процесс вычислений заканчивается, так как последнее решение будет оптимальным. Он значительно отличается от обычного прямого симплекс-метода, где начальное решение всегда допустимое, но не оптимальное, и промежуточные решения никогда не выходят из пространства допустимых решений.
В двойственном симплекс-методе начальная симплекс-таблица обязательно должна иметь в базисном решении недопустимую (т.е. отрицательную) переменную. Для реализации двойственного симплекс-метода разработаны следующие два условия, выполнение которых гарантирует оптимальность последовательных промежуточных решений и приближение их к области допустимых решений.
Двойственное условие допустимости
В качестве исключаемой переменной х r выбирается базисная переменная, имеющая наибольшее по абсолютной величине отрицательное значение. Если таких переменных несколько, то выбор произволен. Если все базисные переменные неотрицательные, процесс вычислений заканчивается.
Двойственное условие оптимальности
Вводимая в базис переменная определяется как переменная, на которой достигается следующий минимум:
где - коэффициент из симплекс-таблицы, расположенный на пересечении ведущей строки (соответствующей исключаемой переменной х r) и столбца, соответствующего х j. При наличии нескольких альтернативных переменных, выбор делается произвольно.
Пример 3.1 Дана следующая задача ЛП.
Начальная симплекс-таблица этой задачи имеет следующий вид:
Таблица 3.1
Базис | x1 | x2 | x3 | x4 | x5 | Решение |
z | -3 | - 2 | 0 | 0 | 0 | 0 |
x3 | -3 | -1 | 1 | 0 | 0 | -3 |
x4 | -4 | -3 | 0 | 1 | 0 | -6 |
x5 | 1 | 1 | 0 | 0 | 1 | 3 |
Среди дополнительных переменных этой задачи x 3 и x 4 являются избыточными, а х5 – остаточной. Мы умножили каждое равенство, соответствующее избыточным дополнительным переменным, на -1; в результате правые части этих равенств непосредственно указывают на базисные переменные, которые являются недопустимыми (х3=-3, х4=-6, х5=3). Этот подход всегда реализуется в двойственном симплекс-методе. Поскольку для всех j=1,…,5 (мы ищем минимум), начальное базисное решение является оптимальным (но недопустимым). Таким образом, приведенная таблица 3.1 удовлетворяет требованиям начальной таблицы двойственного симплекс-метода, а именно – оптимальности и недопустимости.
Двойственное условие допустимости указывает на переменную х4 (=-6) как на вводимую в базис. Теперь применим двойственное условие оптимальности для определения выводимой переменной. Для этого используем таблицу 3.2.
Таблица 3.2
Базис | x1 | x2 | x3 | x4 | x5 |
z-строка (zj-cj) | -3 | -2 | 0 | 0 | 0 |
x4-строка, | -4 | -3 | 0 | 1 | 0 |
Отношение | 3/4 | 2/3 | - | - | - |
Приведенные отношения показывают, что исключаемой переменной будет х2. Отметим, что кандидатами на исключение будут только переменные х j, у которых коэффициент будет строго отрицательным. По этому критерию переменные х3, х4 и х5 не рассматриваются как кандидаты на исключение из базиса.
Таблица 3.3 получена с помощью известных операций над строками, применяемых в прямом симплекс-методе.
Таблица 3.3
Базис | x1 | x2 | x3 | x4 | x5 | Решение |
z | -1/3 | 0 | 0 | -2/3 | 0 | 4 |
x3 | -5/3 | 0 | 1 | -1/3 | 0 | -1 |
x2 | 4/3 | 1 | 0 | -1/3 | 0 | 2 |
x5 | -1/3 | 0 | 0 | 1/3 | 1 | 1 |
Отношение | 1/5 | - | - | 2 | - |
Последняя таблица 3.3 показывает, что из базиса исключается х3 и вводится х1. В результате получаем симплекс-таблицу 3.4.
Таблица 3.4
Базис | x1 | x2 | x3 | x4 | x5 | Решение |
z | 0 | 0 | -1/5 | - 3 / 5 | 0 | 21/5 |
х1 | 1 | 0 | -3/5 | 1/5 | 0 | 3/5 |
x2 | 0 | 1 | 4/5 | -3/5 | 0 | 6/5 |
x5 | 0 | 0 | -1/5 | 2/5 | 1 | 6/5 |
Решение, представленное в таблице 3.4, допустимо (и оптимально), поэтому вычисления заканчиваются. Это решение имеет вид х1=3/5, х2=6/5 и z=21/5.
На рисунке 3.1 показана последовательность шагов двойственного симплекс-метода при решении примера 3.1. Алгоритм начинается в крайней точке А (которой соответствует недопустимое, но лучшее, чем оптимальное решение), затем он переходит к точке В (которой соответствует недопустимое, но лучшее, чем оптимальное решение) и заканчивается в точке С, уже принадлежащей области допустимых решений.
Рисунок 3.1 - Геометрическая иллюстрация двойственного симплекс-метода
Контрольные вопросы
1 По каким правилам строится двойственная задача ЛП?
2 В чем смысл второй теоремы о двойственности в ЛП?
3 Сформулируйте экономический смысл двойственной задачи для задачи оптимального распределения ресурсов.
4 Что является показателем эффективности производства отдельных видов продукции с позиций критерия оптимальности?