Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги из ГПНТБ / Ху, Т. Целочисленное программирование и потоки в сетях

.pdf
Скачиваний:
43
Добавлен:
22.10.2023
Размер:
16.99 Mб
Скачать

1.3. НЕРАВЕНСТВА

21

Система (10) не может иметь неотрицательных решений. Действи­

тельно,

подставляя (9)

в (10), получаем

 

 

п -1

 

п - 1

 

 

%jaj Н" £

/^1 хз

 

 

3= 1

 

3 = 1

 

Если бы система (10)

имела неотрицательное решение х]

^ 0,

/ = 1 , . . ., п 1 , то в силу (8) коэффициент при ага в (11)

был

бы положителен.

Тогда,

очевидно, система (3) имела бы неотрица­

тельное

решение

вопреки предположению.

 

Итак, система (10) не имеет неотрицательных решений. Приме­ няя индуктивное предположение к системе (10), получаем: суще­

ствует такой у', что

 

 

 

 

 

 

 

 

у 'а )^ 0 , при

; = 1,

. . . ,

п — 1

и

у'Ь' < 0 .

( 1 2 )

Полагая теперь

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-

J»

 

 

 

 

 

 

 

 

 

У*71

 

 

 

 

легко убеждаемся в том, что

 

 

 

 

 

 

Уаз =

( у' —

У) aj = У аз

 

 

 

v

yan

'

 

 

Уап

 

 

 

 

=

y' (a; —

an) = y ' - a ^ 0

(/ =

1,

1)

(в силу (12));

 

 

 

 

 

 

 

 

 

ya„= ( y ' ~ l ^ - y )

an=

y'a„— l^ .y a „ = 0,

 

 

 

V

Уа П

'

 

 

Уа 71

 

 

 

так как в рассматриваемом случае уа„ < 0;

 

 

 

уЬ = (у' — -4^- у) ь =

у' (ь — -^-yb) = у'Ь' <

0

 

'

Уап

 

'

Уа п

'

 

 

 

(в силу (12)).

вектор

у является решением системы (4). Индук­

Таким образом,

ция завершена

и теорема

доказана. в

 

 

 

 

Теорема

1.3.

(Лемма

Минковского — Фаркаша

о

неотрица­

тельном решении системы линейных неравенств.) Выполняется только одна из следующих альтернатив’, либо система неравенств

22

РЛ. 1. ОСНОВНЫЕ понятия

имеет неотрицательное решение, либо неотрицательное решение имеет система

УА > 0 , уЬ < 0.

Д оказательство. Пусть А* — произвольная X ?г)-матрица. По теореме 1.2 либо А*х* = b имеет неотрицательное решение, либо имеет решение система неравенств уА* ^ 0 , уЬ < 0. Поло­ жим А* = [А, I], х* = [х, s]. Тогда теорему 1.2 можно сформу­ лировать следующим образом:

а) либо система уравнений

Ах + Is =

Ь

имеет решение х ^ 0, s ^

0,

 

б) либо имеет решение система неравенств

уА > 0,

у1 > 0,

уЬ < 0.

Но утверждение (а) эквивалентно тому, что Ах ^ Ь имеет неотрицательное решение, а утверждение (б) эквивалентно тому, что уА ^ 0 и уЬ < 0 имеет неотрицательное решение. Теорема доказана полностью. ш

Поскольку теорема 1.3 верна для любых А и Ь, мы можем за­ менить А и Ь на —А* и —Ь*. Затем умножим обе части неравенств на —1, что изменит смысл неравенств на противоположный. Освободившись от (*), оформим полученный результат в виде следствия.

Следствие 1.1. Из двух систем линейных неравенств

 

Ах > Ь,

 

(13)

у А < 0 ,

уЬ > 0

(14)

одна и только одна имеет неотрицательное решение.

 

Теорема 1.4. Система неравенств

 

Кх >

0, х > 0,

|(15)

где К т = —К,

имеет по крайней мере одно такое решение х, что

Кх + х > 0.

Д оказательство. Через К ; обозначим i-ю строку из К. Докажем,

что существует такой

вектор

х,- =

х Л, . . ., хц, . . ., xin],

что

K;Xj

хц >

0, KjXi + xi j ^ O .

(16)

1.4. КОНУСЫ, ВЫПУКЛЫЕ МНОЖЕСТВА И ВЫПУКЛЫЕ ФУНКЦИИ 23

Положим в следствии 1.1 b = е; и А = К. Если неотрицатель­ ным решением обладает система (13), то существует такой хг ^ 0 , что

т.

е.

 

 

 

 

Кхг^ег,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

