基于多层编码遗传算法的危险品运输调度模型
王占中, 赵利英, 曹宁博
吉林大学 交通学院,长春 130022

作者简介:王占中(1965-),男,教授,博士.研究方向:运输资源优化技术.E-mail:wangzz@jlu.edu.cn

摘要

传统的危险品运输建模时只考虑危险品货物的配送问题,每次派送危险品货物仅派送一次且不考虑危险品运输需要特定的车辆的情况。本文从实际情况出发,建模时假定危险品运输需派送多次,将特定危险品需要特定车型纳入到约束条件中,将危险品运输的在总途时间最小作为目标函数,使用多层编码遗传算法对模型进行求解。最后,通过Matlab仿真验证了该模型的正确性。

关键词: 交通运输安全工程; 危险品运输; 总在途时间; 目标函数; 多层编码遗传算法
中图分类号:U272.4 文献标志码:A 文章编号:1671-5497(2017)03-0751-05
Hazardous material transportation scheduling model based on mutilayer coding genetic algorithm
WANG Zhan-zhong, ZHAO Li-ying, CAO Ning-bo
College of Transportation, Jilin University, Changchun 130022, China
Abstract

In traditional hazardous material transportation model only the material transportation and only one time transportation were considered, but the special vehicle for hazardous material transportation was not considered. A hazardous material transportation scheduling model was proposed. In this model, it is assumed that the material needs to be transported for multiple times to meet the demand, the constraint condition is that special vehicles must be used to transport special hazardous materials, and the objective is to minimize the total transportation time. The multilayer coding genetic algorithm is applied to find the solution of this model. The correctness of the proposed model is verified by MATLAB simulation.

Key words: engineering of communication and transportation safety; hazardous material transportation; total time on road; objective function; multilayer coding genetic algorithm
0 引言

随着危险品运输量的逐年增长, 对危险品运输的研究逐渐成为一个热点。Erkut等[1]在2007年详细剖析了危险品运输这个概念, 阐述了危险品的主要分类、发生事故的主要地点, 同时描述了危险品运输带来的各种影响以及各种影响的计算模型等。近年来, 较为成熟的研究主要集中于路径问题(LP), 车辆规划问题(VSP)和路径车辆规划问题(LSP)三个方面。LP可描述为选择一系列的点, 从这些点中构造一系列的路径, 以最少的成本服务于一系列的危险品需求点[2]。典型的VSP问题可描述为一辆车如何在规定的时间内分配给多条路径[3, 4, 5], Clautiaux等[6]首次引用了多辆车如何在规定的时间内分配给多条路径, 完成运输任务。王云鹏等[7]使用Arc GIS对整个长春市的危险品运输进行了路径优化。LSP是LP与VSP的结合, 前者主要决定危险品的仓库地址, 后者决定车辆的规划问题。在危险品领域, 鉴于危险品概率低、风险大的特点, 一般将LP与VSP结合在一起, 同时考虑。

遗传算法是一种通过模拟自然进化过程搜索最优解的方法, 应用领域广泛, 不仅适用于危险品运输, 在交通运输的各种领域中均有涉猎。Yang等[8]利用遗传算法对地铁系统的时刻表进行优化。Nayeem等[9]介绍了遗传算法的各种版本, 并主要针对交通网络, 利用遗传算法求解交通运输时间最小优化模型。Bielli等[10]利用遗传算法优化了公交车网络。

从现有研究成果来看, 针对车辆调度方面的研究较少。基于此, 本文提出了一种危险品运输车辆调度模型, 在运输路径已规划完全的前提下, 考虑如何合理安排车辆顺序, 有一定的创新性和实用性。根据所建模型中每个货物需求点派送次数不固定的特点, 在设计染色体编码时, 使用多层编码对实例问题进行求解验证, 结果表明该算法具有良好的性能。

1 数学模型

运输危险品货物的车辆均为危险品专用车辆, 其线路均是符合车辆运输通行的公路或者城市道路。危险品需求点的货物需求量有一定的规律, 历年来相同时间、相同周期(如一个星期或者一个月)内, 危险品货物的需求量基本保持平衡。

