Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
В общем случае на переменные могут накладываться двусторонние ограничения aj£ xj£bj. Каждое такое ограничение порождает 2 равенства в канонической модели и, следовательно, увеличивает размер симплекс-таблицы на 2 строки. Если сместить начало отсчета на aj, ограничение примет вид 0 £ xj£ dj, где dj = bj - aj, и таблица будет увеличиваться только на 1 строку. Однако, если такие ограничения накладываются на многие переменные, увеличение размеров симплекс-таблицы будет значительным.
Идея метода с двусторонними ограничениями состоит в учете ограничения сверху аналогично условию xj³ 0. Как было показано в разд. 4.9.2, выполнение этого условия обеспечивается выбором направляющей строки, т.е. значения вводимой переменной, равного q0. Чтобы переменные в новом базисном решении помимо неотрицательности были не больше dj, усложним выбор значения вводимой переменной. Предельное значение q по условию неотрицательности, вычисляемое по формуле (4.9), обозначим , а предельное значение по ограничению сверху – . Из формулы (4.11) следует, что верхнего значения могут достигать только переменные с отрицательными коэффициентами air. Приравнивая эти переменные значениям dj, получаем формулу для вычисления :
(4.24)
Новое базисное решение будет определяться по формуле (4.13), в которой q0 берется из соотношения
q0 =min(). (4.25)
Соответственно и направляющая строка выбирается по q0. В симплекс-таблице вместо одного столбца для q удобнее иметь два: для q’ и q ’’. Кроме того, добавляется одна строка (сверху), в которой записываются значения небазисных переменных: выводимая из базисного решения переменная xk равна нулю, если в (4.25) < , и равна dk в противном случае.
Изменяется также признак оптимальности базисного решения. Условие Δ j ³0 остается в силе только для нулевых небазисных переменных. К нему добавляется условие для небазисных переменных на верхнем уровне: Δ j £0. Поэтому в случае неоптимальности текущего решения направляющий столбец выбирается по max|Δ j | из отрицательных для xk=0 и положительных для xk = dk. Симплекс-преобразование (пересчет таблицы) не изменяется.
4.10. Модифицированный алгоритм
Этот алгоритм отличается от рассмотренного в разд. 4.9.6 тем, что основан на обратной матрице базиса. Для простоты расссмотрим случай с односторонними ограничениями на переменные. Тогда небазисные переменные равны нулю, а система условий задачи принимает вид
AbXb=B, (4.26)
где Ab – базисная матрица m x m, Xb – вектор базисных переменных. Так как определитель базисной матрицы не равен нулю, существует обратная матрица . Из (4.26) следует, что базисные переменные можно вычислять по формуле
(4.27)
Теперь покажем, что относительные оценки также можно определять по обратной матрице. Для этого выполним ряд преобразований:
(4.28)
Вектор найдем из разложения вектора условий Aj по базису
(4.29)
Подставляя (4.29) в (4.28), получаем
Произведение не зависит от индекса j, поэтому окончательно будем иметь
, (4.30)
где
(4.31)
Таким образом, для решения задачи модифицированным симплекс-методом достаточно вести не всю таблицу, а только обратную матрицу. При единичном начальном базисе обратную матрицу вычислять не надо – она также единичная. Имея обратную матрицу текущего решения, вычисляем сначала вектор по формуле (4.31), а затем оценки небазисных переменных по формуле (4.30). Если признак оптимальности не выполняется, находим минимальную оценку Коэффицинты разложения air вектора Аr по текущему базису находятся по формуле (4.29):
где Ar – вектор условий вводимой переменной xr, который берется из канонической модели. Столбец ar добавляем к обратной матрице в качестве направляющего. Далее действуем, как в стандартном методе, то есть для положительных air вычисляем q, находим направляющую строку и направляющий элемент. Затем получаем новую обратную матрицу путем симплекс-преобразования теущей обратной матрицы. После выполнения признака оптимальности решение находится по формуле (4.27).
Очевидно, что преимущество этого метода перед стандартным тем выше, чем больше разница между общим числом переменных и числом базисных переменных канонической модели. Однако обнаружение неразрешимости задачи из-за неограниченности критерия может происходить на более поздних итерациях: только тогда, когда соответствующее условие имеет место в направляющем (добавляемом) столбце.
Новую обратную матрицу можно находить не только симплекс преобразованием старой, но и по формуле
,
где E k – почти единичная матрица (только k -й столбец отличается от единичного). Если эту формулу применять на всех итерациях, то для l -й обратной матрицы получим
.
Такое представление обратной матрицы называют мультипликативным. По сравнению с обычным симплекс-преобразованием оно уменьшает объем вычислений на каждой итерации и тем сильнее, чем меньше плотность матрицы условий.
Дата публикования: 2015-01-23; Прочитано: 315 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!