Лев
Из мудрейших мудрейший
   
Offline
Сообщений: 2906
СПАСИБО
-вы поблагодарили: 1229
-вас поблагодарили: 1168
Искренне Ваш...
|
 |
� : Ноябрь 15, 2010, 14:47:27 � |
|
Кто как ее решает? У Wiki мнение, что нужно решать "методом ветвей и границ или методом генетических алгоритмов, а также алгоритмом муравьиной колонии".
Я сомневаюсь, что подобные вещи были знакомы первым коммивояжерам. Поэтому предлагаю "геометрическое" решение, которое не требует особых манипуляций с данными. Простое и понятное:
Смотрим на карту, где мы пометили все нужные города. По самым дальним точкам строим эн-угольник, внутри которого находятся все остальные точки. Потом для ближайшей к угольнику (можно на глаз) точки изучаем возможность посетить ее по пути между двумя соседними точками угольника. Выбираем наименьший путь и так же далее, пока не включим все точки. Получится замкнутая кривая, т. е. неважно, откуда мы ехали - мы туда же вернемся. Все.
|
|
|
|
|
Записан
|
В действительности все не так, как на самом деле
|
|
|
|
Lider
Гость
|
 |
� Ответ #1 : Ноябрь 15, 2010, 19:45:19 � |
|
Я курсовую писал на эту тему)))) Решил 2мя способами, но уже не помню их(
|
|
|
|
|
Записан
|
|
|
|
Лев
Из мудрейших мудрейший
   
Offline
Сообщений: 2906
СПАСИБО
-вы поблагодарили: 1229
-вас поблагодарили: 1168
Искренне Ваш...
|
 |
� Ответ #2 : Март 29, 2011, 15:31:58 � |
|
Мой первый некропостинг  Но неужели никого не заинетересовал этот алгоритм? Или это ТАКАЯ глупость на которую даже время не стоит тратить?  Или написать, что такое "задача коммивояжера"? 
|
|
|
|
|
Записан
|
В действительности все не так, как на самом деле
|
|
|
zhekas
Гений-Говорун
Offline
Сообщений: 1035
СПАСИБО
-вы поблагодарили: 34
-вас поблагодарили: 487
|
 |
� Ответ #3 : Март 29, 2011, 15:35:06 � |
|
я думаю, не помешает записать условие
|
|
|
|
|
Записан
|
|
|
|
Лев
Из мудрейших мудрейший
   
Offline
Сообщений: 2906
СПАСИБО
-вы поблагодарили: 1229
-вас поблагодарили: 1168
Искренне Ваш...
|
 |
� Ответ #4 : Март 29, 2011, 15:46:41 � |
|
Посыльный выезжает из города 1, ему необходимо посетить все города от 1 до N по одному разу. Найти самый кратчайший маршрут. В общем виде задача звучит как "найти алгоритм поиска маршрута для конечного натурального N".
Решена она уже не раз (и не два), но я о чем говорю...
Представим, что у героя задачи нет никаких современных вычислительных средств. Максимум - линейка (мерная нитка) и более-менее масштабная карта. Как ему тогда быть?
|
|
|
|
|
Записан
|
В действительности все не так, как на самом деле
|
|
|
Вилли ☂
Гений-Говорун
Offline
Сообщений: 1572
СПАСИБО
-вы поблагодарили: 532
-вас поблагодарили: 722
☃
|
 |
� Ответ #5 : Март 29, 2011, 15:47:19 � |
|
У всех уже ЖПС и ГЛОНАС 
|
|
|
|
|
Записан
|
|
|
|
Вилли ☂
Гений-Говорун
Offline
Сообщений: 1572
СПАСИБО
-вы поблагодарили: 532
-вас поблагодарили: 722
☃
|
 |
� Ответ #6 : Март 29, 2011, 15:54:06 � |
|
Совершенно не очевидна минимальность такого решения. Т.е. метод этот можно назвать "на глазок" 
|
|
|
|
|
Записан
|
|
|
|
Лев
Из мудрейших мудрейший
   
Offline
Сообщений: 2906
СПАСИБО
-вы поблагодарили: 1229
-вас поблагодарили: 1168
Искренне Ваш...
|
 |
� Ответ #7 : Март 29, 2011, 16:19:36 � |
|
Допускаю  Предложи лучше 
|
|
|
|
|
Записан
|
В действительности все не так, как на самом деле
|
|
|
|
☭-Изделие 20Д
|
 |
� Ответ #8 : Март 29, 2011, 16:48:10 � |
|
Я курсовую писал на эту тему)))) Решил 2мя способами, но уже не помню их(
Когда я был маленьким, ещё учился ув институте был такой предмет ОПУП. Организация планирования и управления производством. Так там эта хрень кажется обзывалась как - "метод встречных грузоперевозок"
|
|
|
|
|
Записан
|
|
|
|
Лев
Из мудрейших мудрейший
   
Offline
Сообщений: 2906
СПАСИБО
-вы поблагодарили: 1229
-вас поблагодарили: 1168
Искренне Ваш...
|
 |
� Ответ #9 : Март 29, 2011, 18:10:00 � |
|
Совершенно не очевидна минимальность такого решения.
Помоги доказать.
|
|
|
|
|
Записан
|
В действительности все не так, как на самом деле
|
|
|
Чаинка
Новенький
Offline
Сообщений: 2
СПАСИБО
-вы поблагодарили: 0
-вас поблагодарили: 0
экспериментальный образец
|
 |
� Ответ #10 : Март 31, 2011, 17:14:56 � |
|
а может, попробовать создать два "направления", движущихся навстречу друг дружке? Ну допустим, ближайшая к нам точка А, самая дальняя точка Я. Найдем от точки А две ближайших Б и В, найдем ближайшие от точки Я: Э и Ю... Потом, не оставляя "за спиной" точек, находим ближайшую к Б и ближайшую к В и т.д. Так у нас получится замкнутый контур, когда два этих "направления" встретятся..
|
|
|
|
|
Записан
|
Не существует двух полностью идентичных чаинок, каждая чаинка по своему уникальна.
|
|
|
Лев
Из мудрейших мудрейший
   
Offline
Сообщений: 2906
СПАСИБО
-вы поблагодарили: 1229
-вас поблагодарили: 1168
Искренне Ваш...
|
 |
� Ответ #11 : Март 31, 2011, 17:56:54 � |
|
Дело в том, что "Б" может быть близко и к "В" и к "Э" - тогда не понятно, куда именно идти.
|
|
|
|
|
Записан
|
В действительности все не так, как на самом деле
|
|
|
buka
Гений
   
Offline
Сообщений: 960
СПАСИБО
-вы поблагодарили: 4
-вас поблагодарили: 120
|
 |
� Ответ #12 : Апрель 05, 2011, 00:43:17 � |
|
А вот интересно, насколько сложнее обратная задача - выбрать наиболее длинный маршрут? 
|
|
|
|
|
|
☭-Изделие 20Д
|
 |
� Ответ #13 : Апрель 05, 2011, 12:27:30 � |
|
А вот интересно, насколько сложнее обратная задача - выбрать наиболее длинный маршрут?  Интереснее было бы обосновать логично подобное требование. Я кроме желания "насолить" руководству за отправку в нежелательную командировку не вижу.
|
|
|
|
� Последнее редактирование: Апрель 08, 2011, 12:32:03 от Изделие 20Д �
|
Записан
|
|
|
|
VVV
Умник
  
Offline
Сообщений: 662
СПАСИБО
-вы поблагодарили: 20
-вас поблагодарили: 55
|
 |
� Ответ #14 : Апрель 08, 2011, 12:14:58 � |
|
Если каждая вершина является вершиной или точкой стороны выпуклой оболочки, тогда обход этих вершин без пропусков вдоль границы выпуклой оболочки в одном направлении, действительно, решит задачу коммивояжера. Докажите это утверждение строго. Но в обычном случае гораздо больше вершин будет гораздо больше, чем на границе. В этом случае этот алгоритм бессилен. Алгоритм нахождения выпуклой оболочки --- полиномиальный. Приведите пример такого алгоритма. А задача коммивояжера принадлежит классу NP-полных задач. Если найдется полиномиальный алгоритм, который решает задачу коммивояжера, то это доказывало бы, что NP=P. Проблема NP=P? является одной из самых привлекательных в современной математике. Кстати, если NP=P, то все алгоритмы шифрования с открытым ключом можно выбросить на свалку. А вот интересно, насколько сложнее обратная задача - выбрать наиболее длинный маршрут?  Очевидно, что такой же сложности. Меняем расстояние на такое же с обратным знаком, тем самым сводим одну задачу к другой.
|
|
|
|
|
Записан
|
Правила и тактика игры в "ассоциации". //текст доступен после регистрации// . Дополнительные методы, архив партий //текст доступен после регистрации// .
|
|
|
|