一种基于深度强化学习的交通信号控制方法与流程

文档序号:23619805发布日期:2021-01-12 10:30阅读:270来源:国知局
一种基于深度强化学习的交通信号控制方法与流程

本发明涉及智能交通的交通信号控制方法,交通信号控制方法主要用于城市道路交通管理,不仅可以引导和调度交通流,也可以缓解交通拥堵、提高交通通行效率、减少交通事故。



背景技术:

交通信号控制是在无法实现道路交通流空间分离的地方,主要是指平面道路交叉口,在时间上给相互冲突的交通流分配通行权的一种交通管理措施。交通信号控制是城市交通管理的重要手段,交通信号控制的水平在很大程度上决定了城市道路网络的运行质量。优质的交通信号控制方法能够有效引导和调度交通流,增加道路交叉口的通行能力、降低道路交叉口碰撞事故的发生率,提高交通系统的整体通行效率;而设计不完善的交通信号控制方法则会降低城市道路利用率、增加车辆延误和加重交通拥堵。

人工智能技术的快速发展,也为交通信号控制带来了新的发展。强化学习(rl:reinforcementlearning)是机器学习的一个重要分支,它不需要建立环境模型,可以通过智能体与外部环境的不断交互与试错完成顺序决策,能够在时变性和随机性较强的城市道路交通系统中实现高效的自适应控制,由此成为了交通信号控制的研究热点。基于强化学习的交通信号控制方法可以分为两类:第一类方法是基于值函数的强化学习方法,如q学习、sarsa等方法。这类方法必须依靠状态值函数或状态-动作值函数才能完成决策,但是在实际应用中这类值函数很难准确估计,而且算法时间复杂度与状态和动作空间相关,在面对高维行为空间建模时,就会表现出收敛速度慢和时间复杂度高等缺陷;第二类方法是基于策略的强化学习方法,如策略梯度法,trpo算法等。虽然这类方法的时间复杂度较低,但采样轨迹方差大、模型训练效率低、模型收敛效果差。

目前,现有的基于强化学习的交通信号控制方法存在以下问题:1)现有方法的交通信号控制效果有待提升。基于值函数的强化学习算法在复杂的城市路网系统中很难训练出准确的值函数,而且状态和动作空间过高时会导致维度灾难;基于策略的强化学习算法时间复杂度较低,但采样轨迹方差大,模型训练效率低且收敛效果差;2)现有方法的可行性和安全性都偏低。目前大多数强化学习方法都采用相位顺序不固定的信号控制方案,这种方案不符合国内的实际交通环境,同时也会引发驾驶员和行人的误解和不满,增加道路交叉口安全事故的发生概率。



技术实现要素:

本发明要克服现有技术的上述不足之处,提供一种基于深度强化学习的交通信号控制方法,适用于城市道路交叉口的自适应信号控制。

本发明采用深度强化学习方法,提出了一种基于行动者-评论家框架的自适应交通信号控制方法,该方法首先采用了近端策略优化和广义优势估计等技术提升了模型的整体性能,其次设计了新的奖励值函数,显著提升了模型的收敛速度,而且,模型生成的信号配时方案相位顺序固定,相邻周期配时差异较小,具有更高的安全性和实用性,最后,训练好的模型可以在实际交通环境中进行持续优化,更好地满足变化的交通需求。基于真实交通流量数据的实验结果表明:该方法能够有效应对平峰和高峰两种流量模式,与其它模型相比,平均排队长度、平均旅行时间和车辆平均延误等常见评价指标明显降低,而且模型收敛的时间也明显缩短。

本发明是通过以下技术方案达到上述目的,即一种基于深度强化学习的交通信号控制方法,具体的实施步骤如下:

(1)建立基于深度强化学习的交通信号控制模型。强化学习是智能体与环境之间不断交互不断试错的学习方法,其基本过程为:智能体获取外部环境的状态信息,依据策略选择合适的执行动作,从而获得相应的奖励,并进入新的状态和下一次交互,整个交互的过程即为智能体的一个轨迹。在强化学习过程中,模型的训练包含若干轮回合,一轮回合包含若干个时间步,一个时间步进行一次交互并生成一个轨迹。智能体的学习目标是通过若干轮回合的交互,学习到最优策略,从而使累积奖励的期望最大化。深度强化学习则是在强化学习基础上,应用深度学习神经网络的方法。具体包括:

s11.定义模型的状态。模型的状态st定义为时间步t时目标道路交叉口各个相位的平均车辆到达数和平均车辆速度,具体如下:

