想要免費獲得500 美金相等的Google Maps API積分來測試GMPRO嗎? 👋打個招呼!即可開始與Afi Labs合作吧

GMPRO:Google 地圖平台路線優化 API

GMPRO:Google 地圖平台路線優化 API

GMPRO,或稱 Google 地圖平台路線優化 API,是 Google 對解決車輛路線問題的最新方案。它透過向 API 發送 JSON 資料負載,並接收回傳的路線解決方案,幫助你為車隊中的多輛車規劃成本效益高的路線。

這個優化後的路線方案可以減少行駛時間並節省燃料——對於任何最後一哩送貨、快遞或共乘公司來說,這都是至關重要的。在這系列的部落格文章中,我將說明什麼是 GMPRO、它的運作方式、如何在你的業務中使用它,以及它的費用是多少。

第1篇:GMPRO:Google 地圖平台路線優化 API(本文)
第2篇:GMPRO TSP 解決器:支持超過 25 個途徑點的 Google 地圖
第3篇:Google 地圖路線優化:多車輛
第4篇:GMPRO 車隊路線應用程式 - 免費多站點路線規劃工具
第5篇:GMPRO 文件:固定車輛成本
第6篇:GMPRO 文件:區域優化與路線規劃
第7篇:GMPRO 文件:使用路線分群和軟性約束解 VRP 問題
第8篇:GMPRO 文件:帶軟性約束的司機負載平衡
第9篇:GMPRO 文件:司機休息管理
第10篇:GMPRO 文件:貨運自行車物流中完成送貨後再取貨
第11篇:GMPRO 文件:使用優先規則強制停靠順序
第12篇: GMPRO 文件:使用智能 NEMT 路線降低成本 / 提高護理服務
第13篇:GMPRO 文件:按需求響應交通路線規劃

GMPRO 取代了另一個 Google 路線優化 API——Cloud Fleet Routing(已於 2025 年 1 月 16 日停用),並且相較於 Google Maps Directions API 有了巨大提升,後者僅允許為單一車輛優化最多 25 個停靠點。GMPRO 可以為整個車隊優化路線。

👨‍💻
本博客文章中的截圖是使用 GMPRO-viewer 擷取的,數據則是通過 GMPRO-json-converter 匯入的。這兩款工具均可免費使用。

為什麼 Google 推出了 GMPRO?

你上一次收包裹是什麼時候?如果你正在北美的某個地方閱讀這篇部落格文章,我敢打賭那應該是上週。那可能是 Amazon 的包裹、Postmates 的雜貨或 Uber Eats 的晚餐。事實上,全球電子商務市場在 2022 年達到 14.1 兆美元,預計到 2032 年將增長到 57.2 兆美元。其中 21% 的市場來自線上購物(相比 2020 年的 17% 上升)。

每次有人在網上購買實體商品時,都需要進行配送。商品必須被包裝、存放在倉庫、安排送貨時間,並分配給需要找到收件人住址並安全、準時完成送貨的司機。這個安排和分配過程需要進行路線優化,而谷歌已將其視為一個重要的市場機會。將GMPRO納入Google Maps產品家族是非常合理的——因為Google Maps已經擁有所需的基本組件,即 距離矩陣(Distance Matrix)、地理編碼 (Geocoding)和路線API (Routes)。將來任何改進,例如卡車路線規劃,只需在Google Maps平台上推出,即可直接添加到GMPRO。更重要的是,谷歌可以提供其他路線優化服務提供商無法以成本效益方式實現的兩個必備功能——實時交通資訊和極速運算,且這些功能都運行在與Google Maps相同的基礎架構上。

更重要的是,Google 可以提供兩個其他路線優化服務提供商無法以成本效益實現的必備功能——即時交通資訊和極快的運算速度,所有這些都運行在與 Google 地圖相同的基礎設施上。

路線優化的好處

企業從像 GMPRO 這樣的路線優化服務中受益的主要方式有三個:

1. 更滿意的顧客。透過路線優化,物流公司不僅可以在一天內完成更多的配送,還能向顧客提供準確的預計到達時間和送達時間窗口。這種速度與可預測性的組合,是任何希望超越顧客日益增長需求與期望的配送公司的一大賣點。

2. 更滿意的駕駛員。滿足駕駛員的需求和期望對於留住他們也很重要。透過適當的校準,Google 的路線優化 API 可以優先將駕駛員分配到他們已熟悉的社區,從而減少送貨司機面對新地點時的壓力。

3. 降低成本。在通脹和油價創新高的情況下,尋找降低運營成本的方法變得更加重要。像 GMPRO 這樣的路線優化 API 可以通過自動選擇每輛車最具成本效益的路線來幫助,從而降低燃料消耗。 

誰可以受益於GMPRO?

GMPRO非常適合兩種公司——末端配送服務提供商和共乘公司。

末端配送服務供應商

末端配送服務提供商是指將貨物從中央倉庫直接運送到您家門口的公司。他們為像亞馬遜和IKEA這樣的公司處理配送。通常,他們會提前一天規劃路線,目標是在現有司機數量下盡可能多地配送包裹。

