русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

П.6. Алгоритм нахождение максимального пути


Дата добавления: 2013-12-24; просмотров: 2802; Нарушение авторских прав


Вторая итерация.

Первая итерация.

II этап. Построение кратчайшего пути.

Пятая итерация.

Третья итерация.

Вторая итерация.

Шаг 2. Множество вершин непосредственно следующих за с временными метками . Пересчитываем временные метки этих вершин:

;

;

.

Шаг 3. Одна из временных меток превращается в постоянную:

 

Следовательно, .

Шаг 4. , происходит возвращение на второй шаг.

Шаг 2. Множество вершин непосредственно следующих за с временными метками . Пересчитываем временные метки этих вершин:

;

Шаг 3. Одна из временных меток превращается в постоянную:

 

Следовательно, .

Шаг 4. , происходит возвращение на второй шаг.

Четвёртая итерация.

Шаг 2. Множество вершин непосредственно следующих за с временными метками . Пересчитываем временные метки этих вершин:

;

Шаг 3. Одна из временных меток превращается в постоянную:

 

Следовательно, .

Шаг 4. , происходит возвращение на второй шаг.

Шаг 2. Множество вершин непосредственно следующих за с временными метками . Пересчитываем временные метки этих вершин:

;

Шаг 3. Одна из временных меток превращается в постоянную:

 

Следовательно, .

Шаг 4. , конец первого этапа.

 

 

Шаг 5. Составим множество вершин непосредственно предшествующих вершине с постоянными метками . Проверим для этой вершины выполнение

;

.

Включаем дугу в искомый путь и полагаем .

Шаг 6. , следовательно. возвращаемся к пятому шагу.

Шаг 5. Составим множество вершин непосредственно предшествующих вершине с постоянными метками . Проверим для этой вершины выполнение

;

;

.

Включаем дугу в искомый путь и полагаем .

Шаг 6. , завершение второго этапа.

Кратчайший путь образует последовательность дуг .



 

 

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

1. предшествует , .

2. следует за , .

3. Нет пути между и .

Из-за требуемой ацикличности графа первое и второе условия одновременно не выполнимы.

Перед вычислением максимального пути в орграфе необходимо упорядочить вершины графа по алгоритму Фалкерсона. Сам алгоритм вычисления максимального пути чисто перечислительный. Он перебирает все возможные пути от текущей вершины до всех последующих, достижимых из текущей вершины.

Пусть ‑ длина максимального пути от вершины до вершины , тогда величина удовлетворяет следующим рекуррентным соотношениям:

(1)

Соотношения (1) позволяют легко вычислить длины максимальных путей от до вершин, достижимых из вершины s. Сами пути могут быть построены методом последовательного возвращения (второй этап в алгоритме Дейкстры).

Пример. Граф G задан матрицей весов Ω. Найти длину максимального пути из вершины в и сам этот путь.

 

По данной матрице весов построен граф на рис.15. Этот граф ациклический, поэтому возможно упорядочение его вершин по алгоритму Фалкерсона. Сделаем это графическим способом.

 

 
 
 
 
 
 
Рис. 15
 
 
 

Графический способ упорядочивания вершин графа (алгоритм Фалкерсона)

1. Вершина -не содержит входящих дуг, следовательно, отнесём её к первойгруппе.

2. Вычёркиваем вершину и все дуги, исходящие из . Получим граф на рис.16.

 
 
 
Рис. 16
 
 
 
 

 

В полученном графе опять находим вершины, в которые не заходит ни одна дуга. Это вершина . Отнесём её ко второй группе.

3. Вычёркиваем вершину и все дуги, исходящие из . Получим граф на рис.17.

 

 
 
 
Рис. 17
 
 
 

В полученном графе опять находим вершины, в которые не заходит ни одна дуга. Это вершина . Отнесём её к третьей группе.

4. Вычёркиваем вершину и все дуги, исходящие из . Получим граф на рис.18.

 
 
Рис. 18
 
 
 

 

 
 
Рис. 19
 
 
В полученном графе опять находим вершины, в которые не заходит ни одна дуга. Это вершина . Отнесём её к четвёртой группе.

5. Вычёркиваем вершину и все дуги, исходящие из . Получим граф на рис.19.

 
Рис. 20
 
Находим вершины, в которые не заходит ни одна дуга. Это вершина . Отнесём её к пятой группе.

6. Вычёркиваем вершину и все дуги, исходящие из . Получим граф на рис.20.

Находим вершины, в которые не заходит ни одна дуга. Это вершина . Отнесём её к шестой группе

Изоморфный граф с упорядоченными вершинами представлен на рис.21.

Рис. 21
 
 
 
 
 
 
 
 
 
 
 
 
 

Этап I

,

,

,

,

,

.

Итак, длина максимального пути из в равна 30.

Этап II

Для : ;

.

Включаем дугу в максимальный путь.

Для : ;

;

.

Включаем дугу в максимальный путь.

Для : ;

.

Включаем дугу в максимальный путь.

Для : ;

.

Включаем дугу в максимальный путь.

Для : .

Включаем дугу в максимальный путь.

Искомый путь таков:

 

 

 



<== предыдущая лекция | следующая лекция ==>
Первая итерация. | Применение правовых средств для улучшения экономических показателей компании


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.13 сек.