[发明专利]基于快速梯度下降的单交叉口信号控制的交通状态对抗扰动生成方法有效
申请号: | 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.vipzhuanli.com/pat/books/202110813579.3/1.html,转载请声明来源钻瓜专利网。