Тысяча полезных мелочей    

МЕТОДЫ ОПРЕДЕЛЕНИЯ КРАТЧАЙШЕГО ПУТИ МЕЖДУ ВЕРШИНАМИ ГРАФА

МЕТОДЫ ОПРЕДЕЛЕНИЯ КРАТЧАЙШЕГО ПУТИ МЕЖДУ ВЕРШИНАМИ ГРАФА

Зябиров Э.В. Токарев С.П. Федосеева Л.И. Статья в формате PDF 310 KB

Анализ алгоритмов, применяемых в настоящее время для поиска кратчайших путей между вершинами графа, позволил выявить алгоритмы Уоршолла, Дейкстры, Форда [1]. Все алгоритмы хаpaктеризуются разными вычислительными затратами и позволяют решать поставленную задачу, но наиболее эффективным считается алгоритм Дейкстры, предложенный в 1959 году.

Перед началом выполнения алгоритма все вершины и дуги не отмечены. Каждой вершине в ходе выполнения алгоритма присваивается число d(xi), равное длине кратчайшего пути из xi в xj, включающего только отмеченные вершины.

Выполняется присвоение начальных значений, для чего необходимо обозначить d(xi) пометку исходной вершины и считать, что d(xi) = 0. Отметить постоянной пометкой исходную вершину xi и положить y = xi, где y - последняя из отмеченных вершин. Остальные вершины имеют временные пометки и считать, что для xj ≠ y d(xj) = ∞. Алгоритм итерационный. Каждая итерация состоит из ряда шагов. Алгоритм Дейкстры рассмотрен на примере взвешенного графа (рис. 1,a). Матрица весов дуг приведена на рис. 1,b. Требуется найти кратчайший путь от вершины x1 до вершины x6.

 

Рис. 1. Пример поиска кратчайшего пути: a - граф; б - матрица весов дуг

Выполняется присвоение начальных значений: d(x1) = 0; xi ≠ x1 d(xi) = ∞.

Для каждой итерации, в соответствующую строку таблицы заносится отмеченная вершина и текущие значения d(xi). Для 1-й итерации будем иметь:

y = x1. Г(x1) = {x2, x3, x4}.

Для всех вершин, входящих в Г(x1), пометки которых временные, необходимо пересчитать d(xi) в виде:

d(x2) = min [d(x2), d(x1) + t(x1, x2)] = min [∞, 0 + 4] = 4.

Аналогично для d(x3), d(x4). Массив временных пометок будет иметь вид: {d(x2), d(x3), d(x4)} = 4, 3, 7}.

Поскольку величина d(x3) = 3 является минимальной, то вершина x3 отмечается x3*. Также отмечается и дуга (x1, x3)*. Наименьшее из значений d(xi) среди неотмеченных вершин в таблице выделено полужирным шрифтом.

Текущее дерево кратчайших путей состоит из дуги (x1, x3)* (рис. 2,а).

Таким образом, выполнив еще 4 итерации, получим окончательно построенное дерево кратчайших путей, которое состоит из дуг (x1, x3)*, (x1, x2)*, (x3, x5)*, (x2, x4)* и (x5, x6)* (рис. 2,д).

    

а                        б                         в                              г                          д
Рис. 2. Текущие деревья кратчайшего пути ─ a, б, в, г и окончательно построенное дерево кратчайших путей ─ д

Вычисления по алгоритму Дейкстры

Итерация

Отмеченная вершина

Расстояние до вершины

d(x1)

d(x2)

d(x3)

d(x4)

d(x5)

d(x6)

Начало

x1

0

∞

∞

∞

∞

∞

1
итерация

x1*

0

4

3

7

∞

∞

2
итерация

x3*

0

4

3*

7

6

∞

3
итерация

x2*

0

4*

3*

7

6

∞

4
итерация

x5*

0

4*

3*

7

6*

8

5
итерация

x4*

0

4*

3*

7*

6*

8

Кратчайший путь, соединяющий вершину x1 с вершиной x6, состоит из дуг (x1, x2), (x2, x5) и (x5, x6) имеет длину 4 + 2 + 2 = 8. Это не единственный кратчайший путь между вершинами x1 и x6. Путь, состоящий из дуг (x1, x3), (x3, x5) и (x5, x6) имеет длину 3 + 3 + 2 = 8 и также является кратчайшим путем между вершинами x1 и x6.

Существуют алгоритмы более эффективные, чем процеДypa многократного повторения алгоритма Дейкстры. Эти алгоритмы принадлежат Флойду и Данцигу. В обоих алгоритмах для длин дуг допускаются отрицательные значения, однако не допускается наличие контуров отрицательной длины.

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

Список литературы

1. Майника Э. Алгоритмы оптимизации на сетях и графах. - М.: Мир, 1981. - 324 с.

2. Новиков Ф.А. Дискретная математика для программистов. - СПб: Питер, 2000. - 304 с.

3. Хаггарти Р. Дискретная математика для программистов. - М.: Техносфера, 2005. - 400 с.



ПАМЯТЬ В ПРОЦЕССЕ ИЗУЧЕНИЯ ИНОСТРАННОГО ЯЗЫКА

ПАМЯТЬ В ПРОЦЕССЕ ИЗУЧЕНИЯ ИНОСТРАННОГО ЯЗЫКА Статья в формате PDF 311 KB...

09 10 2026 20:30:33

АСПЕКТЫ АНАЛИЗА КОММУНИКАЦИИ

АСПЕКТЫ АНАЛИЗА КОММУНИКАЦИИ Статья в формате PDF 136 KB...

03 10 2026 2:20:38

ЭКОЛОГО-БИОЛОГИЧЕСКАЯ ХАРАКТЕРИСТИКА ТЕРРИТОРИИ ПРИРОДНОГО ПАРКА «НУМТО» (ХАНТЫ-МАНСИЙСКИЙ АВТОНОМНЫЙ ОКРУГ)

