最佳化路線上的停靠站順序

歐洲經濟區 (EEA) 開發人員

根據預設,Routes 程式庫的 computeRoutes 方法會依您提供的順序,計算行經多個停靠點 (稱為中途停靠路線控點) 的路線。

您可以讓 Routes API 透過更有效率的順序調整停靠點,規劃出最佳路線。中途點最佳化功能會盡量縮短交通時間,但在判斷哪條路線最有效率時,也會將距離和轉彎次數等其他因素納入考量。

如何最佳化路線控點

  1. 確認路徑中的任何中途點都沒有將 via 設為 true
  2. 確認 routingPreference 未設為 TRAFFIC_AWARE_OPTIMAL
  3. optimizeWaypointOrder 設為 true
  4. 在欄位遮罩中指定 optimizedIntermediateWaypointIndices 欄位。

瞭解系統如何最佳化途中的停靠點順序

Routes API 最佳化路線中途點順序的方式如下:

  1. 系統會根據你在要求中提供的順序,自動為途中的停靠點建立索引,從 0 開始。
  2. 使用指派給要求中路線控點的索引編號,最佳化路線控點的順序。
  3. 系統會在 optimizedIntermediateWaypointIndices 下方的回應中,傳回最佳化的路線控點順序。

要求範例

以下範例說明如何從澳洲南澳州阿德雷德,前往南澳州各主要葡萄酒產區,然後返回阿德雷德,並要求路線中的最佳化途經點。

const request = {
  origin: 'Adelaide, SA',
  destination: 'Adelaide, SA',
  intermediates: [
    {location: "Barossa+Valley,SA"},
    {location: "Clare,SA"},
    {location: "Coonawarra,SA"},
    {location: "McLaren+Vale,SA"},
  ],
  travelMode: 'DRIVING',
  optimizeWaypointOrder: true,
  fields: ['path','optimizedIntermediateWaypointIndices'],
};
  

回應範例

回應會包含 optimizedIntermediateWaypointIndices
  Response:
 [
  {
    "optimizedIntermediateWaypointIndices": [
      3, // McLaren+Vale, SA
      2, // Coonawarra, SA
      0, // Barossa+Valley, SA
      1  // Clare, SA
    ],
    ...