機器學習在美團配送系統的實踐:用技術還原真實世界

在2018 AI開發者大會(AI NEXTCon)上,美團配送AI方向負責人何仁清,分享了美團在即時配送領域中機器學習技術的最新進展,以及如何經過大數據和機器學習手段,創建對線下真實世界各類場景的感知能力,還原並預測配送過程各個細節,從而提高總體配送系統的精度。算法

美團「超腦」配送系統的由來

2014年,斯嘉麗·約翰遜主演的科幻片《超體》大火,影片中主人公Lucy因爲無心中攝入了大量的代號爲「CPH4」的神祕藥物,大腦神經元得到空前的開發,得到了異乎尋常的超能力,她可以對這個世界進行全新的感知、理解和控制(好比控制無線電波),最終跨越時間和空間成爲了一個超級個體。安全

這種對真實世界的深度感知、理解和控制,與配送AI系統對配送場景的感知、理解和配送環節控制的目標很是一致。能夠說,美團要建設的AI就是配送系統的「超級大腦」。所以咱們內部把配送的AI系統,簡稱爲「超腦」配送系統。網絡

即時配送在全球快速發展

最近幾年,之外賣爲依託,即時配送業務在全球範圍內掀起了一波快速發展的浪潮,全球各地都出現了不少創業公司,其中國外知名的包括美國的Uber Eats(全球)、英國的Deliveroo、印度的Swiggy、Zomato(分別被美團和阿里投資),印尼的go-jek等等。國內除了美團外賣、餓了麼、滴滴外賣等典型表明外,而還有專一於即時配送服務創業公司,好比閃送、UU跑腿、達達、點我達等。機器學習

這種全球爆發的現象說明了兩個問題:學習

  • 「懶」是人類的天性。平價、方便、快捷的服務是人類的廣泛需求,尤爲是在「吃」這個事情上,外賣成爲了一種高頻的剛需。
  • 外賣的商業模式徹底可行。以美團外賣爲例,2018年上半年總體收入160億,同步增加90%。根據Uber公佈的數據,Uber Eats在2018第一季度佔總體營業的13%。

即時配送的業務模型

即時配送,是一種配送時長1小時之內,平均配送時長約30分鐘的快速配送業務。如此快速的配送時效,將傳統的線上電商交易與線下物流配送(傳統劃分比較明確的兩條業務)整合爲統一總體,造成了用戶、商戶、騎手和平臺互相交錯的四元關係。大數據

其整協力度空前緊密,幾乎滲透到各個環節。之外賣搜索和排序爲例,在下午時段,在用戶搜索和推薦中能夠看到更多的商家,由於此時運力充分,能夠提供更遠距離的配送服務,不只能更好知足用戶的需求,提升商家的單量,並且可以增長騎手的收入。優化

即時配送的核心指標是效率、成本、體驗,這三者也造成了即時配送的商業模型。簡單來講能夠分爲如下幾步:3d

  1. 首先配送效率提高
    • 讓騎手在單位時間內配送更多訂單,產生更多價值。
  2. 而後配送成本降低
    • 更高的效率,一方面讓騎手收入增長,一方面也讓訂單平均成本降低。
  3. 而後用戶體驗提高
    • 低成本可以讓用戶(商戶)以更低的價格享受更好的配送服務,從而保證更好的用戶體驗。
  4. 進一步提高效率並造成循環
    • 更好的用戶體驗,讓更多用戶(商戶)彙集過來,提高規模和密度,進一步提高配送效率。

這樣,就造成了一個正向循環,不斷創造更多商業價值。而技術的做用,就是加速這個正向循環。cdn

美團「超腦」配送系統

目前互聯網技術,很大部分仍是針對線上產品和系統研發,整個流程能夠在線上所有完成,而這也正是配送AI技術最大的不一樣和挑戰。簡單來講,相似搜索、推薦、圖象和語音識別這種線上產品經常使用的AI技術幫助不大,由於配送必須在線下一個一個環節的進行,這就要求AI技術必須可以面對複雜的真實物理世界,必須能深度感知、正確理解與準確預測、並瞬間完成複雜決策。blog

