徐長興,汪偉平*,昌錫銘,包旭,吳建軍
(1.北京交通大學 軌道交通控制與安全國家重點實驗室,北京 100044;2.淮陰工學院 交通工程學院,江蘇 淮安 223000)
無樁式共享單車是在共享經濟和物聯網等技術浪潮下產生的一種新的慢行交通模式,是城市公共自行車系統的重要組成部分[1]。共享單車取消了傳統公共自行車固定的停車樁,解決了因停車樁數量少而造成的“還車難”等問題。共享單車的出現在有效解決城市居民出行“最后一公里”問題的同時,也對減少大氣污染和緩解城市交通擁堵等起到了積極作用。
雖然目前無樁式共享單車呈現出良好的發展態勢,但是在特定時間段的某些區域仍存在借還車次不平衡、車輛投放數量不合理、車輛調度不及時等問題。人們出行特征的時空非均衡性,特別是早晚高峰客流的潮汐現象導致了共享單車系統在時空上分布的不均衡[2]。區域內單車需求大于供給,會導致無車可借,產生“借車難”等問題,反之會導致大量單車無人使用而長時間閑置,占用公共空間。
高效及時的單車調度是單車系統時空分布再平衡的重要途徑,而準確的短時出行需求預測是單車科學調度的基礎。若采取人工巡查的方式或者監測平臺利用GPS定位監控到不平衡之后再派卡車執行單車的調配,缺乏對未來需求量的預判,會造成嚴重的滯后和效率低下[3]。因此,準確地預測區域內各時段的需求量是進行車輛調度和共享單車系統布局優化的基礎,也是提高企業服務質量和用戶體驗的關鍵環節。
從預測模型發展角度,共享單車的需求預測方法可以分為傳統的統計學和機器學習兩大類。統計學方法如差分整合移動平均自回歸模型(autoregressive integrated moving average model,ARIMA)、多元回歸分析、馬爾可夫鏈[4]等傳統統計推斷模型,是最早被應用到共享單車需求預測的一類方法。Kaltenbrunner等[5]基于巴塞羅那社區自行車項目某站點的數據,運用ARIMA模型,對可用自行車的數量進行了預測。閆廈[6]根據單車需求量的時序性,建立了考慮季節周期的ARIMA模型,該模型可以刻畫出行需求的周期性和趨勢性。盡管ARIMA等統計推斷模型在時間序列建模中顯示出一定的有效性,但是無法刻畫需求量與各影響因素之間的時空依賴性等復雜非線性關系。而且,實際應用中數據的噪聲會降低參數估計的可靠性,因而預測效果不是特別理想。近年來,隨著海量出行數據的積累和計算能力的提高,利用機器學習方法發現交通系統的動態特性逐漸成為一個研究熱點。支持向量回歸(support vector regression, SVR)、隨機森林(random forest, RF)和神經網絡(neural networks, NN)的模型已廣泛用于共享單車的短時需求預測。根據無樁式共享單車需求量的時間序列特征,孔靜[3]建立了基于BP神經網絡的預測方法模型,由于缺乏對天氣、位置等外部影響因素的建模,預測效果并不理想。機器學習算法能夠綜合考慮出行需求的時間序列特征和外部影響因素。研究表明影響單車需求量的外部因素主要包括天氣因素(溫度、降水量、風速等)[7]和位置因素[8],此外還受到人口統計特征、建筑環境特征[9]和交通事件等[10]因素的影響。種穎珊等[11]基于2015年美國灣區70號站點的自行車需求量數據,研究了時間因子、氣象因子以及關聯站點對需求量的影響,建立了基于隨機森林與時空聚類的模型,實現了對有樁自行車需求量的預測。Li等[12]提出了一種分層預測模型,運用二分聚類算法和漸變增強回歸樹模型來預測站點的借還車數量。
盡管機器學習算法可以有效地對共享單車短時出行需求的時間趨勢進行識別和預測,但是很多機器學習算法都是黑箱模型,無法刻畫需求量與影響因素之間的關系,從而使得預測結果的可解釋性較低。在實際建模中,由于數據噪聲、數據量小等原因,單個機器學習算法的預測性能往往不高,對于不同預測任務的泛化性能差[13]。集成學習通過構建并結合多個學習器來完成學習任務,可獲得比單一學習器顯著優越的泛化性能。Stacking策略是一種典型的集成學習方法[14],將初級學習器的輸出作為次級學習器的輸入,從而實現融合多個學習器的預測結果。相較于對弱學習器的結果做平均或者投票等簡單的邏輯處理,Stacking策略能夠結合多個模型的優點,降低泛化誤差,提升預測的準確性。作為刻畫兩變量之間因果關系的分析模型之一,格蘭杰因果關系模型可以刻畫共享單車的出行需求與天氣指標之間的因果關系。灰色關聯分析通過關聯度指標,可以對共享單車系統中不同日期之間的相似程度進行量化分析。
因此,本文基于北京市共享單車用戶的騎行數據和天氣數據,將研究區域劃分為若干網格單元,提出了一種基于Stacking策略的共享單車需求組合預測模型,構建了以神經網絡、隨機森林回歸、支持向量回歸等算法為基模型的不確定性集成模型。該框架通過將多個學習器進行結合,在無樁式共享單車分區域的短時需求量預測任務中可獲得比單一學習器顯著優越的準確性和泛化性能。本文的貢獻在于:一是將格蘭杰因果檢驗方法應用到篩選影響單車需求量的天氣指標中,相較傳統的僅僅依靠皮爾遜相關系數等相關性指標,更加合理;二是充分考慮了待預測日各時段與歷史日的天氣特征向量間的相似性,采用灰色關聯度指標,篩選出具有高度相似性的相似日樣本集,該方法可以對訓練樣本進行有效約簡,減少了模型的訓練時間;三是基于神經網絡、隨機森林回歸、支持向量回歸等算法建立組合預測模型,提高了單車需求量預測模型的預測精度和泛化性能。
同一區域有多個品牌的共享單車,目前各個單車運營企業的車輛調度工作環節是相互獨立的,因此需要針對各個品牌共享單車的需求量分別進行預測??紤]到市場份額、用戶黏性等因素,本文選用北京市摩拜單車用戶騎行數據進行研究,時間范圍是2017年5月10日—31日。北京市是全國共享單車投放數量最多的城市之一,摩拜單車在共享單車投放總量中占比最大。因此選擇北京市摩拜單車用戶騎行數據來研究共享單車的需求預測問題,具有一定的典型性和代表性。通過對單車空間分布的初步研究,發現北京城郊區的單車密度較低,而四環內單車投放密度、出行需求較大,因此選取該區域作為研究對象。研究區域的具體位置為東經116.278°—116.499°,北緯39.836°—39.997°。主要的字段名稱和描述統計見表1。

