使用路線矩陣規劃路線 - Amazon Location Service

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用路線矩陣規劃路線

您可以使用 Amazon 定 Location Service 為您的路線規劃和優化軟體建立輸入。您可以為一組出發位置和一組目的地位置之間的路線創建路線結果,包括旅行時間和行駛距離。

例如,指定出發位置 A 和 B,以及目的地位置 X 和 Y,Amazon 定 Location Service 將返回從 A 到 X、A 到 Y、B 到 X 的路線的旅行時間和旅行距離,以及從 B 返回 Y 的路線的旅行時間和旅行距離。

您可以計算具有不同交通方式,避免和交通狀況的路線。例如,您可以指定車輛是 35 英呎長的卡車,計算的路線將使用這些限制來確定行駛時間和行駛距離。

傳回的結果數 (以及計算的路線) 是出發位置數乘以目的地位置數目。您需按計算出的每條路線收費,而不是每個服務的請求,因此包含 10 個出發地和 10 個目的地的路線矩陣將以 100 條路線計費。

計算路由矩陣

您可以計算一組出發位置和一組目標位置之間的路線矩陣。路線結果將包括旅行時間和旅行距離。

必要條件

  • 您必須先建立路由計算機資源,並為您向 Amazon 位置的請求設定身份驗證。如需詳細資訊,請參閱 必要條件

使用CalculateRouteMatrix作業提交請求。最小要求包含下列必要欄位:

  • DeparturePositions— 要計算路線的起始位置集。定義為陣列 [longitude, latitude]

  • DestinationPositions— 要計算路線的結束位置集。定義為的陣列[longitude, latitude]

注意

如果您指定不在道路上的出發地或目的地位置,Amazon Location 會將該位置移至最近的道路

您可以選擇在您的要求中指定出發時間旅行模式

您可以使用AWS CLI或 Amazon 位置 API。

API

下面的例子是使用路線計算器資源的CalculateRouteMatrix請求ExampleCalculator該請求指定計算從出發位置 [-122.7565, 49.0021] 和 [-122.2014, 47.6101] 到目的地位置的路線矩陣。

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

以下範例是使用路線計算機資源的calculate-route-matrix指令ExampleCalculator該請求指定計算從出發位置 [-122.7565, 49.0021] 和 [-122.2014, 47.6101] 到目的地位置的路線矩陣。

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資源使用的提供者而有所不同。

限制 埃斯里 抓斗 這裡
職位數 最多 10 個出發位置和 10 個目的地位置。 多達 350 個出發位置和 350 個目的地位置。

多達 350 個出發位置和 350 個目的地位置。

對於較長的路線,則適用其他限制。請參閱章節

位置之間的距離 任何一對出發和目的地位置必須彼此相距 400 公里(步行路線為 40 公里)。

所有出發地和目的地位置必須在直徑 180 公里的圓圈內。

對於較長的路線,則適用其他限制。請參閱章節

路線長度 如路線的總行程時間超過 400 分鐘,路線將不會完成。

出發地和目的地點周圍偏離超過 10 公里的路線將不計算。

對於較長的路線,則適用其他限制。請參閱章節

區域 韓國不支援計算路由矩陣。 適用於東南亞。如需支援的國家/地區清單以及更多資訊,請參閱。所涵蓋的國家 / 地區 沒有額外的限制。

更長的路線規劃

計算路由結果矩陣對於有效的路線規劃很有用,但計算可能需要一些時間。所有 Amazon 定 Location Service 資料供應商都會限制路線數量或可計算的路線距離。例如,HERE 允許在 350 個出發位置和目的地位置之間創建路線,但這些位置必須在 180 公里的圓圈內。如果您想計劃更長的路線怎麼辦?

您可以計算較少路由數目不受限制的路由的路由矩陣,使用, a RouteCalculator 與 HERE 作為資料提供者。這並不會改變您呼叫 CalculateRouteMatrix API 的方式,當您符合要求時,Amazon 位置只會允許更長的路由。

較長的路線計算需求如下:

  • RouteCalculator必須使用 HERE 資料提供者。

  • 出發位置的數量不得大於 15。

  • 要計算的路線總數不得大於 100。

  • 當路線超過 1,000 公里時,不允許使用長途路線進行避免收費的卡車路線。 此組合的計算速度較慢,而且可能會導致通話逾時。您可以使用CalculateRoute作業個別計算這些路線。

如果您的呼叫不符合這些要求 (例如,您在單一呼叫中要求 150 個路由計算),則CalculateRouteMatrix會還原為僅允許較短的路由規則。然後,只要位置在 180 公里圓內,您就可以計算路線。

計算較長的路線時,請記住以下幾點:

  • 較長的路由可能需要更長的時間來計算,甚至比 Amazon 位置 API 的最長時間還要長。如果您經常使用特定路由逾時,您可以在每次呼叫中嘗試較少數量的路由。CalculateRouteMatrix

  • 如果您在CalculateRouteMatrix請求中新增更多目的地或出發位置,則作業可以切換到更受限制的模式,而且當要建立的路線較少時,可以毫無問題地計算路由的錯誤訊息。在這種情況下,請減少目的地或出發位置的數量,並提出多個請求以獲得所需的全套路線計算。

回應範例

以下是從 Amazon 位置路由 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" } }