其中,ni表示时间步t时相位i中允许通行的车道数量,分别表示时间步t时相位i下车道j的车辆到达数和平均车辆速度,则分别表示时间步t时相位i的平均车辆到达数和平均车辆速度,相位i的取值范围为[1,p],p是一个信号周期内的相位数,时间步t的取值范围为[0,t-1],t是一轮回合中的时间步数。因此,公式(1)和(2)定义的模型状态空间为s∈r2p,时间步t时的交通状态为且st∈s。

s12.定义模型的动作。模型的动作at定义为时间步t时下一个信号周期的执行动作,而且每个信号周期只有一个执行动作,具体说来,对于包含p个相位的信号控制方案,相位顺序固定,则共有2p+1个可选动作,具体如下:

其中,a表示可选动作集合,动作at∈a,表示将下一信号周期中相位i的绿灯时间缩短5秒,表示将下一信号周期中相位i的绿灯时间延长5秒,a0则表示下一信号周期的配时方案保持不变,i的取值范围为[1,p]。说明:不同于其它强化学习算法,本发明的信号相位顺序是固定的,且每次只以5秒的幅度改变某一个相位的绿灯时间,这种方案具有更强的实用性和更高的安全性。

s13.定义模型的奖励值函数。模型的奖励值函数rt定义为时间步t时上一轮回合所有时间步的平均排队长度与当前时间步平均排队长度的差值,具体如下:

其中,qk是上一轮回合中某个时间步的平均排队长度,qt是当前时间步t的平均排队长度。说明:奖励值函数的第一项是常量,第二项是变量,这种设计没有增加模型的训练难度,但使得模型在上一轮回合训练的基础上进行优化,提高了训练效率。

s14.设计策略网络、旧策略网络和值函数网络。整个模型采用了行动者-评论家框架,其中,策略网络和旧策略网络属于行动者模块,值函数网络属于评论家模块。策略网络、旧策略网络和值函数网络都包含三层神经网络,即输入层、中间层和输出层,中间层都是带线性整流激活函数的单层全连接层神经网络。策略网络采用了近端策略优化,其目标函数为:

其中,是时间步t时的数学期望估计,min()是最小值函数,rt(θ)是时间步t时新旧策略概率比率,具体如下:

其中πθ(at|st)表示策略网络中智能体在状态st下选择动作at的概率,代表智能体的当前策略,πoldθ(at|st)表示旧策略网络中智能体在状态st下执行动作at的概率,代表智能体的旧策略,θ和θold分别为策略网络和旧策略网络的参数,clip()是修剪函数,用于将rt(θ)的取值限定在[1-ε,1+ε],ε是超参数,如果rt(θ)<1-ε,则rt(θ)=1-ε,如果rt(θ)>1+ε时,则rt(θ)=1+ε,是时间步t时的优势函数估计,采用广义优势估计来计算,具体如下:

其中,优势函数估计是按批进行处理,b是每批处理的轨迹数量,mod是取模运算,是通过值函数网络获得的预测值,表示智能体依据策略πθ从状态st出发获得的平均奖励,用于评估智能体状态st的好坏,γ∈[0,1]是折扣因子,用于体现时间延迟对于值函数估计值的影响,λ∈[0,1]是超参数,合理调整λ的取值能够有效平衡状态值函数的方差和偏差。策略网络的输入是道路交叉口状态st,输出是2p+1个动作的概率πθ(at|st)。旧策略网络的输入也是道路交叉口的状态st,输出是2p+1个动作的概率πoldθ(at|st),旧策略网络无需训练,只需要定时复制策略网络参数。值函数网络的目标函数为:

其中,公式(8)的第一项是智能体的累积奖励值,即状态值函数的真实值,第二项是值函数网络的预测值,通过最小化二者的差值就可以逐步缩小真实值和预测值之间的差距。值函数网络的输入是道路交叉口的状态st,输出是状态值函数的估计值为值函数网络参数。

(2)训练基于深度强化学习的交通信号控制模型,具体包括:

s21.构建交通仿真环境。根据目标道路交叉口的交通环境和车辆流量数据,配置交通仿真软件,建立与目标道路交叉口相似的交通仿真环境,其中,车辆流量数据是指目标道路交叉口在一定时间段内各个车道的车辆流量数据。交通仿真软件负责模拟目标道路交叉口交通环境的运行,生成各个信号周期的交通状态信息。

s22.初始化交通信号控制模型。采用随机方法初始化策略网络、旧策略网络和值函数网络,并初始化算法参数,包括模型训练的最大回合数n、一个回合包含的时间步数t、每一批处理的轨迹数量b、以及策略网络和值函数网络的迭代次数k。

s23.初始化训练回合数。训练回合数初始化为ep=1。

