王雪芹,肖志豪
(重慶交通大學 交通運輸學院, 重慶 400074)
當前,隨著計算機技術的飛速發展,交通仿真模型變得越來越復雜。為了更好地理解交通仿真模型,管理模型輸出結果的不確定性,有必要對模型參數取值與模型輸出結果之間的關系進行深入研究。提高仿真模型輸出結果的可控性和有效降低仿真運行成本固然重要,但準確刻畫道路交通運行情況才是交通仿真的真正目的。因此,有必要將兩者相結合,在提高模型輸出結果可控性和降低運行成本的同時對模型關鍵參數進行標定,使仿真運行結果更加逼近真實的道路交通運行狀態,從而為交通控制措施制定和交通改善方案驗證等工作提供參考。
國內學者根據我國的實際情況對微觀仿真模型的參數標定進行了大量研究。周晨靜等[1]以微觀仿真模型的參數選取為研究側重點,進一步完善了微觀仿真模型的參數標定過程,以離散度為定量分析指標對各參數離散度的進行量化分析,并根據離散度的大小排序逐步確定關鍵模型參數。王青燕等[2]總結了微觀仿真模型的主要流程,并應用遺傳算法對速度參數進行了標定。唐少虎等[3]針對人工螢火蟲算法的不足,提出了一種改進自適應步長的人工螢火蟲算法,以隊列長度為校驗指標,并結合VISSIM提供的COM接口技術,設計并實現了基于IAGSO算法的北京信號交叉口仿真參數自動修正流程和方法。張月等[4]通過改進群智能優化算法開發了高效準確的參數修正程序,并將其應用于城市快速路出入口的交通仿真。
國外許多學者已經開始將靈敏度分析引入交通仿真模型參數調整研究。目前,最新的靈敏度分析方法根據數據類型可分為定性和定量兩大類。定性方法通常是根據參數對輸出結果的貢獻來識別影響參數和非影響參數。文獻[5]中提出了基于準優化軌跡的基本效應方法,并在文獻[6-7]中用于識別交通仿真模型的影響參數和非影響參數,文獻[8]也表明這種方法對于高維和計算成本高昂的仿真模型參數靈敏度分析是有效的。另一方面,定量方法能夠精確地量化不同模型參數對輸出結果的影響,在這類方法中,一種常用的方法是基于方差的靈敏度分析。文獻[9]應用定量靈敏度分析方法簡化了微觀交通仿真模型,在一定程度上降低了模型計算復雜度;文獻[10]應用這一方法量化了車輛跟馳模型的參數變化對車輛尾氣排放量的影響。除此之外,也有許多定性定量相結合的靈敏度分析方法。例如,文獻[11]將OTEE和基于Kriging的靈敏度分析方法相結合,對車輛跟馳模型中的參數進行識別和排序;文獻[12]應用了多步全局靈敏度分析對交通仿真模型進行調整,從而對交通安全進行分析。
在上述研究的基礎上,將參數靈敏度分析與參數優化取值相結合,應用LH-OAT算法對模型參數進行靈敏度分析;應用GA算法對關鍵參數進行優化取值;結合實測的交通流數據,分別計算了默認參數和標定參數仿真結果的相對誤差。結果表明:對模型參數進行靈敏度分析,從而確定關鍵參數,可提高模型輸出結果的可控性,降低仿真運行的計算成本;對關鍵參數進行標定時,仿真輸出結果更加接近真實的道路交通運行狀態,更能精準刻畫道路交通運行特征。
以VISSIM仿真軟件中的車輛跟馳模型和車輛換道模型為研究對象,對其包含的參數進行靈敏度分析和優化取值。2個模型的主要參數及其取值范圍如表1所示。

表1 2個模型的主要參數及其取值范圍
為了對比默認參數模型與標定參數模型的仿真效果,選取路段平均行駛速度和路段通行能力作為校驗指標。其中,路段通行能力是指單位時間內通過斷面的最大車輛數,根據路段交通量調查可直接獲得;路段平均行駛速度需要結合路段長度以及車輛通過此路段的行駛時間進行計算,具體表示為:
(1)

1.2.1LH-OAT算法
為了增加對模型輸出結果的可控性,從改變模型參數大小對模型輸出結果產生影響的角度出發,引入LH-OAT算法對仿真模型參數的靈敏度進行分析研究,從而確定影響模型輸出結果的關鍵參數,達到增強模型可控性、提高模型運行效率的目的。
LH-OAT算法[13]是一種全局靈敏度分析方法,是LHS和OAT的結合,它綜合了LHS的穩定性和OAT的精準性,能夠有效捕捉影響模型輸出結果的關鍵參數,達到簡化模型的目的。
LHS是一種分層隨機抽樣方法,計算過程具體如下:將n個模型參數分別在其取值范圍內等分成m層,且各參數在每層出現的可能性相等;每個參數選取m個隨機值,保證每個參數在m層取值空間中的每層僅抽樣1次;最后將各參數隨機組合,形成m個參數組合方案。作為一種高效的抽樣方法,LHS能通過較少迭代次數的抽樣準確地重建輸入分布,在變量的分布區間進行高效采樣。
OAT靈敏度分析方法是一種局部靈敏度分析方法,其基本原理是:假設模型包含了n個參數,根據控制變量法的基本原則,每次只對其中1個參數進行微小擾動,其余參數保持不變;將擾動后的參數組合方案代入模型進行試驗,然后將模型輸出結果代入目標函數,計算每次擾動后目標函數的變化情況,從而精準刻畫參數變化對模型輸出結果的影響;共進行n+1模型試驗即可得到各參數的局部靈敏度。
LH-OAT通過LHS對各參數進行分層隨機抽樣,隨機組合得到m個抽樣參數組合;然后應用OAT分別對這m個參數組合中的各參數進行局部靈敏度分析;最后對各參數的局部靈敏度值取平均,從而實現各參數的全局靈敏度分析。LH-OAT的具體計算步驟:
1) 假設模型有n個參數,將每個參數在其取值范圍內等分成m層;
2) 應用LHS在每個分層上抽取1個樣本點,生成m個抽樣參數組(包含所有參數的集合);
3) 為每個分層設置1個參數基準值,并進行k次試驗,將模型輸出結果代入目標函數M。選用納什效率系數(NSE)作為目標函數,計算式為:
(2)

4) 根據局部靈敏度法(OAT)的基本原理,對包含n個參數的抽樣參數組進行n次擾動,每次擾動只改變1個參數的大小,計算每次擾動后抽樣參數組目標函數的變化情況,根據擾動后抽樣參數組和基準參數組的目標函數計算結果,得到各參數的相對靈敏度,計算表達式為:
(3)
式中:TSi,m為第m層參數ei的相對靈敏度,i∈[1,n];Mm為第m層基準參數組的目標函數值;Mm(e1,…eiαi,…en)為第m層抽樣參數組中參數ei擾動后的目標函數值;αi為第m層抽樣參數組中參數ei的擾動幅度,i∈[1,n]。
5) 對各參數的相對靈敏度求均值即可得到各參數的全局靈敏度,表達式為:
(4)
式中:GSi為參數ei的全局靈敏度,i∈[1,n]。
為了使仿真模型參數之間的靈敏度具有可比性,將靈敏度劃分為4個等級,如表2所示。數值越大,說明該參數的靈敏度越高,對仿真模型輸出結果的影響也更大。

表2 靈敏度分類
1.2.2擾動分析法
LH-OAT算法中的OAT在進行局部靈敏度計算時,需要對各參數分層區間的抽樣結果進行一定幅度的擾動。根據擾動分析法[14-15]的基本原理,對參數的擾動幅度進行分析。
擾動分析法的基本原理:假設有n個模型參數,分別對每個模型參數的基準值進行l次不同幅度的擾動,并將擾動后的參數組合方案代入模型進行試驗,計算每次參數擾動后,模型輸出結果的變化率為:
(5)
式中:βl為參數ei進行幅度為αl的擾動后,模型輸出結果的變化率;T(e1,…eiαl,…en)為參數ei進行幅度為αl的擾動后的模型輸出結果;T(e1,…ei,…en)為參數ei為基準值時的模型輸出結果;αl為參數ei的擾動幅度。
由于每個參數都進行了l次不同幅度的擾動,根據相鄰兩次參數擾動后模型輸出結果的變化率,可以得到一個相對變化率,然后對所有相對變化率取平均值,作為模型輸出結果的平均變化率,其計算式見式(6)。根據模型輸出結果的平均變化率可反推得到參數的平均擾動幅度。
(6)
式中:S為模型輸出結果的平均變化率;βj為參數擾動幅度為αj時,模型輸出結果的變化率,j∈[1,l-1];βj+1為參數擾動幅度為αj+1時,模型輸出結果的變化率,j∈[1,l-1];βa為βj和βj+1的均值。
遺傳算法[16](GA)是一種基于自然選擇和群體遺傳機理的搜索算法,它模擬了自然選擇和自然遺傳過程中的繁殖、雜交和突變現象,具有良好的全局搜索能力。在利用GA尋找最優解時,所有可能出現的解都可以被編碼成“染色體”,一定數量的染色體就構成了群體。在GA開始階段,總是隨機產生一定數量的染色體,即編碼初始化;然后根據預定的目標函數對每一代的染色體進行適應度評估,再通過選擇、交叉、變異,生成一代又一代新的染色體,每一代的染色體由于繼承了上一代染色體的優良性狀,因而在性能上要優于上一代,逐步朝著最優解的方向進化。
為了模擬道路交通運行,捕捉道路交通運行特征,進而對道路交通流進行管理控制或對交通改善控制措施進行評估分析,越來越多的仿真模型被開發出來。大多數仿真模型由不同的參數按一定的規則構建而成,不同的道路交通運行條件下,仿真參數的取值也會發生變化。因此,根據實際的道路交通運行情況對交通仿真模型的參數進行優化取值,也可以看作是由仿真模型參數組合方案構成的群體逐步進化的過程。應用GA對仿真模型參數進行優化取值的主要流程如圖1所示。