К гХг >

1,

К ; Х г > 0

(/' ф

I ) .

 

 

Следовательно,

К;х* -f- хц >

0,

К 7-х* + xtj^>0.

 

 

 

Если неотрицательное решение имеется у системы (14), то

существует xf^ O , такой, что

 

 

 

 

 

 

 

 

 

 

 

х Г к < 0

 

 

 

 

(это равносильно любому из следующих неравенств:

 

 

 

 

Ктхг< 0 ,

 

- К 1 г< 0 ,

Кхг> 0 ),

 

и соответственно

 

 

 

 

 

 

 

 

 

 

 

xfe, >

0,

т. е.

хц > 0

и

хи ^ 0 ,

 

откуда, как и выше,

получаем

соотношения

(16). Итак, в обоих

случаях KjXj -j- хц

0 и К }Х1-\-хц^0

(1Ф]).

Пусть в следствии

1.1

Ь последовательно принимает значения еь

е2, . . . ,

е*, . . . , е„,

a

Xj,

. . . , хп

суть

соответствующие

им

решения.

Тогда х =

 

71

 

 

 

 

 

 

 

 

 

 

=

2

хг будет

искомым решением (17),

для которого выполняется

 

i=l

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Кх + х > 0 .

 

 

 

 

1.4.

Конусы,

выпуклые

множества и

выпуклые функции

 

Каждый вектор с п компонентами соответствует точке «-мер­

ного

евклидова пространства.

Компоненты

вектора

совпадают

с координатами точки. Пусть дан вектор а; множество точек прямой, содержащей начало координат и данный вектор, может

быть аналитически задано как {х | х = Ха,

X

^ 0}. Будем назы­

вать лучом полупрямую с одним концом

в

начале координат,

а другим — уходящим в бесконечность. Луч, выходящий из нача­ ла координат и содержащий вектор а, есть множество

{х | х = Ха, X > 0}.

Часть прямой, заключенная между двумя точками, вместе с этими точками называется отрезком. Отрезок от точки а до точки b можно представить как множество в виде

24 ГЛ. 1. ОСНОВНЫЕ п о н я т и я

По аналогии с плоскостью в трехмерном пространстве, гиперпло­ скость в Е п определяется как множество точек

{х | ах = а}.

Замкнутое полупространство, состоящее из гиперплоскости и то­ чек, расположенных по одну сторону от этой гиперплоскости, будем обозначать

{х | ах ^ а}.

Конусом С называется множество точек, таких, что

если х £ С, К ^ 0, то Кх £ С.

Пример 1. Любая прямая, проходящая через начало коорди­ нат, является конусом; в качестве х можно выбрать любой вектор, принадлежащий прямой.

Пример 2. Любая полупрямая, проходящая через начало координат, является конусом. (Останется ли полупрямая конусом, если исключить из нее точку, совпадающую с началом координат?)

Пример 3. Любая гиперплоскость в Еп, проходящая через начало координат, есть конус.

Пример 4. Замкнутое полупространство с граничной гипер­ плоскостью, проходящей через начало координат, есть конус.

Пример 5. Заштрихованная область на рис. 1.1 есть конус.

Пример 6. Заштрихованная область на рис. 1.2 есть конус.

Пример 7 Множество решений системы Ах ^ 0 образует конус.

1.4. КОНУСЫ, ВЫПУКЛЫЕ МНОЖЕСТВА И ВЫПУКЛЫЕ ФУНКЦИИ 25

Пример 8. Будут ли конусами отрезок и прямая, проходящая через две данные точки?

 

 

{х | х = Ха +

 

(1 — к) Ь,

0 ^ К ^ 1},

 

 

{х | х =

+ (1 — А.) Ь, —оо < X <; оо}.

Множество С точек из Е п называется выпуклым конусом, если

выполняются

следующие условия:

 

1)

если

х,

у £ С,

то

х + У € С;

 

2)

если

х 6 С и 1 ^ 0

,

то Хх £ С.

Конусы, приведенные

в примерах 1, 2, 3, 4 и 6, являются

выпуклыми, а конус в

примере

5 — невыпуклый, нескольку

можно указать два

вектора, сумма

которых не принадлежит С.

Определим операции над выпуклыми конусами и установим

некоторые их

свойства.

конусы, то их суммой

Ct + С2

Если С\

и

С2 — выпуклые

называется

множество

 

 

Ci

+

С2 = {х | х = х4

+ х2, X! е Си х2 6 С2}.

 

