Планирование маршрута от Pt. А к списку адресов - PullRequest
2 голосов
/ 16 декабря 2009

Интересно, возможно ли на картах Google построить самый быстрый маршрут от определенного адреса, Pt A, до списка пунктов назначения то есть Pt B, Pt C, Pt D и т. д. И если это возможно, доступно ли оно через API? Вероятно, он понадобится мне в разрабатываемом приложении.

Спасибо и извинения, если об этом уже спрашивали!

Ответы [ 2 ]

2 голосов
/ 16 декабря 2009

Вы можете проверить этот проект:

Он доступен по лицензии GPL.

0 голосов
/ 16 декабря 2009

Проблема, которую вы описали, является примером Задача коммивояжера . Это известная проблема, потому что это пример проблемы, которая не может быть эффективно решена с помощью любого известного алгоритма. Таким образом, вы не можете придумать абсолютно лучший ответ эффективно, потому что число возможных решений увеличивается в геометрической прогрессии. Число возможных решений равно n !, что означает 5 x 4 x 3 x 2 x 1, где n = 5. В этом случае нет ничего страшного, когда вы пытаетесь решить для 5 городов (120 комбинаций), но даже поднимаетесь только до 10, количество возможных комбинаций возрастает до 3 628 800. Как только вы доберетесь до 100 узлов, вы подсчитываете время процессора в годах. Вот почему «самый быстрый кругосветный» перечисленный выше гарантирует только «оптимальные» решения до 15 баллов.

Сказав все это, он не может быть решен эффективно («решение» в данном случае означает один правильный ответ, как говорит Гебвеб, «оптимальный» ответ), но вы можете прийти с довольно хорошим ответом, до тех пор, пока вы не зацикливаетесь на этом, будучи абсолютно доказуемо лучшим. Если вы заглянете в код, то заметите, что страница Fastest Roundtrip Gebweb переключается на «Оптимизацию колоний муравьев» (технически не алгоритм, а эвристика), когда вы наберете 15 очков. Нет смысла повторять то, что он говорит лучше, посмотрите на его закулисную страницу .

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

...