一种基于深度强化学习算法的多智能体道路交通信号控制方法
未命名
10-18
阅读:169
评论:0
1.本发明涉及一种交通信号控制方法,尤其涉及一种基于深度强化学习算法的多智能体道路交通信号控制方法。属于智慧交通车辆人工智能控制技术领域。
背景技术:
2.近年来,交通拥堵浪费通行时间,加剧尾气排放,造成严重的经济损失。对交通信号进行控制能一定程度上缓解交通拥堵。目前,随着强化学习的快速发展,研究人员发现强化学习是解决交通信号控制问题最合适的框架,开始研究强化学习技术实现交通信号的协作。特别的,在大规模的道路网络中,交叉口之间的合作对于缓解交通拥堵至关重要。
技术实现要素:
3.一种基于深度强化学习算法的多智能体道路交通信号控制方法的提出,目的是解决城市交通信号控制方案的不足,实现了充分利用城市道路资源,减少道路潜在的车堵塞问题,提高了车辆通过路口的效率和乘客的安全舒适度。
4.本发明的技术解决方案是这样实现的:
5.一种基于深度强化学习算法的多智能体道路交通信号控制方法,其特征在于,使用仿真软件sumo创建多个不同岔路口道路环境,根据不同的岔路口设计不同的动作空间、状态空间和奖励函数,基于深度q学习算法构建多智能体q网络,然后训练直至收敛并且智能体之间达到nash均衡,最后通过sumo中的traci接口达到和环境交互,该发明方法包括以下步骤:
6.步骤一、将大规模交通信号系统控制的交通路网构建为一个有向图,有向图的节点表示交通路口,边表示道路,大规模交通信号控制系统模型包括多个智能体,每个智能体与交通路网中的交通路口一一对应,猎取道路交叉口信息和交通车辆流量信息,根据以上数据用仿真软件对交通干线进行仿真,还原真实道路交叉口车辆交汇信息;
7.步骤二、从仿真环境中获取交叉口环境的信息,根据获取的环境信息设置深度强化学习模型的状态空间,状态空间作为深度强化学习模型的输入,深度强化学习模型的状态空间由大规模交通信号系统控制的各个交通路口的状态组成,模型的状态空间o表示为:
[0008][0009]
其中,表示智能体i当前的动作a,表示智能体i的f个车流方向的等待车的车辆数,表示智能体i的相邻智能体准备去往智能体i的f*个车流方向的等待车的车辆数,智能体准备去往智能体i的f*个车流方向的等待车的车辆数,表示智能体i相邻的r个智能体当前的q值,也称期望奖励值;
[0010]
步骤三、设置深度强化学习模型的动作空间,模型的动作空间由大规模交通信号
系统控制的各个交通路口的动作组成,不同的智能体有不同的动作空间,并且每个智能体拥有两个动作空间a和a*,同一个智能体的两个状态空间a和a*的执行动作时长不同,用来应对道路不同时期的变化流量的情况,当路口等待车辆数大于交叉口流量阈值时,使用动作空间a,否则使用动作空间a*,四相位十字路口智能体i的动作空间表示为:
[0011]ai
/ai*=[a1,a2,a3,a4],
[0012]
其中,[a1,a2,a3,a4]分别为[wet,nst,wel,nsl],wet代表东西直行通行,nst代表南北直行通行,wel代表东西左转通行,nsl代表南北左转通行;
[0013]
二相位闸道合流智能体j的动作空间表示为:
[0014]aj
/aj*=[a1,a2]
[0015]
其中[a1,a2]分别为[p,s],p表示可以通行,s表示不可以通行;
[0016]
当智能体执行的动作发生变化时,即绿灯通行车道发生变化时需要插入执行黄灯相位,以减缓绿灯相位突然变化带来的车辆安全问题;
[0017]
步骤四、设置深度强化学习模型的奖励值函数,当交叉口根据模型的输出做出相应的动作后,根据变化的环境信息给交叉口做出的动作进行打分也就是奖励值,不同智能体所处的环境不同,奖励函数也不同:
[0018]
(1)r1函数是指十字路口或者丁字路口的奖励函数:
[0019]
r1=ω1*r
people
+ω2*r
vehicle
[0020]
其中,ω1,ω2分别对应的权重,ω1+ω2=1;r
people
=∑kw
t
(k)-∑kw
t-1
(k),表示t时刻所有行人等待的总时长和t-1时刻道路上所有行人等待的总时长的差值,k表示该路口所有的人行道;r
vehicle
=∑
l
p
t
(l)-∑
l
p
t-1
(l),表示t时刻当前道路上所有车辆速度为0的总时长和t-1时刻道路上所有车辆速度为0的总时长的差值,l表示该路口所有的进车道;
[0021]
(2)闸道合流的奖励值函数r2:
[0022]
r2=μ1*r
safety
+μ2*r
com
[0023]
其中,r
safety
为安全子奖励,r
com
舒适子奖励,μ1,μ2分别为对应子奖励的权重,μ1+μ2=1;
[0024]rsafety
安全子奖励根据当前智能体动作做出第一次判断,当智能体做出动作s时,安全子奖励r
safety
=0;当智能体执行动作为p时,再根据车辆间的间距做出第二次判断,当车辆间距小于最小安全间距时,安全子奖励r
safety
=-100,当车辆间距大于最小安全间距时,舒适子奖励其中d
i,e
表示自车纵向位置,d
i,fdi,h
分别表示主车道前后车辆的纵向位置,s
i,e
表示自车纵向速度,s
i,f
,s
i,h
分别表示主车道前后车辆的纵向速度;
[0025]rcom
舒适子奖励,
[0026]
其中r
wait
是指当前车辆的等待时长,r
dif
表示当前车辆的速度和主车道上海前后车辆的平均速度的差值,分别为对应子奖励的权重,
[0027]
步骤五、初始化经验回放池,获取大规模交通信号系统控制的多个智能体的状态、当前状态下的动作、期望奖励值动作以及完成动作后下一个状态存入经验回放池,当经验回放池中的数据存储量大于最小存储量时,从中抽取一批存储的数据用以神经网络训练;每抽取一批数据训练称作一集,设置目标抽取的训练集数;
[0028]
步骤六、构建深度神经网络来拟合状态-动作价值函数,神经网络的输入是由从仿真环境中获取的状态信息构成的状态空间,神经网络的输出为输入状态下的每个动作的q值,即当前状态下每个动作的期望奖励值,其中智能体利用q学习方程来更新q值,q学习方程为:
[0029]
q(s,a)=r
t
+γ*maxaq(o
t+1
,a)a∈a/a*
[0030]
其中r
t
为当前动作的奖励,γ是损失因子,maxq(o
t+1
,a)表示将状态o
t+1
输入的神经网络,然后输出的最大q值;从经验回放池中抽取存储的数据来,使用神经网络输出的q值和更新后的q值通过均方差损失函数来训练神经网络网络,直至训练集数达到要求的目标训练集数,使各个智能体之间达到nsah均衡并且目标网络收敛;
[0031]
步骤七、通过traci接口获取sumo仿真软件产生的实时车辆状态信息输入训练完成的多智能体道路交通信号控制模型,每个路口得出对应的决策行为,并返回sumo执行相应的相位。
[0032]
与现有技术相比较,本发明的优点是显而易见的,主要表现在:
[0033]
1、本发明提出了多动作空间的方法,当智能体所处的环境或者某一环境条件达到某一个阈值时,更换当前的动作空间,使当前动作空间更符合的当前环境;
[0034]
2、本发明定义了新的交叉口状态表示方法,不在局限于传统的单智能体路口的状态表示方法,加入了预计进入该路口的的车辆数和相邻路口的奖励值,可以有效地提高多个路口之间的联系;
[0035]
3、本发明定义了新的奖励函数,并且对于不同的插口场景使用不同的奖励函数,对于十字路口或丁字口使用的奖励函数包含了车辆等待时间和行人等待时间,在考虑车辆快速通过的情况下,将行人的舒适感也考虑在内;对于闸道合流的情况下,将车辆安全和乘客舒适度考虑在内。这样可以避免传统的强化学习过度考虑解决道路而忽略行人和乘客的舒适度问题。
附图说明
[0036]
本发明共有附图2幅。
[0037]
图1是本发明的实施例中的路网示意图;
[0038]
图2是本发明的控制方法流程图。
具体实施方式
[0039]
如图1、2所示的一种基于深度强化学习算法的多智能体道路交通信号控制方法,其特征在于,使用仿真软件sumo创建多个不同岔路口道路环境,根据不同的岔路口设计不同的动作空间、状态空间和奖励函数,基于深度q学习算法构建多智能体q网络,然后训练直至收敛并且智能体之间达到nash均衡,最后通过sumo中的traci接口达到和环境交互,该发明方法包括以下步骤:
[0040]
步骤一、将大规模交通信号系统控制的交通路网构建为一个有向图,有向图的节点表示交通路口,边表示道路,大规模交通信号控制系统模型包括多个智能体,每个智能体与交通路网中的交通路口一一对应,猎取道路交叉口信息和交通车辆流量信息,根据以上数据用仿真软件对交通干线进行仿真,还原真实道路交叉口车辆交汇信息;
[0041]
步骤二、从仿真环境中获取交叉口环境的信息,根据获取的环境信息设置深度强化学习模型的状态空间,状态空间作为深度强化学习模型的输入,深度强化学习模型的状态空间由大规模交通信号系统控制的各个交通路口的状态组成,模型的状态空间o表示为:
[0042][0043]
其中,表示智能体i当前的动作a,表示智能体i当前的动作a,表示智能体i的f个车流方向的等待车的车辆数,表示智能体i的相邻智能体准备去往智能体i的f*个车流方向的等待车的车辆数,表示智能体i相邻的r个智能体当前的q值,也称期望奖励值;
[0044]
步骤三、设置深度强化学习模型的动作空间,模型的动作空间由大规模交通信号系统控制的各个交通路口的动作组成,不同的智能体有不同的动作空间,并且每个智能体拥有两个动作空间a和a*,同一个智能体的两个状态空间a和a*的执行动作时长不同,用来应对道路不同时期的变化流量的情况,当路口等待车辆数大于交叉口流量阈值时,使用动作空间a,否则使用动作空间a*,四相位十字路口智能体i的动作空间表示为:
[0045]ai
/ai*=[a1,a2,a3,a4],
[0046]
其中,[a1,a2,a3,a4]分别为[wet,nst,wel,nsl],wet代表东西直行通行,nst代表南北直行通行,wel代表东西左转通行,nsl代表南北左转通行;
[0047]
二相位闸道合流智能体j的动作空间表示为:
[0048]aj
/aj*=[a1,a2]
[0049]
其中[a1,a2]分别为[p,s],p表示可以通行,s表示不可以通行;
[0050]
当智能体执行的动作发生变化时,即绿灯通行车道发生变化时需要插入执行黄灯相位,以减缓绿灯相位突然变化带来的车辆安全问题;
[0051]
步骤四、设置深度强化学习模型的奖励值函数,当交叉口根据模型的输出做出相应的动作后,根据变化的环境信息给交叉口做出的动作进行打分也就是奖励值,不同智能体所处的环境不同,奖励函数也不同:
[0052]
(1)r1函数是指十字路口或者丁字路口的奖励函数:
[0053]
r1=ω1*r
people
+ω2*r
vehicle
[0054]
其中,ω1,ω2分别对应的权重,ω1+ω2=1;r
people
=∑kw
t
(k)-∑kw
t-1
(k),表示t时刻所有行人等待的总时长和t-1时刻道路上所有行人等待的总时长的差值,k表示该路口所有的人行道;r
vehicle
=∑
l
p
t
(l)-∑
l
p
t-1
(l),表示t时刻当前道路上所有车辆速度为0的总时长和t-1时刻道路上所有车辆速度为0的总时长的差值,l表示该路口所有的进车道;
[0055]
(2)闸道合流的奖励值函数r2:
[0056]
r2=μ1*r
safety
+μ2*r
com
[0057]
其中,r
safety
为安全子奖励,r
com
舒适子奖励,μ1,μ2分别为对应子奖励的权重,μ1+μ2=1;
[0058]rsafety
安全子奖励根据当前智能体动作做出第一次判断,当智能体做出动作s时,安全子奖励r
safety
=0;当智能体执行动作为p时,再根据车辆间的间距做出第二次判断,当车辆间距小于最小安全间距时,安全子奖励r
safety
=-100,当车辆间距大于最小安全间距
时,舒适子奖励其中d
i,e
表示自车纵向位置,d
i,fdi,h
分别表示主车道前后车辆的纵向位置,s
i,e
表示自车纵向速度,s
i,f
,s
i,h
分别表示主车道前后车辆的纵向速度;
[0059]rcom
舒适子奖励,
[0060]
其中r
wait
是指当前车辆的等待时长,r
dif
表示当前车辆的速度和主车道上海前后车辆的平均速度的差值,分别为对应子奖励的权重,
[0061]
步骤五、初始化经验回放池,获取大规模交通信号系统控制的多个智能体的状态、当前状态下的动作、期望奖励值动作以及完成动作后下一个状态存入经验回放池,当经验回放池中的数据存储量大于最小存储量时,从中抽取一批存储的数据用以神经网络训练;每抽取一批数据训练称作一集,设置目标抽取的训练集数;
[0062]
步骤六、构建深度神经网络来拟合状态-动作价值函数,神经网络的输入是由从仿真环境中获取的状态信息构成的状态空间,神经网络的输出为输入状态下的每个动作的q值,即当前状态下每个动作的期望奖励值,其中智能体利用q学习方程来更新q值,q学习方程为:
[0063]
q(s,a)=r
t
+γ*maxaq(o
t+1
,a)a∈a/a*
[0064]
其中r
t
为当前动作的奖励,γ是损失因子,maxq(o
t+1
,a)表示将状态o
t+1
输入的神经网络,然后输出的最大q值;从经验回放池中抽取存储的数据来,使用神经网络输出的q值和更新后的q值通过均方差损失函数来训练神经网络网络,直至训练集数达到要求的目标训练集数,使各个智能体之间达到nsah均衡并且目标网络收敛;
[0065]
步骤七、通过traci接口获取sumo仿真软件产生的实时车辆状态信息输入训练完成的多智能体道路交通信号控制模型,每个路口得出对应的决策行为,并返回sumo执行相应的相位。
技术特征:
1.一种基于深度强化学习算法的多智能体道路交通信号控制方法,其特征在于,使用仿真软件sumo创建多个不同岔路口道路环境,根据不同的岔路口设计不同的动作空间、状态空间和奖励函数,基于深度q学习算法构建多智能体q网络,然后训练直至收敛并且智能体之间达到nash均衡,最后通过sumo中的traci接口达到和环境交互,该发明方法包括以下步骤:步骤一、将大规模交通信号系统控制的交通路网构建为一个有向图,有向图的节点表示交通路口,边表示道路,大规模交通信号控制系统模型包括多个智能体,每个智能体与交通路网中的交通路口一一对应,猎取道路交叉口信息和交通车辆流量信息,根据以上数据用仿真软件对交通干线进行仿真,还原真实道路交叉口车辆交汇信息;步骤二、从仿真环境中获取交叉口环境的信息,根据获取的环境信息设置深度强化学习模型的状态空间,状态空间作为深度强化学习模型的输入,深度强化学习模型的状态空间由大规模交通信号系统控制的各个交通路口的状态组成,模型的状态空间o表示为:其中,表示智能体i当前的动作a,表示智能体i的f个车流方向的等待车的车辆数,表示智能体i的相邻智能体准备去往智能体i的f*个车流方向的等待车的车辆数,体准备去往智能体i的f*个车流方向的等待车的车辆数,表示智能体i相邻的r个智能体当前的q值,也称期望奖励值;步骤三、设置深度强化学习模型的动作空间,模型的动作空间由大规模交通信号系统控制的各个交通路口的动作组成,不同的智能体有不同的动作空间,并且每个智能体拥有两个动作空间a和a*,同一个智能体的两个状态空间a和a*的执行动作时长不同,用来应对道路不同时期的变化流量的情况,当路口等待车辆数大于交叉口流量阈值时,使用动作空间a,否则使用动作空间a*,四相位十字路口智能体i的动作空间表示为:a
i
/a
i
*=[a1,a2,a3,a4],其中,[a1,a2,a3,a4]分别为[wet,nst,wel,nsl],wet代表东西直行通行,nst代表南北直行通行,wel代表东西左转通行,nsl代表南北左转通行;二相位闸道合流智能体j的动作空间表示为:a
j
/a
j
*=[a1,a2]其中[a1,a2]分别为[p,s],p表示可以通行,s表示不可以通行;当智能体执行的动作发生变化时,即绿灯通行车道发生变化时需要插入执行黄灯相位,以减缓绿灯相位突然变化带来的车辆安全问题;步骤四、设置深度强化学习模型的奖励值函数,当交叉口根据模型的输出做出相应的动作后,根据变化的环境信息给交叉口做出的动作进行打分也就是奖励值,不同智能体所处的环境不同,奖励函数也不同:(1)r1函数是指十字路口或者丁字路口的奖励函数:r1=ω1*r
people
+ω2*r
vehicle
其中,ω1,ω2分别对应的权重,ω1+ω2=1;r
people
=∑
k
w
t
(k)-∑
k
w
t-1
(k),表示t时刻所有行人等待的总时长和t-1时刻道路上所有行人等待的总时长的差值,k表示该路口所有的
人行道;r
vehicle
=∑
l
p
t
(l)-∑
l
p
t-1
(l),表示t时刻当前道路上所有车辆速度为0的总时长和t-1时刻道路上所有车辆速度为0的总时长的差值,l表示该路口所有的进车道;(2)闸道合流的奖励值函数r2:r2=μ1*r
safety
+μ2*r
com
其中,r
safety
为安全子奖励,r
com
舒适子奖励,μ1,μ2分别为对应子奖励的权重,μ1+μ2=1;r
safety
安全子奖励根据当前智能体动作做出第一次判断,当智能体做出动作s时,安全子奖励r
safety
=0;当智能体执行动作为p时,再根据车辆间的间距做出第二次判断,当车辆间距小于最小安全间距时,安全子奖励r
safety
=-100,当车辆间距大于最小安全间距时,舒适子奖励其中d
i,e
表示自车纵向位置,d
i,f
d
i,h
分别表示主车道前后车辆的纵向位置,s
i,e
表示自车纵向速度,s
i,f
,s
i,h
分别表示主车道前后车辆的纵向速度;r
com
舒适子奖励,其中r
wait
是指当前车辆的等待时长,r
dif
表示当前车辆的速度和主车道上海前后车辆的平均速度的差值,分别为对应子奖励的权重,步骤五、初始化经验回放池,获取大规模交通信号系统控制的多个智能体的状态、当前状态下的动作、期望奖励值动作以及完成动作后下一个状态存入经验回放池,当经验回放池中的数据存储量大于最小存储量时,从中抽取一批存储的数据用以神经网络训练;每抽取一批数据训练称作一集,设置目标抽取的训练集数;步骤六、构建深度神经网络来拟合状态-动作价值函数,神经网络的输入是由从仿真环境中获取的状态信息构成的状态空间,神经网络的输出为输入状态下的每个动作的q值,即当前状态下每个动作的期望奖励值,其中智能体利用q学习方程来更新q值,q学习方程为:q(s,a)=r
t
+γ*max
a
q(o
t+1
,a)a∈a/a*其中r
t
为当前动作的奖励,γ是损失因子,maxq(o
t+1
,a)表示将状态o
t+1
输入的神经网络,然后输出的最大q值;从经验回放池中抽取存储的数据来,使用神经网络输出的q值和更新后的q值通过均方差损失函数来训练神经网络网络,直至训练集数达到要求的目标训练集数,使各个智能体之间达到nsah均衡并且目标网络收敛;步骤七、通过traci接口获取sumo仿真软件产生的实时车辆状态信息输入训练完成的多智能体道路交通信号控制模型,每个路口得出对应的决策行为,并返回sumo执行相应的相位。
技术总结
一种基于深度强化学习算法的道路交通信号控制优化方法,包括:根据路网环境信息和当前时刻路口车辆流量信息确认所述交叉口所处的状态信息;在原有MUDQN算法提出了多个动作空间,在不同的条件下,执行不同动作空间里的动作,并且提出了新的状态空间和新的奖励函数。利用经验回放池中存储的数据来训练我们的模型,使多个智能体最终达到NASH均衡状态。其中,该交通信号控制优化方法的输入参数为对应于所述信号灯的交叉口观测信息和相邻路口当前获得的奖励值,该交通信号控制模型的模块的输出参数为当前时刻所述信号灯的相位。输出参数为当前时刻所述信号灯的相位。输出参数为当前时刻所述信号灯的相位。
技术研发人员:刘丽娟 司桦
受保护的技术使用者:大连交通大学
技术研发日:2023.07.21
技术公布日:2023/10/11
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
