交通モデルは、特定のアルゴリズムと要素を使用して、特定のルートの総移動時間に交通状況がどのように影響するかを予測します。Routes API には、交通状況での所要時間の計算に使用されるさまざまな要素を優先順位付けするための、さまざまな交通モデル タイプが用意されています。ルートまたはルート マトリクスの所要時間を計算するときに、ルートで使用する交通モデルのタイプを指定できます。トラフィック モデルのタイプを設定すると、選択したトラフィック モデルに応じて duration
フィールドで返される値が変わります。
Routes API の Compute Routes
メソッドと Compute Route Matrix
メソッドは、どちらも交通モデルのタイプをサポートしています。
デフォルトでは、どちらのメソッドでも BEST_GUESS
トラフィック モデルタイプを使用します。
トラフィック タイプを指定するには
出発地と目的地を設定します。
出発時刻が未来の場合は、
departure_time
パラメータを使用して時刻を含めます。出発時刻を指定しない場合、デフォルトは現在時刻になります。routingPreference
パラメータをTRAFFIC_AWARE_OPTIMAL
に設定します。routingPreference
をTRAFFIC_UNAWARE
またはTRAFFIC_AWARE
に設定すると、trafficModel
パラメータと互換性がなくなります。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"