![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
Двухфазный симплекс-метод (или. метод искусственного базиса) применяется в тех случаях, когда и задаче ЛП в канонической форме затруднительно определить н.д.б.р. с помощью эквивалентных преобразований (привести систему ограничений к диагональному виду).
Пример 2.4. Следующую задачу ЛП решить двухфазным симплекс-методом:
min f(x)=x1-x2+1 (11)
при ограничениях
(12)
x1, x2, x3≥0 (13)
Первая фаза (цель: при- помощи искусственного базиса и симплекс-метода определить базисные переменные из числа исходных переменных).
В систему (12) вводим искусственные переменные x3≥0, x5≥0, x6≥0 (предварительно умножив обе части второго неравенства на -1), новую целевую функцию как сумму всех искусственных переменных, а старую присоединяем к ограничениям:
min z(x) = x4 + x5 + x6 (14)
при ограничениях
(15)
Искусственные переменные x4, x5, x6 выбираем в качестве базисных, а все остальные x1, x2, x3 - небазисных. По правилу симплекс-метода исключаем базисные переменные из целевой функции (14) (при помощи уравнений системы (17), содержащих эти переменные):
z(x)= -2 x1 - 15 x2 - 5 x3 + 15
или, что все равно
z(x)+2x1+15 x2+5 x3=15 (16)
Начальное д.б.р.
x0=(x10, x20, x30, x40, x50, x60)=(0, 0, 0, 1, 3,11)
называется искусственным базисом. При помощи этого базиса, и выражений (15), (16) строим начальную симплекс-таблицу I-ой фазы.
| x1 | x2 | x3 | x4 | x5 | x6 | |||
z | |||||||||
f | -1 | ||||||||
![]() | (1) | ||||||||
x5 | -1 | -1 | |||||||
x3 |
До конца I фазы роль нулевой строки играет строка для z, все остальное как в симплекс-методе (см. примеры 5,6). Следует только заметить, что строка для f не участвует в выборе ведущей строки.
Из (16) видно, что min z(x) = 0 и достигается при x4= x5 = x6=0, те, задача (16)-(18) будет решена, если все искусственные переменные будут вытеснены из базиса, а z=0. Это и будет означать конец первой фазы и переход ко второй фазе.
Обратите внимание, что в первой таблице ведущей может быть любая из последних трех строк (предвестник зацикливания). В таких случаях можно выбрать любой из них - выберем первую строку.
Так как искусственная переменная x4 выходит из базиса, то соответствующий столбик в дальнейшем можно исключить.
В результате соответствующих преобразований получим вторую симплекс-таблицу.
x1 | x2 | x3 | x4 | x5 | ||
z | -28 | -40 | ||||
f | -3 | -3 | ||||
x2 | ||||||
x5 | -7 | -10 | ||||
x6 | -21 | -30 |
Из таблицы следует, что min z достигнут, однако искусственные переменные x5 и x6 еще не выведены из базиса. В такой ситуации правила симплекс-метода "не работают" (т.к. ввиду отсутствия в нулевой строке положительных оценок нельзя выбрать ведущий столбик). Задача здесь одна - вывести оставшиеся искусственные переменные из базиса. Выведем сначала x5. Умножим все элементы этой строки на -1 (что допустимо, т.к. в нулевом столбике стоит 0). Введем в базис вместо x5 переменную x1. С этой целью строку для x5 поделим на 7 и с "ведущим элементом" 1 выполним элементарные преобразования (как в симплекс-методе). В результате получим таблицу:
x1 | x2 | x3 | x6 | ||
z | |||||
f | 9/7 | ||||
x2 | 1/7 | ||||
x1 | 10/7 | ||||
x6 |
Остается в базисе еще x6. Ее из числа базисных вывести нельзя, так как все элементы таблицы равны нулю, кроме 1 в столбике для x6. Это говорит о том, что в системе (14) третье уравнение было "лишним" и потому последнюю строку таблицы можно вычеркнуть. Действительно, третье уравнение в (14) является линейной комбинацией первых двух (оно получается вычитанием второго уравнения, умноженного на 3, из первого уравнения, умноженного на 2),
Вычеркивая столбик для x6 и строку для z приходим к таблице,
x1 | x2 | x3 | ||
f | 9/7 | |||
x2 | 1/7 | |||
x1 | 10/7 |
содержащей только элементы исходной задачи (13)-(15) и с базисными переменными изчисла исходных переменных.
Таким образом, задача I фазы выполнена.
Вторая фаза (цель: применяя обычный симплекс-метод к полученной в результате I фазы таблице, получить оптимальное решение исходной задачи).
Д.б.р. для последней таблицы есть
x0=(0, 1, 0)
Заметим, что это вырожденное д.б.р., так как в нем базисная переменная x1 - 0. То есть здесь мы можем получить зацикливание.
В качестве упражнения II фазу предлагается сделать самостоятельно.
Теперь можно привести алгоритм двухфазного симплекс-метода:
1) привести задачу ЛП к канонической форме;
2) ввести в ограничения искусственные переменные и составить новую целевую функцию z;
3) исключить из новой целевой функции все искусственные переменные;
4) используя искусственные переменные в качестве базисных, построить начальную симплекс-таблицу;
5) использовать симплекс-метод, исключая из таблиц столбики для искусственных переменных по мере их выхода из базиса до тех пор, пока min z=0 и все искусственные переменные не будут выведены из базиса;
6) вычеркнуть строчку для z и перейти ко второй фазе;
7) во второй фазе, к таблице, полученной в результате первой фазы, применить симплекс-метод до тех пор, пока не найдется оптимальное решение исходной задачи или не выявится его отсутствие.
П р и м е ч а н и я к двухфазному симплекс-методу
1. Если в результате первой фазы окажется, что min z > 0, то система ограничений исходной задачи (в канонической форме) несовместна. Во всех остальных случаях первая фаза разрешима.
2. Если min z= 0 и в таблице остались искусственные переменные, то, используя элементарные преобразования, эти переменные следует вывести из числа базисных, а вместо них ввести исходные переменные (см. пример 7).
3. Пусть каноническая форма задачи ЛП получена с помощью слабых переменных. Применение двухфазного симплекс-метода упростится, если искусственные переменные ввести только в те ограничения, ж которых слабая переменная либо отсутствует (исходное ограничение-равенство), либо не может войти в базис (введена в ограничение со знаком минус).
Дата публикования: 2015-04-06; Прочитано: 2237 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!