沈 澄,方 伟
(1.浙江工商职业技术学院,浙江 宁波 315012;2.宁波永耀信息科技有限公司,浙江 宁波 315020)
数学建模优化物流运输路径可行解的改进算法及其应用
沈 澄1,方 伟2
(1.浙江工商职业技术学院,浙江 宁波 315012;2.宁波永耀信息科技有限公司,浙江 宁波 315020)
针对带时间窗物流运输最优化路径选择问题,基于概率分布算理的共同机制,将遗传算法全局搜索优势与模拟退火算法局部搜索优势有机整合,有效规避二者算法寻优性能的不足,使构建的改进算法兼顾优越的全局搜优能力和计算效率。针对9个目标点物流运输路径优化问题的可行解,展开算法应用的试验验证。结果显示,若目标点数量较少能够求得最优解,若目标点数量较多则能够求得满意解。
物流运输;路径优化;目标函数;最优解;适应度;可行解
在物流运输业中存在许多优化策略问题,运输路径的优化作为NP-C问题,计算复杂性很高,难以通过全局搜索实现最优化求解[1]。众所周知,遗传算法(GA)具有突出的全局搜索能力,但在实际运用中时常早熟收敛,后期搜索效率不高,为此许多学者采用蚁群算法、粒子群算法等对遗传算法进行混合改进,取得了较好的寻优效果。模拟退火算法(SA)具有优秀的局部搜索能力,本文根据物流运输的特点,建立相应的数学模型,将模拟退火算法置入遗传算法,优化改进遗传算法,并展开算法应用的试验验证。
将货物从集散中心配送到多个目标,先要确定每个目标的位置和需求量、选择最优配送路径,达到运输效率高、成本最低,还需满足[1-2]:①每条线路的货运量不得超出运输车辆的装载量;②每条线路目标点的需求必须满足,且仅由一辆车在限定时间内送货;③每一运输车辆自集散中心出发,均必须在限定时间内返回集散中心。为此设该运输系统中的目标点集合i=0表示集散中心,车辆数集合,引入决策变量,,其中i,j∈N,i≠j,k∈H。假设每条配送路径对应一辆货车,且一辆货车可以满足这条线路上目标点的配送要求,每一目标仅由单一车辆完成一次配送,建立数学模型的相关参数见表1。
表1 物流运输路径优化的数学模型参数
那么,目标函数[2-3]:
模型中(1)为目标函数,(2)至(12)为约束条件。(2)规定集散中心是运输车辆的起点与终点;(3)规定派出的车辆数不超过拥有的车辆数;(4)规定车辆不能从本地到本地;(5)规定车辆路径连续约束;(6)和(7)规定每一目标点恰好被一辆车服务一次;(8)规定每一路径货运总量的车载重约束;(9)规定车辆运输准时的时间约束;(10)至(12)为时间窗约束。
3.1 模拟退火算法(SA)
该算法来自热力学中的固体退火原理,固体加热温度至充分高,其内能增大,而冷却过程在常温时达到基态,内能减为最小。N.Metropolis于1953年提出,用固体退火模拟组合优化问题,将内能E模拟为目标函数f,温度T演化成控制参数t,由初始解s和控制参数初值t开始,对当前解重复“产生新解→计算目标函数差→接受或舍弃”的迭代,并逐步衰减t值,当温度终止在低温时内能极小,即目标函数值最小,此时算法终止的当前解即为近似最优解。
这是基于Monte-Carlo迭代求解策略的一种随机寻优算法,搜优过程随着温度的不断下降,赋予一种时变且最终趋于零的概率突跳性,在解空间中随机寻找目标函数的全局最优解,具有跳出局部最优陷阱的能力,随着温度的不断下降至最低温度,搜索过程以概率l收敛于最优解,即在局部的最优解能概率性地跳出并最终趋于全局最优,具有概率的全局优化性能。
设目标函数为min f(Si),Si∈S,S是离散有限状态空间(即可行解集合),求解过程如下:
(1)初始化,任选初始解Si∈S,给定初始温度T0足够高,终止温度Tf足够低,令迭代计数器k=0,Tk=T0。
(2)随机产生一个邻域解,Sj∈N(Si),N(Si)表示Si的邻域,计算目标值增量,Δf=f(Sj)-f(Si)。
(3)若Δf<0,令Sj=Si转到第四步,否则产生一个随机数ξ∈U(0,1),若exp(-Δf/Tk)>ξ,则令Sj=Si。
(4)若达到热平衡转到第五步,否则转到第二步。
(5)k=k+1降低Tk,若Tk 3.2 遗传算法(GA) 该算法1975年由美国J.Holland教授提出,它是借鉴生物界适者生存的遗传机制形成的随机搜索最优解的方法。该算法采用概率化的寻优方法,能自动获取和指导优化的搜索空间,自适应地调整搜索方向,具有内在的隐并行性和更好的全局寻优能力,可使问题的解一代又一代地优化逼近最优解。GA应用遗传算子经选择、交叉、变异运算,模拟生物种群自然选择、优胜劣汰、不断进化的规律,逐代产生出代表新的解集的种群,后生代种群比前代更加适应环境,解码末代种群的最优个体作为近似最优解。求解过程如下: (1)初始化求解空间。设进化代数计数器k=0,最大进化代数K,随机生成M个个体作为初始种群的染色体并进行编码。 (3)个体评价。计算适应度函数Fit(Si)的值,即当前种群Z(k)中各Si的适应度。 (4)遗传算子操作。经过选择、交叉、变异运算生成子代种群Z(k+1)。 (5)终止条件判断。若k=K,则以进化过程中所得到的具有最大适应度的个体作为最优解输出;否则返回第三步。 选择算子选择Fit(Si)值较大的个体提高个体被复制的概率,促进算法收敛速度加快,优秀个体Si被选择的概率为,Fiti越大Pi就越大;交叉算子置换两个父系基因,促进算法搜索能力提升,搜索得到更优的个体(或解);当交叉运算已接近最优解邻域时,变异算子的局部随机搜索能力能加速向最优解收敛,同时维持群体的多样性,这有利于促进算法规避局部最优。但实际应用中遗传算法在进化后期效率不高,容易未成熟收敛,且局部搜索能力较弱,因此有必要引入其他优秀算法对遗传算法进行改进,实现高效运算、快速搜优,防止早熟现象。 3.3 改进算法(GA&SA) GA和SA算法都是基于概率分布机制的优化算法,具有算法理论的共同契机,改进算法是将模拟退火算法设置为一个独立的算子,置入遗传算法中,对选择、交叉、变异操作生成的每一个新个体独立进行模拟退火,经模拟退火操作后的个体设置为子代个体,迭代次数作为退火时间,迭代直到满足终止条件求得最优解。求解过程如图1所示[4-5]。 下面针对9个目标点的物流运输路径优化问题的可行解为算例,展开算法的应用分析。 (1)染色体编码。用字符串表示种群的染色体,染色体中的数字代表目标点,基因的顺序代表运输车辆的线路与方向,解表示长度为n的定长整形字符串,n表示被访问的目标点个数。那么该物流运输系统可编码为248517963,要求路径m的最后目标点和路径m+1的开始目标点连接,按车辆的装载量划分线路,解码时将基因依序插入到新路径之中,即得到路径1:0→2→4→8→5→0;路径2:0→1→7→9→6→3→0,能使得路径数量最少便可实现运输成本最低。 (2)生成初始种群。随机产生1至n这n个自然数的不重复排列,作为该运输路径种群的个体[6],依据数学建模的约束条件,在运输系统中设定最低费用的目标点,产生的一部分初始可行解记作S0,随机生成的剩余部分可行解记作S1,S0和S1共同组成初始种群,记种群规模为M。 (3)确定初始温度。k取充分大,确定初温T0=kδ,δ=fmax-fmin,操作中令k=20、80、150、…进行试验,f是初始种群的目标函数。