Бронов, С. А. Исследование операций: конспект лекций
49
0)(
00
xf ,
где
— число этапов (подзадач); в рассмотренном примере
.
Алгоритм обратной прогонки
В алгоритме обратной прогонки движение происходит от последнего уз-
ла к первому.
Этап 3. Последующий (конечный) узел 7; предыдущие узлы 5 и 6.
Определяются пути от каждого предыдущего узла 5 и 6 до конечного:
путь (5,7) из узла 5 до узла 7 равен 9 км;
путь (6,7) из узла 6 до узла 7 равен 6 км.
Этап 2. Последующие узлы 5 и 6; предыдущие узлы 2, 3 и 4.
Определяются кратчайшие пути от каждого предыдущего узла до каж-
дого последующего с учётом последующего пути.
Для узла 5 существует три возможных пути: (2,5), (3,5) и (4,5). К ним
нужно приплюсовать ранее найденный путь до узла 7 от узла 5:
путь (2,5)+(5,7)=12+9=21 км;
путь (3,5)+(5,7)=8+9=17 км;
путь (4,5)+(5,7)=7+9=16 км,
из которых кратчайшим является путь (4,5)=16 км.
Для узла 6 существует два возможных пути: (3,6) и (4,6). К ним нужно
приплюсовать ранее найденный путь до узла 7 от узла 6:
путь (3,6)+(6,7)=9+6=15 км;
путь (4,6)+(6,7)=13+6=19 км,
из которых кратчайшим является путь (3,6)=15 км.
Итоговые результаты этапа 2:
кратчайший путь от узла 5 равен 16 км (4,5);
кратчайший путь от узла 6 равен 15 км (3,6).
Этап 1. Последующие узлы 2, 3 и 4; предыдущий (начальный) узел 1.
Определяются кратчайшие пути от предыдущего узла до каждого после-
дующего с учётом кратчайшего последующего пути.
До каждого из узлов 2, 3, 4 существует лишь по одному возможному пу-
ти от узла 1: (1,2), (1,3) и (1,4). Если мы находимся в узле 5, то кратчайшим
является путь (4,5), если в узле 6, то путь (3,6). Поэтому имеется, не три, а
два варианта пути:
путь (1,4)+(4,5)=5+16=21 км;
путь (1,3)+(3,6)=8+15=23 км,
из которых кратчайшим является путь (1)+(4,5)=21 км.
Окончательный результат: кратчайшее расстояние (1,7) равно 21 км;
переход между узлами 1 и 7 отыскивается следующим образом: соединяются
между собой кратчайшие пути, наёденные на всех этапах: