Модели дорожного движения используют специальные алгоритмы и факторы для прогнозирования влияния условий дорожного движения на общее время в пути по заданному маршруту. API маршрутов предлагает различные типы моделей дорожного движения для определения приоритетности различных факторов, используемых при расчёте продолжительности в пути. Вы можете указать тип модели дорожного движения, который хотите использовать при расчёте продолжительности маршрутов или матрицы маршрутов. При выборе типа модели дорожного движения возвращаемое значение в поле duration
зависит от выбранной модели дорожного движения.
Оба метода API маршрутов Compute Routes
и Compute Route Matrix
поддерживают типы моделей трафика.
По умолчанию оба метода используют тип модели трафика 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
RPC
const (fieldMask = "routes.duration")
Когда Routes 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"