圖1 遺傳算法流程框圖
遺傳算法(GA)的計算步驟:
1) 編碼初始化。在各參數的取值范圍內隨機產生i個的參數組合方案(即i條初代染色體);
2) 計算適應度函數。將模型參數視為基因,參數組合方案視為染色體,對每條染色體進行適應度評價。把模型輸出結果的相對誤差作為適應度函數,計算式為:
(7)

3) 計算選擇函數。確定變異或重組的染色體,以及被選擇的染色體將產生多少個子代染色體;
4) 變異重組。經過選擇操作保存下來的染色體,首先各參數按照一定的幅度進行擾動,生成一定數量的新參數;然后各參數隨機組合生成一定數量參數組合方案;
5) 判斷迭代終止條件。對新產生參數組合方案進行適應度函數計算,若計算結果逐漸趨于穩定,則停止迭代;否則,繼續進行變異重組等操作,直至滿足迭代終止條件。
根據上述仿真模型參數標定設計方案,選取重慶市內環快速路北環立交進—出型交織區為調研對象,如圖2所示。通過無人機拍攝和人工計數相結合的方法進行交通數據采集。

圖2 交織區示意圖
在交織區路段內設置間距為80 m的2個固定點位。為了簡化模型計算,將2個固定點位的間距視為交織區長度,并測算2個固定點位之間的車輛平均行駛時間和路段車流量。7∶30—8∶30是早高峰調查時段,17∶30—18∶30是晚高峰調查時段,采集流量數據時以15 min為時間間隔,調查數據經過統一處理和測算,結果分別如圖3、表3和表4所示。

圖3 交織區構造圖

表3 交織區幾何數據

表4 交織區流量數據
利用實地調查的交織區段道路幾何數據以及早晚高峰車流量數據,建立VISSIM交通仿真模型。在建立模型時,主線上游輸入流量和進口匝道輸入流量分別設置路徑決策,同時在主線與匝道合流區域設置優先通行規則。當車輛即將行駛到分、合流區域時,車輛往往會受到車流交織的影響進行減速,因此需設置減速區域;由于主線與匝道輸入車輛的期望速度不同,因此分別在進出口匝道處設置期望速度決策點,建立的VISSIM交通仿真模型如圖4所示。

圖4 VISSIM交通仿真模型
除仿真模型參數外,交織路段期望速度分布也是影響仿真結果的關鍵因素。結合爬取到的人和立交至北環立交路段速度數據以及實測交織區段速度數據,采用頻數分析法對交織區段早晚高峰的速度數據進行統計分析,以此校驗車輛的期望速度分布區間。
以10 km/h為間隔統計出每個速度區間的分布比例,并繪制期望速度區間頻數分布圖,如圖5所示。速度區間35~45 km/h區間比例為10%,45~55 km/h區間比例為13%,55~65 km/h區間比例為26%,65~75 km/h區間比例為39%,75~85 km/h區間比例為12%。最后,將期望速度區間分布作為校驗后的主線上游輸入車流的期望速度分布。

圖5 區間車速分布直方圖
應用LH-OAT算法對車輛跟馳模型和車輛換道模型的13個參數進行靈敏度分析。
1) 將各參數在其取值范圍內等分成4個空間層,每層設置1個參數基準值,生成4個基準參數組,分別進行仿真模擬試驗,并將仿真輸出結果帶入目標函數進行計算。
2) 對每層的13個參數隨機抽樣1次,生成4個抽樣參數組;根據參數擾動分析原理,設置10%的擾動幅度,從而對抽樣參數集合進行局部靈敏度計算。
3) 對各參數的局部靈敏度求均值,得到各參數的全局靈敏度,計算結果如表5所示。

