Файл: Ху, Т. Целочисленное программирование и потоки в сетях.pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 15.10.2024
Просмотров: 177
Скачиваний: 0
20.1. В В Е Д Е Н И Е |
429 |
Д оказательство. Предположим, что {у, 0) является |
гранью |
многогранника Р (G, т), g0). Поскольку эта гиперплоскость есть
(п' — |
1 )-мерное подпространство |
и порождена элементами t £ Т, |
|||||||||||||||
то она должна содержать п' — |
1 линейно независимых точек t £ Т . |
||||||||||||||||
Для каждого |
из |
этих |
векторов |
t1 (i = |
1, . . |
п' — 1 ) справед |
|||||||||||
ливо’ |
|
= |
0 - гДе |
|
|
= l*‘(Ы. |
t% (82)1 |
• • ■> |
(#«-)]• |
Так |
как |
||||||
Y (g) > |
0 , f(g) |
> |
0 |
и |
(ё) 1 (ё) = °> |
т 0 |
либ° 7 |
(ё) > |
0 влечет |
||||||||
t (g) = |
0, |
либо t (g) > |
0 влечет у (g)^= 0. Это справедливо для |
||||||||||||||
каждого из |
векторов |
|
t*. Если t1 (g) = 0 при |
всех |
i (i = 1, . . . |
||||||||||||
. . ., п' — |
1 ) для более чем одного элемента g, то это будет про |
||||||||||||||||
тиворечить |
тому, |
|
что |
п' — 1 |
векторов |
t* |
имеют |
ранг п' — 1 . |
|||||||||
Н о если у вектора |
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
t = |
|
U Ы , |
t (g2), . . ., t (gw)1 |
|
|
|
||||||
все компоненты положительны, то, для того чтобы |
2 7 |
(§) * (ё) = |
|||||||||||||||
.= 0, у (g) должно |
быть равно 0 для всех g 6 |
Л- Таким образом, |
|||||||||||||||
кроме случая у (g) = |
0 |
для всех g 6 т) единственной возможностью |
|||||||||||||||
является у (h) > |
0 |
и |
у (g) = |
0 для всех g 6 |
г), g ф к . |
Это |
дает |
||||||||||
7 (/t)t(h)+ |
2 |
|
7 (ё) t (ё) = 0 |
или 7 W |
t W |
= |
0- Отсюда следует, |
||||||||||
что t (h) = |
0 — грань, упоминаемая |
в |
теореме. |
|
|
|
|||||||||||
М ы |
показали, что условие t (h) ^ |
0 дает единственно возмож |
ные грани с правыми частями у0 — 0. Легко установить, когда это
условие действительно дает грани.
Теорема 20.3. Условие t (h) ^ 0 определяет грань многогран
ника Р |
(G, т), ёо) тогда и только тогда, когда элемент g0 л е жи т |
|||||
в подгруппе |
_д, порожденной элементами |
т]— |
h. |
Если |
g0 (J |
|
$ G'n-h, |
то |
грань задается условием t (К) ^ |
р > |
0. |
Здесь |
р — |
наименьшее положительное целое число, определяющее смежный класс ph -f- 6Д_/М в котором л е ж и т g0.
|
Д о к а з а т е л ь с т в о . |
|
Е с л и |
g0(£G^-h, |
то |
не |
существует |
решения |
||||
группового соотношения |
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
2 t(g)-g=g0 |
|
|
|
|||
■с |
t(h) = 0. |
Следовательно, t(h)^0 |
не |
является гранью. Если |
||||||||
go £ |
то имеем |
представление |
|
|
|
|
|
|
||||
|
|
|
2 |
|
Нё)-ё=ёо, |
0 s^t(g)<s{g). |
(8 ) |
|||||
|
|
|
g£r|-ft |
|
|
|
|
|
|
|
||
К |
вектору |
t, удовлетворяющему соотношению (8 ), можно доба |
||||||||||
вить п’ — |
1 |
единичных векторов s (g) u (g) для каждого g £ р — h, |
||||||||||
чтобы образовать п’ — 1 |
независимых |
решений с t (h) — |
0. Сле |
|||||||||
довательно, |
t (h) |
0 |
является гранью. |
|
|
|
|
|||||
|
Если |
g0 |
$ G'^-h и |
поскольку |
G^-h |
разбивает G на |
смежные |
|||||
классы, |
если Р (G, |
|
г|, g0) не пуст, |
то |
|
g0 |
принадлежит одному |
430 |
ГЛ . |
20. ГРА Н И Ц ЕЛ О Ч И С Л Е Н Н О ГО М Н ОГО ГРА Н Н И КА |
|
из смежных |
классов. Эти смежные |
классы имеют вид ph + |
|
и м ы |
можем |
выбрать для каждого |
смежного класса наименьшее |
возможное р. Это дает одно решение t (h) = р уравнения и мы можем получить п' — 1 других решений простым добавлением
единичных |
векторов u (g), |
g £ ц — |
h. Поскольку не |
существует |
|
выражения |
для g0 при t (К) < р, |
неравенство t (h) ^ |
р выпол |
||
няется для всех t £ Т. а |
|
|
|
|
|
В гл. 19 м ы ввели граф Н |
(G, т), с), где с — |
дуговые стоимости* |
|||
и стремились найти кратчайший путь от 0 |
до g0. |
Сейчас мы |
Р и с . 20.1 .
построим граф Н (G, тр у), где у — длины дуг графа. Кратчай ши й путь от 0 до g0 является решением задачи групповой мини
мизации |
(3) с общей длиной у (g) t (g) = у0Если у (g) выбрано |
так, что имеется п' линейно независимых кратчайших путей от 0 |
|
до g0l то |
(у, уо) является гранью многогранника Р (G , ц, g0)- |
Граф Н |
(G, тр |
go) для |
циклической |
группы из 4 элементов |
|
0 , gi, g2 , g3 и |
г| = |
{gu g2} показан на |
рис. 2 0 .1 . |
||
Любой |
из |
стандартных |
алгоритмов |
поиска кратчайшей цепи |
или алгоритм § 19.3 можно использовать для нахождения крат чайшей цепи от 0 до go или для нахождения кратчайших цепей от 0 до всех вершин N g, g £ G. Если кратчайшая цепь Р* от 0 до g0
содержит |
t (g) |
дуг, соответствующих g, то имеем решение t = |
||
= \.t(g)] (g G ц) |
задачи групповой минимизации |
с целевой |
функ |
|
цией 2 |
у (g) t (g). Очевидно, каждое решение |
определяет |
много |
|
гел |
|
|
|
|
различных кратчайших цепей, различающихся лишь порядком дуг. Как м ы упоминали в гл. 10, любой подпуть кратчайшего пути должен сам быть кратчайшим путем. Этот факт, конечно, спраь
ведлив в графе Н |
(G , т], у) и м ы сформулируем его в виде леммы.- |
|||||||
Лемма |
20.1. |
Пусть Р* — кратчайший |
путь |
от |
0 |
до g0 |
||
и t— соответствующее ему |
решение. |
Если |
V — любой |
неотри |
||||
цательный |
целочисленный |
вектор, |
такой, |
что |
t'(g) ^ |
t(g) |
|
|
|
20.1. В В Е Д Е Н И Е |
|
431 |
|
u J t'(g) g — h, то |
любой |
путь, начинающийся |
в N g и кончаю- |
|||
гев |
|
|
|
|
t (g), является крат |
|
щийся в N g+h, соответствующий решению |
||||||
чайшим путем от N g к N g+h. |
|
|
||||
Д о к а з а т е л ь с т в о . |
Поскольку t' (g) ^ |
t (g), |
то путь, соот |
|||
ветствующий [t' (g)], есть |
подпуть кратчайшего |
пути, соответ |
||||
ствующего |
[t (#)]. |
Если существует путь от N g к iVg+;i, соответ |
||||
ствующий |
[Е (#)], |
который |
короче, чем [t' (#)], то путь, соответ |
|||
ствующий |
\t" (g) + |
|
t (g) — |
t' (£)], должен |
быть путем от 0 до g0 |
с более коротким расстоянием, чем [£(#)]. Получили противо речие.• Л
Когда |
м ы рассматриваем грани многогранника Р |
(G, р, g0), |
||||||
которые могут быть записаны как 2 |
Y (§) t (8) ^ |
Yo или (y > Yo)r |
||||||
|
|
|
веч |
Н |
(G, р, |
у)- |
Представим |
|
удобно рассуждать в терминах графа |
||||||||
у (g) |
как |
длину дуги, |
соответствующей |
g. Используя |
это, мы |
|||
можем |
охарактеризовать |
грань Р (G, р, g0) в графе |
Н |
(G, р у). |
Лемма 20.2. Если (у,Уо), уо >0, является гранью много гранника Р {G,р, g0) и g£ р, то существует кратчайший путь от Nn к N gn, такой, что t(g)> 0. Отсюда следует, что суще
ствует кратчайший путь от N ^ к N g0, проходящий через N g.
(Существует много кратчайших путей от N ^ к Л'еп. В лемме
утверждается, что каждая вершина N g, gE'П» должна принад
лежать по меньшей мере одному из кратчайших путей.)
Д о к а з а т е л ь с т в о . |
Поскольку (у, у0)— грань, такая, что |
у0 > |
> 0, существует п' |
линейно независимых векторов И, для |
кото |
рых |
уС = YoДля всех других t, удовлетворяющих соотношению |
||||||
2 |
t(g)‘g — |
8oi имеем |
y t ^ -Уо- |
Итак, каждый |
из |
векторов |
И |
|
|
|
|
_ |
g0. |
|
|
представляет |
собой кратчайший |
путь от 0 до |
Если |
все |
|||
t*(I = 1 , . . ., п') имеют |
f (g) — |
0 для некоторого g, то t* не бу |
дут иметь ранга п'.Следовательно, по меньшей мере одно С имеет
* (g) > |
|
20.4. |
Если (у, |
у0), Yo > |
0, является гранью, то |
||||
Т е о р е м а |
|||||||||
У (g) — |
длина кратчайшего пути |
от 0 |
до g0. |
|
|
||||
Д оказательство. |
По лемме 20.2 существует кратчайший путь |
||||||||
от 0 до g0с t (g) ^ |
1. |
Пусть t — |
решение, соответствующее |
крат |
|||||
чайшему пути из 0 |
к |
и пусть |
и (g) вектор |
t' из леммы |
2 0 .1 . |
||||
Тогда |
этот |
путь, |
состоящий |
из |
одной |
дуги |
(соответствующей |
||
u (g)), |
является подпутем кратчайшего |
пути |
t; следовательно, |
u (g) само должно быть кратчайшим путем. Длина этого пути, состоящего из одной дуги, равна у (g).
432 |
|
ГЛ . 20. ГРА Н И Ц ЕЛ О Ч И С Л Е Н Н О ГО М Н ОГОГРАННИКА |
||||||||||||
Следствие |
20.1. Если |
gi |
и g 2 оба принадлежат г| и g = gi + |
|||||||||||
+ g t |
, то у (#) < |
у ( |
gi) + |
у ( g z |
) . |
■ |
|
|
|
|
|
|||
Д оказательство. |
Решение t |
(gi) — |
1 и t (g2) = 1 обеспечивает |
|||||||||||
путь |
к |
g длины |
у (gi) + |
у (g2). Н о |
у (g) — |
‘длина кратчайшего |
||||||||
пути |
к |
g. Следовательно, |
у (g) < |
у (gt) + |
у (g2). |
|||||||||
Следствие |
20.2. Если gi и g2 оба принадлежат т] и gi + g2 = |
|||||||||||||
= go, то у (gi) + |
у (g2) = |
у0. |
|
|
|
|
|
|
|
|||||
Д оказательство. |
По лемме 20.2. существует кратчайший путь |
|||||||||||||
от 0 |
к g0, такой, что t (gi) > |
0. Пусть таким решением будет t. |
||||||||||||
Тогда |
t (gi) = 1 |
— |
подпуть |
кратчайшего |
пути |
от 0 к gQ. Если |
||||||||
gi + |
gi '= go, то |
g2 = go — |
gi- |
Н о |
м ы знаем, |
что |
||||||||
или |
|
|
|
|
|
|
Y-t = |
Yo |
|
|
|
|
||
|
|
|
Y [« |
+ |
Y [t — |
и Ы ] |
= |
yo, |
||||||
или |
|
|
|
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
У(gi) + У (g2) = То-
20.2.Вычисление грани
Вэтом параграфе мы опишем вычисления, необходимые для
получения коэффициентов неравенства 2 7 (#) *(g) ^ Yo, которое определяет грань многогранника Р ( G, т|, g0). Как и в гл. 19, мы определим для любого S cr ц и любого h £ G функцию
ф 8 (h) = min 2 У (g) t(g)
при условии |
|
|
2 |
g-t(g) = h • |
(l) |
Тогда ф 8 (h) удовлетворяет |
рекуррентному соотношению |
|
Фв(h) — min{tps-g(h), tys(h — g) + y(g)}.. |
(2 ) |
Вначале вычислений все y(g) неизвестны. Воспользуемся
рекуррентным |
алгоритмом, |
чтобы |
найти |
у (g) |
Для |
всех |
g 6 Т |
|||
Как и прежде, |
определим ф 0 (g) = 0 0 |
> |
1 = |
Yo и |
ф 0 (0)= |
0. |
Пред |
|||
положим, что |
м ы знаем y(g) |
для всех g£S. |
Тогда следующие |
|||||||
три шага дадут y(g) для gfr\VLg$S. |
|
|
_ |
|
|
|
||||
(1) Найдем |
значения т г, для |
которых ф« (go— m tg) < |
1. |
Если |
||||||
таких значений нет, положим |
y(g) = 0 |
и |
перейдем |
к |
нахожде-1 |
|||||
нию у (g), где g <£S U S'* Если существуют значения m t(i= |
1, ..., q), |
|||||||||
для которых ф в(go— m tg) ■< 1 , то полагаем |
|
|
|
|
|
|||||
|
у (g) = max [ 1 |
— |
ф„ (gQ— |
mig)]/mi. |
|
|
|
( 3 ) |
||
|
|
|
|
|
|
|
|
|
|