Минимальные маршруты в нагруженных графах
Граф G(V, X) называется нагруженным, если на множестве ребер графа задана функция, называемая весовой, которая ставит в соответствие каждому ребру х Х графа некоторое число l(x). Значение l(x) называется длиной дуги.
Величине l(x) можно придать разный смысл: затраты на транспортировку, время проезда, расстояние между пунктами, расход бензина и т.д.
Сумма длин ребер, входящих в маршрут, называется длиной маршрута.
Заметим, что если для всех х Х l(x) = 1, то граф можно рассматривать как ненагруженный.
Маршрут в графе G(V, X) из вершины v в вершину w (vw), называется минимальным, если он имеет минимальную длину среди всех маршрутов в графе G(V, X) из вершины v в вершину w.
Ограничимся графами, для которых l(x)>0.
При поиске минимального маршрута в нагруженном графе с l(x)>0
воспользуемся таким же утверждением, что и для ненагруженного графа, а именно:
любой минимальный маршрут является простой цепью.
Рассмотрим теперь задачу поиска минимального маршрута в нагруженном графе.
Пусть граф G(V,X) нагруженный, число вершин n 2, необходимо построить минимальный маршрут из v1 в vn.
Приведем алгоритм.
Шаг 1. Каждой вершине присвоить индекс (vi): (v1) = 0, (vi) = , i 1. окрасить вершину v1 и положить v = v1.
Шаг 2. Для каждой неокрашенной вершины vj изменить индекс по правилу:
(vj) = min {(vj), (v) + l(v, vj)}.
Окрасить ту из вершин, для которой (vj) окажется наименьшим.. окрасить также ребро, ведущее в выбранную на данном шаге вершину vj . Положить v = vj.
Шаг 3. Если v = vj , закончить процедуру, так как кратчайший маршрут из v1 в vn . если v vn , то перейти к шагу 2.
Замечание. Шаг 2 невозможен, если все (vj)= . В этом случае вершина vn недостижима.
Применим изложенный алгоритм к заданному диаграммой графу. Найдем в нем кратчайший маршрут из v1 в v6.
Шаг 1. Окрасим вершину v1 . Присвоим вершинам индексы: (v1) =0, (v2) = (v3)=…= (vn)=. Полагаем v1 = v.
Шаг 2.
(v2) = min {, 0+4} = 4,
(v3) = min {, 0+7} = 7,
(v4) = min {, 0+3} = 3,
(v5) = min {, 0+} = ,
(v6) = min {, 0+} = .
Окрашиваем вершину v4 и ребро {v1, v4}.
Шаг 3. Так как вершина v6 не окрашена, выполняем шаг 2, полагая v = v4.
Шаг 2.
(v2) = min {4, 3+} = 4,
(v3) = min {7, 3+} = 7,
(v5) = min {, 3+3} = 6,
(v6) = min {, 3+} = .
Окрашиваем вершину v2 и ребро {v1, v2}.
Шаг 3. Так как вершина v6 не окрашена, выполняем шаг 2, полагая v = v2.
Шаг 2.
(v3) = min {7, 4+3} = 7,
(v5) = min {6, 4+2} = 6,
(v6) = min {, 4+} = .
Окрашиваем вершину v5 и ребро {v4, v5}.
Шаг 3. Так как вершина v6 не окрашена, выполняем шаг 2, полагая v = v5.
Шаг 2.
(v3) = min {7, 6+} = 7,
(v6) = min {, 6+2} = 8.
Окрашиваем вершину v3 и ребро {v1, v3}.
Шаг 3. Так как вершина v6 не окрашена, выполняем шаг 2, полагая v = v3.
Шаг 2.
(v6) = min {8, 7+2} = 8.
Окрашиваем вершину v6 и ребро {v5, v6}.
Так как вершина v6 окрашена, то работу прекращаем. Получили минимальный маршрут v1 v4 v5 v6 , длина которого равна 8 .
Заметим, что это в данном случае не единственный для вершин v1 и v6 минимальный маршрут, т.к. в алгоритме имелась возможность окрасить вместо ребра {v4, v5} ребро {v2, v5}, тогда бы получили другой маршрут той же длины.
Yandex.RTB R-A-252273-3
- Лекция 2
- Лекция 3
- Лекция 4
- Лекция 5
- Лекция 13
- Лекция 14
- Лекция 16
- Основные понятия
- Понятие множества. Способы задания множеств.
- Понятие множества. Способы задания множеств.
- Отношения между множествами.
- 3, Операции над множествами.
- Алгебра множеств.
- Теорема о количестве подмножеств конечного множества.
- Формула включений и исключений.
- Лекция 2
- 1.Понятие вектора. Прямое произведение множеств.
- 2.Теорема о количестве элементов прямого произведения.
- Понятие вектора. Прямое произведение множеств.
- Теорема о количестве элементов прямого произведения.
- Лекция 3
- 2. Понятие высказывания.
- 3. Логические операции над высказываниями
- 4.Формулы алгебры логики.
- Лекция 4
- 2. Важнейшие равносильности алгебры логики.
- 3.Равносильные преобразования формул.
- Задачи для самостоятельного решения
- Лекция 5
- Дизъюнктивная нормальная форма.
- Конъюнктивная нормальная форма.
- Проблема разрешимости.
- Лекция 6
- Функции алгебры логики.
- 3. Представление произвольной функции алгебры логики в виде формулы алгебры логики.
- 4.Приложения алгебры логики в технике (релейно-контактные схемы).
- Контрольные вопросы
- Лекция 7
- Совершенная дизъюнктивная нормальная форма.
- Совершенная конъюнктивная нормальная форма.
- Совершенная дизъюнктивная нормальная форма.
- 2.Совершенная конъюнктивная нормальная форма.
- Лекция 8
- 2.Понятие минимальной днф. Метод минимизирующих карт.
- 3.Метод Квайна.
- 4.Метод Карно.
- 5.Постановка задачи минимизации в геометрической форме.
- 6.Сокращенная днф.
- 7.Тупиковая днф. Днф Квайна.
- Лекция 9
- Некоторые логические операции. Двоичное сложение.
- Полином Жегалкина.
- Некоторые логические операции. Двоичное сложение.
- Полином Жегалкина.
- Лекция 10
- Полная система . Достаточное условие полноты.
- Критерий полноты системы булевых функций.
- Независимые системы. Базис замкнутого класса.
- Полная система. Достаточное условие полноты.
- Критерий полноты системы булевых функций.
- 3. Независимые системы. Базис замкнутого класса.
- Лекция 11
- Понятие предиката.
- Логические операции над предикатами.
- 1. Понятие предиката
- 2. Логические операции над предикатами
- Лекция 12
- 2. Формулы логики предикатов.
- Значение формулы логики предикатов.
- 4. Равносильные формулы логики предикатов.
- Лекция 13
- Построение противоположных утверждений.
- 3. Прямая, обратная и противоположная теоремы.
- 4. Необходимые и достаточные условия.
- 5. Доказательство методом от противного.
- Задачи для самостоятельного решения
- Лекция 14
- 2. Использование метода математической индукции для нахождения сумм конечного числа слагаемых
- 3. Использование метода математической индукции для доказательства неравенств и делимости выражений, зависящих от n на некоторое число
- 4. Обобщение метода математической индукции
- Контрольные вопросы
- Лекция 15
- Операции над бинарными отношениями.
- 3. Свойства бинарных отношений.
- 4. Специальные бинарные отношения.
- Контрольные вопросы
- Лекция 16
- Функция
- 1. 4. Отображение
- Обратная функция
- 2. Свойства отображений и функций
- 3.Операции над функциями. Свойства операций
- Контрольные вопросы
- Лекция 17
- Основные понятия .
- 2. Смежность, инцидентность, степени вершин.
- 3. Способы задания графов
- Маршруты в неориентированном графе
- Операции над графами.
- Связность. Компоненты связности
- Контрольные вопросы
- Лекция 18
- 2. Метрические характеристики неориентированного графа
- Минимальные маршруты в нагруженных графах
- Задачи на деревьях
- Цикловой ранг графа. Цикломатическое число
- Контрольные вопросы
- Лекция 19
- Эйлеровы цепи и циклы
- Гамильтоновы циклы и цепи
- Эйлеровы цепи и циклы
- Гамильтоновы циклы и цепи.
- Контрольные вопросы
- Лекция 20
- Двудольный граф. Условие существования двудольного графа
- Паросочетания . Реберные покрытия
- Двудольный граф. Условие существования двудольного графа
- Паросочетания. Реберные покрытия
- Контрольные вопросы
- Лекция 21
- Основные определения
- Алгоритм плоской укладки графа
- Контрольные вопросы
- Лекция 22
- Способы задания ориентированного графа
- Путь в ориентированном графе
- 4. Связность. Компоненты связности в орграфе
- Контрольные вопросы
- Лекция 23
- 2. Минимальные пути в нагруженных орграфах
- 3. Порядковая функция орграфа без контуров
- Контрольные вопросы