Научная электронная библиотека
Монографии, изданные в издательстве Российской Академии Естествознания

2.7.2. Основы симплекс-метода

Рассмотрим задачу ЛП с  m ограничениями и  переменными, записанную в стандартной форме. Как правило, число уравнений задачи меньше числа переменных (т.е. m < n ), поэтому множество её допустимых решений бесконечно. Следовательно, выбор наилучшего допустимого решения, максимизирующего f (x), нетривиален.

Известен классический метод решения систем линейных уравнений, называемый методом Гаусса - Жордана. Основная идея этого метода состоит в сведении системы  m уравнений с n  неизвестными к каноническому или ступенчатому виду при помощи элементарных операций над строками. К ним относятся:

  • 1. Умножение любого уравнения системы на положительное или отрицательное число.
  • 2. Прибавление к любому уравнению другого уравнения системы, умноженного на положительное или отрицательное число.

При использовании первых  m переменных ( p) каноническая система имеет следующий вид:

             p              (2-4)

Переменные  pвходящие с единичными коэффициентами только в одно уравнение системы и с нулевыми - в остальные, называются базисными или зависимыми. В канонической системе каждому уравнению соответствуют ровно одна базисная переменная. Остальные  n - m переменных ( p) называются независимыми или небазисными. При записи системы в каноническом виде все её решения можно получать, присваивая независимым переменным произвольные значения и решая затем получающуюся каноническую систему относительно зависимых переменных. Базисным решением системы в каноническом виде называется решение, полученное при нулевых значениях небазисных переменных.

Например, в системе (2-4) одно из базисных решений задаётся как  pЕсли  pк тому же неотрицательны, то полученное решение называется допустимым базисным решением. В указанной системе  для удобства записи в качестве базисных используются первые  m переменных. В действительности для получения канонической системы уравнений и базисного решения любые  m из n  переменных можно выбрать в качестве базисных.

Это означает, что максимальное число базисных решений задачи ЛП с  ограничениями и  переменными, записанной в стандартной форме, конечно и выражается следующим образом:

p.

Интуитивный подход к решению задачи ЛП, обладающий оптимальным решением, состоит в нахождении при помощи метода Гаусса - Жордана всех возможных допустимых базисных решений и последующем выборе решения, которому соответствует наилучшее значение целевой функции. Однако при решении задач ЛП симплекс-методом оказывается более эффективным, так как при этом анализируется лишь часть всех допустимых базисных решений.

Симплекс-метод разработан Дж. Данцигом. Он представляет собой итерационную процедуру решения задач ЛП, записанных в стандартной форме. При этом требуется, чтобы система ограничений - равенств была приведена к каноническому виду, что даёт возможность легко находить допустимое базисное решение. Алгоритм симплекс-метода включает следующие основные шаги.

  • 1. Выбор начального допустимого базисного решения.
  • 2. Переход от начального решения к другому допустимому базисному решению с лучшим значением целевой функции. На этом шаге исключаются из рассмотрения все допустимые базисные решения, которые хуже текущего решения. В силу этого обстоятельства симплекс-метод гораздо эффективнее упомянутого выше "прямого" подхода к решению задач ЛП.
  • 3. Продолжение поиска допустимых базисных решений, улучшающих значения целевой функции. Если некоторое допустимое базисное решение нельзя улучшить, оно является оптимальным, и алгоритм симплекс-метода завершает свою работу.

Рассмотрим шаг 2 симплекс-метода в предположении, что базисное решение, задаваемое системой (2-4), допустимо. Пусть допустимое базисное решение задано в следующем виде:

базисные переменные p

небазисные переменные p

Множество базисных переменных называется базисом и обозначается через xB. Вектор коэффициентов при базисных переменных обозначается через cB. Для начального базиса:

p

Поскольку небазисные переменные равны 0, значение целевой функции f(x), соответствующее начальному допустимому базисному решению, находится по формуле:

p.

Симплекс-метод даёт возможность проверить существование допустимого базисного решения с большим значением f(x). Для этого сначала проводится проверка оптимальности рассматриваемого решения. Если оно не оптимально, симплекс-метод позволяет перейти к смежному допустимому базисному решению с большим (или, по крайней мере, не меньшим) значением f(x). Оно отличается от рассматриваемого только одной базисной переменной.

