Выбор библиотеки для построения маршрутов

Подскажите, какой роутинговый движок можно использовать для расчета маршрутов с использованием OSM ?
Сейчас используем OSRM.

Можно ли на нем реализовать следующие возможности:

  1. В некоторых случаях необходимо построение двух вариантов маршрута с возможностью выбора одного из вариантов маршрутов доставки на основании их целесообразности и стоимости:

    • если расстояние по прямой между местом отгрузки и центром ценовой зоны доставки меньше 200 км, то перевозка выполняется автотранспортом;

    • если расстояние по прямой между местом отгрузки и центом ценовой зоны доставки составляет от 200 км до 500 км, то необходимо рассчитать два маршрута (только перевозка автотранспортом и смешанная перевозка авто- и железнодорожным транспортом) перевозки и транспортных затрат на указанных маршрутах с возможностью выбора маршрута;

    • если расстояние по прямой между местом отгрузки и центом ценовой зоны доставки превышает 500 км, то выполняется перевозка по железной дороге.

  2. При расчете маршрута должна быть реализована возможность конструирования маршрута с указанием безальтернативного участка посредством указания точки начала и точки окончания такого участка. В этом случае маршрут будет построен через указанные пользователем точки (например, порт отправления и порт назначения).

  3. Учет сезонности дорог (паромная переправа/ автозимник), если ли возможность вытащить сезонность и как).

  4. Расчет маршрутов по морским/речным путям

емнип, автор осрм перешел в проект коммерческого роутинга мапбокс, вальгал емнип.