ルート検索API - routing.calc_risk
与えられた経路 (route) を指定された出発時刻 (start_datetime) と速度 (speed) で走行したときのリスク曝露量を計算します。
実行方式は JSON-RPC v2.0
を利用します。
エンドポイント
https://<api-server-endpoint>/api/v1/evwhapi/jsonrpc
リクエスト例
{
"jsonrpc": "2.0",
"method": "routing.calc_risk",
"params": [
{
"themes": [
"riskmap_peopleflow_congestiondegree_5min"
],
"start_datetime": "2018-08-23 13:00:00+09",
"speed": 30,
"route": [
{
"start_lonlat": [139.632911226, 35.457119237],
"end_lonlat": [139.631598771, 35.458785682],
"speed": 30
},
{
"start_lonlat": [139.631598771, 35.458785682],
"end_lonlat": [139.631511274, 35.458894001],
"speed": 30
},
{
"start_lonlat": [139.631511274, 35.458894001],
"end_lonlat": [139.630386392, 35.458302371],
"speed": 30
}
]
}
],
"id": "test-routing-calcrisk"
}
パラメータ
params
| キー |
データ型 |
説明 |
既定値 |
| themes |
array of string |
リスクマップのテーマ名 |
必須 |
| route |
array of object |
経路 |
必須 |
| start_datetime |
string (YYYY-MM-DD HH:MM:SS+TZ) |
出発日時 |
必須 |
| speed |
number |
既定の走行速度 (km/h) |
必須 |
params.route の各要素について
| キー |
データ型 |
説明 |
既定値 |
| start_lonlat |
array of number |
始点の経度と緯度 |
必須 |
| end_lonlat |
array of number |
終点の経度と緯度 |
必須 |
| start_datetime |
string (YYYY-MM-DD HH:MM:SS+TZ) |
始点の出発日時 |
自動設定 |
| speed |
number |
この路線の走行速度 (km/h) |
自動設定 |
- start_datetime が指定されない場合は以下のように計算します。
- route の先頭要素ならば start_datetime = params.start_datetime とします。
- route の 2 番目以降の要素ならば、手前の要素から計算して求めます。
- start_datetime の値の妥当性 (前後の要素との大小関係など) は検証されません。
- speed が指定されない場合は speed = params.speed とします。
出力サンプル
{
"result": {
"total_risks": [
{
"theme": "riskmap_peopleflow_congestiondegree_5min",
"risk": 0.035574762439000006
}
],
"route": [
{
"start_lonlat": [139.632911226, 35.457119237],
"end_lonlat": [139.631598771, 35.458785682],
"start_datetime": "2018-08-23 13:00:00+09",
"speed": 30,
"risks": [
{
"theme": "riskmap_peopleflow_congestiondegree_5min",
"risk": 0.021995194051000002
}
]
},
...
]
},
"id": "test-risk-exposure",
"jsonrpc": "2.0"
}
戻り値
リスク暴露量の合計値および経路毎のリスク暴露量の情報を含む JSON オブジェクトを返します。
リスクの曝露量の単位は「リスク・時」とします。たとえば、リスク 2 の領域を 1.5 時間走行した場合のリスク曝露量は 2 * 1.5 = 3 となります。
result
| キー |
データ型 |
説明 |
| total_risks |
array of object |
経路上でのリスク曝露量 |
| route |
array of object |
経路 |
total_risks の各要素について
| キー |
データ型 |
説明 |
| theme |
string |
テーマ名 |
| risk |
number |
リスク曝露量 |
result.route の各要素について
| キー |
データ型 |
説明 |
| start_lonlat |
array of number |
始点の経度と緯度 |
| end_lonlat |
array of number |
終点の経度と緯度 |
| start_datetime |
string (YYYY-MM-DD HH:MM:SS+TZ) |
始点の出発日時 |
| speed |
number |
この路線の走行速度 (km/h) |
| rirks |
array of object |
この路線でのリスク曝露量 |
| theme |
string |
テーマ名 |
- リクエストの route に risks を追加して返します。
- risks の各要素は total_risks の各要素 と同内容となります。
- リクエストで start_datetime と speed が未指定だった場合は計算された値を追加して返します。
主な制限事項
route の各要素におけるリスク曝露量の計算では、その要素の start_datetime 時点のリスクを用います。
route の各要素におけるリスク曝露量の計算では、その要素内でのリスクの最大値を利用します。要素内でリスクの大小があった場合でも按分計算は行いません。
- 移動中のリスクのみがリスク曝露量の計算に含まれます。
start_datetime を指定することで「その地点に待機」する意図を表現しても、待機中のリスク曝露量は計算に含まれません。