表5 仿真模型參數靈敏度值
根據參數靈敏度計算結果,可以發現OBd、Npr、AXaverage、ACCmax、ACCac、D、Tdis、GAPmin、ABX、COac,這10個參數對仿真輸出結果精確度起關鍵影響作用,因此將其作為關鍵影響參數。這在一定程度上簡化了仿真模型,提高了模型輸出結果的可控性,降低了模型運行的計算成本。
2.5.1GA計算步驟
借助Python語言,設計自動仿真運行程序求解各模型參數的標定值。具體實現過程如下:
步驟1編碼初始化。將選定的10個待標定參數分別在其取值范圍內隨機生成70個參數組合方案(70條染色體);
步驟2染色體適應度評價。首先對這70個參數組合方案(染色體)分別開展5次隨機種子實驗(20,60,100,140,180),計算每條染色體仿真輸出結果的相對誤差及其每一代染色體的相對誤差總和,判斷相對誤差總和是否趨于穩定,若滿足條件,則停止迭代,否則進入下一步;
步驟3染色體變異重組。根據每條染色體相對誤差的大小進行排序,選取相對誤差最小的前20條染色體作為父代染色體進行變異重組。變異原則:在父代染色體的基礎上,對各參數進行5%的浮動,生成35條子代染色體;重組原則:在父代染色體的基礎上,利用各參數隨機組合生成35條子代染色體;
步驟4重復步驟2和步驟3,直至迭代結果滿足終止條件,退出實驗。
隨著迭代優化的逐步推進,參數組合方案的相對誤差總和逐漸趨于穩定,共迭代4次,進行 1 400次仿真實驗時達到了終止條件。
2.5.2仿真參數標定結果
選取經GA優化處理最終生成的70條子代染色體作為分析對象,對輸出的平均行駛速度和通行能力取均值,作為此參數組合方案的最終仿真結果,如圖6所示。

圖6 校驗指標仿真結果
將仿真結果與實測值進行誤差分析,選出相對誤差最小且在10%以內的參數組合方案,認為該種方案與真實道路交通運行狀態最為接近。各參數組合方案的相對誤差計算結果如圖7所示。

圖7 仿真結果與實測值相對誤差
通過相對誤差分析可知,第11個參數組合方案的平均行駛速度和路段通行能力的相對誤差皆最小,且相對誤差均在10%以內,對應的仿真輸出結果和誤差分析結果如表6所示。因此,本次仿真參數標定試驗將第11參數組合方案作為最終標定結果,相關參數值如表7所示。

表6 校驗指標值誤差分析

表7 參數標定結果

續表(表7)
2.5.3標定參數驗證分析
上文根據交織區早高峰時段的交通運行數據,搭建了交通仿真模型,并對車輛跟馳模型和車輛換道模型的關鍵參數進行了標定。根據早高峰交通流實測數據,參數標定結果能夠很好地反應交織區早高峰時段的交通運行特征。
為了進一步驗證標定參數的合理性,將該交織區晚高峰時段的交通流數據帶入VISSIM仿真模型,進行5次隨機種子試驗,并對這5次仿真試驗結果取均值,得到交織區晚高峰時段仿真輸出結果的最終值,如表8所示。

表8 交織區晚高峰交通流仿真運行結果
根據交織路段晚高峰交通仿真結果可知,路段平均行駛速度和路段通行能力的仿真輸出結果分別為26.7 km/h和5 483 vehs/h。結合交織區晚高峰時段的實測交通流數據進行誤差分析,校驗指標值見表9。

表9 校驗指標值
由表9可知,參數標定后的交通仿真模型在對交織區晚高峰時段的交通流進行仿真模擬時,校驗指標的輸出結果與實測數據的相對誤差都在10%以內,能夠較好地反映交織區晚高峰時段交通運行的真實情況,進一步說明模型參數得到了合理校正。
1) 應用LH-OAT方法進行仿真模型參數的靈敏度分析。綜合了拉丁超立方抽樣法(LH)的穩定性和局部靈敏度法(OAT)的精確性,并將納什效率系數(NSE)作為目標函數,對仿真模型參數的靈敏度進行了詳盡分析,從而確定了影響仿真模型精度的關鍵參數,提高了仿真模型輸出結果的可控性,降低了仿真模型的運行成本。
2) 在參數靈敏度分析的基礎上,應用遺傳算法(GA)對關鍵參數的取值進行了優化校正。對仿真模型的關鍵參數進行優化取值,使仿真效果更加逼近真實的道路交通運行狀態,從而進行道路交通運行狀態評估,幫助制定交通控制改善措施和進行交通改善設計方案的評估等。
3) 無論是參數靈敏度還是關鍵參數優化取值上都直接選用特定算法進行分析,算法的適用性缺乏充分說明。后續將分別對參數靈敏度分析和優化取值這兩部分進行多算法對比研究,從而選擇精度更高的算法進行模型參數校正。
4) 在進行仿真模型參數標定時,使用的是正常工作日交織區早高峰的交通流數據;進行標定參數的合理性驗證分析時,使用的是正常工作日交織區晚高峰的交通流數據。對于城市快速路交織區而言,早晚高峰時段的車流量運行具有極大的相似性,為了進一步分析標定參數的合理性,后續應考慮正常工作日、固定節假日、極端天氣等多種條件的限制。