车辆调度问题从数学上可以描述为有n个需要危险品货物的地点要使用v辆车进行派送, 而在周期性派送货物过程中, 每一个周期需要往危险品需求点派送m次, 车辆调度的数学模型描述如下:

(1)车辆集V={v1, v2, …, vm}, vj为第j台车辆, j=1, 2, …, m

(2)危险品需求地点集S={s1, s2, …, sn}, si为第i个危险品需求地点, i=1, 2, …, n

(3)调度车辆序列集OV={ov1, ov2, …, ovn}, ovi={ovi1, ovi2, …, ovik}为派送至需求地点si的车辆在总的车辆调度序列中的序列。

(4)可选车辆集OPV={ovi1, ovi2, …, ovik}, ovij={ovij1, ovij2, …, ovijk}为需求点sij次运送危险品可选的车辆。

(5)使用车辆派送至危险品需求点的时间矩阵T, tijT, tij为第i个危险品需求地点si使用第j辆车的时间。

(6)仓库到各个危险品需求点的距离矩阵D, diD, di为仓库到第i个危险品需求点的距离。

(7)使用车辆派送至危险品需求点的速度矩阵V', vijV', vij为第i个危险品需求地点si使用第j辆车的速度。

本模型以周期性派送危险品货物的总在途时间为目标函数, 长期观察和统计每次派送至危险品需求点所使用的车辆和时间, 得到对应的车辆矩阵和时间矩阵如下所示:

minTsum=i=1nj=1mtij(1)tij=divij(2)s.t.tijT, i=1, 2, , n ; j=1, 2, , m(3)ovijOPV(4)  i=1, 2, , n; j=1, 2, , mvij80kmh(5)OPVV(6)l2(7)

式中:Tsum为所有派送时间的总和; tij为第i个危险品需求地点si使用第j辆车的时间。

式(2)为时间的计算公式; 式(3)表示tij来源于时间矩阵T; 式(4)为每次派送货物可使用的车辆集; 式(5)为车辆速度需满足的条件; 式(6)表示可用车辆集是所有车辆的子集; 式(7)表示每个需求点需要的派送次数不止一次。

2 算法设计
2.1 染色体编码

染色体的编码方式选择为整数编码, 该染色体的编码主要分为2层, 第1层为所有危险品需求点在选定周期内的派送顺序; 第2层为对应每个需求点每次派送使用的车辆。如[1 2 3 2 3 1 3 2 1 1 3 2 2 4 5 3 4 7], 该个体1到9位表达了在3次循环周期内货物运送点的排列顺序, 依次为需求点1→ 需求点2→ 需求点3→ 需求点2→ 需求点3→ 需求点1→ 需求点3→ 需求点2→ 需求点1, 而10位到18位对应的是每次派送危险品货物使用的车辆序列, 依次是车辆1→ 车辆3→ 车辆2→ 车辆2→ 车辆4→ 车辆5→ 车辆3→ 车辆4→ 车辆7。

主要实现过程如下:

(1)确定染色体的长度, 当需要派送的需求点总数为n, 地点si在选定的周期内需要派送的次数为m时, 则染色体个体可表示为2 i=1knimj的整数串。

(2)随机产生一组离散均匀整数, 并将其赋值给染色体的前半部分, 每随机生成一个数, 对应的危险品点的派送次数就减少一次, 直至染色体的第1层编码全部实现。

(3)将每个危险品需求点每次派送所使用的车辆赋值给染色体的后半部分, 直至染色体的第2层编码全部完成。

2.2 适应度值

对于遗传算法而言, 目标函数的编写是重中之重, 一般将目标函数的值对应转化为染色体的适应度值。本文基于多层遗传算法编码的染色体适应度值为全部工作的完成时间, 适应度值计算公式为:

fitnessi=Tsum(8)

式中:“ Tsum” 是指全部派送任务的完成时间, 全部派送任务完成的时间越短, 该染色体的性能就越好。

主要实现过程如下:

(1)输入染色体个数、车辆个数、每次派送危险品的时间以及初始的每次派送任务的顺序。

(2)根据基因计算每次派送任务的顺序。

(3)根据每次派送任务的顺序, 计算车辆调度顺序的时间。

