Файл: Ху, Т. Целочисленное программирование и потоки в сетях.pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 15.10.2024
Просмотров: 158
Скачиваний: 0
2.3. НАЧАЛЬНЫ Й ДОПУСТИМЫЙ БАЗИС И ВЫРОЖДЕННОСТЬ |
55 |
начального допустимого базиса для минимизации ъ. В литературе такой способ называется двухфазовым симплекс-методом. На пер вой фазе метода находится допустимый базис путем минимиза
ции |
на второй — минимизируется z и получается оптимальный |
||||
базис |
([37]). |
|
|
|
|
Рассмотрим в качестве примера следующую задачу линейного |
|||||
программирования: |
|
|
|
|
|
минимизировать |
|
|
|
|
|
|
Z :r= |
C i X i - |- |
- |- |
. . . -]— с п х п |
|
при условиях |
|
|
|
|
|
|
о - ц Х \ -)- а 12х 2 + |
•.. . -j- d \ n X n = Ь и |
|
||
|
&ZlX i |
-[- а 22х 2 ' |
• . . |
Й2п х п — Ь2т |
( 1) |
|
® m ix |
i Н ' Я т 2 х 2 4~ |
■ • • |
“Ь О'ТПп.З'П " Ьтт |
|
где все bt неотрицательны.
Если ввести искусственные переменные xf и новую целевую функцию
т
1 = 2 х?,
г= 1
то получим задачу: минимизировать
|
- X® |
+ |
. • • + |
хЧп, |
|
|
|
|
|
при условиях |
|
|
|
|
|
|
|
|
|
— Z |
~Ь c ix i |
4- С 2 Х 2 |
+ |
. * * |
с п % п |
|
— |
|
|
хЧ |
+ (1 ц Х 1 -)- |
-р . . . —|- ( t \ n X n |
|
Ъ \, |
|
||||
х~ |
4“ & 2 l x |
l “I- 0-22х |
2 4 " |
• • |
• |
а 2 п х п |
— &2i |
(2) |
|
|
- m 4~ a m i x l 4~ й т 2 х 2 4 " • . . |
-\~ d m п х п = Ъ щ ' |
|
||||||
получим |
:е уравнения, |
содержащие b h |
из |
|
|||||
|
|
|
|
|
|
|
|
|
|
- I |
-J- d ^ X i |
-)- ^2^-2 |
4 " ■ • • 4- d |
n x n |
— —Ъ |
|
|||
|
с 1х 1 4“ ^ 2 Х 2 |
4“ • • ■ + С „ х п |
= 0 , |
|
|||||
|
4 - a i l X 1 |
4 - а 12х 2 |
4“ • |
• ■4 " 0-inx n |
= |
Ъ \, |
( 3 ) |
4 " 0 ,m lx i 4“ &m2x 2 4 “ • • • 4“ ®тппх п — Ът ,
56 |
ГЛ. 2. СИМПЛЕКС-МЕТОД |
|
где d j ------ (atj + |
a2j + . . . + amj), |
— (bi + b2 -f- . . . + bm). |
Система (3) является диагональной формой относительно —Е, —z, х°, . . Хт. Первая фаза симплекс-метода состоит в минимиза ции | при условиях (3). На знак z ограничений не накладывается. В процессе вычислений, как только искусственная переменная становится небазисной и ее коэффициент в |-форме положителен, сама переменная и соответствующий ей вектор-столбец из даль нейших вычислений исключаются. Посмотрим, почему это воз можно.
Заметим, что все таблицы, получающиеся при работе алгорит ма, эквивалентны х). В процессе вычислений на первой фазе имеем
I = £о+ 2 djXj + 2 dtXi,
где dj -g 0 и dt > 0. Если положить небазисные переменные Xj и х?
равными нулю, а | = | 0, |
то получим решение. Если задача имеет |
|
допустимое решение, то | |
= | 0 = 0. |
Отсюда следует, что никакая |
искусственная переменная х? с dt > |
0 не может входить в базис |
|
с положительным значением. |
|
Выше было показано, что искусственные переменные можно использовать для выяснения совместности системы уравнений. Покажем, как с помощью искусственных переменных решается вопрос об избыточности системы. Рассмотрим детально проблему вырожденности и ее связь с избыточностью. Вспомним, что базис ное решение получается из решения уравнения Вхв = Ь, где В — квадратная подматрица матрицы А, Ах = Ь. Если одна или более компонент вектора хй равна нулю, это означает, что Ь можно выразить через т — 1 или меньшее число векторов. Существует два случая, когда это возможно.
1. Ранг матрицы А меньше т, т. е. любая система т столбцов матрицы А линейно зависима. Используя те же рассуждения, что и в теореме 1.9, можно показать, что в этом случае, если существу ет базисное решение, то существует вырожденное базисное решение.
2. Ранг матрицы В равен т, но Ь лежит в выпуклом конусе, натянутом на подмножество векторов из В.
Рассмотрим систему уравнений
Ах = Ь (А есть (т X и)-матрица, т <С.п)
без искусственных переменных. Если система уравнений избыточна и совместна, это означает, что ранг строк матрицы А равен рангу строк матрицы [А, Ь] и меньше т. В частности, ранг строк под матрицы В меньше т. Поскольку ранг строк матрицы равен рангу)*
*) То есть описывают одну и ту же задачу.— Прим, ред.
2.3. НАЧАЛЬНЫЙ ДОПУСТИМЫЙ БАЗИС И ВЫРОЖДЕННОСТЬ |
57 |
столбцов, любая система т столбцов матрицы В линейно зависима. Из рассмотренного выше случая 1 следует, что любое базисное решение вырождено. Таким образом, избыточность влечет за собой вырожденность любого базисного решения. Обратное неверно. Рассмотрим следующую систему уравнений:
2iX\ |
-j- |
г= 3, |
|
-f- Х2 |
|
2^4 = |
6 , |
Qxi |
-f- хг “Ь |
= |
9. |
Любое базисное решение вырождено, но система неизбыточна, поскольку она содержит невырожденную матрицу третьего поряд ка, составленную из первых трех столбцов. Причина вырожденности здесь та же, что в случае 2.
Если получено невырожденное базисное решение, значит, суще ствует невырожденная подматрица В матрицы А. Это означает, что система Ах = Ь неизбыточна. Таким образом, если существует невырожденное базисное решение, то система неизбыточна. С дру гой стороны, неизбыточность системы еще не гарантирует суще ствования невырожденного базисного решения. Рассмотрим для примера следующую систему:
—Xi |
~\~ |
— 2, |
—хг |
+2ж 4 = 4, |
|
— Х3 |
+ 3 ^ 4 |
= 6 . |
Система неизбыточна, поскольку ее матрица содержит подматри
цу —I. |
Первые три |
столбца не дают допустимого базиса, |
а любой |
допустимый |
базис, содержащий четвертый столбец, |
вырожден. |
|
|
Таким образом, существование невырожденного базисного |
||
решения |
показывает, |
что система неизбыточна; существование |
же вырожденного базисного решения или тот факт, что все базис ные решения вырождены, не помогут выяснению вопроса об избыточности системы. Для этой цели можно использовать искус ственные переменные.
Введение искусственных переменных не только дает нам начальный базис в симплексном алгоритме; их также можно исполь зовать для выяснения совместности и избыточности исходной системы уравнений. Если в конце первой фазы | > 0, то у исход ной системы нет ни одного допустимого решения, т. е. исходная система несовместна. Если же | = 0 и в базис не входят искусствен ные переменные, то можно начать вторую фазу. Если | = О и в базис входят некоторые искусственные переменные с нулевым значением, то можно заменить искусственные переменные в базисе
58 |
ГЛ. 2. СИМПЛЕКС-МЕТОД |
на исходные путем эквивалентного преобразования. Если после преобразования все искусственные переменные из базиса выведе ны, то полученный вырожденный базис служит начальным базисом для второй фазы. Если же искусственную переменную ж? невоз можно вывести из базиса преобразованием из-за того, что аг] = О для всех /, то это означает, что исходная система избыточна.
Для примера рассмотрим такие два уравнения:
+ |
х2 + |
х3 = |
10, |
2xi -|- |
2х2 |
2х3 ~ |
20. |
Система, состоящая из этих уравнений, очевидно, избыточна. Используем искусственные переменные для исследования избы точности системы. Получим
+ |
Xi + |
х2 + |
х 3 |
= |
10, |
+ |
2xi + |
2х3 + |
2х3 |
= |
20. |
В конце первой фазы | = |
0 и одна из искусственных переменных |
х° (г — 1, 2) войдет в базис с нулевым значением. Преобразование не сможет вывести из базиса переменную х % , поскольку a rj — 0
для / = 3, 4, 5, что и показывает избыточность системы урав нений.
Рассмотрим стандартные приемы получения начального допу стимого базисного решения. Не теряя общности, мы можем рас сматривать ограничения задачи линейного программирования в следующем виде:
где Ьг ^ 0.
Если ограничение представляет собой равенство
^ ] a i j X j = bi , j
то можно добавить искусственную переменную
X i + ' 2 i a i j X j =bi - j
Если ограничение представляет собой неравенство
S d i j X j ^ b i ,
з
то добавляется слабая переменная, превращающая неравенство в равенство и используемая в качестве начальной базисной пере менной:
^Icij j X j Ч~Si —b j .
з
2.3. НАЧАЛЬНЫЙ ДОПУСТИМЫЙ БАЗИС И ВЫРОЖДЕННОСТЬ |
59 |
Рассмотрим систему т ограничений
*11^1 |
а 12х 2 |
Н~ |
• • |
• ^ |
d'lnx n |
|
|
|
|||
а 21х 1 |
0,22х 2 |
+ |
■• • ~\~ &2пх п |
^ - Ь 2, |
|
|
|||||
ЯпИх 1 "Ь Ят2х 2 ~Ь • |
• |
• “f~ &7ПпЗ'П > ъ т . |
|
||||||||
Пусть 6m = max6; |
(г = 1, |
.. |
|
т). |
Тогда можно |
добавить т ела- |
|||||
г |
|
|
|
|
|
|
|
|
|
|
|
бых и одну искусственную переменные: |
|
|
|
||||||||
o-nxi + ai2x2 + |
• • • + |
aiпхп —si |
-)- ха = |
blt |
|||||||
a2lxt + а22х2 |
+ |
. . . + |
а2пхп |
|
|
—s2 |
|
+ xa =-b2, |
|||
: |
|
|
|
|
|
|
|
•. |
|
|
(4) |
dmixi -T am2x2+ |
. .. + |
amnxn |
|
|
|
—sm-f- xa = bm. |
|||||
Пусть Ei, E2, . . |
Em обозначают соответствующие уравне |
||||||||||
ния системы (4). |
Тогда Ет — Е±, |
Ет — Е2, |
Ет — Е т _ь Ет |
||||||||
суть уравнения, эквивалентные |
уравнениям системы (4) , с не |
||||||||||
отрицательными |
правыми |
частями |
Ът — |
&i, |
. . ., |
Ът — ^m-i, |
|||||
Ът соответственно. |
Переменные Sj, |
|
s2, . . |
sm_i, ха можно исполь |
зовать в качестве начальных базисных переменных.
Рассмотрим доказательство конечности симплекс-метода, про блему вырожденности и процедуру, используемую в том случае, когда проверка отношения приводит к нулевому результату (т. е.
проверка отношения дает min = 0). Для этого необходимо
ввести лексикографическое упорядочение векторов. Вектор назы вается лексикографически положительным (отрицательным), если его первая отличная от нуля компонента положительна (отрица тельна). Так, вектор [0, 0, 2, —7, 4] лексикографически положи телен, а [0, —3, 7, 4, 8] лексикографически отрицателен. Запись х >• 0 показывает, что вектор х лексикографически положителен. Будем говорить, что вектор Xj лексикографически больше векто ра х 2, если (Xi — х2) >- 0. Так, вектор [0, 0, 2, —7, 4] лексико графически больше, чем вектор [0, —3, 7, 4, 8], поскольку их разность [0, 3, —5, —11, —4] лексикографически положительна.
Вспомним, что симплекс-метод состоит в систематическом пере боре различных базисов, последовательно улучшающих целевую функцию до тех пор, пока не будет получен оптимальный базис. Если в симплекс-методе ни один базис не будет выбран дважды, то алгоритм конечен. Заметим, что все элементы нулевой строки в симплексной таблице однозначно определяются базисом. Если значение (—z), записываемое в верхнем левом углу симплексной таблицы, все время увеличивается, то различным значениям (—£) соответствуют различные базисы, т. е. в этом случае симплекс