Modele natężenia ruchu korzystają z określonych algorytmów i czynników, aby przewidywać, jak warunki drogowe wpływają na łączny czas podróży 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óry ma być używany przez trasy do obliczania czasu trwania dla tras lub macierzy tras. Gdy ustawisz typ modelu ruchu, wartość zwracana w polu duration
będzie się różnić w zależności od wybranego modelu ruchu.
Zarówno metody Compute Routes
, jak i Compute Route Matrix
interfejsu Routes API obsługują typy modeli ruchu.
Domyślnie obie metody używają modelu ruchu BEST_GUESS
.
Określanie typu ruchu
Ustaw miejsce wylotu i cel podróży.
Jeśli godzina odjazdu przypada w przyszłości, podaj godzinę za pomocą parametru
departure_time
. Jeśli nie podasz godziny odjazdu, domyślnie zostanie użyta wartość bieżąca.Wybierz model ruchu, którego chcesz używać z parametrem
trafficModel
i jednym z tych typów:BEST_GUESS
(domyślnie) – aby zwrócić wartośćduration_in_traffic
będącą najlepszą estymacją czasu podróży na podstawie znanych danych o historycznych warunkach ruchu i aktualnym natężeniu ruchu. Aktualne natężenie ruchu staje się ważniejsze, im bliżej jestdeparture_time
. Użycie domyślnego typuBEST_GUESS
zapewnia najbardziej przydatne prognozy w przypadku większości przypadków użycia.PESSIMISTIC
, aby zażądać, aby zwrócony elementduration_in_traffic
modelował czas na podstawie historycznych warunków drogowych w dniach o dużym natężeniu ruchu. 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 zażądać, aby zwrócona wartośćduration_in_traffic
modelowała czas na podstawie historycznych warunków drogowych w dniach o dużym natężeniu ruchu. Ten typ podaje szacowany czas, 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"
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 żądanie zwraca szacowany czas trwania przy użyciu modelu natężenia ruchu OPTIMISTIC
dla tej podróży:
"duration": "1238s"
Jeśli zmienisz typ modelu ruchu na PESSIMISTIC
, zwrócony czas trwania będzie dłuższy:
"duration": "2436s"