彭 焱 張 偉 萬 方
1(武昌首義學(xué)院信息科學(xué)與工程學(xué)院 湖北 武漢 430064)
2(深圳市思迅軟件股份有限公司 廣東 深圳 518057)
3(湖北工業(yè)大學(xué)計(jì)算機(jī)學(xué)院 湖北 武漢 430068)
共享單車系統(tǒng)在許多主要城市越來越受歡迎,例如紐約、北京和巴黎。文獻(xiàn)[1]指出,已經(jīng)有747個(gè)共享單車系統(tǒng)投入使用,并且有235個(gè)系統(tǒng)正處于規(guī)劃或準(zhǔn)備階段中。在這些系統(tǒng)中,用戶可以從具有有限碼頭的共享單車站點(diǎn)中租賃和返還單車,以解決短途交通問題。
共享單車系統(tǒng)面臨站點(diǎn)之間車輛需重新平衡的挑戰(zhàn)。從單車系統(tǒng)歷史行程數(shù)據(jù)可以看出,不同站點(diǎn)在不同時(shí)間段內(nèi)的單車借還量是不平衡的,一些車站可能沒有足夠的碼頭以備將來需要返還的單車停靠,而另一些車站則可能缺少可租賃的單車。實(shí)時(shí)監(jiān)測每個(gè)車站當(dāng)前的單車數(shù)量并不能解決這一問題,因?yàn)樵谏鲜銮闆r發(fā)生后,再重新為站點(diǎn)分配單車就為時(shí)已晚。
為了解決這一問題,本文利用共享單車系統(tǒng)的歷史行程數(shù)據(jù)和天氣數(shù)據(jù)來預(yù)測未來一段時(shí)間內(nèi)每個(gè)站點(diǎn)群的需求,即站點(diǎn)群內(nèi)所有站點(diǎn)的單車租賃量和返還量。該預(yù)測可以幫助系統(tǒng)管理人員更有效地維護(hù)共享單車系統(tǒng),提高單車資源利用率。該問題是非常具有挑戰(zhàn)性的,因?yàn)閱诬嚦鲂袝艿蕉喾N復(fù)雜因素的影響,例如季節(jié)、天氣狀況、時(shí)間類特征等。
基于上述討論,本文提出了一個(gè)分層預(yù)測模型。首先提出一個(gè)基于超級站點(diǎn)的聚類算法,利用站點(diǎn)間的地理距離和單車出行記錄對各個(gè)站點(diǎn)進(jìn)行聚類,其中超級站點(diǎn)是指局部需求比例大于一定閾值的站點(diǎn);然后利用歷史行程數(shù)據(jù)和天氣數(shù)據(jù),通過基于時(shí)間與天氣相似度的模型預(yù)測整個(gè)共享單車系統(tǒng)中的單車借還量;接著訓(xùn)練極致梯度提升樹(XGBoost)模型預(yù)測每個(gè)站點(diǎn)群的單車借還量,進(jìn)而得到每個(gè)站點(diǎn)群的需求在系統(tǒng)中所占的比例;最后結(jié)合前面的預(yù)測結(jié)果,得到每個(gè)站點(diǎn)群各時(shí)間間隔的單車需求量。
近年來,研究者們對于共享單車系統(tǒng)中出現(xiàn)的各類優(yōu)化問題越來越感興趣。已經(jīng)完成的關(guān)于共享單車系統(tǒng)的相關(guān)研究有站點(diǎn)聚類和需求預(yù)測兩方面。
(1) 站點(diǎn)聚類。通過聚類算法可以發(fā)現(xiàn)單車使用模式中的規(guī)律,減少需求預(yù)測的方差并提高預(yù)測準(zhǔn)確性。Vogel等[2]探討了基于站點(diǎn)群時(shí)空驗(yàn)證的單車活動(dòng)模式,揭示了單車需求分布的不平衡性。Li等[3]首先提出了一種基于站點(diǎn)地理位置和過渡模式方法,對站點(diǎn)進(jìn)行聚類。Etienne等[4]引入了一種基于模型的方法,對具有類似單車使用模式的站點(diǎn)進(jìn)行分組,例如餐館和火車站附近的站點(diǎn),并預(yù)測其在不同時(shí)間設(shè)置下的單車使用模式。Liu等[5]提出了一種基于熱峰的聚類算法,根據(jù)POI(Points of interests)特征和地理距離發(fā)現(xiàn)具有不同功能的區(qū)域。Chen等[6]為單車站點(diǎn)建立了一個(gè)站點(diǎn)相關(guān)網(wǎng)絡(luò),然后提出了基于地理限制的標(biāo)簽傳播(GCLP)算法來聚類站點(diǎn)。張晶等[7]提出了一種基于優(yōu)化聚類中心點(diǎn)、增進(jìn)調(diào)度需求量的改進(jìn)Kmeans算法來聚類站點(diǎn)。
(2) 單車需求預(yù)測。關(guān)于共享單車系統(tǒng)的早期研究集中在使用數(shù)據(jù)挖掘技術(shù)和經(jīng)典的經(jīng)驗(yàn)統(tǒng)計(jì)方法研究單車活動(dòng)模式[8-9]或每日單車需求預(yù)測問題上。Froehlich等[10]采用貝葉斯網(wǎng)絡(luò),根據(jù)當(dāng)前時(shí)間和當(dāng)前單車或碼頭數(shù)來預(yù)測站點(diǎn)的狀態(tài)。Kaltenbrunner等[11]使用ARIMA模型將站點(diǎn)狀態(tài)建模并利用時(shí)間序列進(jìn)行需求預(yù)測?;趤碜远及亓值膯诬嚁?shù)據(jù),Yoon等[12]提出了一個(gè)改進(jìn)的ARIMA模型,利用空間相互作用和時(shí)間因素,預(yù)測每個(gè)站點(diǎn)的可用自行車和碼頭。文獻(xiàn)[13-15]通過從周圍環(huán)境和公共交通網(wǎng)絡(luò)等多個(gè)靜態(tài)因素中提取全局特征,然后建立站點(diǎn)需求預(yù)測模型。杜明洋等[16]提出了一種基于自適應(yīng)粒子群小波網(wǎng)絡(luò)來進(jìn)行需求預(yù)測的方法。胡郁蔥等[17]基于XGBoost算法提出了一種能夠提高共享自行車短時(shí)需求預(yù)測的方法。
但是早期的預(yù)測方法不能直接用于本文的工作,因?yàn)楸疚哪繕?biāo)是找出系統(tǒng)中的所有站點(diǎn)群并對各站點(diǎn)群的需求進(jìn)行預(yù)測,而不是每個(gè)站點(diǎn)的需求或者整個(gè)系統(tǒng)的總體需求。此外,其他方法中也沒有區(qū)分出超級站點(diǎn)和其他站點(diǎn),而是將所有站點(diǎn)一視同仁,忽略了其在聚類中的作用。
定義1站點(diǎn)核系數(shù)。對于系統(tǒng)中的每個(gè)站點(diǎn)i,該站點(diǎn)的核系數(shù)定義為:
(1)
式中:di表示站點(diǎn)i的單車總租賃量和總返還量之和;S表示站點(diǎn)集合;Dist(i,j)表示兩個(gè)站點(diǎn)間的地理距離;δ為距離閾值。
根據(jù)式(1),站點(diǎn)核系數(shù)為目標(biāo)站點(diǎn)的歷史總租還需求之和在該站點(diǎn)δ鄰域內(nèi)所有站點(diǎn)中所占的比例。如圖1所示,每個(gè)圓點(diǎn)代表一個(gè)共享單車站點(diǎn),圓的半徑越大代表站點(diǎn)的歷史總租還需求之和越大。可以看到,各地區(qū)的單車需求分布非常不平衡。如果只選擇需求量較高的站點(diǎn)作為超級站點(diǎn),那么那些低需求區(qū)域?qū)⒈煌耆雎?,這樣并不利于站點(diǎn)聚類和保證整個(gè)系統(tǒng)的運(yùn)行效率。而且一個(gè)站點(diǎn)的服務(wù)質(zhì)量也會在一定程度上影響到其他站點(diǎn)的服務(wù)質(zhì)量。例如,如果一個(gè)站點(diǎn)是空的(或滿的),那么打算在這個(gè)站點(diǎn)租賃(或返還)自行車的用戶就可能會選擇附近其他站點(diǎn)作為替代。同樣,一些交通事件或社交活動(dòng)通常會影響局部區(qū)域的需求而不是整體需求。
圖1 站點(diǎn)需求量分布
根據(jù)式(1),在計(jì)算站點(diǎn)核系數(shù)時(shí)需要用到目標(biāo)站點(diǎn)的局部需求比例。對于那些低需求區(qū)域的站點(diǎn),雖然它們的絕對需求較低,但是在其所在區(qū)域內(nèi)所占的需求比例卻可能較高,因此能夠被挖掘出來。也就是說,最終選擇得到的是“局部”超級站點(diǎn)。
定義2超級站點(diǎn)。超級站點(diǎn)是指站點(diǎn)核系數(shù)大于核系數(shù)閾值λ的站點(diǎn)。
核系數(shù)閾值λ可以影響離群站點(diǎn)、站點(diǎn)群和超級站點(diǎn)的數(shù)量。隨著閾值的減小,離群站點(diǎn)的數(shù)量將減少,而站點(diǎn)群和超級站點(diǎn)的數(shù)量都將增加。離群站點(diǎn)的數(shù)量應(yīng)該越少越好,以便保證整個(gè)系統(tǒng)的總體服務(wù)質(zhì)量。然而,隨著站點(diǎn)群數(shù)量的增加,每個(gè)站點(diǎn)群的單車需求會較少,需求波動(dòng)更大,所以預(yù)測精度將會降低。因此,需要折中選取一個(gè)合適的核系數(shù)閾值,實(shí)驗(yàn)得到當(dāng)λ=0.15時(shí),剛好在沒有離群站點(diǎn)的情況下站點(diǎn)群的數(shù)量達(dá)到最少。
在聚類之前,首先需要定義站點(diǎn)之間的相似度。站點(diǎn)的相似度度量主要由地理距離和單車使用模式?jīng)Q定。為了給用戶提供更多便利,一個(gè)站點(diǎn)群中的站點(diǎn)應(yīng)該在地理位置上彼此接近。這樣,如果在離出發(fā)地或目的地最近的站點(diǎn)沒有可用的單車或碼頭的話,用戶也可以步行或騎車到同一站點(diǎn)群中的另一個(gè)站點(diǎn)來停取車輛。
考慮到地理距離對于站點(diǎn)相似度的影響,站點(diǎn)間的相似度定義為:
(2)
式中:sign(x)為符號函數(shù)。當(dāng)x≥0時(shí),sign(x)=1;當(dāng)x<0時(shí),sign(x)=-1。
由式(2)可見,當(dāng)站點(diǎn)間的地理距離大于距離閾值時(shí),站點(diǎn)間的相似度為負(fù)值;而只有當(dāng)距離小于閾值時(shí),站點(diǎn)間才具有正的相似度。因?yàn)楫?dāng)兩個(gè)站點(diǎn)相隔距離過遠(yuǎn)時(shí),如果其中一個(gè)站點(diǎn)不能滿足用戶需求,那么用戶也不太可能徒步走到另一個(gè)站點(diǎn)尋找單車或者騎行太遠(yuǎn)尋找停車的車樁,因?yàn)檫@樣的時(shí)間成本太高。這一點(diǎn)將在下面的聚類過程中用于分離相隔過遠(yuǎn)的兩個(gè)站點(diǎn)。
站點(diǎn)聚類需要將站點(diǎn)劃分為站點(diǎn)群,以便每個(gè)站點(diǎn)群由具有相似單車使用模式的相鄰站點(diǎn)組成。
將站點(diǎn)聚類的好處如下:(1) 站點(diǎn)群的周期性和規(guī)律性比單個(gè)站點(diǎn)的周期性和規(guī)律性更加明顯,因此更容易預(yù)測;(2) 站點(diǎn)聚類后會形成一種多層次的需求結(jié)構(gòu),較高層次代表整個(gè)系統(tǒng)的總體需求,較低層次代表每個(gè)站點(diǎn)群的需求,通過對較高層次需求的準(zhǔn)確預(yù)測可以對較低層次的需求預(yù)測誤差進(jìn)行校正,因?yàn)橄到y(tǒng)整體需求是相對穩(wěn)定且容易預(yù)測的。這也是在下面的預(yù)測過程中采用分層預(yù)測方法的原因。
實(shí)際上,不需要去預(yù)測每個(gè)站點(diǎn)的單車租賃量或返還量。了解每個(gè)站點(diǎn)群的單車租賃量或返還量就足夠?qū)诬囘M(jìn)行重新分配,因?yàn)橛脩敉ǔ诳拷涑霭l(fā)地點(diǎn)或目的地的一個(gè)隨機(jī)的站點(diǎn)借/還單車。如果站點(diǎn)沒有可用的單車或者可用的碼頭,那么用戶也可以方便地在附近的另一個(gè)站點(diǎn)借/還單車。此外,那些可能影響單車使用量的事件通常會對一個(gè)區(qū)域內(nèi)的站點(diǎn)造成影響,而不僅僅是影響某個(gè)單獨(dú)的站點(diǎn)。
聚類算法如算法1所示。
算法1基于超級站點(diǎn)的聚類算法
步驟1生成超級站點(diǎn)集合SS。
步驟2利用k-中心點(diǎn)算法對所有超級站點(diǎn)進(jìn)行聚類,生成多個(gè)站點(diǎn)群。
步驟3對于每個(gè)普通站點(diǎn),從SS中選擇一個(gè)與其站點(diǎn)相似度最大的超級站點(diǎn),若最大站點(diǎn)相似度大于0,則將該普通站點(diǎn)加入對應(yīng)的超級站點(diǎn)所在的群中;否則,將該普通站點(diǎn)作為離群點(diǎn)。
步驟4將每個(gè)離群點(diǎn)加入到距其最近的超級站點(diǎn)所在的群中。
步驟2中k-中心點(diǎn)算法在將每個(gè)站點(diǎn)分配給距其最近的代表站點(diǎn)所在的站點(diǎn)群時(shí),依據(jù)的也是站點(diǎn)間的相似度S(i,j),即相似度越大,距離越近。根據(jù)式(2),步驟3中最大站點(diǎn)相似度大于0的超級站點(diǎn)一定是與普通站點(diǎn)距離小于閾值δ的站點(diǎn),也就是將相隔過遠(yuǎn)的兩個(gè)站點(diǎn)分離到不同的站點(diǎn)群中。
最終得到的每個(gè)簇內(nèi)可能包含多個(gè)超級站點(diǎn)和多個(gè)普通站點(diǎn),這些超級站點(diǎn)與普通站點(diǎn)間距離近且單車使用模式相似,通過平衡超級站點(diǎn)的單車庫存可以間接地調(diào)節(jié)整個(gè)單車系統(tǒng)的服務(wù)質(zhì)量。本文將該聚類方法命名為SS(Super station based clustering)。
旅游活動(dòng)本身是一項(xiàng)整合了諸多資源的活動(dòng),因此企業(yè)在進(jìn)行旅游經(jīng)濟(jì)管理時(shí),不能局限于單一的開發(fā)認(rèn)知,而需要通過整合時(shí)代資源、融入信息技術(shù)等方法,讓整個(gè)旅游經(jīng)濟(jì)管理活動(dòng)更加智能、科學(xué)。實(shí)際上,這一管理機(jī)制是一種復(fù)合型機(jī)制,其對于管理者和消費(fèi)者都提出了諸多要求。在引導(dǎo)消費(fèi)者樹立生態(tài)旅游的消費(fèi)理念的同時(shí),也要提高其生態(tài)環(huán)保意識,堅(jiān)決維護(hù)環(huán)境。管理者和參與經(jīng)營者需要樹立系統(tǒng)化的旅游經(jīng)濟(jì)開發(fā)管理意識,在整合資源的前提下,堅(jiān)持將最佳效益與生態(tài)保護(hù)放在第一位,通過構(gòu)建生態(tài)保護(hù)的系統(tǒng)模式,從而實(shí)現(xiàn)旅游經(jīng)濟(jì)管理的最佳效果。
在本文的分層預(yù)測模型中,首先預(yù)測較高層次的單車需求,即整個(gè)共享單車系統(tǒng)的總體需求。總體需求由基于時(shí)間與天氣相似度的模型預(yù)測,利用與目標(biāo)時(shí)間間隔相似度較高的時(shí)間間隔內(nèi)的需求量推導(dǎo)出目標(biāo)時(shí)間間隔內(nèi)的需求量。
本文要預(yù)測的是各時(shí)間間隔內(nèi)的需求,其中每個(gè)時(shí)間間隔對應(yīng)一個(gè)小時(shí),所以時(shí)間特征顯得尤為重要。有兩個(gè)比較重要的時(shí)間特征,分別為小時(shí)和是否為工作日。工作日的交通情況包括早晚高峰時(shí)段、平常時(shí)段和深夜時(shí)段,其中早晚高峰時(shí)段的需求量遠(yuǎn)遠(yuǎn)大于其他時(shí)段;而周末或者節(jié)假日的需求量則接近正態(tài)分布,中午的需求量較大,早晚的需求量較少。 因此,小時(shí)和是否為工作日在需求預(yù)測中是非常重要的兩個(gè)特征。其他的時(shí)間類特征,如年份、月份、季節(jié)對需求量也會有一定的影響,可以用來提高預(yù)測的精度。天氣特征主要包含天氣狀況、溫度、濕度、風(fēng)速、能見度。這些天氣特征對站點(diǎn)單車需求量也有著不小的影響。例如,當(dāng)溫度適宜時(shí),人們更容易選擇騎單車出行,而溫度過高或過低都將降低這種傾向,從而對單車需求量造成影響;當(dāng)遇上刮風(fēng)下雨等惡劣天氣時(shí),單車的需求量也會比天氣好的情況要降低很多。其余幾個(gè)天氣特征也都有類似的特征。
基于上面得到的特征,將不同時(shí)間間隔的相似度定義為:
(3)
式中:α1(ti,tj)=1表示時(shí)間間隔ti和tj屬于同一類型的時(shí)段(早晚高峰時(shí)段、平常時(shí)段或深夜時(shí)段),否則α1(ti,tj)=0;α2(ti,tj)=1表示兩個(gè)時(shí)間間隔均為工作日或者周末;λ1(ti,tj)=1表示兩個(gè)時(shí)間間隔內(nèi)的天氣狀況相同(均為晴天或者惡劣天氣);λ2至λ5分別代表溫度、濕度、風(fēng)速和能見度的相似度。因?yàn)樘卣鳓?-λ5的值都是連續(xù)數(shù)值,所以使用高斯核函數(shù)定義它們的相似度:
(4)
為了預(yù)測目標(biāo)時(shí)間間隔內(nèi)的總體需求,需要先選取前P個(gè)與其最為相似的時(shí)間間隔,然后利用式(5)得到預(yù)測結(jié)果。
(5)
要將系統(tǒng)的總體需求分配給每個(gè)站點(diǎn)群,首先要得到每個(gè)站點(diǎn)群在整個(gè)系統(tǒng)中所占的需求比例。根據(jù)預(yù)測得到的總體需求和站點(diǎn)群的需求比例,可以輕松計(jì)算出每個(gè)站點(diǎn)群的單車需求。本節(jié)使用XGBoost模型來預(yù)測每個(gè)站點(diǎn)群的需求,該模型的目標(biāo)函數(shù)為[19]:
(6)
式中:gi和hi分別是當(dāng)前模型下目標(biāo)函數(shù)的一階導(dǎo)數(shù)和二階導(dǎo)數(shù);λ和γ是正則化參數(shù);T為葉節(jié)點(diǎn)個(gè)數(shù),這些都可以看作常量;wj是葉節(jié)點(diǎn)分?jǐn)?shù),是模型要優(yōu)化的值,當(dāng)樹結(jié)構(gòu)確定時(shí),目標(biāo)函數(shù)可以看作是關(guān)于wj的二次函數(shù),優(yōu)化起來簡單高效。而且由于XGBoost是直接優(yōu)化損失函數(shù),所以預(yù)測精度也很高。
(7)
(8)
在紐約市花旗共享單車系統(tǒng)歷史數(shù)據(jù)上進(jìn)行實(shí)驗(yàn)對比。數(shù)據(jù)集[20]包含了兩年(2014.01.01—2015.12.31)的單車行程數(shù)據(jù)和對應(yīng)的天氣數(shù)據(jù),具體如表1所示。
表1 數(shù)據(jù)集概覽
行程數(shù)據(jù)來自紐約市花旗共享單車系統(tǒng),每條行程記錄包含單車ID、時(shí)間戳、起始站點(diǎn)ID、到達(dá)站點(diǎn)ID和其他信息。根據(jù)這些記錄,分別統(tǒng)計(jì)出每個(gè)站點(diǎn)每小時(shí)的單車租賃數(shù)量和歸還數(shù)量。天氣數(shù)據(jù)來自全球天氣預(yù)報(bào)網(wǎng)站提供的API,數(shù)據(jù)以JSON格式存儲,按約一小時(shí)的間隔產(chǎn)生一條記錄,包含了溫度、濕度、風(fēng)速、可見度、氣壓、天氣狀況等信息。有些時(shí)段系統(tǒng)的總體需求非常不規(guī)律,對于這部分異常時(shí)間段的數(shù)據(jù),進(jìn)行單獨(dú)的統(tǒng)計(jì)和預(yù)測。
對數(shù)據(jù)集進(jìn)行劃分,使用2014年的數(shù)據(jù)作為訓(xùn)練集來訓(xùn)練模型,使用2015年的數(shù)據(jù)作為驗(yàn)證集來測試預(yù)測結(jié)果的好壞。
通過實(shí)驗(yàn)對算法進(jìn)行性能測試。實(shí)驗(yàn)平臺配置為Intel Core i5-8250U CPU,8 GB內(nèi)存,64位操作系統(tǒng)的計(jì)算機(jī),算法程序采用Python語言編寫。
實(shí)驗(yàn)過程如圖2所示。針對紐約市花旗共享單車系統(tǒng)歷史數(shù)據(jù)進(jìn)行預(yù)處理、離散化,刪除需求量極少的站點(diǎn),產(chǎn)生三組數(shù)據(jù)集(n=100、200、300),給定聚類數(shù)k=35,然后分別由SS、K-means聚類算法進(jìn)行聚類,得出各算法下的站點(diǎn)群輸出。最后針對站點(diǎn)群輸出,使用基于時(shí)間與天氣相似度模型來預(yù)測整個(gè)系統(tǒng)的需求,使用XGBoost模型進(jìn)行各站點(diǎn)群需求預(yù)測,并可通過總體需求預(yù)測來校正局部需求預(yù)測。
圖2 實(shí)驗(yàn)過程
表2所示為兩種聚類算法的時(shí)間性能??梢钥闯?,實(shí)驗(yàn)中聚類算法在時(shí)間性能方面,隨著樣本點(diǎn)數(shù)的增加,所花費(fèi)的時(shí)間基本都呈線性增長,SS算法在聚類時(shí)性能比K-means算法有一定的改進(jìn)。
表2 聚類算法時(shí)間性能比較 單位:s
采用的度量預(yù)測好壞的指標(biāo)是每個(gè)時(shí)段單車需求的平均絕對誤差(MAE)和均方根對數(shù)誤差(RMSLE),指標(biāo)的計(jì)算公式為:
(9)
(10)
將本文方法命名為SS-HP。為了證明該方法的有效性,在以下基準(zhǔn)方法上進(jìn)行了對比實(shí)驗(yàn)。
HA(均值法):根據(jù)與預(yù)測時(shí)段相對應(yīng)的其他時(shí)段的歷史租賃/返還平均值來預(yù)測。例如,周一下午1:00—2:00,其對應(yīng)的時(shí)段為所有工作日下午1:00—2:00這段時(shí)間。
ARMA(自回歸滑動(dòng)平均法):對借還單車量的預(yù)測可以看作一個(gè)時(shí)間序列問題,因此可以由ARMA進(jìn)行預(yù)測,ARMA是理解和預(yù)測時(shí)間序列中未來值的常用模型。與HA的實(shí)驗(yàn)類似,在ARMA的實(shí)驗(yàn)中,也區(qū)分了一天中的每小時(shí)和一周中的每一天。
KNN(K近鄰法)[21]:KNN通過定義各時(shí)間的相似度,選取與預(yù)測時(shí)段最為相似的K個(gè)時(shí)段,將這K個(gè)時(shí)段的歷史需求的均值作為預(yù)測結(jié)果。
在聚類方法上,采用經(jīng)典的K-means方法進(jìn)行對比實(shí)驗(yàn),因此共有以下七種基準(zhǔn)方法用來與SS-HP進(jìn)行對比:K-means-HA、SS-HA、K-means-ARMA、SS-ARMA、K-means-KNN、SS-KNN和K-means-HP。
圖3是通過K-means和SS方法分別得到的聚類后的站點(diǎn)群結(jié)果圖。其中,不同區(qū)塊表示不同的站點(diǎn)群,區(qū)塊中的每一圓點(diǎn)代表一個(gè)共享單車站點(diǎn),兩種方法都生成35個(gè)站點(diǎn)群,為方便進(jìn)行對比,中心有十字標(biāo)記的點(diǎn)是挖掘出的超級站點(diǎn)。
圖3 兩種聚類方法產(chǎn)生的結(jié)果
圖4和圖5分別是所有時(shí)間段和異常時(shí)間段中,站點(diǎn)群需求預(yù)測結(jié)果在兩種度量指標(biāo)下的對比圖??梢钥闯觯趦煞N時(shí)間段中,本文提出的SS-HP方法在兩種度量指標(biāo)下均取得了優(yōu)于其他基準(zhǔn)方法的結(jié)果。另外,觀察K-means-HA和SS-HA、K-means-ARMA和SS-ARMA、K-means-KNN和SS-KNN、K-means-HP和SS-HP這四組對比方法,可以看出通過SS聚類的四種方法,其需求預(yù)測結(jié)果均優(yōu)于對應(yīng)的K-means聚類的方法,這表明了本文提出的基于超級站點(diǎn)聚類方法(SS)的優(yōu)越性。
(a) MAE度量需求預(yù)測結(jié)果
(a) MAE度量需求預(yù)測結(jié)果
本文提出了一種基于超級站點(diǎn)的聚類方法和一種分層預(yù)測方法來對共享單車系統(tǒng)中的站點(diǎn)進(jìn)行聚類并預(yù)測每個(gè)站點(diǎn)群的單車需求。具體地,首先從單車系統(tǒng)中選擇超級站點(diǎn),然后圍繞超級站點(diǎn)進(jìn)行聚類。整個(gè)單車系統(tǒng)的總體需求使用基于時(shí)間與天氣相似度的模型來預(yù)測,最后使用XGBoost模型來預(yù)測每個(gè)站點(diǎn)群的需求比例,進(jìn)而得到每個(gè)站點(diǎn)群各預(yù)測時(shí)間間隔內(nèi)的單車需求。基于紐約市花旗共享單車系統(tǒng)的歷史數(shù)據(jù)進(jìn)行實(shí)驗(yàn)對比,證明了本文方法在預(yù)測站點(diǎn)群單車需求上的高效性和有效性。
未來將從以下幾個(gè)方面改進(jìn)這項(xiàng)工作:首先,計(jì)劃收集并處理其他更為豐富的城市計(jì)算領(lǐng)域的數(shù)據(jù)來獲取更多更好的特征,例如社交網(wǎng)絡(luò)數(shù)據(jù)和城市出租車行程數(shù)據(jù),這些特征可能都會對提高單車需求預(yù)測的準(zhǔn)確度有積極作用;其次,對單車需求的預(yù)測結(jié)果可以運(yùn)用到城市計(jì)算中去,例如幫助城市建設(shè)者合理地規(guī)劃單車車道,或者通過預(yù)測城市不同區(qū)域的單車需求,來指導(dǎo)單車站點(diǎn)選址的問題。