GMPRO 末端配送服務的路線優化

共享乘車公司

共享乘車公司是世界上的 Uber 和 Lyft 它們運作著一個由司機承包商組成的網絡,這些司機使用其平台接送乘客。在這裡,GMPRO 將作為共乘派遣算法的一部分,用於根據需求將司機分配給乘客,隨著行程預訂請求的接收即時分配。

Uber 使用類似 GMPRO 的路線最佳化 API 來進行共乘派遣。

如何使用 GMPRO?

GMPRO 與 Google Maps Platform 的所有產品一樣,是透過 API 進行存取。它是為開發者設計,在需要將路線最佳化納入工作流程的應用程式中使用。GMPRO API 呼叫的三個基本要素包括:貨件清單(shipments), 可用的車輛清單(vehicles) 模型(model):用於設定參數與約束條件。

GMPRO Google 路線最佳化 API 的運作方式

當這些資料組合後送至 GMPRO 時,API 會回傳一個路線解決方案(routes),其中包含司機與貨件的最佳分配方式,以及每位司機在其路線上應依序拜訪各個停靠點的順序。

一個典型的 GMPRO API 呼叫大致如下所示:

curl -X POST 'https://routeoptimization.googleapis.com/v1/projects/{project_name}:optimizeTours' \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
--data-binary @- << EOM
{
  "model": {
    "shipments": [
      {
        "pickups": [
          {
            "arrivalLocation": {
              "latitude": 49.2474624,
              "longitude": -123.1532338
            }
          }
        ],
        "deliveries": [
          {
            "arrivalLocation": {
              "latitude": 49.227107,
              "longitude": -123.1163085
            }
          }
        ]
      }
    ],
    "vehicles": [
      {
        "startLocation": {
          "latitude": 49.2553636,
          "longitude": -123.0873365
        },
        "endLocation": {
          "latitude": 49.2201308,
          "longitude": -123.1085687
        }
      }
    ],
    "globalStartTime": "2023-01-13T16:00:00-08:00",
    "globalEndTime": "2023-01-14T16:00:00-08:00"
  },
  "populatePolylines": true
}
EOM

以及相對應的路線解決方案如下:

{
    "routes": [
        {
            "vehicleStartTime": "2023-01-14T00:00:00Z",
            "vehicleEndTime": "2023-01-14T00:25:21Z",
            "visits": [
                {
                    "isPickup": true,
                    "startTime": "2023-01-14T00:11:46Z",
                    "detour": "0s"
                },
                {
                    "startTime": "2023-01-14T00:20:56Z",
                    "detour": "0s"
                }
            ],
            "transitions": [
                {
                    "travelDuration": "706s",
                    "travelDistanceMeters": 6063,
                    "waitDuration": "0s",
                    "totalDuration": "706s",
                    "startTime": "2023-01-14T00:00:00Z"
                },
                {
                    "travelDuration": "550s",
                    "travelDistanceMeters": 5105,
                    "waitDuration": "0s",
                    "totalDuration": "550s",
                    "startTime": "2023-01-14T00:11:46Z"
                },
                {
                    "travelDuration": "265s",
                    "travelDistanceMeters": 1852,
                    "waitDuration": "0s",
                    "totalDuration": "265s",
                    "startTime": "2023-01-14T00:20:56Z"
                }
            ],
            "routePolyline": {
                "points": "_eskH`pgnVU?G~D?p@ApAAlC?ZZKb@?pAA`@@x@@xBDr@?d@@B?r@@N?P?jBBjA@rDDd@@b@@jB@b@@hB@d@@^?f@@\\??h@?`@?v@AbA?z@?^?`@AlAFf@AzEAv@?dA?fB?XAjCAdCAhC?pA?h@AlBAbB?@At@?b@E^A\\AxA?^?hA?TAZ?TAx@?b@AdCApBAtDDh@Ab@AbDAvBEfI?TAnCA`BCbBAxEIfB?d@?pAApA?bBCvB?bA?x@CzAAlA?`@AnD?h@AlA?R?XCpBAhC?ZATAlB?@AjB?HAl@?f@AhB?NClE?N?L?FAF?RA~B?d@?N?v@AnBEbE?@EnGC`CEpDAtA?F?t@C|A?`@?rCA~B?f@?RCxA?^G|KAlB?v@?t@C|E?b@AlBAt@AdDAfCA|BAlD?`@CpCAt@?b@EzEAbDA`CAzCAzCC`EAfA?xA?hBA\\AxE?BAt@?N?N?BA\\A\\?L?LCVAXADI`AId@ADAJIZEPAFK`@I\\M^O`@A@e@fAA@e@`AIPWf@o@pAg@jAGLABIRIRITITGTI^IZIj@CR?FARN@R?pABn@Bb@@b@@V@R@fAB^@xA@|@@f@@f@@R?r@?rBBZKD?`ABt@?P@~AB@?H?X?xABxA@R@n@Bl@@X@H?pA@n@Bp@@d@@bABvA@|ABBqE?_@?_C@eA@gB@i@?k@BeB?O?M@g@?WBeD@cD@k@?K?_@?U?U?C?i@@gB?qC@gCBqC@wB?w@@gA@sA?YDqK?KByD`EB|DDzDD~DFxBB|@DhDDtB@z@@tA@h@Dd@Bb@@N?l@@|@Bb@?pBChB@P@X?X?bAB^?V@Z?vA@n@@N@T?xABT?f@@J?`BBrAB~A?pA@rCDb@?FyFDgB@iABo@LwMD_D?EJiIBgB@c@BmB@w@@u@@{@ByB@w@Fc@?O@{@@m@BsA?g@BkB?Q@sABwAI]D_DBuBDkCDqDByABkA@{@BkCBoBBeA?g@@c@@g@?[@i@DaED_CDe@@e@Bw@@q@BmABgA@[B]UAkACI?q@Aa@AO?A?O?e@?aBCoACkBA@u@@oB?ED_DD}CDwCzAAxA?zAExAExACz@?XAFuE@G?AFuD?Q?S?K?]B_A@{@ByADuD@W?y@BkC?SBaC?Q@_CZ?z@?H?nABN?bA@N@H?jABT?hA@J@xA@fDDL?jDD?@?@?@?@@??@@??@@??@@?@?@??A@?@??A?A@??A?A@??A?A?AdDF"
            },
            "metrics": {
                "performedShipmentCount": 1,
                "travelDuration": "1521s",
                "waitDuration": "0s",
                "delayDuration": "0s",
                "breakDuration": "0s",
                "visitDuration": "0s",
                "totalDuration": "1521s",
                "travelDistanceMeters": 13020
            }
        }
    ],
    "metrics": {
        "aggregatedRouteMetrics": {
            "performedShipmentCount": 1,
            "travelDuration": "1521s",
            "waitDuration": "0s",
            "delayDuration": "0s",
            "breakDuration": "0s",
            "visitDuration": "0s",
            "totalDuration": "1521s",
            "travelDistanceMeters": 13020
        },
        "usedVehicleCount": 1,
        "earliestVehicleStartTime": "2023-01-14T00:00:00Z",
        "latestVehicleEndTime": "2023-01-14T00:25:21Z"
    }
}

