張青春, 郭振久, 姚 勝, 何孝慈
(淮陰工學院自動化學院,江蘇 淮安 223003)
隨著城市邊界的擴大,停車需求也不斷增加,想要降低誘導系統的服務代價,就必須提高泊位預測精準度。短期泊位預測問題是智能停車系統必須要解決的關鍵難題之一[1],目前被廣泛使用的泊位時間序列預測方法[2-4]主要分為ARIMA傳統預測模型和神經網絡模型兩大類[5-6],例如,劉東輝等采用粒子群優化算法,提出了基于粒子群和LSTM模型的變區間短時停車需求預測方法[7]。隨著私家車的數量越來越多,人們對泊位預測精度的需求越來越高,人工神經網絡等機器學習方法因具有較強的學習和模擬能力,預測效果好等優點,得到廣泛使用。
麻雀算法(sparrow search algorithm,SSA)于2020年由薛建凱[8-10]首次提出,是基于麻雀種群的覓食和反捕食行為的一種新型智能優化算法。考慮所有可能的群體行為因素,快速收斂到具有高穩定性的最優值附近,是目前智能算法優化BP參數廣泛的應用方式之一。但麻雀算法仍存在傳統智能算法對初始解依賴,易陷入局部最優值等缺點。
為了提升麻雀搜索算法的綜合性能,國內外學者對其進行了相關的改進研究,主要的改進方法有改變種群初始化方式提升種群質量、擴大搜索范圍、優化個體位置更新方式提升算法性能和收斂性能、引入變異算子方式[11-14]增強跳出局部空間的能力,上述文獻雖然從不同角度對智能算法進行改進,一定程度上跳出了局部空間的能力,但仍存在收斂效果不理想、開發能力不足等缺陷。
因此,為了提高麻雀搜索最優解的質量和提高收斂性能,引入了動態模糊學習策略(DFLS),使最佳解的鄰域發生微小變化,增強算法跳出局部空間的能力,從而避免陷入局部最優,提高所獲得解的質量,使得模型的預測精度和收斂速度顯著提高。
該算法主要分為五個步驟:首先利用小波分解對車位空閑率序列進行變換[15-16],得到不同頻率的子分量;然后,通過麻雀算法和動態模糊學習策略尋找最優權重和閾值,搭建神經網絡預測模型;接著,將各分量分別帶入模型中,其次,將訓練數據輸入到麻雀神經網絡中并進行預測得到預測結果,最后將各個時間序列分解后得到的結果相加即為最終預測結果,算法流程圖如圖1所示。
圖1 算法流程示意圖
SSA是一種受麻雀覓食和反掠奪行為啟發的群體優化算法考慮所有可能的群體行為因素,快速收斂到具有高穩定性的最優值附近,用于全局最優搜索。
根據覓食規則,麻雀分為發現者和加入者。其中n只麻雀的種群可以表示如下:
式中:d——要優化的問題變量的維度;
i——麻雀的數量。
在Sparrow算法中,該算法在搜索最優食物的過程中具有較好的適應度的發現者,它負責為所有麻雀種群搜尋食物,并為所有參與搜索食物的加入者提供捕食指導。在每一次迭代計算中,發現者的位置更新如下:
麻雀種群的開發階段是對加入者行為的模擬,通過向發現者逐漸靠攏的方式進行,搜索方式圍繞當前的最優個體進行,具有相對較小的步長,難以擺脫局部極值的束縛。Zadeh在1965年提出了模糊集(FS)的主要概念。FS不同于普通的集合,在模糊集中S被描述為模糊集的隸屬度函數。模糊學習主要通過構造隸屬函數對近似最優解進行微小擾動,提升抗局部極值能力。基于隨機數θ,包圍最優解的切割水平線確定的可為駐留的最優解局部區域的邊界劃分不同的梯度。為讓個體能夠更好地尋到最優解,將模糊學習策略融入到麻雀算法中,數學表征如下:
圖2 模糊表示
雖然模糊規則可以提高算法躍出局部空間的能力,但無法確定擾動之后獲得的新位置是否要優于初始位置的適應度值,因此在進行擾動變異更新之后,將引入貪婪規則來確定是否根據新舊位置的適應度值更新位置。如果,那么表示的位置適應度值。
模糊學習改進的麻雀算法優化BP步驟如圖3所示。
圖3 用于麻雀搜索和模糊學習優化BP流程圖
影響泊位預測精度的因素分為兩方面:一是停車場自身固定不可改變的屬性。二是受外界因素影響,如天氣、氣壓、溫度都會導致。
本文實驗數據源自丹麥奧胡斯市(Aarhus)數據,該數據集包括奧胡斯市11個停車場數據,本文使用數據集選用SCANDCENTER該地區2018年3月數據1831條(按7∶3劃分訓練集與測試集)。數據信息包括停車場ID、總停車數、總停車場泊位數及當月天氣數據。
首先對時間序列數據進行PCA特征提取,提取后獲得7個特征輸入。其次使用“db5”函數作為小波分析函數,小波分解層數采用實驗的方式來確定分解層數M的值,最終分解層數選擇3層,重構后得到4個停車泊位時間序列
在本節中,我們首先確定訓練過程中輸入層、隱藏層和輸出層的具體結構參數。然后使用SSA搜索最佳權重和偏差。初始化的麻雀種群參數包括麻雀種群數量、發現者比例、警告值、最大迭代次數。SSA的適應度函數可以根據優化過程中的誤差設置為神經網絡的誤差函數。最后,我們根據最優權重和最優偏差預測泊位時間序列,由上述可知,BP神經網絡輸入節點數目為7,隱藏層節點個數為15個,輸出節點個數為1個。
本文實驗誤差采用平均絕對誤差(MAE)、均方根誤差 (RMSE),即
本節展示了BP、LSTM、GA-BP、PSO-BP、DSSABP結果。訓練后,分別使用公式為預測范圍中的每一個計算平均相對誤差和均方誤差。對這兩個模型進行了一系列獨立的訓練和測試運行,并且在每種情況下對運行的結果求平均。結果如表1、表2所示。
表1 預測模型RMSE值
表2 預測模型MAE值
從表1、表2可知,上述5種模型的預測值偏差均在正常范圍內,當數據樣本數量從1 000下降到400時,MAE的值越來越大,BP模型偏差結果越明顯,對比BP與組合預測這兩大組數據,不難看出隨著樣本的減少,本文提出模型預測效果大于BP模型,在加入小波變換去噪后,降低了泊位時間序列受隨機性等不可控因素的影響,預測精度得到了進一步提高,對于停車泊位預測這種短期預測具有良好的特性。
從圖4可看出,當停車位變化波動較大時,這三種模型的預測精度都呈下降趨勢。尤其在步長45~50之間,BP、LSTM、GA-BP、PSO-GA 模型預測偏差較大,但本文提出的組合預測模型仿真得到的結果預測精度更高,可以快速跟蹤時間序列變化,保持在一個較為穩定的水平。
圖4 預測模型結果對比
圖5為樣本數量1 200時各模型對比數據。圖5揭示了在步長為130~210之間時,當前剩余停車車位較多時,可以清楚地看出本文提出算法停車位變化趨勢與真實值更為接近,擬合精度遠高于其他算法,DSSA-B可以更好地對停車位趨勢進行預測,是一種擬合效果較好的停車位預測模型。
圖5 樣本數量 1 200 時預測模型結果對比
綜上所述,本文提出算法與其他算法綜合比較在預測性能上得到了一定的提升,具有更高的預測精度,證明了算法在預測任務方面的有效性
為分析停車場的車位空閑率變化情況,提出了一種基于麻雀優化神經網絡的泊位預測方法,該方法首先對車位空閑時間序列進行小波分解,然后通過SSA算法對BP的權值及閾值進行了尋優,針對麻雀算法在迭代后期麻雀個體迅速同化的情況,采取動態模糊學習策略,在最優解鄰域進行擾動,增強算法跳出局部空間的能力。最后以奧胡斯市停車場數據進行實驗,結果表明本文方法對剩余停車位預測有更高的精準度,其平均絕對誤差和均方根指標均有明顯降低,說明該方法在剩余停車位預測中是有效的。