Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Исследование операций small.doc
Скачиваний:
2
Добавлен:
02.09.2019
Размер:
660.99 Кб
Скачать

Алгоритм симплекс-метода

Рассмотрим алгоритм симплекс-метода применитетельно к общей задаче ЛП. На предварительном шаге алгоритма определяется возможность применения симплекс-метода к задаче ЛП.

Шаг 0. Прежде чем применять симплекс-метод к общей задаче линейного программирования, ее следует привести к каноническому виду. После приведения задачи к каконическому виду будем иметь:

при ограничениях

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

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

Базис

сБ

c1

c2

cn+1

cn+k

bi

i

x1

x2

xn+1

xn+k

xn+1

cn+1

a11

a12

1

0

b1

xn+k

cn+k

ak1

ak2

0

1

bk

j0

1

2

n+1

n+k

z

Шаг 1. По симплекс-таблице определяется опорное решение x(0) следующим образом: все свободные переменные приравниваются нулю, а базисные – соответствующим значениям столбца . Начальный опорный план имеет вид: . Проверим его на оптимальность, для этого заполним строку индексов в таблице, по следующей формуле:

, или

– значение целевой функции в точке .

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

Шаг 2. Для смены базиса выбираются ведущий (разрешающий) столбец и ведущая (разрешающая) строка из следующих условий:

,

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

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

Ш аг 3. Строится новая симплекс-таблица, в которой вместо базисной переменной включена . Новые коэффициенты и пересчитываются по следующим формулам:

,

Перейти к шагу 1.

Последовательное выполнение вычислений шагов 1–3 составляет одну итерацию симплекс-метода.

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

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