s24.初始化训练时间步数。训练时间步数初始化为t=0。

s25.运行旧策略网络采集轨迹。从交通仿真软件中依次采集目标道路交叉口的交通状态信息作为输入,运行旧策略网络生成相应的动作、奖励和轨迹,输出2p+1个动作的概率πoldθ(at|st),并计算t=t+1。如此循环,直至采集b个轨迹,即一批轨迹,然后执行下一步。

s26.计算优势函数估计并更新策略网络和值函数网络。基于步骤s25采集的b个轨迹,依次把目标道路交叉口的交通状态信息输入策略网络和值函数网络,分别获得2p+1个动作的概率πθ(at|st)和相应的状态值函数估计如此重复,直到处理完b个轨迹。然后,根据步骤s25采集的b个轨迹的奖励值和公式(7),计算优势函数估计再根据公式(5)、(6)和(8),计算策略网络和值函数网络的训练误差,反向传递误差,进行k次迭代,更新策略网络和值函数网络参数。

s27.检查训练时间步数。如果t<t,则执行步骤s25,否则,把策略网络参数复制到旧策略网络,更新旧策略网络参数,完成一轮回合的训练,继续执行下一步。

s28.检查训练回合数。如果ep<n,则计算ep=ep+1,并执行步骤s24,开始新一轮回合的训练,否则,完成交通信号控制模型的训练,继续执行下一步。

(3)信号配时方案的生成和模型的持续优化。利用步骤(2)训练好的交通信号控制模型,以目标道路交叉口的当前交通状态信息为输入,基于旧策略网络选择相应的动作,生成下一个信号周期的信号配时方案并实施。同时,交通信号控制模型将在实际交通环境中继续进行训练和优化,模型的输入是实时的交通状态信息,当训练次数达到一批处理数量时,则重新计算优势函数估计,并更新策略网络和值函数网络,当训练次数达到一轮回合处理数量,则更新旧策略网络。如此不断循环,可以持续优化交通信号控制模型,更好地满足道路交叉口信号控制的要求。

优选地,步骤s14中,ε的取值为0.2,γ的最佳取值范围为[0.96,0.99],λ的最佳取值范围为[0.92,0.99]。

本发明的有益效果在于:(1)本发明采用了近端策略优化和广义优势估计等强化学习技术,提升了交通信号控制模型的控制效果,降低了平均排队长度、平均旅行时间和车辆平均延误等指标;(2)本发明提出了新的奖励值函数,提升模型的训练效率;(3)本发明生成的交通信号配时方案相位顺序稳定,而且相邻周期的配时方案变化幅度不大,具有较高的实用性和安全性。

附图说明

图1是本发明方法的总体流程图。

图2为本发明方法的模型训练结构示意图;

具体实施方式

下面结合附图进一步说明本发明的技术方案。

本发明的一种基于深度强化学习的交通信号控制方法,具体的实施步骤如下:

(1)建立基于深度强化学习的交通信号控制模型。强化学习是智能体与环境之间不断交互不断试错的学习方法,其基本过程为:智能体获取外部环境的状态信息,依据策略选择合适的执行动作,从而获得相应的奖励,并进入新的状态和下一次交互,整个交互的过程即为智能体的一个轨迹。在强化学习过程中,模型的训练包含若干轮回合,一轮回合包含若干个时间步,一个时间步进行一次交互并生成一个轨迹。智能体的学习目标是通过若干轮回合的交互,学习到最优策略,从而使累积奖励的期望最大化。深度强化学习则是在强化学习基础上,应用深度学习神经网络的方法。具体包括:

s11.定义模型的状态。模型的状态st定义为时间步t时目标道路交叉口各个相位的平均车辆到达数和平均车辆速度,具体如下:

其中,ni表示时间步t时相位i中允许通行的车道数量,分别表示时间步t时相位i下车道j的车辆到达数和平均车辆速度,则分别表示时间步t时相位i的平均车辆到达数和平均车辆速度,相位i的取值范围为[1,p],p是一个信号周期内的相位数,时间步t的取值范围为[0,t-1],t是一轮回合中的时间步数。因此,公式(1)和(2)定义的模型状态空间为s∈r2p,时间步t时的交通状态为且st∈s。

s12.定义模型的动作。模型的动作at定义为时间步t时下一个信号周期的执行动作,而且每个信号周期只有一个执行动作,具体说来,对于包含p个相位的信号控制方案,相位顺序固定,则共有2p+1个可选动作,具体如下:

其中,a表示可选动作集合,动作at∈a,表示将下一信号周期中相位i的绿灯时间缩短5秒,表示将下一信号周期中相位i的绿灯时间延长5秒,a0则表示下一信号周期的配时方案保持不变,i的取值范围为[1,p]。说明:不同于其它强化学习算法,本发明的信号相位顺序是固定的,且每次只以5秒的幅度改变某一个相位的绿灯时间,这种方案具有更强的实用性和更高的安全性。

s13.定义模型的奖励值函数。模型的奖励值函数rt定义为时间步t时上一轮回合所有时间步的平均排队长度与当前时间步平均排队长度的差值,具体如下:

其中,qk是上一轮回合中某个时间步的平均排队长度,qt是当前时间步t的平均排队长度。说明:奖励值函数的第一项是常量,第二项是变量,这种设计没有增加模型的训练难度,但使得模型在上一轮回合训练的基础上进行优化,提高了训练效率。

s14.设计策略网络、旧策略网络和值函数网络。整个模型采用了行动者-评论家框架,其中,策略网络和旧策略网络属于行动者模块,值函数网络属于评论家模块。策略网络、旧策略网络和值函数网络都包含三层神经网络,即输入层、中间层和输出层,中间层都是带线性整流激活函数的单层全连接层神经网络。策略网络采用了近端策略优化,其目标函数为:

其中,是时间步t时的数学期望估计,min()是最小值函数,rt(θ)是时间步t时新旧策略概率比率,具体如下:

其中πθ(at|st)表示策略网络中智能体在状态st下选择动作at的概率,代表智能体的当前策略,πoldθ(at|st)表示旧策略网络中智能体在状态st下执行动作at的概率,代表智能体的旧策略,θ和θold分别为策略网络和旧策略网络的参数,clip()是修剪函数,用于将rt(θ)的取值限定在[1-ε,1+ε],ε是超参数,取值一般为0.2,如果rt(θ)<1-ε,则rt(θ)=1-ε,如果rt(θ)>1+ε时,则rt(θ)=1+ε,是时间步t时的优势函数估计,采用广义优势估计来计算,具体如下:

其中,优势函数估计是按批进行处理,b是每批处理的轨迹数量,mod是取模运算,是通过值函数网络获得的预测值,表示智能体依据策略πθ从状态st出发获得的平均奖励,用于评估智能体状态st的好坏,γ∈[0,1]是折扣因子,用于体现时间延迟对于值函数估计值的影响,γ的最佳取值范围为[0.96,0.99],λ∈[0,1]是超参数,合理调整λ的取值能够有效平衡状态值函数的方差和偏差,λ的最佳取值范围为[0.92,0.99]。策略网络的输入是道路交叉口状态st,输出是2p+1个动作的概率πθ(at|st)。旧策略网络的输入也是道路交叉口的状态st,输出是2p+1个动作的概率πoldθ(at|st),旧策略网络无需训练,只需要定时复制策略网络参数。值函数网络的目标函数为:

其中,公式(8)的第一项是智能体的累积奖励值,即状态值函数的真实值,第二项是值函数网络的预测值,通过最小化二者的差值就可以逐步缩小真实值和预测值之间的差距。值函数网络的输入是道路交叉口的状态st,输出是状态值函数的估计值为值函数网络参数。

(2)训练基于深度强化学习的交通信号控制模型,具体包括:

s21.构建交通仿真环境。根据目标道路交叉口的交通环境和车辆流量数据,配置交通仿真软件,建立与目标道路交叉口相似的交通仿真环境,其中,车辆流量数据是指目标道路交叉口在一定时间段内各个车道的车辆流量数据。交通仿真软件负责模拟目标道路交叉口交通环境的运行,生成各个信号周期的交通状态信息。

s22.初始化交通信号控制模型。采用随机方法初始化策略网络、旧策略网络和值函数网络,并初始化算法参数,包括模型训练的最大回合数n、一个回合包含的时间步数t、每一批处理的轨迹数量b、以及策略网络和值函数网络的迭代次数k。

s23.初始化训练回合数。训练回合数初始化为ep=1。

s24.初始化训练时间步数。训练时间步数初始化为t=0。

s25.运行旧策略网络采集轨迹。从交通仿真软件中依次采集目标道路交叉口的交通状态信息作为输入,运行旧策略网络生成相应的动作、奖励和轨迹,输出2p+1个动作的概率πoldθ(at|st),并计算t=t+1。如此循环,直至采集b个轨迹,即一批轨迹,然后执行下一步。