(4)记录最短调度车辆时间、最佳调度车辆时间和最佳调度顺序。

(5)保存最佳调度顺序和最佳调度车辆时间。

2.3 选择操作

采用轮盘赌法选择适应度较好的染色体, 个体选择的概率为:

pi(i)=Fitness(i) /i=1nFitness(i)(9)

Fitness(i)=1/fitness(i) (10)

式中:pi(i)为染色体i在每次选择中被选中的概率。

主要实现过程如下:

(1)随机产生一个[0 1]之间的数, 代表色子在轮盘外缘所指示的位置。

(2)记录轮盘初始转动的位置, 设置为0。

(3)记录轮盘初始转动的位置。

(4)转动轮盘, 直到轮盘转动的位置超越色子位置, 停止转动, 记录轮盘终止时色子停留时刻所指示的个体。

(5)重复步骤(1)~(4)n次, 个体的适应度越好, 被选中的概率越大。

2.4 交叉操作

种群通过交叉操作获得新染色体, 从而推动整个种群向前进化, 交叉操作采用整数交叉法。首先从种群中随机选取两个染色体, 并取出每个染色体的前 i=1knimj位; 然后随机选择交叉位置进行交叉。操作方法如下:交叉位置为5, 则从起始位置到交叉位置进行交叉。

个体[1 1 2 3 2 2 3 3 1 1 1 2 1 2 1 2 2 2] 221331213112212111

↓ 交叉

个体[2 2 1 3 3 2 3 3 1 1 1 2 1 2 1 2 2 2][1 1 2 3 3 1 2 1 3 1 1 2 2 1 2 1 1 1]

交叉后某些危险品需求点的派送次数多了, 有些需求点的派送次数少了。因此, 把派送次数多的变为派送次数少的, 如个体中需求点2的派送次数多了, 需求点1的派送次数少了, 按照交叉前个体的操作机器调整个体 i=1knimj+1位到2 i=1knimj位的对应的派送车辆, 如下所示。

交叉后个体[2 2 1 3 3 2 3 3 1 1 1 2 1 2 1 2 2 2] [2 2 1 3 1 2 3 3 1 1 1 2 2 2 1 2 2 2]

主要实现过程如下:

(1)输入为染色体、交叉概率、可供选择的车辆和可供选择车辆的使用时间。

(2)随机选择交叉个体。

(3)随机产生交叉的位置, 从起始位置至交叉位置进行交叉。

(4)比较新生成的个体与原来个体中多余以及缺失的基因。

(5)用缺失的基因去修补多余的基因, 生成新的种群。

2.5 变异操作

传统变异算子是对群体中的个体串的某些基因座上的基因值作变动。由于危险品运输时特定容量导致所使用的车辆固定这一特性, 本文对多层编码遗传算法的变异操作做适当调整。首先从种群中随机选取变异个体; 然后选择变异位置pos1和pos2; 最后把个体中pos1和pos2位的派送顺序以及对应的派送车辆对换, 如下所示, 交叉位置为2和4。

个体-[2 2 1 3 2 2 3 3 1 1 1 2 1 2 1 2 2 2]

↓ 变异

个体-[2 3 1 2 2 2 3 3 1 1 1 2 1 2 1 2 2 2]

主要实现过程如下:

(1)输入为染色体、变异概率、可供选择的车辆和可供选择车辆的使用时间。

(2)随机产生一个[0 1]之间的数, 如果变异概率大于该数, 随机选择发生变异的个体。

(3)随机产生变异位置, 进行派送次数的调整。

(4)进行可选车辆的调整。

(5)将新获取的数据放入新的种群中。

3 案例分析

采用多层编码遗传算法求解周期性危险品运输车辆调度问题, 假设共有6个危险品运输需求点, 分别是需求点1~需求点6, 通过10辆车进行危险品派送, 通过长期的统计发现, 在一个周期内分别需要往6个需求点运送5次, 由于每次危险品的容量不同, 可供选择派送的车辆也不固定, 每次派送可供选择的车辆如表1所示。