當上傳到 GMPRO Fleet Routing應用程式後,路線解決方案在地圖上呈現如下:

在 GMPRO Fleet Routing 應用程式中呈現的路線解決方案

如何取得 GMPRO 的使用權?

GMPRO 已開放一般使用(Unrestricted General Access, Unrestricted-GA),也就是說,只要擁有 Google Cloud 帳號的人都可以使用該 API。與 Google Mobility 不同,使用者不需要透過 Google Maps 合作夥伴才能取得存取權。

💡
如果你想要觀看 GMPRO 的示範,以了解它是否適合你的業務,請電郵至 sales@afi.io

GMPRO 的費用是多少?

單車輛路線的定價為每 1,000 個拜訪點 10 美元美金;多車輛路線的定價為每 1,000 個拜訪點 30 美元美金(官方 Google Maps Platform 定價頁面)。若需大量使用或折扣,請聯繫 Google Maps 合作夥伴。

GMPRO 的定價起始於單車輛路線,每 1,000 次最佳化拜訪點收費 10 美元美金。

為什麼選擇 GMPRO,而不是其他路線最佳化供應商?

GMPRO 是企業級路線最佳化 API,具有以下特點:

  1. 快速:它可以在 30 秒內解決 2,000 筆貨件、10 輛車的路線規劃問題。其他 爭解算器(例如開源專案 Jsprit)可能需要十分鐘甚至更久。
  2. 功能豐富:GMPRO 的 JSON 輸入高度可配置,允許你將附近停靠點分群以減少重疊,標記道路可通行以服務雙向,處理硬性與軟性約束,並設定自訂成本(每輛車固定費用、每公里可變費用)。這僅是開始—本系列教學將提供大量實用技巧,教你如何自訂 GMPRO 以符合你的業務需求。
  3. 持續改進:GMPRO 團隊不斷提升底層演算法—不僅加入新功能(如卡車路線規劃),也提升數據品質。例如,在請求中啟用 "considerRoadTraffic": true,即可立即獲得反映即時交通與道路封閉的預估到達時間(ETA),且不需額外費用。 

你將在這系列教學中學到什麼

完成本系列部落格文章後,你將掌握 GMPRO 的基礎操作。具體而言,你將學會:

  1. 為單一車輛最佳化路線
  2. 使用 GMPRO 進行多車輛車隊路線最佳化
  3. 在 Fleet Routing App 上視覺化路線 以及,
  4. 比較 GMPRO 與數個知名競爭者的價格、功能與效能。

👋 一如往常,如果你有任何問題或建議,歡迎透過 LinkedIn與我聯絡打聲招呼