摘要
网约车系统提高了车辆的使用效率和城市交通。然而,供需失衡仍是一个问题。为了解决这一问题,提高资源利用效率,提出了一种用于车辆定位的分布式深度强化学习方法。在DDRL中,每辆车都被建模为一个独立的代理,并根据自己的状态进行调度,以重新平衡当地的供需。
因此,全球再平衡问题被分解为许多小的局部再平衡问题。
- 首先,提出了一种新的奖赏评估方法,将传统强化学习中长期的全局奖赏转化为多个短期的局部奖赏。
- 其次,通过学习所有分散代理的样本数据,设计了一个统一的算法。
- 最后,引入状态权重矩阵,放大相邻车辆状态之间的差异。
介绍
每个闲置车辆被建模为一个独立的代理,并根据自身的状态进行调度,以重新平衡其所在区域的供需。
状态空间很小,所以无论网约车系统多大,计算成本都不会增加太多。车辆之间的相互作用也被充分考虑。
主要贡献
- 提出了一种新的奖励评价方法。在传统的强化学习中,DDRL是根据局部的短期奖励来评估行动,而不是根据全局的长期奖励来进行评估。
- 提出了一种具有统一算法的分散式重定位方法。该方法将统一算法与分散调度方法相结合,具有高效、健壮、灵活的特点。
- 给出了状态的权重矩阵。根据位置对每个智能体的状态进行衰减,以便更好地区分相邻的空闲车辆。
方法
在本节中,将详细介绍DDRL。DDRL的;结构如图1所示。DDRL主要由四个部分组成:重定位部分、奖励部分、训练部分和预测部分。在重新定位部分,将网约车系统中的每一辆闲置车辆建模为一个独立的代理。采用统一的深度Q网络(DQN)算法对分散的智能体分别进行调度。智能体的行为会影响网约车系统,改变其他智能体所处的环境和状态。奖励部分评估该行动是否能够重新平衡代理人的本地供需。在训练部分,收集所有分散智能体的转移样本,采用经验回放的方法训练统一的DQN算法。预测部分根据历史排序数据预测未来∆T分钟内各网格的需求。

重新定位部分
车辆减订单(VMO)矩阵,整个城市划分在L*L的网格中,
网格中正数表示当前位置的空闲车辆,负数便是当前位置的活动订单。
DDRL每T分钟使用DQN对闲置车辆重新定位,输入是代理当前的状态,输出所有操作的Q值。
S i j k ( t ) S_{ijk}(t) Sijk(t) 保存了过去 T 时间内代理邻居的供需关系,代表位置 G i j G_{ij} Gij和ID为k,t 为当前时间,P是代理邻居区域大小(如果代理在边缘,空位置应该为0)(智能体的状态代表的是什么,代表邻居范围内的)
权重矩阵是五个完全相同的二维矩阵的叠加。(每个智能体的状态矩阵被逐层衰减,以防止相邻智能体的状态过于相似。)
计算九个候选动作的Q值,移动到相邻八个网格或者不动。移动后状态就会改变。
奖励部分
是否能重新平衡代理商在未来T分钟的本地供需,
M P S D ( t ) M_{PSD}(t) MPSD(t)是t时刻未来T分钟内的全球供需情况, O p ( t ) O_p(t) Op(t)是未来T分钟每个网格的订单需求。
M P S D ( t ) M_{PSD}(t) MPSD(t)包含 M V M O ( t ) M_{VMO}(t) MVMO(t)和 O p ( t ) O_p(t) Op(t)信息
B 0 B_0 B0表示待在原始位置时,邻居区域的不平衡指数。邻近区域闲置车辆和活跃订单数量的总和。
Y是相邻区域的大小,q是衰变因子。(相邻区域不是相邻的八个格子吗,操作的八个格子和不平衡指数判定的相邻区域是分开看的)

B 0 B_0 B0表示待在原始位置时,邻居区域的不平衡指数。邻近区域闲置车辆和活跃订单数量的总和。
B n B_n Bn表示代理到新位置的时候, G m n G_{mn} Gmn的邻居不平衡指数
时间t派遣ID为k的代理从 G i j G_{ij} Gij到 G m n G_{mn} Gmn的奖励为:

tanh对结果进行非线性的放大小的差异, β 2 β_2 β2是缩放系数,可以使结果落入非线性区域
(非线性的放缩是什么意思,防止梯度爆炸或者消失)
训练部分
统一的DQN由所有代理的样本池训练

样本数量上限为 N m N_m Nm,达到上限后用新样本替换旧样本,样本由所有agent提供。
预测部份
通过每个网格的历史订单数据训练LSTM, Q ( t ) Q(t) Q(t)表示订单量矩阵, Q i j Q_{ij} Qij(t)表示 G i j G_{ij} Gij在t时刻以前的T时间内的累计订单量。
平均池化操作 Q ( t ) Q(t) Q(t)进行下降采样(减少维度)
上采样经常与插值结合使用,通过插值方法在现有数据点之间生成新的数据点,从而增加数据的维度和分辨率。
重定位算法
DDRL每T分钟调度代理,调度代理的顺序是随机的。
DDRL在一天的前几个小时不使用,使用足够的历史订单数据预测未来需求。(需求和时间是有关系的)
为什么最后 N s N_s Ns % 5 == 0


实验
使用环境模拟器模拟真实世界中的网约车系统。将城市划分为15×15的网格,中心7×7网格为商业区,边缘网格为生活区。一个完整的模拟回合是一天,模拟器中的基本时间单位是分钟。模拟器每分钟生成订单,订单的数量和分布随着时间的推移而变化。早高峰和晚高峰的订单较多,且白天的订单多于夜间。早上,大多数订单来自生活区,目的地是商业区,而晚上则相反。在其他时候,商业区的出行需求比生活区更多。
所有订单都有三种状态:活动、过期或已接收。‘Active’表示存在订单需求。当空闲车辆被分配给此订单时,订单的状态将更改为“已接收”。订单将等待车辆 O e t O_{et} Oet分钟,然后订单状态将更改为“Expired”,这意味着乘客已取消订单。 O e t O_{et} Oet~U(10,20)。顺序的距离 O d O_d Od是起点和目的地之间的欧几里得距离。订单价格是距离的三倍。
至于车辆,车辆的数量也会随着时间的推移而变化。夜间车辆较少,早上车辆逐渐增加,晚上车辆逐渐减少。车辆的初始位置在城市中随机分布。每辆车还有三种状态:空闲、占用和离线。‘Ddle’表示车辆正在等待下单。当订单分配给车辆时,车辆的状态将更改为“已占用”,并且在当前订单完成之前不能接受任何订单。如果状态变为“离线”,这意味着车辆将不再接受任何订单。车辆需要 V t d V_{td} Vtd分钟才能到达订单目的地。 V t d V_{td} Vtd ~ U ( 5 × O d , 5 × O d + 5 ) U(5×O_d,5×O_d+5) U(5×Od,5×Od+5)。
实验结果
为了验证其有效性,在模拟器中采用了DDRL。实验在i5-1135G7上进行,内存为16 GB。在实验中,我们还采用了另外三种重定位算法作为比较:
Random:每5分钟随机对所有闲置车辆进行重新定位。
Greedy:把代理派到订单最多的邻近地区。如果没有任何有订单的网格,则将代理派到闲置车辆最少的相邻网格。
TLR:这是一个时间-位置-关系相结合的出租车服务推荐模型[7]。挖掘旅客上下车关系,将闲置车辆推荐到订单较多的地区。为了更好地适应仿真环境,我们对TLR做了一些小的改进。



总结
我们只进行模拟实验,没有在真实世界中进行实际实验。并且忽略了重新定位的移动成本。此外,还可以考虑优化路线和拼车来提高网约车系统的效率。
816

被折叠的 条评论
为什么被折叠?



