物流配送车辆调度优化方法比较研究
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
பைடு நூலகம்·47·
! 物流管理 !
化的第一目标。 3.3.2 遗传算法 ( Genetic Algorithms, GA)
遗传算法是借用适者生存规律进行局部搜索改进的一类算法。最早是由 Holland 在 1975 年提出, 并首先 被 De Jong 用来解决复杂问题。该算法通过染色体的配对和变异过程实现种群的进化, 每一次进化则对应解的一次 迭代。当迭代次数达到最大次数限制或群体中的个体无显著差异时, 迭代终止。
关键词: 物流配送; 车辆调度问题; 优化方法 中图分类号: F224 文献标识码: A 文章编号: 1002- 3100 ( 2006) 02- 0046- 04
Abstr a ct: At present, logistics vehicle routing problem (VRP) is focused on as hot- question. Lots of scholars adopts various optimum ways to solve actual question. This paper sums up all kinds of methods of VRP and particularly explain merit and disadvantages, evolution course and applicability, which com- pare and analyze them each other in order to discover best of realistic status's optimum ways. Key wor ds: logistics distribution; Vehicle Routing Problem (VRP); optimum way
1999 年, Homberger 和 Gehring 提出了应用遗传算法求解 VRPTW 问题的进化策略。具体地, 将所谓的策略参 数与解向量一同编码, 并通过重组和变异来实现进化。对于 VRPTW 问题, 策略参数包括某种局部搜索方法的使 用频率, 以及在车辆数和总路长这两个目标之间交替改进的一个二进制参数。同年 , Gehring 和 Homberger 采用 一种协同自治的方式在车辆数优化方法与总路长优化方法之间建立一种协作关系。 3.3.3 模拟退火算法 ( Simulated Annealing, SA)
· 物流管理 ·
第 29 卷总第 126 期
物流配送车辆调度优化方法比较研究
Compar ative Resear ch on Vehicle Routing Pr oblem of Logistics Distr ibution
徐 剑, 牟燕妮, 张尹聪, 王中颖 ( 沈阳工业大学, 辽宁 沈阳 110023)
此方法是一种隐枚举法或部分枚举法, 它不是一种有效算法, 是枚举法基础上的改进, 是求解整数规划的较
收稿日期: 2005- 11- 09
·46·
! 物流管理 !
好方法。Kolen at a1.曾利用此方法求解含时间窗约束的车辆巡回问题, 其实验的节点数范围为 6 ̄15。当节点数为 6 时, 计算机演算所花费的时间大约 1 分钟 ( 计算机机型为 VAX11/785 ) , 当节点数扩大至 12 时, 计算机有内存 不足的现象产生, 所以分枝定界法比较适用于求解小型问题。Held 和 Karp 指出分枝定界法的求解效率与其界限设 定的宽紧有极大的关系。 3.1.3 切平面法 ( Cutting planes)
VRPTW 问题是 VRP 问题的推广。有关 VRP 问题的研究文献, 在 1983 年 Bodin 就统计了约有 700 余篇。可 是, 带时间约束的车辆路线问题只在 20 世纪 80 年代才开始受到重视, 各种优化方法介绍如下: 3.1 VRPTW 的最优化算法 3.1.1 动态规划法 ( Dynamic programming)
1引言 随着社会经济的不断发展, 作为“第三利润源”的物流越来越引起人们的关注, 其中物流配送车辆优化调度
问题是物流中关键的一环, 对其进行优化调度, 可以提高物流经济效益、实现物流科学化。物流配送车辆优化调 度问题最早是由 Dantzig 和 Ramser 于 1959 年首次提出的, 称之为 Vehicle Routing Problem ( 简称 VRP) 。该问题 一般定义为: 对一系列给定的顾客 ( 取货点或送货点) , 确定适当的配送车辆行驶路线, 使其从配送中心出发, 有 序地通过它们, 最后返回配送中心, 并在满足一定的约束条件下 ( 如车辆容量限制、顾客需求量、交发货时间 等) , 达到一定的目标 ( 如路程最短、费用最少等) 。而在上述问题中加上了客户被访问的时间窗约束的称之为有 时间窗的车辆优化调度问题 ( Vehicle Routing Problem with Time Window 简称 VRPTW) 。 2 问题描述
有 q 个货物需求点, 己知每个需求点的需求量及位置, 至多用 k 辆汽车从配送中心到达这批需求点, 每辆汽 车载重量一定, 安排汽车路线使运距最短且每条路线上满足不超过汽车载重量和每个需点的需求, 必须且只能由 一辆汽车来满足的约束条件。其目的是使总成本 ( 如距离、时间等) 为最小。 3 VRPTW 问题的优化方法
1996 年, Chiang 和 Russell 提出 VRPTW 问题的模拟退火算法。模拟退火算法实际上是一种随机松弛技巧, 它 模拟了退火过程。在搜索的初始阶段, 算法跳向远点, 随着时间的延伸或“降温”, 跳跃幅度逐渐减小, 最终转向 局部搜索下降方法。
2000 年, Tan 等基于 2-interchange 法和单调降的降温表提出一种快速模拟退火算法。当到达最低温度后, 通 过参考初始温度和到达最好解时的温度设置一个新的温度, 然后重新启动模拟退火搜索过程。2001 年, Li 等在应 用插入算法和扫除算法初始化路线后, 将邻域搜索方法与模拟退火程序相结合实现路线改进。 3.3.4 蚁群算法 ( Ant Colony Optimization, ACO)
第一个 VRPTW 最优化算法是 Kolen 等在 1987 年提出的动态规划算法。该算法解题的基本思路是将一个 n 阶 段的决策问题转化为依次求解 n 个具有递推关系的单阶段的决策问题, 从而简化计算过程。因其复杂性在于各阶 段决策之间的相互联系, 而且计算时间与计算机内存空间均随变量的增加而呈指数增加, 所以虽然此方法可求得 最优解, 但仅适用于较小规模的寻优问题。 3.1.2 分枝定界法 ( Branch and bound)
相对于传统启发式算法, 现代启发式算法不要求在每次迭代中均沿目标值下降方向, 而允许在算法中适当接 受目标值有所上升甚至不可行的解, 其目的是能够跳出局部搜索邻域。 3.3.1 禁忌搜索算法 ( Tabu Search, TS)
禁忌搜索算法最早由 Glover 在 1986 年提出, 是局部搜索算法的扩展。该算法通过利用一个禁忌表记录已经 到达过的局部最优点, 并在后面的搜索中, 根据某种限制循环的规则和禁忌表中记录的信息在当前搜索邻域中取 一个合适的解。1994 年, Garcia 等首先将禁忌算法应用于 VRPTW 问题。为了减少搜索的计算量, 一些文献提出 了一些限定邻域的方法。另一方面, 为了加速搜索进程, 可采用平行机计算技术。较多算法都以车辆数最少为优
1991 年, Thangiah 首先将遗传算法用于求解 VRPTW 问题。该文将遗传算法用于点的分组。其中, 每一种分 组方案被编码为一个染色体, 适应性函数值定义为根据相应的分组方案所构造的路线总成本, 而交配则指通过随 机选取染色体的两个位串 ( 即两个组) 进行的点的互换, 最后以小概率事件改变其中某些位的值来实现变异。
此方法与分枝界限法类似, 也是在求解与整数规划相对应的线性规划上, 不断地增加新的约束, 也就是另外 加入线性约束条件, 以切掉对应于非整数规划的所有可行解的集合, 以使问题可达到整数线性规划求解的形式, 从而获得最优解。求解时间过长, 不适用于大规模问题。 3.2 VRPTW 问题的传统启发式算法
XU Jian, MU Yan-ni, ZHANG Yin-cong, WANG Zhong-ying ( Shenyang University of Technology, Shenyang 110023, China)
摘 要 : 目 前 , 对 物 流 配 送 车 辆 优 化 调 度 问 题 ( VRP) 还是一个研究热点, 许多学者采用了各种优化方法来解决实 际问题。本文综述了物流配送车辆调度问题的各种优化方法, 对其发展历程、优缺点、适用性等都作了详细的说明, 并对 它们作以比较分析, 从而找到最适合现实状况的优化方法。
蚁群算法模拟了蚁群搜索食物的行为。在寻找食物时, 蚂蚁会在它所经过的路径通过排放一种外激素 ( pheromone, 在算法中称为信息素) 作出标记, 排放的量则根据路径长度和食物的等级决定。这些外激素为其它 蚂蚁提供信息, 并吸引他们前去搬运食物。对于 VRPTW 问题, 也可以根据蚂蚁觅食原理来进行搜索。1999 年, Gambardella et al.应用蚁群算法对 VRPTW 进行路线改进。算法中, 首先构造两组相互协 作的人工蚁群, 其中第 一个蚁群用于最小化车辆数, 第二个蚁群用于最小化总路长。并以共用解的方式建立协作关系。 3.4 各种优化方法的比较分析
传统的启发式算法在求解 VRPTW 问题时通常是从初始解出发, 以邻域搜索的方式实现解的改进, 并在较短 的时间内获得一个可以接受的解。 3.2.1 节约算法 ( Saving Method)
节约算法最早由 Clarke 等于 1964 年提出该方法并用于求解车辆巡回问题。其思想是将每条路线只含一个配送 点的 n 条路线作为初始解, 其中, 每条路线中第一个和最后一个配送点分别称为路线的起点和终点。考察一条路 线的起点与另一条路线的终点相连合并成新的一条路线。如果合并后的路线满足约束条件 ( 车辆容量、时间窗) , 则说这样的合并是可行的, 并将合并的节约值定义为连接这两条路线的边的节约值。选择节约值最大的可行合并 进行一次路线的合并。当不存在可行合并时, 算法结束。Solomon 于 1983 年将其用于求解有时间窗约束的车辆巡 回问题。此方法的优点是可提高车辆的利用率。 3.2.2 邻接算法 ( Nearest-Neighbor)
扫除算法最早由 Gillett 和 Miller 在 1974 年提出, 是一种“先分组后路线”的算法。1987 年, Solomon 将其推 广应用于 VRPTW 问题的路线构造。所谓分组, 即指分派给每辆车一组点。一种简单的分组方法是将以车站为原 点的坐标平面划分为多个扇形区域, 并初步将每个扇形区域的点分派给一辆车。而所谓的“路线”, 是指在每个区 域内, 采用扫除法选择未分配点, 然后应用插入算法扩充路线。如果在进行了一次“分组—路线”的路线构造后, 还存在未分配点, 则再进入“分组—路线”程序。如此反复, 直到所有点均已分配为止。 3.3 VRPTW 问题的现代启发式算法
插入法原本是 Mole 和 Jameson 于 1976 年所提出, 用于求解 VRP 问题的方法, 其结合邻接算法与节约算法的 观念, 依序将顾客点插入路径中以构建配送路线。Solomon 于 1983 年将此方法应用于求解 VRPTW 问题, 因为时 间因素加入, 而使原问题的顾客的等待时间缩短。它的流程与邻接算法相似, 也是从初始路线出发, 序列构造路 线。并在不存在可行插入时新增一条初始路线。插入算法的关键是选择最合适的未分配点在路线中进行最佳位置 的插入。 3.2.4 扫除算法
邻接算法是 Solmon 于 1983 年所提出的求解 VRPTW 的方法, 它是一种序列构造路线法。算法从一条只含一 个配送点的路线出发 ( 通常取“距离”配送中心最近的点) 。在未分配点中筛选出可加入点 ( 未分配点且可行) , 并从可加入点中选取一个点作为当前路线的终点, 使得路线的成本最小。如此不断对路线进行扩充, 直到路线不 存在可加入点为止。这时, 如果所有点均已分配, 则算法结束; 否则, 生成一条新的初始路线, 重复前面的路线 扩充程序。需要指出, 对距离加上双引号是为了说明这样的距离未必指实际的距离, 而是关于距离和时间等因素 的函数。 3.2.3 插入算法
! 物流管理 !
化的第一目标。 3.3.2 遗传算法 ( Genetic Algorithms, GA)
遗传算法是借用适者生存规律进行局部搜索改进的一类算法。最早是由 Holland 在 1975 年提出, 并首先 被 De Jong 用来解决复杂问题。该算法通过染色体的配对和变异过程实现种群的进化, 每一次进化则对应解的一次 迭代。当迭代次数达到最大次数限制或群体中的个体无显著差异时, 迭代终止。
关键词: 物流配送; 车辆调度问题; 优化方法 中图分类号: F224 文献标识码: A 文章编号: 1002- 3100 ( 2006) 02- 0046- 04
Abstr a ct: At present, logistics vehicle routing problem (VRP) is focused on as hot- question. Lots of scholars adopts various optimum ways to solve actual question. This paper sums up all kinds of methods of VRP and particularly explain merit and disadvantages, evolution course and applicability, which com- pare and analyze them each other in order to discover best of realistic status's optimum ways. Key wor ds: logistics distribution; Vehicle Routing Problem (VRP); optimum way
1999 年, Homberger 和 Gehring 提出了应用遗传算法求解 VRPTW 问题的进化策略。具体地, 将所谓的策略参 数与解向量一同编码, 并通过重组和变异来实现进化。对于 VRPTW 问题, 策略参数包括某种局部搜索方法的使 用频率, 以及在车辆数和总路长这两个目标之间交替改进的一个二进制参数。同年 , Gehring 和 Homberger 采用 一种协同自治的方式在车辆数优化方法与总路长优化方法之间建立一种协作关系。 3.3.3 模拟退火算法 ( Simulated Annealing, SA)
· 物流管理 ·
第 29 卷总第 126 期
物流配送车辆调度优化方法比较研究
Compar ative Resear ch on Vehicle Routing Pr oblem of Logistics Distr ibution
徐 剑, 牟燕妮, 张尹聪, 王中颖 ( 沈阳工业大学, 辽宁 沈阳 110023)
此方法是一种隐枚举法或部分枚举法, 它不是一种有效算法, 是枚举法基础上的改进, 是求解整数规划的较
收稿日期: 2005- 11- 09
·46·
! 物流管理 !
好方法。Kolen at a1.曾利用此方法求解含时间窗约束的车辆巡回问题, 其实验的节点数范围为 6 ̄15。当节点数为 6 时, 计算机演算所花费的时间大约 1 分钟 ( 计算机机型为 VAX11/785 ) , 当节点数扩大至 12 时, 计算机有内存 不足的现象产生, 所以分枝定界法比较适用于求解小型问题。Held 和 Karp 指出分枝定界法的求解效率与其界限设 定的宽紧有极大的关系。 3.1.3 切平面法 ( Cutting planes)
VRPTW 问题是 VRP 问题的推广。有关 VRP 问题的研究文献, 在 1983 年 Bodin 就统计了约有 700 余篇。可 是, 带时间约束的车辆路线问题只在 20 世纪 80 年代才开始受到重视, 各种优化方法介绍如下: 3.1 VRPTW 的最优化算法 3.1.1 动态规划法 ( Dynamic programming)
1引言 随着社会经济的不断发展, 作为“第三利润源”的物流越来越引起人们的关注, 其中物流配送车辆优化调度
问题是物流中关键的一环, 对其进行优化调度, 可以提高物流经济效益、实现物流科学化。物流配送车辆优化调 度问题最早是由 Dantzig 和 Ramser 于 1959 年首次提出的, 称之为 Vehicle Routing Problem ( 简称 VRP) 。该问题 一般定义为: 对一系列给定的顾客 ( 取货点或送货点) , 确定适当的配送车辆行驶路线, 使其从配送中心出发, 有 序地通过它们, 最后返回配送中心, 并在满足一定的约束条件下 ( 如车辆容量限制、顾客需求量、交发货时间 等) , 达到一定的目标 ( 如路程最短、费用最少等) 。而在上述问题中加上了客户被访问的时间窗约束的称之为有 时间窗的车辆优化调度问题 ( Vehicle Routing Problem with Time Window 简称 VRPTW) 。 2 问题描述
有 q 个货物需求点, 己知每个需求点的需求量及位置, 至多用 k 辆汽车从配送中心到达这批需求点, 每辆汽 车载重量一定, 安排汽车路线使运距最短且每条路线上满足不超过汽车载重量和每个需点的需求, 必须且只能由 一辆汽车来满足的约束条件。其目的是使总成本 ( 如距离、时间等) 为最小。 3 VRPTW 问题的优化方法
1996 年, Chiang 和 Russell 提出 VRPTW 问题的模拟退火算法。模拟退火算法实际上是一种随机松弛技巧, 它 模拟了退火过程。在搜索的初始阶段, 算法跳向远点, 随着时间的延伸或“降温”, 跳跃幅度逐渐减小, 最终转向 局部搜索下降方法。
2000 年, Tan 等基于 2-interchange 法和单调降的降温表提出一种快速模拟退火算法。当到达最低温度后, 通 过参考初始温度和到达最好解时的温度设置一个新的温度, 然后重新启动模拟退火搜索过程。2001 年, Li 等在应 用插入算法和扫除算法初始化路线后, 将邻域搜索方法与模拟退火程序相结合实现路线改进。 3.3.4 蚁群算法 ( Ant Colony Optimization, ACO)
第一个 VRPTW 最优化算法是 Kolen 等在 1987 年提出的动态规划算法。该算法解题的基本思路是将一个 n 阶 段的决策问题转化为依次求解 n 个具有递推关系的单阶段的决策问题, 从而简化计算过程。因其复杂性在于各阶 段决策之间的相互联系, 而且计算时间与计算机内存空间均随变量的增加而呈指数增加, 所以虽然此方法可求得 最优解, 但仅适用于较小规模的寻优问题。 3.1.2 分枝定界法 ( Branch and bound)
相对于传统启发式算法, 现代启发式算法不要求在每次迭代中均沿目标值下降方向, 而允许在算法中适当接 受目标值有所上升甚至不可行的解, 其目的是能够跳出局部搜索邻域。 3.3.1 禁忌搜索算法 ( Tabu Search, TS)
禁忌搜索算法最早由 Glover 在 1986 年提出, 是局部搜索算法的扩展。该算法通过利用一个禁忌表记录已经 到达过的局部最优点, 并在后面的搜索中, 根据某种限制循环的规则和禁忌表中记录的信息在当前搜索邻域中取 一个合适的解。1994 年, Garcia 等首先将禁忌算法应用于 VRPTW 问题。为了减少搜索的计算量, 一些文献提出 了一些限定邻域的方法。另一方面, 为了加速搜索进程, 可采用平行机计算技术。较多算法都以车辆数最少为优
1991 年, Thangiah 首先将遗传算法用于求解 VRPTW 问题。该文将遗传算法用于点的分组。其中, 每一种分 组方案被编码为一个染色体, 适应性函数值定义为根据相应的分组方案所构造的路线总成本, 而交配则指通过随 机选取染色体的两个位串 ( 即两个组) 进行的点的互换, 最后以小概率事件改变其中某些位的值来实现变异。
此方法与分枝界限法类似, 也是在求解与整数规划相对应的线性规划上, 不断地增加新的约束, 也就是另外 加入线性约束条件, 以切掉对应于非整数规划的所有可行解的集合, 以使问题可达到整数线性规划求解的形式, 从而获得最优解。求解时间过长, 不适用于大规模问题。 3.2 VRPTW 问题的传统启发式算法
XU Jian, MU Yan-ni, ZHANG Yin-cong, WANG Zhong-ying ( Shenyang University of Technology, Shenyang 110023, China)
摘 要 : 目 前 , 对 物 流 配 送 车 辆 优 化 调 度 问 题 ( VRP) 还是一个研究热点, 许多学者采用了各种优化方法来解决实 际问题。本文综述了物流配送车辆调度问题的各种优化方法, 对其发展历程、优缺点、适用性等都作了详细的说明, 并对 它们作以比较分析, 从而找到最适合现实状况的优化方法。
蚁群算法模拟了蚁群搜索食物的行为。在寻找食物时, 蚂蚁会在它所经过的路径通过排放一种外激素 ( pheromone, 在算法中称为信息素) 作出标记, 排放的量则根据路径长度和食物的等级决定。这些外激素为其它 蚂蚁提供信息, 并吸引他们前去搬运食物。对于 VRPTW 问题, 也可以根据蚂蚁觅食原理来进行搜索。1999 年, Gambardella et al.应用蚁群算法对 VRPTW 进行路线改进。算法中, 首先构造两组相互协 作的人工蚁群, 其中第 一个蚁群用于最小化车辆数, 第二个蚁群用于最小化总路长。并以共用解的方式建立协作关系。 3.4 各种优化方法的比较分析
传统的启发式算法在求解 VRPTW 问题时通常是从初始解出发, 以邻域搜索的方式实现解的改进, 并在较短 的时间内获得一个可以接受的解。 3.2.1 节约算法 ( Saving Method)
节约算法最早由 Clarke 等于 1964 年提出该方法并用于求解车辆巡回问题。其思想是将每条路线只含一个配送 点的 n 条路线作为初始解, 其中, 每条路线中第一个和最后一个配送点分别称为路线的起点和终点。考察一条路 线的起点与另一条路线的终点相连合并成新的一条路线。如果合并后的路线满足约束条件 ( 车辆容量、时间窗) , 则说这样的合并是可行的, 并将合并的节约值定义为连接这两条路线的边的节约值。选择节约值最大的可行合并 进行一次路线的合并。当不存在可行合并时, 算法结束。Solomon 于 1983 年将其用于求解有时间窗约束的车辆巡 回问题。此方法的优点是可提高车辆的利用率。 3.2.2 邻接算法 ( Nearest-Neighbor)
扫除算法最早由 Gillett 和 Miller 在 1974 年提出, 是一种“先分组后路线”的算法。1987 年, Solomon 将其推 广应用于 VRPTW 问题的路线构造。所谓分组, 即指分派给每辆车一组点。一种简单的分组方法是将以车站为原 点的坐标平面划分为多个扇形区域, 并初步将每个扇形区域的点分派给一辆车。而所谓的“路线”, 是指在每个区 域内, 采用扫除法选择未分配点, 然后应用插入算法扩充路线。如果在进行了一次“分组—路线”的路线构造后, 还存在未分配点, 则再进入“分组—路线”程序。如此反复, 直到所有点均已分配为止。 3.3 VRPTW 问题的现代启发式算法
插入法原本是 Mole 和 Jameson 于 1976 年所提出, 用于求解 VRP 问题的方法, 其结合邻接算法与节约算法的 观念, 依序将顾客点插入路径中以构建配送路线。Solomon 于 1983 年将此方法应用于求解 VRPTW 问题, 因为时 间因素加入, 而使原问题的顾客的等待时间缩短。它的流程与邻接算法相似, 也是从初始路线出发, 序列构造路 线。并在不存在可行插入时新增一条初始路线。插入算法的关键是选择最合适的未分配点在路线中进行最佳位置 的插入。 3.2.4 扫除算法
邻接算法是 Solmon 于 1983 年所提出的求解 VRPTW 的方法, 它是一种序列构造路线法。算法从一条只含一 个配送点的路线出发 ( 通常取“距离”配送中心最近的点) 。在未分配点中筛选出可加入点 ( 未分配点且可行) , 并从可加入点中选取一个点作为当前路线的终点, 使得路线的成本最小。如此不断对路线进行扩充, 直到路线不 存在可加入点为止。这时, 如果所有点均已分配, 则算法结束; 否则, 生成一条新的初始路线, 重复前面的路线 扩充程序。需要指出, 对距离加上双引号是为了说明这样的距离未必指实际的距离, 而是关于距离和时间等因素 的函数。 3.2.3 插入算法