燃料消費およびCO₂排出を監視する
燃料消費量およびCO₂排出量を推定することで、物流業務のコストを効率的に把握できると同時に、カーボンフットプリントの削減といったサステナビリティ目標との整合性も確保できます。
HERE Routing API V8を用いたHERE Tour Planning APIソリューションでは、問題リクエストに運行管理の車両のエネルギー消費パラメーターを入力として指定することで、結果として得られるツアーの推定燃料consumptionおよびco2emissionの総量を取得できます。これらの値は、ツアー統計の一部として統合されます。
注
- CO₂排出量および燃料消費量の統計を有効にするには、HERE Routing API v8へのアクセス権を取得する必要があります。詳細については、以下を参照してください。
- 燃料消費量およびCO₂排出量の統計は、情報提供のみを目的としており、ルート最適化には影響しません。
- これらの統計を取得するプロセスには、追加のHERE Routing API v8リクエストが含まれており、そのためHERE Tour Planning APIの総レスポンス時間に影響を及ぼす可能性があります。
- HERE Routing API v8に対する
consumptionデータおよびco2Emissionデータのリクエストが失敗した場合でも、HERE Tour Planning APIのリクエスト自体は失敗せず、noticeオブジェクト内にエラーメッセージが返されます。
CO₂排出量と燃料消費量の計算について理解する
ツアーに参加するすべての車両における燃料消費量とCO₂排出量の合計を計算するには、問題リクエスト内のvehicle type定義の一部として、fuelオブジェクトを含めてください。以下のコードスニペットにその例を示します。
"fuel": {
"type": "petrol",
"freeFlowSpeedTable": "0,0,8.33,0.000120,13.89,0.000105,19.44,0.000095,22.22,0.000090,25,0.000092,30.56,0.000100,36.11,0.000115,40.28,0.000130",
"trafficSpeedTable": "0,0,8.33,0.000125,13.89,0.000110,19.44,0.000098,22.22,0.000090,25,0.000092,30.56,0.000100,36.11,0.000115,40.28,0.000130",
"additionalConsumption": 0.00001,
"ascent": 0.00001
}前述の例が示すように、fuelオブジェクトには車両固有のエネルギー消費パラメーターが多数含まれています。これらのパラメーターは、ツアーにおける燃料消費量とCO₂排出量の合計を計算するために、HERE Routing API v8で使用されます。
-
type:燃料のタイプを示します。たとえば、petrol、diesel、LPG(液化石油ガス) などがあります。 -
freeFlowSpeedTable:交通がスムーズに流れている状況下における、さまざまな速度での車両のエネルギー消費を示すテーブルまたはデータセットを表します。形式は次のとおりです:<SPEED_0>,<CONSUMPTION_0>,<SPEED_1>,<CONSUMPTION_1>,...,<SPEED_N>,<CONSUMPTION_N>単位は燃料の種類によって異なります。以下の表をご覧ください。
燃料タイプ 単位 ディーゼル、ガソリン、LPG l/m (リットル/メートル) CNG kg/m (キログラム/メートル) -
trafficSpeedTable:さまざまな交通状況下における、異なる速度での車両のエネルギー消費を記録したもので、freeFlowSpeedTableプロパティと同じ形式と単位系が使われます。 -
additionalConsumption:たとえばエアコンや照明など、車両の補助システムによる燃料消費量を示します。ディーゼル、ガソリン、LPGの場合はリットル/秒、CNGの場合はキログラム/秒で表されます。 -
ascent:標高が1メートル上昇するごとの燃料消費率を示します。ディーゼル、ガソリン、LPGの場合はメートルあたりのリットル/メートル、CNGの場合はキログラム/メートルで表されます。
注
- エネルギー消費入力の単位系は、HERE Tour PlanningとHERE Routing v8 APIで異なります。詳細については、以下を参照してください。
fuelオブジェクトおよび関連するパラメーターの詳細については、「HERE Routing API V8 APIリファレンス」を参照してください。
以下のセクションでは、HERE Tour Planningの問題およびそのソリューションの全体的な文脈における、燃料消費量およびCO₂排出量機能の実用的な使用例を紹介します。
問題
次に示す問題には、fuelオブジェクトと、それに関連するエネルギー消費量のプロパティが含まれており、これらは車両タイプ定義の一部として組み込まれています。
Click to expand/collapse the sample JSON
{
"fleet": {
"types": [
{
"id": "small",
"profile": "car",
"costs": {
"fixed": 20,
"distance": 0,
"time": 0.005
},
"shifts": [
{
"start": {
"time": "2023-05-28T08:00:00Z",
"location": {
"lat": 52.50935,
"lng": 13.41997
}
},
"end": {
"time": "2023-05-28T16:00:00Z",
"location": {
"lat": 52.50935,
"lng": 13.41997
}
}
}
],
"fuel": {
"type": "diesel",
"freeFlowSpeedTable": "0,0,8.33,0.000120,13.89,0.000105,19.44,0.000095,22.22,0.000090,25,0.000092,30.56,0.000100,36.11,0.000115,40.28,0.000130",
"trafficSpeedTable": "0,0,8.33,0.000125,13.89,0.000110,19.44,0.000098,22.22,0.000090,25,0.000092,30.56,0.000100,36.11,0.000115,40.28,0.000130",
"additionalConsumption": 0.00001,
"ascent": 0.00001
},
"capacity": [
100
],
"amount": 10
}
],
"profiles": [
{
"type": "car",
"name": "car"
}
]
},
"plan": {
"jobs": [
{
"id": "Job_1",
"tasks": {
"pickups": [
{
"places": [
{
"location": {
"lat": 52.56182,
"lng": 13.497167
},
"duration": 600
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_2",
"tasks": {
"pickups": [
{
"places": [
{
"location": {
"lat": 52.534553,
"lng": 13.519429
},
"duration": 600
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_3",
"tasks": {
"pickups": [
{
"places": [
{
"location": {
"lat": 52.482275,
"lng": 13.502456
},
"duration": 600
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_4",
"tasks": {
"pickups": [
{
"places": [
{
"location": {
"lat": 52.473537,
"lng": 13.505414
},
"duration": 600
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_5",
"tasks": {
"pickups": [
{
"places": [
{
"location": {
"lat": 52.463341,
"lng": 13.49061
},
"duration": 600
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_6",
"tasks": {
"pickups": [
{
"places": [
{
"location": {
"lat": 52.434003,
"lng": 13.466142
},
"duration": 600
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_7",
"tasks": {
"pickups": [
{
"places": [
{
"location": {
"lat": 52.447476,
"lng": 13.433062
},
"duration": 600
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_8",
"tasks": {
"pickups": [
{
"places": [
{
"location": {
"lat": 52.458414,
"lng": 13.392079
},
"duration": 600
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_9",
"tasks": {
"pickups": [
{
"places": [
{
"location": {
"lat": 52.446407,
"lng": 13.36047
},
"duration": 600
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_10",
"tasks": {
"pickups": [
{
"places": [
{
"location": {
"lat": 52.440807,
"lng": 13.351399
},
"duration": 600
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_11",
"tasks": {
"pickups": [
{
"places": [
{
"location": {
"lat": 52.441913,
"lng": 13.339028
},
"duration": 600
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_12",
"tasks": {
"pickups": [
{
"places": [
{
"location": {
"lat": 52.458232,
"lng": 13.338698
},
"duration": 600
}
],
"demand": [
1
]
}
]
}
},
{
"id": "Job_13",
"tasks": {
"pickups": [
{
"places": [
{
"location": {
"lat": 52.457629,
"lng": 13.323742
},
"duration": 600
}
],
"demand": [
1
]
}
]
}
}
]
}
}ソリューション
前述の問題に対するソリューションでは、statisticオブジェクトにconsumptionプロパティおよびco2Emissionプロパティが新たに追加されています。以下のスニペットをご覧ください。
{
"statistic": {
"cost": 91.205,
"distance": 60325,
"duration": 14241,
"times": {
"driving": 6441,
"serving": 7800,
"waiting": 0,
"stopping": 0,
"break": 0
},
"consumption": 6.3893,
"co2Emission": 17.232999999999997
}
}説明
-
consumption:推定される正味の燃料消費量を示します。単位の種類は燃料タイプによって異なります。ディーゼル、ガソリン、LPG (液化石油ガス) の車両ではリットルで、CNG (圧縮天然ガス) の車両ではキログラムで測定されます。サンプルの問題では、燃料タイプとして
dieselが指定されており、そのため消費量は6.3893リットルとなっています。 -
co2Emission:そのツアーに対する、キログラム単位の推定CO₂排出量を表します。サンプルの問題のエネルギー消費統計に基づくと、ツアー全体のCO₂排出量は約
17.233キログラムと算出されます。
次のJSONファイルには、完全なソリューションのJSONファイルが含まれています。
Click to expand/collapse the sample JSON
{
"statistic": {
"cost": 91.205,
"distance": 60325,
"duration": 14241,
"times": {
"driving": 6441,
"serving": 7800,
"waiting": 0,
"stopping": 0,
"break": 0
},
"consumption": 6.3893,
"co2Emission": 17.232999999999997
},
"tours": [
{
"vehicleId": "small_10",
"typeId": "small",
"stops": [
{
"time": {
"arrival": "2023-05-28T08:00:00Z",
"departure": "2023-05-28T08:00:00Z"
},
"load": [
0
],
"activities": [
{
"jobId": "departure",
"type": "departure",
"location": {
"lat": 52.50935,
"lng": 13.41997
},
"time": {
"start": "2023-05-28T08:00:00Z",
"end": "2023-05-28T08:00:00Z"
}
}
],
"location": {
"lat": 52.50935,
"lng": 13.41997
},
"distance": 0
},
{
"time": {
"arrival": "2023-05-28T08:19:39Z",
"departure": "2023-05-28T08:29:39Z"
},
"load": [
1
],
"activities": [
{
"jobId": "Job_1",
"type": "pickup",
"location": {
"lat": 52.56182,
"lng": 13.497167
},
"time": {
"start": "2023-05-28T08:19:39Z",
"end": "2023-05-28T08:29:39Z"
}
}
],
"location": {
"lat": 52.56182,
"lng": 13.497167
},
"distance": 9971
},
{
"time": {
"arrival": "2023-05-28T08:36:16Z",
"departure": "2023-05-28T08:46:16Z"
},
"load": [
2
],
"activities": [
{
"jobId": "Job_2",
"type": "pickup",
"location": {
"lat": 52.534553,
"lng": 13.519429
},
"time": {
"start": "2023-05-28T08:36:16Z",
"end": "2023-05-28T08:46:16Z"
}
}
],
"location": {
"lat": 52.534553,
"lng": 13.519429
},
"distance": 13720
},
{
"time": {
"arrival": "2023-05-28T09:00:18Z",
"departure": "2023-05-28T09:10:18Z"
},
"load": [
3
],
"activities": [
{
"jobId": "Job_3",
"type": "pickup",
"location": {
"lat": 52.482275,
"lng": 13.502456
},
"time": {
"start": "2023-05-28T09:00:18Z",
"end": "2023-05-28T09:10:18Z"
}
}
],
"location": {
"lat": 52.482275,
"lng": 13.502456
},
"distance": 22499
},
{
"time": {
"arrival": "2023-05-28T09:12:08Z",
"departure": "2023-05-28T09:22:08Z"
},
"load": [
4
],
"activities": [
{
"jobId": "Job_4",
"type": "pickup",
"location": {
"lat": 52.473537,
"lng": 13.505414
},
"time": {
"start": "2023-05-28T09:12:08Z",
"end": "2023-05-28T09:22:08Z"
}
}
],
"location": {
"lat": 52.473537,
"lng": 13.505414
},
"distance": 23785
},
{
"time": {
"arrival": "2023-05-28T09:28:08Z",
"departure": "2023-05-28T09:38:08Z"
},
"load": [
5
],
"activities": [
{
"jobId": "Job_5",
"type": "pickup",
"location": {
"lat": 52.463341,
"lng": 13.49061
},
"time": {
"start": "2023-05-28T09:28:08Z",
"end": "2023-05-28T09:38:08Z"
}
}
],
"location": {
"lat": 52.463341,
"lng": 13.49061
},
"distance": 26726
},
{
"time": {
"arrival": "2023-05-28T09:47:07Z",
"departure": "2023-05-28T09:57:07Z"
},
"load": [
6
],
"activities": [
{
"jobId": "Job_6",
"type": "pickup",
"location": {
"lat": 52.434003,
"lng": 13.466142
},
"time": {
"start": "2023-05-28T09:47:07Z",
"end": "2023-05-28T09:57:07Z"
}
}
],
"location": {
"lat": 52.434003,
"lng": 13.466142
},
"distance": 32033
},
{
"time": {
"arrival": "2023-05-28T10:02:57Z",
"departure": "2023-05-28T10:12:57Z"
},
"load": [
7
],
"activities": [
{
"jobId": "Job_7",
"type": "pickup",
"location": {
"lat": 52.447476,
"lng": 13.433062
},
"time": {
"start": "2023-05-28T10:02:57Z",
"end": "2023-05-28T10:12:57Z"
}
}
],
"location": {
"lat": 52.447476,
"lng": 13.433062
},
"distance": 35562
},
{
"time": {
"arrival": "2023-05-28T10:19:30Z",
"departure": "2023-05-28T10:29:30Z"
},
"load": [
8
],
"activities": [
{
"jobId": "Job_8",
"type": "pickup",
"location": {
"lat": 52.458414,
"lng": 13.392079
},
"time": {
"start": "2023-05-28T10:19:30Z",
"end": "2023-05-28T10:29:30Z"
}
}
],
"location": {
"lat": 52.458414,
"lng": 13.392079
},
"distance": 39586
},
{
"time": {
"arrival": "2023-05-28T10:34:45Z",
"departure": "2023-05-28T10:44:45Z"
},
"load": [
9
],
"activities": [
{
"jobId": "Job_9",
"type": "pickup",
"location": {
"lat": 52.446407,
"lng": 13.36047
},
"time": {
"start": "2023-05-28T10:34:45Z",
"end": "2023-05-28T10:44:45Z"
}
}
],
"location": {
"lat": 52.446407,
"lng": 13.36047
},
"distance": 42400
},
{
"time": {
"arrival": "2023-05-28T10:48:15Z",
"departure": "2023-05-28T10:58:15Z"
},
"load": [
10
],
"activities": [
{
"jobId": "Job_10",
"type": "pickup",
"location": {
"lat": 52.440807,
"lng": 13.351399
},
"time": {
"start": "2023-05-28T10:48:15Z",
"end": "2023-05-28T10:58:15Z"
}
}
],
"location": {
"lat": 52.440807,
"lng": 13.351399
},
"distance": 43984
},
{
"time": {
"arrival": "2023-05-28T11:01:36Z",
"departure": "2023-05-28T11:11:36Z"
},
"load": [
11
],
"activities": [
{
"jobId": "Job_11",
"type": "pickup",
"location": {
"lat": 52.441913,
"lng": 13.339028
},
"time": {
"start": "2023-05-28T11:01:36Z",
"end": "2023-05-28T11:11:36Z"
}
}
],
"location": {
"lat": 52.441913,
"lng": 13.339028
},
"distance": 45583
},
{
"time": {
"arrival": "2023-05-28T11:17:26Z",
"departure": "2023-05-28T11:27:26Z"
},
"load": [
12
],
"activities": [
{
"jobId": "Job_13",
"type": "pickup",
"location": {
"lat": 52.457629,
"lng": 13.323742
},
"time": {
"start": "2023-05-28T11:17:26Z",
"end": "2023-05-28T11:27:26Z"
}
}
],
"location": {
"lat": 52.457629,
"lng": 13.323742
},
"distance": 48283
},
{
"time": {
"arrival": "2023-05-28T11:29:59Z",
"departure": "2023-05-28T11:39:59Z"
},
"load": [
13
],
"activities": [
{
"jobId": "Job_12",
"type": "pickup",
"location": {
"lat": 52.458232,
"lng": 13.338698
},
"time": {
"start": "2023-05-28T11:29:59Z",
"end": "2023-05-28T11:39:59Z"
}
}
],
"location": {
"lat": 52.458232,
"lng": 13.338698
},
"distance": 49435
},
{
"time": {
"arrival": "2023-05-28T11:57:21Z",
"departure": "2023-05-28T11:57:21Z"
},
"load": [
0
],
"activities": [
{
"jobId": "arrival",
"type": "arrival",
"location": {
"lat": 52.50935,
"lng": 13.41997
},
"time": {
"start": "2023-05-28T11:57:21Z",
"end": "2023-05-28T11:57:21Z"
}
}
],
"location": {
"lat": 52.50935,
"lng": 13.41997
},
"distance": 60325
}
],
"statistic": {
"cost": 91.205,
"distance": 60325,
"duration": 14241,
"times": {
"driving": 6441,
"serving": 7800,
"waiting": 0,
"stopping": 0,
"break": 0
},
"consumption": 6.3893,
"co2Emission": 17.232999999999997
},
"shiftIndex": 0
}
]
}結論
このチュートリアルでは、運行管理のエネルギー消費データをAPIリクエストに含める方法を紹介しました。そうすることで、燃料消費量およびCO₂排出量に関する有益なインサイトが得られ、よりコスト効率が高く、環境に配慮した物流運用を実現できます。
次のステップ
26 日前の更新