Карты. Сервис навигации
Ребят, нужно при помощи Яндекс.Карт, Гугл.Мапс или еще чего-нибудь научить свою карту на странице прокладывать маршрут из одной точки до другой и вычислять маршрут. Точки указывает посетитель. Причем не прямыми линиями, а именно инструментом "Проложить маршрут". Как это сделать? Никто не сталкивался?
Прокладка кратчайшего пути это старая задача о коммивояжере. Рекомендую начать с алгоритма Дейкстры. Лично я для задачи прокладки маршрута нахожу его самым приемлемым.
Поддержываю только с замечанием. Надо бы посмотреть на представление данных. Не всегда самый краткий маршрут будет самым оптимальным. Если вам придется ехать через 95 деревень радости будет мало. Как мне когдато подсказали - надо сократить количество вершын графа. Тоесть берем крупные города (те где пересекаются много путей) и ищем кратчайшый путь между ними. А на полном графе ищем путь от заданых точек к ближайшей крупной точке.
Не вижу проблем ехать через 95 деревень, если это кратчайший путь. Другой вопрос, что сокращение количества вершин может понадобиться для ускорения работы программы. Поэтому для графов с большим количеством вершин и редкими изменениями разумнее всего вычислить все возможные маршруты и хранить их в базе.