基于车站约束的地铁系统协调客流控制模型与算法

1 文章信息

《Model and algorithm of coordinated flow controlling with station-based constraints in a metro system》是2021年发表在Transportation Research Part E上的一篇文章。

2 摘要

随着城市人口的增长和交通需求的快速增长,世界上许多大城市的地铁系统经常在高峰时段出现拥堵。这给通勤者带来了严重的交通延误,也给地铁运营商带来了安全风险。因此,客流管理和控制成为缓解高峰时段车站拥堵的重要手段。本文研究了以增加登车人数为目标的客流控制问题。针对进站乘客目的地未知的情况,提出了一种动态的基于车站约束的流量控制问题,动态地确定每个车站每列列车的上车人数。与现有的流量控制策略相比,该模型可以提高不同OD对登车乘客的公平性。基于车站的流量控制问题被描述为一个复杂的非线性非凸二次规划模型。为了解决复杂的非线性规划模型,我们将其重新化为动态规划形式,并提出了两种有效的启发式算法。我们进行了两组数值实验,包括使用合成数据的小规模案例和使用北京地铁系统运营数据的真实案例,以评估我们的模型和算法的性能。通过平均等待时间和Gini系数等性能指标,验证了模型的有效性和公平性。应用于北京城市地铁网络的数值计算结果表明,与最大载客量和基于站点约束的基准流量控制策略相比,该方法可使乘客等待时间和线路级Gini系数分别降低5.21%和23.52%。

3 介绍

在本文中,我们关注的是基于动态和基于车站的约束的客流控制问题。当列车在车站i停站时,从车站出发的乘客的目的地信息是未知的。运营商通常对同一车站不同目的地的乘客采取相同的进站率。本文在考虑动态到站率约束的情况下确定了最优登车人数,这与已有的研究有很大的不同。我们试图建立一个有效的模型来描述基于站点的动态客流协调控制问题,即每个OD对中上车乘客的比例随最后一列列车进站流量的变化而变化。

这种流量控制策略可以被大多数城市现有的地铁系统采用,成本低,投资少。但是,当每个OD对中站外等待的乘客比例为动态时,基于车站的客流控制问题的复杂性将显著增加。设计了两种有效的算法来解决这个问题。本文的主要贡献可以概括为以下几点。

(1) 建模方法。提出了一种非线性非凸二次规划模型来描述客流控制问题。通过表明基于OD的流量控制问题是基于车站的流量控制的松弛问题,明确地建立了基于车站的流量控制问题和基于OD的流量控制问题之间的联系。

(2) 求解算法。将非凸二次规划问题转化为动态规划问题,设计了两种高效的启发式分解算法来解决难以解决的动态规划问题。提出的启发式分解算法(HDA)将原问题分解为一系列严格满足列车运力和实现需求约束的线性规划问题。为了提高计算效率,提出了一种考虑下一列列车影响的改进HDA算法,称为HDA- n算法。

(3) 算法效率与实际应用。分别与原问题的上界和基准进行比较,以评价所设计算法的性能。基于中国北京地铁5号线实际运营数据的数值结果表明,我们的算法求解的FCP-DS在公平性和效率方面都优于基准问题(最大负载和基于站点约束的流量控制问题FCP-MS)。

4 动态的基于车站的客流协调控制问题

考虑单向地铁线路高峰时段乘客需求过大,导致拥堵甚至乘客滞留的情景。我们定义一条单向地铁线路G=(N,A),其中N是有限的车站集合,A是相邻车站之间的有限路段集合。(i,i+1)为站i与站(i+1)之间的截面,如图1所示。

30e5149bbaff468af1bef5f209f0025f.png

为了便于问题的表述,我们做以下假设。

假设1 基于车站的流量控制问题要求来自同一车站的OD对候车乘客将以相同的概率进入车站;变量不是整数,而是正实数。

假设2 所有乘客在车站内的行走时间均不计算在内;也就是说,进站的乘客会立即到达站台,等待下一趟列车。在客流控制下,乘客不会放弃出行或改变出行行为,通过分析AFC系统数据可以获得准确的出行需求。

本文优化模型的符号如表2所示。

0dd5e5be4084190f56d887397405bc11.png

然后,完整的FCP-DS可以表述为以下非线性非凸模型。

859ab00b287f9ba5c8792587041a7faf.png

eae33ba591aa27c26d0b4fc02f5de58f.png

