Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Оптимизация пути в графах с контурами



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

Алгоритм Форда.

Общая постановка задачи:

Задан произвольный связный орграф, каждой дуге которого приписано положительное число. Найти минимальный путь между двумя вершинами графа.

Примечание: Порядковая функция графа не задана.

Решение: Для поиска минимального пути между x0 и xn руководствуются следующими правилами:

1. Вершине x0 приписывается метка l0 =0. Всем остальным xi приписывается li.

2. Выбирается произвольная дуга x0®xi и вершине xi приписывается метка li¢=l0+l(x0,xi), где l(x0,xj) - вес дуги между x0 и xi.

3. Для вершины xj с меткой lj ищется вершина xi, от которой идёт такая дуга в xj, что lj¢ < lj и где: lj¢=li+l(xi,xj).

Вершине xj приписывается метка lj¢.

4. После разметки всех вершин графа для произвольной вершины xj с меткой lj рассматриваем все вершины xi с дугами, ведущими в вершину xj, и выбирается новая метка lj¢ < lj и такая, что lj¢ является минимальной из всех возможных меток.

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

6. Выбор минимального пути осуществляют по правилам получения минимального пути для графа без контуров.





Дата публикования: 2015-01-13; Прочитано: 146 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с)...