Иллюстрация симплекс-метода.

Лекции 2-3.

Рассмотрим идею симплекс-метода на простом примере:

x2 + 2x4 + 3x5 – 7 = 0

x3 – x4 – 3x5 – 2 = 0 (1)

x1 + + x4 + x5 – 2 = 0

x1, …,x 5 ≥ 0

F = 3 – x4 + x5 → min (2)

Первые три столбца коэффициентов линейно независимы,образуют матрицу ранга 3

0 1 0

0 0 1

1 0 0 .

Поэтому соответствующие переменные x1 , x2 , x3 можно взять в качестве базисных переменных. При этом x4, x5 – свободные переменные.

Заметим, что сведя эту задачу ЛП к стандартному виду с двумя переменными, легко решить ее геометрическим методом (будет рассмотрен на семинаре). Но у нас сейчас задача другая – рассмотреть идею симплекс-метода.

Итак, x4 и x5 - свободные переменные. Выразим через них базисные переменные:

x1 = 2 – x4 – x5

x2 = 7 – 2x4 – 3x (3)

x3 = 2 + x4 + 3x5 ,

а целевая функция в этом примере уже выражена через свободные переменные:

F = 3 – x4 + x5 → min.

Если целевая функция содержит и базисные переменные, исключаем их через (3).

Замечание. Запись (3) задает общее решение СЛУ (1): перебирая все значения свободных переменных x4 и x5, и вычисляя по формулам (3) соответствующие значения базисных переменных x1 , x2 , x3, получим все решения СЛУ (1).

Положим x4 = 0 и x5 = 0, тогда из (3) x1 = 2, x2 = 7, x3 = 2. Соответствующее базисное решение х(1) = (2, 7, 2, 0, 0) оказывается допустимым (неотрицательным), но, скорее всего, не оптимальным. Ему соответствует значение целевой функции F(x(1)) = 3. Как перейти к другому допустимому базисному решению, улучшив также при этом значение целевой функции? Можно ли это сделать за счет изменения (увеличения от 0) x4 или x5? Глядя на целевую функцию (2), видим, что переменная x5 входит в F с положительным коэффициентом, поэтому увеличивать ее нет смысла. А увеличение х4 разумно, оно уменьшает F. До какого предела можно увеличивать х4 (при фиксированном х5=0)? Ведь рост этой переменной в соответствии с условиями (3) вызывает изменение базисных переменных и они в какой-то момент могут перестать быть неотрицательными.

Из ограничений-равенств (3) следует что:

x1 < 0 при x4 > 2 (минимальное значение !)

x2 < 0 при x4 > 3,5

x3 > 0 при любых х4 .

Вывод: Можно и нужно увеличивать х4 до значения, равного 2 (при больших х4, нарушается условие неотрицательности x1 ), при этом получим (в силу (3)) решение:

x1 = 0, x2 = 3, x3 = 4, x4 = 2, x5 = 0 или х(2) = (0, 3, 4, 2, 0). Значение целевой функции улучшилось: F(x(2)) = 1<3= F(x(1)).

В новом решении, как и в предыдущем, две нулевые компоненты. Попытаемся привести систему (1) к новому базису, в котором соответствующие переменные x1 и x5 будут свободными переменными (тогда можно будет убедиться, что x(2) - базисное решение). Для этого выразим «новые» базисные переменные x2, x3 , x4 через «новые» свободные переменные x1 и x5.

При этом, как говорят, переменная x4 вводится в базис, а x1 выводится из базиса.

Из первого уравнения в (3) выразим новую базисную переменную x4:

x4 = 2 – х1 – х5.

Заметим, что это именно то уравнение, которое «остановило» рост х4 в (3). Исключим x4, подставив это выражение для него в два других уравнения в (3) и в целевую функцию. Получим следующее представление системы ограничений в новом базисе (x2, x3 , x4):

x2 = 3 + 2х1 – х5

x3 = 4 – х1 + 2х5

x4 = 2 – х1 – х5

F = 1 + x1 +2x5 → min

В новом базисном решении F(x(2)) = 1. Так как все коэффициенты целевой функции положительны, никакие допустимые изменения свободных переменных не уменьшают целевой функции. Таким образом, мы имеем в точке х(2) = (0, 3, 4, 2, 0) оптимум (минимум).

Замечание. В этой задаче оптимальное решение найдено за один шаг (итерацию). Если в новом базисе целевая функция имела бы отрицательный коэффициент (при некоторой свободной переменной), следовало бы проделать вторую итерацию, аналогичную первой. Сходимость симплекс-метода следует из того, что число допустимых базисов конечно, не превосходит числа сочетаний из n (число всех переменных) по m (ранг системы ограничений-равенств). Однако полного перебора всех допустимых базисов не происходит, так как на каждой операции значение целевой функции улучшается и базисы, «худшие», чем текущий, в рассмотрение далее не попадают.

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

 


Лекция 3.

Пример: как перейти от базиса к базису

1)2x1 + x2 – x3 = 3

x1 + x3 – x4 = -2

3x1 - x3 + x5 = 1

x1 x2 x3 x4 x5

x2 2 1 -1 0 0 3 5

x4 1 0 2 1 0 -2 2

x5 3 0 -2 0 1 1 3

Соответственно базисное решение: (0, 3, 0, -2, 1). Перейдем к другому базису, введя в число базисных переменных х3 и выведя х4:

x1 x2 x3 x4 x5

x2 5/2 1 0 1/2 0 2 6

x3 1/2 0 1 1/2 0 -1 1

x5 4 0 0 1 1 -1 5

Новое базисное решение: (0, 2, -1, 0, -1)

2) Пусть был допустимый базис (x2,x4,x3) и соответствующее базисное решение (0,2,3,1,0)

x1 x2 x3 x4 x5 b ∑

2/1 x2 1 1 0 0 -3 2 1

1/3 x4 3 0 0 1 1 1 6

x3 0 0 1 0 -2 3 2

Исходное базисное решение (0, 2, 3, 1, 0) и базис допустимы.

Введем х1 в базис, выведя х2.

x1 x2 x3 x4 x5 b ∑

x1 1 1 0 0 -3 2 1

x4 0 -3 0 1 10 -5 9

x3 0 0 1 0 -2 3 2

Придем к недопустимому базису x(2) = (2, 0, 3, -5, 0). Введение в базис переменной x1 с выведением x4 привело бы нас к допустимому базису

Как осуществить переход от допустимого к допустимому базису.

  1. разрешающий столбец Aj (вводимый в базис) должен содержать хотя бы один положительный элемент aij > 0.
  2. для всех положительных элементов этого столбца Aj надо подсчитать отношение bi/aij и выбрать строку i, для которой оно минимум.

 








Дата добавления: 2016-03-27; просмотров: 631;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.013 сек.