爲了知足這些要求,咱們建設了美團「超腦」配送系統,包含如下幾個方面:

  • 大數據處理和計算能力
    • 算法數據和計算平臺:包括實時特徵計算、離線數據處理、機器學習平臺等。
  • 創建對世界深度感知
    • LBS系統:提供正確位置(用戶/商戶/騎手)以及兩點之間正確的騎行導航。
    • 多傳感器:提供室內定位以、精細化場景刻畫、騎手運動狀態識別
  • 正確理解和準確預測
    • 時間預估:提供全部配送環節時間的準確預估
    • 其餘預估:銷量預估、運力預估等
  • 完成複雜決策
    • 調度系統:多人多點實時調度系統,完成派單決策:誰來送?怎麼送?
    • 訂價系統:實時動態訂價系統,完成訂價決策:用戶收多少錢?給騎手多少錢?
    • 規劃系統:配送網絡規劃系統,完成規劃決策:站點如何劃分?運力如何運營?

機器學習技術挑戰

如何構建一個在真實物理世界運行的AI系統,就是咱們最大的挑戰。具體到機器學習方向而言,挑戰包括如下幾個方面:

  • 精度足夠高、粒度足夠細

    • 時間要求:一方面是週期性變化,好比早午晚,工做假日,季節變化;一方面是分鐘級的精細度,好比一個商圈單量和運力的實時變化。
    • 空間要求:一方面是不一樣商圈獨有特性,好比CBD區域;一方面是要實現樓棟和樓層的精度,好比1樓和20樓,就是徹底不一樣的配送難度。
    • 魯棒性要求:處理各類不肯定的能力,好比天氣變化、交通變化等等。
  • 線下數據質量的巨大挑戰

    • 大噪音:好比GPS定位漂移,尤爲是在高樓附近,更不要說在室內GPS基本不可用。
    • 不完備:好比商家後廚數據、堂食數據、其餘平臺數據,都極難得到。
    • 高複雜:配送場景多樣並且不穩定,隨着時間、天氣、路況等在不斷變化。

配送系統的核心參數ETA

ETA(Estimated Time of Arrival,時間送達預估)是配送系統中很是重要參數,與用戶體驗、配送成本有直接關係,並且會直接影響調度系統和訂價系統的最終決策。

一個訂單中涉及的各類時長參數(如上圖右側所示),能夠看到有十幾個關鍵節點,其中關鍵時長達到七個。這些時長涉及多方,好比騎手(接-到-取-送)、商戶(出餐)、用戶(交付),要經歷室內室外的場景轉換,所以挑戰性很是高。

經過機器學習方法,咱們已經將外賣配送幾乎全部環節都進行了精準預估預測。用戶感知比較明顯是預計送達時間,貫穿多個環節,商家列表(從配送時長角度讓用戶更好選擇商家)、訂單預覽(給用戶一個準確的配送時間預期)、實時狀態(下單後實時反饋最新的送達時間)。固然這裏面還有不少用戶看不到的部分,好比商家出餐時間、騎手到店時間、交付時間等。其中交付時長,與用戶關係比較大,也頗有意思,下文會詳細展開。

精準到樓宇和樓層的預估:交付時長

交付時長是指騎手到達用戶後,將外賣交付到用戶手中並離開的時間,實際是須要考慮三維空間內計算(上樓-下樓)。交付時間精準預估,有兩點重要的意義,首先是客觀的衡量配送難度,給騎手合理補貼;其次,考慮對騎手身上後續訂單的影響,防止調度不合理,致使其餘訂單超時。

