- •Содержание
- •Введение
- •Тема 1 Введение в линейное программирование
- •1.1 Исторический экскурс
- •1.2 Ограничения в модели линейного программирования
- •1.3 Графическое решение задачи линейного программирования
- •1.4 Графический анализ чувствительности
- •1.4.1 Изменение коэффициентов целевой функции
- •1.4.2 Стоимость ресурсов
- •Контрольные вопросы
- •Тема 2 Симплекс-метод
- •2.1 Общая постановка задачи линейного программирования
- •2.2 Некоторые свойства планов
- •2.3 Алгоритм симплекс-метода
- •Контрольные вопросы
- •Тема 3 Двойственная задача и анализ чувствительности
- •3.1 Постановка двойственной задачи
- •3.2 Основные теоремы о двойственности
- •3.3 Решение двойственных задач
- •3.4 Двойственный симплекс-метод
- •Контрольные вопросы
- •Тема 4 Анализ чувствительности оптимального решения
- •4.1 Матричное представление симплекс-таблиц
- •Анализ чувствительности
- •4.2.1 Изменения, влияющие на допустимость решения
- •4.2.2 Изменения, влияющие на оптимальность решения
- •Контрольные вопросы
- •Тема 5 Целочисленное линейное программирование
- •5.1 Метод ветвей и границ
- •Пример 5.1
- •5.2 Метод отсекающих плоскостей
- •Пример 5.2
- •6.1.2 Интерпретация метода потенциалов как симплекс-метода
- •6.1.3 Определение начального решения
- •6.1.4 Метод потенциалов
- •6.2 Задача о назначениях
- •Контрольные вопросы
- •Тема 7 Основы сетевого планирования
- •7.1 Основные понятия теории графов
- •Пример 7.1 График реконструкции промышленного цеха
- •7.2 Метод критического пути
- •Построение временного графика
- •Определение запасов времени
- •Контрольные вопросы
- •Тема 8 Задача о максимальном потоке
- •8.1 Постановка задачи о максимальном потоке
- •8.2 Решение задачи о максимальном потоке. Алгоритм Фалкерсона
- •8.3 Алгоритм Эдмондса-Карпа
- •Контрольные вопросы
- •Приложение а
- •Библиографический список
- •Заключение
3.4 Двойственный симплекс-метод
В этом разделе рассмотрим симплексный алгоритм, который основан на соотношениях между прямой и двойственной задачами. Этот алгоритм эффективно решает определенный класс задач ЛП. Кроме того, он позволяет довести до конца анализ чувствительности модели ЛП.
В двойственном симплекс-методе решение задачи ЛП начинается с недопустимого, но лучшего, чем оптимальное решение. Последовательные итерации этого метода приближают решение к области допустимости без нарушения оптимальности (точнее супероптимальности) промежуточных решений. Когда будет достигнута область допустимых решений, процесс вычислений заканчивается, так как последнее решение будет оптимальным. Он значительно отличается от обычного прямого симплекс-метода, где начальное решение всегда допустимое, но не оптимальное, и промежуточные решения никогда не выходят из пространства допустимых решений.
В двойственном симплекс-методе начальная симплекс-таблица обязательно должна иметь в базисном решении недопустимую (т.е. отрицательную) переменную. Для реализации двойственного симплекс-метода разработаны следующие два условия, выполнение которых гарантирует оптимальность последовательных промежуточных решений и приближение их к области допустимых решений.
Двойственное условие допустимости
В качестве исключаемой переменной х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 |
Среди дополнительных переменных
этой задачи x3
и x4
являются избыточными, а х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 |
|
-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 - Геометрическая иллюстрация двойственного симплекс-метода
