多物流配送中心路径优化问题及其遗传算法

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

多物流配送中心路径优化问题及其遗传算法

廖成林柳茂森

(重庆大学经济与工商管理学院,重庆,400030)

摘要:论文建立了多物流配送中心路径优化问题的数学模型,并针对该问题的特点构

造出求解该问题的遗传算法,把多物流配送中心路径优化问题综合起来用一个数学模型求解。本文提出了无效基因的概念,从而不局限于使得个体中每个基因都必须表达出来,因此增强了编码的灵活性。仿真实验证明了该方法的有效性和可操作性。

关键词:无效基因遗传算法物流配送

1 引言

物流配送是物流管理中一个极其重要的环节,它是指按用户的订货要求,在配送中心进行分货、配货,并将配好的货物及时送交收货人的活动。物流配送主要研究车辆调度及路径安排问题。近年来,国内外学者对物流配送问题进行了大量的研究,这些研究主要集中在单物流配送中心的车辆调度及路径安排方面。由于配送路径优化问题是一个NP

难题,因此,研究者大都使用启发式算法和智能算法或者是在智能算法优化过程中加入优化策略以构造混合智能算法来求解物流配送问题。但是,目前国内外对多个物流配送中心的物流配送问题的研究成果很少,而且现有研究成果大都是把多个配送中心问题通

过任务分派转化为单物流配送中心问题来研究[1~3],使用这种方法把需求点预先划分给各

个配送中心,在求解过程中再作适当的调整,这种方法其实只是单物流配送中心优化的简单组合,通常只能求得近似最优配送方案。魏百鑫等[4 ]针对整车配送需求点分散特征,解决了多仓库的整车配送问题,但并不是一个通用的解决多物流中心配送问题的方法。

由于遗传算法具有良好的全局寻优性能,并且对不要求搜索空间具是连续的,这正符合该问题的特点和要求。因此本文亦采用遗传算法求解。

本文基于整体路径最优由多个物流配送中心同时服务多个需求点建立一个通用的多物流配送中心的配送模型,并给出求解算法。单物流配送中心路径优化问题可以事先确定需要派出的车次,但是多物流配送中心路径优化问题中,每个配送中心需要派出多少车次是不确定的,因此,无法用常规的方法确定染色体的长度。为解决基因编码的问题,本文提出了无效基因的概念。所谓无效基因就是在一次基因表达的过程中不作表达的基因。但是,在交叉过程中无效基因处可以被选为交叉点,交叉后无效基因可能转化为有效基因。因此,有些基因时而是有效基因时而是无效基因,因而无效基因在不清楚有些基因是否表达较好的时候起到缓冲作用。

2 模型的建立

多物流配送路径优化问题可描述为:从多个配送中心用多辆配送车向多个需求点送货,每个需求点的位置和需求量一定,要求安排合理的配送路线,使得目标函数最优或接近最优。为了研究的方便且具有实际意义,做以下假设:

(1)每条配送路径上各需求点的需求量之和不超过配送车的载重量;

(2)每个需求点都必须满足,且只能由一辆配送车送货。

本文的各种符号及其含义做如下说明:

M-------配送中心的个数

i-----------配送中心的下标

j----------配送车辆的下标

k----------需求点的下标

N--------需求点的个数

L i -------第i 个配送中心的配送车的个数

Q ij-----------第i 个配送中心的第j 辆车的载重量

q k -------第k 个需求点的需求量

d k(1)d k(2)-----从需求点k (1)到k (2)的运距

d 0k ------配送中心到需求点k 的运距

n ij -------第i 个配送中心的第j 辆车配送的需求点个数,

n ij =0表示未使用第j 辆车

R ij ------第i 个配送中心的第j 辆车配送的路径

r ijk -------第i 个配送中心的第j 辆车配送的第k 个需求点,r ij0表示配送中心

i ij L j M i Q Q ,,2,1;,,2,1,min ===

11+⎥⎥⎥⎥⎦

⎤⎢⎢⎢⎢⎣⎡=∑=Q q n N k k 其中,[ ]表示不大于括号内数字的最大整数

若以配送路径最短为目标函数,则可以建立如下配送路径的优化模型: ()()()1minZ 11101∑∑∑===⎥⎦⎤⎢⎣⎡+=-M i L j n k ij r r r r i ij ij ijn ij ijk k ij n f d d

()21

ij Q n k r

q ij ijk ≤=∑ ()3n 0ij N ≤≤ ()411N

n M i L j ij i =∑∑==

[]{}()

5,,2,1,,,2,1ij ijk ijk ij n k N r r R =∈∈

()6,i )2()1()2(1j i )2()2((1)(1)j j i R R j i ≠∀≠∀∅=)(

()()7011⎩⎨⎧≥=其他ij ij n n f 上述模型中:(1)式为目标函数;(2)式保证每条路径上各客户的货物需求量之和不超过配送车辆的载重量; (3) 式表明每条路径上的客户数不超过总客户数; (4) 式表明每个客户都得到配送服务; (5) 式表示每条路径的客户的组成;(6) 式限制每个客户仅能由一台配送车辆送货; (7)式表示当第i 个配送中心的第j 辆车服务的客户数≥1 时,说明该台车参加了配送,则取f (n ij )= 1 ,当第i 个配送中心的第j 辆车服务的客户数< 1 时, 表示未使用该台车辆, 因此取f (n ij )= 0 。

3 遗传算法设计

3.1 编码方法的确定和初始种群的产生

根据多物流配送中心路径优化问题的特点,作者提出了一种配送中心和需求点直接排列的编码方法。这种表示方法是直接生产N 个1~N 间的互不重复的自然数给这N 个需求点编码,再生产M 个-M ~-1之间的互不重复的负整数给这M 个配送中心编码。 把这M 个-M ~-1之间的互不重复的负整数各n 个和这N 个1~N 间的互不重复的自然数各一个组成一个长度为n*M+N 的数列,数列的第一个位置随机排上一个负整数,其余位置随机全排列,即形成一个染色体。随机产生m 个这样的个体即可形成种群规模为m 的初始种群。 这样的染色体结构可解释为:

(1) 从负数对应的配送中心出发向紧接着该负数后面的若干个正数所对应的需求

点配送,再回到该配送中心,形成一条子路径。

(2) 后面未紧接着正数的负数为无效基因,不表示任何意义,但是可以在该基因

处进行交叉操作。若交叉后该负数后面紧接正数,则该负数由无效基因变为有效基因,其意义与(1)所述相同。

例如染色体(-1,-4,1,2,-1,-2,-3,3,4,5,-5)表示的意义: ⎪⎩⎪⎨⎧-−→−−→−−→−−→−

--−→−−→−−→−-35433242141配送中心需求点需求点需求点配送中心:子路径配送中心需求点需求点配送中心:子路径其中, -2、-5和两个-1都是无效基因。这种染色体结构子路径内部是有序的,子路径中需求点1和2交换位置,会使目标函数值改变;而子路径之间是无序的,若子路径1和2交换位置,却不会改变目标函数值。

3.2 适应度评估方法的确定。

适应度函数同目标函数有关,要求非负,通过变换目标函数得到适应度函数:/k k f bz z '=。

其中,b 为常数,z '为初始群体中最好的染色体配送距离,zk 为当前染色体对应的配送距离。

3.3 选择操作。

本文采用如下最佳个体保留与赌轮选择相结合的选择策略:将每代群体中的m 个个体按适应度由大到小排列,排在第一位的个体性能最优,将它复制一个直接进入下一代,并排在第

相关文档
最新文档