一种考虑职业健康的铁路乘务资源分配方法
未命名
10-18
阅读:87
评论:0
1.本发明涉及铁路乘务资源分配技术领域,尤其涉及一种考虑职业健康的铁路乘务资源分配方法。
背景技术:
2.铁路在国民经济发展中承担着重要的物资运输的作用,其中尤以重载铁路因其运量大、成本低、受地理条件和气候条件影响小等优点,被高度重视,成为煤炭等大宗货物不可取代的运输途径。重载司机作为运输任务的执行者,是重载铁路上的重要岗位,对运输生产中起着举足轻重的作用,铁路线的顺利运行,离不开乘务员各作业流程的协同优化。从数学角度看,司乘人员被视为重载铁路生产运营的重要资源,司乘资源的排班调度问题是铁路运输过程的关键环节,影响铁路运输的生产效率以及成本投入,高效可行的排班计划是运输生产的关键管理环节。
3.货运铁路乘务排班问题是一个多目标问题,通常包括运营效率、成本等。但随着中国经济的发展,公众对美好生活的需求越发强烈,职业健康因素开始受到社会各职业的广泛关注,职工表现出越来越强烈的个人职业健康诉求,原本的只关注生产绩效和运营安全的司乘资源的排班分配方式因其不能反映基层员工的需求,越来越不适应未来企业的发展,亟需一套将司乘人员职业健康需求的纳入研究范围的司乘资源的分配方案。
技术实现要素:
4.本发明的实施例提供了一种考虑职业健康的铁路乘务资源分配方法,以实现从司机职业健康角度出发有效地分配铁路乘务资源。
5.为了实现上述目的,本发明采取了如下技术方案。
6.一种考虑职业健康的铁路乘务资源分配方法,包括:
7.以司机职业健康为导向,根据铁路运营规范确定乘务人员职业健康相关指标;
8.分析铁路运输的排班规范和列车运行计划,生成乘务交路集合;
9.将乘务人员插入所述乘务交路集合,建立多目标乘务排班模型,所述多目标乘务排班模型的目标函数包括在满足所述乘务人员职业健康相关指标的要求下最大化铁路运输的生产运营效率;
10.分层级求解所述多目标乘务排班模型的目标函数,得到运营效率最高的乘务交路方案和司机排班时刻表。
11.优选地,所述的以司机职业健康为导向,根据铁路运营规范确定乘务人员职业健康相关指标,包括:
12.设计了乘务规律性指标α、均衡性指标β和乘务偏好满意度指标3个乘务人员职业健康相关指标:
13.乘务规律性指标α
14.15.其中,表示周期内ω班次乘务人员出乘时间的平均值,ta表示乘务人员第a次出乘时间,n1表示排班周期内乘务人员总排班次数,a表示乘务人员第几次排班;
16.均衡性指标β
[0017][0018]
其中,表示排班周期内所有司机在ω班次内的平均值乘时长,tk表示乘务人员k在ω班次内的工作时长,n2表示排班周期内调用的乘务人员数量;
[0019]
乘务满意度指标γ:
[0020]
γ=∑k∑m|y
km-q
km
|
ꢀꢀ
(3)
[0021]
其中:y
km
表示司机k执行乘务交路m,q
km
表示司机k执行乘务交路m的需求,既司机k是否选择在m交路请假或者请求上工。
[0022]
优选地,所述的分析铁路运输的排班规范和列车运行计划,生成乘务交路集合,包括:
[0023]
确定乘务基地以及司机在线路上的值乘车站;
[0024]
通过对列车运行图进行分析得到列车车次、起始站、终点站、发车时间、抵达时间、换乘站点相关信息,在乘务基地或满足换乘条件的换乘站点将列车运行的路线划分成多个值乘区段;
[0025]
值乘区段表示为:
[0026][0027]
其中:fi表示乘务片段集合,i表示不同乘务片段的索引序号,nf表示乘务片段数量,分别表示乘务片段i的出发时间、到达时间,表示乘务片段i的值乘时长,等于分别表示乘务片段i的出发站、到达站;
[0028]
根据乘务作业段的约束规则,将乘务片段组合生成乘务交路,乘务交路表示为:
[0029][0030]
其中:lm表示乘务交路集合,m表示不同乘务交路的索引序号,n
l
表示乘务交路数量,分别表示乘务交路m的出发时间、到达时间,tm表示乘务交路m的值乘总时长,等于dm表示乘务交路m的出发站,typem表示乘务交路m的类型,是白班还是夜班。
[0031]
优选地,所述的将乘务人员插入所述乘务交路集合,建立多目标乘务排班模型,所述多目标乘务排班模型的目标函数包括在满足所述乘务人员职业健康相关指标的要求下最大化铁路运输的生产运营效率,包括:
[0032]
将乘务人员插入所述乘务交路集合,建立多目标乘务排班模型,所述多目标乘务排班模型的目标函数包括:
[0033]
最小化值乘区间段的总接续时间和乘务交路数;
[0034][0035]
min z2=n
l
ꢀꢀꢀꢀ
(7)
[0036]
其中:nf表示值乘片段总数,n
l
表示排班周期内乘务交路总数,x
ij
表示乘务片段i、j是否接续,表示值乘区段车次i,j的接续时间;
[0037]
排班周期内各乘务人员工作时间规律,即各司机当值白班或夜班出乘时间较为固
定,以便于乘务人员平衡值乘、休息时间,调节生物钟;乘务人员工作量分配均衡,在此以周期内出乘时长衡量乘务人员工作量,乘务排班计划中,乘务班次分为夜班和白班两种。
[0038]
将乘务健康指标引入模型,则:
[0039][0040][0041]
因此:
[0042][0043][0044][0045][0046]
因此:
[0047][0048]
其中:分别表示排班周期内白天、夜晚乘务交路的集合,表示交路m的出发时间,分别表示司机k白班和夜班出乘时间的平均值,y
km
表示司机k执行m乘务交路,dw表示乘务排班计划调用的乘务人员,分别表示司机k执行白天和夜间交路的总时长,表示排班周期内所有司机白班和夜班的平均工作时长;
[0049]
满足司机的调班和请假需求,将γ引入乘务排班模型,乘务排班中交路数为n
l
,调用司机人数为dw,则:
[0050][0051]
其中:y
km
表示司机k执行m乘务交路,q
km
表示司机k执行乘务交路m的需求,包括请假或调班,既司机k是否选择在m交路上请假或者请求上工。
[0052]
需要确定运营这些列车服务所需的最少乘务员人数。
[0053]
minz6=dwꢀꢀ
(16)
[0054]
其中:dw表示乘务排班计划调用的乘务人员。
[0055]
优选地,所述的分层级求解将所述多目标乘务排班模型的目标函数,得到运营效率最高的乘务交路方案和司机排班时刻表,包括:
[0056]
第一层级:求解公式(6)和(7)表示的目标函数,优先保证乘务排班计划的总接续时间和班次最少,根据列车运行图、车辆运用计划以及线路情况生成可执行的乘务交路,求解过程包括:
[0057]
第一步,将所有值乘区段按出发日期为第一次序、出发时间为第二次序、出发机场为第三次序进行排序,并将所有值乘区段放入到值乘区段集合中。
[0058]
第二步,运用深度优先算法从值乘区段集合中逐步搜索出交路路线,得到运营效率最高的乘务交路方案;
[0059]
第二层级:基于已生成的乘务交路集合,以司机职业健康为导向,将乘务人员分配到值乘任务中,得到乘务排班计划,包括如下的处理步骤:
[0060]
步骤1:从乘务交路集合中得到乘务交路信息;
[0061]
步骤2:种群编码与解码。编码采用整数编码的方式,每条编码个体为顺序打乱的乘务交路编号;
[0062]
步骤3:初始化种群个体,计算目标值;根据步骤2编码方式生成种群,计算经“解码”后各个个体的目标函数值。
[0063]
步骤4:非支配排序
[0064]
步骤5:从种群中选择出较优的父代进行进化,获得育种族群;
[0065]
步骤6:交叉,交叉算子选择部分匹配交叉;
[0066]
根据选择算子选择的一对父代染色体中几个基因的起止位置,两染色体被选位置相同;
[0067]
交换这一对基因的位置;
[0068]
做冲突检测,根据交换的两组基因建立一个映射关系,直到所有冲突的基因都经过映射,保证形成的新一对子代基因无冲突;
[0069]
步骤7:变异,对群中所有个体以事先设定的变异概率判断是否进行变异,对进行变异的个体选择两点变异算子,交换变异个体中随机选择的两个基因的基因值;
[0070]
步骤8:完成选择、交叉、变异后,父代子代合并,计算目标函数,进行非支配排序、拥挤度计算,采用精英策略生成新一代种群;
[0071]
步骤9:继续执行步骤4及以后步骤,达到最大迭代次数,算法结束,输出pareto前沿,即多目标排班计划最优解集,决策者根据对目标函数的权衡,选择恰当的pareto最优解,作为最终司机排班时刻表。
[0072]
优选地,所述的运用深度优先算法从值乘区段集合中逐步搜索出交路路线,包括:
[0073]
从值乘区段集合中搜索出发站为基地的值乘区段,并把这些值乘区段从值乘区段集合中剔除、放入基地值乘区段集合中,作为下一层搜索的条件,并将这些值乘区段记为第一层值乘区段;
[0074]
再从值乘区段集合搜索出发站与基地值乘区段集合中值乘区段的到达站相同的值乘区段,检验约束条件,将满足最短连接时间约束的值乘区段与第一层值乘区段连接,并将这些值乘区段记为第二层值乘区段。将已连接的第一层值乘区段从值乘区段集合二层值乘区段从集合中除去、并加入到值乘区段集合中。若第二层值乘区段的到达车站为基地,则该条路线为一条完整的乘务交路路线,将其从值乘区段集合中除去,保存到交路路线中;
[0075]
重复上述搜索,直到值乘区段集合中没有满足连接条件的值乘区段为止,如此搜索的乘务交路最长,保证乘务交路数最少;
[0076]
将未满足约束的值乘区段,再判断是否可以通过搭乘来满足。在执勤路线中搜索包含未满足值乘区段的出发站的路线、再搜索包含未满足值乘区段的到达站的路线,将两条路线与该值乘区段拼接为一条执勤路线,若该执勤路线时间在一天之内,则该条路线满足要求,保存到执勤路线中;
[0077]
剩下的值乘区段为不满足约束的值乘区段。
[0078]
由上述本发明的实施例提供的技术方案可以看出,本发明提供了一种考虑职业健康的重载铁路乘务排班计划编制方法,从司机职业健康角度出发来思考重载铁路乘务管理问题,设计了乘务规律性指标、均衡性指标、偏好指标,衡量排班计划中,乘务人员职业健康状态。结合现代重载铁路运输规范、生产需求,建立了以司机职业健康为导向,兼顾重载铁路运营效率,支出成本的多目标司机排班计划优化模型,并针对实际生产需要和多个目标的优先级,设计了分层序列法嵌套快速非支配排序多目标遗传算法对复杂模型求解。
[0079]
本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
[0080]
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0081]
图1为本发明实施例提供的一种考虑职业健康的铁路乘务资源分配方法的处理流程图;
[0082]
图2为本发明实施例提供的一种nsga-ii算法流程图;
[0083]
图3为本发明实施例提供的一种解码方式图示;
[0084]
图4为本发明实施例提供的一种二元锦标赛选择;
[0085]
图5为本发明实施例提供的一种部分匹配交叉方法;
[0086]
图6为本发明实施例提供的一种重载铁路线路图;
[0087]
图7为本发明实施例提供的一种乘务排班计划帕累托前沿;
[0088]
图8为本发明实施例提供的一种nsga-11求解乘务交路集合编码方式;
[0089]
图9为本发明实施例提供的一种对比算法求解乘务交路集合。
具体实施方式
[0090]
下面详细描述本发明的实施方式,所述实施方式的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
[0091]
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的任一单元和全部组合。
[0092]
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语)具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该
理解的是,诸如通用字典中定义的那些术语应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样定义,不会用理想化或过于正式的含义来解释。
[0093]
为便于对本发明实施例的理解,下面将结合附图以几个具体实施例为例做进一步的解释说明,且各个实施例并不构成对本发明实施例的限定。
[0094]
本发明实施例提供的一种考虑职业健康的铁路乘务资源分配方法的处理流程如图1所示,包括如下的处理步骤:
[0095]
步骤s1、以司机职业健康为导向,根据重载铁路运营规范确定乘务人员职业健康相关指标。
[0096]
本发明认为促进职业健康是一个管理过程,工作安排为健康的重要环境。鉴于乘务人员健康威胁的多重因果性质,本发明从排班调度角度出发,提出了以上三个健康促进指标为公式(1)、(2)、(3),描述乘务排班方案的任务公平性、值乘规律性和满足乘务偏好三个特征,在步骤s3中将三个健康促进指标引入相关乘务排班模型,对应构建了优化目标z3、z4、z5,以获取更合理的乘务排班计划,应对乘务排班中健康威胁的复杂性。
[0097]
步骤s2、分析铁路运输的排班规范和列车运行计划,生成乘务交路集合。
[0098]
步骤s3、将乘务人员插入所述乘务交路集合,建立多目标乘务排班模型,所述多目标乘务排班模型的约束条件包括在满足乘务人员的健康需求条件下最大化铁路运输的生产运营效率。
[0099]
步骤s4、基于分层序列法的思想提出ssm-ha算法,分层级求解将所述多目标乘务排班模型的目标函数,得到运营效率最高的乘务交路方案和司机排班时刻表。
[0100]
铁路乘务排班问题被分为两个阶段,一、生成乘务交路,即乘务人员可执行的任务;二、机组人员配对和乘务排班,即乘务人员插入乘务交路集合。建立的多目标乘务排班模型中,目标函数z1、z2关系到铁路运输的生产运营效率,求解过程中是需要被优先满足的,在求解乘务交路集合时作为第一层级目标被率先优化,求得运营效率最佳的乘务交路集合。目标函数z3、z4、z5、z6则关注于到乘务人员的健康管理,作为第二层级的优化目标,将第一层级求得的乘务交路集合输入第二层级,以职业健康需求为导向求解出合理的乘务排班计划,覆盖所有的乘务交路。最后得到运营效率最高的乘务交路方案和若干份司机排班时刻表覆盖所有的值乘任务。
[0101]
具体的,上述步骤s1包括:设计了乘务规律性指标α、均衡性指标β和乘务偏好满意度指标γ3个乘务人员职业健康相关指标,数学化描述排班过程中乘务人员健康需求。
[0102]
(1)乘务规律性指标α
[0103][0104]
其中,表示周期内ω班次乘务人员出乘时间的平均值,ta表示乘务人员第a次出乘时间,n1表示排班周期内乘务人员总排班次数,a表示乘务人员第几次排班,α越小,说明该乘务人员每次执行任务的时间点越规律。第k个乘务人员出乘规律性指标为αk,乘务排班中涉及多个司机,均需满足出乘规律性需求,分别为
[0105]
(2)均衡性指标β
[0106][0107]
其中,表示排班周期内所有司机在ω班次内的平均值乘时长,tk表示乘务人员k
在ω班次内的工作时长,n2表示排班周期内调用的乘务人员数量。β越小,说明司机之间工作量分配越均衡。乘务排班中涉及白班、夜班两个班次,分别表示为β
夜
、β
白
[0108]
(3)乘务偏好满意度指标γ:
[0109]
γ=∑k∑m|y
km-q
km
|
ꢀꢀ
(3)
[0110]
其中:y
km
表示司机k执行乘务交路m,q
km
表示司机k执行乘务交路m的需求,既司机k是否选择在m交路请假或者请求上工。y越小说明,乘务排班计划对乘务人员的个体需求满足越多。
[0111]
具体的,上述步骤s2包括:
[0112]
建立乘务排班网络
[0113]
(1)确定乘务基地及值乘车站
[0114]
乘务计划的编制首先要确定乘务基地以及司机在线路上的值乘车站。乘务基地一般就在线路的车辆段,值乘车站的选取以靠近车辆段为佳。
[0115]
(2)划分乘务片段
[0116]
列车运行计划为乘务人员排班方案的依据,通过对列车运行图进行分析得到列车车次、起始站、终点站、发车时间、抵达时间、换乘站点等相关信息。结合列车运行时长和车站属性,结合乘务工作人员的工作时间要求,在乘务基地或满足换乘条件的换乘站点将列车运行的路线划分成多个值乘区段。
[0117]
值乘区段可表示为:
[0118][0119]
其中:fi表示乘务片段集合,i表示不同乘务片段的索引序号,nf表示乘务片段数量,分别表示乘务片段i的出发时间、到达时间,表示乘务片段i的值乘时长,等于分别表示乘务片段i的出发站、到达站。
[0120]
(3)生成乘务交路
[0121]
根据乘务作业段的约束规则,将乘务片段组合生成乘务交路。乘务交路的生成考虑因素包括时间、列车车底和衔接地点等。
[0122]
由值乘区段按照一定规则组成乘务交路,乘务交路可表示为:
[0123][0124]
其中:lm表示乘务交路集合,m表示不同乘务交路的索引序号,n
l
表示乘务交路数量,分别表示乘务交路m的出发时间、到达时间,tm表示乘务交路m的值乘总时长,等于dm表示乘务交路m的出发站,typem表示乘务交路m的类型。
[0125]
乘务员从乘务基地出发,值乘完相应的值乘区段后又返回或到达另一乘务基地的过程可视为一个完整的乘务交路。乘务交路集合应覆盖所有的值乘区段,且每个值乘区段属于一个乘务交路。
[0126]
具体的,上述步骤s3包括:构建多目标乘务排班模型优化问题的目标函数。现行的铁路乘务管理制度规定了排班的一般结构:值班日被定义为某一天由某一列车员连续值班日的总和;每趟行程都有指定的出发时间、发车站、到达时间和到达站,代表最小的规划实体;一个车次可以由几个乘务片段组成,因为不是每一站都可以换车,所以规定了一些车站作为换车点;乘务员分配到列车任务中,规定了开始时间和地点以及结束时间和地点;司机
排班计划,规定了司机所需服务的车次;乘务人员是重要的资源,需要确定运营这些列车服务所需的最低乘务员人数;乘务人员的职业健康需要,也成为了现代乘务排班计划需要考虑的主要因素之一。构建多目标模型如下:
[0127]
值乘时间占总工作时间的比例和乘务交路数量是决定乘务排班效率的重要因素,因此最小化值乘区间段总接续时间和乘务交路数往往是乘务排班计划的主要目标。
[0128][0129]
minz2=n
l
ꢀꢀꢀ
(7)
[0130]
其中:nf表示值乘片段总数,n
l
表示排班周期内乘务交路总数,x
ij
表示乘务片段i、j接续,表示值乘区段车次i,j的接续时间。
[0131]
排班周期内各乘务人员工作时间规律,即各司机当值白班或夜班出乘时间较为固定,以便于乘务人员平衡值乘、休息时间,调节生物钟;乘务人员工作量分配均衡,在此以周期内出乘时长衡量乘务人员工作量,乘务排班计划中,乘务班次分为夜班和白班两种。
[0132]
将乘务健康指标引入模型,则:
[0133][0134][0135]
因此:
[0136][0137][0138][0139][0140]
因此:
[0141][0142]
其中:分别表示排班周期内白天、夜晚乘务交路的集合,表示交路m的出发时间,分别表示司机k白班和夜班出乘时间的平均值,y
km
表示司机k执行m乘务交路,d
ww
表示乘务排班计划调用的乘务人员,分别表示司机k执行白天和夜间交路的总时长,表示排班周期内所有司机白班和夜班的平均工作时长。
[0143]
尽量满足乘务人员偏好,即满足司机的调班和请假需求。将γ引入乘务排班模型,乘务排班中交路数为n
l
,调用司机人数为d
ww
,则
[0144][0145]
其中:y
km
表示司机k执行m乘务交路,q
km
表示司机k执行乘务交路m的需求,包括请
假或调班,既司机k是否选择在m交路上请假或者请求上工。
[0146]
乘务排班中乘务人员人数最小化。乘务人员是重要的资源,需要确定运营这些列车服务所需的最少乘务员人数。
[0147]
min z6=dwꢀꢀ
(16)
[0148]
其中:dw表示乘务排班计划调用的乘务人员。
[0149]
具体的,上述步骤s4包括:为了将乘务排班问题抽象为数学模型,需要定义几个基础变量的状态,描述值乘片段i,j之间、乘务交路m,n之间的接续关系,和司机k是否值乘某一交路。
[0150][0151][0152][0153][0154][0155]
其中:i,j表示值乘片段,m,n表示乘务交路,k表示司机,当值乘片段i与值乘片段j接续时,x
ij
=1,否则,x
ij
=0,当乘务交路m和n接续时,z
mn
=1,否则,z
mn
=0,当乘务交路m包含值乘片段段i时,u
mi
=1,否则,u
mi
=0,当司机k执行m乘务交路时,y
km
=1,否则,y
km
=0,wk表示排班周期内司机k是否被安排了任务,为司机k一个周期内的总出乘次数。
[0156]
乘务排班问题中,需要将若干值乘片段组成构成乘务交路作为乘务人元一次值乘的任务,那么同一条乘务交路的乘务片段序列应具有空间连续性,且值乘片段之间的接续时间应大于最小换乘时间。
[0157]
且x
ij
=1
ꢀꢀ
(22)
[0158]
且x
ij
=1
ꢀꢀ
(23)
[0159]
其中表示乘务片段j的出发站,表示乘务片段i的达到站,st最小接续时间,表示乘务片段j的出乘时间,表示乘务片段i的退乘时间。
[0160]
由于乘务排班问题中涉及的乘务片段较多,为了方便计算,引入一个无穷大的正数m,实验案例中,最小接续时间st设为15分钟,约束(22)(23)可化为约束(24)(25)(26)。
[0161][0162][0163]
且x
ij
=1
ꢀꢀ
(26)
[0164]
其中:表示值乘区段i,j之间的接续时间。
[0165]
乘务排班问题中每一值乘片段意味着一项值乘任务,目的是将乘务人员合理分配完成所有任务,因此,乘务交路集合应当覆盖所有的值乘片段,且每一值乘片段只能属于一
条乘务交路。
[0166][0167]
l1∪l2∪
…
lm∪
…
ln=l
ꢀꢀꢀꢀ
(28)
[0168]
模型中将约束(27)(28)简化为约束(29),既任意值乘片段仅属于一条交路且乘务交路集合覆盖所有的乘务片段。
[0169][0170]
司机执行一次乘务交路从出乘至退乘时间不应超过最长一次连续工作时间,司机担当不同乘务交路任务间的休息时间满足休息时间标准。
[0171][0172][0173]
其中:分别表示司机k的值乘交路m的出乘时间和退乘时间,表示表示司机k的值乘交路n的出乘时间,co表示最长连续工作时间,cr为休息时间标准。
[0174]
将约束(30)(31)引入乘务排班模型得到约束(32)(33)
[0175][0176][0177]
铁路运输乘务排班问题中,轮休制度是必需要考虑的,本模型定义轮休制度为“白夜休休”模式,考虑到乘务人员的个体需求,该模式表达司机担当夜间交路后休息完整的两个自然日。
[0178][0179]
其中:ak表示司机k的第a次出乘,hd表示两个自然日时长。
[0180]
在实际乘务排班中,通常实行严格的“师带徒”制度,新司机须由经验丰富的老师傅带领执行任务,模型将司机分为高等级和低等级两个集合,执行任务时,须由高等级师傅带队执行。
[0181][0182][0183]
其中:d1、d2分别表示高等级司机、低等级司级集合。
[0184]
模型各中间变量计算如下:
[0185][0186][0187][0188]
[0189][0190][0191][0192][0193][0194]
其中:表示司机k一个周期内的总出乘次数,wk排班周期内司机k是否被安排了任务,dw表示乘务排班计划调用的乘务人员数量,分别表示司机k担当每个白天、夜间交路开始时间的平均值,分别表示所有司机白天交路、夜间工作时间的平均值,分别表示司机k执行白天、夜间交路的总时长,tm表示乘务交路m的任务时长。
[0195]
具体的,上述步骤s4还包括:
[0196]
step1第一层级包括目标函数z1、z2,即优先保证乘务排班计划的总接续时间和班次最少,确保铁路运输的运营效率。这一层级的优化目标是根据列车运行图、车辆运用计划以及线路情况生成可执行的乘务交路,这是能保证司机正确排班的前提条件,设计深度优先算法求解第一层级目标,伪代码见表1:
[0197]
第一步,将所有值乘区段按出发日期为第一次序、出发时间为第二次序、出发机场为第三次序进行排序,并将所有值乘区段放入到值乘区段集合中。
[0198]
第二步,运用深度优先算法,逐步搜索出交路路线。
[0199]
(1)从值乘区段集合中搜索出发站为基地的值乘区段,并把这些值乘区段从值乘区段集合中剔除、放入基地值乘区段集合中,作为下一层搜索的条件,并将这些值乘区段记为第一层值乘区段。
[0200]
(2)再从值乘区段集合搜索出发站与基地值乘区段集合中值乘区段的到达站相同的值乘区段,检验约束条件,将满足最短连接时间约束的值乘区段与第一层值乘区段连接,并将这些值乘区段记为第二层值乘区段。将已连接的第一层值乘区段从值乘区段集合二层值乘区段从集合中除去、并加入到值乘区段集合中。若第二层值乘区段的到达机场为基地,则该条路线为一条完整的乘务交路路线,将其从值乘区段集合中除去,保存到交路路线中。
[0201]
(3)重复上述搜索,直到值乘区段集合中没有满足连接条件的值乘区段为止,如此搜索的乘务交路最长,保证乘务交路数最少。
[0202]
(4)将未满足约束的值乘区段,再判断是否可以通过搭乘来满足。在执勤路线中搜索包含未满足值乘区段的出发站的路线、再搜索包含未满足值乘区段的到达站的路线,将两条路线与该值乘区段拼接为一条执勤路线,若该执勤路线时间在一天之内,则该条路线满足要求,保存到执勤路线中。
[0203]
(5)剩下的值乘区段为不满足约束的值乘区段。
[0204]
表1深度优先伪代码
[0205][0206]
step2第二层级包括司机职业健康目标和乘务人员调度人数最少四个目标,基于已生成的乘务交路集合,以司机职业健康为导向,将乘务人员分配到值乘任务中,得到乘务排班计划,图2为本发明实施例提供的一种nsga-ii算法流程图,包括如下的处理步骤:
[0207]
步骤1:从乘务交路集合中得到乘务交路信息。
[0208]
步骤2:种群编码与解码。编码采用整数编码的方式,每条编码个体为顺序打乱的乘务交路编号,解码方法如图3所示:
[0209]
建立空的乘务排班工作表1。读取1号基因位交路信息,在乘务人员信息表中顺序寻找满足值乘要求的司机,加入该任务。向后搜索,若第二基因位满足乘务排班计划约束,将其加入该工作表,否则继续向后搜索至最后,工作表1加入断点“0”结束,该司机排班结束。下一步,建立新的乘务排班工作表2,重复以上步骤,直至所有乘务交路均有正副两位司机值乘。
[0210]
步骤3:初始化种群个体,计算目标值
[0211]
根据步骤2编码方式生成种群,计算经“解码”后各个个体的目标函数值。
[0212]
步骤4:非支配排序
[0213]
步骤5:选择
[0214]
从种群中选择出较优的父代进行进化。选择算子采用二元锦标赛选择算子如图4,即是模拟锦标赛的方式,首先在族群中随机抽取tournsize=2个个体,然后从中选取具有最佳适应度的个体,将此过程重复k次,获得育种族群。
[0215]
步骤6:交叉
[0216]
约束(35)(36)要求染色体中每个基因均不相同,为了避免交叉过程导致染色体失效,交叉算子选择部分匹配交叉(partially-matched crossover,pmx),交叉过程如下图5所示,保证子代健康。
[0217]
具体操作步骤如下:
[0218]
step1:随机选择一对染色体(父代)中几个基因的起止位置(两染色体被选位置相
同)。
[0219]
step2:交换这两组基因的位置。
[0220]
step3:做冲突检测,在交叉区域建立染色体基因映射关系,以图5为例,根据3-6-5-1这一匹配关系修复染色体,保证形成的新一对子代基因无冲突。
[0221]
步骤7:变异
[0222]
为保证子代染色体健康,选择两点变异算子,即交换变异个体中随机选择的两个基因的基因值。
[0223]
步骤8:完成选择、交叉、变异后,父代子代合并。计算目标函数,进行快速非支配排序(具体操作过程见步骤4)、拥挤度计算,采用精英策略生成新一代种群。
[0224]
步骤9:继续执行步骤4及以后步骤,达到最大迭代次数,算法结束,输出pareto前沿,即最优解集。
[0225]
本发明可应用于重载铁路乘务排班计划编制。下面以中国某段重载铁路运输线路为例,编制乘务人员排班计划。
[0226]
步骤1:获取列车运行图,铁路沿线站点设置情况,乘务人员资料等基础数据。
[0227]
图6为本发明实施例提供的一种重载铁路线路图,该重载铁路沿线覆盖32个站点,其中scn、snb、hhg、dzx被设置为乘务人员换乘站点。
[0228]
表2数据说明
[0229][0230]
表3排班车次表
[0231][0232]
步骤2:数据处理
[0233]
将列车运行时间时间转化为排班周期内的分钟数,将车次按照车站切片,标记出每个车站间的到达与离开时间,数据处理的部分结果如下表4:
[0234]
表4铁路乘务段表
[0235]
[0236][0237]
步骤3划分乘务片段
[0238]
列车运行计划是乘务人员排班方案的依据,依据列车车次、起始站、终点站、发车时间、抵达时间、换乘站点等相关信息,列车运行时长和车站属性,以及乘务工作人员的工作时间要求,在乘务基地或满足换乘条件的换乘站点将运行的路线划分成多个值乘区段见下表5。
[0239]
表5列车运行乘务片段表
[0240][0241]
共切分出189条乘务片段,并标记出出发时间、出发站、到达时间、到达站、值乘时长等关键信息,以便生成乘务交路。
[0242]
步骤4:生成乘务交路
[0243]
根据乘务作业段的约束规则,将乘务片段组合生成乘务交路。乘务作业段的生成考虑因素包括时间、列车车底、衔接地点等。使用深深度优先算法求解乘务交路集合,按基于先到先走原则的遍历搜索算法,得到运营效率最高的乘务交路方案见表6。
[0244]
表6深度优先得到的乘务交路集合
[0245][0246]
求得的乘务交路集合中乘务片段总接续时间为25912分钟,共生成122条可执行的乘务交路,并标记出个乘务交路的出乘时间、退乘时间、任务时长和排班类型等信息。
[0247]
步骤5:乘务人员分配
[0248]
乘务排班问题中,乘务交路被视为一次任务,排班问题的最终目标就是将乘务资源合理分配到各交路上。
[0249]
将步骤3得到的乘务交路以及司机信息表作为输入,运行乘务排班计划算法,得到图9所示的乘务排班计划帕累托pareto前沿。
[0250]
图7中的f(1)表示乘务人员任务分配公平,f(2)表示乘务人员出乘时间规律,f(3)表示乘务人员排满意度,f(4)用颜色描述,表示乘务排班计划调用的乘务人员数量。本发明设计算法能有效完成预期目标,在兼顾司机职业健康的同时完成车站值乘任务,提供有效方案集,并标记出各排班方案的目标值如表7,供决策者选择。表8为选择的乘务满意度指标最佳的解所代表的具体的乘务排班计划。
[0251]
表7pareto最优解集
[0252][0253]
表8司机排班计划表
[0254]
[0255][0256]
步骤5:对比实验
[0257]
研究设计了ssm-ha算法求解多目标乘务排班计划,其中第一层级使用深度搜索求解乘务交路集合,第二层级使用nsga-ii求解乘务排班计划。
[0258]
然后设计nsga-ii求解乘务交路集合作为对比实验,该算法流程类似于nsga-ii求解乘务排班计划,需改变编码方式中各基因表示含义。nsga-ii求解乘务排班计划中基因值表示值乘片段序号如图8所示。
[0259]
使用nsga-ii执行上述求解乘务交路集合的步骤,种群规模为100,迭代500次,得到的pareto前沿与深度优先得到结果对比如下图9所示。
[0260]
根据pareto最优解定义,观察图9可以清楚发现,多目标遗传算法进化得到pareto前沿被深度搜索算法得到的解所支配,在求解乘务交路集合中,深度搜索的可靠性大于nsga-ii。
[0261]
综上所述,本发明实施例的有益效果是提出了重载铁路乘务管理中乘务人员职业健康数学化指标;将乘务人员职业健康需求,司机带教制度,轮乘制度加入乘务人员排班模型;考虑到模型的复杂性,设计ssm-ha算法求解乘务人员排班模型,得到兼顾企业运营效率、运营成本和司机职业健康需求的排班方案。
[0262]
本领域普通技术人员可以理解:附图只是一个实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
[0263]
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
[0264]
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或
者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0265]
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
技术特征:
1.一种考虑职业健康的铁路乘务资源分配方法,其特征在于,包括:以司机职业健康为导向,根据铁路运营规范确定乘务人员职业健康相关指标;分析铁路运输的排班规范和列车运行计划,生成乘务交路集合;将乘务人员插入所述乘务交路集合,建立多目标乘务排班模型,所述多目标乘务排班模型的目标函数包括在满足所述乘务人员职业健康相关指标的要求下最大化铁路运输的生产运营效率;分层级求解所述多目标乘务排班模型的目标函数,得到运营效率最高的乘务交路方案和司机排班时刻表。2.根据权利要求1所述的方法,其特征在于,所述的以司机职业健康为导向,根据铁路运营规范确定乘务人员职业健康相关指标,包括:设计了乘务规律性指标α、均衡性指标β和乘务偏好满意度指标3个乘务人员职业健康相关指标:乘务规律性指标α其中,表示周期内ω班次乘务人员出乘时间的平均值,t
a
表示乘务人员第a次出乘时间,n1表示排班周期内乘务人员总排班次数,a表示乘务人员第几次排班;均衡性指标β其中,表示排班周期内所有司机在ω班次内的平均值乘时长,t
k
表示乘务人员k在ω班次内的工作时长,n2表示排班周期内调用的乘务人员数量;乘务满意度指标γ:γ=∑
k
∑
m
|y
km-q
km
| (3)其中:y
km
表示司机k执行乘务交路m,q
km
表示司机k执行乘务交路m的需求,既司机k是否选择在m交路请假或者请求上工。3.根据权利要求1或者2所述的方法,其特征在于,所述的分析铁路运输的排班规范和列车运行计划,生成乘务交路集合,包括:确定乘务基地以及司机在线路上的值乘车站;通过对列车运行图进行分析得到列车车次、起始站、终点站、发车时间、抵达时间、换乘站点相关信息,在乘务基地或满足换乘条件的换乘站点将列车运行的路线划分成多个值乘区段;值乘区段表示为:其中:f
i
表示乘务片段集合,i表示不同乘务片段的索引序号,n
f
表示乘务片段数量,分别表示乘务片段i的出发时间、到达时间,表示乘务片段i的值乘时长,等于表示乘务片段i的值乘时长,等于分别表示乘务片段i的出发站、到达站;根据乘务作业段的约束规则,将乘务片段组合生成乘务交路,乘务交路表示为:
其中:l
m
表示乘务交路集合,m表示不同乘务交路的索引序号,n
l
表示乘务交路数量,分别表示乘务交路m的出发时间、到达时间,t
m
表示乘务交路m的值乘总时长,等于d
m
表示乘务交路m的出发站,type
m
表示乘务交路m的类型,是白班还是夜班。4.根据权利要3所述的方法,其特征在于,所述的将乘务人员插入所述乘务交路集合,建立多目标乘务排班模型,所述多目标乘务排班模型的目标函数包括在满足所述乘务人员职业健康相关指标的要求下最大化铁路运输的生产运营效率,包括:将乘务人员插入所述乘务交路集合,建立多目标乘务排班模型,所述多目标乘务排班模型的目标函数包括:最小化值乘区间段的总接续时间和乘务交路数;minz2=n
l (7)其中:n
f
表示值乘片段总数,n
l
表示排班周期内乘务交路总数,x
ij
表示乘务片段i、j是否接续,表示值乘区段车次i,j的接续时间;排班周期内各乘务人员工作时间规律,即各司机当值白班或夜班出乘时间较为固定,以便于乘务人员平衡值乘、休息时间,调节生物钟;乘务人员工作量分配均衡,在此以周期内出乘时长衡量乘务人员工作量,乘务排班计划中,乘务班次分为夜班和白班两种。将乘务健康指标引入模型,则:将乘务健康指标引入模型,则:因此:因此:因此:因此:因此:其中:分别表示排班周期内白天、夜晚乘务交路的集合,表示交路m的出发时间,分别表示司机k白班和夜班出乘时间的平均值,y
km
表示司机k执行m乘务交路,d
w
表示乘务排班计划调用的乘务人员,分别表示司机k执行白天和
夜间交路的总时长,表示排班周期内所有司机白班和夜班的平均工作时长;满足司机的调班和请假需求,将γ引入乘务排班模型,乘务排班中交路数为n
i
,调用司机人数为d
w
,则:其中:y
km
表示司机k执行m乘务交路,q
km
表示司机k执行乘务交路m的需求,包括请假或调班,既司机k是否选择在m交路上请假或者请求上工。需要确定运营这些列车服务所需的最少乘务员人数。minz6=d
w (16)其中:d
w
表示乘务排班计划调用的乘务人员。5.根据权利要4所述的方法,其特征在于,所述的分层级求解将所述多目标乘务排班模型的目标函数,得到运营效率最高的乘务交路方案和司机排班时刻表,包括:第一层级:求解公式(6)和(7)表示的目标函数,优先保证乘务排班计划的总接续时间和班次最少,根据列车运行图、车辆运用计划以及线路情况生成可执行的乘务交路,求解过程包括:第一步,将所有值乘区段按出发日期为第一次序、出发时间为第二次序、出发机场为第三次序进行排序,并将所有值乘区段放入到值乘区段集合中。第二步,运用深度优先算法从值乘区段集合中逐步搜索出交路路线,得到运营效率最高的乘务交路方案;第二层级:基于已生成的乘务交路集合,以司机职业健康为导向,将乘务人员分配到值乘任务中,得到乘务排班计划,包括如下的处理步骤:步骤1:从乘务交路集合中得到乘务交路信息;步骤2:种群编码与解码。编码采用整数编码的方式,每条编码个体为顺序打乱的乘务交路编号;步骤3:初始化种群个体,计算目标值;根据步骤2编码方式生成种群,计算经“解码”后各个个体的目标函数值。步骤4:非支配排序步骤5:从种群中选择出较优的父代进行进化,获得育种族群;步骤6:交叉,交叉算子选择部分匹配交叉;根据选择算子选择的一对父代染色体中几个基因的起止位置,两染色体被选位置相同;交换这一对基因的位置;做冲突检测,根据交换的两组基因建立一个映射关系,直到所有冲突的基因都经过映射,保证形成的新一对子代基因无冲突;步骤7:变异,对群中所有个体以事先设定的变异概率判断是否进行变异,对进行变异的个体选择两点变异算子,交换变异个体中随机选择的两个基因的基因值;步骤8:完成选择、交叉、变异后,父代子代合并,计算目标函数,进行非支配排序、拥挤度计算,采用精英策略生成新一代种群;步骤9:继续执行步骤4及以后步骤,达到最大迭代次数,算法结束,输出pareto前沿,即
多目标排班计划最优解集,决策者根据对目标函数的权衡,选择恰当的pareto最优解,作为最终司机排班时刻表。6.根据权利要5所述的方法,其特征在于,所述的运用深度优先算法从值乘区段集合中逐步搜索出交路路线,包括:从值乘区段集合中搜索出发站为基地的值乘区段,并把这些值乘区段从值乘区段集合中剔除、放入基地值乘区段集合中,作为下一层搜索的条件,并将这些值乘区段记为第一层值乘区段;再从值乘区段集合搜索出发站与基地值乘区段集合中值乘区段的到达站相同的值乘区段,检验约束条件,将满足最短连接时间约束的值乘区段与第一层值乘区段连接,并将这些值乘区段记为第二层值乘区段。将已连接的第一层值乘区段从值乘区段集合二层值乘区段从集合中除去、并加入到值乘区段集合中。若第二层值乘区段的到达车站为基地,则该条路线为一条完整的乘务交路路线,将其从值乘区段集合中除去,保存到交路路线中;重复上述搜索,直到值乘区段集合中没有满足连接条件的值乘区段为止,如此搜索的乘务交路最长,保证乘务交路数最少;将未满足约束的值乘区段,再判断是否可以通过搭乘来满足。在执勤路线中搜索包含未满足值乘区段的出发站的路线、再搜索包含未满足值乘区段的到达站的路线,将两条路线与该值乘区段拼接为一条执勤路线,若该执勤路线时间在一天之内,则该条路线满足要求,保存到执勤路线中;剩下的值乘区段为不满足约束的值乘区段。
技术总结
本发明提供了一种考虑职业健康的铁路乘务资源分配方法。该方法包括:以司机职业健康为导向,根据铁路运营规范确定乘务人员职业健康相关指标;分析铁路运输的排班规范和列车运行计划,生成乘务交路集合;将乘务人员插入乘务交路集合,建立多目标乘务排班模型,目标函数包括在满足乘务人员职业健康相关指标的要求下最大化铁路运输的生产运营效率;分层级求解多目标乘务排班模型的目标函数,得到运营效率最高的乘务交路方案和司机排班时刻表。本发明方法从司机职业健康角度出发来思考重载铁路乘务管理问题,衡量排班计划中,乘务人员职业健康状态,建立了以司机职业健康为导向,兼顾重载铁路运营效率,支出成本的多目标司机排班计划优化模型。班计划优化模型。班计划优化模型。
技术研发人员:李曼 徐科伟 李晴 张佳怡 赵佳 周鑫燚
受保护的技术使用者:北京交通大学
技术研发日:2023.05.30
技术公布日:2023/10/11
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
