交通状況モデルでは、特定のアルゴリズムと要素を使用して、交通状況が特定のルートの合計移動時間に与える影響を予測します。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"