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

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

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

Булашкова М.Г. Ломакина А.Н. Чаузова Е.А. Зотова С.А. Статья в формате PDF 423 KB

В 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 72 KB...

26 07 2026 5:11:56

УСТРОЙСТВА БЕСПРОВОДНОГО УПРАВЛЕНИЯ

УСТРОЙСТВА БЕСПРОВОДНОГО УПРАВЛЕНИЯ Статья в формате PDF 310 KB...

21 07 2026 9:24:14

МАЛЫЕ КОЛЕБАНИЯ ПРИЗМАТИЧЕСКОГО БРУСКА НА ЦИЛИНДРЕ

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

10 07 2026 13:26:36

БИОТЕХНИЧЕСКИЙ ПРИНЦИП В ДРЕВЕСИНОВЕДЕНИИ

БИОТЕХНИЧЕСКИЙ ПРИНЦИП В ДРЕВЕСИНОВЕДЕНИИ Инженерная рационализация лесопользования предполагает активное применение достижений древесиноведения. Фундаментальные достижения в этой области вполне могут быть применены в исследованиях свойств живой древесины растущих деревьев. Доказательство биотехнического принципа в данной статье выполнено на основе моделирования экспериментальных данных профессора Б.Н.Уголева по деформативности древесины при действии усилий поперек волокон. ...

06 07 2026 2:16:28

КЛИНИКА СОВРЕМЕННОГО ИНФЕКЦИОННОГО МОНОНУКЛЕОЗА

КЛИНИКА СОВРЕМЕННОГО ИНФЕКЦИОННОГО МОНОНУКЛЕОЗА Статья в формате PDF 215 KB...

04 07 2026 0:50:29

НИКОЛАЕВА НАДЕЖДА КЛИМЕНТЬЕВНА

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

28 06 2026 16:51:57

ИНЖЕНЕР НА РЫНКЕ ТРУДА

ИНЖЕНЕР НА РЫНКЕ ТРУДА Статья в формате PDF 242 KB...

24 06 2026 21:38:55

ВЛИЯНИЕ ПРИРОДЫ АЛКИЛЬНЫХ ГРУПП У АММОНИЕВОГО АЗОТА НА РЕГИОХИМИЮ ЩЕЛОЧНОГО РАСЩЕПЛЕНИЯ 1,4-БИСАММОНИЕВЫХ СОЛЕЙ С 2,3-ДИБРОМБУТ-2-ЕНИЛЕНОВОЙ ОБЩЕЙ ГРУППОЙ

ВЛИЯНИЕ ПРИРОДЫ АЛКИЛЬНЫХ ГРУПП У АММОНИЕВОГО АЗОТА НА РЕГИОХИМИЮ ЩЕЛОЧНОГО РАСЩЕПЛЕНИЯ 1,4-БИСАММОНИЕВЫХ СОЛЕЙ С 2,3-ДИБРОМБУТ-2-ЕНИЛЕНОВОЙ ОБЩЕЙ ГРУППОЙ Исследовано водно- и спирто-щелочное расщепление 1,4-бис (диметилэтил-, диэтилметил и диметилфенацил)-2,3-дибромбут-2-ениленаммоний дигалоген-идов. Показано, что в отличие от их триметильного аналога, во всех случаях расщепление протекает в довольно жестких условиях (высокие температуры, избыток щелочи), с образованием сложной смеси продуктов. ...

22 06 2026 12:37:25

Еще:
Поддержать себя -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 ::