Określ typ modelu ruchu, którego chcesz użyć

Modele ruchu korzystają z określonych algorytmów i czynników do przewidywania, jak warunki drogowe wpływają na łączny czas podróży na danej trasie. Interfejs Routes API udostępnia różne modele ruchu, które nadają priorytet różnym czynnikom służącym do obliczania czasu trwania ruchu. Możesz określić typ modelu ruchu, którego mają używać trasy przy obliczaniu czasu trwania tras lub macierzy tras. Gdy ustawisz typ modelu ruchu, wartość zwracana w polu duration różni się w zależności od wybranego modelu ruchu.

Obie metody Compute Routes i Compute Route Matrix interfejsu Routes API obsługują typy modeli ruchu.

Domyślnie obie metody używają typu modelu ruchu BEST_GUESS.

Aby określić typ ruchu

  1. Ustaw miejsce wylotu i celu podróży.

  2. Jeśli godzina odjazdu przypada w przyszłości, podaj ją za pomocą parametru departure_time. Jeśli nie podasz godziny odjazdu, domyślnie zostanie użyta godzina odjazdu.

  3. Wybierz model ruchu, którego chcesz używać z parametrem trafficModel, i jednym z tych typów:

    • BEST_GUESS (wartość domyślna), aby poprosić o dostarczenie zwróconej wartości duration_in_traffic jako najlepszego oszacowania czasu podróży na podstawie informacji o aktualnych warunkach na drodze i warunkach historycznych. Ruch na żywo staje się ważniejszy, im bliżej do Ciebie znajduje się departure_time. Użycie domyślnego typu BEST_GUESS daje najbardziej przydatne prognozy w większości przypadków użycia.

    • PESSIMISTIC, aby żądanie zwracało dane duration_in_traffic modelujące czas na podstawie historycznych danych o ruchu w dniach o nieprawidłowym natężeniu ruchu. Ten typ podaje szacowany czas podróży, który jest najprawdopodobniej dłuższy niż rzeczywisty czas podróży w większości dni. W niektórych dniach, w których schorzenia są szczególnie złe, ta wartość może być większa.

    • OPTIMISTIC, aby żądanie zwracało dane duration_in_traffic modelujące czas na podstawie historycznych danych o warunkach ruchu w dni o dobrym natężeniu ruchu. Ten typ podaje szacowany czas podróży, który jest najprawdopodobniej krótszy niż rzeczywisty czas podróży w większości dni. Sporadyczne dni, w których warunki są szczególnie dobre, mogą być szybsze niż te szacunkowe.

    Na przykład:

    "trafficModel": "OPTIMISTIC"

  4. Określ pole routes.duration w masce pola.

    REST

    -H X-Goog-FieldMask: routes.duration

    RPC

    const (fieldMask = "routes.duration")

Gdy interfejs Routes API szacuje czas natężenia ruchu, używa żądanego typu modelu ruchu.

Przykład: żądanie modelu ruchu

Na przykład to żądanie wskazuje, że czas trwania powinien być szacowany przy użyciu typu modelu ruchu OPTIMISTIC w konkretnej godzinie odjazdu:

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'

To żądanie zwraca szacowany czas trwania podróży z użyciem typu modelu ruchu OPTIMISTIC:

"duration": "1238s"

Jeśli zmienisz typ modelu ruchu na PESSIMISTIC, zwrócony czas trwania będzie dłuższy:

"duration": "2436s"