物流配送车辆优化调度的研究
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
生新的个体。先对群体中的个体进行随机配对,然后在配对个
参考文献 [1]王小平,曹立明.遗传算法理论应用与软件实现[M ].西安交通大学出 版社,2002:27- 28.
体中随机设定交叉处,使配对个体彼此交换部分信息。除第一 [2]高鹏.物流配送线路优化的改进遗传算法研究[J].交通运输系统工程
条染色体外,另 N- 1 条染色体要根据交叉概率 Pc 进行交叉配 对[4]。例如,随机在染色体 A、B 中选择一个交配区域,若 A=110 │110│1101,B=1110│10│1111,交换 A、B 的交配区域,得 到 A'=10│1111│1101, B'=1110│110│110。这样操作就能
首先需要将现实的问题表示成基因型串数据。这里采用二 进制编码的方式,用 0 表示货物的配送中心,用 1 表示某个待 配送的客户,L 个 1 表示有 L 个不同的待配送客户。配送中心 有 K 辆汽车,则会存在最多 K 条配送路径,每一条配送路径的 起点都始于配送中心,终点还回到配送中心。L 个 1 或 K- 1 个 0 随机排列成一条染色体(N+K- 1)位,对应于一种配送路径方 案。比如,有 7 个客户,用 4 辆汽车完成配送任务,则可以用 7 个 1 和 3 个 0 共 10 个字符随机排列,构成一种运输方案。为了
大行驶距离;(3)每个客户的需求必须满足,且只能由一辆汽车
送货。
设物流中心有 K 辆车,每台车辆的载重量为 Q(k k=1,2, …,K),其一次配送的最大行驶距离为 Dk,需要向 L 个客户送 货,每个客户的货物需求量为 q(i i=1,2,…,L),客户 i 到 j 的运 距为 dij,物流中心到各客户的距离为 d0(j i、j=1,2,…,L),再设 nk 为第 k 台车辆配送的客户数 (nk=0 表示未使用第 k 台车 辆),用集合 Rk 表示第 k 条路径,其中的元素 rki 表示客户 rki 在 路径 k 中的顺序为 i (不包括物流中心),令 rk0=0 表示物流中 心,若以配送总里程最短为目标函数,则可以建立如下优化物
2011 年 10 月 第 10 期(总第 155 期)
广西轻工业
GUANGXI JOURNAL OF LIGHT INDUSTRY
计算机与信息技术
物流配送车辆优化调度的研究
陈远
(苏州经贸职业技术学院机电系,江苏 苏州 21 5009)
【摘 要】 分析物流配送车辆的目标要求,建立优化该问题的数学模型,并给出利用遗传算法解决车辆优化调度问题的方
法。重点阐述了优化路径问题的染色体编码、适应度函数和遗传算子的设计。实验结果表明所设计的方法是一种实用有效的方法。
【关键词】 车辆调度;遗传算法;优化
【中图分类号】 T P18 【文献标识码】 A
【文章编号】 1003- 2673(2011)10-70-02
近年来,随着经济的快速发展,货物运输需求量剧增,物流 配送业也得到了迅速发展。面对能源及用工成本的不断上升, 企业必须对物流网络进行高效管理。物流配送是指按用户的订 货要求,在配送中心进行分货、配货,并将配好的货物及时交给 收货人的活动。在物流配送业务中,存在着很多优化决策的要 素。比如,路径的选取,供应点、中转点、需求点的位置,运输的 费用、时间和容量等等诸多因素。这些因素之间的关系错综复 杂,侧重考虑不同的因素,会得到不同的配送方案。
【作者简介】陈远(1981-),男,安徽淮北人,讲师,硕士,研究方向:智能信息处理。
【基金项目】苏州经贸职业技术学院院级青年课题资助项目(JM Q Z 1102)
70
ÁÂÅÆÄÅÇÈÉÆÃÇÈÃÉÄÂÂÁÅÄÆÉÆÈÇÄÈÇÅÁÁÂÅÆÉÃÄÈÄÆÉÁÂÂÅÉÄÇ 使编码简洁,代码前面可以省去一个代表配送中心的0,因为
说明该台车辆参加了配送,则取 sign(nk)=1,当第 k 辆车服务的 客户总数<1 时,说明没使用该辆车,因此取 sign(nk)=0。
2 优化物流配送路径的遗传算法
遗传算法具有简单通用,鲁棒性强,全局寻优,收敛速度快 等优点,而且适用于并行处理,尤其适用于解决复杂和非线性 问题。使用遗传算法优化物流配送路径的基本步骤如下: 2.1 编码
汽车总是从配送中心出发。如染色体 1101101101 表示配送方 案包含四条路径。路径 a:0- 1- 1- 0,路径 b:0- 1- 1- 0,路径 c: 0- 1- 1- 0,路径 d:0- 1- 0。 2.2 生成初始种群
初始种群的个体通过随机方法产生,每个种群对应问题的 一个解。根据上面的编码方式,随机产生 L 个 1 和 K- 1 个 0 序 列,形成一个染色体。设种群大小为 M,则有 M 条不同的染色 体构成初始种群[3]。 2.3 评估适应度
与信息,2006,(12):120- 121. [3]周明,孙树栋.遗传算法原理及应用[M ].国防工业出版社,1999. [4]温惠英.适于物流配送车辆导航路径优化的遗传算法[J].华南理工大 学学报,2009,(2):82- 83.
保持群内个体的多样性。
2.6 变异
71
遗传算法是根据生物进化的模型提出的一种优化算法。它 是基于进化过程中的信息遗传机制和优胜劣汰的自然选择原 则和搜索算法。它从一个种群开始,利用选择、交叉、变异等遗 传算子对种群进行不断进化,最后得到全局最优解或近似最优 解[1],根据其算法特点,遗传算法非常适合于进行物流配送车辆 的优化调度。
1 优化配送车辆调度的数学模型
物流配送路径优化问题可以描述为:从某物流中心用多台
Βιβλιοθήκη Baidu
配送车辆向多个客户送货,每个客户的位置和需求量一定,每
台车辆的载重量一定,其每次配送的最大行驶距离一定,要求
合理安排车辆配送路线,使目标函数得到优化[2],并满足以下条
件:(1) 每条配送路径上各客户的需求量之和不超过配送车辆
的载重量;(2) 每条配送路径的长度不超过汽车一次配送的最
从表中数据可以看出,运行 10 次得出的结果都符合要求, 找到了问题的答案,且第 5 次还获得到了最优解 67.5km。利用 遗传算法可以快速有效地求得优化物流配送路径的最优解或 近似最优解。
由大到小排列,适应度最高的染色体,复制直接进入下一代。下 一代群体的另 N- 1 个个体需要根据前代群体的 N 个个体的适 应度,采用轮盘赌法则产生。首先计算上代群体中所有个体适 应度的总和(∑F)j ,再计算每个个体的适应度所占的比例(Fj / ∑F)j ,以此作为选择的概率。这样的选择方法既可保证最优个 体生存至下一代,又能保证适应度较大的个体以较大的机会进 入下一代。
0 ≤nk≤L
K
Σnk =L
k=1
Rk = Σrki │rki ∈ Σ 1,2,…,L Σ ,i=1,2,…,nk Σ
(式 4) (式 5) (式 6)
Rk1∩Rk2=φ (∨k≠k2)
Σ sign Σnk Σ= 1 nk ≥1 0 其他
(式 7) (式 8)
在上述数学模型中,(式 1)为目标函数;(式 2)保证每条线
遗传算法在搜索过程中用适应度函数来评估个体的优劣, 并将此作为遗传操作的依据。适应度增大的方向与优化的方向 是一致的。
要评判某条染色体所对应的配送路径方案,既要看其能否 满足配送的约束条件,又要计算其目标函数值(即各条配送路 径的长度之和,式(1))。本文所使用的编码方法,能够保证每个 客户都得到配送服务(式(5))及每个客户仅由一辆汽车配送(式 (7))的约束条件,但不能满足每条路径上各客户需求量之和不 超过汽车载量(式(2))及每条配送路线的长度不超过汽车一次 配送的最大行驶距离(式(3))的约束条件。所以,对于每条染色 体所对应的配送路径方案,要对各条路径逐一进行判断,看其 能否满足约束条件。如果不满足,则该条路径为不可行路径,并 计算其目标函数值。对于某条染色体 i,设其对应的配送路径方 案的不可行路径数为 Mi (Mi=0 表示该个体对应一个可行解),
在实验中采用了以下参数:种群规模取 20,交叉概率 Pt 取 0.95, 变 异 概 率 Pm 取 0.05, 进 化 代 数 取 50, 权 重 因 子 取 100km。用程序随机求解 10 次,计算结果见表 2。
其目标函数值为 Zi,则该个体的适应度 Fi 可用下式表示:
表 2 遗传算法解决物流配送路径优化问题的计算结果
Fi =1/ !Zi +Mi G "
(式 9)
式中:G 为权重因子,应当取一个较大的正数,如果 G 值太
小则会影响适应度的比较。 2.4 选择操作
按照一定的选择概率对种群进行复制,选择好的串生成下 一代。个体适应度函数值越高,该串的性能越好,被选中的概率 越大,从而去掉较差的串。将每代种群中的 N 个个体按适应度
路上所有客户的货物需求量之和不超过配送车辆的载重量;
(式 3) 保证每条配送路径的长度不超过配送车辆一次配送能
行驶的最大距离;(式 4)表明每条路径上的客户数不超过总客
户数;(式 5)表明每个客户都能得到车辆的配送服务;(式 6)表
示每条路径上的客户组成;(式 7)限制了每个客户仅能由一台
配送车辆送货;(式 8)表示当第 k 辆车服务的客户总数≥1 时,
4 结论
本文通过建立数学模型将遗传算法的思想应用于优化物 流配送中,实现了多目标参数的优化。通过实验和分析得出,用 遗传算法优化物流配送路径的方法成功率和得到的结果都比 较理想,最大程度地满足了调度车辆、合理安排行驶路径的要 求,具有科学性和实用性。
2.5 交叉操作 交叉是遗传算法的重要操作,有了不断的交叉才能不断产
适度的变异,既能保持种群内个体的多样化,又能提高遗 传算法的效率。本文采用一种新的变异方法,根据变异概率 Pm, 一旦染色体的某基因片段需要发生变异,则染色体上的另一片 段也要同时发生变异。例如染色体 10101101 的最后一位“1” 发生变异,则相应地有一位“0”也会发生变异,而具体哪一个 “0”变异则是随机的。
流配送路径的数学模型:
ΣΣΣ Σ K
minZ=
nk
Σ Σ drkΣ i- 1 Σ rki +drknk rk0·sign nk (式 1)
k=1 i = 1
nk
Σ s.t.
qrki ≤Qk
i=1
nk
Σ Σ Σ drkΣ i- 1 Σ rki +drknk rk0·sign nk ≤Qk
i=1
(式 2) (式 3)
3 实验计算与结果分析
根据上述的遗传算法,编制出 C 语言程序,用实验的方法 分析计算了下面的案例。
某配送中心用 2 辆汽车对 8 个客户配送货物。设汽车的载 量为 8000kg,每次配送的最大行驶距离为 40km,配送中心与 客户、客户与客户之间的距离及各客户的需求量见表 1。
表 1 配送中心与客户之间距离(K m)及各客户的需求量
参考文献 [1]王小平,曹立明.遗传算法理论应用与软件实现[M ].西安交通大学出 版社,2002:27- 28.
体中随机设定交叉处,使配对个体彼此交换部分信息。除第一 [2]高鹏.物流配送线路优化的改进遗传算法研究[J].交通运输系统工程
条染色体外,另 N- 1 条染色体要根据交叉概率 Pc 进行交叉配 对[4]。例如,随机在染色体 A、B 中选择一个交配区域,若 A=110 │110│1101,B=1110│10│1111,交换 A、B 的交配区域,得 到 A'=10│1111│1101, B'=1110│110│110。这样操作就能
首先需要将现实的问题表示成基因型串数据。这里采用二 进制编码的方式,用 0 表示货物的配送中心,用 1 表示某个待 配送的客户,L 个 1 表示有 L 个不同的待配送客户。配送中心 有 K 辆汽车,则会存在最多 K 条配送路径,每一条配送路径的 起点都始于配送中心,终点还回到配送中心。L 个 1 或 K- 1 个 0 随机排列成一条染色体(N+K- 1)位,对应于一种配送路径方 案。比如,有 7 个客户,用 4 辆汽车完成配送任务,则可以用 7 个 1 和 3 个 0 共 10 个字符随机排列,构成一种运输方案。为了
大行驶距离;(3)每个客户的需求必须满足,且只能由一辆汽车
送货。
设物流中心有 K 辆车,每台车辆的载重量为 Q(k k=1,2, …,K),其一次配送的最大行驶距离为 Dk,需要向 L 个客户送 货,每个客户的货物需求量为 q(i i=1,2,…,L),客户 i 到 j 的运 距为 dij,物流中心到各客户的距离为 d0(j i、j=1,2,…,L),再设 nk 为第 k 台车辆配送的客户数 (nk=0 表示未使用第 k 台车 辆),用集合 Rk 表示第 k 条路径,其中的元素 rki 表示客户 rki 在 路径 k 中的顺序为 i (不包括物流中心),令 rk0=0 表示物流中 心,若以配送总里程最短为目标函数,则可以建立如下优化物
2011 年 10 月 第 10 期(总第 155 期)
广西轻工业
GUANGXI JOURNAL OF LIGHT INDUSTRY
计算机与信息技术
物流配送车辆优化调度的研究
陈远
(苏州经贸职业技术学院机电系,江苏 苏州 21 5009)
【摘 要】 分析物流配送车辆的目标要求,建立优化该问题的数学模型,并给出利用遗传算法解决车辆优化调度问题的方
法。重点阐述了优化路径问题的染色体编码、适应度函数和遗传算子的设计。实验结果表明所设计的方法是一种实用有效的方法。
【关键词】 车辆调度;遗传算法;优化
【中图分类号】 T P18 【文献标识码】 A
【文章编号】 1003- 2673(2011)10-70-02
近年来,随着经济的快速发展,货物运输需求量剧增,物流 配送业也得到了迅速发展。面对能源及用工成本的不断上升, 企业必须对物流网络进行高效管理。物流配送是指按用户的订 货要求,在配送中心进行分货、配货,并将配好的货物及时交给 收货人的活动。在物流配送业务中,存在着很多优化决策的要 素。比如,路径的选取,供应点、中转点、需求点的位置,运输的 费用、时间和容量等等诸多因素。这些因素之间的关系错综复 杂,侧重考虑不同的因素,会得到不同的配送方案。
【作者简介】陈远(1981-),男,安徽淮北人,讲师,硕士,研究方向:智能信息处理。
【基金项目】苏州经贸职业技术学院院级青年课题资助项目(JM Q Z 1102)
70
ÁÂÅÆÄÅÇÈÉÆÃÇÈÃÉÄÂÂÁÅÄÆÉÆÈÇÄÈÇÅÁÁÂÅÆÉÃÄÈÄÆÉÁÂÂÅÉÄÇ 使编码简洁,代码前面可以省去一个代表配送中心的0,因为
说明该台车辆参加了配送,则取 sign(nk)=1,当第 k 辆车服务的 客户总数<1 时,说明没使用该辆车,因此取 sign(nk)=0。
2 优化物流配送路径的遗传算法
遗传算法具有简单通用,鲁棒性强,全局寻优,收敛速度快 等优点,而且适用于并行处理,尤其适用于解决复杂和非线性 问题。使用遗传算法优化物流配送路径的基本步骤如下: 2.1 编码
汽车总是从配送中心出发。如染色体 1101101101 表示配送方 案包含四条路径。路径 a:0- 1- 1- 0,路径 b:0- 1- 1- 0,路径 c: 0- 1- 1- 0,路径 d:0- 1- 0。 2.2 生成初始种群
初始种群的个体通过随机方法产生,每个种群对应问题的 一个解。根据上面的编码方式,随机产生 L 个 1 和 K- 1 个 0 序 列,形成一个染色体。设种群大小为 M,则有 M 条不同的染色 体构成初始种群[3]。 2.3 评估适应度
与信息,2006,(12):120- 121. [3]周明,孙树栋.遗传算法原理及应用[M ].国防工业出版社,1999. [4]温惠英.适于物流配送车辆导航路径优化的遗传算法[J].华南理工大 学学报,2009,(2):82- 83.
保持群内个体的多样性。
2.6 变异
71
遗传算法是根据生物进化的模型提出的一种优化算法。它 是基于进化过程中的信息遗传机制和优胜劣汰的自然选择原 则和搜索算法。它从一个种群开始,利用选择、交叉、变异等遗 传算子对种群进行不断进化,最后得到全局最优解或近似最优 解[1],根据其算法特点,遗传算法非常适合于进行物流配送车辆 的优化调度。
1 优化配送车辆调度的数学模型
物流配送路径优化问题可以描述为:从某物流中心用多台
Βιβλιοθήκη Baidu
配送车辆向多个客户送货,每个客户的位置和需求量一定,每
台车辆的载重量一定,其每次配送的最大行驶距离一定,要求
合理安排车辆配送路线,使目标函数得到优化[2],并满足以下条
件:(1) 每条配送路径上各客户的需求量之和不超过配送车辆
的载重量;(2) 每条配送路径的长度不超过汽车一次配送的最
从表中数据可以看出,运行 10 次得出的结果都符合要求, 找到了问题的答案,且第 5 次还获得到了最优解 67.5km。利用 遗传算法可以快速有效地求得优化物流配送路径的最优解或 近似最优解。
由大到小排列,适应度最高的染色体,复制直接进入下一代。下 一代群体的另 N- 1 个个体需要根据前代群体的 N 个个体的适 应度,采用轮盘赌法则产生。首先计算上代群体中所有个体适 应度的总和(∑F)j ,再计算每个个体的适应度所占的比例(Fj / ∑F)j ,以此作为选择的概率。这样的选择方法既可保证最优个 体生存至下一代,又能保证适应度较大的个体以较大的机会进 入下一代。
0 ≤nk≤L
K
Σnk =L
k=1
Rk = Σrki │rki ∈ Σ 1,2,…,L Σ ,i=1,2,…,nk Σ
(式 4) (式 5) (式 6)
Rk1∩Rk2=φ (∨k≠k2)
Σ sign Σnk Σ= 1 nk ≥1 0 其他
(式 7) (式 8)
在上述数学模型中,(式 1)为目标函数;(式 2)保证每条线
遗传算法在搜索过程中用适应度函数来评估个体的优劣, 并将此作为遗传操作的依据。适应度增大的方向与优化的方向 是一致的。
要评判某条染色体所对应的配送路径方案,既要看其能否 满足配送的约束条件,又要计算其目标函数值(即各条配送路 径的长度之和,式(1))。本文所使用的编码方法,能够保证每个 客户都得到配送服务(式(5))及每个客户仅由一辆汽车配送(式 (7))的约束条件,但不能满足每条路径上各客户需求量之和不 超过汽车载量(式(2))及每条配送路线的长度不超过汽车一次 配送的最大行驶距离(式(3))的约束条件。所以,对于每条染色 体所对应的配送路径方案,要对各条路径逐一进行判断,看其 能否满足约束条件。如果不满足,则该条路径为不可行路径,并 计算其目标函数值。对于某条染色体 i,设其对应的配送路径方 案的不可行路径数为 Mi (Mi=0 表示该个体对应一个可行解),
在实验中采用了以下参数:种群规模取 20,交叉概率 Pt 取 0.95, 变 异 概 率 Pm 取 0.05, 进 化 代 数 取 50, 权 重 因 子 取 100km。用程序随机求解 10 次,计算结果见表 2。
其目标函数值为 Zi,则该个体的适应度 Fi 可用下式表示:
表 2 遗传算法解决物流配送路径优化问题的计算结果
Fi =1/ !Zi +Mi G "
(式 9)
式中:G 为权重因子,应当取一个较大的正数,如果 G 值太
小则会影响适应度的比较。 2.4 选择操作
按照一定的选择概率对种群进行复制,选择好的串生成下 一代。个体适应度函数值越高,该串的性能越好,被选中的概率 越大,从而去掉较差的串。将每代种群中的 N 个个体按适应度
路上所有客户的货物需求量之和不超过配送车辆的载重量;
(式 3) 保证每条配送路径的长度不超过配送车辆一次配送能
行驶的最大距离;(式 4)表明每条路径上的客户数不超过总客
户数;(式 5)表明每个客户都能得到车辆的配送服务;(式 6)表
示每条路径上的客户组成;(式 7)限制了每个客户仅能由一台
配送车辆送货;(式 8)表示当第 k 辆车服务的客户总数≥1 时,
4 结论
本文通过建立数学模型将遗传算法的思想应用于优化物 流配送中,实现了多目标参数的优化。通过实验和分析得出,用 遗传算法优化物流配送路径的方法成功率和得到的结果都比 较理想,最大程度地满足了调度车辆、合理安排行驶路径的要 求,具有科学性和实用性。
2.5 交叉操作 交叉是遗传算法的重要操作,有了不断的交叉才能不断产
适度的变异,既能保持种群内个体的多样化,又能提高遗 传算法的效率。本文采用一种新的变异方法,根据变异概率 Pm, 一旦染色体的某基因片段需要发生变异,则染色体上的另一片 段也要同时发生变异。例如染色体 10101101 的最后一位“1” 发生变异,则相应地有一位“0”也会发生变异,而具体哪一个 “0”变异则是随机的。
流配送路径的数学模型:
ΣΣΣ Σ K
minZ=
nk
Σ Σ drkΣ i- 1 Σ rki +drknk rk0·sign nk (式 1)
k=1 i = 1
nk
Σ s.t.
qrki ≤Qk
i=1
nk
Σ Σ Σ drkΣ i- 1 Σ rki +drknk rk0·sign nk ≤Qk
i=1
(式 2) (式 3)
3 实验计算与结果分析
根据上述的遗传算法,编制出 C 语言程序,用实验的方法 分析计算了下面的案例。
某配送中心用 2 辆汽车对 8 个客户配送货物。设汽车的载 量为 8000kg,每次配送的最大行驶距离为 40km,配送中心与 客户、客户与客户之间的距离及各客户的需求量见表 1。
表 1 配送中心与客户之间距离(K m)及各客户的需求量