CN113837438A - 基于spfa算法的地铁乘务排班计划编制优化方法 - Google Patents
基于spfa算法的地铁乘务排班计划编制优化方法 Download PDFInfo
- Publication number
- CN113837438A CN113837438A CN202110954688.7A CN202110954688A CN113837438A CN 113837438 A CN113837438 A CN 113837438A CN 202110954688 A CN202110954688 A CN 202110954688A CN 113837438 A CN113837438 A CN 113837438A
- Authority
- CN
- China
- Prior art keywords
- crew
- time
- sections
- shift
- operation section
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000005457 optimization Methods 0.000 title claims abstract description 37
- 238000000034 method Methods 0.000 title claims abstract description 35
- 235000012054 meals Nutrition 0.000 claims description 6
- 125000004122 cyclic group Chemical group 0.000 claims description 2
- 238000010586 diagram Methods 0.000 abstract description 10
- 239000012634 fragment Substances 0.000 abstract 1
- 239000011159 matrix material Substances 0.000 description 12
- 238000011160 research Methods 0.000 description 6
- 238000013461 design Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000002068 genetic effect Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000013178 mathematical model Methods 0.000 description 2
- 241000221324 Cryptocarya rigida Species 0.000 description 1
- 206010063385 Intellectualisation Diseases 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 239000013256 coordination polymer Substances 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 238000010845 search algorithm Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000002922 simulated annealing Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000009941 weaving Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06311—Scheduling, planning or task assignment for a person or group
- G06Q10/063118—Staff planning in a project environment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06313—Resource planning in a project environment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06314—Calendaring for a resource
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
- G06Q50/26—Government or public services
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Engineering & Computer Science (AREA)
- Economics (AREA)
- Strategic Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Development Economics (AREA)
- Educational Administration (AREA)
- Game Theory and Decision Science (AREA)
- Quality & Reliability (AREA)
- Operations Research (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biodiversity & Conservation Biology (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Primary Health Care (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Train Traffic Observation, Control, And Security (AREA)
Abstract
本发明涉及轨道交通技术领域,涉及一种基于SPFA算法的地铁乘务排班计划编制优化方法,包括:以轮乘站为起止点,将乘务片段集合组合成乘务作业段的集合;构成早班、白班及夜班的三个网络图;初始化D数组,把起点加入循环队列,开始进入循环,直到队列为空才退出循环;进行松弛操作;对队列进行更新,得到最短路径的值;满足优化模型的路径作为最终求得的最短路径;更换起点,重新开始循环,求得更换后起点的最短路径;求得的各个最短路径即为早班时间段的乘务任务;将白班时间段与夜班时间段的各个乘务作业段进行求解,求得的所有最短路径即为一天的乘务排班计划。本方法简便、快速,适用于城市轨道交通乘务排班计划问题的求解。
Description
技术领域
本发明涉及轨道交通技术领域,具体地说,涉及一种基于SPFA算法的地铁乘务排班计划编制优化方法。
背景技术
地铁是城市轨道交通中最重要的一部分,随着地铁智能化以及城市发展的迫切需求,地铁规划运营的线路不断增加,行车密度不断提高,因此地铁运营管理将变得越来越困难和复杂。乘务计划是城市轨道交通运营管理中的核心工作之一,是保证城市轨道交通线路安全高效运营的基础。乘务计划一般分为乘务排班计划和乘务轮班计划,其中乘务排班计划是寻找列车车次与乘务任务之间的对应关系,是乘务轮班计划的基础,也是整个乘务计划编制过程中最复杂、难度最大的部分。
乘务计划是交通领域研究的热点之一,目前研究者们对于乘务计划的编制问题研究主要集中于铁路、航空及城市公交等方面,其中,在铁路方面的研究成果能够很好地为城市轨道交通乘务计划的研究提供参考。Hanafi等从多个乘务基地出发,构建了最小化乘务组费用的优化模型,得出了最优乘务交路方案。PantaLucic建立了乘务排班计划的多目标优化模型,将乘务排班计划分为两个阶段:第一阶段采用“pilot-by-pilot”的启发式算法生成一个初始可行解,第二阶段采用模拟退火技术改进在第一阶段生成的可行解。FrelingR等利用价格分支算法对乘务排班计划问题进行建模和求解,并设计了排班计划决策支持系统。褚飞跃等研究高速铁路单循环形式乘务排班计划编制问题,建立了以乘务交路总接续时间最短和冗余时间分布最均衡的双目标优化模型,设计基于动态启发式信息的蚁群优化算法。符卓等以所需要的高速动车组司机数和司机的冗余休息时间最少建立了编制日乘务交路的0-1整数规划模型,并设计了一个求解的禁忌搜索算法。林枫将乘务交路计划编制过程分为两阶段,第一阶段以总接续时间最小为目标将乘务区段组合为乘务交路段集合,第二阶段以过夜次数最小为目标,将过夜交路段组合为闭合乘务交路,并设计了MOMS求解算法。杨嘉宝等通过对带立即折返的高速动车组乘务交路回路优化构建问题的分析和抽象,建立其优化模型,并设计了一个蚁群-遗传混合算法求解该模型。
在城市轨道交通方面,Sydney.K.Chu从多个阶段对乘务排班计划进行研究,并分别采用了最短路算法、对称匹配和改进遗传算法进行求解;Janacek等将根据时间段分成的多个区间作为列生成算法中的一个子问题进行并行求解,此种方法新列的生成速度较快;石俊刚等建立了基于SPP模型的城轨乘务任务配对模型(R-CP),并基于列生成思想和跟随分支策略对乘务任务配对问题进行求解;许仲豪等以列生成算法为框架,采用集合分割模型作为主规划,将子规划归结为以乘务作业段之间的衔接关系为基础的网络图上的最短路问题,对乘务排班计划进行了研究;丰富等基于时间均衡度构建了乘务排班计划模型,并通过遗传算法对模型进行了求解;张增勇等构建了乘务作业段集合生成模型和乘务工作班生成模型,并针对构建的双层模型,下层模型采用改进的Dijkstra算法,上层模型采用离散粒子群算法进行了求解。
综上所述,目前国内关于城市轨道交通乘务排班计划的既有研究较少,且大多都采用列生成算法的思路进行探索。在求解NP-Hard问题的时候,列生成虽具有较好的效果,但其求解复杂、迭代次数较多等问题也不可忽视。
发明内容
本发明的内容是提供一种基于SPFA算法的地铁乘务排班计划编制优化方法,其能够克服现有技术的某种或某些缺陷。
根据本发明的一种基于SPFA算法的地铁乘务排班计划编制优化方法,其包括以下步骤:
STEP1:以轮乘站为起止点,将乘务片段集合组合成乘务作业段的集合Pi、Qi或Ri;
其中,Pi为早班时间段的乘务作业段,Qi为白班时间段的乘务作业段,Ri为夜班时间段的乘务作业段;
STEP2:以乘务作业段为顶点,乘务作业段之间的接续关系为边,ωij=Cij+ebctbcaij作为边上的权值,构成早班、白班及夜班的三个网络图;
ωij为网络图中弧上的权值;Cij为乘务作业段之间的接续时间;ebc为便乘时间的惩罚因子,取值视便乘的实际情况而定;tbc为乘务作业段i与乘务作业段j之间的便乘时间;aij为0-1变量,表示乘务作业段i与j之间是否存在便乘;
STEP3:初始化一个D数组,由顶点和顶点对应的权值构成,数组中的顶点为Pi、Qi或Ri,除了起点赋值为0外,其他顶点对应的权值都赋予无穷大;同时把起点P0、Q0或R0加入循环队列,从此处开始进入循环,直到队列为空才退出循环;
STEP4:进行第一次循环,循环队列的第一个起点P0、Q0或R0出列,然后对以P0、Q0或R0为弧尾的边对应的弧头顶点进行松弛操作,若P0、Q0或R0到该顶点的最短路径变短了,则更新循环数组中该顶点的权值为新的最短路径。当顶点都被松弛,而且不在队列中时,就把顶点加入循环队列中;
STEP5:进行第二次循环,新的队首元素出列,然后对以队首元素为弧尾的边对应的弧头顶点进行松弛操作,数组的权值及循环队列中的顶点再次更新;
STEP6:对队列进行更新,一直到队列为空才退出循环,此时数组里就保存了从源点到各顶点的最短路径值,以此得到起点P0、Q0或R0到各个顶点的最短路径的值;
STEP7:先选取满足下式的路径;
式中,Y表示乘务作业段之间的接续数量,xij表示0-1变量,表示乘务作业段i与j是否接续;n为乘务作业段的总数;
此时被选择的路径为运营成本最小的路径,在此基础上,再从被选择的路径中选取满足下式的路径;
W表示乘务排班计划总时间(总接续时间Z及便乘时间K之和),满足的路径作为最终求得的以P0、Q0或R0为起点的最短路径;
STEP8:更换起点,从STEP4重新开始循环,一直到退出循环,再求得更换后起点的最短路径;
STEP9:遍历早班时间段的a个顶点,直到所有顶点均被求得的路径包含其中;由此求得的各个最短路径即为早班时间段的乘务任务;
STEP10:将白班时间段与夜班时间段的各个乘务作业段按照上述方法进行求解,由此求得的所有最短路径即为一天的乘务排班计划。
作为优选,步骤STEP7中,建立以乘务排班计划总接续时间最小为优化目标的模型,如下式所示:
其中Z为乘务排班计划总接续时间,Cij为乘务作业段之间的接续时间,xij为0-1变量,当其为1时,表示乘务作业段i接续乘务作业段j;当其为0时,表示乘务作业段i不接续乘务作业段j;n表示乘务作业段总数;
同时对乘务作业段的接续进行约束,使得两个乘务作业段之间最多只能接续一次;
下式表示每个乘务作业段在排班计划中有且仅有一个紧前作业段;
下式表示每个乘务作业段在排班计划中有且仅有一个后续作业段,也就是乘务作业段i和j最多配对接续一次,求和均为0时表示该乘务作业段未能与其他乘务作业段接续,成为单个乘务作业段的乘务任务;
因此乘务作业段配对的两种情况,即不同的两个乘务作业段能够相互配对形成乘务任务或是部分乘务作业段不与其它乘务作业段配对单独形成乘务任务,都被包含其中;
对乘务作业段之间的接续时间进行约束,使其满足乘务作业段间的休息时间约束,如下式所示;
Cmin≤Cij≤Cmax;
式中,Cmin为乘务作业段间的最短休息时间,Cmax为乘务作业段间的最长休息时间;
对乘务任务中的司机连续工作时长进行约束,使其工作时长不能超过给定的连续工作时长限制,如下式所示;
式中,tj为乘务作业段j的司机工作时间,t0为乘务任务的第一个乘务作业段的工作时间,T为司机连续工作时间限制;
对乘务任务中的吃饭时间进行约束,使其满足吃饭之间标准,如下式所示;
tcfmin≤tcf≤tcfmax;
式中,tcf为一个乘务任务中的吃饭时间,tcfmin为最短吃饭时间,tcfmax为最长吃饭时间;
将两个优化目标结合起来,形成一个总时间最少的新优化模型,如下式所示;
本发明基于最短路算法思想,提出了一种乘务排班计划优化编制的方法。以乘务排班计划接续时间最少和便乘时间最少为目标建立模型,并以乘务作业段为顶点、乘务作业段之间的接续关系为弧,将乘务排班计划转化成了求解网络图中的最短路问题,通过SPFA(Shortest Path Faster Algorithm)算法进行求解。此方法计算更加简便、快速,适用于城市轨道交通乘务排班计划问题的求解,为制定更为科学准确且符合实际运营要求的乘务排班计划提供参考。
附图说明
图1为实施例1中一种基于SPFA算法的地铁乘务排班计划编制优化方法的流程图;
图2为实施例1中早班、白班或夜班网络图;
图3为实施例1中早班各乘务任务的时长示意图;
图4为实施例1中白班各乘务任务的时长示意图;
图5为实施例1中夜班各乘务任务的时长示意图。
具体实施方式
为进一步了解本发明的内容,结合附图和实施例对本发明作详细描述。应当理解的是,实施例仅仅是对本发明进行解释而并非限定。
实施例1
城市轨道交通乘务排班计划编制过程是将地铁线路的乘务段经过计算与编排,得到乘务排班日计划的过程。其编制步骤为:
(1)根据地铁的运行区段及其到发点确定乘务片段;
(2)根据乘务片段构建乘务作业段;
(3)根据乘务作业段编制乘务任务。
轮乘站是线路上特殊的车站,是乘务员交接班、用餐的固定地点,因此也可以被作为划分乘务作业段的依据。乘务作业段是乘务员值乘的基本单元,代表着相邻两个轮乘站之间的一段驾驶任务。乘务任务是一名乘务员值乘的乘务作业段的组合,乘务排班日计划即为所有乘务任务的组合。
合理的乘务任务需要满足以下约束:
(1)时间约束
乘务员单次工作时间不能超过最大连续工作时间;单次休息时间不能超过最大休息时间、不能低于最小休息时间;用餐时间必须在规定的用餐时间内,不能小于最小用餐时间、不能大于最大用餐时间。同时乘务员一天的工作时间要满足劳动法的要求。
(2)地点约束
乘务任务中接续的乘务作业段必须满足紧前乘务作业段的到达地点与紧后作业段的出发地点相同;若不相同,则需要便乘,即乘务人员为执行值乘任务或结束值乘任务搭乘列车往返于不同的轮乘站的行为,便乘时间应尽量减少。
数学模型的建立
乘务排班计划的数学建模为了便于论述,表1为模型中各个参数所表达的含义以及功能的相关解释与说明。
表1乘务问题数学模型变量及说明
以轮乘站为分割点将列车运行线分割成一系列的乘务作业段,并且将乘务作业段按照时间分为早班、白班、夜班三个时间的段的乘务作业段,以此构建乘务作业段的接续时间矩阵,如表2所示。
表2乘务作业段接续时间矩阵
表2中,行与列均表示不同组的乘务作业段。其中Pi(i=1,…,a)为早班时间段的乘务作业段(共有a个);Qi(i=a+1,…,a+b)为白班时间段的乘务作业段(共有b个);Ri(i=a+b+1,…,a+b+c)为夜班时间段的乘务作业段(共有c个)。令n=a+b+c为乘务作业段的总数,Cij(i,j=1,…,n)为乘务作业段Pi(或Qi、Ri)与乘务作业段Pj(或Qj、Rj)之间的接续时间,其值为前一个乘务作业段到达时间与后一个乘务作业段开始时间之差
前a行与前a列构成的a×a阶子矩阵表示早班时间段的乘务作业段间的接续时间矩阵,第a+1至a+b行与第a+1至a+b列构成的b×b阶子矩阵表示白班时间段的乘务作业段间的接续时间矩阵,后c行与后c列构成的c×c阶子矩阵表示夜班时间段的乘务作业段间的接续时间矩阵。由于乘务作业段根据作业时间被分为了早、白、夜三个班次,不同班次的乘务作业段之间就无法接续,其接续时间取一个足够大的正整数M表示。同时若乘务作业段间的接续时间不满足休息时间约束,则这样的乘务作业段无法相互接续,其接续时间也用M表示。
用分别表示乘务作业段i的起始站、终到站;分别表示乘务片段j的起始站、终到站。则当接续时间满足休息时间约束且时,Cij的值为当接续时间不满足休息时间约束时,或是乘务作业段i与乘务作业段j为不同班次的乘务作业段时,或是时,Cij的值为M。
最小化乘务排班计划总接续时间的优化模型
按照上述思路,可建立以乘务排班计划总接续时间最小为优化目标的模型,如式(1)所示。其中Z为乘务排班计划总接续时间,Cij为乘务作业段之间的接续时间,xij为0-1变量,当其为1时,表示乘务作业段i接续乘务作业段j;当其为0时,表示乘务作业段i不接续乘务作业段j。
同时对乘务作业段的接续进行约束,使得两个乘务作业段之间最多只能接续一次。式(2)表示每个乘务作业段在排班计划中有且仅有一个紧前作业段;式(3)表示每个乘务作业段在排班计划中有且仅有一个后续作业段,也就是乘务作业段i和j最多配对接续一次,求和均为0时表示该乘务作业段未能与其他乘务作业段接续,成为单个乘务作业段的乘务任务。因此乘务作业段配对的两种情况,即不同的两个乘务作业段能够相互配对形成乘务任务或是部分乘务作业段不与其它乘务作业段配对单独形成乘务任务,都被包含其中。
对乘务作业段之间的接续时间进行约束,使其满足乘务作业段间的休息时间约束,如式(4)所示;对乘务任务中的司机连续工作时长进行约束,使其工作时长不能超过给定的连续工作时长限制,如式(5)所示;对乘务任务中的吃饭时间进行约束,使其满足吃饭之间标准,如式(6)所示。
Cmin≤Cij≤Cmax (4)
tcf min≤tcf≤tcf max (6)
式中的Cmin为乘务作业段间的最短休息时间,Cmax为乘务作业段间的最长休息时间,tj为乘务作业段j的司机工作时间,t0为乘务任务的第一个乘务作业段的工作时间,T为司机连续工作时间限制,tcf为一个乘务任务中的吃饭时间,tcfmin为最短吃饭时间,tcfmax为最长吃饭时间。
式中,K为便乘时间,ebc为便乘时间的惩罚因子,取值视便乘的实际情况而定,tbc为乘务作业段i与乘务作业段j之间的便乘时间,aij为0-1变量,当其为1时,表示乘务作业段i与乘务作业段j之间存在便乘,当其为0时则不存在便乘。
在前面两个优化目标的基础上,可以将两个优化目标结合起来,形成一个总时间最少的新优化模型。
最小化乘务排班计划总运营成本的优化模型
由于各乘务作业段的起止时间都已确定,且乘务员的总在车时间也为固定值,则乘务排班计划的运营成本都体现在乘务员的工资上。所以要减少乘务排班计划所需的费用,就需要尽量减少乘务任务的数量,即增加每个乘务任务包含的乘务作业段的数量,使得乘务作业段之间的接续数量最大,如式(9)所示。
由此构成了一个最小化乘务排班计划总时间和总费用的双目标优化模型,此模型以式(9)为主要优化目标,式(8)为次要优化目标,更具有通用性。
算法设计
本实施例采用最短路的方法进行求解,分早、白、夜班三个部分分别构成网络图。将乘务作业段作为网络图的顶点,乘务作业段的接续关系作为弧,与xij相乘的数作为网络图中弧上的权值,即ωij=Cij+ebctbcaij,一条网路图中的最短路径即为一个乘务任务,因此乘务排班日计划即为网络图中多个最短路径的集合。图2为乘务作业段形成的网络图,中间一些时间点已经省去。
本实施例采用SPFA(Shortest Path Faster Algorithm)算法进行最短路径的求解。SPFA算法是求解单源最短路径问题的一种算法,采用了动态优化逼近的方法。它的原理是对图进行V-1次松弛操作,得到所有可能的最短路径。其优于Dijkstra算法的方面是边的权值可以为负数、实现简单,其时间复杂度为O(e),且算法可以进行若干种优化,提高了效率。
用D数组记录每个顶点的最短路径估计值,用邻接表或邻接矩阵来作为有向图的存储结构。设立一个先进先出的队列用来保存待优化的顶点,优化时每次取出队首结点u,并且用u点当前的最短路径估计值D[u]去优化调整其它各点的路径值D[v],若有调整,即D[v]的值减小了,且v点不在当前的队列中,就将v点放入队尾以待进一步优化。反复从队列里取出顶点来对当前最短路径进行优化,直至队空,此时数组里就保存了从源点到各顶点的最短路径值。
如图1所示,算法的基本步骤:
STEP1:以轮乘站为起止点,将乘务片段集合组合成乘务作业段的集合Pi(Qi或Ri)。
STEP2:以乘务作业段为顶点,乘务作业段之间的接续关系为边,ωij=Cij+ebctbcaij作为边上的权值,构成早班、白班及夜班的三个网络图。
STEP3:初始化一个D数组,由顶点和顶点对应的权值构成,数组中的顶点为Pi(Qi或Ri),除了起点赋值为0外,其他顶点对应的权值都赋予无穷大,这样有利于后续的松弛。同时把起点P0(Q0或R0)加入循环队列,从此处开始进入循环,直到队列为空才退出循环。
STEP4:首先进行第一次循环,循环队列的第一个起点P0(Q0或R0)出列,然后对以P0(Q0或R0)为弧尾的边对应的弧头顶点进行松弛操作,若P0(Q0或R0)到该顶点的最短路径变短了,则更新循环数组中该顶点的权值为新的最短路径。当顶点都被松弛了,而且不在队列中时,就把它们加入循环队列中。
STEP5:然后进行第二次循环,新的队首元素出列,然后对以队首元素为弧尾的边对应的弧头顶点进行松弛操作,步骤与STEP4类似,数组的权值及循环队列中的顶点再次更新。
STEP6:之后按照上述方法对队列进行更新,一直到队列为空才退出循环,此时数组里就保存了从源点到各顶点的最短路径值,以此得到起点P0(Q0或R0)到各个顶点的最短路径的值。
STEP7:先在其中选取满足式(9)的路径,此时被选择的路径为运营成本最小的路径,在此基础上,再从被选择的路径中选取满足式(8)的路径,作为最终求得的以P0(Q0或R0)为起点的最短路径。
STEP8:更换起点为Pi(Qi或Ri),将以P0(Q0或R0)为起点的最短路径经过的点去除,从STEP4重新开始循环,一直到退出循环,再求得以Pi(Qi或Ri)为起点的最短路径。
STEP9:遍历早班时间段的a个顶点,直到所有顶点均被求得的路径包含其中。由此求得的各个最短路径即为早班时间段的乘务任务。
STEP10:将白班时间段与夜班时间段的各个乘务作业段按照上述方法进行求解,由此求得的所有最短路径即为一天的乘务排班计划。
案例分析
本文采用C++编程实现上述模型和算法,并使用CoreTMi5 2.3GHz主频,16G内存的计算机运行。对成都地铁5号线的乘务排班计划问题进行研究。
该线路共设有41个车站,其中轮乘站共有8个,用S1-S8来表示,将乘务片段组合成乘务作业段的三个时间段的集合,其中早班时间段的乘务作业段有267个,白班时间段的乘务作业段有201个,夜班时间段的乘务作业段有218个,乘务作业段总数为686个。如表3、表4、表5所示。
表3早班乘务作业段集合
表4白班乘务作业段集合
表5夜班乘务作业段集合
表6 5号线乘务作业段接续时间矩阵
表7乘务排班计划表(早班)
表8乘务排班计划表(白班)
表9乘务排班计划表(夜班)
表6为成都地铁5号线的乘务作业段接续时间矩阵,在休息时间约束Cmin=10min,Cmax=30min的情况下,接续时间矩阵中Cij的取值便可以确定。结合便乘情况,确定构建的网络图中每条边的权值,随后就可以按照上述算法步骤进行乘务排班计划的计算,所形成的乘务排班计划如表7、表8、表9所示。其中,早班共有乘务任务53个,白班共有乘务任务41个,夜班共有乘务任务49个,总共有乘务任务143个。早班、白班、夜班的乘务任务时长统计图如图3、图4、图5所示,从中可以看出求得的乘务任务时长较为均衡。采用本文所给出的模型与算法求得的乘务排班日计划结果与手工方法所求得的结果对比如表10和表11所示。
表10乘务任务数量对比
表11乘务任务工作时长对比
由结果可以看出,基于SPFA算法的乘务排班计划具有以下优点:
(1)在满足相应约束条件的同时,此算法所求得的乘务任务数量较小,使得乘务排班计划的总成本较小。
(2)此算法所求得的各乘务任务的总接续时间较小,使得乘务排班计划的总工作时间较小,效率较高。
(3)此算法减少了便乘情况的发生,使得乘务人员的乘务任务执行效率较高。
(4)此算法计算时间较少,更加简洁、快速。
结论
(1)本实施例在建立模型的时候将乘务作业段根据时间段分成了早班、白班、夜班三部分,使得算法求解的时候不需要再遍历所有乘务作业段,只需要进行各个时间段内的乘务作业段的相互配对,提高了求解效率。
(2)在实际问题中,乘务片段及乘务作业段的起止时间已经确定,因此对乘务排班计划总工作时间影响最大的因素是各乘务任务的休息时间,即乘务作业段之间的接续时间。本发明在满足约束条件的情况下,尽量减少乘务作业段之间接续时间,使得乘务排班计划的总工作时间减少,方案较优。
(3)针对模型属于NP-Hard问题的特点,将乘务作业段作为网络图的顶点,乘务作业段的接续关系作为弧构建了相应的网络图,设计了一个求解的SPFA算法,并编程在计算机上实现,此算法实现简单,并且可以进行若干种优化,能够很好地提高编制效率。
(4)以成都地铁5号线为例进行乘务排班计划编制,对模型和算法进行测试,求得早班乘务任务个数为53个,任务时长为280h34min57s;白班乘务任务个数为41个,任务时长为199h54min51s;夜班乘务任务个数为49个,任务时长为215h25min37s。总乘务任务个数为143个,总工作时长为695h55min25s。与手工编制结果相比,本发明能快速地求出符合实际且较优的地铁乘务排班计划编制方案。
本实施例所提出方法能够较好地运用于NP-Hard问题,可以方便快捷地进行地铁乘务排班计划的编制。但若是乘务作业段的数目超出了一定的限制,此方法的求解效率将会逐渐降低,因此求解实际问题时需要根据实际情况进行优化。
以上示意性的对本发明及其实施方式进行了描述,该描述没有限制性,附图中所示的也只是本发明的实施方式之一,实际的结构并不局限于此。所以,如果本领域的普通技术人员受其启示,在不脱离本发明创造宗旨的情况下,不经创造性的设计出与该技术方案相似的结构方式及实施例,均应属于本发明的保护范围。
Claims (2)
1.基于SPFA算法的地铁乘务排班计划编制优化方法,其特征在于:包括以下步骤:
STEP 1:以轮乘站为起止点,将乘务片段集合组合成乘务作业段的集合Pi、Qi或Ri;
其中,Pi为早班时间段的乘务作业段,Qi为白班时间段的乘务作业段,Ri为夜班时间段的乘务作业段;
STEP 2:以乘务作业段为顶点,乘务作业段之间的接续关系为边,ωij=Cij+ebctbcaij作为边上的权值,构成早班、白班及夜班的三个网络图;
ωij为网络图中弧上的权值;Cij为乘务作业段之间的接续时间;ebc为便乘时间的惩罚因子,取值视便乘的实际情况而定;tbc为乘务作业段i与乘务作业段j之间的便乘时间;aij为0-1变量,表示乘务作业段i与j之间是否存在便乘;
STEP 3:初始化一个D数组,由顶点和顶点对应的权值构成,数组中的顶点为Pi、Qi或Ri,除了起点赋值为0外,其他顶点对应的权值都赋予无穷大;同时把起点P0、Q0或R0加入循环队列,从此处开始进入循环,直到队列为空才退出循环;
STEP 4:进行第一次循环,循环队列的第一个起点P0、Q0或R0出列,然后对以P0、Q0或R0为弧尾的边对应的弧头顶点进行松弛操作,若P0、Q0或R0到该顶点的最短路径变短了,则更新循环数组中该顶点的权值为新的最短路径;当顶点都被松弛,而且不在队列中时,就把顶点加入循环队列中;
STEP 5:进行第二次循环,新的队首元素出列,然后对以队首元素为弧尾的边对应的弧头顶点进行松弛操作,数组的权值及循环队列中的顶点再次更新;
STEP 6:对队列进行更新,一直到队列为空才退出循环,此时数组里就保存了从源点到各顶点的最短路径值,以此得到起点P0、Q0或R0到各个顶点的最短路径的值;
STEP 7:先选取满足下式的路径;
式中,Y表示乘务作业段之间的接续数量,xij表示0-1变量,表示乘务作业段i与j是否接续;n为乘务作业段的总数;
此时被选择的路径为运营成本最小的路径,在此基础上,再从被选择的路径中选取满足下式的路径;
式中W表示乘务排班计划总时间,W为总接续时间Z及便乘时间K之和,满足的路径作为最终求得的以P0、Q0或R0为起点的最短路径;
STEP 8:更换起点,从STEP4重新开始循环,一直到退出循环,再求得更换后起点的最短路径;
STEP 9:遍历早班时间段的a个顶点,直到所有顶点均被求得的路径包含其中;由此求得的各个最短路径即为早班时间段的乘务任务;
STEP 10:将白班时间段与夜班时间段的各个乘务作业段按照上述方法进行求解,由此求得的所有最短路径即为一天的乘务排班计划。
2.根据权利要求1所述的基于SPFA算法的地铁乘务排班计划编制优化方法,其特征在于:步骤STEP 7中,建立以乘务排班计划总接续时间最小为优化目标的模型,如下式所示:
其中Z为乘务排班计划总接续时间,Cij为乘务作业段之间的接续时间,xij为0-1变量,当其为1时,表示乘务作业段i接续乘务作业段j;当其为0时,表示乘务作业段i不接续乘务作业段j;n表示乘务作业段总数;
同时对乘务作业段的接续进行约束,使得两个乘务作业段之间最多只能接续一次;
下式表示每个乘务作业段在排班计划中有且仅有一个紧前作业段;
下式表示每个乘务作业段在排班计划中有且仅有一个后续作业段,也就是乘务作业段i和j最多配对接续一次,求和均为0时表示该乘务作业段未能与其他乘务作业段接续,成为单个乘务作业段的乘务任务;
因此乘务作业段配对的两种情况,即不同的两个乘务作业段能够相互配对形成乘务任务或是部分乘务作业段不与其它乘务作业段配对单独形成乘务任务,都被包含其中;
对乘务作业段之间的接续时间进行约束,使其满足乘务作业段间的休息时间约束,如下式所示;
Cmin≤Cij≤Cmax;
式中,Cmin为乘务作业段间的最短休息时间,Cmax为乘务作业段间的最长休息时间;
对乘务任务中的司机连续工作时长进行约束,使其工作时长不能超过给定的连续工作时长限制,如下式所示;
式中,tj为乘务作业段j的司机工作时间,t0为乘务任务的第一个乘务作业段的工作时间,T为司机连续工作时间限制;
对乘务任务中的吃饭时间进行约束,使其满足吃饭之间标准,如下式所示;
tcfmin≤tcf≤tcfmax;
式中,tcf为一个乘务任务中的吃饭时间,tcfmin为最短吃饭时间,tcfmax为最长吃饭时间;
将两个优化目标结合起来,形成一个总时间最少的新优化模型,如下式所示;
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110954688.7A CN113837438B (zh) | 2021-08-19 | 2021-08-19 | 基于spfa算法的地铁乘务排班计划编制优化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110954688.7A CN113837438B (zh) | 2021-08-19 | 2021-08-19 | 基于spfa算法的地铁乘务排班计划编制优化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113837438A true CN113837438A (zh) | 2021-12-24 |
CN113837438B CN113837438B (zh) | 2023-04-07 |
Family
ID=78960883
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110954688.7A Active CN113837438B (zh) | 2021-08-19 | 2021-08-19 | 基于spfa算法的地铁乘务排班计划编制优化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113837438B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115062908A (zh) * | 2022-05-13 | 2022-09-16 | 珠海优特电力科技股份有限公司 | 乘务排班方案优化方法、装置、设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013011975A (ja) * | 2011-06-28 | 2013-01-17 | Ntt Data Sekisui Systems Corp | 乗務員運用計画作成システム |
CN110070206A (zh) * | 2019-03-15 | 2019-07-30 | 中南大学 | 带立即折返的高速动车组乘务交路优化编制方法及装置 |
CN110598998A (zh) * | 2019-08-20 | 2019-12-20 | 广东工业大学 | 一种智慧车站乘务人员自动排班方法 |
CN111291303A (zh) * | 2019-12-06 | 2020-06-16 | 北京航空航天大学 | 一种考虑班次异质性的电动公交排班优化方法 |
CN113222238A (zh) * | 2021-05-07 | 2021-08-06 | 哈尔滨工业大学 | 一种枢纽机场值机人员排班的优化方法及系统 |
CN113256032A (zh) * | 2021-06-28 | 2021-08-13 | 北京交通大学 | 典型场景下高速铁路乘务排班计划调整的优化方法和装置 |
-
2021
- 2021-08-19 CN CN202110954688.7A patent/CN113837438B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013011975A (ja) * | 2011-06-28 | 2013-01-17 | Ntt Data Sekisui Systems Corp | 乗務員運用計画作成システム |
CN110070206A (zh) * | 2019-03-15 | 2019-07-30 | 中南大学 | 带立即折返的高速动车组乘务交路优化编制方法及装置 |
CN110598998A (zh) * | 2019-08-20 | 2019-12-20 | 广东工业大学 | 一种智慧车站乘务人员自动排班方法 |
CN111291303A (zh) * | 2019-12-06 | 2020-06-16 | 北京航空航天大学 | 一种考虑班次异质性的电动公交排班优化方法 |
CN113222238A (zh) * | 2021-05-07 | 2021-08-06 | 哈尔滨工业大学 | 一种枢纽机场值机人员排班的优化方法及系统 |
CN113256032A (zh) * | 2021-06-28 | 2021-08-13 | 北京交通大学 | 典型场景下高速铁路乘务排班计划调整的优化方法和装置 |
Non-Patent Citations (5)
Title |
---|
RALF BORNDORFER 等: "A Column Generation Approach to Airline Crew Scheduling", 《OPERATIONS RESEARCHS PROCEEDINGS 2005》 * |
XIAOMEI XU 等: "Solving a Large-Scale Multi-Depot Vehicle Scheduling Problem in urban bus systems", 《MATHEMATICAL PROBLEMS IN ENGINEERING》 * |
丰富等: "考虑时间均衡度的城市轨道交通乘务排班计划优化方法", 《交通运输系统工程与信息》 * |
张增勇: "城市轨道交通乘务计划编制方法及研究", 《中国博士学位论文全文数据库工程科技II辑》 * |
李献忠等: "基于时间耗费的城市轨道交通乘务排班优化", 《铁道学报》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115062908A (zh) * | 2022-05-13 | 2022-09-16 | 珠海优特电力科技股份有限公司 | 乘务排班方案优化方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113837438B (zh) | 2023-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Dong et al. | Integrated optimization of train stop planning and timetabling for commuter railways with an extended adaptive large neighborhood search metaheuristic approach | |
CN109002902B (zh) | 分区域多阶段生鲜农产品动态车辆路径优化方法 | |
Schöbel | An eigenmodel for iterative line planning, timetabling and vehicle scheduling in public transportation | |
Chen et al. | Design of limited-stop bus service with capacity constraint and stochastic travel time | |
Masson et al. | An adaptive large neighborhood search for the pickup and delivery problem with transfers | |
Wong et al. | Optimizing timetable synchronization for rail mass transit | |
Cats et al. | Effect of real-time transit information on dynamic path choice of passengers | |
Zhou et al. | Bicriteria train scheduling for high-speed passenger railroad planning applications | |
Sun et al. | Multi-objective optimization of train routing problem combined with train scheduling on a high-speed railway network | |
JP5811996B2 (ja) | 交通計画作成支援装置、交通計画作成支援方法 | |
CN105678425B (zh) | 基于多节拍组合的城际铁路列车开行的优化方法 | |
CN111754039B (zh) | 纯电动公交线网综合集成优化设计的方法 | |
CN107133715B (zh) | 基于轨道时空冲突的整数规划建模的方法 | |
CN110598998A (zh) | 一种智慧车站乘务人员自动排班方法 | |
CN109002923A (zh) | 一种城际多方式出行线路规划方法 | |
He et al. | An adaptive variable neighborhood search ant colony algorithm for vehicle routing problem with soft time windows | |
CN112488379B (zh) | 一种高速铁路动车组检修计划优化方法及系统 | |
Wang et al. | Carbon reduction in the location routing problem with heterogeneous fleet, simultaneous pickup-delivery and time windows | |
CN113837438B (zh) | 基于spfa算法的地铁乘务排班计划编制优化方法 | |
CN104477217A (zh) | 具有单一尽头车场城轨线路的列车运行周转方法 | |
Pylyavskyy et al. | A reinforcement learning hyper-heuristic for the optimisation of flight connections | |
CN115577833A (zh) | 应用于求解协同配送的路径规划的粒子群优化方法和系统 | |
CN117371611A (zh) | 一种地铁列车运营计划编制方法、介质及系统 | |
CN116993031A (zh) | 一种电动车的充电决策优化方法、装置、设备及介质 | |
Gholami et al. | Train routing and timetabling via a genetic algorithm |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |