Описание II алгоритма
Второй алгоритм (или метод обратной матрицы) симплекс метода основан на ином способе вычисления оценок
векторов условий Аj, чем в первом алгоритме.
Рассматривается задача линейного программирования в канонической форме (2.1) - (2.3). Пусть Х – опорный план с базисом
. Все параметры, необходимые для оценки плана на оптимальность и перехода к лучшему плану, можно получить, преобразовывая от шага к шагу элементы матрицы
.
Действительно, зная обратную матрицу
, можно получить базисные составляющие опорного плана:

и вычислить оценки векторов условий относительно текущего базиса
, (6.1)
предварительно определив вектор-строку
по формуле

или
. (6.2)
Здесь
- вектор-строка из коэффициентов линейной формы, отвечающих базисным переменным.
Оценки
позволяют установить оптимальность рассматриваемого опорного плана и определить вектор Ак, вводимый в базис. Коэффициенты
разложения вектора Ак по текущему базису вычисляются по формуле
.
Как и в I алгоритме, вектор, подлежащий исключению из базиса, определяется величиной
.
Таким образом при втором алгоритме на каждом шаге запоминаются базисные компоненты
, обратная матрица
, значение линейной формы F(X) и вектор Y, соответствующие текущему опорному плану Х. Элементы столбцов матрицы
удобно рассматривать как коэффициенты
разложения единичных векторов
по векторам базиса. Рекуррентные формулы, связывающие параметры двух последовательных итераций
; (6.3)
. (6.3)
Здесь
.
Результаты вычислений сводятся в основные таблицы (вида табл. 6.1) и вспомогательную таблицу (вида табл. 6.2); столбцы В, е1, …, еm основных таблиц (все m +1 позиций) называют главной частью этих таблиц. Столбец Аk – разрешающий столбец, строка l – разрешающая строка.
Таблица 6.1 Таблица 6.2
| N |
|
| B |
| … |
|
| t | N | B |
|
| … |
| |
|
|
|
| … |
|
|
|
|
| … |
| ||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
| l |
|
|
|
| … |
|
|
| m |
|
|
| … |
| |
|
|
|
|
|
|
|
|
| m +1 | C |
|
| … |
| |
| M |
|
|
|
| … |
|
|
|
|
| … |
| |||
| m +1 | – | – |
|
| … |
|
| – |
|
|
| … |
| ||
|
|
| … |
| |||||||||||
| … | … | … | … | … | … |
Краткое описание алгоритма.
1. Нулевая итерация:
а) составляется вспомогательная табл. 6.2, в которую вносятся параметры задачи; дополнительная строка таблицы с номером ν заполняется по мере выполнения ν -й итерации;
б) составляется основная табл. 6.1 с номером 0, в которой заполняются первые m строк, за исключением последних двух столбцов Аk и t. Элементы
и
определяются скалярными произведениями (Cx, ej) и (Cx, B) соответственно. Нулевая итерация заканчивается заполнением нулевой дополнительной строки вспомогательной таблицы с оценками
.
2. (ν +1)-я итерация.
Пусть ν -я итерация закончена. В результате заполнена ν -я основная таблица, за исключением двух последних столбцов, и ν -я дополнительная строка вспомогательной таблицы. Просматривается эта строка. Если все
, то опорный план
- решение задачи. Если хотя бы одна
, то в базис вводится вектор Аk с
(обычно
). После этого заполняется столбец
основной таблицы. В позицию (m +1) этого столбца заносится оценка
вектора Аk. Остальные элементы этого столбца равны
.
Возможны два случая:
1) все
- задача неразрешима;
2)
хотя бы для одного i. В этом случае, также как и в первом алгоритме, заполняется столбец (t) основной таблицы ν, определяется разрешающий элемент
. Главная часть заполняется по рекуррентной формуле (6.3). Заполняется (ν +1)-я дополнительная строка вспомогательной таблицы. На этом заканчивается (ν +1)-я итерация.
Решение М-задачи
Таблица 6.3

Таблица 6.4

Задача (5.4), (5.5) имеет опорный план Х0 = (0, 0, 0,
,
,
,
, 0,
) с базисом
. Следовательно,
. Процесс решения М-задачи вторым алгоритмом приведен в основной табл. 6.3 и вспомогательной табл. 6.4.
Решение М-задачи получено за 5 шагов. Оптимальный план ее равен
и
. В оптимальном плане М-задачи искусственная переменная х9 = 0, поэтому
- решение задачи (2.12), (2.13) и
.
Окончательное решение задачи определения плана смешения компонентов полностью повторяет решение, рассмотренное в завершающей части п.4 (см. стр.11-12).