Чего я не знаю, так это того, нужно ли сбрасывать процесс «растягивания пузырьков» после добавления каждой новой точки, или если существующие «пузырьки» продолжают расти, и каждая новая точка на периметре вызывает только локализованный «пузырь» для превратиться в два отрезка. Я оставлю это для вас, чтобы выяснить.

интересуют способы улучшить или придумать алгоритмы, которые могут решитьЗадача коммивояжера для околоn = 100 to 200 города.

Ссылка на википедию, которую я дал, содержит список различных оптимизаций, но это происходит на довольно высоком уровне, и я не знаю, как на самом деле реализовать их в коде.

Существуют промышленные решатели прочности, такие какConcorde, но они слишком сложны для того, что я хочу, и классические решения, которые затопляют поиски TSP, представляют все рандомизированные алгоритмы или классические алгоритмы обратного отслеживания или динамического программирования, которые работают только для примерно 20 городов.

Итак, кто-нибудь знает, как реализовать простой (под простым я имею в виду, что реализация не занимает более 100-200 строк кода) решатель TSP, который работает в разумные сроки (несколько секунд) как минимум для 100 городов? Меня интересуют только точные решения.

Вы можете предположить, что входные данные будут сгенерированы случайным образом, поэтому мне не нужны входные данные, специально предназначенные для взлома определенного алгоритма.

Ответы на вопрос(7)

Ваш ответ на вопрос