СЕТЕВЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ КОММИВОЯЖЁРА

В 1859 г. У. Гамильтон придумал игру «Кругосветное путешествие», в которой предлагалось совершить «круговое путешествие» по 20 городам, расположенных в различных частях земного шара. Каждый город соединялся дорогами с тремя соседними так, что дорожная сеть образовывала 30 ребер додекаэдра, в вершинах которого находились города. Обязательным условием являлось требование посетить каждую вершину однократно и возвратиться в исходную.
Задача о гамильтоновых циклах в графе получила различные обобщения. Одно из этих обобщений - задача коммивояжёра, имеющая ряд применений в исследовании операций, в частности при решении некоторых трaнcпортных проблем.
Прокомментируем сетевые методы решения ЗК для таблицы данных, представленной в виде матрицы:
.
Прочерки по диагонали означают, что из пункта i в пункт i ходить нельзя.
Вообще говоря, цикл можно задать системой из пяти подчеркнутых элементов матрицы С. Сумма чисел подчеркнутых элементов есть стоимость цикла. Для данного случая стоимость равна 29. Но как определить цикл меньшей стоимостью?
Жадный алгоритм - алгоритм нахождения наикратчайшего расстояния путём первоначального выбора самого короткого ребра и присоединения к нему следующего самого короткого ребра, при условии, что оно не образует цикла с уже выбранными рёбрами. Для нашего примера:
«Жадным» алгоритм назван потому, что на последних шагах можно жестоко расплатиться за жадность, присоединяя оставшиеся ребра большой длины.
Деревянный алгоритм - алгоритм решения ЗК через построение кратчайшего остовного дерева (рис. 1), для которого строится Эйлеров цикл (рис. 2) и затем Гамильтонов (рис. 3).
Рис. 1 Рис.2 Рис.3
Длина полученного цикла:
Но такие эвристические алгоритмы (жадный, деревянный) являются приблизительными и дают далеко не всегда оптимальный вариант решения.
Следующий метод - «brute-force enumeration» - «перебор животной силой», который основан на переборе всех различных циклов . Для этого составляется граф-дерево. Для исходного примера: что достаточно трудоёмко.
Для сокращения числа вариантов перебора может быть применен метод ветвей и границ. Метод заключается в том, что «ветвится» та вершина дерева-графа, содержащая определенный класс вариантов решений, которая получает лучшую оценку. Преимущество данного метода состоит в возможности отбрасывать варианты не по одному, а целыми классами. Трудность метода - в определении оценки (снизу для задач минимизации; сверху для задач максимизации), чтобы процеДypa была эффективной. Поэтому метод ветвей и границ не гарантирует того, что в ходе решения не произойдет перебор всех вариантов решения.
Удовлетворительные результаты по быстродействию демонстрирует алгоритм Литтла, который является одним из разновидностей метода ветвей и границ. Пpaктика показывает, что на современных ЭВМ он позволяет решить ЗК с n = 100. Это огромный прогресс по сравнению с полным перебором. Система оценивания и выбора класса, который необходимо продолжать «ветвить», достаточно быстро дала решение нашей задачи (рис. 4).
Достраивая выбранный класс, содержащий ребра (1, 2), (3, 1), (2, 5), до контура, получим искомый цикл и его длину: Полученная стоимость L = 26 меньше оценок любой из висячих вершин. Следовательно, полученное решение оптимально.
Рис.4
Статья в формате PDF
107 KB...
28 07 2026 18:47:56
27 07 2026 12:52:40
Статья в формате PDF
112 KB...
25 07 2026 1:19:54
Статья в формате PDF
317 KB...
24 07 2026 18:22:37
Статья в формате PDF
119 KB...
23 07 2026 9:17:20
Статья в формате PDF
118 KB...
22 07 2026 15:48:39
Статья в формате PDF
100 KB...
20 07 2026 19:38:43
Статья в формате PDF
261 KB...
19 07 2026 8:27:44
Статья в формате PDF
263 KB...
18 07 2026 23:12:11
Статья в формате PDF
101 KB...
17 07 2026 17:32:42
Статья в формате PDF
125 KB...
16 07 2026 13:22:36
Статья в формате PDF
164 KB...
15 07 2026 18:17:21
Статья в формате PDF
125 KB...
14 07 2026 19:40:47
Статья в формате PDF
112 KB...
13 07 2026 2:52:25
12 07 2026 1:52:48
Статья в формате PDF
215 KB...
11 07 2026 23:55:42
Статья в формате PDF
502 KB...
10 07 2026 13:26:36
09 07 2026 16:59:14
Статья в формате PDF
104 KB...
08 07 2026 10:49:50
Статья в формате PDF 106 KB...
07 07 2026 22:30:14
Инженерная рационализация лесопользования предполагает активное применение достижений древесиноведения. Фундаментальные достижения в этой области вполне могут быть применены в исследованиях свойств живой древесины растущих деревьев. Доказательство биотехнического принципа в данной статье выполнено на основе моделирования экспериментальных данных профессора Б.Н.Уголева по деформативности древесины при действии усилий поперек волокон.
...
06 07 2026 2:16:28
Статья в формате PDF
297 KB...
05 07 2026 21:57:45
Статья в формате PDF
127 KB...
03 07 2026 13:44:42
Статья в формате PDF
127 KB...
02 07 2026 12:25:13
Статья в формате PDF
330 KB...
01 07 2026 23:44:45
Статья в формате PDF
110 KB...
30 06 2026 22:52:12
Статья в формате PDF
848 KB...
29 06 2026 12:42:20
27 06 2026 4:17:20
Статья в формате PDF
112 KB...
26 06 2026 23:40:25
Статья в формате PDF
290 KB...
25 06 2026 23:58:20
Статья в формате PDF
111 KB...
23 06 2026 20:10:28
Исследовано водно- и спирто-щелочное расщепление 1,4-бис (диметилэтил-, диэтилметил и диметилфенацил)-2,3-дибромбут-2-ениленаммоний дигалоген-идов. Показано, что в отличие от их триметильного аналога, во всех случаях расщепление протекает в довольно жестких условиях (высокие температуры, избыток щелочи), с образованием сложной смеси продуктов.
...
22 06 2026 12:37:25
Статья в формате PDF
112 KB...
21 06 2026 20:38:23
Статья в формате PDF
278 KB...
20 06 2026 11:25:38
Статья в формате PDF
324 KB...
19 06 2026 22:23:27
Еще:
Поддержать себя -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 ::