Файл: Ху, Т. Целочисленное программирование и потоки в сетях.pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 15.10.2024
Просмотров: 210
Скачиваний: 0
350 |
ГЛ. 17. ПРЯМОЙ АЛГОРИТМ |
знакомо: это ограничение, выражающее границу суммы небазис ных (исходных) переменных. Обозначим индекс этой строки, через L. Ограничение имеет вид
tb + 2 Xj = <Llо- |
(3) |
j£J |
|
Целочисленная константа ai0 выбирается достаточно большой, для того чтобы любое допустимое целочисленное решение удовле творяло уравнению (3) при неотрицательном целочисленном зна чении слабой переменной Хорошо известно, что добавление1 строки (3) позволяет получить допустимое решение двойственнойзадачи. М ы не будем подчеркивать здесь это свойство L -строки, однако оно играет важную роль в прямом алгоритме х).
Цель |
введения L -строки заключается в том, чтобы помочь |
в выборе |
ведущего столбца. Пусть a Lj обозначает элемент в /-м |
столбце и в L -й строке. Дл я каждого столбца а;-определим новый вектор-столбец 2) г;- следующим образом:
( 4 )
Правило выбора ведущего столбца состоит в следующем: столбец. а8 выбирается в качестве ведущего, если rs является лексикогра фически минимальным среди столбцов rj, у которых a Lj > 0.
Сформулировать кратко критерий выбора производящей строки не удается. Поэтому сначала будет сформулировано основное требование к производящей строке, а затем обсуждено значение такого подхода.
Потребуем, чтобы правило выбора производящей строки обла дало следующей особенностью:
строка а может быть взята |
в качестве производящей, |
|
если выбрав ее в качестве |
таковой, м ы |
для каждой |
строки i за конечное число симплексных итераций |
||
получим таблицу, в которой ais ^ ai0. |
(5) |
Такое требование не означает, что условие ais ^ ai0 должно выполняться для всех i в некоторой таблице (что является необ
ходимым и достаточным условием переходного цикла). Н а ш е требование допускает возможность того, что ais > ai0 для всех i
в некоторой таблице.
1) |
См. Юнг [224] и [225] и Гловер [76], |
а также § 17.4. |
2) |
В определении (4) мы предполагаем, |
что вектор-столбец аj из (1) |
содержит т + 1 компонент. Вектор Tj будет использоваться для таблиц, которые расширены введением в систему (1) L-строки и тождественных соотношений для небазисных переменных. Предполагается, что tj содержит компоненты, соответствующие всем строкам расширенной таблицы. Един ственным ограничением на такое расширение является то, что нулевая строка таблицы всегда соответствует целевой функции.
17.1. ВВЕДЕНИЕ И АЛГОРИТМ |
351 |
Любое правило выбора производящей строки, обладающее свойством (5), будем называть допустимым правилом. Выполнения
свойства (5) достаточно х) для доказательства конечности. Однако само по себе свойство (5) еще не обеспечивает конструктивного способа получения допустимых правил выбора производящей строки. С помощью теоремы 17.1, изложенной ниже, и некоторых дополнительных рассуждений будет получен такой способ, позво ляющий: сформулировать допустимые правила.
Поскольку выбор производящей строки является задачей нетривиальной, по-видимому, должно существовать несколько строк, которые могут служить в качестве производящих. В предва рительных рассуждениях и в примере начала этой главы в качестве производящей использовалась ведущая строка симплекс-алго ритма. Эта строка всегда дает отсечение, которое является веду щей строкой с ведущим элементом, равным единице. По-видимому, в таблице существуют и другие строки, из которых могут быть получены отсечения с такими же свойствами. Допустим, что отсечение получается по формуле *2)
“ - ■ [ - £ ] + 2 [ £ ] ( - * > ■ |
(*> |
Строка и может стать производящей тогда и только тогда, когда
где 0S определяется из условия
= 1Н1П ai0
Определим множество V (s) как совокупность строк3), удовлетво
ря ющ их условию (7).
х) Свойство (5) не самое слабое ограничение, которое можно исполь зовать для получения допустимых правил выбора производящей строки. Однако более слабые ограничения, по-видимому, потребуют более сложных построений, и поэтому мы используем свойство (5), которое просто форму лируется и является достаточным условием конечности. Другие формулировки можно найти у Гловера [76] и Юнга [225].
2) Полагая X = avs, как это делается в (6), мы получаем в качестве ведущего элемента 1. В отдельных случаях можно взять X <. avs и при этом
= 1 (что сохраняет ведущий элемент, равный 1) и получить более силь |
|
ное («глубокое») отсечение. Эта идея была предложена Вильсоном [214]. |
|
Мы не будем здесь пользоваться этими соображениями, поскольку они при |
|
водят к более сложным |
правилам выбора производящей строки и потому |
усложняют изложение в |
целом. Однако тем, кто интересуется вычислитель |
ными |
аспектами, следует помнить о такой возможности. |
3) |
Иногда автор говорит не о строках из F (s), а о номерах этих строк.— |
Прим. |
ред. |
352 |
ГЛ. 17. ПРЯМОЙ АЛГОРИТМ |
Теперь |
рассмотрим, как можно получить правила выбора |
■строки v £ V (s), обладающей свойством (5). Заметим, что в пере ходном цикле 0S ^ 1. Поэтому ai0 ^ ais для всех i и, следова
тельно, свойство (5) имеет место независимо от того, какую строку выбрать в качестве производящей. Таким образом можно сосредо точить внимание на выборе производящей строки в стационарных
циклах. |
|
|
В стационарном цикле 0S < |
1, и поэтому |
|
откуда строка i может быть выбрана как производящая |
тогда |
|
и только тогда, когда |
|
|
ai0 < |
ais. |
-(8) |
Заметим, что из условий (8) и (5) можно вывести следующее заклю чение: если свойство (5) не выполняется, то существует бесконеч ная последовательность таблиц, в которых строка выбирается в качестве производящей. Поэтому необходимо доказать, что можно выбирать производящую строку среди строк с ais > ai0
и |
при этом будет иметь место свойство (5). |
|
|
||
|
Доказательство этого факта может быть получено как следствие |
||||
из теоремы |
17.1. |
|
|
|
|
|
Т еорема |
17.1. Пусть дана |
таблица, |
в которой |
строка |
с |
индексом |
v — производящая и |
столбец as — |
ведущий. И |
пусть |
a vj — j-й элемент строки,v, a avj — соответствующий коэффи циент строки v в следующей таблице. Если отсечение
|
|
s» = |
[ - S r ] |
+ |
2 [ - S - ] < - ^ ) |
|
|
(») |
||||
|
|
|
|
|
}£J |
|
|
|
|
|
|
|
используется |
в |
качестве ведущей |
строки, |
то |
aVJ- ^ 0 |
для всех |
||||||
j £ J x), кроме |
индекса к слабой переменной |
в (9) и |
|
|
||||||||
|
|
avj< |
avs |
для |
всех |
j 6 /. |
|
|
(10) |
|||
Д оказательство. Действительно, |
— |
|
|
Г а»./ П |
|
|||||||
avj= avj— |
—— |
\avS, откуда |
||||||||||
|
|
|
г |
“| |
|
|
|
|
|
L a v s |
J |
|
|
a 0j |
a v j |
< 1 , |
и |
в силу |
|
^ |
получаем |
||||
следует, что --- = ----- ---- |
aps>>0 |
|||||||||||
|
&v$ |
&v s |
L ^ v s |
J |
|
|
|
|
|
|
|
|
& v j <C d v s •
Дл я того чтобы связать теорему 17.1 с нашими рассуждениями относительно правил выбора производящей строки, вначале
г) f — множество индексов небазисных переменных после преобразо вания.— Прим, перев.