Amazon Location でのルートマトリックスを使用したルート計画 - Amazon Location Service

Amazon Location でのルートマトリックスを使用したルート計画

Amazon Location Service を利用すれば、ルートの計画および改善したソフトウェアへの入力ができます。出発地と目的地間のルートについて、所要時間や移動距離などのルートの計算が作成できます。

例えば、出発地の A と B、目的地の X と Y を入力すると、Amazon Location Service は A から X、A から Y、B から X、B から Y までのルートの移動時間と移動距離を計算してルートを出します。

さまざまな交通手段、回避路線、交通状況に基づいてルートを計算することができます。例えば、車両は長さが 35 フィートのトラックであると入力すると、それらの規制に基づいて移動時間と移動距離を計算してルートを決めます。

返された結果 (そして計算されたルート数) は、出発地点の数を目的地の数の掛け算の結果です。料金は、サービスへのリクエストごとではなく、計算されたルートごとに請求されるため、10 か所出発地と 10 か所の目的地の掛け算の結果、つまり、ルートマトリックスは 100 ルートとして請求されます。

ルートマトリックスの計算

複数の出発地と目的地の間のルートのマトリックスを計算することができます。ルートの結果には、移動時間と移動距離が含まれます。

前提条件

CalculateRouteMatrix オペレーションを使用してクエストを送信します。最小のリクエストには次のフィールドが必ず含まれます。

  • DeparturePositions — ルートを計算するためのすべての出発地です。[longitude, latitude] の配列として定義

  • DestinationPositions — ルートを計算するためのすべての目的地です。[longitude, latitude] の配列として定義

注記

出発地または目的地の位置が地図に載っていない場合、Amazon Location はその位置を最も近い道路に変更します。

オプションで出発時間旅行モードを指定することもできます。

AWS CLI または Amazon Location API を使用することができます。

API

次の例は、ルート計算リソースの ExampleCalculator を使った CalculateRouteMatrix リクエストです。このリクエストでは、出発位置 [-122.7565, 49.0021 ] と [-122.2014, 47.6101] から目的地位置 [-122.3394, 47.6159 ] と [-122.4813, 48.7511] までのルートマトリックスを計算することを指定しています。

POST /routes/v0/calculators/ExampleCalculator/calculate/route-matrix Content-type: application/json { "DeparturePositions": [ [-122.7565,49.0021], [-122.2014,47.6101] ], "DestinationPositions": [ [-122.3394, 47.6159], [-122.4813,48.7511] ] }
AWS CLI

次の例は、ルート計算リソースの ExampleCalculator を利用する calculate-route-matrix コマンドです。このリクエストでは、出発位置 [-122.7565, 49.0021 ] と [-122.2014, 47.6101] から目的地位置 [-122.3394, 47.6159 ] と [-122.4813, 48.7511] までのルートマトリックスを計算することを指定しています。

aws location \ calculate-route-matrix \ --calculator-name ExampleCalculator \ --departure-positions "[[-122.7565,49.0021],[-122.2014,47.6101]]" \ --destination-positions "[[-122.3394,47.6159],[-122.4813,48.7511]]"

デフォルトでは、レスポンスは Distance をキロメートルで返します。以下のオプションの中のパラメータを利用すれば、計測単位をマイルに変更することができます。

  • DistanceUnit — 距離を計算するシステムを指定します。

POST /routes/v0/calculators/ExampleCalculator/calculate/route-matrix Content-type: application/json { "DeparturePositions": [ [-122.7565,49.0021], [-122.2014,47.6101] ], "DestinationPositions": [ [-122.3394, 47.6159], [-122.4813,48.7511] ], "DistanceUnit": "Miles" }

出発地と目的地のポジションの制限

ルートマトリックスを計算する場合、出発地と目的地の位置には制限があります。これらの制限は、RouteCalculator リソースを利用するプロバイダーによって異なります。

制限 Esri grab こちら
ポジション数 出発地と目的地はいずれも 10 か所までです。 出発地 350 か所、目的地 350 か所までです。

