阿里云移動(dòng)感知技術(shù)怎么應(yīng)用??jī)?yōu)勢(shì)在哪?
一 背景
作為本地生活的一個(gè)重要組成部分,外賣已經(jīng)進(jìn)入千千萬萬的家庭。相信很多小伙伴已經(jīng)注意到,餓了么的每一個(gè)訂單,我們都會(huì)及時(shí)向用戶通知這一單現(xiàn)在所處的狀態(tài),比如“商戶接單”,“騎手到店”,“騎手送達(dá)”等。這個(gè)實(shí)時(shí)狀態(tài)的更新,不僅能讓用戶及時(shí)了解自己外賣到了哪里,對(duì)于整個(gè)平臺(tái)的騎手調(diào)度和時(shí)間預(yù)估都有著重要意義。
而在所有的節(jié)點(diǎn)中,騎手到店前后的兩個(gè)節(jié)點(diǎn)“騎手到店”和“騎手取餐”對(duì)于整個(gè)平臺(tái)的價(jià)值就更為重要,主要體現(xiàn)在以下三個(gè)方面:
時(shí)間預(yù)估
騎手到店的時(shí)間是騎手從接單位置到商戶位置的終止時(shí)間,而騎手離店的時(shí)間則是騎手從商戶位置到用戶位置的起始時(shí)間。掌握這些準(zhǔn)確的時(shí)間,能給時(shí)間預(yù)估模型提供準(zhǔn)確的標(biāo)簽用于模型訓(xùn)練。我們?cè)贏PP里看到的“預(yù)估配送時(shí)間”就是這樣計(jì)算出來的。同時(shí),知道騎手在商戶位置等了多長(zhǎng)時(shí)間,我們就可以知道商戶準(zhǔn)備這一單需要多長(zhǎng)時(shí)間,也就是商戶的“出餐時(shí)間”。而掌握了準(zhǔn)確的出餐時(shí)間,我們?cè)诮o某一單找合適騎手的時(shí)候就能更加地游刃有余了。
騎手調(diào)度
當(dāng)用戶在外賣平臺(tái)下單后,平臺(tái)就會(huì)開始為這一單尋找合適的騎手來配送,這個(gè)過程就叫騎手調(diào)度。騎手調(diào)度是一個(gè)復(fù)雜的過程,需要考慮同時(shí)考慮商戶,騎手和用戶的位置,還要考慮騎手身上已有的單和商戶正在準(zhǔn)備的單。一個(gè)總的原則是,讓更近的,更順路的騎手去取單。如果我們知道了騎手到店的準(zhǔn)確時(shí)間,我們就可以知道騎手在當(dāng)前時(shí)刻的具體位置,并且能夠預(yù)估出騎手在未來一段時(shí)間的大概位置。這就給我們的騎手調(diào)度提供了準(zhǔn)確可靠的數(shù)據(jù)源。
超時(shí)單判責(zé)
雖然調(diào)度系統(tǒng)會(huì)盡力保證每一單都盡快送達(dá),但還是會(huì)有一些情況導(dǎo)致少部分運(yùn)單會(huì)超時(shí),給用戶帶來不好的體驗(yàn)。為了提升調(diào)度系統(tǒng)的性能,減少超時(shí)單。我們首先需要知道超時(shí)的原因,從而在未來的調(diào)度中作出改進(jìn)。超時(shí)的兩個(gè)主要原因是“商戶已出餐但騎手未到店”和“騎手已到店但商戶未出餐”。在沒有明確數(shù)據(jù)的情況下,這兩個(gè)對(duì)立的原因往往會(huì)出現(xiàn)“公說公有理,婆說婆有理”的情況。如果我們能夠準(zhǔn)確獲得騎手到店的時(shí)間,這一困境就會(huì)迎刃而解。
二 挑戰(zhàn)
既然獲取準(zhǔn)確的騎手到店時(shí)間是如此重要的問題,為什么現(xiàn)有的方法還是無法很好的解決這個(gè)問題呢?這是因?yàn)榭紤]到本地生活的場(chǎng)景,要獲得準(zhǔn)確的騎手到店時(shí)間,面臨著以下幾方面的挑戰(zhàn):
GPS在室內(nèi)的漂移
現(xiàn)在手機(jī)定位最常用的方法就是GPS定位。但無論是GPS,還是我們最近剛組網(wǎng)成功的北斗系統(tǒng),其本質(zhì)上都需要手機(jī)里的芯片來接收地球上方的衛(wèi)星信號(hào)。但商戶的位置往往是在室內(nèi),當(dāng)我們?cè)谑覂?nèi)環(huán)境時(shí),GPS信號(hào)會(huì)受到建筑物的遮擋,導(dǎo)致GPS信號(hào)微弱甚至完全失去信號(hào)。這個(gè)時(shí)候GPS的精確度就會(huì)從幾米擴(kuò)大到幾百米甚至幾公里,導(dǎo)致GPS信號(hào)出現(xiàn)漂移。因?yàn)檫@一漂移現(xiàn)象的存在,我們需要?jiǎng)澏ㄒ粋€(gè)范圍來判斷騎手是否到達(dá)了商戶。當(dāng)我們用一個(gè)較小的范圍時(shí),可能會(huì)出現(xiàn)“騎手已到店但我們認(rèn)為沒到”,如果我們用一個(gè)較大的范圍,那么騎手到店時(shí)間的準(zhǔn)確性則會(huì)大打折扣。
商戶在不同樓層的垂直分布
在GPS漂移之外,商戶在不同樓層的垂直分布也會(huì)給騎手到店的準(zhǔn)確判定帶來困難。當(dāng)商戶分布在不同樓層時(shí),即使我們通過GPS判斷出騎手已經(jīng)在水平方向上到達(dá)商戶附近,但由于沒有垂直方向的信息,我們?nèi)匀粺o法準(zhǔn)確判斷出騎手到店的具體時(shí)間。如今越來越多的商戶都分布在商場(chǎng)的不同樓層,這部分訂單的騎手到店時(shí)間就很難觀測(cè)。雖然GPS會(huì)返回一個(gè)海拔信息,但在實(shí)際的應(yīng)用中我們發(fā)現(xiàn)這個(gè)值往往是不夠準(zhǔn)確的。
商戶環(huán)境的動(dòng)態(tài)性和騎手手機(jī)的多樣性
一些室內(nèi)定位的方法通過收集特定環(huán)境的聲音指紋,光指紋或者磁場(chǎng)強(qiáng)度指紋來建立指紋庫,然后通過指紋對(duì)比來判斷手機(jī)所處的位置。理論上如果我們能夠采集商戶環(huán)境的指紋,并和騎手手機(jī)收到的信號(hào)進(jìn)行比對(duì),就可以判斷騎手是否已經(jīng)到達(dá)商戶。但由于商戶環(huán)境的動(dòng)態(tài)性,比如裝修改造和人來人往帶來的實(shí)時(shí)擾動(dòng),我們很難建立一個(gè)穩(wěn)定的指紋庫來進(jìn)行比對(duì)。同時(shí),由于聲光磁的指紋收集受到手機(jī)硬件的影響,騎手手機(jī)的多樣性也對(duì)指紋庫的建立帶來很大挑戰(zhàn)。
基于Wi-Fi的方法的局限性
隨著越來越多的室內(nèi)環(huán)境有Wi-Fi信號(hào)的覆蓋,基于Wi-Fi信號(hào)的室內(nèi)定位也得到了充分研究。但基于Wi-Fi方法也有兩個(gè)局限性:一是持續(xù)的Wi-Fi掃描會(huì)帶來極大的能耗負(fù)擔(dān),這對(duì)于工作極度依賴手機(jī)的騎手很不友好;二是出于隱私保護(hù)等原因,iOS系統(tǒng)只支持獲取當(dāng)前連接的Wi-Fi信息,而不支持獲取Wi-Fi掃描的列表,但騎手在取餐過程中很少連接商戶的Wi-Fi。這兩個(gè)原因?qū)е铝嘶赪i-Fi的定位方法無法適用于騎手到店的場(chǎng)景。
三 解決方案
當(dāng)我們把騎手到店觀測(cè)問題抽象出來,可以發(fā)現(xiàn)這是移動(dòng)感知(Mobile Sensing)領(lǐng)域經(jīng)典的“室內(nèi)定位(Indoor Localization)”或者“存在監(jiān)測(cè)(Presence Detection)”的問題。移動(dòng)感知是指利用移動(dòng)設(shè)備上的網(wǎng)絡(luò)信號(hào)或聲光電磁等傳感器信號(hào)對(duì)用戶的位置,行為,場(chǎng)景等進(jìn)行感知的技術(shù)。手機(jī)上的計(jì)步功能,以及智能手表提供的心率監(jiān)測(cè)和睡眠監(jiān)測(cè)等功能,都是移動(dòng)感知技術(shù)在生活中的具體應(yīng)用。近些年來,隨著移動(dòng)設(shè)備的升級(jí),研究者們也在探索移動(dòng)感知的新應(yīng)用,比如用Wi-Fi信號(hào)感知鍵盤敲擊和老人摔倒,用手機(jī)話筒來檢測(cè)醉駕,用新的傳感器來感知用戶的情緒和壓力狀態(tài)等。
這些研究也給我們的到店觀測(cè)問題提供了很多思路,比如基于Wi-Fi的室內(nèi)定位,基于特定光信號(hào)和聲信號(hào)的定位方法等。但是通過上面的討論我們可以看出,這些方法都難以很好地解決騎手到店觀測(cè)問題。針對(duì)這一情況,我們?cè)O(shè)計(jì)并部署了aBeacon系統(tǒng),一個(gè)基于藍(lán)牙信號(hào)的移動(dòng)感知系統(tǒng),來解決騎手到店觀測(cè)的問題。其實(shí)基于藍(lán)牙的移動(dòng)感知并不是一個(gè)全新的技術(shù),蘋果公司在2013年提出基于藍(lán)牙的iBeacon協(xié)議用于移動(dòng)感知[1],2016年藍(lán)牙5.0中的新特征(更低功耗,更大范圍)真正讓藍(lán)牙感知技術(shù)得以落地。藍(lán)牙移動(dòng)感知的原理就是通過在特定位置部署一些持續(xù)發(fā)送藍(lán)牙信號(hào)的Beacon設(shè)備,同時(shí)手機(jī)進(jìn)行持續(xù)的掃描來感知周圍的藍(lán)牙Beacon信號(hào),從而來判斷手機(jī)是否到達(dá)了特定位置。
基于這樣的感知技術(shù),我們建立了aBeacon系統(tǒng),如圖1所示,系統(tǒng)由三部分組成:部署在商戶的藍(lán)牙Beacon硬件、騎手APP內(nèi)的藍(lán)牙監(jiān)聽模塊和平臺(tái)服務(wù)器上的后端模塊。在騎手配送過程中,APP上的藍(lán)牙監(jiān)聽模塊會(huì)持續(xù)監(jiān)聽周圍的藍(lán)牙Beacon信號(hào),當(dāng)騎手到達(dá)商戶附近(比如10米范圍內(nèi))時(shí),手機(jī)會(huì)監(jiān)聽到該商戶內(nèi)的藍(lán)牙Beacon信號(hào),并把該數(shù)據(jù)和當(dāng)前時(shí)間戳上傳到服務(wù)器,服務(wù)器通過和預(yù)置的Beacon地圖進(jìn)行比對(duì),就可以得到該騎手到達(dá)該商戶的準(zhǔn)確時(shí)間。在Beacon硬件方面,我們采用了自主定制的硬件,在降低成本的同時(shí)保證了藍(lán)牙廣播的質(zhì)量,同時(shí)引入了加密技術(shù)來保護(hù)商戶的位置隱私。在手機(jī)監(jiān)聽模塊方面,我們通過設(shè)計(jì)一個(gè)動(dòng)態(tài)監(jiān)聽模塊,在保證到店判斷能力的前提下降低了能耗。
對(duì)比前面提到的幾個(gè)挑戰(zhàn),我們可以發(fā)現(xiàn),因?yàn)樗{(lán)牙信號(hào)自身的特性,Beacon信號(hào)在室內(nèi)環(huán)境的傳播僅限于幾米到幾十米的范圍(相信大家使用藍(lán)牙耳機(jī)和鼠標(biāo)都有類似的感受),因此基于藍(lán)牙的到店判斷不會(huì)出現(xiàn)GPS那樣幾百米的誤差,可以極大提高騎手到店觀測(cè)的準(zhǔn)確性。同時(shí),因?yàn)樗{(lán)牙信號(hào)的穿墻能力較差,因此只有當(dāng)騎手到達(dá)商戶所在的樓層時(shí)才會(huì)接收到藍(lán)牙信號(hào),這樣就避免了商戶樓層帶來的影響。此外,我們通過標(biāo)準(zhǔn)化的部署流程,使得Beacon硬件部署在商戶的騎手取餐處的上方,避免了商戶內(nèi)動(dòng)態(tài)環(huán)境的改變對(duì)信號(hào)的影響。藍(lán)牙協(xié)議的標(biāo)準(zhǔn)化和手機(jī)硬件的成熟化也降低了騎手手機(jī)硬件對(duì)到店觀測(cè)的影響。此外,因?yàn)樗{(lán)牙監(jiān)聽屬于非連接通信,騎手使用藍(lán)牙耳機(jī)的功能也不會(huì)受到影響。最后,和Wi-Fi相比,藍(lán)牙監(jiān)聽的功耗也很低,我們的實(shí)驗(yàn)證明,Beacon監(jiān)聽每天只會(huì)給騎手手機(jī)帶來3%的額外功耗負(fù)擔(dān)。
總體來說,aBeacon系統(tǒng)的主要貢獻(xiàn)在于將藍(lán)牙感知的技術(shù)真正應(yīng)用到騎手到店觀測(cè)的問題中,并解決了一系列實(shí)際應(yīng)用中的挑戰(zhàn),比如能耗,可靠性,隱私保護(hù)等,并且從理論層面上對(duì)系統(tǒng)的成本和效用進(jìn)行分析,從而指導(dǎo)今后大規(guī)模感知系統(tǒng)的落地。

在系統(tǒng)的設(shè)計(jì)中,我們考慮了下面的一些指標(biāo):
成本
成本是我們上線一個(gè)商業(yè)化的系統(tǒng)所必須考慮的因素之一。aBeacon系統(tǒng)的成本包括兩部分:aBeacon設(shè)備的硬件成本,和大規(guī)模部署的成本。在硬件成本方面,我們通過對(duì)硬件的定制來降低成本。在部署成本方面,我們通過簡(jiǎn)化硬件部署的流程,從而在業(yè)務(wù)經(jīng)理的幫助下降低部署成本。
壽命
出于易用性的考慮,我們的aBeacon硬件采用了電池供電的方式。這樣電池的容量就成為了限制系統(tǒng)壽命的主要因素。但在兩年的運(yùn)行之后,我們發(fā)現(xiàn)除了電池的壽命,環(huán)境變化也是影響系統(tǒng)壽命的重要因素。
可靠性
可靠性是指在所有的騎手到店行為中,有多大比例可以被aBeacon系統(tǒng)觀測(cè)到。在實(shí)際中,可靠性受到包括部署質(zhì)量,商戶環(huán)境,騎手手機(jī)等諸多因素的影響。
效用
騎手到店觀測(cè)給整個(gè)系統(tǒng)提供了更準(zhǔn)確的數(shù)據(jù),它帶來的效用是基礎(chǔ)但難以直接衡量的,因此我們采用超時(shí)率這一衡量整個(gè)調(diào)度系統(tǒng)的指標(biāo)來評(píng)估aBeacon的效用。
在系統(tǒng)的設(shè)計(jì)過程中,我們首先量化了上面的四個(gè)指標(biāo),然后建立這四個(gè)指標(biāo)和我們要優(yōu)化的終極目標(biāo)--aBeacon帶來的累積收益--之間的量化關(guān)系。因此,我們可以在這個(gè)量化關(guān)系的指導(dǎo)下對(duì)各個(gè)因素進(jìn)行權(quán)衡。
在這樣的設(shè)計(jì)思路的指導(dǎo)下,aBeacon系統(tǒng)的部署和運(yùn)行主要包含了兩個(gè)主要環(huán)節(jié):
設(shè)計(jì)與測(cè)試
基于成本和設(shè)計(jì)自由度的考慮,我們選擇自主定制aBeacon設(shè)備,同時(shí)自主定制還能讓我們嵌入隱私保護(hù)等其他功能。在大規(guī)模的部署前,我們挑選了幾個(gè)商場(chǎng)進(jìn)行小規(guī)模的測(cè)試。在測(cè)試中,我們將自主定制的aBeacon設(shè)備和另一種商用的Beacon設(shè)備同時(shí)部署在商戶里。通過對(duì)比測(cè)試,我們發(fā)現(xiàn)采用自主定制的aBeacon設(shè)備可以在壓縮成本的同時(shí)達(dá)到和商用Beacon設(shè)備同樣的可靠性。
部署與運(yùn)行
在小規(guī)模測(cè)試后,從2018年1月開始,如圖2所示,我們?cè)谏虾5?2000余家商戶里部署了aBeacon設(shè)備。我們用一份包含“部署在哪里”、“怎么固定”、“如何綁定”等問題的部署手冊(cè)來指導(dǎo)業(yè)務(wù)經(jīng)理進(jìn)行部署。在運(yùn)行過程中,我們通過后臺(tái)收集的數(shù)據(jù),可以對(duì)所有設(shè)備進(jìn)行實(shí)時(shí)監(jiān)控,所有設(shè)備被分類為“健康”、“部署錯(cuò)誤”、“下線”等狀態(tài)。我們針對(duì)不同的設(shè)備還可以采取不同的維護(hù)措施,比如針對(duì)“部署錯(cuò)誤”的設(shè)備進(jìn)行重新部署。
另一個(gè)很重要的問題是系統(tǒng)安全和隱私保護(hù),這也是我們?cè)赼Beacon設(shè)備的定制過程中作出的重要改進(jìn)之一。因?yàn)閭鹘y(tǒng)的iBeacon協(xié)議是固定ID的明文廣播,可能導(dǎo)致系統(tǒng)的安全性漏洞。比如:
未授權(quán)的用戶可能通過戰(zhàn)爭(zhēng)駕駛(wardriving)[2] 的方法來反推出Beacon設(shè)備的位置,并用于其他目的。
惡意攻擊者可能通過在異地復(fù)制已有Beacon設(shè)備的藍(lán)牙廣播,向系統(tǒng)中注入錯(cuò)誤的位置數(shù)據(jù)。
針對(duì)這一問題,我們?cè)谧灾鞫ㄖ频脑O(shè)備中對(duì)藍(lán)牙廣播進(jìn)行加密,通過一種TOTP[3]的加密算法,讓所有aBeacon設(shè)備廣播的ID內(nèi)容定時(shí)進(jìn)行變更,而ID和設(shè)備位置的映射關(guān)系存在只有授權(quán)用戶可以訪問服務(wù)器。這樣極大地提高了系統(tǒng)的安全性。
標(biāo)簽
熱門文章更多>
- 深圳阿里云代理商:ECS部署SSL證書與到期提醒配置全攻略
- 上海阿里云代理商:阿里云服務(wù)器SSL證書備份方案
- 北京阿里云代理商:RDS讀寫分離配置指南
- 重慶阿里云代理商:用好 OSS 生命周期 降低長(zhǎng)期存儲(chǔ)花費(fèi)
- 上海阿里云代理商:DMS 多庫同步搭建 異構(gòu)數(shù)據(jù)庫集成實(shí)操
- 上海阿里云代理商:阿里云SLB健康檢查異常排查:端口、網(wǎng)絡(luò)、應(yīng)用狀態(tài)一步到位
- 重慶阿里云代理商:阿里云Redis延遲突然升高?慢查詢大Key連接數(shù)排查指南
- 廣州阿里云代理商:阿里云ACK Pod Pending?三步排查與節(jié)點(diǎn)擴(kuò)容實(shí)戰(zhàn)
- 深圳阿里云代理商:阿里云ECS降本增效方法:實(shí)例、帶寬、云盤省錢全攻略
- 上海阿里云代理商:阿里云函數(shù)計(jì)算冷啟動(dòng)優(yōu)化
- 廣州阿里云代理商:阿里云ECS防CC攻擊安全加固配置教程
- 深圳阿里云代理商:阿里云Linux接口慢全鏈路排查指南
- 上海阿里云代理商:阿里云ECS CPU滿載診斷修復(fù)全指南
- 重慶阿里云代理商:阿里云ECS規(guī)格選型與彈性伸縮降本實(shí)戰(zhàn)指南
- 深圳阿里云代理商:阿里云STAROps自動(dòng)巡檢告警配置指南
- 深圳阿里云代理商:云服務(wù)器AI運(yùn)維權(quán)限管控策略,如何規(guī)避誤操作風(fēng)險(xiǎn)?
- 上海阿里云代理商:后端開發(fā)者私有AI大模型云端部署完整流程指南
- 北京阿里云代理商:AI日志分析工具,快速定位服務(wù)器異常宕機(jī)實(shí)戰(zhàn)指南
- 重慶阿里云代理商:AI腳本自動(dòng)化完成云服務(wù)器批量運(yùn)維配置實(shí)戰(zhàn)指南
- 廣州阿里云代理商:大模型推理部署,服務(wù)器內(nèi)存調(diào)優(yōu)實(shí)操全攻略

