Доступен открытый движок построения маршрутов GraphHopper 0.7
Состоялся релиз проекта GraphHopper 0.7, в рамках которого развивается библиотека и серверное ПО для поиска оптимальных маршрутов по карте. GraphHopper лежит в основе одноимённого облачного сервиса, но в качестве источника карт также можно использовать базу OpenStreetMap (osm/xml, pbf) или свои данные. Код проекта написан на языке Java и распространяется под лицензией Apache 2.0.
Поддерживается несколько алгоритмов поиска оптимального пути, включая алгоритмы Дейкстры и A*, а также их двунаправленные варианты. Построение маршрута может производиться в двух режимах: быстром (используются оптимизации с усечением графа связей) и гибком (используются эвристические методы для уточнения маршрута и возможно динамическое перестроение маршрута при изменении условий). При работе учитываются типы дорог, дорожное покрытие, преграды, ограничения доступа, паромные переправы, условные ограничения (разрешённый вес и время проезда) и другие условия. Имеются профили для построения маршрутов для пешеходов, автомобилей, горных и шоссейных велосипедов, мотоциклов. Для управления можно использовать простой Web API с готовыми клиентами на JavaScript и Java.
В новой версии осуществлён переход с использования Java 5 на Java 7 для ядра движка и Java 8 для web-модулей. Добавлена поддержка расчёта кольцевых маршрутов. Реализована возможность отключения быстрого режима для выполнения текущего запроса с задействованием расширенных возможностей гибкого режима (например, учёт изменения погоды и построение альтернативных маршрутов). Условные ограничения теперь не ограничиваются временем и могут учитывать такие параметры, как вес транспортного средства. Добавлен новый пешеходный профиль "поход".
Дополнение: несколько дней назад также состоялся выпуск движка построения маршрутов OSRM 5.2.0, написанного на языке С++ (лицензия BSD) и рассчитанного на использование с картами OpenStreetMap. Пример web-карты на основе OSRM.