2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему На страницу 1, 2  След.
 
 Задача коммивояжера
Сообщение14.04.2006, 10:27 
Аватара пользователя


14/04/06
17
Поставлена задача - реализовать алгоритм решения задачи коммивояжера, используя реккурентные соотношения Беллмана.
Встал вопрос о эффективном использовании памяти. При решении задачи хранится очень большое количество информации, необходимое для отката(построения непосредственно оптимального пути).
Может быть кто-нибудь сталкивался с такой проблемой. Буду рад любой помощи - исходники, ссылки на литературу, просто какие-то соображения.

Заранее благодарен.

 Профиль  
                  
 
 
Сообщение14.04.2006, 14:37 
Заслуженный участник
Аватара пользователя


07/03/06
1898
Москва
А Вам принципиально из Беллмана или нет? Если нет, то чем плох метод ветвей и границ - Судоплатов, Овчинникова "Основы дискретной математики" (за точность названия и авторов не ручаюсь). В интернете и готовые проги есть, например, Grin Печенкина http://www.uni-dubna.ru/~mazny/kurses/odm/lekcii/index.html

 Профиль  
                  
 
 
Сообщение14.04.2006, 14:59 
Аватара пользователя


14/04/06
17
Артамонов Ю.Н. писал(а):
А Вам принципиально из Беллмана или нет? Если нет, то чем плох метод ветвей и границ - Судоплатов, Овчинникова "Основы дискретной математики" (за точность названия и авторов не ручаюсь). В интернете и готовые проги есть, например, Grin Печенкина http://www.uni-dubna.ru/~mazny/kurses/odm/lekcii/index.html

Принципиально из Беллмана! Просто все мои поиски в глобальной сети ни к чему не привели.(кроме методва ветвей и границ). Создается впечатление, что таким способом её решения(динамическое программирование) вообще никто не занимался (или я плохо искал).
Спасибо за указание на книгу: она возможно мне понадобится для решения видоизменённой задачи - т.н. задачи инкассации.Её как раз необходимо решить методом ветвей и границ.

 Профиль  
                  
 
 Еще одна ссылка
Сообщение16.04.2006, 08:56 


03/09/05
217
Bulgaria
Задача о коммивояжере рассматривается еще и в книге И. В.Романовского "Алгоритмы решения экстремальных задач", Изд. "Наука", Москва 1977. В ней на стр. 210 форулируется задача. Непосредствено после этого рассматривается метод ветвей и границ для решения этой и других задач, вкл. и приводятся некоторые процедуры на Алголе.
Далее в главе 6 "Рекуррентные методы (модели денамического программирования)" обсуждаются особености реализации этих методов. К сожалению нет непосредственного упоминания насчет Задачи о коммивояжере, но может быть вам и написанное поможет самому вывести какие то подсказки ...

 Профиль  
                  
 
 Все очень даже просто...
Сообщение18.04.2006, 20:38 
Аватара пользователя


14/04/06
17
Ура!Справился!
Если кого-то заинтересует мой способ решения задачи коммивояжера методом реккурентных соотношений Беллмана, то где-то через 5 дней я выложу ссылку на исходники сюда.
Всем большое спасибо за помощь!

 Профиль  
                  
 
 Программная реализация
Сообщение27.04.2006, 11:59 
Аватара пользователя


14/04/06
17
http://user.rol.ru/~skav86/AlgRec.zip
Если у кого-то будут замечания или предложения, буду только рад!

 Профиль  
                  
 
 Re: Все очень даже просто...
Сообщение10.05.2006, 22:46 
Заслуженный участник


09/01/06
800
botanik писал(а):
Ура!Справился!
Если кого-то заинтересует мой способ решения задачи коммивояжера методом реккурентных соотношений Беллмана, то где-то через 5 дней я выложу ссылку на исходники сюда.


А можно описание алгоритма с оценкой сложности? :)

 Профиль  
                  
 
 
Сообщение29.05.2006, 21:47 


29/05/06
1
выложите, пожалуйста, исходник задачи коммивояжера МВиГ

 Профиль  
                  
 
 
Сообщение15.06.2006, 23:24 


15/06/06
2
Москва
А кто-нибудь пробовал найти решение, когда матрица расстояний не симметричная по диагонали? Когда крокодил от носа до хвоста 8 метров, а от хвоста до носа - 7? ;-)
Особенно актуально для построения маршрутов внутри города, когда расстояние между точками меняется в зависимости от направления движения в связи с необходимостью соблюдения правил дорожного движения ...
Вот это зубодробительный вариант. Даже при составлении алгоритма полного перебора крыша съезжает.
Может кто чего посоветует?

 Профиль  
                  
 
 
Сообщение16.06.2006, 06:19 


09/06/06
367
Попробуйте дополнить матрицу до квадратной.Длина несуществующих маршрутов задается очень большим числом .

 Профиль  
                  
 
 
Сообщение17.06.2006, 00:49 


15/06/06
2
Москва
Какие не существующие маршруты?
Все расстояния известны. Просто растояние от А до В не равно расстоянию от В до А. Соответственно, матрица расстояний по диагонали не симметрична ...

 Профиль  
                  
 
 
Сообщение19.06.2006, 11:31 


09/06/06
367
Виноват,не сразу въехал :oops:

 Профиль  
                  
 
 Специально для bz21 и ГАЗ-67
Сообщение09.07.2006, 14:41 
Аватара пользователя


14/04/06
17
Для bz21:
А Вы начало темы читали или исходники смотрели?
Вообще говоря,при использовании рекуррентных соотношений для решения задачи коммивояжера не требуется симметричность матрицы расстояний.
Для ГАЗ-67:
Вашу идею я понял, Вы хотите использовать алгоритм Флойда или несколько раз запустить алгоритм Дейкстры, для нахождения кратчайших расстояний между городами в том случае, когда граф, соответствующий задаче коммивояжера, не полный.

 Профиль  
                  
 
 
Сообщение19.01.2007, 11:20 


19/01/07
1
Проблема та же, нужен Help по Решению задачи о коммивояжере методом ветвей и границ. Это курсовой проект...необходимо реализовать в Delphi, перерыл много инфы, теория есть...проблема в написании кода.
буду рад любой помощи!

 Профиль  
                  
 
 Одна возможная ссылка для НеZнайки ?
Сообщение20.01.2007, 09:57 


03/09/05
217
Bulgaria
Попробуйте посмотреть то, что по линку:

http://www.cs.sunysb.edu/~algorith/file ... sman.shtml

Быть может наведет куда хотите.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 27 ]  На страницу 1, 2  След.

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group