Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
149
Добавлен:
10.12.2013
Размер:
974.85 Кб
Скачать

4.9.8. Учет двусторонних ограничений

В общем случае на переменные могут накладываться двусторонние ограничения j xjj. Каждое такое ограничение порождает 2 равенства в канонической модели и, следовательно, увеличивает размер симплекс-таблицы на 2 строки. Если сместить начало отсчета наj, ограничение примет вид 0 xj dj, гдеdj=j - j, и таблица будет увеличиваться только на 1 строку. Однако, если такие ограничения накладываются на многие переменные, увеличение размеров симплекс-таблицы будет значительным.

Идея метода с двусторонними ограничениями состоит в учете ограничения сверху аналогично условию xj 0. Как было показано в разд. 4.9.2, выполнение этого условия обеспечивается выбором направляющей строки, т.е. значения вводимой переменной, равного 0. Чтобы переменные в новом базисном решении помимо неотрицательности были не больше dj, усложним выбор значения вводимой переменной. Предельное значение по условию неотрицательности, вычисляемое по формуле (4.9), обозначим, а предельное значение по ограничению сверху ­–. Из формулы (4.11) следует, что верхнего значения могут достигать только переменные с отрицательными коэффициентамиir. Приравнивая эти переменные значениям dj, получаем формулу для вычисления:

(4.24)

Новое базисное решение будет определяться по формуле (4.13), в которой 0 берется из соотношения

0=min(). (4.25)

Соответственно и направляющая строка выбирается по 0. В симплекс-таблице вместо одного столбца для удобнее иметь два: для и ’’. Кроме того, добавляется одна строка (сверху), в которой записываются значения небазисных переменных: выводимая из базисного решения переменная xk равна нулю, если в (4.25) <, и равнаdk в противном случае.

Изменяется также признак оптимальности базисного решения. Условие Δj0 остается в силе только для нулевых небазисных переменных. К нему добавляется условие для небазисных переменных на верхнем уровне: Δj0. Поэтому в случае неоптимальности текущего решения направляющий столбец выбирается по max| Δj| из отрицательных дляxk=0 и положительных для xk=dk. Симплекс-преобразование (пересчет таблицы) не изменяется.

4.10. Модифицированный алгоритм

Этот алгоритм отличается от рассмотренного в разд. 4.9.6 тем, что основан на обратной матрице базиса. Для простоты расссмотрим случай с односторонними ограничениями на переменные. Тогда небазисные переменные равны нулю, а система условий задачи принимает вид

AbXb=B, (4.26)

где Ab базисная матрица mxm,Xb – вектор базисных переменных. Так как определитель базисной матрицы не равен нулю, существует обратная матрица . Из (4.26) следует, что базисные переменные можно вычислять по формуле

(4.27)

Теперь покажем, что относительные оценки также можно определять по обратной матрице. Для этого выполним ряд преобразований:

(4.28)

Вектор найдем из разложения вектора условийAj по базису

(4.29)

Подставляя (4.29) в (4.28), получаем

Произведение не зависит от индексаj, поэтомуокончательно будем иметь

, (4.30)

где

(4.31)

Таким образом, для решения задачи модифицированным симплекс-методом достаточно вести не всю таблицу, а только обратную матрицу. При единичном начальном базисе обратную матрицу вычислять не надо – она также единичная. Имея обратную матрицу текущего решения, вычисляем сначала вектор по формуле (4.31), а затем оценки небазисных переменных по формуле (4.30). Если признак оптимальности не выполняется, находим минимальную оценку Коэффицинты разложенияir вектора Аr по текущему базису находятся по формуле (4.29):

где Ar – вектор условий вводимой переменнойxr, который берется из канонической модели. Столбецrдобавляем к обратной матрице в качестве направляющего. Далее действуем, как в стандартном методе, то есть для положительныхir вычисляем , находим направляющую строку инаправляющий элемент. Затем получаем новую обратную матрицу путем симплекс-преобразования теущей обратной матрицы. После выполнения признака оптимальности решение находится по формуле (4.27).

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

Новую обратную матрицу можно находить не только симплекс преобразованием старой, но и по формуле

,

где Ek – почти единичная матрица (толькоk-й столбец отличается от единичного). Если эту формулу применять на всех итерациях, то дляl-й обратной матрицы получим

.

Такое представление обратной матрицы называют мультипликативным.По сравнению с обычным симплекс-преобразованием оно уменьшает объем вычислений на каждой итерации и тем сильнее, чем меньше плотность матрицы условий.

Соседние файлы в папке Лекции по Гольду