Алгоритм Дейкстры с весом, основанным на времени передвижения в сетях OSM.

Алгоритм Дейкстры с использованием времени передвижения в сетях OSM в качестве веса.

Поиск самого быстрого и кратчайшего пути с помощью OSMNX 1.6

Изображение автора. Самый быстрый маршрут (красный) и кратчайший маршрут (оранжевый) в примере Марокко

Алгоритм кратчайшего пути (алгоритм Дейкстры) может быть применен в сетях OSM, таких как автомобильное движение, велосипеды и пешеходное движение, для поиска наиболее оптимального маршрута между начальной и конечной точкой. Однако алгоритм вычисляет кратчайшие маршруты на основе расстояния, и это не всегда означает самый оптимальный маршрут. Расстояние в дорожной сети может быть относительным, когда мы учитываем скорость движения по дорогам. Оптимальный маршрут между двумя точками может быть самым коротким, если скорость движения по всем дорогам одинаковая. Однако, если мы сравним скорость на шоссе с городскими улицами, то мы увидим, что самым оптимальным маршрутом является самый быстрый.

«Расстояние в дорожной сети может быть относительным, когда мы учитываем скорость движения по дорогам»

Благодаря библиотеке Python OSMNX можно добавить скорость на различные виды дорог на глобальном уровне и вычислить время путешествия между узлами в сети OSM. Это позволяет библиотеке Python обрабатывать алгоритм кратчайшего пути, взвешенный временем путешествия.

Эта практика является продолжением предыдущего руководства, в котором использовался алгоритм кратчайшего пути для расчета кратчайшего маршрута между двумя местоположениями в Марокко.

Кратчайший маршрут в сети OSM в Марокко

Шаг за шагом руководство по алгоритму кратчайшего пути (алгоритму Дейкстры) на языке Python

Обновление с использованием OSMNX 1.6 и длинного пути

towardsdatascience.com

Получить доступ к обучающим материалам по программированию

Если вы еще не являетесь участником VoAGI, вам потребуется подписка для доступа к материалам. Вы можете следовать другим обучающим материалам по программированию и поддержать мою работу, присоединившись при помощи моей персональной ссылки. Присоединяйтесь к этому путешествию в программировании.

Подписаться здесь 👉 https://bit.ly/3yjLsSL

Лицензия на данные OSM