王洛锋, 徐青松,李学现,顾清华
(1.洛阳栾川钼业集团股份有限公司,河南 洛阳 471000)(2.西安建筑科技大学资源工程学院,陕西 西安 710055)(3.西安市智慧工业感知计算与决策重点实验室,陕西 西安 710055)
地下矿的运输调度是整个生产过程的关键环节,但关于地下矿电机车运输调度问题却缺乏深入的理论研究。当前,无人驾驶技术的飞速发展为解决地下矿生产运输提供了新的思路,也为建设智慧矿山提供了技术支撑。一方面可以减少关键生产环节的人工成本,减少由人为因素导致的安全生产事故,降低运维成本;另一方面,可实现生产环节之间的高效协同,提高生产安全性与运输效率。
有许多学者针对地下矿无人驾驶技术的应用进行了研究。2004年,德国基于井下无线通信系统实现了无人驾驶电机车数据的传输[1]。2011年中国恩菲工程技术有限公司建造的第一台无人驾驶变频电机车在湖南湘潭牵引机车厂下线[2],在冬瓜山铜矿项目经过多年的实际应用研究,该技术大幅降低了项目的生产成本[3]。最初的电机车无人驾驶技术应用,一般都是通过铺设传感器感知无人驾驶电机车行驶状态,进而设计运行指令实现电机车运行控制,其中无线通讯技术得到了研究学者的重视[4-5]。2017年,李竹年对刘庄煤矿项目的电机车运输系统进行了无人化改造,提出了自动驾驶模式以减少人工调度的干预[6]。伴随着井下定位技术与5G通信技术的发展,无人驾驶电机车的运行逐渐从阶段性调度指令转化为实时调度。武学宏[7]设计了一种基于无线局域网的矿井机车无人驾驶系统,提升了无人驾驶电机车的运输效率。李宏文等提出使用5G通信技术构建网络信息实时传输系统,综合考虑井下环境因素来实现实时调度[8-9]。电机车无人驾驶技术逐渐将传统的人工调度方式转换为远程作业的形式,为实现智慧矿山建设奠定了基础。
目前,关于地下矿电机车的相关研究大多集中在运行定位、检测以及问题预警等方向,针对电机车运输调度的研究较少。代表性研究主要有:孙莹等[10]考虑了轨道运输的限制,建立了运输成本最小的电机车调度优化模型。谢新颖[11]为了提升电机车的运输效率,构建了优化机车平均速度的运输模型,将速度通过运输距离与通行时间进行表述。龙智卓等[12]将矿井的地图转化网格节点建立起栅格模型,优化矿车行驶的全局路径。徐艳丽[13]对缩短运输时间和减少机车拥堵进行研究,但是主要优化思想借鉴生产调度将电机车运行过程划分为不同的工序进行组合。谭期仁等[14]对电机车的行驶距离与行驶路线进行综合分析,以单个班次内的运输量为研究对象,建立了总运量与总运输距离的多目标优化模型。以上研究表明,电机车运输优化调度需要考虑多种因素的影响,而多目标模型的相关研究还不够丰富,尤其当传统有人驾驶逐渐被无人驾驶替代之后,无人驾驶电机车调度理论值得进一步研究。
另外,在仓储物流等领域所用到的穿梭车(Rail Guide Vehicle,RGV)具备较为成熟的有轨调度运输理论,这为地下电机车的调度研究提供了借鉴。例如,在有轨穿梭车的相关研究中,有学者考虑路径最短[15]、运输成本最低[16]、运行时间最短[17]等为优化目标,建立了不同的调度优化模型。马昌谱等[18]将整个货物搬运考虑到模型构建中,构建了系统性避障的最小化运行时间的优化模型。王天浩等[19]对RGV在环形轨道运作环境下的碰撞情况进行分析,以货物总入库时间最小化为目标,构建了环形2-RGV系统入库调度问题的混合整数规划模型。Wang等[20]分析了可能发生故障的调度状态,建立了以最大加工材料数和机床最短空闲时间的动态调度双目标模型。由上述研究可知,有轨运输调度相关行业内已经有较为完善的研究体系,通过借鉴这些相对成熟的研究成果可以帮助解决地下金属矿无人驾驶电机车调度优化的不足。
通过对上述文献的分析可以发现:(1)由于受到很多现实条件的限制,目前关于地下金属矿电机车运输调度问题的研究很少选用多目标优化策略,缺乏进一步的深入分析;(2)无人驾驶电机车的优化问题一般以仿真系统进行组合优化,获得优化结果不能直接得出可行的参考方案。因此,本文以地下金属矿无人驾驶电机车调度系统为研究对象,考虑井下复杂的运输环境和无人驾驶电机车调度问题的特点,建立了地下金属矿无人驾驶电机车多目标调度模型,并基于NSGA-Ⅱ设计了一种多目标求解算法,最后利用实际生产数据验证了模型和求解算法的可行性。
无人驾驶电机车调度优化的主要思路就是在已知一定任务量的情况下,合理安排每台电机车的运输路线,首先要确保任务的顺利完成,其次要考虑运输轨道的限制,避免无人驾驶电机车在行驶过程中出现碰撞,最后要兼顾到采场溜井的产量限制以及金属矿在实际生产中对矿石品位的要求。地下金属矿中段运输系统复杂,轨道铺设为环形单行轨道,在轨道通行限制方面可以将采场溜井、主溜井以及岔道口作为判断的依据,在图1中给出了实际生产项目的电机车运行轨道的布局。每台无人驾驶电机车在出发的时候均会被设定出发时间,根据调度路线可以计算得出电机车到达采场溜井、岔道口以及主溜井的时间,得出这些到达时间后需要对到达时间进行判断以及动态调整。例如一号电机车从主溜井空车运行到采场溜井,二号电机车从某个采场溜井满载矿石至主溜井卸矿,这时候会出现运输区段占用情况冲突,需要对一号电机车的的行驶时间进行动态调整,等到二号电机车顺利通过这一区段后才能继续运行。采场溜井的产量限制在优化过程中对应的是考虑到电机车不能一直重复访问同一个采场溜井,虽然距离近的采场溜井具有较小的运输成本,但是超过采场溜井的开采上限时就不能再访问这一开采点。金属矿的品位控制一直遵循着“以高填低”的准则,当地下矿为金属矿时,这一重要的约束需要被考虑在内,采场溜井的开采量与出产矿石的品位也是影响电机车调度的重要因素。
图1 实际生产项目的电机车运行轨道布局图
为了有效描述电机车调度系统,使模型更符合实际生产,因此做相关假设:
(1)假设无人驾驶电机车在行驶过程中,所有重载电机车速度一致,空载电机车速度一致。
(2)每台无人驾驶电机车的载重不会出现超载的情况。
(3)无人驾驶电机车在运行过程中只能按照规划好的调度路线行驶,并且无人电机车无倒车返回的情况。
(4)不考虑无人驾驶电机车在行驶过程中可能发生故障的情况。
(5)无人驾驶电机车装载与卸载矿石的时间根据实际数据来确定。
(6)所有的无人驾驶电机车开始作业时都是从车场出发,在运输作业完成后返回主溜井。
(7)每台无人驾驶电机车一次运输作业只能去往一个采场溜井,即使未满载也要回到主溜井,不允许去往其它采场溜井。
(8)同一个采场溜井在一定时间内只能为一台电机车开展装载作业,只有在前方的电机车装载作业完成驶离后下一台电机车才能开始装载作业,不会出现抢占作业的状况。
为使模型更加清晰明确,表1给出了模型中所使用的各变量及参数说明。
表1 变量及参数说明
续表1
根据实际生产需求,为了节省输运过程中的成本以及提高矿石运输效率,本文构建了在完成一定任务量的前提下,所需总运输成本最小,等待时间最小多目标优化模型,构建的多目标模型如下:
F=Min(f1,f2)
(1)
(1)最小化运输成本
(2)
在本模型中,无人驾驶电机车在主溜井到采场溜井再返回主溜井过程往返一次的成本包括了固定成本和变动成本,总运输成本的计算分为空载运输成本和重载运输成本两部分,等于无人驾驶电机车往返一次的成本乘以往返次数。
(2)最小化等待时间
(3)
在本模型中,等待时间根据电机车完成运输任务的总耗时以及电机车在轨运行的实际时间来确定,当电机车开始运行时,只会在岔道口以及采场溜井附近需要进行避障任务时才会在避障处进行等待,因此用总运输时间减去在轨道的实际行驶时间即可得到等待时间。
模型约束条件:
考虑到无人驾驶电机车的载重限制,从主溜井出发到返回主溜井卸载矿石过程中,电机车载重不超过电机车最大载重Bt:
(4)
为保证每个采矿场的矿石产量能有效利用,需要保证每个采场溜井的运输量在产量范围内:
(5)
无人驾驶电机车必须在固定轨道上运行,为了保证在行驶过程中不会出现电机车碰撞事故,因此必须考虑电机车在共用轨道上在一定时间段内不能出现双向行驶的电机车。为了更清楚的表达这个顺序关系引入了辅助变量Tjk1表示无人驾驶电机车从主溜井空车前往采场溜井到达共用轨道j的时间,Tjk2表示无人驾驶电机车从采场溜井重车前往主溜井到达共用轨道j的时间,轨道j的长度为dj:
(6)
无人驾驶电机车在同一区段轨道j上同向运行时,需要保证相互之间保持设定的安全距离,也就是在一定时间段内仅能有一辆无人驾驶电机车在运行,为了清楚的表达这个关系引入了辅助变量Nsjk,表示如果在区段j上无人驾驶电机车k不是最后一次作业任务,下一台电机车进入这一区段的时间:
Nsjk-Tejk≥Ta
(7)
为了保证电机车在到达每个溜井都完成装载任务,所以无人驾驶电机车空车运行的次数和重车运行的次数应该保持一致:
(8)
金属矿山对矿石的品位有规定的要求,因此在运输过程中设计品位约束能有效保证得到的矿石可以直接进行下一步加工:
(9)
其中gi是采场溜井i产出矿石的平均品位,G为规定的矿石品位要求,α为可以接受的误差。
所有的运输任务应该完成最小的生产目标量Q:
(10)
在以往的研究中,由于考虑的大多为成本等单目标优化问题,在模型求解上采用的方法有线性规划、整数规划以及算法求解等。但是针对多目标优化问题而言,如果简单的通过分配权重的方法将多目标转化为单目标,一方面,难以使用科学的方法进行权重分配;另一方面,构建的多目标之间存在冲突性,分配权重后会使得寻优过程向同一方向进行,使得其中某些优化目标不能有效体现。因此,本文提出一种多目标优化算法求解多目标模型。
原始的NSGA-Ⅱ算法能有效解决无约束的多目标优化问题,但是由于存在多个约束条件,需要算法具有较强的多样性寻找解空间的可行解。在原始NSGA-Ⅱ算法中关于多样性的维护存在不足,约束空间可能导致拥挤度距离的计算存在较大差距,随着目标函数的增多,算法的这一不足会更加明显。算法收敛性在于Pareto支配关系来区分收敛性的好坏,并且将收敛性好的个体优先加入归档集。但是根据Pareto支配关系的定义可以看出,必须满足在每个目标维度上的目标函数均满足要求才可完成层级划分,由于约束条件的存在导致可行域内的解无法有效得到非支配层级。为了克服复杂可行域会造成解的非支配层级难以确定的难题,保证算法在迭代过程维持解的多样性,使用距离优势关系[21]对原始NSGA-Ⅱ算法进行改进。使用距离优势关系代替原始的Pareto支配关系,改进后算法的框架与NSGA-Ⅱ算法框架一致,在图2中给出了改进后NSGA-Ⅱ-DDR算法的求解多目标优化模型的流程图。
为提升算法求解效率,在种群初始化过程中不仅仅依赖随机生成的种群,而且在初始化设计中加入了相关的约束条件。以每个采场溜井的运输量限制约束与最小矿石产出量为例,染色体在随机生成后通过解码计算是否满足这两个约束条件,如果满足约束则参与种群迭代,如果不满足约束条件就进行修正,直至初始种群中的所有解均满足约束条件的要求。
图2 NSGA-Ⅱ-DDR算法求解多目标优化模型流程图
为了将模型中的各项决策变量与算法结合起来,需要设计染色体来代替模型中的决策变量。在模型中需要计算无人驾驶电机车重载、空载的次数、还需要计算电机车的出发及到达时间。而在实际生产过程中,电机车运行的是一条完整的线路,在完成卸载任务后需要判断继续行驶到下一个采场溜井。因此,在染色体设计结合实际,直接采用整数编码的方式将染色体与电机车行驶路径对应。为了形象具体描述编解码方式,给出简单的例子继续说明,假设某地下矿的采场溜井个数为9,生成的染色体表现形式见图3。
图3 染色体示意图
由于无人驾驶电机车在行驶过程中路线比较固定,并且一般只会在主溜井完成卸载作业,因此在生成决策变量时仅需要考虑电机车需要到达的采场溜井,每个数字的表示对应采场溜井的编号。图3形成的染色体对应的实际运行路线就是无人驾驶电机车从主溜井出发牵引空车行驶至溜井6,装载作业完成后返回主溜井卸矿,在主溜井卸矿完成后行驶至溜井8,直至完成本次的运输作业。在算法生成染色体时只用生成简单的线路图进行编解码后就能知道电机车到达每个溜井的次数,也就是模型所对应的x与y值。
为求解无人驾驶电机车多目标调度优化模型,需要考虑模型中的产量约束,最低产量要求的设置用于染色体长度的确定。以最低产量要求为参考,将最低产量进行一定比率放大后,然后根据电机车每次牵引重车的载矿量来确定电机车需要运行的次数,该次数则对应着编码中染色体的长度。
为了将编码的染色体进行算法迭代,在图4给出了算法的遗传操作示意图,图4(a)中存在点位的编号为0,这说明了该点的实际采场溜井并不存在,只是为了构建相同的染色体长度。交叉操作时采用单点交叉的方式进行,图4(a)中两条染色体的三号位发生了交叉操作,同时在点位的选取过程中设置了通行阈值,避免电机车一直到访同一个位置。图4(b)是单条染色体发生单点变异的示意图,染色体在六号点位发生了随机变异。图4(c)是染色体发生两点变异的示意图,染色体在二号点位和六号点位发生了变异,具体变现在小点位之前的染色体片段与大点位之后的染色体片段位置互换,变异操作是为了避免陷入局部最优,增加新的运行路线。
图4 染色体遗传操作示意图
在多目标优化模型的构建中考虑了相关的约束条件,在算法的迭代更新中需要将约束条件以合适的方式加入算法优化中,一般的处理方法包括约束空间外解直接舍去、算子修正与引入惩罚函数等[22]。本文对约束的处理选择用算子修正以及设置惩罚函数的方式,由于时间约束的存在使得电机车在运行过程中必须按照规定的线路行驶,所以时间约束要通过对电机车的运行时间进行修正,确保在可能会发生冲突的地点运行通畅。惩罚函数的引入是为了保证略微超出约束边界的解能加入算法迭代,因此对于时间约束外的所有约束条件都是用惩罚函数的方式加入算法迭代过程。
为验证上文中所提出的无人驾驶电机车调度优化模型及求解算法的可行性,选取了某地下金属矿的实际生产项目作为优化案例分析,通过试验分析对模型与求解算法进行有效性检验。
某地下金属矿位于山东省,出产的铁矿石是某钢铁集团重要的原材料来源。该地下铁矿是国内最早开采的大型地下矿之一,目前共开发出3个大型矿区,分别是中央采区、西北采区和东南釆区,矿区及周边地区均为冲积平原地貌,地势平缓。项目的《详勘报告》表明矿区内的铁矿储量在4 500~5 000万t之间,矿区内矿石分布呈现急倾斜矿体,根据专家建议确定开采方式为充填采矿法。根据矿体赋存条件,初步设计将矿体一期开采划分为-120 m、-220 m和-320 m 3个中段,其中-320 m水平为运输中段,-120 m水平为回风中段,-220 m水平为辅助开采中段。运输中段的电机车牵引矿车,从采场溜井处装载矿石并且运输到主溜井卸矿硐室,将矿石集中下放到-320 m水平的破碎硐室,经破碎系统破碎后再经箕斗提升到地表。
该矿区的实际生产的铁矿产出品位要求、各采场溜井的实际产出量及矿石品位由该矿区的现场提供。此外,从以往的矿石产出品位限制的历史记录数据可知实际产出品位要求是22.83%,允许的产出品位偏差波动控制应当在0.5%以内。以原始CAD图计算得出各个采场溜井到主溜井的实际距离,采场溜井的编号在图5中段巷道机车运输道路概念图中给出。各采场溜井位置到主溜井的行驶距离及采场溜井的实际矿石品位与产出量见表2。
图5 中段巷道机车运输道路概念图
表3给出了某地下金属矿的实际参数与数据,数据获取的方式包括文献查询以及项目工作人员的实际测算,无人驾驶电机车运行成本的设置参考列车运行成本的测算方法[23],包括电机车整备费,机车运行用电成本,机车修理费等,通过对收集到的数据进行计算得出重车运行与空车运行的单位成本。从云平台中获取8辆无人驾驶卡车在2021年9月份的车辆的运行轨迹数据及其他数据信息,获取原始数据后进行数据处理。通过借鉴完善的数据试验相关参数设置,在案例试验部分算法参数的设置保持不变,种群规模大小N为100,交叉概率设置为0.9,变异概率设置为0.1。迭代试验证明了算法在迭代200次以后,算法所得出的解没有发生明显变化,因此将最大迭代次数Maxgen设定为250次。
表2 采场溜井相关信息
表3 某矿-320 m水平运输中段运输系统实际参数
为了验证使用距离优势关系改进后的NSGA-Ⅱ-DDR求解无人驾驶电机车多目标调度优化问题的性能,本文选取了原始的NSGA-Ⅱ、MOEA/D以及SPEA2算法进行试验对比。
MOEA/D算法:张清富等在2001年提出的一种基于分解的多目标进化算法[24],主要思想是将多目标问题转化为单目标进行求解,通过对目标空间进行划分,各个邻域的存在就是为每个子问题找到的最优的解。
SPEA2算法:Eckart Zitzler等在2001年提出的一种改进了强度帕累托进化算法(SPEA2)[25],在SPEA算法的基础上使用了一种改进的适应度分配方案,避免由相同个体支配的个体具有相同的适应值的情况,计算每一个个体支配的个数和其他个体支配的个数。
3.4.1 改进后算法有效性验证
采用改进的NSGA-Ⅱ-DDR算法对某地下金属矿山的实际生产项目进行优化求解,以完成6 000 t矿石为运输任务,配备8辆有效载重为60 t的无人驾驶电机车进行运输作业,需要优化成本和等待时间2个目标。表4给出了算法得到的一组Pareto解集,可以看出解集大小为10,约为设定种群规模的1/10,从侧面反映了模型的可行域较为复杂。值得注意的是,使用改进后NSGA-Ⅱ-DDR算法所求得的一组解集并不是Pareto解集,而是基于距离支配关系得到的解集,为了具有更强的客观性,并且与后续试验进行比照,在NSGA-Ⅱ-DDR算法求得解集的基础上进一步使用Pareto支配关系选择的解作为Pareto解集。从两个目标的求解来看,目标1表示最小化运输成本,运输成本的最大值为7 764.63元,最小值为6 844.55元,两者之间相差了920.08元。目标2表示最小化等待时间,最大值为185.6 min,最小值为135.3 min,两者之间相差了50.3 min。两个目标函数值之间存在的差距从一定层面上能反映出得出的解具有良好的分布性,能在可行域内进行全局寻优。
表4 改进NSGA-Ⅱ-DDR算法获得的帕累托解
为了更直观的描述解的分布,图6给出了Pareto解集的分布状况,由于所有Pareto解的各个目标函数值在一定的区间内,所以在坐标轴上直接选取相应区间范围。从图中可以看出算法求得的解具有良好的多样性,没有全部集中在某一特定的区域内,这进一步验证了距离支配关系能有效提升算法的多样性。
图6 改进NSGA-Ⅱ-DDR算法获得的帕累托解集分布图
上述部分从算法求解的角度分析了算法求解的可行性,但是在实际生产生活中,决策者需要的是有效提升对项目生产的确切利益。因此,需要将试验结果与项目生产联系在一起,一组Pareto解集代表着几个合适的方案,决策层根据企业状况和生产需要做出合适的选择。低成本意味着可以直接为项目生产造成收益,从上述Pareto解集中最大的运输成本是7764元,最小的运输成本为6844元,生产成本相差920元,节省幅度超过了最大运输成本的1/10。当项目生产周期长,不需要增加额外生产任务时可以保证项目的低成本运行。当产量需求大,需要尽快完成生产时,最小的等待时间意味着可以高效完成运输作业,可以偏向于选择等待时间小的方案。为了进一步展现试验结果的参考意义,任意选取了Pareto解集中的1号解在表5中给出了具体的无人驾驶电机车运输调度路线。
表5 Pareto1号解对应的无人驾驶电机车行驶路线
3.4.2 经典算法对比分析
将所有的对比算法独立运行30次,每次运行完成后计算得出算法的IGD指标[26],通过30次的IGD进行处理得出各算法最终的IGD值。在表6中给出了各对比算法得到的30个IGD指标的最大值、最小值以及平均值,从试验结果来看,改进后的NSGA-Ⅱ-DDR算法在最大、最小以及平均值上均获得的最优的值。从NSGA-Ⅱ-DDR与NSGA-Ⅱ两种算法的结果来看,虽然IGD的平均值差距不是很大,但是从IGD的最小值的差距可以看出NSGA-Ⅱ-DDR能得出更加优秀的解集,这说明NSGA-Ⅱ-DDR有更好的寻优求解能力。整体上来说,NSGA-Ⅱ-DDR算法获得了最好的评价指标,其次是MOEA/D算法,然后是NSGA-Ⅱ,最差的是SPEA2算法。
表6 各对比算法获得的IGD值
为进一步说明算法求解的可靠性,在表7中给出了运输成本和等待时间2个目标值分别最小时,各种对比算法所求得的所有目标函数值,其中的最优值进行了加粗处理。从目标函数值可以看出NSGA-Ⅱ-DDR算法均取得了最优值,同时在运输成本与等待时间取得最小值时,NSGA-Ⅱ-DDR算法求得的解与其余算法求得的解形成了Pareto支配关系,这说明改进后算法求得的解是最优的。
表7 运输成本与等待时间分别最小时各算法的目标函数值
综合上述分析可知,在各种算法的对比中NSGA-Ⅱ-DDR算法在求解地下金属矿电机车多目标调度优化问题上相较于NSGA-Ⅱ、MOEA/D以及SPEA2算法具有更优的性能,不仅能为决策者提供更多可选择的方案,同时这些方案会产生更好的实际效益。因此,从整体上而言,NSGA-Ⅱ-DDR算法用于求解地下金属矿无人驾驶电机车多目标调度优化模型是比较成功的。
针对地下金属矿当前存在的生产成本高、运输效率低的问题,本文通过构建地下金属矿无人驾驶电机车多目标调度优化模型,并且提出一种新的支配关系对NSGA-Ⅱ算法进行改进,并且在实际生产项目上验证算法求解的可行性。完成6 000 t矿石的运输成本最低为6 844.54元,有效降低了生产成本,将等待时间优化到总运行时间的10%以下,提高了生产效率。得出的调度方案避免了电机车在行驶过程中的冲突问题,贴合实际生产需求,为生产实际提供可靠的参考。