Очевидно, сумма двух выпуклых конусов есть также выпуклый конус. Например, сумма двух прямых, проходящих через начало координат (двух выпуклых конусов) есть плоскость, содержащая эти две прямые. Сумма двух полупрямых есть конус, рассмотрен­ ный в примере 6.

Если Cj и С2 — выпуклые конусы, то их пересечение Сх (] Сг определяется как

Cl П с г = {х I х 6 Cl и х 6 С2}.

Очевидно, пересечение двух выпуклых конусов есть также выпуклый конус. Например, пересечение двух полупространств в Е2 образует выпуклый конус, показанный на рис. 1.2.

Для выпуклого конуса С определим двойственный ему конус С* следующим образом:

С* = {у | у х < 0 для всех х £ С}.

Двойственный конус состоит из векторов, образующих неост­ рые углы с векторами из С (рис. 1.3). В примере 1 двойственным

конусом С* является плоскость,

перпендикулярная к прямой.

В

примере

2

двойственный

конус

С* — полупространство

{у | ух ^ 0 } ,

где

х — ненулевой

вектор, принадлежащий полу­

прямой.

конус С называется конечнопорожденным, если

он

Выпуклый

является

суммой конечного числа

полупрямых:

С = (аД + (а2) + . . . + (ап).

26

ГЛ. 1. ОСНОВНЫЕ ПОНЯТИЯ

Направляющие векторы этих полупрямых называются образую­ щими векторами выпуклого конуса.

Из определения суммы выпуклых конусов ясно, что любой вектор в конечнопорожденном конусе можно представить как

 

 

х = Я-iai

"I- . . .

-|- Япа^,

 

 

 

 

 

 

 

П

 

 

 

 

 

 

 

 

 

 

тде Xj ^

0 и 2

— 11 aj — произвольные направляющие векто-

 

3 =

1

 

Будем говорить, что вектор х

ры соответствующих полупрямых.

 

 

 

есть выпуклая линейная ком­

 

 

 

бинация

образующих

 

векторов

 

 

 

aj а = 1 , . . . , п).

 

 

 

 

 

 

 

Если

рассматривать

векторы

 

 

 

а;

(;

= 1, . . .,

п)

как

вектор-

 

 

 

столбцы матрицы А, то множество

 

 

 

точек конечнопорожденного конуса

 

 

 

можно описать следующим обра­

 

 

 

зом:

 

 

 

 

 

 

 

 

 

 

 

С =

{У I У =

Ах для х >

0},

 

 

 

т. е. каждый вектор у

в конусе

 

 

 

является

неотрицательной

линей­

 

 

 

ной

комбинацией вектор-столбцов

 

 

 

матрицы

А.

X

называется вы­

 

 

 

Множество

 

 

 

пуклым, если вместе с любыми

 

 

 

двумя

точками

этого

множества

х 4 и х 2 в нем содержится и точка Xxj +

(1 — X) х2,

 

0 ^

X ^ 1.

Понятие

выпуклого множества можно

сформулировать

в

более

общем виде.

 

 

 

 

если вместе

с

точками

Множество X называется выпуклым,

xt, . . .,

хА из

X множество

X содержит и

точку

х:

 

 

 

 

 

h

 

 

k

 

 

 

 

 

 

 

 

 

х — 2 XiXi,

 

0,

2

Xi =

i,

 

 

 

 

 

 

 

i=l

 

 

i=l

 

 

 

 

 

 

называемую выпуклой линейпой комбинацией точек Xj, . . ., хд.

Докажем эквивалентность этих двух определений выпуклого множества. Очевидно, первое определение является частным слу­ чаем второго. Поэтому множество, выпуклое по второму опреде­ лению, является выпуклым и по первому. Индукцией по к пока­ жем, что верно и обратное утверждение. При к = 2 определения совпадают. Предположим, что при к = т из выпуклости по пер­ вому определению следует выпуклость по второму, и докажем это утверждение при к = т + 1.

1.4. КОНУСЫ, ВЫПУКЛЫЕ МНОЖЕСТВА И ВЫПУКЛЫЕ ФУНКЦИИ 27

 

Рассмотрим произвольные точки х ь . .

 

хт+1 из X и любую

их

выпуклую линейную комбинацию:

 

 

 

 

 

