交通模型會使用特定演算法和因素,預測交通狀況對特定路線總行車時間的影響。Routes API 提供不同的流量模型類型,以便在計算流量持續時間時,將不同因素排出優先順序。您可以指定路線或路線矩陣計算時間時,要使用的交通模型類型。設定流量模型類型時,duration
欄位中傳回的值會因所選流量模型而異。
Routes API 的 Compute Routes
和 Compute Route Matrix
方法都支援交通模式類型。
根據預設,這兩種方法都會使用 BEST_GUESS
流量模型類型。
如何指定流量類型
設定出發地和目的地。
如果出發時間是未來時間,請使用
departure_time
參數加入時間。如果未指定出發時間,系統會預設為現在。請選取要搭配
trafficModel
參數使用的流量模型,以及下列任一類型:BEST_GUESS
(預設),要求傳回的duration_in_traffic
是根據歷來路況和即時車流量兩者的已知相關資訊計算而得的最佳預估交通時間。departure_time
距離現在的時間越近,即時車流量的影響力就越大。使用BEST_GUESS
的預設類型,可為大多數用途提供最實用的預測結果。PESSIMISTIC
要求傳回的duration_in_traffic
模型根據交通不順日子的歷來交通狀況模擬時間。這類預估時間長度在大多數日子上可能會較長於實際交通時間。但偶爾路況特別差時,實際交通時間可能會超過這個預估值。OPTIMISTIC
要求傳回的duration_in_traffic
模型根據路況良好日子的歷來資料路況模擬時間。這類型會提供預估時間,這個時間在大多數日子上,通常會比實際交通時間短。但偶爾路況特別好時,實際交通時間可能會短於這個值。
例如:
"trafficModel": "OPTIMISTIC"
在欄位遮罩中指定
routes.duration
欄位。REST
-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"