王崢
(蘇州科技大學,江蘇 蘇州212200)
準確劃分城市快速路交通狀態能為交通信息發布與服務水平評價提供重要依據,國內外學者提出了許多有效的交通狀態判別方法,其中機器學習算法因其強大的性能得到廣泛關注。
聚類分析方法能夠在沒有任何先驗標簽數據的基礎上對交通流數據進行分類。董紅召等[1]對交通流數據進行模糊聚類,定量分析交通路網的狀態,在此基礎上分析路網密度,對城市道路狀態進行實時判別。錢超等[2]應用FCM算法將交通狀態劃分為四個類別,并利用蒙特卡洛模擬法對聚類精度進行評價。楊慶芳等[3]以高速公路收費依據為基礎建立FCM算法模型判別交通狀態。
經典有監督學習算法支持向量機(SVM)和人工神經網絡(ANN)也被廣泛運用到交通狀態判別當中。于榮,王國祥等[4]對比了SVM三種核函數在交通狀態分類中的優劣性,并提出在數據預處理時歸一化的必要性。李清泉,高德荃等[5]結合模糊理論和SVM建立了模糊SVM模型用于交通狀態分類。董春嬌,邵春福等[6]建立了一種基于優化SVM的城市快速路交通狀態判別方法。李曉斌,徐建閩等[7]利用RBF 神經網絡建立了交通狀態判別模型。巫威眺,靳文舟等[8]提出了基于BP 神經網絡的交通狀態判別模型。
上述文獻為城市快速路交通狀態判別提供了理論基礎,但大部分的文獻都只是單純使用聚類或者分類,入手角度單一,由于數據量大且參數維度高,如果不對參數進行預處理就容易造成運算量大程序運行時間過長或分類結果不精準等情況,因此本文運用先聚類后分類的策略,構建了基于GA-FCM的交通狀態聚類模型,先對大量數據進行聚類預處理后,再使用SVM進行交通狀態分類使之更容易找到分類邊界,提高數據處理效率和分類準確度。
FCM采用梯度下降法尋找最優解,這種計算方法收斂速度快,但存在著對初始化敏感與容易陷入局部最優解等問題。上述缺點導致模糊C 均值應用于交通流狀態劃分時可能無法給出正確的聚類結果。
遺傳算法(GA)[9]是一類借鑒生物界的進化規律演化而來的隨機化搜索方法。在函數求解、參數尋優方面性能強悍,已被廣泛運用到各個領域。考慮到FCM可能會陷入局部最優,本文憑借遺傳算法優秀的全局搜索能力對FCM進行優化。盡管遺傳算法能夠實現全局優化,但其本身也存在一定的缺陷。采用二進制進行染色體的編碼可能會帶來字符串長度、計算精度、運算量等一系列問題。
針對上文的不足,提出一種基于遺傳算法的模糊聚類,采用實數進行編碼,然后進行交叉、變異,最后再結合FCM 算法進行聚類分析。該算法首先使用優化的遺傳算法得到全局最優解的近似解,然后把近似解作為FCM算法的初始值,最后再用FCM 算法求解得到全局最優解[10]。
編碼:采用實數(實值)編碼策略,簡化了編碼過程,提高了算法的收斂速度和全局搜索能力。將C 個聚類中心組成一個染色體,每個聚類中心有S 個特征值,則編碼長度為C*S。染色體的編碼表示形式為:p11p12…pc1pc2…cs。
選擇:
①計算所有個體適應度,找出適應度最高的個體復制到下一代;
交叉:采用單點交叉,隨機產生交叉點并交換兩父體右半部分產生新個體。
變異:在初始交叉概率的基礎上增加了一個權值ω=1-f/fmax,個體的變異概率為ω*Pm,fmax表示種群中的最大適應度,Pm為變異概率。
步驟1:編碼并初始化種群,確定三參數的上下界,分別在三參數上下界中生成3 個隨機數作為1 個初始聚類中心,本文聚類數為4,故執行4 次生成四個聚類中心。將四個隨機生成的初始聚類中心按實數編碼組成一個染色體。
步驟2:確定種群規模,對種群中按步驟一操作生成的染色體進行適應度評價后進行選擇、交叉、變異生成新種群,滿足終止條件后結束遺傳算法。
步驟3:將遺傳算法得到的聚類中心矩陣作為FCM的初始值帶入FCM計算。并輸出最終的聚類中心。
步驟4:將聚類過后的4 類數據分別打上標簽,劃分測試集和訓練集,選擇SVM核函數和確定參數值后進行訓練。
步驟5:分別使用網格搜索法、粒子群算法、遺傳算法對SVM參數值進行優化,確定最優參數組后使用測試集對模型進行測試。
本文選取上海市某城市快速路路段檢測器提供的2017 年8 月19 日24 小時的交通路參數(流量、速度、占有率),采集間隔時間為1 分鐘,共1440 組。
根據交通流運行特性并參考中國道路服務四個等級,采用基于改進遺傳算法的模糊聚類將交通狀態劃分為四類。
算法基本參數:種群數量n=50,最大進化代數T=100,遺傳概率Pc=0.7,變異概率pm=0.1,聚類中心數目n=4,模糊系數m=2,最大迭代次數100,類內距離ε=1*10-5。
4 種交通狀態的聚類中心矩陣:

第一至四行分別代表擁堵、擁擠、平穩、通暢4 種不同的交通狀態。其中第一類樣本271 個,第二類樣本367 個,第三類樣本378 個,第四類樣本424 個。各類交通狀態參數空間分布如圖1 所示。

圖1 交通狀態聚類結果圖
算法收斂圖像如圖2 所示。
由于遺傳算法的全局搜索性能優秀,經過遺傳算法優化得到的FCM目標函數初始值已接近FCM目標函數的極值,將此初始值帶入FCM算法求解迭代公式,由圖可以看到FCM算法迭代10 次以內已經收斂收斂,說明改進過的算法收斂能力強,比單純使用FCM效果好。

圖2 GA-FCM 與FCM 算法收斂曲線對比圖
利用基于遺傳算法的模糊聚類將1440 組交通流參數分成了四類,為確保支持向量機分類的準確性隨機抽取40%的標簽數據作為測試集,60%的標簽數據作為訓練集。
粒子群算法參數設定:局部搜索能力和全局搜索能力參數c1=1.5,c2=1.7,最大進化數量200,最大種群數量20,速率關系參數0.6,速率彈性系數1,種群彈性系數1,搜索范圍C∈[0.1,100],g∈[0.1,100]交叉驗證次數v=3,C=0.5172,g=0.01 時分類效果最優97.7431%。優化過程如圖3 所示。

圖3 粒子群算法迭代適應度曲線
遺傳算法參數設定:最大進化代數T=100,最大種群數量N=20,交叉概率Pc=0.95,變異概率Pm=0.1,搜索范圍C∈[0,100],g∈[0,100] 交 叉 驗 證 次 數v=10,當C=0.96292,g=0.0038147 時分類準確率最優為98.6111%。優化結果過程圖4 所示。
通過3 種參數尋優方法比較,最終確定最優參數組合C=0.96292,g=0.0038147。通過選取的最優參數組合對剩余的576 組標簽數據進行測試,準確率達98.6111%,共錯誤分類8個樣本,其中第一類誤判2 個樣本,第二類誤判3 個樣本,第三類誤判1 個樣本,第四類分類誤判2 個樣本。

圖4 遺傳算法迭代適應度曲線
本文結合了FCM和SVM的優勢,構建了基于模糊聚類和支持向量機的交通狀態判別模型。首先通過基于改進遺傳算法的模糊聚類將交通流參數劃分成四類,分別代表四種交通狀態,并將數據打上標簽;然后劃分測試集和訓練集,通過支持向量機進行訓練集分類,并使用網格搜索法、粒子群算法、遺傳算法進行參數對尋優得到最佳參數組合,最后將最優參數組合用于測試集,實驗結果表明模型性能良好,判別準確率可達98.6111%,判別準確率較高。