表1所示, 第1行第1列的内容是3, 表示需求点1的第1次派送可使用的车辆是车辆3。第2行第4列的内容是[6, 7], 表示需求点4的第2次派送可使用的车辆是车辆6或者车辆7。对应的每次派送危险品所使用的派送车辆的派送时间如表2所示。

表1 派送车辆 Table 1 Delivery vehicles
表2 派送时间 Table 2 Delivery time h

表2所示, 第1行第1列的内容是4, 表示需求点1的第1次派送使用车辆3的派送时间是4 h。第2行第2列的内容是[2, 6], 表示需求点2的第2次派送可使用的车辆是车辆3和车辆8, 使用车辆3的派送时间是2 h, 使用车辆8的派送时间是6 h。

多层编码遗传算法的基本参数设置如下:种群数目为40; 最大迭代次数为100; 交叉概率为0.8; 变异概率为0.2。种群适应度值变化如图1所示。

图1 种群适应度值变化Fig.1 Population fitness value variation

图1中可以看出:随着迭代次数的增加, 种群的适应度值包络趋于稳定。经过100次迭代后, 种群的适应度值趋于40 h; 种群适应度平均值也趋于稳定, 表明多层编码遗传算法能有效地解决危险品运输车辆的调度问题。

图2为危险品运输车辆调度的甘特图。图中的3位数表示车辆调度情况, 例如501表示需求点5的第1次派送危险品。图中的0~5 h内可分别实现需求点3的第1次派送, 需求点1的第1次派送, 需求点2的第1次派送, 需求点5的第1次派送等, 以此类推。

图2 车辆调度的甘特图Fig.2 Gantt chart of vehicle scheduling

4 结束语

针对危险品实际运输时不同容量需要使用不同车辆, 在周期性时间段内需要的次数不固定, 以及不同车辆的运输时间不同等特性, 对车辆调度进行建模, 并利用多层编码遗传算法进行求解, 力求达到运输调度总时间最少的目标。最后, 通过Matlab仿真验证了该算法的可行性。

The authors have declared that no competing interests exist.

参考文献
[1] Erkut E, Tjand ra S A, Verter V. Hazardous materials transportation[J]. Hand books in Operations Research and Management Science, 2007, 14: 539-621. [本文引用:1]
[2] Cooper L. Location-allocation problems[J]. Operations Research, 1963, 11(3): 331-343. [本文引用:1]
[3] Saha J L. An algorithm for bus scheduling problems[J]. Operational Research Quarterly, 1970, 21(4): 463-474. [本文引用:1]
[4] Gillett B E, Miller L R. A heuristic algorithm for the vehicle-dispatch problem[J]. Operations Research, 1974, 22(2): 340-349. [本文引用:1]
[5] Gavish B, Shlifer E. An approach for solving a class of transportation scheduling problems[J]. European Journal of Operational Research, 1979, 3(2): 122-134. [本文引用:1]
[6] Clautiaux F, Alves C, de Carvalho J M V. A survey of dual-feasible and superadditive functions[J]. Annals of Operations Research, 2010, 179(1): 317-342. [本文引用:1]
[7] 王云鹏, 孙文财, 李世武, . 基于Arc GIS的危险品城市运输路径优化模型[J]. 吉林大学学报: 工学版, 2009, 39(1): 45-49.
Wang Yun-peng, Sun Wen-cai, Li Shi-wu, et al. Route optimization model for urban hazardous material transportation based on Arc GIS[J]. Journal of Jilin University(Engineering and Technology Edition), 2009, 39(1): 45-49. [本文引用:1]
[8] Yang X, Li X, Gao Z, et al. A cooperative scheduling model for timetable optimization in subway systems[J]. IEEE Transactions on Intelligent Transportation Systems, 2013, 14(1): 438-447. [本文引用:1]
[9] Nayeem M A, Rahman M K, Rahman M S. Transit network design by genetic algorithm with elitism[J]. Transportation Research Part C: Emerging Technologies, 2014, 46: 30-45. [本文引用:1]
[10] Bielli M, Caramia M, Carotenuto P. Genetic algorithms in bus network optimization[J]. Transportation Research Part C: Emerging Technologies, 2002, 10: 19-34. [本文引用:1]