х = Лрц -{- Я2Х2 • • • -j- ктхт-|- кт+1хт+\,

 

 

 

m-f-1

 

 

 

 

 

 

где

к ^

0, 2 j ki =

l. Р1еобходимо

показать, что х £ Х .

 

 

 

г=1

 

 

 

 

 

 

 

Если

оказалось,

что

A,m+1= l ,

тогда

х =

хт+1. По

условию

хт+1£Х,

следовательно,

в этом случае и х £ Х .

Если же А,т+1< 1 ,

то представим х в виде

 

 

 

 

 

х = ( л 1+ . . . + и ( ^ : ^ - х1 + . . .

 

 

 

“Ь ^m+lxm+l — (^ 1

• • • ~Ь к т) Z -j- Я т + 1Хт + 1 —

(1

^m+i) 2 Т

^ т + 1 х т + 1 -

Так как X выпукло по первому определению, то по индуктивному предположению z £ X. Заметим, что в силу условия 0 ^ ?Lm+1 < 1 имеем 0 < 1 — k m+i ^ 1. Поэтому из выпуклости X по первому определению и принадлежности точек z и хт+1 множеству X сле­ дует, что х g X. Индукция завершена и эквивалентность опреде­ лений доказана.

Пример 9. Гиперплоскость сх =

z есть выпуклое множество;

с — заданный

вектор, z — скаляр,

х — любая точка

гиперпло­

скости.

 

 

 

 

 

 

 

Д оказательство.

Пусть х(

и xs -

произвольные точки гипер­

плоскости, т. е. cxj =

2 и сх2 =

2 . Тогда точка х = ^Xj +

(1 к) х 2

тоже принадлежит гиперплоскости, поскольку

 

СХ =

С [^Xj + (1 —

х 2] =

kz

+ (1 — к) Z =

Z.

Пример 10. Полупространство сх ^

z (или сх < г) есть выпук­

лое множество, поскольку из сх4

и сх'2 ^ 2 следует, что точка

х = к х j +

(1 — к) х 2 принадлежит полупространству сх ^ г, так

как

 

СХ = A,CXj +

(1 — к)

с х 2 ^ 2.

 

 

 

 

Л емма.

Пересечение выпуклых множеств выпукло.

 

Доказательство очевидно.

 

 

 

 

Точка х выпуклого множества X называется крайней точкой,

если из условия х = kxt + (1 — Я.) х 2

и 0 < А, < 1 следует, что

либо х =

Xj = х2,

либо х 4 ($ X, х 2 $ Х 1).

 

х) Обычно используется эквивалентное определение: х — крайняя точка выпуклого множества X, если ее нельзя представить в виде линейной выпук­ лой комбинации двух точек из X .— Прим, ред.

28

ГЛ. 1. ОСН ОВНЫ Е п о н я т и я

Заметим, что крайняя точка выпуклого множества всегда является граничной точкой множества, но обратное неверно.

Рассмотрим систему уравнений

Ах = b (А есть X гс)-матрица),

которую можно записать в виде

Э;Х = bt (i = 1, . . ., т),

где ai есть i-я вектор-строка матрицы А. Множество точек, удов­ летворяющих г-му уравнению, образует гиперплоскость

а;х = bt.

Если все уравнения независимы, то число п т называется размерностью выпуклого множества {х | Ах = Ь}.

Пусть дано множество Р, не обязательно выпуклое. Для этого множества можно найти выпуклое множество X , содержащее Р,

т. е. х £ Р =#• х £ X.

Выпуклой оболочкой множества Р называется х) пересечение всех выпуклых множеств X t, содержащих Р.

Выпуклая оболочка конечного числа точек называется выпук­ лым многогранником, натянутым на эти точки. Очевидно, что выпуклый многогранник натянут на свои крайние точки.

Рассмотрим понятие минимума функции / (х). Часто в литера­ туре под минимумом функции понимается локальный или отно­ сительный минимум, поскольку сравниваются значения функции лишь в небольшой окрестности. Определим это понятие более точ­ но: функция / (х) достигает строгого локального минимума в точ­

ке х0, если существует е >

0, такое, что / (х0)

(х)

для

всех х

из e-окрестности

точки х 0.

Функция / (х)

достигает локального

минимума в точке

х0, если существует е >

О, такое,

что /

(х0) ^

^~/(х), для всех

х из е-окрестности точки х0.

 

 

 

В математическом программировании нас интересует глобаль­

ный минимум функции, определенной на множестве X , т. е. мы

хотим найти такую точку х0, что / (х0) ^

/ (х)

для

всех

х £ X.

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

!)

Л егко видеть,

что это определение

эквивалентно следующему:

выпук­

лой оболочкой

множества Р

называется

совокупность всевозможных

точек

 

N

 

N

 

 

 

вида

^

гДе

> 0, 2

^г — 1» x i £ P - П р и м . р ед .

 

 

г—1

 

г=1

 

 

 

1.4. КОНУСЫ, ВЫПУКЛЫЕ МНОЖЕСТВА II ВЫПУКЛЫЕ ФУНКЦИИ 29

Функция / (х), определенная на выпуклом множестве X , назы­ вается выпуклой, если

/ [Ах, + (1 - А) х 2] < А/ (Xl) + (1 - X) f (х2) (0 < Я, < 1)

для любых Х(, х2 f X.

Функция / (х), определенная на выпуклом множестве X,

называется

строго выпуклой, если

 

 

/

[Ах, +

(1 -

X) х2] < Xf (х,)

+ (1

- X) f (х2)

(0 < А < 1)

для

любых двух

различных хь

х 2 £ X.

 

Заметим, что выпуклая функция всегда определена на выпук­

лом

множестве,

поскольку в невыпуклом множестве точки

Ах,

+ (1 — А) х 2

может и не быть. Мы получим геометрическое

представление о выпуклой функции, если представим множество X

в виде плоскости, а / (х) — в виде

поверхности

над этой пло­

скостью, обладающей тем свойством,

что отрезок, соединяющий

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

Теорема 1.5. Если / (х) — выпуклая функция, определенная на замкнутом ограниченном выпуклом множестве X, то локальный минимум (строгий или нестрогий) функции / (х) совпадает с гло­ бальным минимумом функции / (х).

Доказательство. Хотямножество X задается в /г-мерном про­ странстве; рисунок, иллюстрирующий теорему, для наглядности выполнен в плоскости (рис. 1.4).

Пусть / (х) достигает локального минимума в точке х0, т. е. су­

ществует такое е, что / (х) ^ / (х0) для всех х из е-окрестности

точки х0.

Допустим, что существует точка х*, такая, что / (х*) <

<

/ (х0).

Все точки

вида Ах* + (1 — X) х0 (0 ^ X ^ 1) принад­

лежат X, поскольку

X — выпуклое множество. Сделаем X доста­

точно малым, так чтобы

точка х = Ах* + (1 — А) х0 попадала

в

е-окрестность точки х0.

Для этого необходимо, чтобы 0 ^ А <

<

е/1 х* х0 |. По предположению х0 — точка локального мини­

мума, следовательно,

/ ( х ) ^ / ( х 0), или

 

 

/( * ) > / (*о) = (1 -

А) / (х о ) + А/ (х0) > (1 -

А) / ( х о ) + А/ (х*)

(1)

для 0=g;A<-| 8— г .

 

 

 

I X * — Х0 )

 

 

 

Из определения выпуклой функции следует, что

 

/ (х )< А/ (х*) + (1 — А) / (х0) < А/ (х0) + (1 -

А) / (х0) = / (х0).

(2)

30

ГЛ. 1. ОСНОВНЫЕ п о н я т и я

Полученное противоречие доказывает теорему. Заметим, что мы не предполагали наличия в точке х* глобального минимума. Мы лишь допустили, что х* — любая точка, где / (х*) < / ( х 0).

Существование глобального минимума в замкнутой ограниченной области гарантируется теоремой Вейерштрасса.и

В противоположность выпуклой, вогнутой функцией называет­ ся такая функция, определенная на выпуклом множестве, что

/ [Лх, + (1 - X) х2] > Xf (Xl) + (1 — X) f (х2) (0 < X < 1) (3)

для любых Хь Х2 6 X.

Если в данном выше определении нестрогие неравенства заме­ нить на строгие, то функция будет называться строго вогнутой.

Теоремэ 1.6.

Если / (х)

вогнутая

функция,

определенная

на выпуклом многограннике J)

X, то существует крайняя точка

множества X , в которой функция / (х) достигает глобального

минимума.

 

 

 

 

 

 

 

 

Доказательство. Пусть Vi,

. . ., v ft

— крайние

точки множе­

ства X. Тогда любая точка х из X является выпуклой линейной

комбинацией точек Vj, . . .,

v^:

 

 

 

 

 

 

 

k

h

 

 

 

 

 

 

x = ' 2 i X ixi,

 

2 ^ i = l>

Xi^iO.

 

 

 

 

i = i

i= l

 

 

 

 

!) Теорема верпа и в более

общем случае, когда X

выпуклое, огра

ниченное и замкнутое множество.

Д л я доказательства

ее

(в этом случае-

надо воспользоваться тем, что а) для каждого

х 6 X с

Е п

можно указат)

не более

п + 1 точек Vi,

. . ., v n+1

из X , выпуклой линейной комбинацией

которых

является

х; б)

вогнутая

функция

/ (х) непрерывна в точках й

в) минимум / (х ) достигается на

X

.— П р и м .

р е д .

 

 

Соседние файлы в папке книги из ГПНТБ