第8卷第3期 铁道科学与工程学报 JOURNAL OF RAILWAY SCIENCE AND ENGINEERING VOI_8 NO.3 June 201l 2011年6月 铁路集装箱空箱调运问题的遗传算法 段 刚 ,张慧。,陈莉 ,李引珍 ,刘永莉 ,陈志忠 (1.兰州交通大学交通运输学院,甘肃兰州730070;2.兰州铁路局货运处,甘肃兰州730070; 3.兰州城市学院数学学院,甘肃兰州730070) 摘要:根据铁路集装箱运输的特点,对空箱调运问题进行了分析,并设计了遗传算法求解这类问题。采用整数矩阵编码, 通过对父代染色体的线性组合取整运算作为交叉算子,并做适"3调整以保证解的可行性,同时利用矩形闭合回路调整调运 -量作为变异算子。以兰州铁路局集装箱办理站为例进行了验证,结果表明:该算法不仅效率非常高,而且可以得到问题的 多个最优解。 关键词:集装箱;空箱调运;遗传算法 中图分类号:U292 文献标志码:A 文章编号:1672—7029(2011)02—0ll0—06 Genetic algorithm for railway empty container allocation problem DUAN Gang ,ZHANG Hui ,CHEN Li ,LI Yin.zhen ,LIU Yong...1i,CHEN Zhi—zhong (1.School of Trafifc and Transportation,Lanzhou Jiaotong University,Lanzhou 730070,China 2.Cargo Transport Department。Lanzhou Railway Bureau,Lanzhou 730070,China; 3.Department of Mathematics,Lanzhou City University,Lanzhou 730070,China) Abstract:Empty container allocation problem was analyzed,according to railway transportation characteristic,,arid a genetic algorithm was designed to solve the kind of problem in the thesis.We employ integer matrix encoding.Cross— over operation makes use of integer arithmetic for a linear combination of a pair of parents.The adjustment was also made in order to get feasible solution.Mutation operation adjusts transpotation quantity in rectangle circuit.At last the lgorithm was taested by the true data of Lanzhou Railway Bureau container handling stations.Result indicates the high eficiency of the proposed algorfithm.We also could get diverse optimal solution through the algorithm. Key words:container;empty container allocation;genetic algorithm 由于我国地区经济发展不平衡、各区域货物流 方案并设计出高效的算法,对于减少空箱调运成 本,提高铁路运能和集装箱使用效率,具有卜分现 实的意义。 量不均衡以及集装箱办理站之间集装箱到发量的 不平衡,导致铁路适箱货源和箱源分布也不平衡。 即使在同一地区,也会因季节和时间的变化而出现 某一段时间集装箱空箱积压,另一段时问短缺的现 象,从而导致空箱调运。频繁地进行空箱调运不但 浪费铁路运能,而且空箱在运输途中支出的各种费 1 研究现状 铁路空箱调运与空车调配『nJ题无论从模 构 用也给铁路运输企业增加了负担。集装箱的日常 管理费用通常可以分为:空箱调运费、堆存费、修理 费、集装箱租赁费、吊装费和其他费用,而集装箱空 箱调运费用占总费用的1/4。因此,优化空箱调运 收稿日期: 造上还是求解方法上都非常相似,【大J此可以借鉴 熊红云等 和张得志等 采,}}j矩阵表示染色体的 遗传算法分别求解铁路空车和空箱调运问题,他f『J 基金项目:国家自然科学基金资助项目(60870008);教育部新世纪优秀人才支持计划资助项目(NCET 作者简介:段刚(1977一),男,吉林省吉林人,讲师,博士研究生,从事交通运输系统分析研究 通讯作者:李引珍,男,教授,博:仁生导师 第3期 段刚,等:铁路集装箱空箱调运问题的遗传算法 设计的交叉算子均对2个染色体的均值运算和取 余运算的结果进行代数和计算,从而得到新的染色 体,变异算子也都是对染色体子矩阵中的元素进行 调整,区别是一个采用整数编码,一个采用十进制 编码。果鹏文等 采用振荡法解决大规模路网上 的空车调配问题,在事先不知道某个区段空车排空 方向的前提下,预先人为指定该区段的空车排空方 向,作为初始方案,使得区段上中间站的空车流,能 够按照一定的原则归并到前方技术站;然后对初始 方案进行计算,对区段空车方向不断进行调整,反 复计算,直到指定的空车方向与计算结果相符合时 为止。雷中林等 针对运输需求等不确定性建立 了空车调配的随机机会约束模型,并设计了遗传算 法求解。林柏梁等 设计了分步优化迭代算法求 解线路能力约束下的铁路空车调配问题。还有应 用神经网络法 J、物体重心法 和区段中心优化 法 求解问题。在此,作者从铁路运输实际出发, 针对空箱调运模型,设计了一种新的遗传算法,可 以高效求解空箱调运问题。 2空箱调运问题的数学模型 2.1参数与变量 为空箱供应站集合,S={1,2,…,m};D 为空箱需求站集合,D={1,2,…,n};0 为i站 可供应的空箱数,口 ∈Z ,i∈S;6 为 站需求的空 箱数,bj∈Z , ∈D;d 为i站与 站间的距离,i∈ ,J ED;x 为i站向 站调运的空箱数,决策变量。 2.2空箱调运模型 空箱调运模型如下: minz=∑∑dij (1) t ∑ = i∈S (2) ∑ =b , ∈D (3) xij∈Z U{0},i∈S, ∈D(4) (1)式为目标函数,表示空箱调运的总距离最 小;(2)式与(3)式为空箱供应与需求的平衡约束; (4)式为变量的非负和整数约束。 实际上,上述模型为供需平衡的运输问题模 型。然而,由于受到铁路集装箱数量的,经常 出现部分空箱需求无法得到满足的情况,即供不应 求,这时需增加一个虚设的空箱供应站1Tt+1,且 n =∑ 一∑nED i∈ ,d √=0,无法满足的空箱 需求就由虚设的空箱供应站提供,即将(2)式~ (4)式中的所有 ∈S改为i∈S U{m+1},这样 就可以将其转化为平衡的运输问题。对供大于求 的情况可作类似处理。 3空箱调运问题的遗传算法 自从1975年Holland提出遗传算法后,因为其 简单、鲁棒性好和并行计算等特点,从而在工程技 术、自动控制、图像处理、人工智能和管理科学等众 多领域得到了广泛应用。本文提出一种新的遗传 算法,通过交叉与变异操作,在保证解的可行性基 础上,能够快速高效求解空箱调运问题。 3.1染色体的构成及种群的初始化 采用整数编码,以矩阵’,表示一个染色体, V: (5) 其中, ∈Z U{0},i∈S, ∈D。显然,基因 表示i站向 站调运的空箱量,这样,染色体的基因 型与其表现型完全一致,无需解码,因此以下对染 色体和解不加区分。但要使得染色体可行,必须满 足供需平衡的条件。以下种群的初始化,交叉算子 和变异算子的操作,均围绕染色体的可行性来 进行。 初始种群的产生采用下面的算法 ]: 步骤1随机产生下标i和 ,其中i∈S,J.∈ D; 步骤2计算 戈 =rain{0 ,bj}; 步骤3更新Ⅱ 和bj,Ⅱ =口 — ¨bj=bj— xij; 步骤4重复步骤1一步骤3,直到所有o 和 b 都为0。 由上述算法产生的染色体必然对应一组可行 解,其分配思想就是随机化的西北角法。 3.2交叉算子 按交叉概率P 随机选择染色体’,l和 作为 父个体,其中V =( ), =( )。为了使得交 l12 铁道科学与工程学报 叉操作不破坏染色体的可行性,QeL采用下面的方法产 生子代染色体I/3=(Y )和V4=( )。首先,令 Yl1=l l11+(1一o爪 r.J_ 1L, )221 ∑㈦ .l (6) 一=} 2 +(1一 ) : I(7) ( 1■一 其中0<o/≤0.5,l l表示取下整,即 ㈦ ㈦ lI=max{Y∈Z U{0}l Y≤ } (8) 一 2“ ) 一 Y =max{0,卢 } ∑㈦ (10) I J =min{l∑(似 +(1一 ) )j— l i —l ∑ lf=1 ∑(k=l 《+(1一 ) 一。 =J )(11) =max{0,y } (12) 其中,i∈S√E D,i和 不同时为l,0< ≤0.5。 当i=1, ≥2时,(9)式和(11)式的最小值皆取第 1项,而当 =1,i≥2时,两式的最小值皆取第2 项。 为交叉参数,是本遗传算法中最重要的参数。 实际上,文献[1]和[2]中的交叉方法可以看作是 本交叉算子的特例,即Ot取值为0.5,也就是对2 个父代染色体的对应基因求均值。而本文中, 取 值更广泛,这样就能够扩大种群的多样性。 (9)式和(11)式可以保证子代染色体每行的 调运量之和不会超过供应量,每列的调运量之和不 会超过需求量,(10)式和(12)式能够保证调运量 都非负,但却不能保证等式成立,故需要对调运量 进行调整以满足平衡条件。 以染色体V3为例,若∑Y < ,∑Y < J∈D E∈ bj ,则令 =min{a 一∑YiJ∈D lj, bj 一∑YI ES )(13) 更新Y 令Y l= +Y 1;遍历i, ,直至 所有行列都满足平衡。 3.3变异算子 求解运输问题的表上作业法,其对基变量的调 整采用闭合回路法。该方法虽然能保证解的可行 性,但寻找闭合回路却相当耗时。本文借鉴该思 想,采用基于矩形闭合回路的方法设计变异算子, 可以大大减少计算量。 按变异概率P 选择染色体V5=(埘 ),随机 选择i0,Jo,il, l,其中io∈S,Jo∈D,iI∈S/{i()}, 1∈D/{Jo}。当Wio,]ow ,1>0,即WmJ0和W Jl同 时为正数,取6=min{W ,W .}。然后在矩形闭 合回路W ,W㈨,W ,W 中进行调整,令 Wido=Wido一6 (14) wi =w 一6 (15) wi ̄l=w l+6 (16) wi ̄0=W +6 (17) 其余基因 ,取值不变,组成新的染色体 评价函数和选择操作 由于染色体的可行性以及目标函数为线性函 数,所以取目标函数为评价函数,即: Eval( )=∑∑c∈ 7∈D (1 8) 其中,V=( )。 采用基于轮盘赌的选择策略,详见文献[9]。 3.5算法步骤 步骤l初始化种群; 步骤2通过交叉操作和变异操作产生子代 染色体; 步骤3计算每个染色体的评价函数,并记录 最优染色体; 步骤4通过轮盘赌选择染色体; 步骤5 重复步骤2一步骤4,直到满足停止 条件。 其中,停止条件为可以定义为进化的最大代 数,也可以通过比较前后两代最优染色体的变化情 况确定停止条件,本文采用前者。 4实验仿真 以兰州铁路局为例,对该局内集装箱办理站问 的空箱调运进行优化。图l所示为 州局的18个 集装箱办理站。这里取2009年某月的集装箱运输 数据,用以验证算法的有效性。各个集装箱办理站 的空箱需求量、供应量以及两站之间的距离如表1 所示,其中,距离为两站之间的最短路径长度。 于绿化、中堡、张家祠和鸳鸯镇4个集装箱办理站 到发集装箱数量平衡,故没有出现在表1中。【大】为 总需求量为554箱,而总供应量只有344箱,所以 增加虚设供应站5 ,其供应量为210箱。 第3期 段 刚,等:铁路集装箱空箱调运问题的遗传算法 113 为了寻求交叉概率、变异概率以及交叉参数 的最佳取值,利用VC6.0编程,在Core 2 Duo& 2.2GHz、lG DDR2的惠普笔记本上运行通过,在 每组概率组合下都做了10次测试,其中群体规模 为2O,遗传代数为600。首先令O/=0.1,P = 0.1,交叉概率P 在(0,1)区间每次变化0.05,评 价函数的平均值和标准差的变化见图2和图3。 显然j P 的最优取值为0.65,在此基础上,变异概 率P 在(0,1)内每次变化0.05,同样可以得到评 价函数的均值和标准差变化情况,见图4和图5。 图1 兰州铁路局集装箱办理站示意图 Fig.1 Lanzhou Railway Bureau container handling stations 从图中可以看出,当P 大于0.65时,评价函数的 均值几乎相同,其标准差也比较接近,且都比较小, 因此,选取P =0.65。 注:图中带数字编号的车站表示集装箱办理站 表l集装箱办理站间距离及供需表 Table 1 The distance between container handling stations and supply and demand quantity 粤1塞.49×lOs 1.48xl0s 1.47×10 蜷 闺 基L 46×10 1.45x10 ‘ ‘ ‘ ‘ ‘ ‘ Q ’ 变异概率 交叉概率 图2不同交叉概率下评价函数平均值 Fig.2 The average value of evaluation function under dif- ferent crossover probability 图5不同变异概率下评价函数标准差 F.g.5 The standard deviation value of evaluation function under different mutation probability 篓加。。 } V V 00o 。2500 /\八 / \ 在最优交叉概率和变异概率组合下,令 在区 间[0.05,0.5]内每次变化0.05,得到评价函数的均 值和标准差,如图6和图7所示。当 取值为0.1, 0.35和0.5时,评价函数平均值都比较小,标准差也 相差不多,所以可以任选一个,本文取 =0.1。 1.45×I 露1.44×1 籁1.44x 1 阁1.44×l ¥1.43x l 图6 不同交叉参数值下评价函数均值 Fig.6 The average value of evaluation function under dif- ferent crossover parameter 114 铁道科学与工程学报 2011年6月 8oo r 且还能得到另外一组最优解,如表3所示。不难看 出,在表2中由金昌,兰州北,嘉峪关和白银市组成 亡0 L——— ———。。 ———‘——— ———— ——— ——— ——— —— 0.05 0.15 0.25 0.35 0.45 }\√ \/^\/\ 交叉参数值 的闭合回路里,对调运量进行了1个单位的调整, 即得到表3,而这正是本文中的变异操作。所以使 用该遗传算法,不仅能在不同的计算中得到这2组 最优解,还能在一次计算中同时得到这2组最优 解,而这是LINGO软件做不到的。 1.6O 图7 不同交叉参数值下评价函数标准差 Fig.7 The standard deviation value of evaluation function under different crossover probability 在以上各参数最优取值下,通过本文设计的遗 传算法,当计算到520代时达到最优,评价函数为 143689,收敛过程如图8所示(其中,从390代到 阁1.56 1.52 1.48 1.44 510代,评价函数都为143720,与最优评价函数只 相差31,图中显示不明显)。采用LINGO 9.0软件 计算得到的最优解如表2所示,计算时间不到1 S (LINGO 9.0最小计时单位为S)。本遗传算法的 计算时间仅为0.14 S,不但能得到上述最优解,而 1.40 导晶莹呈量 曼萤萤莩詈莩萤萤誊 代数 图8 遗传算法收敛图 Fig.8 Genetic algorithm convergence figure 表2应用LINGO计算得到的最优调运量 Table 2 The best solution solved by LINGO software container 整得到子代染色体,变异操作则采用矩形闭合凹路 5结论 法。通过对兰州铁路局集装箱办理站的实例计算, 表明该算法不但效率非常高,而且还能得到小同的 最优解。关于交叉参数 的取值问题,本文采用固 定值,通过测试找到其最佳取值。如果在计箅过程 中,对 进行调整,采用变参数法,或者直接对其进 行编码并参与交叉和变异操作进行自适应调整,这 铁路集装箱空箱调运优化模型与空车调运模 型完全相同,因此,设计高效的算法就成为解决这 类问题的关键。本文提出的遗传算法,交叉操作是 对父代染色体进行线性组合并取整后经过适当调 第3期 段刚,等:铁路集装箱空箱调运问题的遗传算法 ll5 样会进一步提高该算法的效率,以利于求解更大规 模的问题,这将是我们下一步要研究的内容。 参考文献: [1]熊红云,鲁五一,温红艳.铁路空车调配问题的遗传 启发算法[J].中国铁道科学,2002,23(4):118— 121. XIONG Hong—yun,LU Wu—yi,WEN Hung—yan.Heredi— tary heuristic algorithm for empty car distirbution in rail— way transportation[J].China Railway Science,2002, 23(4):118—121. [2]张得志,谢如鹤,黄孝章.铁路集装箱空箱调度模型 及求解算法[J].中国铁道科学,2003,24(3):125— 129. ZHANG De—zhi,XIE Ru—he,HUANG Xiao—zhang.Dis— patch model and solution algorithm of railway empty con— tianer[J].China Railway Science,2003,24(3):125— 129. [3]果鹏文,褚江,林柏梁.用振荡法解大规模路网上 的空车调配问题[J].中国铁道科学,2002,23(4): l11一l17. GUO PeIlg—wcn,CHU Jiang,LIN Bo—liang.Reiterative  ̄ting method of empty wagon on large—scale railway network[J].China Railway Science,2002,23(4):111 一ll7. [4]雷中林,何世伟,宋瑞,等.铁路空车调配问题的 随机机会约束模型及遗传算法[J].铁道学报,2005, 27(5):1—5. LE!Zhong-lin,HE Shi—wei,SONG Rui,et a1.Stochastic chance——constrained model and genetic algorithm for empty ear distirbution in railway transportation[J].Jour- nal of the China Railway Society,2005,27(5):1—5. [5]林柏梁,乔国会.基于线路能力约束下的铁路空车调 配迭代算法[J].中国铁道科学,2008,29(1):93— 96. LIN Bo—liang,QIAO Guo—hui.Iterative algorithm of rail— way network empty ears distirbution based on restirction of route capacity[J].China Railway Science,2008,29 (1):93—96. [6]党建武.神经网络在铁路空车调度问题中的应用[J]. 兰州铁道学院学报,1999,18(1):77—85. DANG Jian-WH.Application of neural networks to empty carirage scheduling in railway transportation[J].Journal of Lanzhon Railway Institute,1999,18(1):77—85. [7]纪嘉伦,林柏梁,李福志,等.用重心优化方法求解 铁路网上空车调配问题[J].铁道学报,2001,23(3): 109—113. JI Jia・lun,LIN Bo—linag,LI Fu—zhi,et a1.Distribution of empty wagons on railway network by using the center—of —gravity—optimization method[J].Journal of the China Railway Society,2001,23(3):109—113. [8]果鹏文,林柏梁,余洋.大规模路网上空车调配的 区段中心优化法[J].中国铁道科学,2001,22(2): 122—128. GUO Peng—wen,LIN Bo—liang,YU Yang.The section center optimization method of empty car adjustment on large—scale railway network[J].China Railway Science, 2001,22(2):122—128. [9]Liu B.Stackelberg—Nash equilibrium for multilevel pro— gramming with multiple followers using genetic algorithms [J].Computers and Mathematics with Applications, l998,36(7):79—89.