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

Анализ алгоритмов, применяемых в настоящее время для поиска кратчайших путей между вершинами графа, позволил выявить алгоритмы Уоршолла, Дейкстры, Форда [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
150 KB...
31 08 2026 5:45:35
Статья в формате PDF
210 KB...
30 08 2026 21:55:49
Статья в формате PDF
125 KB...
29 08 2026 10:39:26
Статья в формате PDF
182 KB...
28 08 2026 1:32:51
27 08 2026 0:13:28
Статья в формате PDF
264 KB...
25 08 2026 3:31:57
Статья в формате PDF
120 KB...
24 08 2026 18:15:51
Статья в формате PDF
206 KB...
23 08 2026 2:28:16
Статья в формате PDF
118 KB...
22 08 2026 7:23:11
Статья в формате PDF
283 KB...
21 08 2026 5:28:35
Статья в формате PDF
100 KB...
19 08 2026 3:13:31
Статья в формате PDF
119 KB...
18 08 2026 9:59:43
Статья в формате PDF
285 KB...
17 08 2026 22:13:13
Статья в формате PDF
135 KB...
16 08 2026 9:47:27
Статья в формате PDF
101 KB...
15 08 2026 5:53:31
Статья в формате PDF
130 KB...
14 08 2026 17:41:32
Статья в формате PDF
110 KB...
13 08 2026 1:36:57
Статья в формате PDF
106 KB...
12 08 2026 7:37:24
Приведены закономерности рангового распределения по рейтингу 110 стран, среди них Россия занимала 49-е место. Для анализа были приняты показатели: 1) инновационные затраты/суммарный балл; 2) инновационная эффективность/суммарный балл); 3) инновационная эффективность/инновационные затраты. Сравнение показывает весьма скромную инновационную активность России, но при этом значения всех трех относительных показателей инновационной активности у России положительные или позитивные. Только изобретения имеют мировую новизну и достаточно высокую конкурентоспособность, а полезные модели нужны в основном для внутреннего употрeбления. В итоге в стране образуется так называемый инновационный крест. Динамика изобретений куда значимее, если при этом снизить справедливое в неспокойной экономике колебательное возмущение изобретателей.
...
11 08 2026 16:31:58
Статья в формате PDF
114 KB...
10 08 2026 18:26:56
Статья в формате PDF
107 KB...
09 08 2026 11:55:33
Статья в формате PDF
204 KB...
08 08 2026 23:29:29
Статья в формате PDF
729 KB...
07 08 2026 16:39:44
Статья в формате PDF
265 KB...
06 08 2026 14:54:39
Проведено поэтапное исследование, которое включало в себя оценку индивидуальных резервов соматического здоровья (СЗ) и оценку функционального состояния вегетативной нервной системы на основе исследования вариабельности ритма сердца (ВРС). Уровень СЗ оценивался в баллах. В результате проведенного нами исследования было выявлено, что риск манифестации хронической сосудистой патологии достаточно высок в группе с низкими энергетическими резервами организма (уровнем здоровья «низким» и «ниже среднего»), а таковых у нас оказалось 54,5 % из всех обследованных студентов БелГУ. Следующим этапом исследования была проверка этой версии. При анализе вариабельности сердечного ритма учитывались: показатель общей мощности спектра нейрогумopaльной регуляции сердечного ритма (TP); показатель, отражающий реактивность парасимпатического отдела вегетативной нервной системы при проведении АОП; визуальная оценка степени кардио-респираторной синхронизации на основании данных спектрального анализа ВРС и пневмограммы. У обследуемых с низким уровнем соматического здоровья признаки вегетативной дисфункции различной степени выраженности наблюдались в 92,5 % случаев. В группе с низким уровнем СЗ реактивность парасимпатического отдела ВНС, отражающая адаптационные резервы организма, оказалась так же низкой. Таким образом, наша версия о взаимосвязи уровня соматического здоровья и частотой встречаемости вегетативной дисфункции полностью подтвердилась. Чем ниже уровень соматического здоровья, тем более вероятна манифестации хронической сосудистой патологии. При высоком уровне здоровья риск возникновения хронической соматической патологии минимален.
...
05 08 2026 13:58:58
Статья в формате PDF
149 KB...
03 08 2026 16:55:56
Статья в формате PDF
269 KB...
02 08 2026 12:51:16
Статья в формате PDF
292 KB...
01 08 2026 0:41:31
Статья в формате PDF
276 KB...
31 07 2026 11:17:36
Статья в формате PDF
300 KB...
30 07 2026 16:49:15
Статья в формате PDF
264 KB...
29 07 2026 3:50:27
Статья в формате PDF
101 KB...
28 07 2026 3:27:10
Статья в формате PDF
329 KB...
27 07 2026 16:13:55
26 07 2026 15:47:15
Статья в формате PDF
107 KB...
25 07 2026 0:21:43
Статья в формате PDF
244 KB...
23 07 2026 6:44:38
Еще:
Поддержать себя -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 ::