- •Теория графов
- •I. Основные определения
- •II. Характеристики ориентированного графа
- •Графы и отношения
- •III. Характеристики неориентированных графов
- •Связанность графа
- •Эйлеровы графы
- •Гамильтоновы циклы и цепи
- •Цикломатическое число
- •Хроматическое число
- •Примеры деревьев
- •Изоморфизм графов
- •Гиперграфы (сети, блок-схемы)
- •IV. Задачи в теории графов Построение графа кратчайшей длины
- •Определение кратчайшего пути
- •Транспортные сети
IV. Задачи в теории графов Построение графа кратчайшей длины
Дано: множество вершин х, построить связанный граф G=(x,u) такой, чтобы сумма длин ребер была минимальной ( ).
Пример практического использования: соединить города (населенные пункты) дорогами (или линиями электропередач), так что бы суммарная длина была минимальной. Такой граф G=(x,u) всегда дерево, т.к. если есть цикл, то одно ребро можно устранить.
Определение кратчайшего пути
Дано: неориентированный граф, найти цепь, соединяющую две вершины графа и имеющую минимальную длину. (Если две вершины назвать: начало и конец, то полученная цепь будет путем из одной точки в другую) (Дано G=(X,U), a,b x, найти цепь (путь): ul...ui...un, такую, что ).
а) Ребра единичной длины: конечной точке приписывая индекс 0, всем смежным - 1, далее всем смежным не имеющим индекса - 2 и т.д. Индекс вершины равен расстоянию до конечной точки. Надо двигаться в сторону уменьшения индексов.
б) Ребра произвольной длины: конечной вершине приписывается индекс 0, смежным ,
где ui - инцидентное конечной вершине ребро,
- её длина.
Далее всем смежным вершинам приписывается индекс , где – индекс предыдущей вершины, ui - ребро, соединяющее предыдущую вершину с последующей. Если вершина уже имела индекс, выбирается наименьший и так далее до начальной вершины (или до конца всех вершин). Индекс равен расстоянию до конечной точки.
Надо двигаться от начала до конца по тем ребрам, для которых длины ребер совпадают с разностью индексов вершин.
Транспортные сети
Транспортной сетью называется конечный ориентированный граф без петель, у которого:
1) существует 1 и только 1 вершина, называемая входом х0, такая, что (то есть дуги только выходят из х0),
2) существует 1 и только 1 вершина, называемая выходом, такая, что (то есть дуги только входят в z),
3) каждой дуге соотнесено число c(ui)>0, называемое пропускной способностью дуги.
Обычно стараются выбрать размерность c(ui) так, что c(ui) - целое. Поток по дуге φ(ui) -удовлетворяет условию 0≤φ(ui)≤c(ui), φ(ui) – показывает количество вещества, проходящее по дуге, c(ui) - максимальное количество вещества, которое может пропустить дуга. Если φ(ui)=c(ui), - дуга насыщена (пропускает максимум, что может). Поток транспортной сети
, ui – инцидентный x0, uj – инцидентны z0.
Иногда дуге соотносится величина d(ui) – стоимость единичного потока.
Решаются обычно две задачи:
1. По критерию максимального потока: Найти наибольший поток, который может пропустить транспортная сеть – φ(ui) (при этом определяется также какой поток идет по каждой дуге φ(ui)).
2. По критерию стоимости: По заданному потоку φ<φ0 необходимо найти такое распределение потока по дугам φ(ui), что бы стоимость прохождения потока в сети была минимальной: .