交通模型會使用特定演算法和因素,預測交通狀況對特定路線總行車時間的影響。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"