交付時長的目標是,作到樓宇和樓層的精準顆粒度,具體能夠拆解爲如下幾步:

  1. 地址的精準解析(精確到樓宇/單元/樓層)
    • 地址精度須要在5級之上(4級:街道,5級:樓宇),國內擁有這個級別精細化數據的公司屈指可數。
    • 數據的安全級別很高,咱們作了不少脫敏工做,作了各類數據保護與隔離,保證用戶隱私和數據安全。
    • 地址信息的多種表達方式、各類變形,須要較強的NLU技術能力。
  2. 交付時長預估
    • 經過騎手軌跡進行「入客-離客」識別,並進行大量數據清洗工做。
    • 統計各個粒度的交付時長,經過樹形模型實現快速搜索各個粒度的數據。
    • 由於預估精度是樓宇和樓層,數據很稀疏,很難直接進行統計,須要經過各類數據平滑和迴歸預估,處理數據稀疏和平滑的問題。
  3. 下游業務應用
    • 給調度和訂價業務,提供樓宇+樓層維度的交付時長。從上圖能夠看到,在不一樣樓宇,不一樣樓層交付時長的區分度仍是很明顯的。
    • 尤爲是樓層與交付時長並非線性相關,咱們還具體調研過騎手決策行爲,發現騎手會考慮等電梯的時間,低樓層騎手傾向於走樓梯,高樓層則坐電梯。

能夠看到,真實世界中影響決策因素很是多,咱們目前作的還不夠。好比交付時長也能夠進一步細化,好比準確預估騎手上樓時間、下樓時間和等待時間,這樣其實可以與商家取餐環節保持一致,之因此沒這麼作,主要仍是數據缺失,好比騎手在商家其實有兩個操做數據(到店、取餐),這樣能支持咱們作精細化預估的,可是在用戶環節只有(送達)一個操做。

舉這個例子,實際上是想說明,數據的完備性對咱們到底有多重要。數據方面的挑戰,線下業務與線上業務相比,要高出好幾個等級。

配送中最重要的數據之一:地圖

地圖對配送的重要性毋庸置疑(位置和導航都不許確,配送如何進行?),前面提到的5級地址庫只是其中一部分。配送地圖的目標能夠歸納爲如下兩點:

  • 正確的位置
    • 實時部分:騎手實時位置。
    • 靜態部分:用戶和商戶準確的地址和位置。
  • 正確的導航
    • 兩點之間正確的距離和路線。
    • 突發狀況的快速反應(封路、限行)。

若是橫向對比配送、快遞、打車等行業對地圖的要求,實際上是一件頗有意思的事情,這個對於配送地圖技術建設來講,是一件很是有幫助的事情。

即時配送 VS 物流快遞:即時配送對地圖的依賴程度明顯高於物流快遞

即時配送 VS 出行行業:地圖廠商在車載導航的優點和積累,在即時配送場景較難發揮

從這兩方面對比能夠看到,在即時配送業務中,騎行地圖的重要性很是之高,同時不少問題確實很是具備行業特點,經過駕車地圖的技術沒法頗有效的解決。這樣就須要建設一套即時配送業務地圖的解決方案。

基於簽到數據的位置校訂:交付點

如前文所述,配送地圖的方向有不少,此次我重點講一下用戶位置相關的工做「交付點挖掘」。首先看一下目前主要問題:用戶位置信息有不少錯誤,好比:

用戶選擇錯誤

上圖左,一個小區會有1期2期~N期等,用戶在選擇POI的時候就可能發生錯誤(好比1期的選了2期),二者地理位置相差很是遠,很容易形成騎手去了錯誤的地方。這樣在訂單發送到配送系統的時候,咱們須要作一次用戶座標糾正,引導騎手到達正確的位置。

POI數據不精細

上圖右,用戶原本在xx區xx棟,可是隻選了xx區這個比較粗的位置信息。現實中在一個小區裏面,找到一個具體xx棟樓仍是很是困難的,你們能夠想一想本身小區中,隨便說一個樓號你知道它在哪一個角落嗎,更別說若是是大晚上在一個你不熟悉的小區了。形成這種緣由,一方面多是用戶選擇不精細,還有一種可能,就是地圖上沒有具體樓棟的POI信息。