在流量控制模型公式(P1)中,其目标是使服务乘客数量最大化。约束(1)表示严格要求各OD对在登车流中的比例与等待流相同。约束(2)表示t次列车在(i,i+1)段的载客量,包括从1~i站出发,目的地为(i+1~n的所有乘客。约束(3)保证各段载客量不超过列车载客量,且有适当的超载比例。在地铁现实运营中,一定程度的过载是允许的。约束条件(2)和(3)确保在流量控制下,所有在站台候车的乘客都能够并将会登上第一辆驶来的列车。约束(4)对每个OD对(i,j)施加客流守恒约束,其中被列车t滞留的乘客代表在车站外等待但不允许进站的乘客。制定约束(5)来计算等待乘客的数量。等待登上t次列车的乘客由新到达的乘客和被t-1次列车滞留的乘客组成(第一班列车不滞留乘客)。利用约束(6)和(7)分别计算在i站登上t次列车和等待t次列车的乘客人数。约束(8)定义了决策变量的定义域,以保证滞留乘客数量和登车乘客数量始终是非负的。

5 总结

地铁网络客流协同控制是一种有效的进站客流管理方法,可以减少站台拥堵,降低运营风险,提高地铁系统运行效率。在此背景下,我们希望通过动态调整每个站点的进站流量来提高现有运力的利用效率,即能够在给定运力的情况下让更多的人上车。为了缓解地铁系统实际运营中的过饱和问题,提出了一种基于车站的客流协调控制模型,该模型表征了站外乘客OD占比的动态变化。当运营商无法区分进入车站的不同目的地的乘客时,该模型可以提供一种可行的、优秀的基于车站的流量协调控制策略,适用于大多数地铁系统,且成本低。针对非凸规划问题,提出了两种基于动态规划的高效启发式分解算法。特别是为了验证求解算法,从理论上找到了原问题的上界和基准。最后,以北京地铁系统为例,结合小尺度综合数据进行了数值实验,验证了所提算法的有效性。实验结果验证了本文提出的优化模型能够有效地防止乘客在站台上的堆积,进一步提高了登车乘客总数。HDA和HDA-n求解的FCP-DS的目标函数值均高于FCP-MS,线级Gini系数也低于FCP-MS,说明FCP-DS在效率和公平性方面均优于FCP-MS。

Attention

欢迎关注微信公众号《当交通遇上机器学习》!如果你和我一样是轨道交通、道路交通、城市规划相关领域的,也可以加微信:Dr_JinleiZhang,备注“进群”,加入交通大数据交流群!希望我们共同进步!

<think>好的,用户需要寻找关于基于虚拟编组协同优化模型地铁车辆动态调度优化仿真的Matlab代码。首先,我需要理解用户的具体需求。用户提到的关键词包括“虚拟编组”、“协同优化”、“动态调度”以及“Matlab仿真”。这些都属于交通系统优化和控制领域的内容,可能涉及多智能体系统、优化算法和实时调度策略。 接下来,我需要检查现有的引用内容。根据用户提供的引用,引用[1]提到了多机器人通信和编队变换,引用[2]涉及多无人机编队的协同控制,引用[3]则是地铁运行的模拟。这些都编队控制和调度有关,但用户需要的是地铁车辆动态调度的具体仿真代码,特别是结合虚拟编组和协同优化模型。 用户可能已经搜索过相关资源,但未找到直接匹配的代码,因此希望得到更具体的指导或资源链接。考虑到引用中提到的博主可能有相关代码,用户可能希望获取联系方式或访问途径。但根据引用内容,博主的代码可能需要私信交流,因此建议用户直接联系博主,同时提供一些基础的实现思路和步骤,帮助用户自行开发代码。 接下来,我需要确保回答符合系统级指令,包括正确使用LaTeX格式,生成相关问题,并引用相关文献。在技术层面,虚拟编组通常涉及车辆之间的协同控制,可能需要使用模型预测控制(MPC)或强化学习等方法。协同优化可能涉及多目标优化算法,如遗传算法或粒子群优化。动态调度则需要考虑实时数据,如客流变化和车辆状态,调整运行计划。 在构建模型时,可能需要定义状态变量如车辆位置、速度,控制变量如加速度,约束条件如安全距离和时刻表。目标函数可能包括最小化能耗、等待时间或最大化乘客满意度。仿真部分可能需要使用Matlab的Simulink进行动态建模,或者编写脚本实现离散事件仿真。 考虑到用户可能需要代码结构示例,提供伪代码或模块分解会更有帮助。例如,初始化参数、定义优化模型、实现协同控制算法、进行动态调度逻辑,最后进行可视化。同时,需要提醒用户参考现有文献中的数学模型,确保理论正确性。 最后,生成的相关问题需要围绕用户需求展开,可能涉及算法选择、虚拟编组技术细节、实时数据处理、模型验证以及扩展方向。这些问题可以帮助用户进一步深入研究和解决可能遇到的难点。</think>根据您描述的研究方向,地铁车辆动态调度优化涉及多智能体协同控制、虚拟编组技术以及运筹学模型的应用。以下是实现该系统的关键步骤及部分Matlab代码框架: ### 一、核心数学模型 1. **虚拟编组动力学模型**: $$ \dot{x}_i = v_i \\ \dot{v}_i = u_i + \sum_{j \in N_i} \frac{k}{m}(x_j - x_i - d_{safe}) $$ 其中$x_i$为车辆位置,$v_i$为速度,$u_i$为控制输入,$N_i$为邻居车辆集合[^1] 2. **协同优化目标函数**: $$ \min \sum_{t=1}^T \left( \alpha \Delta t_{wait} + \beta E_{consum} + \gamma \|u\|^2 \right) $$ 满足$h_{min} \leq h_k \leq h_{max}$等约束 ### 二、Matlab代码框架 ```matlab %% 虚拟编组协同控制器 function [u_opt, cost] = VFC_Controller(state_set, ref_path) % 状态矩阵: [位置,速度,载客量,能耗] Q = diag([1.0, 0.5, 0.3, 0.2]); R = 0.1*eye(2); % 模型预测控制(MPC)框架 options = optimoptions('fmincon','Algorithm','sqp'); u0 = zeros(prediction_horizon*2,1); [u_opt, cost] = fmincon(@(u)cost_function(u,state_set,Q,R),u0,[],[],[],[],lb,ub,@(u)constraints(u),options); % 可视化编队状态 plot(ref_path(:,1), ref_path(:,2), 'b--'); hold on; scatter(state_set(:,1), state_set(:,2), 'filled'); end ``` ### 三、关键实现技术 1. **动态调度策略**:采用滚动时域优化(RHC)实现实时调整 2. **通信拓扑构建**:使用V2X通信建立星型拓扑网络 3. **混合整数规划**:处理离散事件(如突发客流
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

当交通遇上机器学习

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值