Выбранные вами параметры маршрутизации позволяют сбалансировать точность данных о маршруте и производительность запросов одним из двух способов:
Учитывается трафик — возвращать максимально точные результаты (с большей задержкой).
Не учитывая трафик — возвращать результаты как можно быстрее (с минимальной задержкой).
При отправке запроса взвесьте, что лучше: вернуть максимально точные результаты или как можно быстрее. API маршрутов предоставляет параметры, позволяющие контролировать качество данных ответа и задержку ответа.
Как установить уровень трафика
API Routes предоставляет RoutingPreference (REST) и RoutingPreference (gRPC), позволяющие задавать параметры маршрутизации для расчета маршрутов.
По умолчанию используются результаты, не учитывающие трафик. Параметры маршрутизации выбираются с помощью параметров TRAFFIC_UNAWARE , TRAFFIC_AWARE и TRAFFIC_AWARE_OPTIMAL . Каждый параметр маршрутизации приводит к результатам, различающимся по качеству маршрута, расчетному времени прибытия и задержке ответа.
Условия движения
Характеристики дорожной обстановки определяют интенсивность транспортного потока:
Нормальное движение : Заторов нет, движение осуществляется с нормальной скоростью.
Небольшой и умеренный трафик : нарастающая загруженность, движение транспорта замедлено.
Интенсивное движение : сильные пробки, значительно сниженная скорость движения.
Водители невнимательны
Параметр TRAFFIC_UNAWARE — это значение по умолчанию. Используйте этот параметр маршрутизации, если вам нужны максимально быстрые ответы, и приблизительных данных о маршруте достаточно.
Маршруты TRAFFIC_UNAWARE рассчитываются без учета текущих дорожных условий. Такой предпочтительный способ маршрутизации обеспечивает максимально быструю реакцию на запрос (минимальную задержку).
Если вы выберете TRAFFIC_UNAWARE , выбранный маршрут и продолжительность будут основаны на дорожной сети и средних, не зависящих от времени условиях движения, а не на текущих дорожных условиях. Следовательно, маршруты могут включать временно закрытые дороги. Результаты для данного запроса могут меняться со временем из-за изменений в дорожной сети, обновленных средних условий движения и распределенного характера работы сервиса. Результаты также могут различаться между практически идентичными маршрутами в любое время и с любой частотой.
Вот ответы, которые вы увидите:
duration- содержит расчетное время прибытия по маршруту.staticDuration: Расчетное время прибытия по маршруту с учетом только исторических данных о дорожной ситуации. ДляTRAFFIC_UNAWAREэто значение совпадает со значениемduration.
Будьте внимательны на дороге
Используйте этот параметр маршрутизации, если вам нужны более точные данные о маршруте, чем TRAFFIC_UNAWARE , и при этом вас не смущает умеренное увеличение задержки при получении ответов.
При установке параметра маршрутизации TRAFFIC_AWARE служба рассчитывает маршрут с учетом текущей дорожной ситуации. В результате маршрут и его детали более точно отражают реальные условия. Поскольку это повышение качества данных происходит за счет увеличения задержки ответа, применяются оптимизации производительности для значительного снижения задержки.
Вот ответы, которые вы увидите:
duration: расчетное время прибытия с учетом информации о дорожной ситуации в режиме реального времени.staticDurationРасчетное время прибытия по маршруту с учетом только исторических данных о дорожной ситуации.
Оптимизация с учетом дорожной ситуации
Используйте этот параметр маршрутизации, если вам нужны результаты высочайшего качества независимо от времени ответа. Этот параметр маршрутизации имеет наибольшую задержку в получении ответов (наивысшую латентность).
При установке параметра маршрутизации TRAFFIC_AWARE_OPTIMAL служба рассчитывает маршрут с учетом текущих дорожных условий, но не применяет оптимизацию производительности. В этом режиме сервер выполняет более тщательный поиск по дорожной сети для нахождения оптимального маршрута.
Параметр маршрутизации TRAFFIC_AWARE_OPTIMAL эквивалентен режиму, используемому сайтом maps.google.com и мобильным приложением Google Maps.
При использовании этой опции с функцией «Вычислить матрицу маршрутов» количество элементов в запросе (количество источников × количество пунктов назначения) ограничено. Дополнительную информацию об ограничениях функции «Вычислить матрицу маршрутов» см. в разделе «Вычисление матрицы маршрутов» .
Вот ответы, которые вы увидите:
duration: Расчетное время прибытия по маршруту с учетом информации о дорожной ситуации в режиме реального времени.staticDuration: Расчетное время прибытия по маршруту с учетом только исторических данных о дорожной ситуации.
Установить время отправления (необязательно)
Используйте это свойство только для запросов, учитывающих дорожную ситуацию, где время отправления должно быть указано в будущем. Если вы не зададите свойство departureTime , по умолчанию будет использоваться время, когда вы отправляете запрос.
Свойство departureTime вместе с параметрами TRAFFIC_AWARE и TRAFFIC_AWARE_OPTIMAL используется для настройки способа прогнозирования трафика при выборе маршрута.
TRAFFIC_UNAWARE: Не рекомендуется, поскольку выбор маршрута и продолжительности зависит от дорожной сети и средних, не зависящих от времени, условий движения.TRAFFIC_AWAREиTRAFFIC_AWARE_OPTIMAL: Рекомендуются для вылетов в ближайшем будущем, поскольку эти настройки учитывают дорожную ситуацию в режиме реального времени. Информация о дорожной ситуации в режиме реального времени становится более важной и актуальной по мере приближения времениdepartureTimeк текущему моменту. Чем дальше вы задаете время вылета в будущее, тем больше внимания уделяется историческим данным о дорожной ситуации при выборе маршрута.
Пример: Как выбрать маршрутизацию с учетом трафика
Приведенный ниже JSON-код демонстрирует, как установить параметр маршрутизации TRAFFIC_AWARE_OPTIMAL в теле сообщения запроса.
{ "origin":{ "location":{ "latLng":{ "latitude":37.419734, "longitude":-122.0827784 } } }, "destination":{ "location":{ "latLng":{ "latitude":37.417670, "longitude":-122.079595 } } }, "travelMode":"DRIVE", "routingPreference":"TRAFFIC_AWARE_OPTIMAL" }
Настройка трафика на полилиниях
API маршрутов позволяет запрашивать информацию о дорожной обстановке вдоль полилинии, учитывающей транспортную ситуацию . Дополнительную информацию см. в разделе «Запрос полилиний» .