Для получения смежного допустимого базисного решения симплекс-метод превращает одну из базисных переменных в небазисную и вводит одну из небазисных переменных в базис. Их необходимо выбрать так, чтобы замена одной из них на другую давала максимальное приращение целевой функции. В любом допустимом базисном решении базисные переменные положительны, а небазисные равны 0. Следовательно, превращение небазисной переменной в базисную приводит к увеличению её значения от 0 до некоторой положительной величины. Вводимая в базис переменная должна давать улучшение значения f(x). Для выбора вводимой в базис переменной следует присвоить небазисной переменной значение, равное 1, и вычислить изменение целевой функции.

Рассмотрим небазисную переменную p. Пусть ей присвоено значение, равное единице; исследуем получаемое при этом изменение целевой функции. При этом следует учесть, что, поскольку рассматриваются только смежные допустимые базисные решения, то остальные небазисные переменные по прежнему равны нулю, поэтому систему (2-4) можно переписать в следующем виде:

   p        (2-5)

Из системы (2-5) при  возрастании  pот 0 до 1 получаем новое решение:

p

Новое значение целевой функции находится по формуле:

p

Обозначим через pприращение величины f(x), получающееся при увеличении значения  pна единицу. Таким образом, величина  pопределяется из выражения:

p.

Величина  p называется относительной оценкой небазисной переменной p, тогда как cS является исходной оценкой x s  целевой функции. Если cs >0, то можно добиться увеличения целевой функции f(x), вводя переменную  x в базис. Уравнение, определяющее относительную оценку, называется правилом скалярного произведения. Относительная оценка небазисной переменной xj обозначается через  pи определяется по формуле:

p

где cB соответствует оценкам базисных переменных, а  pпредставляет собой  j-й столбец в канонической системе, соответствующей рассматриваемому базисному решению.

Если относительные оценки небазисных переменных допустимого базисного решения задачи максимизации отрицательны или равны 0, то решение оптимально. Ясно, что если pдля всех небазисных переменных, то любому смежному допустимому базисному решению соответствует значение целевой функции, не превосходящее уже достигнутое. Отсюда следует, что в рассматриваемой точке имеется максимум. Поскольку целевая функция f(x) линейна, он совпадает с глобальным. Для пояснения предположим, что p и, следовательно, начальное допустимое базисное решение нежелательно. Поскольку величина  pположительна, при увеличении значения небазисной переменной  pна единицу f(x) возрастает на p. Чем больше увеличение значения xs, тем больше приращение величины f(x), поэтому необходимо, чтобы значение  xs было возможно большим. С другой стороны, при увеличении  значения остальных базисных переменных также меняются, и их новые значения находятся из системы (2-5):

p.

Если  pто xi возрастает вместе с xiais = 0 при  значение x не меняется. Однако, если p переменная  x убывает с ростом  xs и становится отрицательной при неограниченном увеличении xs , а решение - недопустимым. Таким образом, максимально допустимое значение  xs определяется следующим правилом:

p.

Пусть p.

Следовательно, при увеличении  xs до  pбазисная переменная  x2 первой среди базисных переменных обращается в 0 и заменяется в базисе переменной x2. Переменная x2 становится новой базисной переменной в строке r-й, причём новое допустимое базисное решение имеет вид:

p

Поскольку при увеличении xs на единицу приращение  f(x)составляет p, для нового решения общее приращение f(x) определяется по формуле:

p

Уравнение, на основании которого определяются базисные переменные, выводимые из базиса, носит название минимального отношения. При использовании симплекс-метода вычисление относительных оценок всех небазисных переменных текущего допустимого базисного решения и проверка его оптимальности проводятся до тех пор, пока не будут выполнены условия оптимальности.

Пример. Использовать симплекс-метод для решения следующей задачи:

максимизировать ; p

при ограничениях: p

Приведение задачи к стандартной форме при помощи дополнительных переменных преобразует математическую модель к следующему виду:

максимизировать ; p

при ограничениях: p

В допустимом базисном решении системы уравнений в каноническом виде базисными переменными являются  pи p. Последовательные итерации симплекс-метода удобно представлять в компактном виде, используя таблицу для записи ограничений и целевой функции. При этом проводятся вспомогательные вычисления, например, с использованием правила скалярного произведения, правила минимального отношения и элементарных преобразований.

Элементы таблиц представляют собой коэффициенты задачи (в табл.1 содержится начальное допустимое базисное решение). Заметим, что для каждого ограничения записаны лишь коэффициенты при входящих в него переменных. Коэффициенты целевой функции c находятся  над коэффициентами соответствующих им переменных xj. Понятие базис обозначает совокупность базисных переменных начальной таблицы (  x3 для  ограничения 1, x4 для ограничения 2, x5 для ограничения 3), а символом cB обозначается совокупность оценок переменных  cj базиса. Из табл.1 находится начальное допустимое базисное решение:

p

Значение целевой функции f(x) задаётся скалярным произведением вектора  и вектора правых частей уравнений:

p.

Табл. 1.

 

cB

 

 

cj

 

Постоянная

3

2

0

0

0

базис

x1

x2

x3

x4

x5

 

0

0

0

x3

x4

x5

-1

3

1

2

2

-1

1

0

0

0

1

0

0

0

1

4

14

3

p-строка

 

3

2

0

0

0

f(x) = 0

Для проверки оптимальности найденного допустимого базисного решения следует вычислять относительные оценки переменных (пользуясь правилом   скалярного   произведения). Заметим, что относительные оценки  pбудут нулевыми, поскольку соответствующие переменные - базисные. Небазисные переменные  x1 и x2 имеют положительные относительно оценки. Следовательно, рассматриваемое допустимое базисное решение неоптимально. Небазисная переменная x1 имеет наибольшую относительную оценку, поэтому её следует ввести в базис. Для определения переменной, выводимой из базиса, применяется правило минимального отношения. Вычисляются соотношения для всех ограничений с положительным коэффициентом при x1:

Номер строки

Базисная переменная

Отношение

1

x3

p

2

x4

p

3

x5

p

Следует отметить, что для первой строки это отношение не вычисляется (оно принимается равным ), поскольку коэффициент при x1, в строке 1 отрицателен. Это означает, что можно неограниченно увеличивать x1, причём при этом значении  x3 остаётся положительным. С другой стороны, из значения  p для отношения во второй строке следует, что x4 станет равным 0 при возрастании  x1 до p. Аналогично, если x1  возрастает до 3, то x5 обращается в нуль. Минимальное отношение равно 3, поэтому при возрастании  x1 от 0 до 3 первой среди базисных переменной обратиться в 0 x5 ; она заменится в базисе переменной x1 . Третья строка называется ведущей строкой, а коэффициент при  в ведущей строке называется ведущим элементом. Элементарное преобразование приводит к системе с новыми базисными переменными x3 , x4 и x1:

  • 1) прибавить ведущую строку (строку 3) к первой, чтобы исключить переменную x1 ;
  • 2) умножить ведущую строку на (-3) и прибавить её ко второй строке, чтобы исключить x1 .

Табл. 2

 

             cB

 

 

cj

 

Постоянные

3

2

0

0

0

базис

x1

x2

x3

x4

x5

 

0

0

3

x3

x4

x1

0

0

1

1

5

-1

1

0

0

0

1

0

1

-3

1

7

5

3

  p-строка

 

0

5

0

0

-3

f(x) = 9

Для проверки оптимальности полученного в табл. 2 допустимого базисного решения необходимо вычислить вектор относительных оценок (строку p). Это можно выполнить, пользуясь правилом скалярного произведения. С другой стороны, новую строку  pможно вычислить, применяя элементарное преобразование. Относительная оценка переменной x1 должна быть равна 0, поскольку x1 вошла в базис. Равенства нулю можно добиться, умножая третью строку на (-3) и прибавляя её к строке p . В результате автоматически получается новая строка  pтабл. 2.

Строка  pтабл. 2 всё ещё содержит положительный элемент, что указывает на возможность введения в базис небазисной переменной , улучшающей значение целевой функции. Применяя правило минимального отношения, находим из набора ( p). Переменная  должна занять место базисной переменной .

В табл. 3 представлено следующее допустимое базисное решение, полученное после выполнения элементарной операции. Поскольку в табл. 3 все элементы  строки p неположительные, она оптимальна. Оптимальное решение имеет следующий вид: p а оптимальное значение f(x)=14 .

Табл. 3

 

p

 

 

3

2

0

0

0

CB

базис

x1

x2

x3

x4

x5

Постоянные

0

x3

0

0

1

-1/5

8/5

6

2

x2

0

1

0

1/5

-3/5

1

3

x1

1

0

0

1/5

2/5

4

p-строка

 

0

0

0

-1

0

f(x) = 14

Представленный алгоритм метода ЛП, нашедший широкое применение для решения организационно - экономических задач, стал применяться и при проектировании элементов РК, например, при компоновке оборудования на ракете.


Предлагаем вашему вниманию журналы, издающиеся в издательстве «Академия Естествознания»
(Высокий импакт-фактор РИНЦ, тематика журналов охватывает все научные направления)

«Фундаментальные исследования» список ВАК ИФ РИНЦ = 1,674