デフォルトでは、Routes API はデフォルトのルート(燃料効率やエネルギー効率を考慮しないルート)を返します。環境に優しいルート選択を有効にしても、レスポンスにはデフォルト ルートが含まれます。また、車両のエンジンの種類に応じて、燃料効率またはエネルギー効率が最も良いルートを示す環境に優しいルートも返されます。
Routes API から返される環境に優しいルートは、ルート全体で燃料消費量を抑えるように最適化されています。この API は、車両のエンジンの種類と、リアルタイムの交通状況や道路状況などの要因に基づいて、環境に優しいルートを選択します。ルートの燃料効率やエネルギー効率が高いほど、自動車の燃料使用量、エネルギー使用量、CO2 排出量は少なくなります。
たとえば、ディーゼル車両の相対的な燃料経済性のメリットは、一般的に高速道路の運転で最大です。ハイブリッド車と電気自動車は、回生ブレーキを幅広く使用し、そのメリットを享受できる街中でのストップ アンド ゴー運転の効率性を次第に高める傾向があります。
また、ルート全体の推定燃料消費量を返すように API をリクエストすることもできます。燃料消費量の見積もりは、異なるルートを比較するための方法として使用し、車両自体の正確な燃料消費量の推定使用量としては使用しないでください。
Google マップによる燃料効率の推定方法
Routes API は、米国エネルギー省の国家再生可能エネルギー研究所の分析情報と欧州環境機関のデータを使用して、燃料効率を推定します。この計算では、燃料使用量、エネルギー使用量、CO2 排出量に影響する次のような要因が考慮されます。
- お住まいの地域における自動車の燃料またはエネルギーの平均消費量
- ルート上での坂の勾配
- 少し進んでは止まるパターンの交通状況
- 道路の種類(一般道路や高速道路など)
Routes API は、到着時刻がデフォルト ルートとほぼ同じ場合、燃料効率またはエネルギー効率が最も良いルートを返します。燃料やエネルギーの節約量が少なすぎる場合や、運転時間が大幅に増加する場合は、API によりルート間の相対的な燃料またはエネルギーの節約量が表示され、比較しやすくなります。
詳しくは、環境に優しいルート選択のテクノロジーに関する資料(PDF)をご覧ください。
前提条件
環境に優しいルート選択を使用するか、燃料消費量を推定するには:
ルーティング設定として
TRAFFIC_AWARE_OPTIMAL
を指定する必要があります。このモードでは、サーバーは道路網の網羅的な検索を実行して最適なルートを見つけます。詳細については、品質とレイテンシの構成をご覧ください。travelMode
をDRIVE
に設定する必要があります。その他の移動手段のリクエストはエラーを返します。出発地の地点の場所は、サポートされている地域に設定する必要があります。そうしないと、API からエラーが返されます。
経路に中間地点を含めることはできません。
請求
通常、Google Maps Platform のプレビュー機能は無料です。ただし、環境に優しいルート選択と燃料消費量の見積もりでは、ルーティング設定として TRAFFIC_AWARE_OPTIMAL
を指定する必要があるため、SKU: Routes Advanced に基づいて課金されます。
Routes API の課金の詳細をご覧ください。
環境に優しいルートをリクエスト
環境に優しいルートの計算をリクエストするには、リクエストで次のプロパティを設定します。
VehicleEmissionType で定義された値(
DIESEL
、GASOLINE
、ELECTRIC
、またはHYBRID
)を使用して、車両のemissionType
を指定します。デフォルト値はGASOLINE
です。requestedReferenceRoutes
をFUEL_EFFICIENT
に設定します。環境に優しいルートに関連付けられたレスポンス プロパティを返すように指定するレスポンス フィールド マスクを設定します。
routes.routeLabels:
: 各ルートをDEFAULT_ROUTE
、FUEL_EFFICIENT
、DEFAULT_ROUTE_ALTERNATE
のいずれかとして識別します。routes.routeToken:
: カスタムルートを取得するために Navigation SDK に渡すことができるルートトークン。
環境に優しいリクエストの例
次のコードは、環境に優しいルートのリクエストを示しています。この例では、レスポンス フィールド マスクを使用して、環境に優しいルートに関連付けられたレスポンス プロパティを routes.distanceMeters
プロパティおよび routes.duration
プロパティとともに返します。
curl -X POST -H 'content-type: application/json' -d '{ "origin": { "location": { "latLng": { "latitude": 41.76904801292959, "longitude": -72.67374935684933 } } }, "destination": { "location": { "latLng": { "latitude": 41.823042361105024, "longitude": -71.40933143059424 } } }, "routeModifiers": { "vehicleInfo": { "emissionType": "GASOLINE" } }, "travelMode":"DRIVE", "routingPreference": "TRAFFIC_AWARE_OPTIMAL", "requestedReferenceRoutes": ["FUEL_EFFICIENT"] }' \ -H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \ -H 'X-Goog-FieldMask: routes.distanceMeters,routes.duration,routes.routeLabels,routes.routeToken' \ 'https://routes.googleapis.com/directions/v2:computeRoutes'
環境に優しい回答の例
上記の computeRoutes
呼び出しは、デフォルト ルートと燃料効率が良いルートの 2 つのルートを含む JSON レスポンスを生成します。レスポンスの説明:
デフォルト ルートの場合、
routeLabels
配列プロパティにはDEFAULT_ROUTE
が含まれます。環境に優しいルートの場合、
routeLabels
配列プロパティにはFUEL_EFFICIENT
が含まれます。リクエストの
computeAlternativeRoutes
をtrue
に設定して代替ルートを計算した場合、routeLabels
配列プロパティにはDEFAULT_ROUTE_ALTERNATE
が含まれます。
{ "routes": [ { "distanceMeters": 138939, "duration": "5412s", "routeToken": "CoYJCpoIC…0n9S1cu", "routeLabels": [ "DEFAULT_ROUTE" ] }, { "distanceMeters": 116887, "duration": "5631s", "routeToken": "CuEHCu0G…xqm", "routeLabels": [ "FUEL_EFFICIENT" ] } ] }
現在の運転状況やその他の要因により、デフォルト ルートと環境に優しいルートは同じになる場合があります。この場合、routeLabels
には DEFAULT_ROUTE
と FUEL_EFFICIENT
の両方のラベルが含まれます。
{ "routes": [ { "distanceMeters": 45875, "duration": "2655s", "routeToken": "CvcDCos…6I40", "routeLabels": [ "DEFAULT_ROUTE", "FUEL_EFFICIENT" ] } ] }
ルートの燃料使用量を見積もる
このメソッドをリクエストして、ルート全体の推定燃料使用量をマイクロリットル単位で返すことができます。ルートの燃料使用量の推定値をレスポンスに追加するには:
燃料使用量の計算を有効にするには、
extraComputations
配列フィールドをFUEL_CONSUMPTION
に設定します。VehicleEmissionType で定義された値(
DIESEL
、GASOLINE
、ELECTRIC
、またはHYBRID
)を使用して、車両のemissionType
を指定します。デフォルト値はGASOLINE
です。emissionType
がHYBRID
の場合、API は電力と燃料の消費量をマイクロリットルの燃料に変換します。emissionType
がELECTRIC
の場合、API は消費電力をマイクロリットルの燃料に変換します。燃料使用量に関連するレスポンス プロパティを返すように指定するレスポンス フィールド マスク
routes.travelAdvisory.fuelConsumptionMicroliters
を設定します。
次の例では、環境に優しいルートを含むリクエストの一部として、推定燃料使用量をリクエストしています。
curl -X POST -H 'content-type: application/json' -d '{ "origin": { "location": { "latLng": { "latitude": 41.76904801292959, "longitude": -72.67374935684933 } } }, "destination": { "location": { "latLng": { "latitude": 41.823042361105024, "longitude": -71.40933143059424 } } }, "routeModifiers": { "vehicleInfo": { "emissionType": "GASOLINE" } }, "travelMode":"DRIVE", "routingPreference": "TRAFFIC_AWARE_OPTIMAL", "extraComputations": ["FUEL_CONSUMPTION"], "requestedReferenceRoutes": ["FUEL_EFFICIENT"] }' \ -H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \ -H 'X-Goog-FieldMask: routes.distanceMeters,routes.duration,routes.routeLabels,routes.routeToken,routes.travelAdvisory.fuelConsumptionMicroliters' \ 'https://routes.googleapis.com/directions/v2:computeRoutes'
レスポンスには、デフォルト ルートと環境に優しいルート両方の推定燃料消費量が含まれます。
{ "routes": [ { "distanceMeters": 138939, "duration": "5412s", "travelAdvisory": { "fuelConsumptionMicroliters": "11019554" }, "routeToken": "CoYJCpoIC…0n9S1cu", "routeLabels": [ "DEFAULT_ROUTE" ] }, { "distanceMeters": 116887, "duration": "5631s", "travelAdvisory": { "fuelConsumptionMicroliters": "9572436" }, "routeToken": "CuEHCu0G…xqm", "routeLabels": [ "FUEL_EFFICIENT" ] } ] }
サポートされるリージョン
Google Maps Platform チームは、Google の API サービスの国外の対応範囲の拡大に継続的に取り組んでいます。以下に、環境に優しいルート選択の最新のサポート範囲を国別に示します。
- アルバニア(AL)
- オーストリア(AT)
- ベルギー(BE)
- ボスニア ヘルツェゴビナ(BA)
- ブルガリア(BG)
- カナダ(CA)
- クロアチア(HR)
- キプロス(CY)
- チェコ(CZ)
- デンマーク(DK)
- エストニア(EE)
- フィンランド(FI)
- フランス(FR)
- ドイツ(DE)
- ギリシャ(GR)
- ハンガリー(HU)
- アイスランド(IS)
- アイルランド(IE)
- イタリア(IT)
- コソボ(XK)
- ラトビア(LV)
- リヒテンシュタイン(LI)
- リトアニア(LT)
- ルクセンブルク(LU)
- マルタ(MT)
- モンテネグロ(ME)
- オランダ(NL)
- 北マケドニア(MK)
- ノルウェー(NO)
- ポーランド(PL)
- ポルトガル(PT)
- ルーマニア(RO)
- セルビア(RS)
- スロバキア(SK)
- スロベニア(SI)
- スペイン(ES)
- スウェーデン(SE)
- スイス(CH)
- トルコ(TR)
- 英国(GB)
- 米国(US)