1.本技术涉及列车运行控制技术领域,具体地,涉及一种列车全天候运行方法、装置、电子设备及存储介质。
背景技术:2.全天候运行是指不限时间不限气候的工作适应性。在轨道交通领域,全天候运行是指列车能够在一天内保持24h运行,在没有特殊原因的情况下,列车白天正常运行,夜间会降低列车开行频率,保证乘客的基本需求。因此,通宵运营是列车全天候运行的重要特征。
3.由于轨道线路需要一定的时间进行维修,目前难以实现列车的全天候运行。
技术实现要素:4.本技术实施例中提供了一种列车全天候运行方法、装置、电子设备及存储介质,可以有效难以实现列车的全天候运行的问题。
5.根据本技术实施例的第一个方面,提供了一种列车全天候运行方法,将全天运行时间划分为多个运行阶段;获取每个运行阶段预计出发的列车数量,以及每个列车使用的进路集合;根据每个运行阶段的列车数量以及进路集合,求解目标函数得到所述每个运行阶段的目标运行图,所述目标函数表示列车的总运行时间最小,所述目标运行图中,列车在维修区段的运行时间与维修区段的维修时间没有冲突;在每个运行阶段按照每个运行阶段的目标运行图进行运行。
6.根据本技术实施例的第二个方面,提供了一种列车全天候运行装置,该装置包括:划分模块,用于将全天运行时间划分为多个运行阶段;获取模块,用于获取每个运行阶段预计出发的列车数量,以及每个列车使用的进路集合;计算模块,用于根据每个运行阶段的列车数量以及进路集合,求解目标函数得到所述每个运行阶段的目标运行图,所述目标函数表示列车的总运行时间最小,所述目标运行图中,列车在维修区段的运行时间与维修区段的维修时间没有冲突;运行模块,用于在每个运行阶段按照每个运行阶段的目标运行图进行运行。
7.根据本技术实施例的第三个方面,提供了一种电子设备,该电子设备包括一个或多个处理器;存储器;一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行如上述应用于电子设备的方法。
8.根据本技术实施例的第四方面,本技术实施列提供一种计算机可读存储介质,所述计算机可读存储介质中存储有程序代码,其中,在所述程序代码运行时执行上述的方法。
9.采用本技术实施例中提供的列车全天候运行方法,将全天运行时间划分为多个运行阶段,根据目标函数求解各个运行阶段对应的目标运行图,并按照每个运行阶段对应的目标运行图运行。所述目标运行图中,列车在维修区段的运行时间与维修区段的维修时间
没有冲突,可确保列车不会因为维修而中断,目标函数为列车的总运行时间最小,可提升线路的运输能力,实现列车的全天候运行。
附图说明
10.此处所说明的附图用来提供对本技术的进一步理解,构成本技术的一部分,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:
11.图1为本技术一个实施例提供的列车全天候运行方法的流程图;
12.图2为本技术一个实施例提供的铁路路网结构的示意图;
13.图3为本技术一个实施例提供的在不同运行阶段的进路示意图;
14.图4为本技术另一个实施例提供的列车全天候运行方法的流程图;
15.图5为本技术一个实施例提供的列车全天候运行装置的功能模块图;
16.图6为本技术实施例提出的用于执行根据本技术实施例的列车全天候运行方法的电子设备的结构框图。
具体实施方式
17.全天候运行是从航空工业中发展起来的术语,是指不限时间不限气候的工作适应性,其主要是通过科技手段,在航空飞行器上安装各种电子设备,使其能够直接地面对各种复杂天气和地势环境,实现安全降落,不仅大大便利了人们的出行,同时有效地提高了民航的安全性。
18.对于城市轨道交通来说,其全天候运行是指车辆能够一天内保持24h运行,且由于若无特殊原因,轨道车辆白天正常运行,夜间会降低列车开行频率,保证乘客基本出行需求。因此,通宵运营是全天候运行的重要特征。
19.目前可以通过延时运行模式实现列车的延时运行。延时运行模式是在保证安全正常运行的前提下,延长部分轨道交通线路每日的运行时间。现在主要有两种方法延长运行时间,一种是在周末前一天的夜间,或者元旦、国庆等大型公共节假日,地铁运行线路适当延长夜间运行时间1至2小时;另一种是采取提前1至2小时发出地铁首班车开始日间运行,从而延长全日运行时间。可以满足一些特殊时段乘客的出行需求,而且模式组织方法较为简单,对线路设施设备和车辆的数量要求较少,运营企业的运营成本增加较少。这种通过延长运行时间的方法来满足乘客的出行需求是目前运用较多的组织方法之一。
20.采用延时运行模式需要严格的测算夜间施工作业天窗时间。根据现有条件分析,有可能实现将一天的运行时间延长至19至20小时,但对维保效率、相关设备系统及人员要求较高。
21.周期性检修运行模式是指以一段固定时间作为周期,通常是-周七天,根据一个周期内的客流和维修需求的变化规律,每天开设与之相适应的维修天窗,在周末或特殊时段实施全天候运行。
22.通常周末或节假日夜间,轨道交通的客流量相对较大,对全天候运行的需求更大。所以可以通过良好的配线条件、运输组织来实现轨道交通系统的周期性全天候运行,将重要、耗时的维保工作,从周末转移到周一至周四夜间时段来进行,保障轨道交通系统的行车安全。
23.实施周期性检修运行模式需要对一个周期内旅客每日出行量以及维保工作量有较为准确的统计,可能在实际运行中还需要进一步调整,这对运输调度的要求较高。此外,实现周末和节假日的全天候运行,意味着对非周末、非节假日夜间的维保效率要求更高,周末、节假日无法正常进行维护,相关设备系统会存在一定故障风险。
24.为了实现列车的全天候运行,本技术实施例中提供了一种列车全天候运行方法,将全天运行时间划分为多个运行阶段,根据目标函数求解各个运行阶段对应的目标运行图,并按照每个运行阶段对应的目标运行图运行。所述目标运行图中,列车在维修区段的运行时间与维修区段的维修时间没有冲突,即列车在维修区段的运行时间与维修区段的维修时间完全错开,避免运行时间和维修时间出现重合或交叉,可确保列车不会因为维修而中断,目标函数为列车的总运行时间最小,可提升线路的运输能力,实现列车的全天候运行。
25.本技术实施例中的方案可以采用各种计算机语言实现,例如,面向对象的程序设计语言java和直译式脚本语言javascript,以及python等。
26.为了使本技术实施例中的技术方案及优点更加清楚明白,以下结合附图对本技术的示例性实施例进行进一步详细的说明,显然,所描述的实施例仅是本技术的一部分实施例,而不是所有实施例的穷举。需要说明的是,在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互组合。
27.请参阅图1,本技术实施例提供了一种列车全天候运行方法,具体的该方法可以包括以下步骤。
28.步骤110,将全天运行时间划分为多个运行阶段。
29.为了实现列车的全天候运行,采用分段单线双向运营模式,也就是基于一线行车一线维修方式的分段单线双向运行模式进行列车的运行。全天候运行是为了实现列车可以在白天和夜间进行运行,为了可以得到全天候运行的运行图,可以将全天运行时间划分为多个运行阶段,具体的,可以根据维修时段来划分,例如,可以是分为维修前阶段,上行维修阶段,下行维修阶段,以及维修后阶段。需要说明的是,此处的全天运行时间可以是指1天24h,也可以是指夜间运行时间。
30.当然,还可以根据其他的方式对运行时间进行划分,例如,可以是将全天运行时间按照一天24h均分为2个阶段,4个阶段等,可以根据实际的需要进行设置,在此不做具体限定。本技术实施例仅以维修前阶段,上行维修阶段,下行维修阶段以及维修后阶段为例进行详细说明。
31.步骤120,获取每个运行阶段预计出发的列车数量,以及每个列车使用的进路集合。
32.在得到划分的多个运行阶段后,获取每个运行阶段预计出发的列车数量,以及每个列车使用的进路集合。进路通常可以分为到达进路,出发进路以及通过进路,具体可参照图2,示出了本技术实施例所采用的铁路路网结构。
33.路网由轨道、节点、信号机组成,可以清楚的反映列车在每节轨道上的占用情况。图2中的轨道按顺序排列成进路,到达进路是同一车站内从进站信号机到出站信号的列车路径,出发进路是同一车站内出站信号机到车站边界点的列车路径,通过进路是车站边界点到相邻通过信号机或两相邻信号机间的列车径路。本技术实施例中以列车进路为列车占用的最小单元,即一条进路最多只能有一列列车占用。
34.采用一线行车一线维修的模式,且终点和起点相同的情况下,经过维修任务的列车与未经过维修任务的列车,最大的区别在于列车经过的进路集合不同,即不经过维修任务的列车进路集合只包括原方向可能的进路,而经过维修任务的列车进路集合在维修任务所在的区间只包括对向方向可能的进路。具体可以参照图3,示出了不同运行阶段的进路示意图,其中(a)为维修前阶段,(b) 为上行维修阶段,(c)为下行维修阶段,(d)为维修后阶段,图中实线表示该进路尚未进行维修,可以正常通行,虚线表示该进路正在维修,不能通行。在不考虑维修的情况下,即在维修前阶段,下行维修阶段,维修后阶段,上行列车r正常沿上行线路运行,其经过的进路集br={bs2,bs4,bs6}。而在上行维修阶段,即(b)中,列车r受维修影响需要改变线路,则其进路集br={bs1, bs3,bs5}。同理对于下行列车r,在维修前阶段,维修后阶段以及上行维修阶段,其经过的进路集br={bs1,bs3,bs5},在下行维修阶段,其经过的进路集br={bs2,bs4,bs6}。
35.从而,可以为每个运行阶段设置对应的预计出发的列车数量以及列车经过的进路集合。
36.步骤130,根据每个运行阶段的列车数量以及进路集合,求解目标函数得到所述每个运行阶段的目标运行图,所述目标函数表示列车的总运行时间最小,所述目标运行图中,列车在维修区段的运行时间与维修区段的维修时间没有冲突。
37.在得到每个运行阶段的列车数量以及进路集合后,可以根据所述列车数量以及进路集合,求解目标函数得到每个运行阶段的目标运行图。
38.目标函数为预先建立的,表示列车的总运行时间的最小值。根据每个运行阶段的列车数量以及进路集合求解目标函数,可以得到在该列车数量以及进路集合下,求解得到列车的总运行时间的最小值,可以得到该运行阶段的运行图,即可以得到每辆列车在每个车站的达到时刻和出发时刻。
39.目标运行图中的列车在维修区段的运行时间与维修区段的维修时间没有冲突。可以理解的是,维修区段在维修时间时,是不允许列车运行的,因此,列车在维修区段的运行时间与维修区段的维修时间没有冲突,可以确保列车安全运行。为了确保目标运行图中的雷车在维修区段的运行时间和维修区段的维修时间没有冲突,可以将求解目标函数得到运行图作为初始运行图,再对所述初始运行图进行可行性验证,在初始运行图通过可行性验证时,作为该运行阶段的目标运行图。
40.在求解目标函数时,通常设置有多个约束条件,这些约束条件可以分为列车运行约束、运行途经进路约束以及列车进路顺序约束。
41.具体的,可以从所述多个运行阶段中确定目标运行阶段,根据目标运行阶段的列车数量以及进路集合,在列车运行约束、列车途经进路约束以及列车进路顺序约束下求解所述目标函数,得到所述目标运行阶段的初始运行图;根据目标运行阶段的列车数量以及进路集合,在列车运行约束、列车途经进路约束以及列车进路顺序约束下求解所述目标函数,得到所述目标运行阶段的初始运行图;对所述初始运行图进行可行性验证,得到验证结果,并根据所述验证结果确定所述目标运行阶段的目标运行图;在得到所述目标运行阶段的目标运行图之后,返回执行从所述多个运行阶段中确定目标运行阶段的步骤,以得到每个运行阶段对应目标运行图。
42.步骤140,在每个运行阶段按照每个运行阶段的目标运行图运行列车。
43.在得到每个运行阶段的目标运行图之后,由于目标运行图中,在维修区段的运行时间与维修时间没有冲突,从而每个运行阶段的目标运行图都是正确可行,从而,在每个运行阶段,可以按照对应目标运行图进行运行,从而可以实现列车的全天候运行。
44.运行图是表示列车在铁路区间运行及在车站到发或通过时刻的技术文件,在按照每个运行阶段的目标运行图进行运行时,可以是按照目标运行图中列车在车站的出发时刻,通过时刻等信息控制列车的运行,实现列车的全天候运行。
45.本技术实施例提供的列车全天候运行方法,将全天运行时间划分为多个运行阶段,根据目标函数求解各个运行阶段对应的目标运行图,并按照每个运行阶段对应的目标运行图运行。所述目标运行图中,列车在维修区段的运行时间与维修区段的维修时间没有冲突,可确保列车不会因为维修而中断,目标函数为列车的总运行时间最小,可提升线路的运输能力,实现列车的全天候运行。
46.请参阅图4,本技术另一实施例提供了一种列车全天候运行方法,在前述实施例的基础上重点描述了求解目标函数,得到每个运行阶段的运行图的过程,具体的该方法可包括以下步骤。
47.步骤210,将全天运行时间划分为多个运行阶段。
48.步骤220,获取每个运行阶段预计出发的列车数量,以及每个列车使用的进路集合。
49.步骤210和步骤220可参照前述实施例对应部分,在此不再赘述。
50.步骤230,从所述多个运行阶段中确定目标运行阶段,所述目标运行阶段为没有对应的目标运行图,且时序最早的运行阶段。
51.前述步骤将全天运行时间划分为多个运行阶段后,可以从所述多个运行阶段中确定目标运行阶段。其中,所述目标阶段为没有对应的目标运行图,且时序最早的运行阶段,例如,多个运行阶段按照时序排序依次为:阶段1,阶段 2,阶段3和阶段4,这4个阶段均没有对应的目标运行图的阶段,从而,可以从这4个阶段中确认阶段1为所述目标运行阶段。若计算得到了阶段1的目标运行图,则从阶段2,阶段3,和阶段4中确定阶段2为所述目标阶段。
52.步骤240,根据目标运行阶段的列车数量以及进路集合,在列车运行约束、列车途经进路约束以及列车进路顺序约束下求解所述目标函数,得到所述目标运行阶段的初始运行图。
53.在确定目标运行阶段后,可以根据所述目标运行阶段的列车数量以及进路集合,在多个约束条件下,求解目标函数得到所述目标运行阶段的初始运行图。
54.所述目标函数为:
[0055][0056]
其中,z表示列车总运行时间;表示列车r使用进路b的结束时间;表示列车r使用进路b的开始时间。求解得到目标函数时,可以得到每个列车在每个进路的开始时间和结束时间,从而可以得到目标运行阶段的初始运行图。
[0057]
在求解目标函数时,需要满足多个约束条件,多个约束条件包括列车运行约束、列车途经进路约束、以及列车顺序约束。下面详细说明每个约束。
[0058]
列车运行约束是主要是对列车在进路的开始时间,在进路的结束时间,以及列车
在车站的停站时间的约束。包括列车在进路的开始时间与列车是否使用所述进路的关系约束;列车在进路的结束时间与列车是否使用所述进路的关系约束;列车在进路的结束时间与列车在所述进路的开始时间的关系约束;列车在车站的停站时间约束。
[0059]
列车在进路的开始时间与列车是否使用所述进路的关系约束为:
[0060][0061]
其中,表示列车r使用进路b的开始时间;x
r,b
表示为0-1变量,1 表示列车r使用进路b,0表示列车r不使用进路b;m为极大的常数;r表示列车集合;br表示列车r使用的进路集合。
[0062]
列车在进路的结束时间与列车是否使用所述进路的关系约束为:
[0063][0064]
其中,表示列车r使用进路b的结束时间;x
r,b
表示为0-1变量,1表示列车r使用进路b,0表示列车r不使用进路b;m为极大的常数;;br表示列车r使用的进路集合。
[0065]
列车在进路的结束时间与列车在所述进路的开始时间的关系约束包括约束(3)至(10)。
[0066][0067]
其中,表示列车r使用进路b的结束时间;表示列车r使用进路b的开始时间;x
r,b
表示为0-1变量,1表示列车r使用进路b,0表示列车r 不使用进路b;l表示轨道;lb表示进路b所包含的轨道集合;t
r,l
表示列车r 在轨道l上以最大运行速度得到的运行时间,所述运行时间为整数;r表示列车集合;br表示列车r使用的进路集合;b
arrival
表示列车进站进路集合,站进路集合,表示在节点n的流出的进路集合;bm表示维修任务m所影响的进路集合,路集合,表示列车r的起点;n
boundary
表示分界点集合,
[0068]
约束(3)表示列车r在进路b走行时间应该为进路所包含的轨道l的走行时间t
r,l
。需要注意的是,列车r在起始车站出站时,需要有一定停站时间,故情况排除在外。同时设定的维修任务所在的线路可能会降速运行,需要单独考虑。
[0069][0070]
其中,表示列车r使用进路b的结束时间;表示列车r使用进路b的开始时间;x
r,b
表示为0-1变量,1表示列车r使用进路b,0表示列车r 不使用进路b;l表示轨道;
lb表示进路b所包含的轨道集合;t
r,l
表示列车r 在轨道l上以最大运行速度得到的运行时间,所述运行时间为整数;γ为0-1关系参数,为1表示当前阶段处于维修阶段,为0表示当前阶段没有维修任务;θ表示邻线维修时的运行速度系数,θ>1;r表示列车集合;br表示列车r使用的进路集合;b
arrival
表示列车进站进路集合,表示列车进站进路集合,表示在节点n 的流出的进路集合;bm表示维修任务m所影响的进路集合,表示维修任务m所影响的进路集合,表示列车r的起点;n
boundary
表示分界点集合,
[0071]
约束(4)与约束(3)类似,是列车r在经过设定的维修任务所影响的进路b的结束时间和开始时间的关系约束,如果此时正处于维修阶段(包括上行维修阶段或下行维修阶段),则运行时间需要乘以给定系数,降低运行速度,确保邻线维修安全。
[0072][0073]
其中,表示列车r在轨道l上以最大运行速度得到的运行时间;br表示列车r使用的进路集合;表示列车r使用进路b的结束时间;表示列车r 使用进路b的开始时间;x
r,b
表示为0-1变量,1表示列车r使用进路b,0表示列车r不使用进路b;t
r,l
表示列车r在轨道l上以最大运行速度得到的运行时间,所述运行时间为整数;stop
r,s
表示列车r在车站s的实际停站时间;表示列车r起点;n
boundary
表示分界点集合。
[0074]
约束(5)为列车r出站进路走行时间约束,和列车r在出站点n所在车站的实际停站时间,在分界点始发列车的进路运行时间计算被排除在外。
[0075][0076]
其中,表示列车r使用进路b的结束时间;表示列车r使用进路b的开始时间;x
r,b
表示为0-1变量,1表示列车r使用进路b,0表示列车r 不使用进路b;l表示轨道;lb表示进路b所包含的轨道集合;cb表示进路b所包含的轨道组集合;t
r,l
表示列车r在轨道l上以最大运行速度得到的运行时间,所述运行时间为整数;r表示列车集合;br表示列车r使用的进路集合;b
arrival
表示列车进站进路集合,
[0077]
约束(6)也就是列车r进路b走行时间为进路所包含的轨道的走行时间,不包含最后一段轨道(在到发线上的)走行时间。该情况还包含列车起始节点为分界点的进站情况。
[0078][0079]
其中,表示在节点n的流出的进路集合;br表示列车r使用的进路集合;表示列车r使用进路b的开始时间;表示列车r在起点的可能最晚出发时间。
[0080]
约束(7)表示列车r在起始节点最早可能离开时间。
[0081][0082]
其中,表示在节点n的流出的进路集合;br表示列车r使用的进路集合;表示列车r使用进路b的开始时间;表示列车r在起点的可能最早出发时间。
[0083]
约束(8)表示列车r在起始节点最晚可能离开时间。
[0084][0085]
其中,表示在节点n的流入的进路集合;br表示列车r使用的进路集合;表示列车r使用进路b、的结束时间;表示在节点n的流出的进路结合;表示列车r使用进路b的开始时间;nr表示列车r可能途径的节点集合,列车起点和终点除外,n
siding
表示车站内有信号机的侧线节点集合,即为进路之间连接的节点,n
main
表示车站内有信号机的正线节点集合,即为进路之间连接的节点,即为进路之间连接的节点,表示列车r可能途经的特殊节点集合,示列车r可能途经的特殊节点集合,表示列车r的起点;表示列车r的终点。
[0086]
由于进站进路需要提前解锁,故进路的结束时间会被提前,约束(9)只分析不需要提前解锁的进路与其下一进路间时间的接续关系。也就是列车r 在其可能途径节点n相邻的进路间,下一进路b、开始时间等于上一进路b结束时间。
[0087][0088]
其中,ns表示车站s的节点结合,n
siding
表示车站内有信号机的侧线节点集合,即为进路之间连接的节点,n
main
表示车站内有信号机的正线节点集合,即为进路之间连接的节点,为进路之间连接的节点,表示列车r 可能途经的特殊节点集合,可能途经的特殊节点集合,表示在节点n的流入的进路集合; br表示列车r使用的进路集合;表示列车r使用进路b、的结束时间;stop
r,s
表示列车r在车站s的实际停站时间;x
r,b
′
表示为0-1变量,1表示列车r使用进路b
′
,0表示列车r不使用进路b
′
;表示表示列车r在进路b′
上以最大运行速度得到的运行时间;cb′
表示进路b
′
所包含的轨道组集合;表示在节点n 的流出的进路集合;表示列车r使用进路b的开始时间。
[0089]
由于进站进路需要提前解锁,故进路的结束时间会被提前。约束(10)中,进路会提前解锁,所以进路与其下一进路间时间的接续关系间需要加上进路最后一段轨道的走行时间和在连接点所在车站的停站时间。
[0090]
列车在车站的停站时间约束包括约束(11)和约束(12)。
[0091][0092]
其中,stop
r,s
表示列车r在车站s的实际停站时间;dwell
r,s
表示列车r在车站s的计划停站时间;sr表示列车r可能途径的车站集合,起点和终点车站除外;表示列车r的起始车站,表示列车r的终到车站;s表示车站集合,用s索引,即s∈s。
[0093]
约束(11)为列车r在车站s的基本停站时间要求。
[0094][0095]
其中,stop
r,s
表示列车r在车站s的实际停站时间;x
r,b
表示为0-1变量, 1表示列车r使用进路b,0表示列车r不使用进路b;m表示极大的常数;n
main
表示车站内有信号机的正线节点集合,即为进路之间连接的节点;br表示列车 r使用的进路集合;表示在节点n的流入的进路集合;sn表示节点n所在的车站s;sr表示列车r可能途径的车站集合,起点和终点车站除外;表示列车r的起始车站,表示列车r的终到车站。
[0096]
约束(11)中列车r通过正线通过车站时,停站时间为0;列车r侧线通过车站时,存在停站时间。
[0097]
列车途经进路约束包括对列车途经的进路的数量的约束,以保证列车选择唯一的进路。具体的包括约束(13)-(16)。
[0098][0099]
其中,表示在节点n的流出的进路结合;br表示列车r使用的进路集合; x
r,b
表示为0-1变量,1表示列车r使用进路b,0表示列车r不使用进路b;表示列车r起点;r表示列车集合。
[0100][0101]
其中,表示在节点n的流入的进路集合;br表示列车r使用的进路集合;表示列车r的终点;x
r,b
表示为0-1变量,1表示列车r使用进路b,0表示列车r不使用进路b;表示列车r终点;r表示列车集合。
[0102]
[0103]
其中,表示在节点n的流出的进路结合;br表示列车r使用的进路集合; x
r,b
表示为0-1变量,1表示列车r使用进路b,0表示列车r不使用进路b;表示在节点n的流入的进路集合;表示列车r起点;表示列车r终点;r表示列车集合。
[0104][0105]
其中,ns表示车站s的节点结合,n
siding
表示车站内有信号机的侧线节点集合,即为进路之间连接的节点,n
main
表示车站内有信号机的正线节点集合,即为进路之间连接的节点,为进路之间连接的节点,表示在节点n的流入的进路集合;br表示列车r使用的进路集合;x
r,b
′
表示为0-1变量,1表示列车r使用进路b`,0表示列车r不使用进路b`;sr表示列车r可能途径的车站集合,起点和终点车站除外;r表示列车集合。
[0106]
其中,约束(13)表示列车r在初始节点有且仅选择一条进路;约束(14) 表示列车r在终到节点有且仅选择一条进路;约束(15)表示在列车r途经节点n,流入进路数量等于流出进路数量;约束(16)表示在列车r途经车站 s,进站进路的总数量只能为1。
[0107]
进路顺序约束包括列车在通过进路以及出站进路的顺序约束,列车在进站进路的顺序约束,以及列车在车站不同初始位置的顺序约束。其中,列车在通过进路以及出站进路的顺序约束包括约束(17)-(21);列车在进站进路的顺序约束包括(22)-(23);列车在车站不同初始位置的顺序约束包括约束(24)
ꢀ‑
(27)。
[0108][0109]
其中,xr′
,b
′
表示为0-1变量,1表示列车r
′
使用进路b
′
,0表示列车r
′
不使用进路b
′
;m为极大的常数;x
r,b
表示为0-1变量,1表示列车r使用进路b,0 表示列车r不使用进路b;表示列车r
′
使用进路b
′
的开始时间;表示列车r使用进路b的结束时间;μ
r,b,r
′
,b
′
表示0-1变量,为1表示列车r使用进路b的时间在列车r
′
使用进路b
′
的时间之前,也就是表明列车在冲突进路上的先后顺序,为0反之;n
siding
表示车站内有信号机的侧线节点集合,即为进路之间连接的节点,n
main
表示车站内有信号机的正线节点集合,即为进路之间连接的节点,br表示列车r使用的进路集合;表示在节点n1的流入的进路集合;表示在节点n1的流出的进路集合;表示在节点n2的流入的进路集合;表示在节点n2的流出的进路集合;ε
b,b
′
为0-1 关系参数,为1表示进路b和进路b
′
之间存在冲突关系。
[0110]
约束(17)表示当列车r和r
′
使用冲突进路b和b
′
后,列车r
′
进路开始时间晚于列车r进路结束时间。进路b和b
′
的关系为以下几种情况:(1)同为进站进路,但终到节点不一样,(2)同为出站进路,但起始节点不一样;(3)一个进路为出站进路,另一进路为进站进路,出站进路的起始节点和进站进路的终到节点不一样。
[0111][0111][0112]
其中,xr′
,b
′
表示为0-1变量,1表示列车r
′
使用进路b
′
,0表示列车r
′
不使用进路b
′
;m为极大的常数;x
r,b
表示为0-1变量,1表示列车r使用进路b,0 表示列车r不使用进路b;表示列车r使用进路b的开始时间;表示列车r
′
使用进路b
′
的结束时间;μ
r,b,r
′
,b
′
表示0-1变量,为1表示列车r使用进路b的时间在列车r
′
使用进路b
′
的时间之前,也就是表明列车在冲突进路上的先后顺序,为0反之;n
siding
表示车站内有信号机的侧线节点集合,即为进路之间连接的节点,n
main
表示车站内有信号机的正线节点集合,即为进路之间连接的节点,br表示列车r使用的进路集合;表示在节点n1的流入的进路集合;表示在节点n1的流出的进路集合;表示在节点n2的流入的进路集合;表示在节点n2的流出的进路集合;ε
b,b
′
为0-1 关系参数,为1表示进路b和进路b
′
之间存在冲突关系。
[0113]
约束(18)表示当列车r和r
′
使用冲突出站进路b和b
′
后,列车r进路开始时间晚于列车r
′
进路结束时间。进路b和b
′
的关系为以下几种情况:(1)同为进站进路,但终到节点不一样,(2)同为出站进路,但起始节点不一样;(3) 一个进路为出站进路,另一进路为进站进路,出站进路的起始节点和进站进路的终到节点不一样。
[0114][0115]
其中,xr′
,b
表示为0-1变量,1表示列车r
′
使用进路b,0表示列车r
′
不使用进路b;x
r,b
表示为0-1变量,1表示列车r使用进路b,0表示列车r不使用进路b;表示列车r
′
使用进路b的开始时间;表示列车r使用进路b 的结束时间;m表示极大的常数;μ
r,b,r
′
,b
′
表示0-1变量,为1表示列车r使用进路b的时间在列车r
′
使用进路b
′
的时间之前,也就是表明列车在冲突进路上的先后顺序,为0反之;br表示列车r使用的进路集合;br′
表示列车r
′
使用的进路集合。
[0116]
约束(19)表示当列车r和r
′
使用同一进路,列车r
′
进路开始时间晚于列车r进路结束时间。
[0117][0118]
其中,xr′
,b
表示为0-1变量,1表示列车r
′
使用进路b,0表示列车r
′
不使用进路b;x
r,b
表示为0-1变量,1表示列车r使用进路b,0表示列车r不使用进路b;表示列车r使用进路b的开始时间;表示列车r
′
使用进路b 的结束时间;m表示极大的常数;μ
r,b,r
′
,b
′
表示0-1变量,为1表示列车r使用进路b的时间在列车r
′
使用进路b
′
的时间之前,也就是表明列车在冲突进路上的先后顺序,为0反之;br表示列车r使用的进路集合;br′
表示列车r
′
使用的进路集合。
[0119]
约束(20)表示当列车r和r
′
使用同一进路,列车r进路开始时间晚于列车r、进路结束时间。
[0120][0121]
其中,μ
r,b,r
′
,b
′
表示0-1变量,为1表示列车r使用进路b的时间在列车r 使用进路b
′
的时间之前,也就是表明列车在冲突进路上的先后顺序,为0反之;μ
r,b
′
,r
′
,b
′
表示0-1变量,为1表示列车r使用进路b
′
的时间在列车r
′
使用进路b
′
的时间之前,也就是表明列车在冲突进路上的先后顺序,为0反之。
[0122]
约束(21)表示当列车r和r
′
使用冲突出站进路b和b
′
后,由进路为区间进路,列车顺序不发生改变。
[0123][0124][0125]
其中,m为极大的常数;xr′
,b
′
表示为0-1变量,1表示列车r
′
使用进路b
′
, 0表示列车r
′
不使用进路b
′
;x
r,b
表示为0-1变量,1表示列车r使用进路b,0 表示列车r不使用进路b;表示列车r
′
使用进路b
′
的开始时间;表示列车r使用进路b的结束时间;stop
r,s
表示列车r在车站s的实际停站时间;表示表示列车r在进路b上以最大运行速度得到的运行时间;cb表示进路b所包含的轨道组集合;μ
r,b,r
′
,b
′
表示0-1变量,为1表示列车r使用进路b的时间在列车r
′
使用进路b
′
的时间之前,也就是表明列车在冲突进路上的先后顺序,为0反之;n
siding
表示车站内有信号机的侧线节点集合,即为进路之间连接的节点,n
main
表示车站内有信号机的正线节点集合,即为进路之间连接的节点,br
表示列车r使用的进路集合;br′
表示列车r
′
使用的进路集合;表示在节点n的流入的进路集合;sn表示节点n所在的车站s; sr表示列车r可能途径的车站集合,起点和终点车站除外;表示列车r的起始车站;表示列车r的终到车站。
[0126]
约束(22)表示当列车r和r
′
使用冲突进站进路b和b
′
后,且进路b和b
′
的终点节点一样,列车r
′
进路开始时间晚于列车r进路结束时间加列车停站时间、最后一段轨道运行时间。
[0127][0128]
其中,m为极大的常数;xr′
,b
′
表示为0-1变量,1表示列车r
′
使用进路b
′
, 0表示列车r
′
不使用进路b
′
;x
r,b
表示为0-1变量,1表示列车r使用进路b,0 表示列车r不使用进路b;表示列车r使用进路b的开始时间;表示列车r
′
使用进路b
′
的结束时间;stopr′
,s
表示列车r
′
在车站s的实际停站时间;表示表示列车r
′
在进路b
′
上以最大运行速度得到的运行时间;cb′
表示进路 b
′
所包含的轨道组集合;μ
r,b,r
′
,b
′
表示0-1变量,为1表示列车r使用进路b的时间在列车r
′
使用进路b
′
的时间之前,也就是表明列车在冲突进路上的先后顺序,为0反之;n
siding
表示车站内有信号机的侧线节点集合,即为进路之间连接的节点,n
main
表示车站内有信号机的正线节点集合,即为进路之间连接的节点,br表示列车r使用的进路集合;表示在节点n 的流入的进路集合;sn表示节点n所在的车站s;sr表示列车r可能途径的车站集合,起点和终点车站除外;表示列车r的起始车站;表示列车r的终到车站。
[0129]
约束(23)表示当列车r和r
′
使用冲突进站进路b和b
′
后,且进路b和b
′
的终点节点一样,列车r进路开始时间晚于列车r`进路结束时间加列车停站时间、最后一段轨道运行时间。
[0130][0131]
其中,m为极大的常数;xr′
,b
′
表示为0-1变量,1表示列车r
′
使用进路b
′
, 0表示列车r′
不使用进路b
′
;表示列车r
′
使用进路b
′
的开始时间;表示列车r使用进路b的结束时间;表示在节点n的流出的进路集合;br表示列车r使用的进路集合;stop
r,s
表示列车r在车站s的实际停站时间;表示列车r的起始车站;br′
表示列车r
′
使用的进路集合;表示在节点n的流入的进路集合;表示列车r起点;表示列车r可能途经的特殊节点集合,的特殊节点集合,表示列车r的特殊起点车站,表明在该车站,列车的起始节点是在车站与区间的分界口处,也就是列车是从分界口处进入车站的。
[0132]
约束(24)表示当列车r在初始节点且该节点为出站信号机所在处出发,列车r使用出站进路b,列车r
′
使用与b冲突的进站进路b
′
时,列车r
′
进路开始时间晚于列车r进路开始时间加列车停站时间。
[0133][0134]
其中,m为极大的常数;xr′
,b
′
表示为0-1变量,1表示列车r
′
使用进路b
′
, 0表示列车r
′
不使用进路b
′
;表示列车r
′
使用进路b
′
的开始时间;表示在节点n的流出的进路集合;br表示列车r使用的进路集合;表示列车r 使用进路b的结束时间;表示列车r的起始车站;br′
表示列车r
′
使用的进路集合;表示在节点n的流入的进路集合;表示列车r起点;表示列车r可能途经的特殊节点集合,表示列车r可能途经的特殊节点集合,表示列车r的特殊起点车站,表明在该车站,列车的起始节点是在车站与区间的分界口处,也就是列车是从分界口处进入车站的。
[0135]
约束(25)表示当列车r在初始节点且该节点不为出站信号机所在处,而是出站信号机后方节点出发,列车r使用出站进路b,列车r
′
使用与b冲突的进站进路b
′
时,列车r进路开始时间晚于列车r进路结束时间。
[0136][0137]
其中,m为极大的常数;xr′
,b
′
表示为0-1变量,1表示列车r
′
使用进路b
′
, 0表示列车r
′
不使用进路b
′
;x
r,b
表示为0-1变量,1表示列车r使用进路b,0 表示列车r不使用进路b;表示列车r
′
使用进路b
′
的开始时间;表示列车r使用进路b的结束时间;sn表
示节点n所在的车站s;表示列车 r的特殊起点车站,表明在该车站,列车的起始节点是在车站与区间的分界口处,也就是列车是从分界口处进入车站的;br表示列车r使用的进路集合;表示在节点n的流出的进路集合;br′
表示列车r
′
使用的进路集合;表示列车r 起点。
[0138]
约束(26)表示当列车r在初始节点且该节点为车站与区间分界点时,列车r使用进站进路b,列车r
′
使用与b冲突的进站进路b
′
时,列车r
′
进路开始时间晚于列车r进路结束时间。
[0139][0140]
其中,m为极大的常数;xr′
,b
表示为0-1变量,1表示列车r
′
使用进路b, 0表示列车r
′
不使用进路b;x
r,b
表示为0-1变量,1表示列车r使用进路b,0 表示列车r不使用进路b;表示列车r
′
使用进路b的开始时间;表示列车r使用进路b的结束时间;stop
r,s
表示列车r在车站s的实际停站时间;sn表示节点n所在的车站s;表示列车r的特殊起点车站,表明在该车站,列车的起始节点是在车站与区间的分界口处,也就是列车是从分界口处进入车站的;br表示列车r使用的进路集合;br′
表示列车r
′
使用的进路集合;表示在节点n的流出的进路集合;表示列车r起点。
[0141]
约束(27)表示当列车r在初始节点,且该节点为车站与区间分界点时,列车r使用进站进路b,列车r
′
也使用进站进路b
′
时,列车r
′
进路开始时间晚于列车r进路结束时间加停站时间。
[0142]
步骤250,对所述初始运行图进行可行性验证,得到验证结果,并根据所述验证结果确定所述目标运行阶段的目标运行图。
[0143]
通过上述的约束求解目标函数后,可以得目标运行阶段的初始运行图,在得到所述初始运行图后,可以对所述初始运行图进行可行性验证,得到验证结果。
[0144]
具体的,可以是检查所述初始运行图中的列车在维修区段的维修时间和维修区段的运行时间是否出现冲突。具体可以参照图5,示出了初始运行图可能出现的情况的示意图。由于目标函数对列车到达时间不做限制,会出现列车运行线跨越两个阶段的情况,导致运行图有错误的可能。如图5所示,运行图以虚线分为维修前阶段与上行维修阶段,某上行列车在维修前阶段出发,如5(a) 所示,列车运行跨越两个阶段,但与维修任务的时间没有冲突,则该运行图正确可行;而在5(b)中,列车在维修区段的运行时间与维修时间产生冲突,该运行图不可行。
[0145]
在对所述初始运行图进行可行性验证后,得到验证结果包括出现冲突或不冲突。若验证结果为出现冲突,表明该初始运行图中存在错误,则重新求解目标函数得到所述目标运行阶段的初始运行图,直到对所述初始运行图的验证结果为不冲突时,得到所述目标运行阶段的目标运行图;若所述验证结果为不冲突,可以确定所述初始运行图为所述目标
运行阶段的目标运行图。
[0146]
步骤260,在得到所述目标运行阶段的目标运行图之后,返回执行从所述多个运行阶段中确定目标运行阶段的步骤,以得到每个运行阶段对应目标运行图。
[0147]
在确定所述目标运行阶段的目标运行图之后,可以返回执行步骤230,即继续从多个运行阶段中确定目标运行阶段,并对确定目标运行阶段求解目标运行图。如前举例中,4个运行阶段按照时序排序依次为:阶段1,阶段2,阶段 3和阶段4,首先确定的目标运行阶段为阶段1,在得到阶段1的目标运行图之后,确定为没有对应的目标运行图,且时序最早的运行阶段为所述目标运行阶段,即阶段2为新的目标运行阶段,在求解得到阶段2的目标运行图后,确定阶段3为目标运行阶段,以此类推,可以得到每个运行阶段的目标运行图。
[0148]
步骤270,在每个运行阶段按照每个运行阶段的目标运行图运行列车。
[0149]
步骤270可参照前述实施例对应部分,在此不再赘述。
[0150]
本技术实施例提供的列车全天候运行方法,在列车运行约束、列车途经进路约束以及列车进路顺序约束下求解目标函数,可得到目标运行阶段的初始运行图,确保得到的初始运行图中不会出现列车运行和顺序冲突,对所述初始运行图进行可行验证,确保每个运行阶段的目标运行图中,在维修区段的运行时间和维修时间不会出现冲突,可保证按照每个运行阶段的目标运行图运行时可实现列车的全天候运行。
[0151]
下面将以一个具体的实例对列车的全天候运行方法进行说明。假设地铁线为r1线,全线配置有7个车站,可参照图6,在7个车站中,配有双渡线和交叉渡线的车站共有4个,分别为车站1,车站2,车站3和车站7。根据分段单线双向运行模式的运输组织特点,列车从维修区段进行非维修区段,以及从维修区段进入维修区段,如果原线路属于计划维修线路,那么就需要经由渡线进行转线,所以维修区段的划分要求两端车站必须为配置渡线的车站。因此,可以将全线分为三个维修区段,分别为车站1-车站7,车站1-车站2,车站2
‑ꢀ
车站3。
[0152]
可以理解的是,列车在白天可以保证正常运行,为了实现列车全天候运行,主要是在夜间安排行车,且维修天窗也通常发生在夜间,因此,可以将除了白天的运行时间之外的时间,即夜间运行时间作为全天运行时间,将所述全天运行时间分为两个运行时段,为前期和后期,前期开行夜间列车10列,后期开行夜间列车20列车。
[0153]
首先将前期作为目标运行阶段,获取前期10列列车所经过的进路集合,根据列车数量和进路集合,在列车运行约束,列车途经进路约束,以及列车进路顺序约束下,求解所述目标函数,可以得到前期的初始运行图,在确定所述初始运行图中在维修区段的运行时间和维修时间不冲突时,得到目标运行图。继续求解下一运行阶段的目标运行图,在得到前期和后期的目标运行图之后,可以按照所述目标运行图进行按照列车运行。由于此处的全天运行时间为夜间运行时间,因此,可以实现夜间的正常行车,白天的行车计划不变,即可以实现列车的全天候运行。
[0154]
请参阅图5,本技术实施例提供了一种列车全天候运行装置300,所述列车全天候运行装置300包括划分模块310,获取模块320,计算模块330以及运行模块340。
[0155]
所述划分模块310,用于将全天运行时间划分为多个运行阶段;所述获取模块320,用于获取每个运行阶段预计出发的列车数量,以及每个列车使用的进路集合;所述计算模块330,用于根据每个运行阶段的列车数量以及进路集合,求解目标函数得到所述每个运行
阶段的目标运行图,所述目标函数表示列车的总运行时间最小,所述目标运行图中,列车在维修区段的运行时间与维修区段的维修时间没有冲突;所述运行模块340,用于在每个运行阶段按照每个运行阶段的目标运行图进行运行。
[0156]
进一步的,所述计算模块320还用于从所述多个运行阶段中确定目标运行阶段,所述目标运行阶段为没有对应的目标运行图,且时序最早的运行阶段;根据目标运行阶段的列车数量以及进路集合,在列车运行约束、列车途经进路约束以及列车进路顺序约束下求解所述目标函数,得到所述目标运行阶段的初始运行图;对所述初始运行图进行可行性验证,得到验证结果,并根据所述验证结果确定所述目标运行阶段的目标运行图;在得到所述目标运行阶段的目标运行图之后,返回执行从所述多个运行阶段中确定目标运行阶段的步骤,以得到每个运行阶段对应目标运行图。
[0157]
进一步的,所述计算模块320还用于确定所述初始运行图中,在维修区段的运行时间与维修时间是否出现冲突;若所述验证结果为出现冲突,重新求解目标函数得到初始运行图,直到所述验证结果为不冲突时,得到所述目标运行阶段的目标运行图;在所述检验结果为不冲突时,确定所述初始运行图为所述目标运行阶段的目标运行图。
[0158]
进一步的,所述目标函数为:
[0159][0160]
其中,z表示列车总运行时间;表示列车r使用进路b的结束时间;表示列车r使用进路b的开始时间。
[0161]
进一步的,所述列车运行约束包括:列车在进路的开始时间与列车是否使用所述进路的关系约束;列车在进路的结束时间与列车是否使用所述进路的关系约束;列车在进路的结束时间与列车在所述进路的开始时间的关系约束;列车在车站的停站时间约束。
[0162]
进一步的,所述列车途经进路约束包括:对列车途经的进路的数量的约束。
[0163]
进一步的,所述进路顺序约束包括:列车在通过进路以及出站进路的顺序约束;列车在进站进路的顺序约束;列车在车站不同初始位置的顺序约束。
[0164]
本技术实施例提供的列车全天候运行装置,将全天运行时间划分为多个运行阶段,根据目标函数求解各个运行阶段对应的目标运行图,并按照每个运行阶段对应的目标运行图运行。所述目标运行图中,列车在维修区段的运行时间与维修区段的维修时间没有冲突,可确保列车不会因为维修而中断,目标函数为列车的总运行时间最小,可提升线路的运输能力,实现列车的全天候运行。
[0165]
要说明的是,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0166]
请参阅图6,本技术实施例提供了一种电子设备的结构框图,该电子设备 400包括处理器410以及存储器420以及一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器420中并被配置为由所述一个或多个处理器410执行,所述一个或多个程序配置用于执行上述列车全天候运行方法。
[0167]
该电子设备400可以是智能手机、平板电脑等能够运行应用程序的终端设备,还可以是服务器。本技术中的电子设备400可以包括一个或多个如下部件:处理器410、存储器420、以及一个或多个应用程序,其中一个或多个应用程序可以被存储在存储器420中并被
配置为由一个或多个处理器410执行,一个或多个程序配置用于执行如前述方法实施例所描述的方法。
[0168]
处理器410可以包括一个或者多个处理核。处理器410利用各种接口和线路连接整个电子设备400内的各个部分,通过运行或执行存储在存储器420内的指令、程序、代码集或指令集,以及调用存储在存储器420内的数据,执行电子设备400的各种功能和处理数据。可选地,处理器410可以采用数字信号处理(digital signal processing,dsp)、现场可编程门阵列(field—programmablegate array,fpga)、可编程逻辑阵列(programmable logic array,pla)中的至少一种硬件形式来实现。处理器410可集成中央处理器(central processingunit,cpu)、图像处理器(graphics processing unit,gpu)和调制解调器等中的一种或几种的组合。其中,cpu主要处理操作系统、用户界面和应用程序等;gpu用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器410中,单独通过一块通信芯片进行实现。
[0169]
存储器420可以包括随机存储器(random access memory,ram),也可以包括只读存储器(read-only memory)。存储器420可用于存储指令、程序、代码、代码集或指令集。存储器420可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于实现至少一个功能的指令 (比如触控功能、声音播放功能、图像播放功能等)、用于实现下述各个方法实施例的指令等。存储数据区还可以存储电子设备400在使用中所创建的数据 (比如电话本、音视频数据、聊天记录数据)等。
[0170]
本技术实施例提供的电子设备,将全天运行时间划分为多个运行阶段,根据目标函数求解各个运行阶段对应的目标运行图,并按照每个运行阶段对应的目标运行图运行。所述目标运行图中,列车在维修区段的运行时间与维修区段的维修时间没有冲突,可确保列车不会因为维修而中断,目标函数为列车的总运行时间最小,可提升线路的运输能力,实现列车的全天候运行。
[0171]
本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、 cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0172]
本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和 /或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/ 或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0173]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0174]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0175]
尽管已描述了本技术的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本技术范围的所有变更和修改。
[0176]
显然,本领域的技术人员可以对本技术进行各种改动和变型而不脱离本技术的精神和范围。这样,倘若本技术的这些修改和变型属于本技术权利要求及其等同技术的范围之内,则本技术也意图包含这些改动和变型在内。