在實際配送中,咱們都會要求騎手在完成交付後進行簽到,這樣就會積累大量的上報數據,對於後續進行精細化挖掘很是有幫助。你們能夠先看看咱們收集的原始數據(上圖),雖然仍是很是凌亂,可是已經能看到這其中蘊含着極高的價值,具體來講有三方面:

  • 數據量大
    • 天天幾千萬訂單,幾十億的軌跡數據。
    • 能夠充分覆蓋每個小區/樓棟/單元門。
  • 維度多樣
    • 除了騎手簽到和軌跡數據,咱們還有大量的用戶、商戶和地圖數據。
    • 多種數據維度能夠交叉驗證,有效避免數據的噪音,提升挖掘結果精度。
  • 數據完備
    • 在局部(用戶和商戶)數據足夠稠密,置信度比較高。

交付點挖掘的技術實戰:挑戰

在數據挖掘實際過程當中,其實並無什麼「高大上」的必殺技,沒法使用流行的End2End方法,基本上仍是須要對各個環節進行拆解,紮紮實實的作好各類基礎工做,基本整個挖掘過程,分爲如下幾個步驟:(1)基於地址分組;(2)數據去噪;(3)數據聚合;(4)置信度打分。其中主要技術挑戰,主要在各類場景中保證數據挖掘質量和覆蓋率,具體來講主要有三個挑戰:

  • 數據去噪
    • 數據噪音來源比較多樣,包括GPS的漂移、騎手誤操做、違規操做等各類。一方面是針對噪音緣由進行特殊處理(好比一些做弊行爲),另外一方面要充分發揮數據密度和數據量的優點,在保證儘可能去除Outlier後,依然保持可觀的數據量。可以同時使用其餘維度的數據進行驗證,也是很是重要的,甚至能夠說數據多樣性和正交性,決定了咱們能作事情的上限。
  • 數據聚合
    • 不一樣區域的樓宇密度徹底不同,具備極強的Local屬性,使用常規聚類方法,比較難作到參數統一,須要找到一種不過度依賴樣本集合大小,以及對去噪不敏感的聚類算法。
  • 重名問題
    • 這個屬於POI融合的一個子問題,判斷兩個POI信息是否應該合併。這個在用戶地址中比較常見,用戶提供的地址信息同樣,但實際是兩個地方。這種狀況下,咱們的處理原則是一方面要求糾正後座標更符合騎手簽到狀況,另外一方面新座標的簽到數據要足夠稠密。

交付點挖掘的技術實戰:效果

目前,咱們已經上線了一版交付點,對用戶位置進行主動糾正,讓騎手能夠更準確更快的找到用戶。目前效果上看仍是很是明顯的。包括幾個方面:

  • 騎手交付距離明顯下降
    • 從上圖左側部分看到,在上線前(綠色)交付距離>100M的佔比很高(這個距離會致使實際位置差幾棟樓,甚至不一樣小區),也就是用戶本身選着的位置錯誤率比較高,致使騎手交付難度較高,對效率影響比較大。上線後(紅色),交付距離明顯縮短(均值左移),同時>100M的長尾比例明顯降低。
  • 單元門級別的高精度位置
    • 上圖右側部分看到,咱們挖掘的交付點基本上能與樓宇的單元門對應。並且沒有明顯誤差比較大的部分。這個質量基本達到咱們以前設定目標,也證實配送大數據的巨大潛力。
  • 目前的問題以及後續的優化點
    • 如何提高其做爲POI挖掘和發現手段的準確率?這裏面有不少優化點,好比去重(交付點-位置信息的一一映射),POI信息補全和更新。
    • 如何擴大數據渠道並作到信息整合?目前主要渠道仍是騎手簽到和軌跡數據,這個明顯有更大的想象空間,畢竟天天在全國大街小巷,有幾十萬騎手在進行配送,除了前面(以及後面)提到的經過手機被動採集的數據,讓騎手主動採集數據,也是不錯的建設思路。只不過想要作好的話,須要創建一個相對閉環數據系統,包括上報、採集、清洗、加工、監控等等。

