使用するトラフィック モデル タイプを指定する

交通モデルは、特定のアルゴリズムと要素を使用して、特定のルートの総所要時間に交通状況がどのように影響するかを予測します。Routes API には、交通時間の計算に使用されるさまざまな要素に優先順位を付けることができる、さまざまな交通モデルのタイプが用意されています。ルートまたはルート マトリックスの所要時間の計算に使用するトラフィック モデルのタイプを指定できます。トラフィック モデルのタイプを設定すると、duration フィールドで返される値は、選択したトラフィック モデルによって異なります。

Routes API の Compute Routes メソッドと Compute Route Matrix メソッドはどちらも、トラフィック モデルのタイプをサポートしています。

デフォルトでは、どちらの方法でも BEST_GUESS トラフィック モデルタイプが使用されます。

トラフィック タイプを指定する

  1. 出発地と目的地を設定します。

  2. 出発時間が将来の場合、departure_time パラメータを使用して時刻を含めます。出発時刻を指定しない場合、デフォルトは現在時刻になります。

  3. trafficModel パラメータで使用するトラフィック モデルを選択します。 次のいずれかのタイプです。

    • BEST_GUESS(デフォルト): 返された duration_in_traffic をリクエストする 両者についてわかっていることを考慮すると、 リアルタイムの交通状況や現在の交通状況です。departure_time が現在時刻に近いほど、現在の交通状況が重視されます。デフォルトの型 BEST_GUESS を使用すると、ほとんどのユースケースで最も有用な予測が得られます。

    • PESSIMISTIC: 返される duration_in_traffic で、交通量の多い日の過去の交通状況に基づいて時間をモデル化するようリクエストします。このタイプでは、ほとんどの日の実際の移動時間よりも長い推定所要時間が示されます。交通状況が極端に悪い場合は、この推定よりも所要時間が長くなることがあります。

    • OPTIMISTIC を使用して、返された duration_in_traffic でモデルをモデル化するようにリクエストします。 過去の交通状況をもとに、良好な交通状況の曜日の時刻を計算します。 このタイプの推定所要時間は、次のレベルより短い可能性が高いです。 ほとんどの日の実際の移動時間です特に この推定値よりも高速になる場合があります。

    次に例を示します。

    "trafficModel": "OPTIMISTIC"

  4. フィールド マスクに 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"