王红艳 朱鑫彦
摘要:互联网的发展给滞销的农产品打开了新的出路,但由于农产品的保质期限较短,如果物流配送不能及时送达就会使农产品变质。为了尽可能地满足消费者的需求,通过研究农产品在配送时的车辆路径问题,合理规划配送车辆的运输路线,并且采用集配一体化的配送方式,对于提高企业服务水平、降低物流成本以及促进我国物流行业甚至是社会经济的发展具有重大意义。主要针对西部农产品配送路线出现的不合理现象进行优化,进而节省运输费用,提高经济效益,通过构建农产品配送路线,采用数学模型进行条件限定,并用遗传算法对原有的配送路线进行优化,通过MATLAB软件进行计算结果的论证,进而得到最优解,最终为西北农产品配送中心得出较经济合理的配送路线。
关键词:遗传算法;农产品;配送路线;MATLAB
中图分类号: F252.14 文献标志码: A 文章编号:1002-1302(2019)17-0233-04
在“互联网”发展的推动下,我国农产品贸易保持较快增长,这为“十三五”期间我国农产品贸易发展带来很多新机遇,但农产品贸易发展需要加快物流配送,只有配送服务到位,才能更长远、更好地发展[1]。中央也将城市配送纳入物流行业九大重点工程建设之一,提到了优先发展的高度[2]。通过对农产品配送问题的研究,不仅可以有效地降低社会物流总成本,提高配送服务水平,改变我国物流管理落后的现状,还有助于优化城市交通环境,缓解就业压力、加快产业转移、促进区域经济均衡快速地发展,下面以西北配送中心为例,进行配送路线的研究[3]。
1 西北农产品配送中心配送路线优化数学模型的建立
西北农产品配送中心位于陕西省西安市辛家庙农产品批发市场附近,该配送中心每天都有大小不等的车辆进行配送,其中有10个大型配送点比较集中,分别是人人乐、华润万家、沃尔玛、明喆蔬菜店、京东超市、苏宁易购、天猫超市、家乐福超市、世纪金华、民生量贩。原来的配送方式是根据配送点的需要安排车辆,但是这样车辆不固定,配送路线也比较乱,每次配货都需要临时调车,同时导致车辆没有得到合理利用,现针对这个问题进行配送路线优化数学模型的建立。
1.1 设定条件
对农产品网购物流配送模型可以做如下抽象和假设:(1)在保证满足每个客户的要求的前提下,不超过每台车的限载量和最远行驶距离,使配送路线最短,效益最优;(2)车辆到达指定点后,先卸货,后装货,然后再行驶去下一个站点;(3)所有配送的车辆规格都一样,拥有相同的载重能力和最大行驶里程;(4)配送中心只有1个,到各个客户的距离经过计算可以得出;(5)现有若干车辆,限载量为2 t和4 t,由于是干货类,不考虑载重,车的配送最大行驶距离不能超过45 km。
1.2 数学模型的建立即变量定义
Q表示每辆车的承载量;M表示所有的车辆数;D表示每臺配送车辆的最远行驶距离;N表示共下单购买货物的客户数;S0j表示配送中心到每个客户的距离,j=1,2,3,…,N;Sij表示客户i到客户j的距离;xi表示每个客户需要的数量;Nk表示车辆k能够配送的客户数量;Rk表示第k辆车的行驶路线;Gki表示第k辆车配送顺序的第i个客户(Gk0=0,表示在物流中心)。
1.3 建立目标函数及约束条件
(1)目标函数:minZ=∑MM=1[∑Nki=1SGk(i-1)·Gki+SGkNkGk0×sign(Nk)]。
目标是总的配送距离最小。
(2)限制条件:
∑Nki=1xGki≤Q,该限制条件是在k条路线上的所有客户的总需求量不能超过车的承载量。
∑Nki=1SGk(i-1)Gki+SGkNkGk0×sign(Nk)≤D,该限制条件是每一个配送路线的最大距离不能超过每辆车的最大行驶距离。
0≤Nk≤N,该限制条件是每条配送路线的客户数量不能超过总客户数量。
∑Mk=1Nk=N,该限制条件就是确保每个客户都拿到相应的货物数量。
Rk1∩Rk2=fR,该限制条件要求每个客户仅一辆车进行配送。
sign(Nk)=1(Nk≥1)
0(表示该车未被利用)。
2 遗传算法的配送路径的优化流程
在农产品的物流配送中,优化路径是较复杂的非确定性问题,采用传统的算法在求解满意程度上存在着一定的不足之处,而遗传算法是一种全局搜索算法,具有运算简单且收敛速度快等特点[4]。遗传算法具体流程如图1所示。
在图1流程图中,交叉概率Pc取值为0.25~1.0,变异概率Pm取值为0.01~0.1,计算过程中的迭代次数达到了预先设定的最大迭代次数,则计算终止。
2.1 编码
采用自然数编码的形式,根据上述问题的约束条件,将任务分配给各车辆,并将各个客户规划到车辆的配送路径中,最终回到配送中心,形成闭环路1;而另一辆车也从配送中心出发经过各配送站点后回到配送中心形成闭环2,重复此操作直到此配送中心的所有客户的货物都送达。
2.2 初始种群构造
随机产生X条路线的全排列,并在开始和结尾处插入0。选择每一个要送货的客户,计算该节点的配送量,首先要考虑承载量∑Nki=1SGk(i-1)Gki+SGkNkGk0×sign(Nk)≤D的约束条件,若当前车辆的装载量能够满足配送货物的要求,则须继续检验行驶路程0≤Nk≤N的约束条件,若能够满足上述约束条件,则重复用上述约束条件进行检验,直到将m-1个0插入到染色体内为止。
2.3 适应度函数
适应度函数是衡量种群中每个个体优劣程度的指标[5]。本研究针对上述问题设计合理的适应度函数来对文中具体的染色体进行评估。本研究构建的数学模型是最小化组合优化问题,其目标是minZ=∑MM=1[∑Nki=1SGk(i-1)·Gki+SGkNkGk0×sign(Nk)],所包含的约束条件较多,最核心的限制条件:
(1)总需求量不能超过车的承载量:
∑Nki=1SGk(i-1)Gki+SGkNkGk0×sign(Nk)≤D;
(2)最大距离不能超过每辆车的最大行驶距离:
0≤Nk≤N。
2.4 选择操作
选择操作是遗传算法进化的基础,根据“物竞天择,适者生存”的观念,从父代种群中选择优良个体,使其有机会繁衍下一代,从而产生更加优秀的个体[6]。本研究使用的选择操作算子结合最佳个体保存策略,具体操作:对每一代群体中的染色体按照适应度进行排序,适应度值最大的染色体直接进入下一代,这种选择方法既保证了适应度最高的个体能够顺利进入下一代,又保证了种群中适应度值较大的个体能以较大的机会进入到下一代[7]。
2.5 交叉操作
本研究根据交叉算子的染色体编码结构的特殊性,即染色器编码中2个0之间的编码表示单个车辆的配送路径,在交叉操作时把子串复制到目标染色器的首部,然后删除目标染色体中跟复制的子串相同的编码,并重新调整目标染色体中编码0的位置[8]。交叉操作的过程分为3个步骤:
2.5.1 确定要交叉操作的染色体子串 根据前面确定的编码规则,有X个客户点、M个配送车辆的车辆路径规划问题的染色体编码长度为X+M+1[9]。选择2个染色体X1和X2,在[1,X+M+1]之间随机产生2个整数m1和m2(m1 2.5.2 染色体子串交叉复制 把染色体X1中m1和m2之间的编码串整体复制到新染色体X11的首部。 2.5.3 调整剩余子串编码 删除染色体X2中与复制子串相同的基因编码,同时调整染色体X2中基因码0的位置。并按照此顺序将染色体编码复制到染色体X11中复制子串之后。具体编辑过程的操作如图2所示。 3 MATLAB在遗传算法中的应用 西北农产品配送中心到10个客户的距离以及各个客户之间的距离如表1所示。 针对以上距离数据,结合建立的数学优化模型,打开MATLAB窗口,直接在Fitness funtion框里输入@rastriginsfcn;输入变量个数为2,设定繁殖代数为150代。在plot区里可以勾选希望看到的结果图像,设置完参数之后点击start按钮就可以运行了。关于函数编码的主要内容如下。 3.1 计算目标函数值 % calobjvalue.m函数的功能是实现目标函数的计算,其公式采用本研究示例仿真,可根据不同优化问题予以修改。 %遗传算法子程序 %Name:calobjvalue.m %实现目标函数的计算 function[objvalue]=calobjvalue(pop) temp1=decodechrom(pop,1,10); %将pop每行转化成十进制数 x=temp1*10/1023; %将二值域中的数转化为变量域的数 objvalue=∑MM=1[∑Nki=1SGk(i-1)·Gki+SGkNkGk0×sign(Nk)];%计算目标函数值 3.2 求出群体中最小得适应值及其个体 %遺传算法子程序 %Name:best.m %求出群体中适应值最小的值 function[bestindividual,bestfit]=best(pop,fitvalue) [px,py]=size(pop); bestindividual=pop(1,:); bestfit=fitvalue(1); for i=2:px if fitvalue(i)>bestfit bestindividual=pop(i,:); bestfit=fitvalue(i); end 3.3 迭代过程 根据上述遗传算法的程序编辑,经过49次的迭代次数,其迭代过程如图3所示。 3.4 最后仿真结果 根据遗传算法的计算思路,采用MATLAB软件,进行路线优化设计,得出最优结果有3条路线,如表2所示。第1条路线是配送中心——人人乐——华润万家——沃尔玛——明喆蔬菜店——京东超市;第2条路线是配送中心——苏宁易购——天猫超市——家乐福——世纪金花;第3条路线是配送中心——民生量贩。具体车辆行驶路径如图4、图5、图6所示。 经过49次的迭代次数,原来的配送路线是用10辆车进行单独配送,配送路程共是192 km。经过优化后现在的配送路线是由3辆车进行配送,配送路线距离为124 km。所达到的效果是优化后的路线较原来的路线减少68 km,车辆节省了7辆。 4 结论 在“互联网”的促进下,西北农产品的发展也在加速,围绕西北农产品配送中心配送不及时、配送费用高等问题,建立以配送路线最短为目标函数,多个约束条件的数学模型,采用遗传算法对西北农产品配送中心的配送路线进行优化,并通过MATLAB软件编辑代码,这一优化求得最优解。这一优化为西北农产品配送中心大大提高了配送效率,同时也节省了配送费用,大大促进了西北地区农产品网络销售市场的发展。 参考文献: [1]刘海燕,余世欣. 基于遗传算法的物流车辆派送管理[J]. 电子设计工程,2017,25(2):37-39. [2]苏 楠,鹿 静,王栋梁. 基于遗传算法的物流配送车辆路径优化问题[J]. 汽车实用技术,2016(6):4-6. [3]庄景明,彭昕昀. 基于改进遗传算法的新鲜农产品配送路线优化研究[J]. 江西师范大学学报(自然科学版),2017,36(4):399-402. [4]金巳婷,吕 闪,吴阳明,等. 基于改进遗传算法的物流配送路径优化方法研究[J]. 计算机与数字工程,2017,45(4):629-631. [5]王有鸿. 基于遗传算法的生鲜农产品物流配送路径聚类优化[J]. 江苏农业科学,2018,46(12):358-362. [6]周建国. 基于改进遗传算法的农产品配送路径优化研究[J]. 采购与供应链,2018(1):136-138. [7]曹 倩,邵举平,孙延安. 基于改进遗传算法的生鲜农产品多目标配送路径优化[J]. 工业工程,2015,18(1):71-76. [8]陈孝强. “互联网+农业”环境下消费者网购农产品意愿与影响因素研究[J]. 经济理论与实践,2018(2):19-21. [9]袁 群,左 栾. 基于改进混合遗传算法的冷链物流配送中心选址优化[J]. 上海交通大学学报,2016,50(11):1795-1800.