Файл: Ху, Т. Целочисленное программирование и потоки в сетях.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), записываемое в верхнем левом углу симплексной таблицы, все время увеличивается, то различным значениям (—£) соответствуют различные базисы, т. е. в этом случае симплекс­