Модели дорожного движения используют специальные алгоритмы и факторы для прогнозирования того, как дорожные условия влияют на общее время в пути по заданному маршруту. API маршрутов предлагает различные типы моделей дорожного движения для определения приоритетности различных факторов, используемых при расчете продолжительности в условиях пробок. Вы можете указать тип модели дорожного движения, который будет использоваться для расчета продолжительности маршрутов или матрицы маршрутов. При выборе типа модели дорожного движения значение, возвращаемое в поле duration зависит от выбранной модели.
Методы Compute Routes и Compute Route Matrix в API Routes поддерживают типы моделей трафика.
По умолчанию оба метода используют тип модели трафика BEST_GUESS .
Для указания типа трафика
Укажите пункт отправления и назначения.
Если время отправления указано в будущем, укажите его с помощью параметра
departure_time. Если время отправления не указано, по умолчанию используется текущее время.Установите параметр
routingPreferenceв значениеTRAFFIC_AWARE_OPTIMAL. Установка параметраroutingPreferenceв значениеTRAFFIC_UNAWAREилиTRAFFIC_AWAREнесовместима с параметромtrafficModel.Выберите модель трафика для использования с параметром
trafficModelи одним из следующих типов:BEST_GUESS(по умолчанию) запрашивает, чтобы возвращаемое значениеduration_in_trafficбыло наилучшей оценкой времени в пути с учетом информации как об исторических данных о дорожной ситуации, так и о текущей ситуации на дорогах. Текущая ситуация на дорогах становится более важной, чем ближеdeparture_timeк текущему времени. Использование типаBEST_GUESSпо умолчанию дает наиболее полезные прогнозы для подавляющего большинства случаев использования.PESSIMISTICпредполагает запрос на то, чтобы возвращаемаяduration_in_trafficмоделировала время на основе исторических данных о дорожной ситуации в дни с плохим трафиком. Этот тип данных дает оценочную продолжительность, которая, скорее всего, будет больше фактического времени в пути в большинстве дней. В отдельные дни с особенно плохими условиями это время все равно может превышать оценку.OPTIMISTICзапрашивать, чтобы возвращаемая модельduration_in_trafficрассчитывала время на основе исторических данных о дорожной ситуации в дни с хорошим трафиком. Этот тип данных дает приблизительную продолжительность, которая, скорее всего, будет короче фактического времени в пути в большинстве дней. Однако в отдельные дни с особенно хорошими условиями время в пути может быть даже меньше этой оценки.
Например:
"trafficModel": "OPTIMISTIC"
Укажите поле
routes.durationв маске поля.ОТДЫХ
-H X-Goog-FieldMask: routes.duration
РПК
const (fieldMask = "routes.duration")
При оценке времени нахождения в пробке API маршрутов использует тип модели трафика, который вы запросили.
Пример: Запрос модели трафика
Например, в этом запросе указано, что продолжительность должна быть оценена с использованием модели транспортного потока типа OPTIMISTIC в конкретное время отправления:
curl -X POST -H 'content-type: application/json' -d ' { "origin": { "address": "Kyoto, Japan" }, "destination": { "placeId": "ChIJrYtcv-urAWAR3XzWvXv8n_s" }, "travelMode": "DRIVE", "routingPreference": "TRAFFIC_AWARE_OPTIMAL", "trafficModel": "OPTIMISTIC" }' \ -H 'Content-Type: application/json' \ -H 'X-Goog-Api-Key: YOUR_API_KEY' \ -H 'X-Goog-FieldMask: routes.duration' \ 'https://routes.googleapis.com/directions/v2:computeRoutes'
Этот запрос возвращает расчетную продолжительность поездки, используя модель транспортного потока OPTIMISTIC :
"duration": "1238s"
Если изменить тип модели трафика на PESSIMISTIC , возвращаемая продолжительность будет больше:
"duration": "2436s"