CN109635998A - 一种求解带时间窗车辆路径问题的自适应多目标优化方法 - Google Patents
一种求解带时间窗车辆路径问题的自适应多目标优化方法 Download PDFInfo
- Publication number
- CN109635998A CN109635998A CN201811302737.3A CN201811302737A CN109635998A CN 109635998 A CN109635998 A CN 109635998A CN 201811302737 A CN201811302737 A CN 201811302737A CN 109635998 A CN109635998 A CN 109635998A
- Authority
- CN
- China
- Prior art keywords
- neighborhood
- neighborhood operation
- target
- solution
- time windows
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
- G06Q10/047—Optimisation of routes or paths, e.g. travelling salesman problem
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q10/083—Shipping
- G06Q10/0835—Relationships between shipper or supplier and carriers
- G06Q10/08355—Routing methods
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- Human Resources & Organizations (AREA)
- Theoretical Computer Science (AREA)
- Economics (AREA)
- General Physics & Mathematics (AREA)
- Strategic Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Development Economics (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Operations Research (AREA)
- Biomedical Technology (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Game Theory and Decision Science (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提出了一种求解带时间窗车辆路径问题的自适应多目标优化方法,其内容涉及物流运输和智能计算两大技术领域。本发明的技术方案包含三个机制:一,评估当前解在不同目标上的优化潜力,并根据其值自适应地选择一个目标作为搜索方向;二,将不同邻域操作对各个目标的提升度进行量化,并结合所选择的搜索方向,自适应选择一种邻域操作对当前解进行局部搜索;三,引入邻域操作库,制定触发策略,对搜索过程中使用的邻域操作进行动态调整。本发明将以上三个机制进行结合,充分发挥不同邻域操作的搜索特性,可以有效提升带时间窗车辆路径问题的求解效率和优化效果。
Description
技术领域
本发明涉及物流运输和智能计算两大技术邻域,为带时间窗车辆路径问题提出一种求解带时间窗车辆路径问题的自适应多目标优化方法。
背景技术
随着科技的进步和电子商务的飞速发展,物流产业已成为拉动国家经济发展与提高居民生活水平的重要动力源泉。在物流产业中,车辆路径问题(Vehicle RoutingProblem,VRP)是物流管理与运输组织优化中的核心问题之一,其研究受到了人们的广泛关注。车辆路径问题是指在满足一定的约束条件(如时间限制、车载容量限制、交通限制等),通过对一系列客户点安排合理的行车路线,在满足客户点需求的前提下,实现配送车辆最少、配送时间最短、配送成本最低、配送路程最短等目标的优化问题。
车辆路径问题的求解方法,基本上可分为传统优化算法和智能优化算法两大类。由于传统优化方法在求解实际问题时存在较多的限制,为此,许多专家学者把精力主要用在构造高质量解决方案的智能优化算法的设计上面。目前针对车辆路径问题的研究中已提出了许多有效的智能优化算法,其使用的策略大致上可分为以下几类:先分组后安排路线的方法、先安排路线后分组的方法、节约/***方法、改进/交换法、基于数学规划的方法、交互式优化法。
对于组合优化问题而言,使用局部搜索方法是提高智能优化算法求解性能的重要手段之一。因而,如何将不同的局部搜索方法与智能优化算法进行有效结合,成为了目前车辆路径问题研究的重点之一。
发明内容
本发明的主要目的在于克服现有技术中的上述缺陷,提出一种结合了多目标优化、自适应操作选择以及邻域操作动态调整等机制的求解带时间窗车辆路径问题的自适应多目标优化方法。
本发明采用如下技术方案:
一种求解带时间窗车辆路径问题的自适应多目标优化方法,其特征在于,包括如下步骤:
1)通过启发式构造方法生成初始种群,并将非占优解保存到存档解集S中,令Count=0,对于所有生成的非占优解,按照各个目标函数进行评估;
2)初始化邻域操作库lib、邻域操作池pool、概率矩阵NS和邻域操作质量矩阵NQ;
3)从存档解集S中随机选择一个解X,对解X的各个目标函数值进行归一化处理来评估其优化潜力,并根据其潜力值确定选择概率;
4)根据各个目标的选择概率自适应选择一个优化目标作为当前搜索方向,记选中的目标为obj,若obj=1,则通过用于减少调度使用的车辆数目的邻域操作对解X在当前搜索方向上进行局部搜索,得到解X′,并更新存档解集S,进入步骤7);否则,进入步骤5);
5)根据概率矩阵NS,自适应选择邻域操作Nk,利用邻域操作Nk对解X进行局部搜索,得到解X′并更新存档解集S、邻域操作质量矩阵NQ和概率矩阵NS;若存档解集S有发生更新,则Count=0,进入步骤7);否则Count=Count+1,进入步骤6);
6)判断Count>limit是否成立,limit为预设的阀值,若是,则触发邻域操作动态调整策略,进入步骤7);否则,直接进入步骤7);
7)判断是否满足终止条件,若否,则返回步骤3);若是,程序结束,输出存档解集S中的所有解。
所述按照各个目标函数进行评估,各个目标函数包括:
f1=|R|
f3=max{Ti|i=1,…,R}
其中,f1表示调度使用的车辆数目,R表示路径集合;f2表示总行驶距离,Di表示第i条路径的行驶距离;f3表示所有路径中,最长的行驶时间,Ti表示第i条路径的行驶时间;f4表示因车辆早到,所有车辆的等待时间之和,Wi表示第i条路径上的所有客户点的等待时间总和;f5表示因车辆迟到,所有客户点的延误时间之和,TDi表示第i条路径上的所有客户点的延迟时间总和。
所述步骤2)包括选择8个常用的邻域操作加入到邻域操作库lib中,从邻域操作库lib中随机选择L个不同邻域操作加入到邻域操作池pool中,L<8,令NSk,j=1/L,NQk,j=0,其中k=1,2,...,5,j=1,2,…,L。
所述步骤3)中,归一化如下公式所示:
其中,fk为当前解X的第k个目标函数值,是由存档解集S中所有解的各目标的最小值构成的向量,而是存档解集S中所有解的各目标的最大值构成的向量。
所述步骤4)中,将解X的各个目标归一化的值作为该目标的选择概率,根据各目标的选择概率,利用轮盘赌方法选择一个目标作为解X的优化方向,记选中的目标为obj。
所述步骤5)中,根据概率矩阵NS中第obj-1行中各个邻域操作对应的概率值,利用轮盘赌方法从邻域操作池pool中选择一个邻域操作,记为Nk。
所述步骤5)中,根据解X′更新邻域操作质量矩阵NQ的第k列,并根据邻域操作质量矩阵NQ计算概率矩阵NS。
所述步骤6)中,所述触发邻域操作动态调整策略包括:根据概率矩阵NS,从邻域操作池pool中移除表现最差的邻域操作,将其放回邻域操作库lib中,并从邻域操作库lib中随机选取一个当前未使用的邻域操作添加到邻域操作池pool,Count=0,重新初始化概率矩阵NS和邻域操作质量矩阵NQ。
所述步骤7)中,所述终止条件即运行时间是否大于预设的计算时间。
由上述对本发明的描述可知,与现有技术相比,本发明具有如下有益效果:
本发明所提出的自适应多目标优化方法是一种结合了多目标优化、自适应操作选择以及邻域操作动态调整等机制的用于求解带时间窗车辆路径问题的智能优化算法。在提出的算法中,通过考虑不同邻域操作的搜索偏好以及算法在不同进化阶段的搜索特征,自适应地引导算法利用不同的邻域操作来进行不同方向的局部搜索,从而有效地提升算法对带时间窗车辆路径问题的求解性能,获得高质量的解决方案。
本发明提出的自适应多目标优化方法可以针对带时间窗车辆路径问题的搜索过程,充分挖掘和利用了解决方案中不同目标的优化信息和不同邻域操作的搜索偏好,动态地、自适应地选择合适的局部搜索操作,可以有效地引导算法进行高效的搜索,有利于最优解决方案集的获得。
通过对真实实例进行测试表明,本发明所提出的算法能够高效地解决带时间窗车辆路径问题。
附图说明
图1为解的实例表示,其中(a)为解的结构,(b)为解的路径表示;
图2为本发明自适应多方向局部搜索方法流程图。
具体实施方式
以下通过具体实施方式对本发明作进一步的描述。
本发明针对带时间窗车辆路径问题,设计了一种自适应多方向局部搜索方法。该算法的技术方案包括以下三个要点。第一,定义当前解在各个目标上的优化潜力,并根据其值自适应地选择一个目标作为优化方向。首先,从存档解集中随机选择一个解,并将解的各目标归一化后的值作为该目标的选择概率;然后,利用轮盘赌方法选择一个目标作为当前解的优化方向。第二,计算当前使用的各个邻域操作的质量矩阵,并将不同邻域操作对不同目标的提升度进行量化,形成邻域操作选择概率矩阵,同时结合所选择的目标,自适应地选择一个邻域操作进行局部搜索。第三,引入邻域操作库,制定触发策略,对搜索过程中使用的邻域操作进行动态调整。当满足触发条件时,根据邻域操作选择概率矩阵的信息,从邻域池中移除表现最差的邻域操作,将其放回邻域操作库,并从操作库中随机选择当前未使用的邻域操作添加到邻域池中。
本发明的一种求解带时间窗车辆路径问题的自适应多目标优化方法,包括如下步骤:
1)通过启发式构造方法生成初始种群,并将非占优解保存到存档解集S中,令Count=0,对于所有生成的非占优解,按照各个目标函数进行评估;各个目标函数包括:
f1=|R|
f3=max{Ti|i=1,…,R}
其中,f1表示调度使用的车辆数目,R表示路径集合;f2表示总行驶距离,Di表示第i条路径的行驶距离;f3表示所有路径中,最长的行驶时间,Ti表示第i条路径的行驶时间;f4表示因车辆早到,所有车辆的等待时间之和,Wi表示第i条路径上的所有客户点的等待时间总和;f5表示因车辆迟到,所有客户点的延误时间之和,TDi表示第i条路径上的所有客户点的延迟时间总和。
2)初始化邻域操作库lib、邻域操作池pool、概率矩阵NS和邻域操作质量矩阵NQ;包括选择8个常用的邻域操作加入到邻域操作库lib中,从邻域操作库lib中随机选择L个不同邻域操作加入到邻域操作池pool中,L<8,令NSk,j=1/L,NQk,j=0,其中k=1,2,...,5,j=1,2,...,L。
3)从存档解集S中随机选择一个解X,对解X的各个目标函数值进行归一化处理来评估其优化潜力,并根据其潜力值确定选择概率;归一化如下公式所示:
其中,fk为当前解X的第k个目标函数值,是由存档解集S中所有解的各目标的最小值构成的向量,而是存档解集S中所有解的各目标的最大值构成的向量。
4)将解X的各个目标归一化的值作为该目标的选择概率,根据各目标的选择概率,利用轮盘赌方法选择一个优化目标作为当前搜索方向,记选中的目标为obj,若obj=1,则通过用于减少调度使用的车辆数目的邻域操作对解X在当前搜索方向上进行局部搜索,得到解X′,并更新存档解集S,进入步骤7);否则,进入步骤5)。
5)根据概率矩阵NS中第obj-1行中各个邻域操作对应的概率值,利用轮盘赌方法从邻域操作池pool中选择一个邻域操作,记为Nk。利用邻域操作Nk对解X进行局部搜索,得到解X′并更新存档解集S,根据解X′更新邻域操作质量矩阵NQ的第k列,并根据邻域操作质量矩阵NQ计算概率矩阵NS。若存档解集S有发生更新,则Count=0,进入步骤7);否则Count=Count+1,进入步骤6)。
6)判断Count>limit是否成立,limit为预设的阀值,若是,则触发邻域操作动态调整策略,进入步骤7);否则,直接进入步骤7)。触发邻域操作动态调整策略包括:根据概率矩阵NS,从邻域操作池pool中移除表现最差的邻域操作,将其放回邻域操作库lib中,并从邻域操作库lib中随机选取一个当前未使用的邻域操作添加到邻域操作池pool,Count=0,重新初始化概率矩阵NS和邻域操作质量矩阵NQ。
7)判断是否满足终止条件,若否,则返回步骤3);若是,程序结束,输出存档解集S中的所有解。该终止条件即算法的运行时间是否大于预设的计算时间。
下面对本发明的相关方法进行详细描述,总共分为七个部分:解的表示和目标函数定义、初始种群的生成、邻域操作、自适应选择邻域操作、邻域操作池动态调整策略、存档更新策略以及测试实例与实验结果。
1.解的表示和目标函数定义
一个解X是由k条路径所组成的集合R={r1,...,rk}来表示的,其中ri=<c(0,i),c(1,i),c(2,i),...,c(Ni,i),c(Ni+1,i)>是一条由Pi+2个顶点的访问序列构成的路径,c(j,i)表示第i条路径的第j个顶点,Pi表示该路径的客户点数量。另外,为计算方便,令c(0,j)=c(Nj+1,j)=0,表示所有路径都是以车场为起点,并最后将返回该车场。在一个解中,除车场外,任意一个客户点会且仅会出现在某一条路径中。图1展示了一个解的实例表示。如图1所示,该解是由路径集合R={r1,r2,r3}所构成,即X=R,其中r1=<0,2,1,5,0>,r2=<0,3,4,6,7,0>,r3=<0,9,8,0>。
在优化过程中,上面描述的五个目标函数的定义中涉及到Di,Ti,Wi和TDi的计算。下面对其进行详细说明。
1)Di:表示第i条路径的行驶距离。
其中,dc(j,i)c(j+1,i)表示客户点c(j,i)和c(j+1,i)之间的行驶距离。
2)Ti:表示第i条路径的行驶时间,计算过程如下:
ac(j,i)表示第′条路径中的车辆到达第j个客户点的时间,lc(j,i)表示第i条路径中的车辆离开第j个客户点的时间。则有
ac(j,i)=lc(j-1,i)+tc(j-1,i)c(j,i)
其中,tc(j-1,i)c(j,i)表示车辆在c(j-1,i)和c(j,i)之间的行驶时间。
如果车辆到达客户点的时间早于该客户点的最早服务时间bc(j,i),则会产生等待时间:wc(j,i)=max{0,bc(j,i)-ac(j,i)}。故,lc(j,i)=ac(j,i)+wc(j,c)+sc(j,i)。其中,sc(j,i)表示客户点c(j,i)需要的服务时间。综合以上各式,有:
3)Wi:表示第i条路径上的所有客户点的等待时间总和,计算如下:
4)TDi:表示第i条路径上的所有客户点的延迟时间总和,计算过程如下:
如果该路径上的车辆到达客户点j的时间晚于该客户点的最迟服务时间ec(j,i),则会产生等待时间tdc(j,i)=max{0,ac(j,i)-ec(j,i)}。因此,总的延迟时间为:
2.初始种群的生成
在本发明中,采用所罗门(Solomon)***启发式方法来构造初始种群。该方法的步骤如下:
1)选择“种子”结点作为新路径的起点,该结点是非路径客户点中csi值最小的结点。csi由下列公式进行定义:
CSi=α*d0i+(1-α)*bi
其中,α≥0。
2)将其他非路径客户点按以下方式***到当前路径:
a)设(i0,i1,i2,...,im-1,im)为当前路径,i0=im=0表示车场。对于每一个非路径客户点q,按下列公式计算其在新路径中最好的***位置:
c1(i(q),q,j(q))=min{c1(ip-1,q,ip)}p=1,2,...,m
其中,c1(ip-1,q,ip)表示将结点q被***到客户点ip-1与ip之间,i(q)和j(q)表示q在最好位置***后其在路径中的前一个和后一个客户点。
b)对于所有非路径结点,根据其最好的***位置,按下列公式计算,选择最好的一个客户点:
c2(i(q*),q*,j(q*))=optimum{c2(ip-1,q,ip)}
c)将客户点q****到i(q*)和j(q*)之间,从而实现将新客户点插到当前路径中的操作。
d)如果剩余的非路径客户点中没有可行的***位置的,请返回步骤1),并构造新的路径,直到所有客户点都***到路径中。否则,重复上述步骤(a-d),继续***新的客户点。
在这个过程中,c1(i,q,j)的定义如下:
c11(i,q,j)=diq+dqj-μ*dij
c12(i,q,j)=btjq-btj
c1(i,q,j)=β*c11(i,q,j)+(1-β)*c12(i,q,j)
其中,β,μ≥0。btj表示客户点j开始服务的时间,即btj=max{bj,aj}。btjq表示***客户点q后,结点j的开始服务时间。
而c2(i,q,j)的定义为c2(i,q,j)=δ*d0q-c1(i,q,j),其中,δ≥0。
根据上面的过程,通过对参数组合(α,β,μ,δ)随机赋值来构造不同的初始解,重复此过程20次来获得不同的解,然后利用多目标优化中非占优比较,将非占优解加入到存档解集S中,组成初始种群。在本发明中,为了避免过多方案带来的决策困扰,|S|的上限设置为20。
3.邻域操作
在本发明中,涉及到了9种不同的邻域操作。这些邻域操作的定义涉及到两个基本的函数:selectRoute和bestPosition。selectRoute函数定义了如何从解中选择路径,而bestPosition函数定义了在路径中***客户点的最优位置。具体的定义如下:
1)函数selectRoute的定义:根据不同的优化目标,邻域操作中的选择路径操作的定义如下:
·对于目标1:利用轮盘赌方法,选择客户数量较少的路径;
·对于目标2:利用轮盘赌方法,选择总行驶距离较长的路径;
·对于目标3:直接选择总行驶时间最长的路径;
·对于目标4:利用轮盘赌方法,选择总等待时间较长的路径;
·对于目标5:利用轮盘赌方法,选择总延迟时间较长的路径。
2)函数bestPosition的定义:根据不同的优化目标,邻域操作中的最优***位置的定义如下:
·对于目标1:最佳***位置为其他路径上遍历到的第一个不会影响该路径上客户点开始服务时间的合法位置;
·对于目标2:最佳***位置为使得总行驶距离最短的位置;
·对于目标3:最佳***位置为使得总行驶时间最短的位置;
·对于目标4:最佳***位置为使得总等待时间最短的位置;
·对于目标5:最佳***位置为使得总延迟时间最短的位置;
结合以上对两个基本函数的定义,本发明所涉及的邻域操作如下:
N0:将选定的路径中的所有客户点均***到其他路径中,使得车辆数目减少。
N1:随机地从选定的路径中删除一个客户点,然后将其重新***到最优位置。
N2:随机地从选定的路径中删除一些客户点,然后分别将它们重新***到最优位置。
N3:交换两个选定的路径中的客户点序列。在一条选定的路径中,随机选择一个位置,将其后的所有客户点看作一个序列,然后和另一条路径中的所有可能的序列进行交换,最后提升最大的解被保存下来。
N4:从一条路径中选择一个客户片段,并将其移动到另一条路径中。
N5:交换两个路径中的客户片段。
N6:在选定的路径中选择一个客户片段,然后将其重新***到该路径中的最
优位置。
N7:在选定的路径中交换两个客户的位置。
N8:在选定的路径中选择一个客户片段,然后将其进行倒置。
根据选定的优化目标obj和邻域操作Ni,利用以上邻域操作的定义,对X进行相应的局部搜索,从而生成新的解X′=Ni(X)
4.自适应选择邻域操作
在本发明中,邻域操作的自适应选择方法采用的是自适应操作选择策略(Adaptive operator selection,AOS)。在AOS中,自适应选择邻域操作由两个部件组成:奖励分配部件和操作选择部件。具体过程如下:
1)奖励分配部件
首先,使用适应值改善率(FIR)来评价该邻域操作对各个目标适应值的提升情况。具体地,对于执行邻域操作Nj后,目标i的FIRij定义如下:
其中pfi和cfi分别代表X中目标i的适应值和X’中目标i的适应值。
如果pool中还有操作未被选择过,则将各个目标执行不同邻域操作的FIR值进行保存,且不执行质量矩阵NQ和选择概率矩阵NS的更新操作。
如果pool中所有的邻域操作都至少被选择过一次时,则计算各个目标对于不同邻域操作的平均FIR值,即
其中,nj为第j个邻域操作被选择执行的次数。
对于执行邻域操作Nj后对目标i产生提升的奖励值按下列公式计算:
其中,Q1表示当pool中所有邻域操作都被选择至少一次时;Q2表示在pool中所有邻域操作都至少被选择一次之后。
2)操作选择部件
首先,当pool所有邻域操作都至少被选择一次后,利用其奖励值更新邻域操作质量矩阵NQ,更新公式如下:
接着,利用质量矩阵NQ,生成邻域操作概率选择矩阵NS,计算公式如下:
其中,C是一个常数因子。
然后,根据选定的目标obj,先对NSobj的概率值进行归一化处理,即
最后,根据NS′obj的值,利用轮盘赌方法,为当前解X选择一种邻域操作。
5.邻域操作池动态调整策略
在本算法中,引入邻域操作动态调整策略,对当前邻域操作池pool中的邻域操作进行动态地移除和添加操作。
首先,触发动态调整策略的条件如下:
Count>limit
其中,Count表示对目标2,3,4,5执行邻域操作后,存档解集S未发生更新的次数;limit为预设的阀值,在本算法中,设limit=|S|。
当上述条件满足时,则对邻域操作池pool进行动态调整,具体过程如下:
1)根据NS矩阵,计算pool中每个邻域操作的概率之和,即
2)选择概率之和最小的邻域操作NSmin。
3)从pool中移除邻域操作NSmin,并放回操作库lib中,从lib中随机选择一个不在pool中且与NSmin不相同的邻域操作加入到pool中。
4)重新初始化矩阵NS和NQ。
6.存档更新策略
通过邻域操作产生新的解X’,将其与存档解集S中的所有解进行非占优比较。如果S中存在劣于X’的解,则将劣解从S中删除。如果X’劣于S中的解,则将X’丢弃;否则,将X’加入到S中。
当存档S中解的数量超出|S|的上限时,使用平行格坐标***(Parallel CellCoordinate System,PCCS)对|S|中的所有解进行密度估计,并将密度最大的解从存档解集S中移除。具体过程如下:
首先,将存档S中的每一个解Xi与一个标识数组Bi={bi1,...,bi5}相对应,标识数组的计算公式如下:
其中,和分别是存档S中所有解在第m个目标上的最大值和最小值,|S|表示存档S中解的数量。当时,则bim取值为1。
接着,根据每个解的标识数组,计算存档S中任意两个解之间的平行格距离(PCD),计算方式如下:
然后,根据两两解之间的平行格距离,计算每个解的密度,计算方式如下:
最后,比较所有解的密度,将密度最大的解从存档中删除。
7.测试案例与实验结果
本发明提出的自适应多方向局部搜索方法的流程图如图2所示。为了测试提出的算法的有效性,使用了带时间窗车辆路径问题的真实实例库。实例库中的实例涉及的因素有:3种不同的客户数目,3种不同的车辆容量和5种时间窗类型。通过使用以上三个因素的不同组合来创建不同的问题实例。其中,车辆的容量通过来控制,即: C和分别表示客户点的最大需求量和所有客户点的总需求量。这三个因素具体的取值如下:
客户点数目:50,150,250
60,20,5
时间窗类型:1,2,3,4,5
其中,类型1表示时间窗从上班时间算起的0分钟至480分钟的区间,类型2表示将一天的工作时间分为[0,160],[160,320],[320,480]三个时间窗,类型3表示一天的工作时间分为[0,130],[175,305],[350,480]三个时间窗,类型4表示一天的工作时间分为[0,100],[190,290],[380,480]三个时间窗,类型5表示每个客户的时间窗从类型1至类型4中随机选择一种。通过以上的组合总共生成了45个不同的问题实例。在每个问题实例中,每个客户点的需求量设置为10、20或者30,每种取值的概率均为1/3;每个客户点的服务时间设置为10、20或者30,每种取值的概率均为1/3;每个客户点的最大允许延迟时间设置为30分钟。
为了测试提出的算法的性能,非占优排序遗传算法(NSGA-II)被选择作为对比的算法,并将NSGA-II在每个问题实例的运行时间作为本算法的终止条件。通过对每个实例分别独立运行50次得到的实验结果进行非参数统计测试,本发明提出的算法和NSGA-II在Hypervolume指标、Inverted generational distance指标和Coverage metric指标上相比的结果均为45/0/0(优/平/差)。另外,为了验证自适应选择优化方向策略、自适应选择邻域策略和邻域操作池动态调整机制的有效性,实验中提出三种算法的变形,即将以上三个机制在变形算法中分别移除,并用随机选择来替换自适应选择。通过与这三种变形算法相比较,本发明提出的算法在大多数实例中都能够在三种指标中取得显著的提升。该实验结果进一步表明了提出的三个机制能够有效利用不同的邻域操作来指导算法的局部搜索过程。综上所述,本发明提出的自适应多方向局部搜索方法能够有效求解带时间窗车辆路径问题,同时为该问题的求解提供了一种新的高效的解决方案。
上述仅为本发明的具体实施方式,但本发明的设计构思并不局限于此,凡利用此构思对本发明进行非实质性的改动,均应属于侵犯本发明保护范围的行为。
Claims (9)
1.一种求解带时间窗车辆路径问题的自适应多目标优化方法,其特征在于,包括如下步骤:
1)通过启发式构造方法生成初始种群,并将非占优解保存到存档解集S中,令Count=0,对于所有生成的非占优解,按照各个目标函数进行评估;
2)初始化邻域操作库lib、邻域操作池pool、概率矩阵NS和邻域操作质量矩阵NQ;
3)从存档解集S中随机选择一个解X,对解X的各个目标函数值进行归一化处理来评估其优化潜力,并根据其潜力值确定选择概率;
4)根据各个目标的选择概率自适应选择一个优化目标作为当前搜索方向,记选中的目标为obj,若obj=1,则通过用于减少调度使用的车辆数目的邻域操作对解X在当前搜索方向上进行局部搜索,得到解X′,并更新存档解集S,进入步骤7);否则,进入步骤5);
5)根据概率矩阵NS,自适应选择邻域操作Nk,利用邻域操作Nk对解X进行局部搜索,得到解X′并更新存档解集S、邻域操作质量矩阵NQ和概率矩阵NS;若存档解集S有发生更新,则Count=0,进入步骤7);否则Count=Count+1,进入步骤6);
6)判断Count>limit是否成立,limit为预设的阀值,若是,则触发邻域操作动态调整策略,进入步骤7);否则,直接进入步骤7);
7)判断是否满足终止条件,若否,则返回步骤3);若是,程序结束,输出存档解集S中的所有解。
2.如权利要求1所述的一种求解带时间窗车辆路径问题的自适应多目标优化方法,其特征在于,所述按照各个目标函数进行评估,各个目标函数包括:
f1=|R|
f3=max{Ti|i=1,…,R}
其中,f1表示调度使用的车辆数目,R表示路径集合;f2表示总行驶距离,Di表示第i条路径的行驶距离;f3表示所有路径中,最长的行驶时间,Ti表示第i条路径的行驶时间;f4表示因车辆早到,所有车辆的等待时间之和,Wi表示第i条路径上的所有客户点的等待时间总和;f5表示因车辆迟到,所有客户点的延误时间之和,TDi表示第i条路径上的所有客户点的延迟时间总和。
3.如权利要求1所述的一种求解带时间窗车辆路径问题的自适应多目标优化方法,其特征在于,所述步骤2)包括选择8个常用的邻域操作加入到邻域操作库lib中,从邻域操作库lib中随机选择L个不同邻域操作加入到邻域操作池pool中,L<8,令NSk,j=1/L,NQk,j=0,其中k=1,2,...,5,j=1,2,...,L。
4.如权利要求2所述的一种求解带时间窗车辆路径问题的自适应多目标优化方法,其特征在于,所述步骤3)中,归一化如下公式所示:
其中,fk为当前解X的第k个目标函数值,是由存档解集S中所有解的各目标的最小值构成的向量,而是存档解集S中所有解的各目标的最大值构成的向量。
5.如权利要求1所述的一种求解带时间窗车辆路径问题的自适应多目标优化方法,其特征在于,所述步骤4)中,将解X的各个目标归一化的值作为该目标的选择概率,根据各目标的选择概率,利用轮盘赌方法选择一个目标作为解X的优化方向,记选中的目标为obj。
6.如权利要求1所述的一种求解带时间窗车辆路径问题的自适应多目标优化方法,其特征在于,所述步骤5)中,根据概率矩阵NS中第obj-1行中各个邻域操作对应的概率值,利用轮盘赌方法从邻域操作池pool中选择一个邻域操作,记为Nk。
7.如权利要求1所述的一种求解带时间窗车辆路径问题的自适应多目标优化方法,其特征在于,所述步骤5)中,根据解X′更新邻域操作质量矩阵NQ的第k列,并根据邻域操作质量矩阵NQ计算概率矩阵NS。
8.如权利要求1所述的一种求解带时间窗车辆路径问题的自适应多目标优化方法,其特征在于,所述步骤6)中,所述触发邻域操作动态调整策略包括:根据概率矩阵NS,从邻域操作池pool中移除表现最差的邻域操作,将其放回邻域操作库lib中,并从邻域操作库lib中随机选取一个当前未使用的邻域操作添加到邻域操作池pool,Count=0,重新初始化概率矩阵NS和邻域操作质量矩阵NQ。
9.如权利要求1所述的一种求解带时间窗车辆路径问题的自适应多目标优化方法,其特征在于,所述步骤7)中,所述终止条件即运行时间是否大于预设的计算时间。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811302737.3A CN109635998B (zh) | 2018-11-02 | 2018-11-02 | 一种求解带时间窗车辆路径问题的自适应多目标优化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811302737.3A CN109635998B (zh) | 2018-11-02 | 2018-11-02 | 一种求解带时间窗车辆路径问题的自适应多目标优化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109635998A true CN109635998A (zh) | 2019-04-16 |
CN109635998B CN109635998B (zh) | 2023-04-07 |
Family
ID=66067118
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811302737.3A Active CN109635998B (zh) | 2018-11-02 | 2018-11-02 | 一种求解带时间窗车辆路径问题的自适应多目标优化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109635998B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112132312A (zh) * | 2020-08-14 | 2020-12-25 | 蓝海(福建)信息科技有限公司 | 一种基于进化多目标多任务优化的路径规划方法 |
CN112686458A (zh) * | 2021-01-05 | 2021-04-20 | 昆明理工大学 | 一种多车型车队配送货过程的优化调度方法 |
CN112801361A (zh) * | 2021-01-25 | 2021-05-14 | 西安工业大学 | UAVs和UGVs长时多目标路径规划问题及求解算法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150371135A1 (en) * | 2014-06-23 | 2015-12-24 | International Business Machines Corporation | Solving vehicle routing problems using evolutionary computing techniques |
CN106651044A (zh) * | 2016-12-28 | 2017-05-10 | 中山大学 | 求解多目标带时间窗周期性车辆路径问题的智能调度算法 |
CN107909228A (zh) * | 2017-12-23 | 2018-04-13 | 深圳大学 | 基于模因计算的动态车辆收发货路径规划方法及装置 |
CN108596469A (zh) * | 2018-04-19 | 2018-09-28 | 中南大学 | 一种面向大规模车辆路径问题的快速自适应大规模邻域搜索方法 |
-
2018
- 2018-11-02 CN CN201811302737.3A patent/CN109635998B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150371135A1 (en) * | 2014-06-23 | 2015-12-24 | International Business Machines Corporation | Solving vehicle routing problems using evolutionary computing techniques |
CN106651044A (zh) * | 2016-12-28 | 2017-05-10 | 中山大学 | 求解多目标带时间窗周期性车辆路径问题的智能调度算法 |
CN107909228A (zh) * | 2017-12-23 | 2018-04-13 | 深圳大学 | 基于模因计算的动态车辆收发货路径规划方法及装置 |
CN108596469A (zh) * | 2018-04-19 | 2018-09-28 | 中南大学 | 一种面向大规模车辆路径问题的快速自适应大规模邻域搜索方法 |
Non-Patent Citations (4)
Title |
---|
KE LI等: "Adaptive Operator Selection With Bandits for a Multiobjective Evolutionary Algorithm Based on Decomposition", 《IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION》 * |
胡旺: "基于Pareto熵的多目标粒子群优化算法", 《软件学报》 * |
陶经辉、王声绪、徐标: "《集装箱港口智能化管理优化策略》", 30 September 2016, 中国财富出版社 * |
雷洪涛、刘亚杰、张涛、郭波: "《物流配送路径优化与配送区域划分》", 31 October 2015, 国防工业出版社 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112132312A (zh) * | 2020-08-14 | 2020-12-25 | 蓝海(福建)信息科技有限公司 | 一种基于进化多目标多任务优化的路径规划方法 |
CN112132312B (zh) * | 2020-08-14 | 2022-08-23 | 蓝海(福建)信息科技有限公司 | 一种基于进化多目标多任务优化的路径规划方法 |
CN112686458A (zh) * | 2021-01-05 | 2021-04-20 | 昆明理工大学 | 一种多车型车队配送货过程的优化调度方法 |
CN112801361A (zh) * | 2021-01-25 | 2021-05-14 | 西安工业大学 | UAVs和UGVs长时多目标路径规划问题及求解算法 |
Also Published As
Publication number | Publication date |
---|---|
CN109635998B (zh) | 2023-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109635998A (zh) | 一种求解带时间窗车辆路径问题的自适应多目标优化方法 | |
CN112995289B (zh) | 一种基于非支配排序遗传策略的车联网多目标计算任务卸载调度方法 | |
CN109764882B (zh) | 一种基于自适应局部搜索链的多目标车辆路径规划方法 | |
CN114330874A (zh) | 一种基于城市生活垃圾分类的收运车辆调度方法及*** | |
CN104036324B (zh) | 一种基于遗传算法的通信网络容量可靠性最优设计方法 | |
Zhang et al. | Memetic algorithm with route decomposing for periodic capacitated arc routing problem | |
CN105323166A (zh) | 一种面向云计算的基于网络能效优先的路由方法 | |
CN107092977A (zh) | 一种求解多目标带时间窗异构车型选址‑路径问题的算法 | |
CN104933473A (zh) | 基于变邻域搜索蚁群算法的城市智能交通调度方法 | |
Kiaee | Integration of electric vehicles in smart grid using deep reinforcement learning | |
Liu et al. | A multi-objective evolutionary algorithm based on membrane systems | |
CN108537370A (zh) | 基于混合智能降维算法的特大流域水电站群优化调度方法 | |
Kao et al. | Solving the CVRP problem using a hybrid PSO approach | |
CN104392317A (zh) | 一种基于遗传文化基因算法的项目调度方法 | |
CN107316100A (zh) | 智慧城市中电动汽车的充电调度策略 | |
Juan et al. | Optimization of fuzzy rule based on adaptive genetic algorithm and ant colony algorithm | |
Michelakos et al. | A hybrid classification algorithm evaluated on medical data | |
Xu et al. | A new evolutionary neural network for forecasting net flow of a car sharing system | |
CN107370191B (zh) | 一种基于改进蚁群算法的火电机组发电计划制作方法 | |
CN109325598A (zh) | 一种面向资源分配的组合混沌遗传算法 | |
CN108260193A (zh) | 异构网络中基于信道聚合的联合资源分配方法 | |
CN109165718A (zh) | 基于并行蚁群算法的网络重构方法和*** | |
Song et al. | An improved differential evolution algorithm with local search for capacitated vehicle routing problem | |
CN114021914B (zh) | 一种无人机集群飞防调度方法及装置 | |
CN114781703A (zh) | 一种分层多目标优化方法、终端设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |