✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、程序设计科研仿真。

🍎完整代码获取 定制创新 论文复现点击:Matlab科研工作室

 👇 关注我领取海量matlab电子书和数学建模资料 

🍊个人信条:做科研,博学之、审问之、慎思之、明辨之、笃行之,是为:博学慎思,明辨笃行。

🔥 内容介绍

一、引言

城市轨道交通作为现代城市公共交通的核心组成部分,承担着大量的客流运输任务。然而,诸如地铁站点故障等突发事件可能严重影响线网的正常运营,降低其韧性。因此,构建有效的韧性恢复模型至关重要。基于深度强化学习的深度 Q 网络(DQN)技术为解决这一问题提供了新的视角,结合 Logit 客流分配方法,能够更好地实现地铁站点故障应急以及公交接驳的优化。

二、关键技术概述

  1. 深度强化学习与 DQN

    • 深度强化学习原理:强化学习是智能体通过与环境进行交互,根据环境反馈的奖励信号来学习最优行为策略的过程。深度强化学习则是将深度学习与强化学习相结合,利用深度神经网络强大的函数逼近能力,处理高维、复杂的状态空间。

    • DQN 的工作机制:DQN 是深度强化学习的经典算法之一。它引入了经验回放机制和目标网络,解决了传统强化学习中数据相关性和 Q 值估计不稳定的问题。智能体在环境中采取行动,环境返回新的状态和奖励,这些经验被存储在经验回放池中。DQN 从池中随机采样经验进行学习,通过优化 Q 网络,使得 Q 值能够准确估计采取某个行动在某个状态下的长期累积奖励,从而找到最优策略。

三、城市轨道交通线网韧性恢复模型构建

  1. 状态定义:为了让 DQN 能够有效处理轨道交通线网的状态信息,需要合理定义状态空间。状态可以包括各条线路的运营状态(正常、故障)、各站点的客流积压情况、列车的运行位置和载客量等。例如,用一个多维向量表示状态,其中每个维度对应一个特定的信息,如第一个维度表示某条关键线路的故障与否(0 表示正常,1 表示故障),后续维度表示各个站点的实时客流数量等。

  2. 行动空间:行动空间定义了智能体在每个状态下可以采取的操作。在轨道交通线网韧性恢复场景中,行动可以包括调整列车的运行时刻表、改变列车的停靠站点、启动公交接驳方案等。例如,行动可以编码为离散的整数,每个整数对应一种具体的操作,如 0 表示不进行任何调整,1 表示增加某条线路的列车班次,2 表示改变某列车的停靠站点组合等。

  3. 奖励设计:奖励函数是引导智能体学习最优策略的关键。奖励应与线网的韧性恢复目标紧密相关,例如,减少客流积压、缩短乘客平均出行时间、提高线网整体运营效率等。当智能体采取的行动能够有效缓解站点客流积压时,给予正奖励;若行动导致线网运营状况恶化,如增加了乘客的等待时间或导致更多的列车晚点,则给予负奖励。例如,奖励函数可以设计为:R=αΔP+βΔT+γΔE,其中R是奖励值,ΔP是客流积压的变化量,ΔT是乘客平均出行时间的变化量,ΔE是线网运营效率的变化量,α、β、γ是权重系数,用于调整各因素在奖励中的相对重要性。

⛳️ 运行结果

📣 部分代码

alfa=0.88;%风险规避程度

beita=0.88;%风险偏好程度

lamada1=0.2;%风险规避系数(出发时间)

lamada2=0.33;%风险规避系数(出发时间)

u0=tte+(tta-tte)/2;

rdt=(dt-1)*10;%出发时间换算

for k=1:cell{i,j}.route_num

    if rdt+cell{i,j}.bus_travel_time(k,dt)>=tte&&rdt+cell{i,j}.bus_travel_time(k,dt)<u0

        futillity(k)=lamada1*(rdt+cell{i,j}.bus_travel_time(k,dt)-tte)^alfa;%收益

    elseif rdt+cell{i,j}.bus_travel_time(k,dt)>=u0&&rdt+cell{i,j}.bus_travel_time(k,dt)<=tta

        futillity(k)=lamada1*(tta-rdt-cell{i,j}.bus_travel_time(k,dt))^alfa;%收益

    elseif rdt+cell{i,j}.bus_travel_time(k,dt)<tte%到得太早

        futillity(k)=-lamada2*(tte-rdt-cell{i,j}.bus_travel_time(k,dt))^beita;

    elseif rdt+cell{i,j}.bus_travel_time(k,dt)>tta%到得太晚

        futillity(k)=-lamada2*(rdt+cell{i,j}.bus_travel_time(k,dt)-tta)^beita;

    end

end

🔗 参考文献

[1]刘剑锋.基于换乘的城市轨道交通网络流量分配建模及其实证研究[J].北京交通大学, 2012.DOI:10.7666/d.Y2221994.

🍅更多免费数学建模和仿真教程关注领取

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