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

Modele ruchu korzystają z określonych algorytmów i czynników, aby przewidywać, jak warunki ruchu wpływają na łączny czas przejazdu na danej trasie. Interfejs Routes API oferuje różne typy modeli ruchu, aby nadawać priorytety różnym czynnikom używanym do obliczania czasu trwania ruchu. Możesz określić typ modelu ruchu, którego trasy chcesz używać do obliczania czasu trwania tras lub macierzy tras. Gdy ustawisz typ modelu ruchu, wartość zwrócona w polu duration będzie się różnić w zależności od wybranego modelu ruchu.

Zarówno metody interfejsu Routes API Compute Routes, jak i Compute Route Matrix obsługują modele ruchu.

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

Aby określić typ ruchu:

  1. Ustaw miejsce początkowe i miejsce docelowe.

  2. Jeśli czas wyjazdu jest w przyszłości, podaj go za pomocą parametru departure_time. Jeśli nie podasz godziny wyjazdu, zostanie ona ustawiona domyślnie na bieżącą.

  3. Wybierz model ruchu, który ma być używany z parametrem trafficModel, spośród tych typów:

    • BEST_GUESS (domyślnie) – aby zwrócić wartość duration_in_trafficbędącą najlepszą estymacją czasu podróży na podstawie znanych informacji o historycznych warunkach ruchu i aktualnym natężeniu ruchu. Im bliżej do daty departure_time, tym większy wpływ na wyniki ma ruch na żywo. Użycie domyślnego typu BEST_GUESS zapewnia najbardziej przydatne prognozy w przypadku większości przypadków użycia.

    • PESSIMISTIC, aby zwrócić model duration_in_traffic na podstawie historycznych warunków ruchu w dni z niekorzystnym ruchem. Ten typ podaje przewidywany czas, który jest dłuższy niż rzeczywisty czas podróży w większości dni. W przypadku dni o szczególnie niesprzyjających warunkach może się to jednak nie sprawdzić.

    • OPTIMISTIC, aby zwrócić model duration_in_traffic czasu na podstawie historycznych warunków ruchu w dni z dobrym ruchem. Ten typ podaje szacowany czas trwania, który jest krótszy od rzeczywistego czasu podróży w większości dni. Czasami w wyjątkowych warunkach czas ten może być krótszy.

    Na przykład:

    "trafficModel": "OPTIMISTIC"

    BEST_GUESS
  4. W polu maski pola określ pole routes.duration.

    REST

    -H X-Goog-FieldMask: routes.duration

    RPC

    const (fieldMask = "routes.duration")

Gdy interfejs Routes API szacuje czas spędzony w korkach, używa typu modelu ruchu, którego dotyczy Twoje żądanie.

Przykład: żądanie dotyczące modelu ruchu

Na przykład w tym żądaniu określono, że czas trwania ma być szacowany za pomocą typu modelu ruchu OPTIMISTIC w określonym czasie wyjazdu:

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 zapytanie zwraca szacowany czas trwania, korzystając z tego typu modelu natężenia ruchu: OPTIMISTIC.

"duration": "1238s"

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

"duration": "2436s"