Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Мат. мет. исл. оп Погорелов / Лекции по мат. мет. ИО.doc
Скачиваний:
67
Добавлен:
26.03.2015
Размер:
3.62 Mб
Скачать

8.1. Терминология теории графов

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

Граф G = (N, A) состоит из множества узлов N и множества дуг А. В неориентированном графе дуги являются неупорядоченными парами вершин ; . В ориентированном графе дуги являются упорядоченными парами узлов (i, j). Обход узлов графа представляет собой упорядоченный список узлов , такой, что в неориентированном графе:, или в ориентированном графе: либо, либодля. Обход называется путем, если – различны, ициклом, если различны, но . Граф называется связным, если существует путь, соединяющий каждую пару узлов.

а б

Рис. 8.1. Примеры ориентированного графа (а) и дерева (б)

Сеть ациклична, если она не содержит циклов. Сеть является деревом, если она связна и ациклична. Сеть (N′, A′) называется подсетью (N, A), если N′ N и A′ A. Подсеть (N′, A′) является остовным деревом, если это дерево и N′ = N.

8.2. Задача потока минимальной стоимости

Пусть обозначает величину потока какого-либо материала по дуге. Пусть ,i N, обозначает величину потока, входящего в сеть в узле i N. Если , то узел являетсяисточником (подводящим единиц потока). Если, то узел являетсяприемником (расходующим единиц потока). Пусть– это стоимость единицы потока на дуге (i, j) A. Задача потока минимальной стоимости формулируется следующим образом:

минимизировать при ограничениях:

, для всех ,

, для всех .

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

8.3. Метод остовного дерева

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

  1. Выбираем множество T A (n – 1) дуг, образующих остовное дерево, и делим оставшиеся A \ T дуг на две группы L и U.

  2. Приравниваем для каждой дуги (i, j) L и для каждой дуги (i, j) ∈ U.

  3. Используем найденные значения потока для определения потоков для дуг (i, j) T. Начинаем с определения потоков на дугах, инцидентных листьям дерева Т. Затем последовательно определяем потоки на других дугах Т.

Метод остовного дерева с дает допустимое решение.

Теорема 8.1. Вектор потока {} является решением задачи тогда и только тогда, когда он является базисным решением.