一种基于PPO和图卷积神经网络区域交叉口信号控制方法转让专利
申请号 : CN202110331958.9
文献号 : CN113299079B
文献日 : 2022-06-10
发明人 : 王昊 , 刘晓瀚 , 董长印 , 杨朝友
申请人 : 东南大学 , 扬州市法马智能设备有限公司
摘要 :
权利要求 :
1.一种基于PPO和图卷积神经网络区域交叉口信号控制方法,其特征在于,包括如下步骤:步骤1、选择需要进行协调控制的交叉口构建交叉口协调控制区域,构建该区域的网络模型,并依此定义强化学习的状态、动作和奖励以及图卷积神经网络的特征矩阵;
步骤2、依据PPO强化学习算法和图卷积神经网络构建区域交叉口分层信号控制模型;
步骤3、构建仿真场景,运行仿真获取状态、动作和奖励相关数据存入回放经验池,并从回放经验池中提取处理数据构建训练数据集和测试数据集;
步骤4、对区域交叉口分层信号控制模型进行训练,保留经过训练的模型最终参数;
步骤5、依据训练好的区域交叉口分层信号控制模型对控制区域进行联合协同控制,对区域内各交叉口在下一阶段所要采用的信号相位进行集中管控分配;
步骤1所述选择需要进行协调控制的交叉口构建交叉口协调控制区域,构建该区域的网络模型,并依此定义强化学习的状态、动作和奖励以及图卷积神经网络的特征矩阵,具体如下:选择需要进行协调控制的网络区域I,I为区域内交叉口的集合,I=[i1,i2,…,in],其中,i1表示编号为1交叉口,n为协调控制区域内交叉口的数量;
控制区域内单个交叉口的状态由s表示,即 为交叉口i1的状态,交叉口的状态由该交叉口各车道组上的车辆数和交叉口当前所处 信号控制相位组成,s=[l1,l2,…,lz,c],l1为车道组1上的车辆数,z为交叉口中车道组的数量,c为该交叉口当前所处信号控制相位;
控制区域内单个交叉口的动作由a表示,即 表示交叉口i1的动作,交叉口的动作为该交叉口在下一阶段要采取的信号控制相位;
控制区域内单个交叉口的奖励由r表示,即 表示交叉口i1的奖励,奖励r为交叉口在s状态下采取动作a后获得的奖励,具体奖励形式为下一时间步长内通过交叉口的车辆总数;
step为单一时间步长;g(t)为时刻t时通过交叉口的车辆数;
控制区域的特征矩阵H为控制区域内各交叉口特征h的集合,即 为
交叉口i1的特征,单点交叉口特征h由该交叉口所处位置、各车道组车辆数、交叉口当前控制相位、交叉口下一时间步长要采用的控制相位组成,即h=[x,y,l1,l2,…,lz,c,a],x为交叉口的横坐标,y为交叉口的纵坐标,l为车道组的车辆数,z为车道组的数量,c为该交叉口当前所处信号控制相位,a为交叉口在下一时间步长选择的信号相位;
步骤2所述依据PPO强化学习算法和图卷积神经网络构建区域交叉口分层信号控制模型,该控制模型具有上下两层结构,下层结构为基于PPO强化学习算法的单点交叉口控制模型,上层结构为基于图卷积神经网络的区域统筹控制模型,具体实现步骤如下:步骤2.1、构建基于PPO强化学习算法的单点交叉口控制模型,该模型接受单点交叉口状态s,输出交叉口在该状态s下采取各个相位动作的概率和所能得到回报的期望值,该模型由Critic和Actor两个子模型构成,具体构建方法如下:步骤2.1.1、构建Critic网络模型,Critic网络模型是一个由多层全连接层FC构建的神经网络模型,输入层为单点交叉口的状态s,输出为该交叉口在状态s下获得回报的期望值V(s),计算过程如下:m
V(s)=[σ(FC(s))]
式中,σ表示激活函数,用于神经网络全连接层之后,m为神经网络模型全连接层的层数;
步骤2.1.2、构建Actor网络模型,Actor网络模型也是一个由多层全连接层FC构建的神经网络模型,输入层为单点交叉口的状态s,输出为该交叉口在状态s下采取各个动作a的概率P(s),计算过程如下:d
P(s)=[σ(FC(s))]
式中,σ表示激活函数,d为神经网络模型全连接层的层数;
步骤2.2、构建基于图卷积神经网络的区域统筹控制模型,该模型输入为表示控制区域内交叉口拓扑结构的邻接矩阵A和步骤1中定义的特征矩阵H,输出为控制区域通过车辆总数的预测值gout,该模型构建关系如下:p p‑1 p‑1
H=σ(AH W )
p 0
H为第p层图卷积层,H=H,pend为图卷积的最终层;
邻接矩阵A为一个k×k大小的0‑1矩阵,k为控制区域I内交叉口的数量,如果交叉口o和交叉口r相连,o,r∈I,表示交叉口o和r都在控制区域I中,A[o,r]=1,否则A[o,r]=0;
p
W为第p层的权重系数矩阵,为待训练的矩阵;
△为将矩阵展开为向量的操作;
FC为全连接层;σ为激活函数;
步骤3所述构建仿真场景,运行仿真获取状态、动作和奖励相关数据存入回放经验池,并从回放经验池中提取处理数据构建训练数据集和测试数据集,具体如下:对于每个交叉口建立对应的回放经验池Mi,对于每次动作迭代收集元组
当需要训练时,首先需要对回放经验池中的数据进行处理,利用每个时间步长获取的奖励ri计算每个时间步长的累计奖励Ri,计算过程如下:t表示当前所处时刻,T为每迭代回合仿真总时长,γ为时间折减系数;
从经验回收池随机选取指定数量的经验数据,构建训练数据集和测试数据集;
步骤4所述对区域交叉口分层信号控制模型进行训练,保留经过训练的模型最终参数,具体实现需要分别依次训练步骤2.1中构造的基于PPO强化学习算法的单点交叉口控制模型和步骤2.2构建的基于图卷积神经网络的区域统筹控制模型,包括以下子步骤:步骤4.1、训练基于PPO强化学习算法的单点交叉口控制模型,具体构建过程包括以下几个子步骤:步骤4.1.1、设置训练迭代总回合数N;
步骤4.1.2、初始化步骤2.1构建的Critic和Actor网络模型参数;
步骤4.1.3、设置单次训练迭代回合的仿真运行总时长为T,单一时间步长为step;
步骤4.1.4、每经过一时间步长step,记录当前仿真时间t,对每个交叉口i,记录当前状态 根据步骤2.1构建的Actor网络模型求解出交叉口采用各个动作的概率,按概率选择下一阶段交叉口的动作 即下一阶段交叉口i需要切换的相位,并获取该动作的概率经过当前时间步长后记录交叉口的状态 和在这一时间步长内交叉口i得到的奖励 t′为t时刻经过单一时间步长step到达的时刻,即t′=t+step,将 存入经验回收池Mi中;
步骤4.1.5、检查当前时间t是否超过仿真运行时长T,如果超过,按照步骤3获取训练数据集,对步骤2.1构建的Critic和Actor网络模型参数进行训练更新,并且当前迭代回合数加1,返回步骤4.1.3;
Critic和Actor网络模型的损失函数如下:
Losscritic为Critic模型损失值,Lossactor为Actor模型损失值;training_set为训练集中的全部数据;ε为截断系数; 为步骤2.1.2取得对应动作 的概率;clip为截取操作,即若 的值在[1‑ε,1+ε]范围外,则截取到[1‑ε,1+ε]边界;
步骤4.1.6、检查当前回合数是否超过训练迭代总回合数N,如果超过,结束训练;
步骤4.2、训练基于图卷积神经网络的区域统筹控制模型,具体构建过程包括以下几个子步骤:步骤4.2.1、设置训练迭代总回合数N;
步骤4.2.2、初始化步骤2.2构建的图卷积神经网络模型参数;
步骤4.2.3、设置单次训练迭代回合的仿真运行总时长为T,单次时间步长为step;
步骤4.2.4、每经过一时间步长step,记录当前仿真时间t,对每个交叉口i,根据步骤
2.1构建的Actor网络模型求解出交叉口采用各个动作的概率,取出概率前三的动作,并从中随机选择一个动作作为下一阶段交叉口的动作 即下一阶段交叉口i需要切换的相位,记录交叉口特征 和在该时间步长内控制区域通过的车辆总数,并将区域特征矩阵和控制区域通过的车辆总数 存储到数据存储库D中;
步骤4.2.5、检查当前时间t是否超过仿真运行时长T,如果超过,从D中获取数据,对步骤2.2构建的图卷积神经网络模型参数进行训练更新,并且当前迭代回合数加1,返回步骤
4.2.3;
图卷积神经网络模型的损失函数如下:
步骤4.2.6、检查当前回合数是否超过训练迭代总回合数N,如果超过,结束训练。
2.根据权利要求1所述的基于PPO和图卷积神经网络区域交叉口信号控制方法,其特征在于,步骤5所述依据训练好的区域交叉口分层信号控制模型对控制区域进行联合协同控制,对区域内各交叉口在下一阶段所要采用的相位进行集中管控分配,具体如下:交通网络运行时,每个时间步长step,对每个交叉口,利用步骤2.1构建的Actor网络模型求解下阶段选择各个动作的概率,并提取出概率前2的动作,对每个交叉口的前2动作进行排列组合,即k如果协调控制区域内交叉口的数量为k,共有2 种排列组合方式,对于每一种组合方式都会对应一个特征矩阵H,将该特征矩阵代入步骤2.2构建的图卷积神经网络模型中求出控制区域通过车辆总数的预测值gout,选择最大的gout所对应的动作排列组合方式,即为该区域统筹控制的动作组合,将其应用到区域内的各自交叉口中,获取该区域的最优控制方式。
说明书 :
一种基于PPO和图卷积神经网络区域交叉口信号控制方法
技术领域
背景技术
发明内容
经验回收池Mi中;
附图说明
具体实施方式
经验回收池Mi中;