APP下载

基于GWO-LSTM的网约车需求短时预测模型

2020-06-04许伦辉郭雅婷

自动化与仪表 2020年5期
关键词:灰狼需求量网约

许伦辉,郭雅婷

(华南理工大学 土木与交通学院,广州510641)

网约车服务,指以互联网技术构建服务平台,整合供需,通过移动设备与应用连接出行乘客与车辆和驾驶员的服务[1]。2018年,我国主要城市的网约车应用总渗透率高达11%[2]。海量的网约车数据,为出租车供需研究提供了新思路,也为新形势下提高差异化出行的供需匹配效率提供了研究基础[3]。

1 网约车需求分析

1.1 网约车供需研究现状

从供需平衡角度,出租车供需研究分供给预测、需求预测与供需缺口预测三类。

1)供给预测 常采用经典的供需函数关系开展宏观研究。

2)供需缺口预测 适用于区域内供不应求的情况,如文献[4]基于时空数据挖掘的深度学习网约车需求预测模型。

3)需求预测 与交通流预测类似,即网约车出行需求的时空状态分布预测,分为模型驱动、数据驱动两类。其中,模型驱动主要通过建立交通各项参数间的数学模型以实现交通流预测[5];数据驱动即机器学习,通过对大数据进行智能计算以挖掘数据的隐含信息。文献[6]提出单个、组合及提升等多种决策树算法进行网约车数据的短时需求预测;文献[7]用LASSO(least absolute shrinkage and selection operator)进行数据特征排序,建立基于随机数森林算法的预测模型;文献[8]以纽约市出租车数据为基础,提出长短期记忆神经网络LSTM 的出租车需求模型。然而,传统LSTM 在网络参数寻优中采用反向传播BPTT(back propagation through time)算法,复杂度高且存在易收敛于局部最优解。故在此,针对上述缺陷,提出了采用收敛速度快、全局搜索能力强的灰狼优化算法对长短期记忆网络进行参数优化,建立GWO-LSTM 网约车出行需求短时预测模型进行改进。

为把握乘客出行需求特性,以滴滴出行2016年1月份M 市的订单数据作为研究对象,进行数据分析。该数据含30 d日均40 万条的订单量、66 个出行区域、各区域内信息点PoI(point of information)类别及数量、道路拥堵程度与天气状况等。通过对超出定义时空范围内数据进行删除,短时间内重复订单数据识别与剔除、噪声平均化填充等操作进行数据清洗。对出行数据进行区域匹配、15 min 时间分片的短时需求量统计。

1.2 网约车需求时变规律

在工作日与非工作日,居民对网约车需求的时变规律如图1所示,图中将一天24 h 分为0~95 共96 个时间段,每个时段15 min。在工作日,居民对于网约车的出行需求趋势与城市交通早晚高峰一致。7:30—9:30 为早高峰,需求量最大;17:00—19:00为晚高峰。其中周一和周五较其他工作日需求量要大。周末白天无明显早高峰,总体变化平稳;人们倾向于下午至夜间出行,总需求量与工作日相差不大。

图1 工作日与非工作日网约车需求时变图Fig.1 Time-varying graph of demand for network booking taxi on weekdays and non weekdays

1.3 网约车需求区域分布规律

网约车需求的区域分布与土地利用类型相关,土地利用情况主要反映在POI 数量及类型上。通过对比分析各区域数据,主要变化类型如图2所示。

图2 典型区域网约车需求时变图Fig.2 Time-varying graph of demand for network booking taxi in typical regions

图中,类型1 为商住混用型,该类区域早高峰与晚高峰对于网约车需求量较大且数量相当;类型2 为以居住用地为主的典型区域,网约车需求以通勤出行为主,需求数剧增;类型3 主要为休闲娱乐类服务场所用地,以夜间需求为主;类型4 主要为商务用地,相较于其它区域,晚高峰的网约车需求量较大。

1.4 影响因素相关性分析

网约车需求量受时间、空间、交通拥堵状况、天气、温度与污染指数等外部因素的影响。选用spearman 相关系数进行分析,即

相关性分析结果见表1。

表1 网约车需求的影响因素相关性分析Tab.1 Correlation analysis of influencing factors of demand for network booking taxi

2 网约车需求短时预测模型

2.1 长短期记忆神经网络

循环神经网络RNN(recurrent neural networ)是以序列数据为输入,在序列的演进方向进行递归且所有循环单元按链式连接的递归神经网络[9]。基于RNN 进行改进,通过引入灵活可控的自循环设计,LSTM 产生了让梯度能够可持续长期流动的途径,可从输入的历史数据中学习长时间的计算记忆信息。

LSTM 内部结构如图3所示,遗忘门ft,输入门it,记忆单元ct和输出门ot组成了LSTM 的内部结构,其中σ 为激活函数sigmoid。

图3 LSTM 内部结构Fig.3 LSTM internal structure

具体计算如下:

遗忘门ft决定保留或丢弃历史信息,输出区间为[0,1],其中1 表示保留,0 表示全部丢弃。ft为

输入门it添加当前时刻有效输入,决定了xt添加到信息流中的程度,sigmoid 函数部分决定需输入的值。tanh 函数部分创建临时状态ct′为

记忆单元ct更新网络细胞状态:

输出门ot控制可用于下一层网络更新而输出的信息:

式(2)~式(7)中:ωhf,ωxf,bf,ωhi,ωxi,bi,ωhc,ωxc,bc,ωho,ωxo,bo分别为门限单元中相应下标的权重矩阵和偏置量。标准LSTM 采用式(2)~式(7)进行计算得到模型输出数据,并利用基于时间的BPTT 算法训练以求解上述参数。但在试验过程中,BPTT 算法常收敛于局部最优解,且计算复杂度较高。

2.2 灰狼优化算法

灰狼优化算法根据灰狼群体协作机制,模拟灰狼捕食猎物以实现目标,具有较强的收敛性、参数少、易实现,且能收敛于全局最优解[10]。在一定数量的群体中,按照职责分工,灰狼被分为α,β,δ 及ω共4 个等级。α 是唯一的领导者,负责群体决策;β级狼辅助领导者管理狼群,也是领导者替补;δ 服从α 与β 的命令,负责侦察、捕猎及看护等;最底层ω服从上级安排并维系种族平衡。

GWO 优化的算法步骤包括寻找、跟踪、包围、狩猎以及攻击猎物等。围猎时,群体中每一只狼即为潜在解,按照等级,α,β,δ,ω 优先级依次递减。其他个体根据前三只狼的位置,计算与其距离,并不断靠近更新位置以完成寻优。在Q 维空间中,各个体Wi=(wi,1,wi,2,…,wi,q)组成狼群Wi={W1,W2,…,WN}。有

其中

式中:Dm为灰狼Wi在第t 次迭代时分别距离α,β,δ狼的位置;Ck,Ak为系数向量;r1,r2均为[0,1]的随机取值;Wik′为灰狼向α,β,δ 靠近时移动的矢量;Wi(t+1)为向3 只高等级灰狼移动的矢量的平均值,得到灰狼Wi下一次迭代的移动值;a 为收敛因子,随迭代次数t 的增加线性减小,取a 值范围[0,2]。

2.3 GWO-LSTM 网约车需求预测模型

基于GWO-LSTM 的网约车需求预测流程如图4所示,该预测模型由数据处理、参数优化、网络训练与数据预测四大部分构成。参数优化部分采用GWO 算法优化LSTM 网络中的参数,使模型得出的预测值最大限度逼近真实值。为得到最小目标函数,适应度函数设为

式中:y′为实测数据;y 为模型输出;S 为训练长度。

图4 基于GWO-LSTM 的网约车需求预测流程Fig.4 Flow chart of forecasting demand for network booking taxi based on GWO-LSTM

训练数据时,先确定LSTM 中输入层的历史数据步长lookback、隐藏层单元个数hidden 及预测步长predstep;确定GWO 的迭代次数、维度以及灰狼个数。通过随机分布函数,对灰狼位置进行种群初始化,并分解为LSTM 网络所求的权重矩阵与偏置值等未知参数。将参数代入网络中计算相应的输出值y 并根据式(13)计算各个体的适应度值。对比适应度值,标记其中适应度最佳的前3 个体位置为Wα,Wβ,Wδ。当迭代次数不断迭加,由计算式(8)~式(12)更新每一个体的位置,并多次计算适应度值,直至迭代结束。返回全局最佳的Wα即为LSTM 记忆网络参数最优解。最终,将测试数据输入到最优参数解的训练网络中,得到预测结果,将均方根误差RMSE(root mean square error)与平均绝对误差MAE(mean absolute error)作为模型评估指标。其计算如下:

式中:Yi′为测试集实测数据;Yi为预测数据。

3 算例分析

3.1 网约车需求量数据处理

试验仍以滴滴平台M 市2016年1月份的订单数据为例,70%为训练数据,30%用作预测。通过初步数据分析,区域划分、时间分片得网约车需求量时间序列。采用spearman 相关系数法对网约车需求量的影响因素进行相关性分析,选定PoI 数量与5个历史时间段数据为输入指标,并采用min-max 标准化方法对数据进行归一化处理,即

3.2 试验对比模型及平台搭建

对比预测模型为标准LSTM 和BPNN。标准LSTM 通过BPTT 算法寻找最优参数解,而本文模型采用灰狼优化算法寻找最优参数。BP 神经网络为多层前馈神经网络,在网络训练过程中以误差逆传播的方法最小化误差,并调整优化连接权值以减小预测误差。

这3 个对比模型均使用python 语言编程实现。为建立预测模型而搭建实验平台的软硬件信息如下:系统为Windows 10(64 位),处理器为AMD Ryzen 7 PRO 2700U,内存为8.0 GB;程序语言版本为Python 3.6.7,开发环境采用Anaconda 包jupyter 1.0.0。深度学习框架采用CPU 版tensorflow 2.0 中的keras 2.3.1。

3.3 模型训练参数优化

训练过程如下:

步骤1确定lookback,hidden 与predstep,历史数据步长为6 (区域PoI 数量qp及5 个历史时间网约车需求量,预测步长为1,即当前预测时间段网约车需求量。由经验法则,隐藏神经元数量为

步骤2确定灰狼算法搜索空间维度、迭代次数及个体数:设灰狼个体数为50,迭代次数为800。GWO-LSTM 训练网络参数优化误差曲线如图5所示。

图5 GWO-LSTM 训练网络参数优化误差曲线Fig.5 Error curve of training network parameter optimization in GWO-SLTM

当迭代次数大于600 时,误差值逐渐变小且趋于稳定; 搜索空间维度为LSTM 各权重矩阵与偏置量的维度之和。如ωxi,维度hidden*lookback 为30,其他参数依此类推,因此得到灰狼群体中搜索空间维度为

步骤3初始化种群操作,采用随机分布函数对群体进行初始化,即为Wij~U(uj,lj)。其中,uj,lj分别为分布区间的上、下界,将得到的初始种群值分解为LSTM 参数。

步骤4当迭代次数≤800 时,计算每个灰狼个体参数相应的输出值y 及适应度值,对比各适应值并排序,取得最佳的3 个个体,依次标记为Wtα,Wtβ,Wtδ,其中t 为当前迭代次数。更新其余灰狼位置,并迭代当前步骤,直至迭代结束,寻找到最优解Wα′,进而分解为LSTM 网络参数。

步骤5预测阶段,将测试集数据输入到网络中,得到预测值与实际值进行误差计算,即得模型预测准确度。

3.4 模型预测结果分析

GWO-LSTM,标准LSTM 和BPNN 三种模型对示例区域全天网约车需求量预测结果的对比如图6所示。3 种模型预测趋势与真实数据变化趋势均呈一致性;在早晚高峰等起伏较大的时间段,3 种模型均体现了不同程度的预测偏差。相对地,所提出的GWO-LSTM 模型相较其他模型,误差较小,预测精准度较高,预测效果较优。其数值表现见表2。

图6 预测结果对比Fig.6 Comparison of prediction results

表2 预测结果评价Tab.2 Evaluation of prediction results

对于模型评估指标RMSE 与MAE 而言,数值越小则表明模型预测效果越好。由表2可知,GWO算法改进的LSTM 预测值的RMSE 为9.8858,相对于传统的LSTM 网络提升了34.45%,相对于BP 神经网络提升了48.16%; 在MAE 方面,GWO-LSTM预测结果相对于真实值为7.7708,相较LSTM 提升了36.89%,相较于BPNN 提升了52.12%,预测效果显著。

4 结语

基于实际数据,分析了网约车需求时空分布特性及影响因素与网约车需求量的相关性;针对标准LSTM 模型在时序数据预测中存在的问题,提出了GWO 改进LSTM 网络参数的网约车短时需求预测模型,并对模型效果进行实例验证。结果表明,该模型相较于标准LSTM 和BPNN,预测效果均有较大提升;寻优过程中,灰狼优化算法有种群多样性差与后期收敛速度慢等缺陷,将对灰狼优化算法进行改进以优化模型。

猜你喜欢

灰狼需求量网约
网约车平台责任条款的识别方法——基于解释进路的正当规制
从数学角度看“弹性”
灰狼和山羊
网约车侵权责任在司法实践中的认定
价格战是一定的! 2020年虾苗需求量预计减少10%~20%,苗价下调是趋势
网约车问题研究及对策
网约车安全性提高研究
谷谷鸡和小灰狼
灰狼的大大喷嚏
灰狼照相