[發明專利]基于快速梯度下降的單交叉口信號控制的交通狀態對抗擾動生成方法有效
| 申請號: | 202110813579.3 | 申請日: | 2021-07-19 |
| 公開(公告)號: | CN113487889B | 公開(公告)日: | 2022-06-17 |
| 發明(設計)人: | 徐東偉;王達;李呈斌;周磊 | 申請(專利權)人: | 浙江工業大學 |
| 主分類號: | G08G1/08 | 分類號: | G08G1/08 |
| 代理公司: | 杭州斯可睿專利事務所有限公司 33241 | 代理人: | 王利強 |
| 地址: | 310014 浙江省*** | 國省代碼: | 浙江;33 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 快速 梯度 下降 交叉口 信號 控制 交通 狀態 對抗 擾動 生成 方法 | ||
1.一種基于快速梯度下降的單交叉口信號控制的交通狀態對抗擾動生成方法,其特征在于,所述方法包括以下步驟:
步驟1:在單交叉口道路網格上訓練強化學習智能體模型,訓練完成后模型的網絡參數不再發生變化,且具有較高的遷移性,在單交叉口測試過程中體現出高流暢度且無擁堵發生;
步驟2:在交通路口獲取各個路口輸入端的車輛數量及車輛所處位置即輸入,將當前車輛數與位置輸入到模型中,會生成對應的交通信號燈即輸出動作,利用FGSM攻擊算法,對各個時刻的輸入逐一進行攻擊,得到相應的對抗擾動;
步驟3:對生成的對抗擾動進行離散化處理,再將生成的對抗擾動與原始采集到的交通流量相結合得到最終的擾動狀態即此時輸入到模型中的交通路口車輛數量及其位置;
步驟4:在當前構建的擾動狀態中,對擾動的大小進行限制,當擾動量小于擾動限制時將擾動狀態輸入模型中;當擾動量大于擾動限制時將原始狀態輸入模型;
步驟5:對生成的對抗擾動進行性能的測試,將狀態輸入模型后,智能體會根據當前狀態選取交通信號燈的相位,來控制單交叉口的車流量,最后在sumo上對不同輸入狀態的交通流量得到的紅綠燈相位對應的交通路口的流暢度進行對比;
所述步驟1中,所述單交叉口為十字交叉路口,首先在單交叉口道路網格上訓練強化學習智能體模型,對進入單交叉口的所有道路上的交通狀態進行離散編碼,將單交叉口從路段入口到停車線之間長度為l的道路k等距離劃分為c個離散單元,k=1,2,3,4,將t時刻單交叉口的道路k的車輛位置表示為車輛位置矩陣sk(t),當車輛頭部位于某個離散單元上時,則車輛位置矩陣sk(t)對應第i個位置的值為0.5,i=1,2,…,c,否則值為-0.5,公式表示為:
其中表示車輛位置矩陣sk(t)第i個位置的值,將t時刻四個路口輸入端的車輛位置矩陣sk(t)按行首尾拼接構成st,公式表示為:
st=[s1(t),s2(t),s3(t),s4(t)] (2)
再把st作為環境狀態輸入到智能體模型中訓練,智能體輸出相應的動作即紅綠燈將要執行的相位;
定義交通燈的相位作為動作空間A={a1,a2,a3,a4},其中a1為東西方向綠燈,a2為東西方向左轉綠燈,a3為南北方向綠燈,a4為南北方向左轉綠燈,在運行時設ai的相位的初始時長為m,黃燈相位時長為n,在t時刻將當前狀態st輸入到智能交通燈模型中,智能交通燈選擇相位ai,i=1,2,3,4,當ai相位執行完后,智能交通燈從環境中采集t+1時刻的狀態st+1,然后選擇相位aj,j=1,2,3,4,若ai≠aj則ai相位執行時間不再延長,即ai相位結束,在ai相位結束后智能交通燈執行黃燈相位,在黃燈相位結束后,執行aj相位;若ai=aj,則ai相位執行時間延長m;將獎勵rt設置為兩個連續動作之間路口車輛的等待時間之差,公式表示為:
rt=Wt-Wt+1 (3)
其中Wt,Wt+1分別為t時刻和t+1時刻的進入單交叉口所有車道的等待時間,根據執行的動作再按照環境獎勵對動作進行評判,從而不斷更新網絡的參數,所使用的強化學習模型為DQN,結構包含卷積層、全連接層;參數包含卷積核大小、全連接層神經元的數量,用一個深度神經網絡作為Q值網絡,初始化網絡參數,網絡的輸出就是Q值,隱含層采用Relu非線性激活函數,其中輸出層的神經元個數與單交叉口的動作空間大小相等,公式表示為:
Q=h(wst+b) (4)
其中w代表神經網絡的權重,st為網絡的輸入,b為偏置,h(.)表示Relu激活函數,DQN的損失函數為:
Lt=(yt-Q(st,ai;θ′))2 (6)
其中yt代表目標值,ai,aj∈A表示智能體輸出的動作即紅綠燈相位,rt代表t時刻的獎勵,γ為學習率,θ和θ′分別代表DQN中目標網絡的參數w、b和估計網絡的參數w’、b’,估計網絡的參數是隨著時間步長逐步更新的,目標網絡的參數更新是每隔時間T從估計網絡直接復制網絡的參數,公式表示為:
所述步驟2的過程如下:
2.1:獲取t時刻輸入模型的輸入值st,其中st代表t時刻從sumo獲取的單交叉口輸入端車輛數量及車輛所處位置;
2.2:輸入原始狀態st,經過已經訓練好的DQN智能體模型,選擇出動作值函數Q最大的動作am即此時最優的紅綠燈相位,m=1,2,3,4公式表示為:
其中θ代表訓練好的智能體模型網絡的參數,am表示輸出的動作即紅綠燈將要執行的相位;
2.3:采用FGSM攻擊算法,沿著梯度方向并根據符號函數進行賦值生成t時刻相對應的對抗擾動ηt,公式表示為:
其中ε代表擾動系數,st代表輸入值即車輛所處位置,am代表此時紅綠燈執行的最優相位,sign代表符號函數,Lt(θ,st,am)代表t時刻模型的損失函數;
所述步驟3的過程如下:
3.1:其中c為交通路口輸入端劃分的離散單元數量,代表t時刻第i個離散單元的對抗擾動,計算出t時刻的對抗擾動ηt后,對t時刻的擾動取絕對值并找出其中最大值和最小值并按照大小順序對ηt進行排序得到新的排序數組最后通過i=1,2,…,c對擾動進行離散化處理,使其具有實際物理意義;
3.2:在ηt′中按順序讀取擾動并與原始數據進行比較,若原始狀態與對抗擾動不一致,則將對應擾動賦給對應的原始狀態;若原始狀態與對抗擾動是一致的,則再取ηt′中下一個對抗擾動按上述方式賦值,直到所選的擾動是有效的,最終得到擾動狀態st′;
所述步驟4的過程如下:計算t時刻擾動狀態添加的擾動量μt,公式表示為:
其中len(.)表示計算st和st′中車輛狀態為0.5的個數,當擾動量μt≤δ時,將擾動狀態st′輸入智能體模型中,否則將原始狀態st輸入到智能體模型中;
所述步驟5的過程如下:
5.1:各個時刻的原始狀態st輸入到模型中模型會選擇最優動作控制路口車流量,并計算出交通路口的等待時間之差,即獎勵rt=Wt-Wt+1;
5.2:對添加有效擾動后的最終擾動st′計算擾動量μt,對滿足要求μt≤δ的輸入狀態輸入到智能體模型中輸出動作即紅綠燈相位,此時同樣計算交通路口的等待時間之差,獎勵rt=Wt-Wt+1。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于浙江工業大學,未經浙江工業大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110813579.3/1.html,轉載請聲明來源鉆瓜專利網。