出発地 350 か所、目的地 350 か所までです。

より長いルートには、これ以上の制限があります。セクションを参照してください。

ポジションの間の距離 一組の出発地と目的地の最大距離は、400km 以内 (徒歩ルートの場合は 40km 以内) です。

すべての出発地と目的地を中心とした円の最大直径は 180km です。

より長いルートには、これ以上の制限があります。セクションを参照してください。

ルートの長さ ルートの移動総時間が 400 分を超えると、ルートの計算が完成できません。

出発地と目的地を中心とした円から 10 km 以上離れているルートは計算できません。

より長いルートには、これ以上の制限があります。セクションを参照してください。

リージョン 韓国ではルートマトリックスの計算はサポートされていません。 東南アジアでは利用可能です。サポートされている国/地域のリストと詳細については、「国/地域と対象地域」を参照してください。 追加の制限はありません。

より長いルートの計画

ルート結果のマトリックスを計算すると効率的なルートプランニングに役立ちますが、計算には時間がかかる場合があります。Amazon Location Service のデータプロバイダーはすべて、計算できるルートの数または距離に制限が設けされています。例えば、HERE では 350 の出発地と目的地の間のルートを作成できますが、それらの位置は 180 km の範囲内にある必要があります。もっと長いルートを計画したい場合はどうでしょうか?

HERE をデータプロバイダーとした RouteCalculator を使用して、少数のルートについて長さに制限のないルートマトリックスを計算することができます。これによって CalculateRouteMatrix API を呼び出す方法が変わるわけではありません。Amazon Location では、要件を満たせばより長いルートが許可されるのみです。

より長いルート計算の要件は以下のとおりです。

  • RouteCalculator はHERE データプロバイダーを使用する必要があります。

  • 出発地の数は最大 15 か所です。

  • 計算するルートの総数は最大 100 です。

  • ルートが 1,000 km を超える場合、通行料回避を伴うトラックルートには長距離ルーティングは許可されません。 この組み合わせは計算に時間がかかり、通話がタイムアウトする可能性があります。CalculateRoute オペレーションを使えば、これらのルートを個別に計算できます。

通話がこれらの要件を満たさない場合 (例えば、1 回の通話で 150 のルート計算が要求される場合)、CalculateRouteMatrix は短い方のルートルールのみを許可するように返されます。位置が 180km の円以内であれば、ルートの計算ができます。

長いルートを計算する際には、次の点に注意してください。

  • ルートが長くなると、Amazon Location API の最大時間よりも計算に時間がかかることがあります。特定のルートでタイムアウトが頻発する場合は、CalculateRouteMatrix を呼び出すたびに、より少ない数のルートを試すことができます。

  • CalculateRouteMatrix リクエストに目的地や出発地を追加すると、操作がより制限されたモードに切り替わり、作成するルートが少なくなると、問題なく計算できるルートでもエラーが発生することがあります。この場合、目的地または出発地の数を減らし、必要なルート計算のフルセットを取得するために複数のリクエストを行ってください。

レスポンスの例

以下は、Amazon Location ルート API CalculateRouteMatrix からオペレーションを呼び出した場合のリクエストとそれに対応するレスポンスを含むリクエストの例です。

Example request
POST /routes/v0/calculators/ExampleCalculator/calculate/route-matrix Content-type: application/json { "DeparturePositions": [ [-122.7565,49.0021], [-122.2014,47.6101] ], "DestinationPositions": [ [-122.3394, 47.6159], [-122.4813,48.7511] ] }
Example response
{ "RouteMatrix": [ [ { "Distance": 178.764, "DurationSeconds": 7565 }, { "Distance": 39.795, "DurationSeconds": 1955 } ], [ { "Distance": 15.31, "DurationSeconds": 1217 }, { "Distance": 142.506, "DurationSeconds": 6279 } ] ], "Summary": { "DataSource": "Here", "RouteCount": 4, "ErrorCount": 0, "DistanceUnit": "Kilometers" } }