更精細化的配送場景識別:感知

前面提到的地圖技術,只能解決在室外場景的位置和導航問題。但配送在商家側(到店、取餐)和用戶側(到客、交付)兩個場景中,實際上是發生在室內環境。在室內的騎手位置是在哪裏、在作什麼以及用戶和商家在作什麼,若是瞭解這些,就能解決不少實際問題。好比:

這個技術方向能夠統稱爲「情景感知」,目標就是還原配送場景中(主要是室內以及GPS不許確),真實配送過程發生了什麼,具體方向以下圖所示:

情景感知的目標就是作到場景的精細刻畫(上圖的上半部分),包含兩個方面工做:

  • 配送節點的精確刻畫
    • 在ETA預估中已經展現過一些,不過以前主要仍是基於騎手上報數據,這顯然沒法作到很高精確,必須引入更客觀的數據進行描述。目前,咱們選擇的是WIFI和藍牙的地理圍欄技術做爲主要輔助。
  • 配送過程的精確刻畫
    • 騎手在配送過程當中常常會切換方式,好比可能某個小區不讓騎電動車,那騎手必須步行,再好比騎手在商家發生長時間駐留,那應該是發生了等餐的狀況(用戶側同理)。目前,咱們選擇使用基於傳感器的運動狀態識別做爲主要輔助。

這些數據,大部分來至於手機,可是隨着各類智能硬件的普及,好比藍牙設備,智能電動車、智能頭盔等設備的普及,咱們能夠收集到更多數據的數據。WiFi/藍牙技術,以及運動狀態識別的技術比較成熟,這裏主要說一下概況,本文不作深刻的探討。

對於配送系統來講,比較大的挑戰仍是對識別精度的要求以及成本之間的平衡。咱們對精度要求很高,畢竟這些識別直接影響訂價、調度、判責系統,這種底層數據,精度不高帶來的問題很大。

考慮成本限制,咱們須要的是相對廉價和通用的解決方案,那種基於大量傳感器硬件部屬的技術,明顯不適用咱們幾百萬商家,幾千萬樓宇這種量級的要求。爲此,在具體技術方面,咱們選用的是WiFi指紋、藍牙識別、運動狀態識別等通用技術方案,就單個技術而言,其實學術界已經研究很充分了,並且也有不少應用(好比各類智能手環等設備)。對於咱們的挑戰在於要作好多種傳感器數據的融合(還包括其餘數據),以確保作到高識別精度。固然爲了解決「Ground Truth」問題,部署一些穩定&高精度的智能硬件仍是必須的,這對技術迭代優化和評估都很是有幫助。

總結

美團外賣日訂單量超過2400萬單,已經佔有了相對領先的市場份額。美團配送也構建了全球領先的即時配送網絡,以及行業領先的美團智能配送系統,智能調度系統每小時路徑計算可達29億次。如何讓配送網絡運行效率更高,用戶體驗更好,是一項很是困難的挑戰,咱們須要解決大量複雜的機器學習和運籌優化等問題,包括ETA預測,智能調度、地圖優化、動態訂價、情景感知、智能運營等多個領域。過去三年來,美團配送AI團隊研發效果顯著,配送時長從一小時陸續縮短到30分鐘,而且還在不斷提高,咱們也但願經過AI技術,幫你們吃得更好,生活更好。

招聘信息

目前,即時配送業務正處於快速發展期,新的場景、新的技術問題不斷涌現,團隊正在迅速擴大中,急需機器學習資深專家、運籌優化技術專家、LBS算法工程師、NLP算法工程師,咱們期待你的加入。掃碼可查看職位詳情,或者發送簡歷至 yewei05@meituan.com

相關文章
相關標籤/搜索