表1 字段描述
氣象數據和空氣質量數據主要從國家氣象科學數據中心和相關天氣網站(http://rp5.ru)(2017年5月10日—31日)收集得到。獲得的數據包括地面2 m處的溫度和相對濕度、氣象站水平的大氣壓、地面高度10 m處的風速、水平能見度等。將下雨、霧霾、大風、晴天四類天氣事件分別賦值為0、1、2、3。對于殘缺的數據,采用線性插值法進行補全數據。表2匯總了所考慮變量的描述統計量。

表2 天氣指標的描述性統計分析
1.2.1 時間因素的影響

1.2.2 天氣因素的影響
共享單車相比于地鐵、公交等更容易受到天氣、空氣質量等因素的影響。通過計算各天氣指標與需求量的皮爾遜相關系數可知,需求量與溫度、風速、能見度、露點、云量、天氣事件、PM2.5的皮爾遜相關系數分別為0.38、0.21、0.07、0.03、0.09、0.11、0.07,均大于0,因此呈正相關關系;需求量與氣壓、濕度、降水量的皮爾遜相關系數分別為-0.22、-0.26、-0.04,因此呈負相關關系。通過對天氣數據進行統計分析,發現不同日期的天氣狀況差異較大。本文采用的數據中包含了下雨、霧霾、大風、晴天等常見的天氣狀況,因此具有一定的代表性和典型性。
天氣因素是影響需求量的一個重要因素,然而刻畫天氣因素的指標有很多,如何科學地選取指標對提高預測模型的準確度至關重要。有學者從相關性的角度出發,借助皮爾遜相關系數等選取與出行需求相關性較大的天氣指標。然而辛普森悖論的存在證明了相關性的不足,該悖論證明存在隨機變量X和變量Y在邊緣上正相關,但是給定另外一個變量Z后,在Z的每一個水平上,X和Y都具有負相關的可能性[15]。因此僅僅依靠皮爾遜相關系數等相關性指標去篩選天氣指標顯然是不合適的。如何從數據中發現其蘊藏的內在因果關系,是近年來數據科學研究領域的熱點之一。因此,共享單車的出行需求與天氣指標之間的因果關系及其背后的因果機制需要進一步挖掘。
格蘭杰因果關系模型是由諾貝爾經濟學獎得主格蘭杰于1969年首次提出的一種刻畫二變量之間因果關系的分析模型,是數據科學、金融分析、醫學等領域挖掘數據間內在因果關系的重要工具。其基本思想是:若序列X有助于解釋序列Y的未來變化趨勢,即在序列Y關于自身歷史信息的回歸模型中,添加X的歷史信息會顯著地提升回歸模型的解釋能力,那么序列X是序列Y的格蘭杰原因[16]。另外,為了避免非平穩序列帶來的虛假因果,必須保證檢驗的序列是平穩的。
檢驗天氣指標X是否為引起需求量Y變化的格蘭杰原因的步驟如下。
首先,建立如下兩個向量自回歸模型:
(1)
(2)
式中:α0表示常數項;αi和βi是模型的系數;p和q分別為變量需求量Y和天氣指標X的最大滯后期數,可以采用赤池信息準則(Akaike information criterion,AIC)進行確定;εt為白噪聲。若天氣指標X不是引起需求量Y變化的格蘭杰原因,則自回歸模型中系數βi應該為0,因此檢驗的原假設設定為H0:β1=β2=…=βq=0。采用的檢驗統計量分別為兩個自回歸模型,即公式(1)和(2)的殘差平方和R1和R2構造的F統計量。
(3)
式中,R1、R2分別為公式(1)和公式(2)的殘差平方和,n為樣本容量。如果滿足F>Fα(q,n-p-q-1),表明天氣指標X和需求量Y存在統計意義下的格蘭杰因果關系,即天氣指標X有助于預測需求量Y。
當前的需求量預測模型往往會選擇與待預測日相鄰的歷史數據或者依據人工經驗選取的相似日作為輸入,具有一定的盲目性和不合理性。預測的效果往往不理想,尤其是待預測日的天氣狀況與前若干天差別較大時,需求量會發生明顯的波動變化。因此,為了提高需求量的預測精度,合理有效地選取預測相似日非常重要[17]。
通過計算待預測時段與歷史時段的灰色關聯度指標,確定與待預測日各時段相似程度最高且日期屬性(工作日或非工作日)相同的樣本集數據。相似日的灰色關聯度指標計算步驟如下。
首先選取溫度、風速等m個通過格蘭杰因果檢驗的天氣因素構建因素矩陣,則第i時段樣本的天氣特征向量和待預測時段的天氣特征向量可以表示為:
Xi=[xi1,xi2,…,xim],i=1,2,…,N,
(4)
X0=[x01,x02,…,x0m],
(5)
式中,N為歷史同時段樣本總數,xim為第i個樣本的第m個天氣因素值,x0m為待預測時段特征向量的第m個影響因素值。經過無量綱化后得到灰色關聯判斷矩陣,將相同日期屬性的天氣特征向量作為比較序列,然后計算每個比較序列與待預測參考序列對應元素的關聯系數ρik,計算關聯系數的表達式為:
(6)
式中,分辨系數p∈[0,1],分辨系數p值越大,計算出的關聯系數方差越小,區分能力越弱。本文的p值取0.5,并且將比較序列與待預測時段參考序列對應元素關聯系數的均值作為關聯度指標。關聯度指標可以反映各歷史時間段與待預測時段參考序列的關聯關系。關聯度指標的計算公式為:
(7)
依據關聯度指標ri,選取與待預測日各時段關聯度較大的時段數據作為預測模型的輸入。
Stacking策略是一種典型的集成學習方法,能夠綜合各單一模型的特點而具有一定的優越性。Stacking策略的原理如圖2所示。在初始訓練集上訓練得到初級學習器的預測值,然后在包含初級學習器預測值的新數據集中訓練次級學習器,最后將次級學習器的結果輸出作為最終的預測結果。相較于對弱學習器的結果做平均或者投票等簡單的邏輯處理,Stacking策略是通過訓練一個次級學習器將初級弱學習器組合起來,從而能夠降低泛化誤差,提升預測的準確性。

圖2 Stacking策略的原理Fig.2 The principle of Stacking strategy
Stacking策略中初級弱學習器的預測性能對最終輸出結果的準確性有著重要的影響,按照多樣性和準確性的原則,本文選取支持向量回歸(SVR)、隨機森林回歸(RF)、神經網絡(NN)和多元線性回歸(multiple linear regression, MLR)作為第一層的初級學習器,在初始訓練集上訓練得到初級學習器的預測值。常見的次級學習器有多元線性回歸模型和擬合優度法。擬合優度法根據模型的均方誤差(RMSE)的大小來確定各模型的權重系數。模型的權重計算方式如下:
(8)
式中,M為初級學習器的個數。本文提出的Stacking框架集成了多種不同的算法,而且利用灰色關聯度對每個初級學習器的輸入特征集進行了優化,可獲得比單一學習器顯著優越的預測精度和泛化性能。
綜上所述,本文提出了基于因果檢驗和灰色關聯分析的需求量組合預測模型,模型結構如圖3所示。模型算法的步驟如下:
(1)對天氣指標和共享單車需求量進行因果關系檢驗。在特征選擇環節,采用2.1節中的格蘭杰因果檢驗方法,對影響單車需求量的天氣指標進行格蘭杰因果檢驗,篩選出通過檢驗的天氣指標,然后對歷史樣本集進行相似日選取。
(2)基于篩選出的天氣指標,采用灰色關聯分析法來得到與待預測日各時段相似程度最高且日期屬性相同的相似日,形成具有高度相似性的相似日樣本集。
(3)在基于Stacking策略的組合模型中,將與待預測日各時段灰色關聯度最高的若干相似日的需求量作為輸入數據。組合預測模型可以選取支持向量回歸、隨機森林回歸、神經網絡和多元線性回歸等作為第一層的初級學習器。Stacking 框架集成了多種不同的算法,能夠綜合各單一模型所具有的特點而具有一定的優越性。該框架利用灰色關聯度對每個初級學習器的輸入進行了優化,提高了初級學習器的預測性能。

圖3 預測模型框架圖Fig.3 Predictive model framework
對于評估預測方法效果的指標,采用均方誤差(RMSE)、均方根誤差(RRMSE)、平均絕對誤差(RMAE)和平均絕對百分比誤差(RMAPE)來衡量預測值與真實值之間的偏差,其計算公式如下:
(9)
(10)
(11)
(12)

本文采用北京市2017年5月10日—31日的共計3 214 096條共享單車出行數據,對提出的組合模型進行驗證,其中70%的數據為訓練集。為了考察共享單車出行需求的空間特性,本文將原始數據根據位置信息進行網格化處理,即將網格單元作為需求量預測模型的基本空間單位。將研究區域劃分成了1482個邊長為500 m的正方形網格單元。
共享單車的出行需求受地理位置的影響,同一時間不同區域的需求量是不同的。共享單車在某工作日的出行需求的空間分布特征如圖4(a)所示。網格單元的顏色越深,表示該區域需求量越大。同一時間,不同區域的需求量差異較大,共享單車的出行需求具有時空性。圖4(b)是共享單車需求量分布的直方圖,網格單元中共享單車一天的需求量集中在40~100,不同網格區域內出行需求量差異較大。

圖4 共享單車出行需求量的分布Fig.4 Distribution of demand for shared bikes
根據騰訊企鵝情報對中國共享單車發展情況的調查,62.90%的客戶通常在最后一公里使用共享單車[18]?;谡鎸嵉墓蚕韱诬嚦鲂袛祿治?,單次騎行距離的分布如圖5所示,90%的騎行距離小于1244 m,說明了共享單車主要用于短途出行,是解決“最后一公里”的主要出行方式。

圖5 共享單車出行距離分布Fig.5 Distribution of shared bike travel distance
在對天氣指標格進行格蘭杰因果檢驗之前,采用單位根方法進行平穩性檢驗。對于非平穩序列,進行差分化處理,直到通過平穩性檢驗。表3中是在顯著性水平α=0.1下,最終通過格蘭杰因果檢驗的指標。

表3 因果分析結果
檢驗的結果表明,溫度、風速、濕度和氣壓4個天氣指標與共享單車出行需求存在統計意義下的格蘭杰 因果關系,即有助于預測共享單車出行需求量。利用已通過格蘭杰因果檢驗的天氣指標數據,計算待預測日各時段與歷史數據之間的灰色關聯度,通過灰色關聯度的大小來選取待預測日各時段的相似日訓練集。圖6是采樣時刻為5月31日8時與前14個工作日8時的樣本集之間的灰色關聯度??梢钥闯觯c5月31日8時關聯度最大的是5月23日8時的數據,灰色關聯度達到0.946。關聯度最小的是5月25日同時期的數據,僅為0.66。本文依據關聯度指標,各預測時段分別選取5個相似日的歷史數據作為預測模型的輸入。

圖6 相似日的灰色關聯度Fig.6 Gray relevance of similar days
初級學習器和次級學習器的選擇對組合模型的預測精度有著重要影響。本文首先比較了不同組合策略下模型的預測精度。
為了比較不同組合策略的預測精度,確定最優組合模型的結構,本文運用多種組合策略,分別建立需求量預測模型。如表4所示,不同組合策略下的模型預測精度差異較大。策略2采用隨機森林和支持向量回歸作為初級學習器,策略3在策略2的基礎上,初級學習器將隨機森林變為了神經網絡,并新增了線性回歸模型。相較策略2,由于初級學習器的不同,策略3的RMSE下降了20.1%。策略4的初級學習器與策略3相同,但是次級學習器采用擬合優度法。相較策略4,由于次級學習器的不同,策略3的RMSE下降了28%。初級學習器的預測精度對組合模型的預測精度有著重要影響。若初級學習器預測性能較差,可能會造成組合模型的預測精度降低。如相較策略3,策略9新增了隨機森林作為初級學習器,但是策略9的RMSE反而增加了6%。說明組合模型的預測精度與學習器的個數沒有必然聯系,需要深入探究不同學習器的組合策略。由于組合策略3的預測誤差最小,因此本文采用的最優組合模型以神經網絡、線性回歸和支持向量回歸為初級學習器,線性回歸為次級學習器。

表4 組合模型的預測精度
為了驗證相似日選擇方法的有效性,本文按照是否采取基于相似日選取的方法,將模型訓練輸入分為樣本集1和樣本集2。除了ARIMA模型以外,其余機器學習算法均是選取的與待預測日相同日期屬性的樣本集。樣本集1是基于待預測日相鄰前5 d的歷史數據,樣本集2是基于本文提出的相似日方法選取的關聯度最大的5 d歷史數據。不同樣本輸入下的模型預測精度如表5所示??梢钥闯?,相較樣本集1,采用樣本集2作為輸入,隨機森林、神經網絡、多元線性回歸、支持向量回歸的預測誤差都明顯降低,說明采用本文提出的相似日選取方法可以顯著提高傳統模型的預測精度。另外,相較初級學習器中預測精度最高的神經網絡預測模型,本文提出的組合模型的RMAPE下降了9.1%。表明與其他預測基礎模型相比,本文提出的組合模型具有更高的預測精度,可為實際車輛調度提供參考依據。

表5 預測精度比較
共享單車的需求量預測是提高企業服務質量、效益和用戶體驗的關鍵環節。為了篩選出影響單車需求量的關鍵天氣指標,本文引入了格蘭杰因果檢驗方法。為了衡量待預測日各時段與歷史日的天氣特征向量間的相似性,本文采用灰色關聯分析法篩選出了具有高度相似性的相似日樣本集。該方法可以有效地對訓練樣本進行特征選擇,減少了模型的計算訓練時間并提高模型的泛化能力。在基于Stacking策略的組合模型中,以神經網絡、隨機森林回歸、支持向量回歸等算法作為初級學習器,運用多種組合策略,確定的最優組合預測模型綜合了各單一模型所具有優勢,降低了預測誤差并提高了模型的泛化性能。最后以北京市共享單車用戶的騎行數據為實驗數據進行實例分析,驗證了本文模型的準確性。本研究可以用于實際大規模需求預測,為優化共享單車系統布局、實現車輛合理調度提供參考。