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

DM.III.6n

.doc
Скачиваний:
8
Добавлен:
27.05.2015
Размер:
801.28 Кб
Скачать

3. Включим одну из вновь помеченных вершин, например , в строящуюся аугментальную цепь. Учитывая, что вершины и уже помечены, пометим остальные вершины, смежные вершине . Множество таких вершин состоит из одной вершины , т.к. , эта вершина получает метку .

4. Добавим одну из вершин, смежных с и отличных от , в цепь. Например, . Пометим непомеченные вершины, смежные вершине ; это вершины и . Ребро является обратным, а , поэтому вершина получает метку . Поскольку и ребро – прямое, сток получает метку . Включая в цепь, построим аугментальную цепь. Эту цепь удобно записать следующим образом

.

Стрелка «» ставится тогда, когда ребро, соединяющее смежные вершины цепи, прямое, стрелка «», когда это ребро – обратное.

5 . Так как все ребра в построенной цепи прямые, поток через нее увеличен на величину (рис. 112).

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

7. Следующая возможная аугментальная цепь

строятся аналогично. Направления всех ее дуг совпадают с направлением потока, поэтому в этих дугах поток может быть увеличен на 5 (рис. 113).

8 . Далее, строим цепь . Здесь, кроме того, необходимо учесть, что в вершину входят два ненулевых потока. Поэтому суммарный поток из в , т.е. поток через дугу равен (рис. 114).

9 . Опять стираем все метки и для полученного потока строим очередную аугментальную цепь. Просматривая вершины, смежные , видим, что через вершину дальнейшее наращивание потока невозможно. Поэтому помечаем только вершины и , для первой из них имеем , а для второй – . Будем увеличивать поток через вершину , т.е. включим ее в аугментальную цепь. Рассматривая вершины и , смежные этой вершине, видим, что дуга из в нагружена до ее пропускной способности. Следовательно, увеличение потока через вершину невозможно. Поэтому включаем в цепь вершину . Просматриваем смежные с ней вершины и , заключаем, что они имеют одинаковые метки . Выбирая вершину , видим, что теперь в цепь можно включить только вершину . Получим аугментальную цепь

.

Во всех дугах, которые входят в эту цепь, увеличиваем поток на 1 (рис. 115).

10. Дальнейшее наращивание потока возможно только через вершину . Эта вершина получает метку . Просматриваем смежные ей вершины и . Первую из них помечаем , а вторую – . Включим в цепь вершину , тогда, как нетрудно заметить, остальные вершины аугментальной цепи находятся однозначно. Это цепь

.

В о всех дугах, входящих в эту аугментальную цепь, поток опять можно увеличить на 1 (рис. 116).

11. Очередная аугментальная цепь вновь будет включать вершину и вершину , теперь с меткой . За будет следовать вершина (увеличение потока через вершины и невозможно), которая получает метку . За вершиной может следовать только вершина ; ей присваивается метка . Дуга , идущая из в , имеет ориентацию, противоположную направлению потока, поэтому вершине , смежной , даем метку . Далее обычным образом включаем в цепь вершины и . Получаем аугментальную цепь

.

В прямых дугах этой цепи поток на 2 увеличивается, а в обратной дуге на 2 уменьшается (рис. 117). При этом, как нетрудно заметить, в вершине происходит перераспределение потока.

12. При попытке построить очередную аугментальную цепь убеждаемся, что это невозможно: вершины , , , а значит и вершина , оказываются непомеченными. Поэтому величина максимального потока в сети будет равна сумме потоков, входящих на предыдущем шаге в слив : . Минимальный разрез проходит по дугам , , , идущим в непомеченные вершины.

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

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

122

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]