s26.计算优势函数估计并更新策略网络和值函数网络。基于步骤s25采集的b个轨迹,依次把目标道路交叉口的交通状态信息输入策略网络和值函数网络,分别获得2p+1个动作的概率πθ(at|st)和相应的状态值函数估计如此重复,直到处理完b个轨迹。然后,根据步骤s25采集的b个轨迹的奖励值和公式(7),计算优势函数估计再根据公式(5)、(6)和(8),计算策略网络和值函数网络的训练误差,反向传递误差,进行k次迭代,更新策略网络和值函数网络参数。

s27.检查训练时间步数。如果t<t,则执行步骤s25,否则,把策略网络参数复制到旧策略网络,更新旧策略网络参数,完成一轮回合的训练,继续执行下一步。

s28.检查训练回合数。如果ep<n,则计算ep=ep+1,并执行步骤s24,开始新一轮回合的训练,否则,完成交通信号控制模型的训练,继续执行下一步。

(3)信号配时方案的生成和模型的持续优化。利用步骤(2)训练好的交通信号控制模型,以目标道路交叉口的当前交通状态信息为输入,基于旧策略网络选择相应的动作,生成下一个信号周期的信号配时方案并实施。同时,交通信号控制模型将在实际交通环境中继续进行训练和优化,模型的输入是实时的交通状态信息,当训练次数达到一批处理数量时,则重新计算优势函数估计,并更新策略网络和值函数网络,当训练次数达到一轮回合处理数量,则更新旧策略网络。如此不断循环,可以持续优化交通信号控制模型,更好地满足道路交叉口信号控制的要求。

如附图1,本发明方法的总体流程图。首先,建立基于深度强化学习的交通信号控制模型。定义模型的状态、动作和奖励值函数,并设计策略网络、旧策略网络和值函数网络。其次,训练基于深度强化学习的交通信号控制模型。在构建交通仿真环境的基础上,初始化交通信号控制模型和相关算法参数,包括模型训练的最大回合数n、一个回合包含的时间步数t、每一批处理的轨迹数量b、以及策略网络和值函数网络的迭代次数k、训练回合数ep和训练时间步数t等,随后运行旧策略网络从交通仿真软件中采集b个轨迹,并在此基础上,计算优势函数估计并更新策略网络和值函数网络,检查训练时间步数t,如果t<t,则重复运行旧策略网络采集轨迹,否则,复制策略网络参数至旧策略网络,更新旧策略网络参数,完成一轮回合的训练,再检查训练回合数ep,如果ep<n,则重新初始化训练时间步数t,开启新一轮回合的训练,直到训练回合数满足要求,则完成交通信号控制模型的训练。最后,使用交通信号控制模型并持续优化。根据实际交通环境中的当前交通状态信息,运行旧策略网络选择相应动作,生成下一个信号周期的信号配时方案并实施。同时,交通信号控制模型也将在此次输入的实时交通状态信息的基础上,继续进行训练和优化,当训练次数达到相应数量时,进行相应的更新操作和处理,持续不断地优化模型,更好地满足道路交叉口信号控制的要求。

如附图2,本发明方法的模型训练结构示意图。由策略网络、旧策略网络和值函数网络组成的深度神经网络是整个模型的智能体,它从仿真交叉口环境中获取交通状态信息st,并根据策略选择合适的执行动作at,从而获得相应的奖励值rt,这就是智能体与环境交互的一次轨迹。智能体不断地与环境进行交互,通过神经网络的迭代更新和学习,可以优化策略直到最优策略,实现累积奖励值的最大化。策略网络、旧策略网络和值函数网络都包含三层神经网络,即输入层、中间层和输出层,中间层都是带线性整流激活函数的单层全连接层神经网络。三个网络的输入都是道路交叉口状态st,策略网络的输出是2p+1个动作的概率πθ(at|st),θ为策略网络参数,旧策略网络的输出是2p+1个动作的概率πoldθ(at|st),θold为旧策略网络参数,值函数网络的输出是状态值函数的估计值为值函数网络参数。策略网络和旧策略网络是行动者模块,策略网络采用了近端策略优化,改进了目标函数,减少了时间复杂度,提高了样本利用率,优化了模型训练效果。旧策略网络则不需要训练,只需要定时复制策略网络参数,但整个模型的决策是由旧策略网络作出的。值函数网络是评论家模块,目标函数是缩小状态值函数真实值和预测值之间的差距,可以对策略网络的决定进行评价,值函数网络的预测值用于优势函数估计,优势函数估计采用广义优势估计方法,可以提高模型的收敛速度,提升模型的训练效率。

本说明书实施例所述的内容仅仅是对发明构思的实现形式的列举,本发明的保护范围不应当被视为仅限于实施例所陈述的具体形式,本发明的保护范围也及于本领域技术人员根据本发明构思所能够想到的等同技术手段。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1