Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Баушев, Гадасина - Оптимизационные задачи на се...doc
Скачиваний:
5
Добавлен:
01.04.2025
Размер:
4.39 Mб
Скачать

§ 3. Задача о построении остова минимального веса

Рассмотрим неориентированную сеть , т. е. связный граф, на ребрах которого задана вещественная функция (вес) . Если – подграф графа , то его весом называется число .

Пусть – класс всех остовных деревьев графа . В этом параграфе мы рассмотрим задачу

, (4.3)

называемую задачей о построении остова минимального веса для сети .

Задача (4.3) играет важную роль во многих разновидностях проблемы оптимального проектирования сети1).

Мы рассмотрим два наиболее известных алгоритма ее решения. Предварительно отметим, что дерево кратчайших путей от некоторого узла до остальных узлов сети, вообще говоря, не обязательно является решением задачи (4.3), как это показано на рис. 4.4. Поэтому ее решение требует использования алгоритмов, отличных от алгоритмов, рассмотренных в главе 3.

Рис. 4.4. Дерево кратчайших путей от узла до остальных узлов (б) и остов минимального веса (в) для сети (а).

Для обоснования приводимых далее алгоритмов решения задачи (4.3) нам понадобятся несколько вспомогательных утверждений.

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

Доказательство. Пусть – компоненты связности графа . Поскольку каждая из компонент по условию не содержит циклов, то все они являются деревьями. Рассмотрим два случая:

Поскольку , и граф является связным, то найдется ребро , один конец которого , а другой – . Обновим наши множества следующим образом:

, . (4.4)

Граф по-прежнему является деревом, но порядок его на единицу больше первоначального. Процедуру обновления (4.4) будем повторять до тех пор, пока это возможно. Обозначим итоговое дерево . Очевидно, что и .

. Рассмотрим компоненту . Будем применять к ней процедуру обновления (4.3.2), модифицированную следующим образом. Если оказалось, что для ребра , , то полагаем

, . (4.5)

Если же , то как и раньше, полагаем

, . (4.6)

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

и .■

Следствие 4.4. Если в условиях предложения 4.4 , то граф является остовом для графа .

Доказательство. Поскольку компоненты связности графа являются деревьями, то

.

С другой стороны, по условию . Отсюда имеем и . Следовательно, и граф является деревом, т. е. остовом графа .■

Замечание 4.4. Из доказательства следствия 4.4. видим, что имеет место еще одна характеризация дерева (см. теорему 4.1). А именно, граф является деревом тогда и только тогда, когда не содержит циклов и .

Предложение 4.5. Если в графе отсутствуют циклы, , то в графе имеется не более одного цикла.

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

Следствие 4.5. Если граф является деревом, , то граф содержит ровно один цикл.

Следствие 4.6. Пусть - дерево, , - цикл графа , содержащий , . Тогда граф также является деревом.

Определение 4.6. Предположим, что множество узлов сети разбито на два непустых непересекающихся множества:

(4.7)

Множество ребер сети , концы которых лежат в разных элементах разбиения (4.3.5), т. е. множество

(4.8) называется разрезом, или разрезающим множеством сети , порожденным разбиением (4.3.5).

Предложение 4.6. Пусть ребро минимального веса, входящее в произвольный разрез (4.8) сети . Тогда в сети существует остов минимального веса (т.е. решение задачи (4.3)), содержащий ребро .

Доказательство. Пусть – решение задачи (4.3), . Поскольку – связный граф, то в цикл графа обязательно входит какое-нибудь ребро из разреза (4.3.6), отличное от . По условию . Следовательно, остов также является решением задачи (4.3). ■

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

Доказательство. Из предложения 4.4 следует, что множество непустое. Дальнейшее доказательство по существу совпадает с доказательством предложения 4.6. Разница только в том, что в предложении 4.6 остов минимального веса отыскивается в более узком классе остовов. ■