ЭКОЛОГО-БИОЛОГИЧЕСКАЯ ХАРАКТЕРИСТИКА ТЕРРИТОРИИ ПРИРОДНОГО ПАРКА «НУМТО» (ХАНТЫ-МАНСИЙСКИЙ АВТОНОМНЫЙ ОКРУГ) В статье дана комплексная хаpaктеристика природных условий территории природного парка «Нумто»: приводятся сведения по геоморфологии, климату, гидрографии, растительному покрову, фауне уникального участка водно-болотных угодий на стыке подзон северной и средней тайги Западной Сибири. ...

28 09 2026 8:57:35

МЕХАНИЗМЫ ЧУВСТВИТЕЛЬНОСТИ К АСПИРИНУ ПРИ АСТМЕ

МЕХАНИЗМЫ ЧУВСТВИТЕЛЬНОСТИ К АСПИРИНУ ПРИ АСТМЕ Статья в формате PDF 121 KB...

24 09 2026 19:16:12

Возрастные параметры прироста массы тела бычков симментальской породы при смешанной инвазии фасциолеза и дикроцелиоза в Кабардино-Балкарской Республике

Возрастные параметры прироста массы тела бычков симментальской породы при смешанной инвазии фасциолеза и дикроцелиоза в Кабардино-Балкарской Республике В возрастные периоды от 6 до 9 мес. инвазированные смешанной инвазией фасциолеза и дикроцелиоза бычки симментальской породы пастбищного содержания отставали в приросте массы тела на 9,7 %, в возрасте от 12 до 15 мес. на 12,9 % и в возрасте от 15 до 18 мес. на 15,5 %, что отрицательно влияет на убойные и технологические качества животных. ...

23 09 2026 21:41:41

СРАВНИТЕЛЬНЫЙ АНАЛИЗ ОРИЕНТИРОВОЧНО-ИССЛЕДОВАТЕЛЬСКОГО ПОВЕДЕНИЯ КРЫС ЛИНИИ ВИСТАР И WAG/RIJ С ГЕНОТИПОМ А1А1 ПО ЛОКУСУ TAQ 1A ДОФАМИНОВОГО РЕЦЕПТОРА ВТОРОГО ТИПА (DRD2)

СРАВНИТЕЛЬНЫЙ АНАЛИЗ ОРИЕНТИРОВОЧНО-ИССЛЕДОВАТЕЛЬСКОГО ПОВЕДЕНИЯ КРЫС ЛИНИИ ВИСТАР И WAG/RIJ С ГЕНОТИПОМ А1А1 ПО ЛОКУСУ TAQ 1A ДОФАМИНОВОГО РЕЦЕПТОРА ВТОРОГО ТИПА (DRD2) В статье изложены результаты тестирования ориентировочно-исследовательского поведения крыс указанных линий, которые показали, что крысы линии WAG/Rij обладают более выраженной двигательной активностью и исследовательской деятельностью по сравнению с крысами линии Вистар. ...

21 09 2026 5:31:22

ДОЛЖИКОВ ВЛАДИМИР НИКОЛАЕВИЧ

ДОЛЖИКОВ ВЛАДИМИР НИКОЛАЕВИЧ Статья в формате PDF 296 KB...

19 09 2026 1:20:20

ПАПУЛОВ ЮРИЙ ГРИГОРЬЕВИЧ

ПАПУЛОВ ЮРИЙ ГРИГОРЬЕВИЧ Статья в формате PDF 308 KB...

17 09 2026 3:20:11

К ВОПРОСУ О ПОВТОРЕ КАК ЯЗЫКОВОМ ЯВЛЕНИИ

Статья в формате PDF 247 KB...

15 09 2026 7:25:15

ЭКОНОМИЧЕСКИЕ КРИЗИСЫ ХХ-ХХI ВЕКА

ЭКОНОМИЧЕСКИЕ КРИЗИСЫ ХХ-ХХI ВЕКА Статья в формате PDF 257 KB...

10 09 2026 0:31:49

ИЗЫСКАННЫЙ БУКЕТ ВКУСА ДЛЯ ОАО «АЛКОН»

ИЗЫСКАННЫЙ БУКЕТ ВКУСА ДЛЯ ОАО «АЛКОН» Статья в формате PDF 266 KB...

09 09 2026 10:30:39

СИНДРОМ ЖИЛЬБЕРА

СИНДРОМ ЖИЛЬБЕРА Статья в формате PDF 300 KB...

02 09 2026 23:48:43

Еще:
Поддержать себя -1 :: Поддержать себя -2 :: Поддержать себя -3 :: Поддержать себя -4 :: Поддержать себя -5 :: Поддержать себя -6 :: Поддержать себя -7 :: Поддержать себя -8 :: Поддержать себя -9 :: Поддержать себя -10 :: Поддержать себя -11 :: Поддержать себя -12 :: Поддержать себя -13 :: Поддержать себя -14 :: Поддержать себя -15 :: Поддержать себя -16 :: Поддержать себя -17 :: Поддержать себя -18 :: Поддержать себя -19 :: Поддержать себя -20 :: Поддержать себя -21 :: Поддержать себя -22 :: Поддержать себя -23 :: Поддержать себя -24 :: Поддержать себя -25 :: Поддержать себя -26 :: Поддержать себя -27 :: Поддержать себя -28 :: Поддержать себя -29 :: Поддержать себя -30 :: Поддержать себя -31 :: Поддержать себя -32 :: Поддержать себя -33 :: Поддержать себя -34 :: Поддержать себя -35 :: Поддержать себя -36 :: Поддержать себя -37 :: Поддержать себя -38 ::