2014 dxdy logo

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

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




 
 Быстрый TSP на плоскости для маленького числа точек
Сообщение31.01.2009, 00:32 
Задача: на плоскости дано несколько точек, требуется построить минимальную по длине ломаную (незамкнутую), проходящую через все точки.
Как решить это эффективно? Хочется, чтобы программа всегда укладывалась в 30-40 секунд для 20 точек

 
 
 
 
Сообщение16.03.2009, 10:22 
Интересно, прав ли я, что для того чтобы получить ломаную минимальной длинны нужно решить задачу коммивояжера, а потом из цикла удалить наибольшее ребро?

Если да, то Вам нужно посмотреть метод Литтла. Думаю, что для 20 точек он управиться в 30 секунд. В крайнем случае, можно взять его текущую оценку сверху и удалить самое длинное ребро.

Остается выяснить. Прав ли я.

 
 
 
 Re: Быстрый TSP на плоскости для маленького числа точек
Сообщение29.03.2009, 06:06 
Аватара пользователя
iposov писал(а):
Задача: на плоскости дано несколько точек, требуется построить минимальную по длине ломаную (незамкнутую), проходящую через все точки.
Как решить это эффективно? Хочется, чтобы программа всегда укладывалась в 30-40 секунд для 20 точек


:shock:
Любые существующие алгоритмы (кроме прямого перебора конечно :lol: ) - будут решать такую задачу на много быстрее чем за 30-40 сек. 20 точек - это совсем маленькая размерность - не более десятых долей секунды.

Существует много алгоритмов решения этой задачи - можно выбрать наиболее удобный и подходящий для вас - можно начать читать с этой статьи - обратите внимание на метод "ветвей и границ".

 
 
 [ Сообщений: 3 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group