车辆路径问题

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1/6车辆路径问题(VRP)一般定义为:对一系列装货点和卸货点,组织适当的行车线路,使车辆有序地通过它们,在满足一定的约束条件(如货物需求量、发送量、交发货时间、车辆容量限制、行驶里程限制、时间限制等)下,达到一定问题的目标(如路程最短、费用最少、时间尽量少、使用车辆数尽量少等)。目前有关VRP的研究已经可以表示(如图1)为:给定一个或多个中心点(中心仓库,centraldepot)、一个车辆集合和一个顾客集合,车辆和顾客各有自己的属性,每辆车都有容量,所装载货物不能超过它的容量。起初车辆都在中心点,顾客在空间任意分布,车把货物从车库运送到每一个顾客(或从每个顾客处把货物运到车库),要求满足顾客的需求,车辆最后返回车库,每个顾客只能被服务一次,怎样才能使运输费用最小。而顾客的需求或已知、或随机、或以时间规律变化。图1VRP示意图一、在VRP中,最常见的约束条件有:(1)容量约束:任意车辆路径的总重量不能超过该车辆的能力负荷。引出带容量约束的车辆路径问题(CapacitatedVehicleRoutingProblem,CVRP)。(2)优先约束:引出优先约束车辆路径问题(VehicleRoutingProblemwithprecedenceConstraints,VRPPC)。(3)车型约束:引出多车型车辆路径问题(Mixed/HeterogeneousFleetVehicleRoutingProblem,MFVRP/HFVRP)。(4)时间窗约束:包括硬时间窗(HardTimewindows)和软时间窗(SoftTimewindows)约束。引出带时间窗(包括硬时间窗和软时间窗)的车辆路径问题(VehicleRoutingProblemwithTimewindows,VRPTW)。(5)相容性约束:引出相容性约束车辆路径问题(VehicleRoutingProblemwithCompatibilityConstraints,VRPCC)。2/6(6)随机需求:引出随机需求车辆路径问题(VehicleRoutingProblemwithStochasticDemand,VRPSD)。(7)开路:引出开路车辆路径问题(OpenVehicleRoutingProblem)。(8)多运输中心:引出多运输中心的车辆路径问题(Multi-DepotVehicleRoutingProblem)。(9)回程运输:引出带回程运输的车辆路径问题(VehicleRoutingProblemwithBackhauls)。(10)最后时间期限:引出带最后时间期限的车辆路径问题(VehicleRoutingProblemwithTimeDeadlines)。(11)车速随时间变化:引出车速随时间变化的车辆路径问题(Time-DependentVehicleRoutingProblem)。二、CVRP问题描述及其数学模型CVRP的描述:设某中心车场有k辆车,每辆配送车的最大载重量Q,需要对n个客户(节点)进行运输配送,每辆车从中心车场出发给若干个客户送货,最终回到中心车场,客户点i的货物需求量是qi(i=1,2,…,n),且qiQ。记配送中心编号为0,各客户编号为i(i=1,2,…,n),cij表示客户i到客户j的距离。求满足车辆数最小,车辆行驶总路程最短的运送方案。定义变量如下:建立此问题的数学模型:c3/6ijxijk(2.2)i约束条件:jkki=1(i=0,1,…,n)(2.3)kxijk=ykj(j=0,1,…,nk=1,2,…,m)(2.4)iqyixjik=ykj(j=0,1,…,nk=1,2,…,m)(2.5)i三、车辆路径问题算法综述目前,求解车辆路径问题的方法非常多,基本上可以分为精确算法和启发式算法2大类。3.1精确算法4/6精确算法是指可求出其最优解的算法,主要运用线性规划、整数规划、非线性规划等数学规划技术来描述物流系统的数量关系,以便求得最优决策。精确算法主要有:分枝定界法(BranchandBoundApproach)割平面法(CuttingPlanesApproach)网络流算法(NetworkFlowApproach)动态规划算法(DynamicProgrammingApproach)总的说来,精确性算法基于严格的数学手段,在可以求解的情况下,其解通常要优于人工智能算法。但由于引入严格的数学方法,计算量一般随问题规模的增大呈指数增长,因而无法避开指数爆炸问题,从而使该类算法只能有效求解中小规模的确定性VRP,并且通常这些算法都是针对某一特定问题设计的,适用能力较差,因此在实际中其应用范围很有限。3.2启发式算法由于车辆路径优化问题是NP难题,高效的精确算法存在的可能性不大(除非P=NP),所以寻找近似算法是必要和现实的,为此专家主要把精力花在构造高质量的启发式算法上。启发式算法是在状态空间中的改进搜索算法,它对每一个搜索的位置进行评价,得到最好的位置,再从这个位置进行搜索直到目标。在启发式搜索中,对位置的估价十分重要,采用不同的估价可以有不同的效果。目前已提出的启发式算法较多,分类也相当多,按VanBreedam的分类法,主要的启发式算法有以下几类:构造算法、两阶段法、智能化算法。3.2.1构造算法(ConstructiveAlgorithm)这类方法的基本思想是:根据一些准则,每一次将一个不在线路上的点增加进线路,直到所有点都被安排进线路为止。该类算法的每一步把当前的线路构形(很可能是不可行的)跟另外的构形(也可能是不可行的)进行比较并加以改进,后者或是根据某个判别函数(例如总费用)会产生最大限度的节约的构形,或是以5/6最小代价把一个不在当前构形上的需求对象插入进来的构形,最后得到一个较好的可行构形。这类算法中中最著名的是Clarke和Wright在1964年提出的节约算法。构造算法最早提出来解决旅行商问题,这些方法一般速度快,也很灵活,但这类方法有时找到的解离最优解差得很远。3.2.2两阶段法(Two-phaseAlgorithm)学者们通过对构造算法的研究,认为由构造算法求得的解可以被进一步改进,为此提出了两阶段法。第一阶段得到一可行解,第二阶段通过对点的调整,在始终保持解可行的情况下,力图向最优目标靠近,每一步都产生另一个可行解以代替原来的解,使目标函数值得以改进,一直继续到不能再改进目标函数值为止。Gillet和Miller于1974年提出的sweep算法,Christofides、Mingozzi和Toth的算法以及Fisher和Jaikumar的算法都属于两阶段法。一般第一阶段常用构造算法,在第二阶段常用的改进技术有2-opt(Lin,1965),3-opt(LinKernighan,1973)和Or-opt(Or,1976)交换法,这是一种在解的邻域中搜索,对初始解进行某种程度优化的算法,以改进初始解。一些基于数学规划的算法也属于两阶段法,把问题直接描述成一个数学规划问题,根据其模型的特殊构形,应用一定的技术(如分解)进行划分,进而求解己被广泛研究过的子问题(Fisher和Jaikumar,1981)。在两阶段法求解过程中,常常采用交互式优化技术,把人的主观能动作用结合到问题的求解过程中,其主要思想是:有经验的决策者具有对结果和参数的某种判断能力,并且根据知识直感,把主观的估计加到优化模型中去。这样做通常会增加模型最终实现并被采用的可能性。此方法是目前成果最丰富、应用最多的一类方法。每一种方法讨论的情况不尽一致,适用范围也不完全相同。3.2.3智能化算法(IntelligentAlgorithm)6/6这类算法以启发式准则来代替精确算法中的决策准则,以缩小解搜索的空间。总体来看,尽管启发式算法能够在有限的时间内求出质量较高的解,但由于其搜索解空间的能力有所限制,因此经常无法达到预期的要求。20世纪90年代以来,由于人工智能方法在解决组合优化问题中的强大功能,不少学者开始将人工智能引入车辆路线问题的求解中,并构造了大量的基于人工智能的启发式算法(智能化启发式算法)。智能化启发式算法从本质上讲仍然属于启发式算法,其基本思想是从一初始解开始,通过对当前的解进行反复地局部扰乱(Perturbations)以达到较好的解。目前,最常见的智能化启发式算法包括模拟退火算法(SimulatedAnnealing)、禁忌搜索算法(TabuSearch)、遗传算法(GeneticAlgorithm)、蚁群算法(AntColony)和神经网络(NeutralNetworks)、粒子群算法(ParticleSwarmOptimization,PSO)方法等。

1 / 6
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功