基于数据分解和深度强化学习的交通流预测方法

2023-08-09 05:51刘嘉辉杜金
关键词:时间序列

刘嘉辉 杜金

文章编号:1003?6180(2023) 03?0028?07

摘  要:提出一种基于数据分解和深度强化学习(DRL)的交通流预测框架.为了减轻不规则波动的影响,利用局部加权回归时间序列分解方法将数据分解为趋势分量、季节分量和剩余分量.趋势分量由门控循环单元(GRU)训练,季节分量和剩余分量作为环境状态采用策略梯度算法和强化学习模型学习,根据门控循环单元网络的趋势预测结果,环境状态对预测结果进行及时调整.实验结果表明,本文提出的方法优于其他模型.

关键词:交通流预测;强化学习;时间序列;策略梯度

[   中图分类号    ]TP391[    文献标志码   ]  A

Traffic Flow Prediction Method Based on Data Decomposition

and Deep Reinforcement Learning

LIU Jiahui, DU Jin

( School of Computer Science and Technology, Harbin University of Science and Technology,

Harbin 150080,China)

Abstract:A traffic flow prediction framework based on data decomposition and deep reinforcement learning (DRL) is proposed. In order to mitigate the impact of irregular fluctuations, the time series decomposition method of local weighted regression is applied to decompose data into trend component, seasonal component and residual component.The trend component is trained by gated recurrent unit (GRU), while the seasonal and residual component are trained as environmental states by the strategy gradient algorithm and reinforcement learning model, and the prediction results are timely adjusted according to the gated recurrent unit networks trend prediction results and environmental state.The experimental results show that the proposed method is superior to other models.

Key words: traffic flow prediction; reinforcement learning; time series; strategy gradient

随着经济发展,机动车辆数量迅速增加,导致交通拥挤、交通事故、环境污染等问题.准确预测未来交通流量的变化趋势是缓解交通问题的基础,交通流预测是智能交通系统的重要指标.

基于深度学习的模型广泛用于交通流预测,然而对交通流数据的非平稳波动难以及时预测.随着强化学习(RL)在机器人控制领域的深入应用,一些人将强化学习引入到预测过程中.其中一种基于半监督深度强化学习(DRL)的网络异常流量检测模型可以提高预测性能.此外,根据RL可以预测加密货币价格的变化.将网络流量预测问题建模为马尔可夫决策过程,通过蒙特卡罗Q学习预测网络流量,以满足所提出机制的实时要求.边缘云故障预测的自动概念漂移处理框架,利用RL选择最合适的漂移适应方法以及适应所需的数据量.对于数据集相对较小的领域,可以利用DRL技术构建一个基于时间的链接预测模型,使用相对较小的真实数据集进行训练.基于强化学习非线性时间序列智能预测模型可以将强化学习与隐马尔可夫模型相结合,强化学习运用统计方法,采用历史观测数据作为回报,优化模型参数,提高预测精度.由于网络结构的复杂性和大量的网络参数,深度网络训练非常耗时,因此,DRL的学习效率有限.从近似策略迭代强化学习算法误差分析的角度,一种新的基于近似策略的加速算法被提出,以提高DRL的效率.DQN算法分析这三种神经网络的适应性,是可以获得能够更好预测结果的集成模型.代理人的日间行车灯决策过程通常不透明,一个自我监督的可解释框架可以发现可解释的特征,从而使非专家也能轻松理解RL代理.

本文提出一种基于数据分解和深度强化学习的框架(简称D-DRL).D-DRL的基本思想是利用对交通流数据的分解,提取季节因子以减轻季节波动的影响,利用DRL模型对分解后的交通流数据作预测.

1 相關工作

交通流数据容易受天气影响,如果出现极端天气,交通流量将急剧下降.为了减轻不规则波动的影响,提高交通流预测的性能,使用STL算法对交通流进行分解,对不规则波动信息进行分离.与其他分解过程相比,STL对数据中的异常值具有很强的鲁棒性,可生成健壮的分量子序列.分量序列的鲁棒性可以提高应用子序列预测的精度.STL算法是一个过滤过程,用于将时间序列分解为三个组成部分:趋势、季节和剩余分量.趋势分量代表长期低频变化,季节成分代表时间序列中周期频率的变化,残差部分表示原始时间序列减去趋势和季节的剩余结果.时间序列、趋势分量、季节分量和剩余分量分别用Yt,Tt,St和Rt表示.

Yt=Tt+St+Rt, t=1,2,… N.                                                    (1)

STL由两个递归过程组成:嵌套在外部循环中的内部循环,每次传递都包含一个更新季节成分的季节平滑,然后是更新趋势成分的趋势平滑.每一次外循环都由内循环组成.鲁棒性权重将在下一次内循环运行中使用,以减少瞬态、异常行为对趋势和季节成分的影响.假设进行内部循环的初始运行,获得残差、趋势和季节成分的估计值.表示为:                         Rt=Yt - Tt - St .                                            (2)

时间点t的鲁棒性权重表示为:                                                 Pt=B(|Rt|/h).                                              (3)

式(3)中,B是双平方权重函数,h= 6 median (|Rt|).

GRU网络是专门为时间序列信号设计的,该网络是基于长短期记忆(LSTM)的改进网络模型.与LSTM相比,GRU有可以自动学习的特征,可有效对远距离相关信息建模,减少选通单元的数量,从而减少处理时间,保持准确性.它的可伸缩性有利于构建更大的模型.GRU将LSTM模型的门控制信号减少为两个门,即更新门和重置门.图1显示了GRU模型的总体结构.

图1中x1,x2和xt是输入值,h0,h1和ht是存储在每个GRU网络中的状态,y1,y2和yt是GRU网络的输出.GRU神经网络是由多个神经单元模块组成的链模型.

Deep Q-Network(DQN)可以训练AI代理使用未经处理的像素进行比人类玩家更好的Atari视频游戏.然而,虽然DQN解决了高维观测空间的问题,但它只能处理离散和低维的动作空间,对于交通流预测任务,有连续的动作空间,不能直接应用.无模型方法Deep DPG(DDPG)将DQN与确定性策略梯度(DPG)算法相结合,可以在学习策略的同时处理连续的动作空间,再次保持超参数和网络结构不变.

DDPG通常由一个代理以离散的时间步长与动态环境交互组成.在每个时间点t,代理都会收到一个状态st,采取一个动作at并收到一个奖励rt,DDPG的目标是学习一项策略,该策略的目的是最大化未来折扣奖励的总和Rt.

式(4)中,γ表示范围从0到1的折扣因子,用来度量当前奖励对未来奖励的重要性.动作价值函数描述了在状态st下执行动作at后以及随后遵循策略后的预期回报.

2 基于数据分解和深度强化学习的交通流预测框架

本文提出的基于数据分解和深度强化学习的交通流预测框架(D-DRL)见图2.

利用STL算法将交通流數据分解为趋势分量、季节分量和剩余分量,以减轻不规则波动的影响.用GRU网络训练分解后的趋势分量,用GRU-DDPG网络训练季节分量和剩余分量.在GRU-DDPG网络中,交通流数据、GRU网络和DDPG网络输出用于计算GRU-DDPG模型的奖励值.训练后将两个分支合并为一个输出,实现交通流预测.

使用在Critic网络结合GRU网络的DDPG-GRU神经网络模型,通过在强化学习,使用深度确定性策略梯度方法与环境交互,构建强化学习中的代理模型,并将GRU网络添加到关键网络中进行改进.GRU-DDPG模型通过Actor网络根据环境状态输出动作,Critic网络通过参与者网络输出的动作和环境状态估计当前策略的价值,使用GRU网络了解关键网络中的状态,以增强对时序信息的感知.此外,Actor网络和Critic网络都有一个目标网络和一个在线网络.目标网络通过缓慢跟踪在线网络进行更新,以确保目标网络的稳定变化.在GRU-DDPG模型与环境的交互过程中,DDPG-GRU模型根据环境提供的状态选择动作输出,从环境中获取奖励和下一时刻的状态st+1和奖励rt,动作和行动信息下一时刻的状态存储在内存缓冲区中.通过从缓冲区中选择最小批量数据学习和更新参数.

环境状态构建.利用STL算法对交通流时间序列Yt进行分解,得到交通流序列的趋势分量Tt、周期分量St和剩余分量Rt.GRU网络用于预测分解得到的趋势序列Tt.由于代理在强化学习中所做的行动选择受到不断变化环境的影响,因此,代理被用来预测剩余的波动.强化学习的状态包括交通流时间序列的剩余波动序列,即State=St+Rt.

代理输出的动作不是直接的下次交通流,而是根据GRU网络对分解的趋势序列Tt趋势预测tt之后的加减运算,即交通流时间序列的波动值.因此,agent动作定义为动作空间中的连续动作,动作空间是归一化后的波动范围,具体奖励函数为:

rt =-|at+tt-lt| .                                                               (5)

式(5)中,rt表示在时间上获得的奖励值,at是代理在时间t上的动作值,tt是时间t上的趋势预测值,lt是与时间t相对应的交通流量值.为了让代理获得足够的经验来学习,在前k个回合给代理动作添加噪声,然后去除噪声,以便代理能够更加专注地提高预测准确性.

由于交通流时间序列数据是一组连续的数据,因此,状态以时间顺序开始和结束.为了学习更多经验,根据以下公式选择环境状态的开始和结束:

statestart= random(state0, statemax) .                                               (6)

stateend = min((statestart+stepmax), statemax) .                                   (7)

式(6)和式(7)中,statestart表示开始状态,random是一个随机函数,state0是交通流时间序列的初始序列,statemax是交通流量时间序列的最后一个序列,stepmax是一个代理在单个回合时间内探索的最大步数.

本文提出的D-DRL框架使用GRU-DDPG模型作为代理具体学习过程,如GRU-DDPG-DRL算法所示,每个训练过程包括五个步骤:

Step1:初始化关键网络、参与者网络和缓冲区R和参数k.

Step2:循环并随机选择开始位置开始探索.

Step3:根据是否小于选择动作.

Step4:计算奖励并存储转换信息.

Step5:从缓冲区和更新网络中选择最小批量数据.

算法1-GRU-DDPG-DRL算法描述如下:

1: Initialize the Actor,critic,R and k

2: for epoch to MAX_EPOCH do

3: Receive initial observation state

4: for step to do

5: if epoch< k:

Select action by selector with exploration noise

else:

Select action only GRU-DDPG

6: Receive from the environment

7: Store transitions(st, at, rt, st+1) from R

8: Select min batch data from buffer

9: Set y and update critic by minimizing the loss

10: Update the actor networks using the policy gradient

11: Soft update process of the target networks

12: end for, end for

3 實验结果与分析

3.1 数据集描述

实验数据选自英国高速公路的交通数据集.采样间隔为15分钟,不考虑平日和周末的交通流量数据.经过归一化预处理后,将训练集和测试集按照4:1的比例进行划分.由于实验数据太多,因此,选取部分交通流数据绘制交通流数据曲线,以便直观地显示交通流的变化.图3显示了数据集的详细信息.可以看到交通流数据的最大值为500左右,最小值为0左右.整体具有周期性,但波峰与波谷处较为不平稳.

3.2 评价指标

使用四个评估指标,即平均绝对误差(MAE)、均方根误差(RMSE)、平均绝对百分比误差(MAPE)和决定系数(DF)来评估该模型的预测精度.MAE使用绝对误差描述实际值和预测值之间的平均偏差.RMSE是实际值和预计值之间残余误差的标准偏差,MAPE以平均绝对百分比衡量误差,MAE,RMSE和MAPE是与量表相关的指标.DF 的取值范围为0~1,用于衡量实际值与预测值之间的拟合优度.

3.3 数据集重构分析

STL算法可以分解周期大于2的任何时间序列、季节数据.时间序列可以通过较小周期的分解来平滑和过滤.为了测试分解周期对D-DRL算法的影响,绘制以分解频率为横坐标的MAE值的箱型图(图4).可以看到,随着分解周期的增加,MAE值随之增加.分解频率在从3到4的过程中增加最为明显.

分解后的STL分解后的数据曲线如图5所示.观察到的是数据的原始曲线,趋势、季节和残差是STL分解的趋势项曲线、季节项曲线和残差项曲线.趋势曲线与原始曲线的趋势基本相同,在25,75个时间点附近达到峰值,在30,100個时间点处达到低谷.曲线比原始曲线更平滑.剩余项在波峰附近剧烈波动,在波谷处平缓波动.

从图6中可以看到,强化学习中状态数据的acf值在0和1处的变化很大,然后在0左右上下波动.可以看出状态数据不具有明显的趋势,大部分数据集中在0附近,其余数据呈现以0为中心并随着距离越远数据分布逐渐减少.

3.4 预测结果分析

为了评价基于D-DRL的交通流预测模型的有效性,选择RDPG,BI-LSTM,Transformer以及STL-SVR进行对比.以RMSE,MAE,MAPE和DF作为实验的测量指标.

表1显示了交通流预测比较方法的结果.与未使用STL时间序列分解的RDPG,BILSTM,Transformer等模型相比,STL-SVR,STL-GRU,D-DRL等模型的RMSE,MAE,MAPE均小于单一模型,DF均大于单一模型,表明其预测均具有较高的准确性.STL算法可以有效降低交通流数据中波动对预测结果的影响,其中D-DRL的RMSE,MAE,MAPE,DF值分别为5.766,4.130,0.031,0.998,表明通过结合深度学习与强化学习的方法,进一步提高了预测的准确性.总体而言,D-DRL的预测效果优RDPG,BI-LISTM,Transformer,STL-SVR和STL-GRU,表明D-DRL具有更好的预测性能.

4 结论

本文提出了D-DRL法,用于交通流预测.首先,为了减轻不规则波动的影响,使用STL算法将数据分解为趋势分量、季节分量和残差分量.趋势分量由GRU训练,季节分量和残差分量由GRU-DDPG模型添加、组合和训练.在GRU-DDPG网络中,将GRU网络添加到DDPG模型的关键网络中,可以使GRU-DDPG模型以矩阵的形式处理交通流的时间特征信息,从而提高对时间状态的感知.将GRU-DDPG模型的GRU输出与预测趋势的GRU输入相结合,并将其与实际值进行比较,GRU-DDPG模型可以在原始数据和交通流之间创建直接的非线性或线性映射,而不会高度依赖提取特征的质量.实验结果表明,该方法在准确性和稳定性方面优于传统方法.

未来,我们将把实验扩展到更多的交通数据集,以测试D-DRL方法的泛化能力.交通网络中不同位置的道路交通流相互影响,通过多智能体的协调可以提高预测的及时性和准确性.

参考文献

[1]宋大华,宋大全,章慧鸣.Logistic方程混沌周期点与精度研究[J].牡丹江师范学院学报:自然科学版,2020(01):22-26.

[2]彭辉,周莹青,李瑜琪.人工智能在数字出版行业的应用研究[J].牡丹江师范学院学报:社会科学版,2020(02):1-10.

[3]谷嘉炜,韦慧.XGBoost-ESN组合模型股价预测方法[J].牡丹江师范学院学报:自然科学版,2022(01):1-5.

编辑:琳莉

猜你喜欢
时间序列
基于分布式架构的时间序列局部相似检测算法
基于嵌入式向量和循环神经网络的用户行为预测方法
医学时间序列中混沌现象的初步研究
基于时间序列分析南京市二手房的定价模型
基于Eviews上证综合指数预测
上证综指收益率的影响因素分析
基于指数平滑的电站设备故障时间序列预测研究
基于时间序列的我国人均GDP分析与预测
基于线性散列索引的时间序列查询方法研究
基于组合模型的能源需求预测