【单智能体应用、扰动、实时调度】扰动下能量目标列车时刻表重调度问题的深度强化学习方法

212 阅读4分钟

【应用、扰动、实时调度】扰动下能量目标列车时刻表重调度问题的深度强化学习方法

A Deep Reinforcement Learning Approach for the Energy-Aimed Train Timetable Rescheduling Problem Under Disturbances


  • 单智能体下的时刻调度
  • 干扰情况下实时决策调度

区别

  • 与DDPG相比具有更好的稳定性和学习效率,在测试过程中具有更好的节能效果。[DDPG论文:G. Yang, F. Zhang, C. Gong, and S. Zhang, “Application of a deep deterministic policy gradient algorithm for energy-aimed timetable rescheduling problem,” Energies, vol. 12, no. 18, p. 3461, Sep. 2019.]
  • 与遗传算法、传统启发式算法比,扰动后在速度和时间上可实现实时调度

建模

  • 时间模型
    • 从每个站的出发时刻tdet_{de}行驶时间ttrt_{tr}停站时间tdwt_{dw},0车离开始发站时间为0,t0t_0为车头距时间,m车离开时间则为tdem,1=(m1)t0t^{m,1}_{de}=(m-1)t_0
    • 末班车到达终点站的时间:ttotalM,N=tdeM,1+i=2N1(ttrM,i+tdwM,i)+ttrM,N+tεt^{M,N}_{total}=t^{M,1}_{de}+\sum _{i=2} ^{N-1}(t_{tr}^{M,i}+t_{dw}^{M,i})+t_{tr}^{M,N}+t_ε,其中ttrM,it_{tr}^{M,i}表示i-1到i站之间的行驶时间,tεt_ε为站台驻停时的扰动时间
  • 力学模型
    • 加速阶段制动力FB(vm)=0F_B(v^m)=0 ,牵引力为

      image-20230721155943362

      到达速度v1v_1前加速度为固定值,a1,a2,b1a_1,a_2,b_1为列车固定值

    • 滑行阶段FB(vm)=0F_B(v^m)=0 FT(vm)=0F_T(v^m)=0 a=FR(vm)Gsinθ(xm)a=F_R(v^m)-Gsinθ(x^m) 其中FR(vm)F_R(v^m)为阻力,Gsinθ(xm)Gsinθ(x^m)为运动方向重力分量

    • 制动阶段FT(vm)=0F_T(v^m)=0,制动力为

      image-20230721160617233

      速度大于v2v_2时制动力与车速成反比,小于时,减速度为固定值

  • 能量模型

    加速列车消耗电能并将其转化为机械能,而制动列车可以利用机械能再生电能。

  • 行驶时间与速度关系

    image-20230721161916454

    速度曲线和时间轴t所包围的区域成为一个固定值,这是两个相邻地铁站之间的距离。因此,滑行速度和行驶时间形成了一对一的映射。通过控制滑行速度,可以控制行驶时间。


具体实现(DRLA)

image-20230721163618497

  • 使用单智能体,在某个车站上进行实现,agent产生的动作仅决定正在发车的列车运行策略,不改变其他列车的运行策略。

    image-20230721163647016转存失败,建议直接上传图片文件

  • 参数配置

    • 状态集:对于正在离开的车辆选择其车次、最后的驻停时间作为state;对于其他车辆,选择速度、位置、当前驾驶状态(加速、滑行、制动)作为状态;因此对于M个列车的系统中,状态空间维数为3M-1

    • 动作集:通过建模中的行驶时间与速度关系,选择滑行速度驻停时间作为action,因此输出维度为2。当列车离开车站时,agent观察环境状态决定列车滑行速度和驻停时间(在模拟中,是有界值)

    • 奖励函数:与在扰动情况下不产生动作的策略进行比较,如果能量小于基准,则奖励,否则惩罚。

      image-20230721163234875

    • actor网络:输入为状态,输出为滑行速度、驻停时间,神经元层次为 (3M-1)× 400 × 100 × 2

    • critic网络:输入为状态sts_t和actor网络的action ata_t,输出是期望奖励Vφ(st)V_φ(s_t),神经元层次为(3M +1) × 400 × 200 × 1。公式15为累计收益,公式16为累计优势

      image-20230721175622556

      image-20230721175725996

  • 参数更新

    • 更新actor网络参数时,需要先计算KL惩罚目标JDRLA(θ)J_{DRLA}(\theta)

      image-20230721175015758

      KL[poldpθ]>KLmaxKL[p_{old}|p_\theta] > KL_{max}时β需要增大,反之降低,通过这种方式,可以解决学习率过高或过低的问题。

      然后计算梯度θJDRLA∇_{\theta}J_{DRLA},并根据策略梯度法的更新规则更新actor网络的参数θ:θ=θold+ηθJDRLAθ=θ_{old}+η∇_{\theta}J_{DRLA}

    • 更新critic网络参数,先计算误差平方损失LSEL(φ)L_{SEL}(φ)

      image-20230721175554726

      然后计算梯度φLSEL∇φ L_{SEL},更新critic网络参数φφφ=φold+ηφLSELφ=φ_{old}+η∇φ L_{SEL}


实验

  • 三个实验:

    • 实验一(消融实验)
      • 训练过程中的随机扰动设置为固定的:特定的车在特定的站点,扰动的时间为[10,15]秒;实验模拟两个地铁车辆;
      • 1)与遗传算法比(花费10432秒才能产生动作得到优化的驻停时间和速度)能用于实时调度
      • 2)利用off-line的历史数据进行训练,然后再调整以适应实时
      • 3)对比实验:与无action操作的进行对比
      • 4)评价指标:能量消耗、奖励、数据产生快慢
    • 实验二(与其他主流算法比较)
      • DRLA与IGSA-LSTM和当前主流DRL算法DDPG的性能进行比较,其余同实验一
    • 实验三(扩展性)
      • 应用于更复杂的情况,实验一二为单线两车,实验三为双线五车;同时可能提前发车(扰动值为负)扰动时间为[10,15]和[-5,0],其余同实验一