CN116227817A - 一种动态车辆路径全链路问题分析与模型求解方法 - Google Patents
一种动态车辆路径全链路问题分析与模型求解方法 Download PDFInfo
- Publication number
- CN116227817A CN116227817A CN202211627730.5A CN202211627730A CN116227817A CN 116227817 A CN116227817 A CN 116227817A CN 202211627730 A CN202211627730 A CN 202211627730A CN 116227817 A CN116227817 A CN 116227817A
- Authority
- CN
- China
- Prior art keywords
- dynamic
- solution
- new
- solving
- vehicle path
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 40
- 238000004458 analytical method Methods 0.000 title claims abstract description 7
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 42
- 230000007246 mechanism Effects 0.000 claims abstract description 17
- 238000013178 mathematical model Methods 0.000 claims abstract description 12
- 238000004364 calculation method Methods 0.000 claims abstract description 11
- 230000000737 periodic effect Effects 0.000 claims abstract description 9
- 230000006378 damage Effects 0.000 claims description 21
- 239000003016 pheromone Substances 0.000 claims description 18
- 230000008439 repair process Effects 0.000 claims description 18
- 238000012217 deletion Methods 0.000 claims description 14
- 230000037430 deletion Effects 0.000 claims description 14
- 230000008859 change Effects 0.000 claims description 9
- 230000008569 process Effects 0.000 claims description 9
- 238000010845 search algorithm Methods 0.000 claims description 9
- 230000006870 function Effects 0.000 claims description 6
- 238000003780 insertion Methods 0.000 claims description 6
- 230000037431 insertion Effects 0.000 claims description 6
- 238000002922 simulated annealing Methods 0.000 claims description 6
- 241000257303 Hymenoptera Species 0.000 claims description 5
- 230000003044 adaptive effect Effects 0.000 claims description 4
- 230000002068 genetic effect Effects 0.000 claims description 4
- 238000007619 statistical method Methods 0.000 claims description 3
- 238000009825 accumulation Methods 0.000 claims description 2
- 238000005457 optimization Methods 0.000 abstract description 12
- 238000010276 construction Methods 0.000 abstract description 2
- 238000013499 data model Methods 0.000 abstract description 2
- 238000007405 data analysis Methods 0.000 description 4
- 230000035772 mutation Effects 0.000 description 4
- 230000003068 static effect Effects 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000002441 reversible effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 235000012054 meals Nutrition 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
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/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06311—Scheduling, planning or task assignment for a person or group
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
- G06F30/27—Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
-
- 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/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06315—Needs-based resource requirements planning or analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2111/00—Details relating to CAD techniques
- G06F2111/04—Constraint-based CAD
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2111/00—Details relating to CAD techniques
- G06F2111/06—Multi-objective optimisation, e.g. Pareto optimisation using simulated annealing [SA], ant colony algorithms or genetic algorithms [GA]
-
- 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
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Physics & Mathematics (AREA)
- Strategic Management (AREA)
- General Physics & Mathematics (AREA)
- Tourism & Hospitality (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Marketing (AREA)
- Game Theory and Decision Science (AREA)
- General Business, Economics & Management (AREA)
- Educational Administration (AREA)
- Development Economics (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- Traffic Control Systems (AREA)
Abstract
本发明提供了一种动态车辆路径全链路问题分析与模型求解方法,涉及运筹优化和实时动态调度技术领域,包括如下步骤:S1:构建适用于动态车辆路径通用性整数规划数学模型;S2:集成动态实际数据,所述动态实际数据包括实时旅行时间信息与订单数据信息;S3:根据所述数学模型与动态实际数据形成周期性动态车辆路径数据更新与动态求解机制;S4:完成构建动态车辆路径的周期式计算分析算法库。本发明通过动态分析车辆路径问题数据模型研究动态实时智能求解方法,为求解动态车辆路径问题提供了可以直接使用智能算法库,提高了动态信息条件下车辆路径中车辆调度的效率。
Description
技术领域
本发明涉及运筹优化和实时动态调度技术领域,具体而言,尤其涉及一种动态车辆路径全链路问题分析与模型求解方法。
背景技术
动态VRP(Virtual Reality Platform)又称实时VRP,考虑顾客和路况等信息的变动,在物流配送中有大量实际应用,如:外卖公司的实时送餐、动态接送服务、救护车实时分配、实时叫车服务等。
现有的动态VRP调度方法,只能针对实时动态,把DVRP划分为一系列周期离散的静态子问题进行求解。尚无考虑到原始车厂和外部车辆的统一调配,没有实际的数学模型。现有的动态VRP调度方法的求解算法,都是基于单独使用群智能优化,进化算法,邻域优化之中的某一类来进行求解,这样在面对动态的数据变化时,经常会出现解的质量较差的情况。
发明内容
有鉴于此,本发明的目的在于提出一种动态车辆路径全链路问题分析与模型求解方法,以解决现有动态VRP调度方法因只使用一类求解算法而导致在面对动态数据变化时解的质量较差的技术问题。
本发明采用的技术手段如下:
一种动态车辆路径全链路问题分析与模型求解方法,包括如下步骤:
S1:构建适用于动态车辆路径通用性整数规划数学模型;
S2:集成动态实际数据,所述动态实际数据包括实时旅行时间信息与订单数据信息;
S3:根据所述数学模型与动态实际数据形成动态车辆路径问题数据更新与动态求解的交替机制,得到新的动态车辆路径问题的实例;
S4:根据动态车辆路径问题数据更新与动态求解的交替机制构建动态车辆路径的周期式计算分析算法库,根据新的动态车辆路径问题的实例从所述算法库中选择算法对目标问题进行求解,得出实际车辆调度方案。
进一步地,S1具体包括:
S11:根据问题抽象特征,进行基于图论中的点弧关系的机理建模,将所有点分为顾客点和车场点,保证每个顾客点都能被服务并且只能被服务一次,并且每个车场出发点出发的车都返回相同的初始车场返回点;
S12:对原始算例数据进行可视化操作,以适当的统计分析方法对导入的数据进行分析,提供一个数据的可视化页面和当前时间的解决方案,便于用户对数据的观察。
进一步地,S2具体包括:
S21:根据当前时间和上周期的解决方案,更新当前车辆位置,结合当前的动态订单数据,完成数据更新过程;
S22:根据每次给出的解决方案计算当前时间下,更新车辆位置、剩余载重、时间窗口等车辆状态信息;加上此时的动态订单数据,形成了新的动态车辆路径问题的实例。
进一步地,S3具体包括:
S31:将动态车辆问题进行周期性分解,将每阶段的路况和订单数据和当前车辆所在位置相结合完成数据更新。监听数据更新之后直接进行整合并再次求解,形成动态求解机制。
S32:这样迭代地求解当前问题,更新本次数据,再次求解问题形成了动态车辆路径问题的求解机制。
进一步地,S4具体包括:在每次迭代求解中获取不同的解决方案从算法库中选取合适的算法,所述算法库中的算法包括自适应大邻域搜索、变邻域搜索、大邻域搜索和蚁群算法。
进一步地,所述自适应大邻域搜索算法的工作流程为:
初始化所有破坏/修复算子的调用概率,求解时间,并且更新车辆动态信息,路况实时情况,以及顾客需求变化,根据模型约束,确定解的结构;
使用贪婪插入启发式获取初始解x;
生成随机数,选择被调用的破坏算子;在以下三种删除启发式中选择一种作为破坏算子:随机删除启发式,最差删除启发式以及相似删除启发式;
使用该破坏算子破坏初始解,生成解x’和被移除的顾客点集合C;
生成随机数,选择被动用的修复算子;在以下三种删除启发式中选择一种作为修复算子:贪婪插入启发式,随机修复启发式以及遗憾插入启发式;
使用该启发式将顾客点集合C重新插入解x’中,生成解x_new;
判断新解x_new是否满足模拟退火准则,若满足,则x_new覆盖x的值;若不满足,舍弃x_new;
如果新解x_new满足模拟退火准则,判断x_new的目标值是否优于历史最优解x_best;
通过本次迭代x_new和x的目标值差距,更新所使用破坏/修复算子的累计适应度,并且更新所有算子的被调用概率;
如果到迭代次数或者运算时间,输出x_best;否则,重复上一步。
进一步地,所述变邻域搜索算法的工作流程为:
初始化每一层的邻域,邻域个数记为M,记作Nk(k=1,2,3,…,M),将这些邻域按照从小到大进行排列;
更新车辆动态信息,路况实时情况,以及顾客需求变化;根据模型约束,确定解的结构;
定义初始解x;
用当前解从第一层开始搜索,直到陷入局部最优解x’;
如果x’由于x,用x’更新x,重置k为1;否则,进入下一层搜索(k=k+1);
如果k不小于M,转到更新车辆信息步骤;
输出最终解x。
进一步地,所述大邻域搜索算法的工作流程为:
初始化所有破坏/修复算子的调用概率,求解时间;
更新车辆动态信息,路况实时情况,以及顾客需求变化;根据模型约束,确定解的结构;
使用贪婪插入启发式获取初始解x;
使用相似删除启发式作为破坏算子破坏当前解,生成解x’和被移除的顾客点集合C;
使用贪婪插入启发式讲顾客点集合C重新插入解x’中,生成解x_new;
判断新解x_new优于x,则x_new覆盖x的值;若不满足,舍弃x_new;
如果新解x_new优于x_best,判断x_new的目标值是否优于历史最优解x_best;
如果达到迭代次数或者运算时间,输出x_best;否则,重复上述步骤。
进一步地,所述蚁群算法的工作流程为:
对相关参数进行初始化,根据模型约束,确定解的结构;
构建解空间:将各个蚂蚁随机地置于不同的出发点,根据两点之间距离以及信息素累积量,计算每个蚂蚁k(k=1,2,3…m)下一个待访问城市,直到所有蚂蚁访问完所有城市;
更新信息素:计算每个蚂蚁经过路径长度Lk(k=1,2,…,m),记录当前迭代次数中的最优解(最短路径);同时,对各个城市连接路径上信息素浓度进行更新;
判断是否终止若iter<itermax,则令iter=iter+1,清空蚂蚁经过路径的记录表,并返回构建解空间步骤;否则,终止计算,输出最优解。
进一步地,所述相关参数包括蚁群规模u、信息素重要程度因子α、启发函数重要程度因子β、信息素挥发因子ρ、信息素释放总量Q、最大迭代次数itermax、路况实时情况,顾客需求变化。
较现有技术相比,本发明具有以下优点:
1、本发明提供的动态车辆路径通用性整数规划数学模型,通过与动态实际数据结合,实现了对于现实车辆信息,订单信息以及路网信息的模型化整合,更为精确地描述了现有动态车辆路径问题的实际情况。
2、本发明提供的数据更新与动态求解的交替机制,通过与动态实际数据以及上次调度解决方案结合,实现了对于动态车辆路径问题连续动态求解,随着实际情况的改变动态地更新解决方案。
3、本发明提供的车辆路径的周期式计算分析算法库,通过与此时的数据模型集合,实现了根据当前数据状态智能选取对应的优秀算法,提高了求解效率与质量。
基于上述理由本发明可在运筹优化和实时动态调度技术等领域广泛推广。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图做以简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明方法框架图。
图2为本发明顾客点显示图。
图3为本发明两周期动态决策周期图。
图4为本发明算法库中整体流程图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
如图1-4所示,本发明提供了一种动态车辆路径全链路问题分析与模型求解方法,普适模型动态智能求解,面向其设计的软件系统结构分为数据上传、数据分析、算法选择和报告下载四个部分,如附图1所示,所述方法包括以下步骤:
S1:构建适用于动态车辆路径普适性整数规划数学模型;
动态车辆路径问题的整数规划模型基于机理建模,可以适用于大多数种类的动态车辆问题。静态车辆路径问题中,在对物流配送路径进行优化之前的相关信息(客户、车辆、客户请求、调度及其他相关信息等)是已知且固定的;而动态车辆路径优化问题中的很多信息都是不确定且不可预知的,可能还会有部分信息是模糊的、随机的,在进行路径规划时要根据实时信息对车辆路径进行实时的规划调整和优化。在动态车辆路径问题中,部分客户点数量、位置以及每个客户点的货物需求量已知,存在部分信息是未知的且不可预知的,可能还有部分信息是随机的、模糊的。如何设计合理的配送路线,使车辆从配送中心出发,对客户点有序访问,并满足相关约束条件(重量、体积、时间窗等),同时应对在车辆服务的过程中接受到的新订单,即新出现的客户点,最后返回配送中心,是车辆路径问题的主要研究内容。车辆路径问题的研究目的在于减少使用车辆数目,降低配送距离、减少配送时间,提高物流效率、节约运输成本等。
根据问题抽象特征,进行基于图论中的点弧关系进行机理建模:将所有点分为顾客点和车场点。车辆需要对所有的客户订单进行服务。每一个客户订单只能被一辆车服务,车辆服务开始时间必须在客户订单时间窗之内。若车辆早于时间窗开始时间到达客户位置,则车辆必须停止等待;若车辆晚于时间窗结束时间到达客户位置,则该客户不能被服务。同时,所有车辆都是同类型的,即车辆容量都是一样的,车辆在服务过程中的货量不能超过车辆最大容量。所有车辆都是从同一车场出发,车场也有一个时间窗,所有车辆必须在该时间窗内完成所有货物的配送。
对原始算例数据进行可视化操作,如附图2所示,以适当的统计分析方法对导入的数据进行分析,将它们加以汇总和理解并消化,以求最大化地开发数据的功能,发挥数据的作用。同时提供一个数据的可视化页面,便于使用者对数据的观察,了解数据的特点。
适用于动态车辆路径普适性整数规划数学模型为:
其中:K0为停留在初始车场的车辆集合,K'为外部车辆集合,V为点集合(包括车辆点与顾客点),N为顾客点集合,O为初始车场点,E为弧集合,k为车辆索引,Ok为外部车辆k点,i,j,l为点索引,dij为i,j两点间距离,qi为顾客点i需求,Qk为车辆k当前载重,Q为车辆容量,为决策变量,判断是否弧(i,j)由车辆k经过。
适用于动态车辆路径普适性整数规划数学模型的建立过程如下:
在本模型中,整体基于图论建模,图之中的所有点的集合V可以分为顾客点集合N、初始车场集合O、外部车场集合Ok。外部车辆从各自的位置出发,返回初始车场;在初始车辆的车辆同传统VRP一样,服务顾客之后,返回初始车场。
为保证每个顾客点都被服务正好一次,我们图论中每个顾客点的出度和入读进行模型的约束的建立。
为了模拟装货/接客的过程,我们对到达每个顾客点的载重与离开这个顾客点的在中进行比较。每个顾客点的载重qi等于载重加权总出度
所有车辆总容量相同,均为Q。在车场的车辆自然不会有任何的载重,而对于外部车辆k的当前载重为之前已经取货的顾客点的总载重Qk。基于以上两点,建立载重总量约束为
对于每个外部车厂点,有且只有一辆车,从图论角度说,该点入度为0,出度为1。
而从车场出发的车辆有足够多的车辆,入度大于0即可;由于无论是初始车场还是外部车厂的车辆都需要返回初始车场。所以初始车场的出度等于外部车辆数加上初始车场的入度。
S2:采集实时旅行时间信息与订单信息;
由于动态车辆路径问题模型基于机理建模,这里使用实时的数据更能保证获得的解决方案鲁棒性更强,即解决方案在受到一定干扰因素的影响下,解决方案维持其稳定性的能力。车辆在配送的路程当中存在着大量的不确定性:如拥堵、恶劣天气、车辆故障、客户信息改变等,这都将直接影响配送车辆行驶时间或者速度的变化,导致等待甚至改变路线,进而造成车辆的调度成本的增加。这些不确定使优化调度变得复杂,但当信息一旦明确已知,就可以把动态车辆调度问题转化为静态车辆调度问题来求解。在本软件中,客户实时数据更新不仅考虑原客户需求量的减少或增加,更多的是考虑新的客户需求。在满足车载量前提下,如何将新客户加入到已有路径中,若当前不存在该路径时,需要重新安排新的车辆服务。对于原客户需求量减少的情况,局部路线无需调整。若需求量变为0,则跳过此客户。对于原客户需求量增加的情况,如果出现超出车载量的情况,选择此子路径上最后服务的客户作为新客户需求处理,直至满足车载量限制。本算法库引入外部配送中心的概念,将车辆所在的客户点设为外部配送中心。
根据当前时间和上周期的解决方案,更新当前车辆位置,计算外部配送中心位置。结合当前的动态订单数据,完成数据更新过程,数据更新后,信息明确可知,这个时候动态车辆路径问题可以短暂的转换为静态车辆路径问题来解决。在前一个周期结束时,算法被给定一个最大允许计算时间,在这个时间段内,算法根据前一个周期结束时刻即时更新得到的数据进行新的车辆路径调度,得到一个新的车辆路径规划方案,即一个新解。经过这个最大允许计算时间后,新的车辆路径规划开始执行,直至下一个周期结束,动态决策周期示意图如附图3所示。
根据每次的给出的解决方案计算当前时间下,更新车辆位置、剩余载重、时间窗口、客户需求变化、外部配送中心等状态信息,加上此时的动态订单数据就形成了一个新的动态车辆路径问题的实例。在这个基础上,算法进行车辆路径规划的重优化,以实现配送距离最低、配送时间最少,物流效率最高、运输成本最低的综合路径规划目标。
S3:根据数学模型与动态实际数据形成周期性动态车辆路径数据更新与动态求解机制;
将动态车辆问题进行虚拟周期性分解,将每阶段的路况和订单数据和当前车辆所在位置相结合完成数据更新。算法规划求解流程图如附图4所示,用户首先在前端进行数据上传,然后由后端进行原始数据的状态判断。接着前端进行原始数据分析,提供可视化数据分析页面,并让用户根据数据分析的结果选择合适的智能优化算法,算法中部分参数可由用户调整,最后交由后端进行具体车辆路径规划解的计算。在前一个虚拟周期结束时,根据虚拟周期结束时刻即时更新得到的车辆状态信息和客户需求变动构建新的问题实例,随即在一个有限的极小时间内,算法根据即时数据进行车辆路径的重优化,得到一个新的车辆路径规划。其后,车辆按照新的车辆路径规划方案开始执行,直至下一个虚拟周期结束。
这样迭代地、周期地求解当前动态车辆问题,更新即时数据,再次求解问题对车辆路径规划进行重优化,构成了本软件中对动态车辆路径问题的求解机制。各个虚拟周期的动态车辆路径规划方案将会以可视化界面呈现给用户,界面中包涵各个虚拟周期的车辆行驶路径,即动态车辆路径规划方案。
S4:完成构建动态车辆路径的周期式计算分析算法库;
算法库中包括众多适合车辆路径问题求解的启发式/元启发式算法,根据用户的偏好,可以在每次迭代求解中获取不同的解决方案。
自适应大邻域搜索算法(Adaptive Large Neighborhood Search,ALNS):
步骤1、初始化所有破坏/修复算子的调用概率,求解时间。并且更新车辆动态信息,路况实时情况,以及顾客需求变化。根据模型约束,确定解的结构。
步骤2、使用贪婪插入启发式获取初始解x。
步骤3、生成随机数,选择被调用的破坏算子。在以下三种删除启发式中选择一种作为破坏算子:随机删除启发式,最差删除启发式以及相似删除启发式。
步骤4、使用该破坏算子破坏初始解,生成解x’和被移除的顾客点集合C
步骤5、生成随机数,选择被动用的修复算子。在以下三种删除启发式中选择一种作为修复算子:贪婪插入启发式,随机修复启发式以及遗憾插入启发式。
步骤6、使用该启发式将顾客点集合C重新插入解x’中,生成解x_new。
步骤7、判断新解x_new是否满足模拟退火准则,若满足,则x_new覆盖x的值;若不满足,舍弃x_new。
步骤8、如果新解x_new满足模拟退火准则,判断x_new的目标值是否优于历史最优解x_best。
步骤9、通过本次迭代x_new和x的目标值差距,更新所使用破坏/修复算子的累计适应度,并且更新所有算子的被调用概率。
步骤10、如果到迭代次数或者运算时间,输出x_best;否则,重复步骤3-9。
变邻域搜索算法(Variable Neighborhood Search,VNS):
步骤1、初始化每一层的邻域(邻域个数记为M),记作Nk(k=1,2,3,…,M),将这些邻域按照从小到大进行排列;
步骤2、更新车辆动态信息,路况实时情况,以及顾客需求变化。根据模型约束,确定解的结构。
步骤3、定义初始解x。
步骤4、用当前解从第一层开始搜索,直到陷入局部最优解x’。
步骤5、如果x’由于x,用x’更新x,重置k为1;否则,进入下一层搜索(k=k+1)。
步骤6、如果k不小于M,转到步骤2;
步骤7、输出最终解x。
大邻域搜索算法Large Neighborhood Search(LNS):
步骤1、初始化所有破坏/修复算子的调用概率,求解时间。
步骤2、更新车辆动态信息,路况实时情况,以及顾客需求变化。根据模型约束,确定解的结构。
步骤3、使用贪婪插入启发式获取初始解x。
步骤4、使用相似删除启发式作为破坏算子破坏当前解,生成解x’和被移除的顾客点集合C。
步骤5、使用贪婪插入启发式讲顾客点集合C重新插入解x’中,生成解x_new。
步骤6、判断新解x_new优于x,则x_new覆盖x的值;若不满足,舍弃x_new。
步骤7、如果新解x_new优于x_best,判断x_new的目标值是否优于历史最优解x_best。
步骤8、如果达到迭代次数或者运算时间,输出x_best;否则,重复步骤4-6。
遗传算法(Genetic Algorithm,GA):
步骤1、设置进化代数计数器iter=0,设置最大进化代数itermax,随机生成M个个体作为初始群体P(0)
步骤2、更新车辆动态信息,路况实时情况,以及顾客需求变化。根据模型约束,确定解的结构。
步骤3、个体评价:计算群体P(t)中各个个体的适应度。
步骤4、选择运算:使用随机选择算子作用于群体。
步骤5、生成随机数,选择被调用的交叉算子。在以下三种删除启发式中选择一种作为交叉算子:随机交叉启发式,单点交叉以及均匀交叉。
步骤6、交叉运算:将交叉算子作用于被选择出来的个体。
步骤7、生成随机数,选择被调用的变异算子。在以下三种删除启发式中选择一种作为变异算子:反转变异,位变异以及反转交换变异。
步骤8、变异运算:将变异算子作用于被选择出来的个体。
步骤9、经过以上遗传运算,群体P(t)经过选择、交叉、变异运算之后得到下一代群体P(t+1)。
步骤10、终止条件判断:若iter=itermax,则以进化过程中所得到的具有最大适应度个体作为最优解输出,终止计算。
蚁群算法(Ant Colony Optimization,ACO):
步骤1、对相关参数进行初始化,如蚁群规模u、信息素重要程度因子α、启发函数重要程度因子β、信息素挥发因子ρ、信息素释放总量Q、最大迭代次数itermax。以及路况实时情况,以及顾客需求变化。根据模型约束,确定解的结构。
步骤2、构建解空间:将各个蚂蚁随机地置于不同的出发点,根据两点之间距离以及信息素累积量,计算每个蚂蚁k(k=1,2,3…m)下一个待访问城市,直到所有蚂蚁访问完所有城市。
步骤3、更新信息素:计算每个蚂蚁经过路径长度Lk(k=1,2,…,m),记录当前迭代次数中的最优解(最短路径)。同时,对各个城市连接路径上信息素浓度进行更新。
步骤4、判断是否终止若iter<itermax,则令iter=iter+1,清空蚂蚁经过路径的记录表,并返回步骤2;否则,终止计算,输出最优解。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (10)
1.一种动态车辆路径全链路问题分析与模型求解方法,其特征在于,包括如下步骤:
S1:构建适用于动态车辆路径通用性整数规划数学模型;
S2:集成动态实际数据,所述动态实际数据包括实时旅行时间信息与订单数据信息;
S3:根据所述数学模型与动态实际数据形成动态车辆路径问题数据更新与动态求解的交替机制,得到新的动态车辆路径问题的实例;
S4:根据动态车辆路径问题数据更新与动态求解的交替机制构建动态车辆路径的周期式计算分析算法库,根据新的动态车辆路径问题的实例从所述算法库中选择算法对目标问题进行求解,得出实际车辆调度方案。
2.根据权利要求1所述的动态车辆路径全链路问题分析与模型求解方法,其特征在于,S1具体包括:
S11:根据问题抽象特征,进行基于图论中的点弧关系的机理建模,将所有点分为顾客点和车场点,保证每个顾客点都能被服务并且只能被服务一次,并且每个车场出发点出发的车都返回相同的初始车场返回点;
S12:对原始算例数据进行可视化操作,以适当的统计分析方法对导入的数据进行分析,提供一个数据的可视化页面和当前时间的解决方案,便于用户对数据的观察。
3.根据权利要求1所述的动态车辆路径全链路问题分析与模型求解方法,其特征在于,S2具体包括:
S21:根据当前时间和上周期的解决方案,更新当前车辆位置,结合当前的动态订单数据,完成数据更新过程;
S22:根据每次给出的解决方案计算当前时间下,更新车辆位置、剩余载重、时间窗口等车辆状态信息;加上此时的动态订单数据,形成了新的动态车辆路径问题的实例。
4.根据权利要求1所述的动态车辆路径全链路问题分析与模型求解方法,其特征在于,S3具体包括:
S31:将动态车辆问题进行周期性分解,将每阶段的路况和订单数据和当前车辆所在位置相结合完成数据更新。监听数据更新之后直接进行整合并再次求解,形成动态求解机制。
S32:这样迭代地求解当前问题,更新本次数据,再次求解问题形成了动态车辆路径问题的求解机制。
5.根据权利要求1所述的动态车辆路径全链路问题分析与模型求解方法,其特征在于,S4具体包括:在每次迭代求解中获取不同的解决方案从算法库中选取合适的算法,所述算法库中的算法包括自适应大邻域搜索、变邻域搜索、大邻域搜索、蚁群算法和遗传算法。
6.根据权利要求5所述的动态车辆路径全链路问题分析与模型求解方法,其特征在于,所述自适应大邻域搜索算法的工作流程为:
初始化所有破坏/修复算子的调用概率,求解时间,并且更新车辆动态信息,路况实时情况,以及顾客需求变化,根据模型约束,确定解的结构;
使用贪婪插入启发式获取初始解x;
生成随机数,选择被调用的破坏算子;在以下三种删除启发式中选择一种作为破坏算子:随机删除启发式,最差删除启发式以及相似删除启发式;
使用该破坏算子破坏初始解,生成解x’和被移除的顾客点集合C;
生成随机数,选择被动用的修复算子;在以下三种删除启发式中选择一种作为修复算子:贪婪插入启发式,随机修复启发式以及遗憾插入启发式;
使用该启发式将顾客点集合C重新插入解x’中,生成解x_new;
判断新解x_new是否满足模拟退火准则,若满足,则x_new覆盖x的值;若不满足,舍弃x_new;
如果新解x_new满足模拟退火准则,判断x_new的目标值是否优于历史最优解x_best;
通过本次迭代x_new和x的目标值差距,更新所使用破坏/修复算子的累计适应度,并且更新所有算子的被调用概率;
如果到迭代次数或者运算时间,输出x_best;否则,重复上一步。
7.根据权利要求5所述的动态车辆路径全链路问题分析与模型求解方法,其特征在于,所述变邻域搜索算法的工作流程为:
初始化每一层的邻域,邻域个数记为M,记作Nk(k=1,2,3,…,M),将这些邻域按照从小到大进行排列;
更新车辆动态信息,路况实时情况,以及顾客需求变化;根据模型约束,确定解的结构;
定义初始解x;
用当前解从第一层开始搜索,直到陷入局部最优解x’;
如果x’由于x,用x’更新x,重置k为1;否则,进入下一层搜索(k=k+1);
如果k不小于M,转到更新车辆信息步骤;
输出最终解x。
8.根据权利要求5所述的动态车辆路径全链路问题分析与模型求解方法,其特征在于,所述大邻域搜索算法的工作流程为:
初始化所有破坏/修复算子的调用概率,求解时间;
更新车辆动态信息,路况实时情况,以及顾客需求变化;根据模型约束,确定解的结构;
使用贪婪插入启发式获取初始解x;
使用相似删除启发式作为破坏算子破坏当前解,生成解x’和被移除的顾客点集合C;
使用贪婪插入启发式讲顾客点集合C重新插入解x’中,生成解x_new;
判断新解x_new优于x,则x_new覆盖x的值;若不满足,舍弃x_new;
如果新解x_new优于x_best,判断x_new的目标值是否优于历史最优解x_best;
如果达到迭代次数或者运算时间,输出x_best;否则,重复上述步骤。
9.根据权利要求5所述的动态车辆路径全链路问题分析与模型求解方法,其特征在于,所述蚁群算法的工作流程为:
对相关参数进行初始化,根据模型约束,确定解的结构;
构建解空间:将各个蚂蚁随机地置于不同的出发点,根据两点之间距离以及信息素累积量,计算每个蚂蚁k(k=1,2,3…m)下一个待访问城市,直到所有蚂蚁访问完所有城市;
更新信息素:计算每个蚂蚁经过路径长度Lk(k=1,2,…,m),记录当前迭代次数中的最优解(最短路径);同时,对各个城市连接路径上信息素浓度进行更新;
判断是否终止若iter<itermax,则令iter=iter+1,清空蚂蚁经过路径的记录表,并返回构建解空间步骤;否则,终止计算,输出最优解。
10.根据权利要求9所述的动态车辆路径全链路问题分析与模型求解方法,其特征在于,所述相关参数包括蚁群规模u、信息素重要程度因子α、启发函数重要程度因子β、信息素挥发因子ρ、信息素释放总量Q、最大迭代次数itermax、路况实时情况,顾客需求变化。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211627730.5A CN116227817A (zh) | 2022-12-16 | 2022-12-16 | 一种动态车辆路径全链路问题分析与模型求解方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211627730.5A CN116227817A (zh) | 2022-12-16 | 2022-12-16 | 一种动态车辆路径全链路问题分析与模型求解方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116227817A true CN116227817A (zh) | 2023-06-06 |
Family
ID=86589999
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211627730.5A Pending CN116227817A (zh) | 2022-12-16 | 2022-12-16 | 一种动态车辆路径全链路问题分析与模型求解方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116227817A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117077869A (zh) * | 2023-10-11 | 2023-11-17 | 鱼快创领智能科技(南京)有限公司 | 一种场景化的定制访问顺序的车辆分配及路线规划的方法 |
-
2022
- 2022-12-16 CN CN202211627730.5A patent/CN116227817A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117077869A (zh) * | 2023-10-11 | 2023-11-17 | 鱼快创领智能科技(南京)有限公司 | 一种场景化的定制访问顺序的车辆分配及路线规划的方法 |
CN117077869B (zh) * | 2023-10-11 | 2023-12-19 | 鱼快创领智能科技(南京)有限公司 | 一种场景化的定制访问顺序的车辆分配及路线规划的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Donati et al. | Time dependent vehicle routing problem with a multi ant colony system | |
Cheung et al. | Dynamic routing model and solution methods for fleet management with mobile technologies | |
Vareias et al. | Assessing customer service reliability in route planning with self-imposed time windows and stochastic travel times | |
CN110097218B (zh) | 一种时变环境下无人商品配送方法及系统 | |
Flatberg et al. | Dynamic and stochastic vehicle routing in practice | |
Li et al. | Learning to optimize industry-scale dynamic pickup and delivery problems | |
Ye et al. | Multi-type ant system algorithm for the time dependent vehicle routing problem with time windows | |
Zhang et al. | Bike‐Sharing Static Rebalancing by Considering the Collection of Bicycles in Need of Repair | |
CN115936240B (zh) | 共享单车需求预测与投放调度方法 | |
Elgharably et al. | Stochastic multi-objective vehicle routing model in green environment with customer satisfaction | |
Kheiri et al. | Tackling a VRP challenge to redistribute scarce equipment within time windows using metaheuristic algorithms | |
CN116227817A (zh) | 一种动态车辆路径全链路问题分析与模型求解方法 | |
Zakaria et al. | Car relocation for carsharing service: Comparison of CPLEX and greedy search | |
Wang et al. | Incorporating travel time uncertainty into the design of service regions for delivery/pickup problems with time windows | |
Zhou et al. | A scalable vehicle assignment and routing strategy for real-time on-demand ridesharing considering endogenous congestion | |
Shang et al. | The sorted-waste capacitated location routing problem with queuing time: A cross-entropy and simulated-annealing-based hyper-heuristic algorithm | |
Cai et al. | Dynamic bicycle relocation problem with broken bicycles | |
Kamsopa et al. | Hybrid genetic algorithm for multi-period vehicle routing problem with mixed pickup and delivery with time window, heterogeneous fleet, duration time and rest area | |
Lu et al. | A sample average approximation approach for the stochastic dial-a-ride problem on a multigraph with user satisfaction | |
Guloyan et al. | Optimization of capacitated vehicle routing problem for recyclable solid waste collection using genetic and seed genetic algorithms hybridized with greedy algorithm | |
Chen et al. | Solving a 3-dimensional vehicle routing problem with delivery options in city logistics using fast-neighborhood based crowding differential evolution algorithm | |
Zhen et al. | Bus tour-based routing and truck deployment for small-package shipping companies | |
Bosman et al. | Computationally intelligent online dynamic vehicle routing by explicit load prediction in an evolutionary algorithm | |
CN114970103A (zh) | 考虑配送员经验与随机行驶时间的即时配送路径优化方法 | |
CN110941773A (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 |