CN109948854B - 一种基于多目标优化的城际网约车订单分配方法 - Google Patents
一种基于多目标优化的城际网约车订单分配方法 Download PDFInfo
- Publication number
- CN109948854B CN109948854B CN201910217057.XA CN201910217057A CN109948854B CN 109948854 B CN109948854 B CN 109948854B CN 201910217057 A CN201910217057 A CN 201910217057A CN 109948854 B CN109948854 B CN 109948854B
- Authority
- CN
- China
- Prior art keywords
- order
- time
- orders
- scheme
- distribution
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 53
- 238000005457 optimization Methods 0.000 title claims abstract description 33
- 230000007246 mechanism Effects 0.000 claims abstract description 30
- 238000010276 construction Methods 0.000 claims abstract description 17
- 238000012545 processing Methods 0.000 claims abstract description 13
- 230000008569 process Effects 0.000 claims description 18
- 230000003044 adaptive effect Effects 0.000 claims description 3
- 230000001174 ascending effect Effects 0.000 claims description 3
- 238000012163 sequencing technique Methods 0.000 claims description 3
- 238000013473 artificial intelligence Methods 0.000 abstract description 2
- 238000012360 testing method Methods 0.000 description 5
- 238000003780 insertion Methods 0.000 description 3
- 230000037431 insertion Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000035772 mutation Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 230000029305 taxis Effects 0.000 description 1
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明涉及一种基于多目标优化的城际网约车订单分配方法,涉及人工智能和调度规划两大技术领域。本发明的技术方案包含以下五个要点:一、将城际网约车订单分配问题建模为一个多目标问题,全面真实地反映订单分配问题的本质;二、提出一种基于时间序列和距离信息的启发式构造方法,用于生成满足约束的订单分配方案;三、引入基于邻域操作的局部搜索,对分配方案进行迭代优化;四、提出一种动态订单分配机制,用于处理动态出现的新订单;五、提出一种自适应订单分配方案选择机制,根据不同的场景自适应地选择最佳的分配方案。本发明通过将城际网约车订单分配问题的特征与多目标优化方法相结合,能够为该问题提供一种高效可行的解决方法。
Description
技术领域
本发明涉及人工智能和调度规划两大技术领域,提出了一种基于多目标优化的城际网约车订单分配方法,该方法可为城际网约车服务提供同时满足多个需求的订单分配方案。
背景技术
随着城市的飞速发展,城市交通的短板日益浮现,尤其是城市交通中公路客运对于乘客来说没有足够的自主性以及个性化。虽然城市交通作为一种方式已经很完善了,但是对于提倡绿色出行的当下,已有的城市交通已经无法很好的满足人们的需求,一板一眼的城市交通无法满足当前追求定制化、个性化出行方面的需求。网约车平台将人、出租车和私家车连接起来,形成一个“人-车”自主连接的服务网,满足了人们的需求并且极大的填补了城市交通的短板。如何高效智能地分配客户的订单不仅影响出行客户的体验,也会影响公司和司机的收益。
不同于常见的拼车服务,城际网约车服务主要是为了解决特定城市之间的个性化出行难题。在城际网约车服务中,订单分配问题是指在满足一定的约束条件和特定城市之间的客户出行需求的情况下,对从某个城市出发到达目标城市的一系列客户订单安排合理的接送路线,从而减少车辆的空载率,缩短客户的等待时间,减少司机的绕行距离等目标的优化问题。
城际网约车订单分配问题属于车辆路径问题(Vehicle Routing Problem,VRP)的一种变形。目前的车辆路径问题的解决方法主要分为传统优化和智能优化方法两类。由于该问题是一个NP难问题,当客户订单数量足够多时,传统的优化方法无法在有效的时间给出高效的解决方案。因此,国内外的专家学者把研究精力主要用在智能优化方法上面,并针对不同的车辆路径问题提出了许多有效的解决方法。目前大部分的研究都将车辆路径问题作为一个单目标问题来处理。然而,车辆路径问题的约束和问题属性表明了其本质是一个多目标问题。
作为车辆路径问题的一个变形,城际网约车订单分配问题同样具备多目标强约束的问题属性。目前大多数的订单分配方法是针对单目标问题进行开发的,并不能很好地利用问题的多目标属性来设计高效合理的分配方案。因此,如何为城际网约车服务提供一种高效的订单分配方法,具有非常重要的现实意义和应用前景。
本发明所涉及的城际网约车服务主要是针对公路客运市场,将当前互联网技术与租车行业相结合,弥补客运公司在个性化出行方面的不足,催生出网约个性化出行服务,促进公路客运个性化出行,是互联网与传统的交通出行行业的深度融合,是一种基于互联网+的B2B模式。在城际网约车行业中,对于拼车客户订单的分配是网约车服务中的关键问题之一。
发明内容
本发明的目的在于克服现有技术的不足,提出一种高效的基于多目标优化的城际网约车订单分配方法,不仅能够有效地处理城际网约车的订单分配任务,而且可以利用多目标优化方法为城际网约车服务提供同时满足多个需求的高质量的分配方案集合。
为了实现上述目的,本发明的技术方案是:
一种基于多目标优化的城际网约车订单分配方法,包括以下步骤:
1)根据城际网约车订单分配的实际需求,将订单分配问题建模为一个包含两个目标的多目标优化问题minF={fd,ft};该模型的各个目标定义如下:
其中,fd用于计算当前分配时间段内所有路径的行驶距离之和,Di表示第i条路径车辆接送乘客的总行驶距离,|R|表示当前分配时段内总的路径数目;ft用于计算所有乘客的等待时间之和,Wi表示第i条路径车辆上的乘客的总等待时间;
2)判断当前是否存在未处理的订单;若存在,则进入步骤3);否则,进入等待状态,直到新订单的到来,并进入步骤3);
3)通过基于时间序列和距离信息的启发式构造方法为满足条件的订单生成多个订单分配方案,并将非占优方案保存到外部存档解集Archive中;
4)对于Archive中的所有分配方案,利用基于邻域操作的局部搜索产生新的分配方案;
5)评估这些新的分配方案,并利用存档更新策略,将生成的新的订单分配方案用于更新Archive;
6)判断当前的分配时间片段是否已用完,即CT+IT≥T_firstorder是否成立;其中,CT表示当前时间;IT表示分配的时间片段;T_firstorde表示当前分配时间片段内的订单的最早预约时间;如果成立,则进入步骤8);否则,进入步骤7);
7)判断是否有新的订单出现;如果有,则利用动态订单分配机制将满足要求的订单***到Archive中的分配方案中,根据多目标模型重新评估所有新的分配方案,并利用存档更新策略,更新Archive,并返回步骤6);否则,返回步骤4);
8)利用自适应订单分配方案选择机制从Archive集合中选择一个订单分配方案,并将方案中的每一条路径序列分配给距离该路径序列第一个客户点最近的车辆及司机;
9)将已分配的订单从订单队列S中删除,将分配了订单的车辆状态标记为“执行任务”;
10)将Archive集合设为空集,返回步骤2)。
优选的,第i条路径车辆接送乘客的总行驶距离表示为:
Di 下表示第i条路径车辆在目标城市送客户下车的行驶距离,表示如下:
其中,表示第i条路径上第k个客户点与第k+1个客户点在出发城市的最短行驶距离;表示第i条路径上第k个客户点与第k+1个客户点在目标城市的最短行驶距离;表示第i条路径上第Ni个客户点与出城点OP在出发城市的最短行驶距离,表示第i条路径上进城点IP与第Ni+1个客户点的目标城市的最短行驶距离。
优选的,路径i的乘客的总等待时间为:
其中, 表示第i条路径中的车辆预计离开第j个客户点的时间,是第i条路径中的车辆预计到达第j个客户点的时间,是第i条路径中的第j个客户点的预约时间,表示车辆在和之间预计的行驶时间,表示第i条路径中的车辆到达第j个客户点后预计的等待时间。
优选的,所述基于时间序列和距离信息的启发式构造方法,包括如下步骤:
31)根据客户订单预约的出发时间,对所有订单按出发时间进行升序排序,从而形成一个订单队列S;预约出发时间最早的订单排在队列的最前面;
32)提取队列S中第一个订单FO,并对S中的订单从前往后进行遍历;根据时间约束,把所有与FO的预约出发时间间隔小于minTD的订单加入到FO的朋友序列Fri中;所述朋友序列包括FO订单;
34)在Fri的所有订单中随机选择R个订单作为中心点,每个订单组成一条不同的路径,并根据订单的上下车客户点位置,计算Fri中其他订单到这R个订单的距离,即 其中,表示订单i与订单j在出发城市的上车客户点之间的最短距离;表示订单i与订单j在目标城市的下车客户点之间的最短行驶距离;
35)根据得到的距离信息,依次将Fri中的其他订单分配到距离其最近的中心点所在的路径中;如果该路径的订单数量已超过Q,则将其分配到距离第二近的订单所在的路径中;以此类推,直到所有的订单都分配到相应的路径中,从而形成一个订单分配方案;
36)根据订单分配问题的多目标模型,对该分配方案进行评估;
37)利用存档更新策略,将该分配方案用于更新外部存档Archive。
优选的,所述基于邻域操作的局部搜索,包括如下步骤:
41)从外部存档Archive中随机选择一个未进行过局部搜索的分配方案,并标记为“已搜索”;
42)从局部搜索1、局部搜索2和局部搜索3中随机选择一个搜索操作;
43)分别针对目标1和2产生两个新的分配方案;
44)若外部分存档中还存在未进行过局部搜索的分配方案,则返回41);否则,结束局部搜索过程;
其中,局部搜索1表示从一个分配方案选择的两条路径中各随机删除一个订单,然后将这两个订单重新***到该分配方案的最佳位置;局部搜索2表示将一个分配方案选择的两条路径的所有订单全部删除,然后将它们重新***到该分配方案的最佳位置;局部搜索3表示针对当前的分配方案,从外部存档中随机选择一个不同于自身的分配方案,从这两个方案中各选择一条路径进行交换,然后将当前方案中重复出现在未交换路径上的订单删除,并将未出现在该方案中的订单重新***到最佳的位置;目标1表示使得总行驶距离减少得最多的位置;目标2表示使得总等待时间减少得最多的位置。
优选的,采用动态订单分配机制来处理新出现的订单,具体过程如下:
71)规定开始执行订单分配任务的时间T_start比队列S第一个订单的预约时间T_firstorder早Etime分钟,即T_firstorder-T_start=Etime,且Etime>IT;其中,T_firstorder为当前分配时间片段内的最早预约时间,IT为分配的时间片段;
72)规定当天的出行订单的预约时间必须晚于订单提交时间Pretime分钟以上,且Pretime≥Etime;
73)将客户提交的新订单按照其预约的出发时间***到订单队列S中;
74)判断新提交的订单是否位于当前处理订单的时间范围内;根据基于时间序列和距离信息的启发式构造方法,处理的订单为队列的第一个订单以及与其预约时间间隔小于minTD的所有订单;即当前处理订单的时间范围为[T_firstorder,T_firstorder+minDT];
75)如果新的订单满足要求,则将新的订单***到Archive每一个分配方案中未满载且满足的路径i上;由于新订单处于当前任务的处理时间范围内,它们必然会满足时间约束;如果分配方案中没有满足容量约束的路径,即 则在分配方案中增加一条新的路径,并把新订单***到新的路径中;其中,qnew表示新订单的客户数;
76)如果新提交的订单的预约时间不在当前任务的处理范围内,则不处理该订单,且不改变当前的分配任务。
优选的,自适应订单分配方案选择机制包括:
正常的出行时间段采用随机选择和总行驶距离优先的机制;如果rand()<0.5,则从Archive中随机选择一个分配方案;否则,从Archive中选择总行驶距离值fd最小的分配方案;中,rand()为随机产生的一个位于0和1之间的实数;
上下班高峰时间段以及节假日时间段采用总等待时间优先的机制,减少堵车带来的影响,即从Archive中选择总等待时间值ft最小的分配方案。
优选的,所述存档更新策略包括:
如果Archive为空,则将产生的分配方案Xnew加入到Archive中;
如果Archive非空,则将产生的分配方案Xnew与已有的分配方案进行占优比较;如果存在已有方案占优Xnew,或者与Xnew相同,则将Xnew丢弃;如果Xnew占优已有的分配方案,则将被占优的方案全部删除,并将Xnew加入到Archive中;如果Xnew与所有的分配方案互不占优,则将Xnew加入到Archive中。
由上述对本发明的描述可知,与现有技术相比,本发明具有如下有益效果:
本发明一种基于多目标优化的城际网约车订单分配方法将城际网约车订单分配问题定义为一个包含两个目标的多目标问题,更加全面真实地反映订单分配问题的本质;通过基于时间序列和距离信息的启发式构造方法将订单分配任务分割成多个不同时间片段的子任务,并为当前的订单分配任务构造多个非占优的分配方案;然后,利用基于邻域操作的局部搜索对非占优分配方案进行迭代优化,同时采用动态订单分配机制处理新出现的客户订单;最后,根据不同的出行场景,利用自适应订单分配方案选择机制选择一个最佳的订单分配方案用于执行当前的网约车服务。这些机制的有效结合,不仅能够有效地处理城际网约车的订单分配任务,而且可以利用多目标优化方法为城际网约车服务提供同时满足多个需求的高质量的分配方案集合。
以下结合附图及实施例对本发明作进一步详细说明,但本发明的一种基于多目标优化的城际网约车订单分配方法不局限于实施例。
附图说明
图1为本发明一种基于多目标优化的城际网约车订单分配方法的流程图。
具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明针对城际网约车订单分配问题,设计了一种基于多目标优化的订单分配方法。本发明的技术方案包含以下五个要点:一、将城际网约车订单分配问题定义为一个包含两个目标的多目标问题,从而更加全面真实地反映订单分配问题的本质;二、提出一种基于时间序列和距离信息的启发式构造方法,用于产生满足约束的订单分配方案;三、提出一种动态订单分配机制,将满足当前约束的新到来的客户订单***到当前的分配方案中;四、引入基于邻域操作的局部搜索,用于进一步提升订单分配方案的质量;五、提出一种自适应订单分配方案选择机制,根据不同的场景自适应地从多个分配方案中选择最佳的方案。
本发明提出的基于多目标优化的城际网约车订单分配方法,包括如下步骤:
1)根据城际网约车订单分配的实际需求,将订单分配问题建模为一个包含两个目标的多目标优化问题:minF={fd,ft}。该模型的各个目标定义如下:
其中,fd用于计算当前分配时间段内所有路径的行驶距离之和,Di表示第i条路径车辆接送乘客的总行驶距离,|R|表示当前分配时段内总的路径数目;ft用于计算所有乘客的等待时间之和,Wi表示第i条路径车辆上的乘客的总等待时间。
2)判断当前是否存在未处理的订单。若存在,则进入步骤3)。否则,订单分配程序进入等待状态,直到新订单的到来,并进入步骤3)。
3)通过基于时间序列和距离信息的启发式构造方法为满足条件的订单生成多个订单分配方案,对分配方案进行评估,并将非占优方案保存到外部存档解集Archive中。
4)对于Archive中的所有分配方案,利用基于邻域操作的局部搜索产生新的分配方案。
5)评估这些新的分配方案,并利用存档更新策略,将生成的新的订单分配方案用于更新Archive。
6)判断当前任务分配的时间片段是否已用完,即CT+IT≥T_firstorder是否成立(CT:当前时间;IT:分配的时间片段,可根据不同的出行情景设置;T_firstorder:当前分配时间片段内的订单的最早预约时间)。如果成立,则进入步骤8)。否则,进入步骤7)。
7)判断是否有新的订单出现。如果有,则利用动态订单分配机制将满足要求的订单***到Archive中的分配方案中,根据多目标模型重新评估所有新的分配方案,并利用存档更新策略,更新Archive,并返回步骤6)。否则,返回步骤4)。
8)利用自适应订单分配方案选择机制从Archive集合中选择一个订单分配方案,并将方案中的每一条路径序列分配给距离该路径序列第一个客户点最近的车辆及司机。
9)将已分配的订单从订单队列S中删除,将分配了订单的车辆状态标记为“执行任务”。
10)将Archive集合设为空集,返回步骤2)。
下面对本发明的相关方法进行详细描述,总共分为七个部分:分配方案的表示和多目标模型定义、基于时间序列和距离信息的启发式构造方法、基于邻域操作的搜索策略、动态订单分配机制、自适应订单分配方案选择机制、存档更新策略、测试实例与实验结果。
一、分配方案的表示和多目标模型定义
一个分配方案X是由k个路径所组成的集合O={o1,...,ok}来表示的,其中 是一条由包含Ni个订单2Ni个客户点的访问序列构成的路径,表示第i条路径的第j个客户点。由于每一个订单包含该客户在出发城市的上车点和目标城市的下车点,因此,在每一条路径中,每一个订单表示成两个客户点,即该订单的在出发城市的上车点和在目标城市的下车点。在一个分配方案中,任意一个订单的两个客户点仅会出现在一条且同一条路径中。
在城际网约车订单分配问题的多目标模型中,包含了2个不同的优化目标函数,具体定义如下:
1)总行驶距离(fd)
2)总等待时间(ft)
上面描述的两个目标定义中涉及到Di和Wi的计算。下面对其进行详细说明。
1)Di:表示第i条路径车辆接送乘客的总行驶距离,计算过程如下:
在城际网约车的订单分配过程中,本发明只考虑车辆在接送位于同一条路径中的客户点之间的行驶距离。具体地,第i条路径车辆在出发城市接客户上车的行驶距离计算如下:
该路径车辆在目标城市送客户下车的行驶距离计算如下:
其中,其中,表示第i条路径上第k个客户点与第k+1个客户点在出发城市的最短行驶距离;表示第i条路径上第k个客户点与第k+1个客户点在目标城市的最短行驶距离。由于不同的客户点距离出城点和进城点的距离不同,为了更加准确地计算车辆的总行驶距离,在每条路径的上车序列和下车序列之间添加一个出城点OP和进城点IP。另外,由于出发城市和目标城市之间的距离为必要且固定的行驶距离(在本发明中,从一个城市的出城点到另一个城市的进城点之间的最短距离默认是固定的),本发明的总行驶距离的计算只包含该路径车辆接送所有客户上下车的行驶距离,并且将出城点OP和进城点IP的距离设置为dOP,IP=0。这样,每条路径可以表示为
在本发明中,利用城际网约车订单分配方法得到的分配方案只确定了各条路径所分配的订单。在计算行驶距离时,首先调用最短路径算法来获得这些客户点所构成的最短路径。由于网约车的载客数较小(5座或者7座),可使用Dijkstra算法计算出城点与所有客户上车点所构成的最短路径以及进城点与所有客户下车点所构成的最短路径;然后,根据这两条最短路径来确定客户点在路径序列中的位置以及计算该路径车辆总的行驶距离。由于城际网约车订单分配是在车辆开始服务之前进行,两个客户点之间的最短行驶距离受限于当时的交通状况。因此,分配方案的总行驶距离是通过在订单分配算法执行时利用实时的交通数据进行计算得到的。综上所述,第i条路径车辆接送乘客的总行驶距离可以表示为:
2)Wi:表示第i条路径车辆上的乘客的总等待时间,计算过程如下:
设表示第i条路径中的车辆预计离开第j个客户点的时间,是第i条路径中的车辆预计到达第j个客户点的时间,是第i条路径中的第j个客户点的预约时间,表示车辆在和之间预计的行驶时间,表示第i条路径中的车辆到达第j个客户点后预计的等待时间,则路径i的乘客的总等待时间为:
由于城际网约车订单分配是在车辆开始服务之前进行,实际的行驶时间受限于当时的交通状况。因此,分配方案的总等待时间是通过在订单分配算法执行时利用实时的交通数据计算得到的。
另外,在城际网约车订单分配问题的模型中,包含多个约束条件,具体定义如下:
1)容量约束
每一个订单的乘客数不能超过该车辆的最大载客数Q,且同一条路径上分配的所有订单的总乘客数不能超过该车辆的最大载客数Q,即满足:
2)时间约束
为了保证网约车的服务质量,减小乘客在车上的等待时间,规定每条路径上任意两个订单的预约时间的间隔不能超过minTD分钟(在本发明的实际应用中,minTD可根据网络车服务策略或者出行需求来设置,如设为30,45分钟等),即满足:
3)服务约束
在一个分配方案中,任意一个订单的上下车客户点仅会出现在一条且同一条路径中,并且一个订单在出发城市的上车点必须出现在该订单在目的城市的下车点之前。
二、基于时间序列和距离信息的启发式构造方法
在本发明中,采用基于时间序列和距离信息的启发式构造方法来生成初始的订单分配方案集合。具体的步骤如下:
1)根据客户订单预约的出发时间,对所有订单按出发时间进行升序排序,从而形成一个订单队列S。预约出发时间最早的订单排在队列的最前面。
2)提取队列S中第一个订单FO,并对S中的订单从前往后进行遍历。根据时间约束,把所有与FO的预约出发时间间隔小于minTD的订单加入到FO的朋友序列Fri中(包含FO订单)。
5)根据得到的距离信息,依次将Fri中的其他订单分配到距离其最近的中心点所在的路径中。如果该路径的订单数量已超过Q,则将其分配到距离第二近的订单所在的路径中。以此类推,直到所有的订单都分配到相应的路径中,从而形成一个订单分配方案。
6)根据订单分配问题的多目标模型,对该分配方案进行评估。
7)利用存档更新策略,将该分配方案用于更新外部存档Archive。
在上述过程中,α的取值根据Fri中的订单数来设置。若Fri中的订单数过少,(本发明设置为|Fri|<5×Q),则α只取0和1两种情况,并根据上述过程生成相应的分配方案。否则,随机生成α∈[0,1]的值,并根据上述的过程生成相应的分配方案,直至构造2obj-1个非占优的订单分配方案。obj为多目标模型中的目标数。
三、基于邻域操作的局部搜索
在本发明中,采用基于邻域操作的局部搜索用于产生新的分配方案。局部搜索所涉及的邻域操作由两个基本的函数进行定义:选择路径和确定***位置。前者定义了如何从分配方案中选择路径,而后者定义了在路径中***客户点的最佳位置。具体的定义如下:
1)根据不同的优化目标,选择路径的操作如下:
·对于目标1:选择路径序列中的第一个客户上车点之间距离最近的两条路径;
·对于目标2:选择路径序列中的最早的客户预约时间最接近的两条路径;
2)根据不同的优化目标,确定最佳***位置的操作如下:
·对于目标1:使得总行驶距离减少得最多的位置;
·对于目标2:使得总等待时间减少得最多的位置;
根据以上两个基本函数的定义,本发明所采用的基于邻域操作的局部搜索如下:
·局部搜索1:从一个分配方案选择的两条路径中各随机删除一个订单(一对上下车客户点),然后将这两个订单重新***到该分配方案的最佳位置。
·局部搜索2:将一个分配方案选择的两条路径的所有订单全部删除,然后将它们重新***到该分配方案的最佳位置。
·局部搜索3:针对当前的分配方案,从外部存档中随机选择一个不同于自身的分配方案,从这两个方案中各选择一条路径进行交换,然后将当前方案中重复出现在未交换路径上的订单删除,并将未出现在该方案中的订单重新***到最佳的位置。
由于基于时间序列和距离信息的启发式构造过程优先保证了车辆的上座率,所以,以上的局部搜索不会改变原有分配方案的路径数量。局部搜索1和局部搜索2主要通过对原有分配方案进行变异操作来产生新的分配方案,而局部搜索3则是通过不同方案之间的交叉操作来产生新的分配方案。通过以上的定义,本发明的基于邻域操作的局部搜索的具体步骤如下:
1)从外部存档Archive中随机选择一个未进行过局部搜索的分配方案,并标记为“已搜索”;
2)从局部搜索1,2,3中随机选择一个搜索操作;
3)根据相应的定义,分别针对目标1和2产生两个新的分配方案;
4)若外部分存档中还存在未进行过局部搜索的分配方案,则返回1);否则,结束局部搜索过程。
四、动态订单分配机制
由于城际网约车是一个动态预约服务,本发明所解决的订单分配问题可以看作是一个动态的多目标问题。通过基于时间序列和距离信息的构造方法对已有订单进行分配的基础上,本发明采用了动态订单分配机制来处理新出现的订单,具体过程如下:
1)规定开始执行订单分配任务的时间(T_start)比队列S第一个订单的预约时间(T_firstorder)早Etime分钟,即T_firstorder-T_start=Etime,且Etime>IT(T_firstorder为当前分配时间片段内的最早预约时间,IT为分配的时间片段)。
2)规定当天的出行订单的预约时间必须晚于订单提交时间Pretime分钟以上,且Pretime≥Etime(Pretime的设置可根据车辆的运营能力来制定)。
3)将客户提交的新订单按照其预约的出发时间***到订单队列S中。
4)判断新提交的订单是否位于当前处理订单的时间范围内。根据基于时间序列和距离信息的启发式构造方法,处理的订单为队列的第一个订单以及与其预约时间间隔小于minTD的所有订单。所以,当前处理订单的时间范围为[T_firstorder,T_firstorder+minDT]。
5)如果新的订单满足要求,则将新的订单(设新订单的客户数为qnew)***到Archive每一个分配方案中未满载且满足的路径i上。由于新订单处于当前任务的处理时间范围内,它们必然会满足时间约束。如果分配方案中没有满足容量约束的路径,即则在分配方案中增加一条新的路径,并把新订单***到新的路径中。
6)如果新提交的订单的预约时间不在当前任务的处理范围内,则不处理该订单,且不改变当前的分配任务。
五、自适应订单分配方案选择机制
由于将城际网约车订单分配问题定义为一个多目标优化问题,最终会得到多个非占优的分配方案。为了能够更好地根据当前场景进行订单分配,本发明采用自适应订单分配方案选择机制,从Archive集合的多个分配方案中选择一个作为最终的方案。根据不同的场景,制定的选择机制如下:
·场景1:正常的出行时间段(除了上下班高峰以及节假日时间)
采用随机选择和总行驶距离优先的机制,即:
如果rand()<0.5,则从Archive中随机选择一个分配方案;
否则,从Archive中选择总行驶距离值(fd)最小的分配方案;
其中,rand()为随机产生的一个位于0和1之间的实数。
·场景2:上下班高峰时间段以及节假日时间段(包含放假前一天和假期结束前一天)
采用总等待时间优先的机制,减少堵车带来的影响,即从Archive中选择总等待时间值(ft)最小的分配方案。
六、存档更新策略
在多目标城际网约车订单分配问题中,分配方案之间的比较是通过多目标占优关系来进行的。本发明所涉及的占优关系的定义如下:对于订单分配方案X和Y,如果
1)对于所有的目标值,fj(X)≤fj(Y),j=1,2;
2)至少存在一个j,使得fj(X)<fj(Y)。
同时满足以上两个条件,则称X占优Y;否则,则称X和Y互不占优,X和Y是非占优解。
根据上述占优关系的定义,本发明所解决的多目标城际网约车订单分配问题的存档更新策略如下:
1)如果Archive为空,则将产生的分配方案Xnew加入到Archive中;
2)如果Archive非空,则将产生的分配方案Xnew与已有的分配方案进行占优比较。如果存在已有方案占优Xnew,或者与Xnew相同,则将Xnew丢弃;如果Xnew占优已有的分配方案,则将被占优的方案全部删除,并将Xnew加入到Archive中;如果Xnew与所有的分配方案互不占优,则将Xnew加入到Archive中。
七、测试案例与实验结果
本发明提出的基于多目标优化的城际网约车订单分配方法的流程图如图1所示。为了测试提出订单分配方法的有效性,使用了某城际网约车平台的真实订单数据进行测试。测试数据库中的订单情况如下:某天从A城市到B城市的1420个订单,4种不同的订单客户数量需求和2种时间窗类型。其中客户数需求为:1,2,3,4。2种时间窗类型:[6:00,23:00]和[23:00,6:00]。第一种时间窗类型表示从凌晨6点至深夜23点,这个时间窗内的订单为本发明提出的方法需要进行处理的订单。第二种时间窗类型表示从深夜23点至第二天凌晨6点,处于该类型时间窗内的订单作为包车订单进行单独处理。
通过对1420个订单进行动态地模拟,并与该公司专业调度客服进行人工调整的分配方案进行对比,本发明提出的分配方法在总行驶距离和总等待时间方面均有明显下降,并且在上座率方面也有显著的提升。综上所述,本发明提出的方法能够高效智能地处理城际网约车的订单分配问题。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (5)
1.一种基于多目标优化的城际网约车订单分配方法,其特征在于,包括以下步骤:
1)根据城际网约车订单分配的实际需求,将订单分配问题建模为一个包含两个目标的多目标优化问题minF={fd,ft};该模型的各个目标定义如下:
其中,fd用于计算当前分配时间段内所有路径的行驶距离之和,Di表示第i条路径车辆接送乘客的总行驶距离,|R|表示当前分配时段内总的路径数目;ft用于计算所有乘客的等待时间之和,Wi表示第i条路径车辆上的乘客的总等待时间;
2)判断当前是否存在未处理的订单;若存在,则进入步骤3);否则,进入等待状态,直到新订单的到来,并进入步骤3);
3)通过基于时间序列和距离信息的启发式构造方法为满足条件的订单生成多个订单分配方案,并将非占优方案保存到外部存档解集Archive中;
4)对于Archive中的所有分配方案,利用基于邻域操作的局部搜索产生新的分配方案;
5)评估这些新的分配方案,并利用存档更新策略,将生成的新的订单分配方案用于更新Archive;
6)判断当前的分配时间片段是否已用完,即CT+IT≥T_firstorder是否成立;其中,CT表示当前时间;IT表示分配的时间片段;T_firstorde表示当前分配时间片段内的订单的最早预约时间;如果成立,则进入步骤8);否则,进入步骤7);
7)判断是否有新的订单出现;如果有,则利用动态订单分配机制将满足要求的订单***到Archive中的分配方案中,根据多目标模型重新评估所有新的分配方案,并利用存档更新策略,更新Archive,并返回步骤6);否则,返回步骤4);
8)利用自适应订单分配方案选择机制从Archive集合中选择一个订单分配方案,并将方案中的每一条路径序列分配给距离该路径序列第一个客户点最近的车辆及司机;
9)将已分配的订单从订单队列S中删除,将分配了订单的车辆状态标记为“执行任务”;
10)将Archive集合设为空集,返回步骤2);
所述基于时间序列和距离信息的启发式构造方法,包括如下步骤:
31)根据客户订单预约的出发时间,对所有订单按出发时间进行升序排序,从而形成一个订单队列S;预约出发时间最早的订单排在队列的最前面;
32)提取队列S中第一个订单FO,并对S中的订单从前往后进行遍历;根据时间约束,把所有与FO的预约出发时间间隔小于minTD的订单加入到FO的朋友序列Fri中;所述朋友序列包括FO订单;其中,minTD根据网络车服务策略或者出行需求来设置;
34)在Fri的所有订单中随机选择R个订单作为中心点,每个订单组成一条不同的路径,并根据订单的上下车客户点位置,计算Fri中其他订单到这R个订单的距离,即其中,表示订单i与订单j在出发城市的上车客户点之间的最短距离;表示订单i与订单j在目标城市的下车客户点之间的最短行驶距离;其中,α的取值根据Fri中的订单数来设置,若|Fri|<5×Q,则α只取0和1两种情况,否则,随机生成α∈[0,1]的值;
35)根据得到的距离信息,依次将Fri中的其他订单分配到距离其最近的中心点所在的路径中;如果该路径的订单数量已超过Q,则将其分配到距离第二近的订单所在的路径中;以此类推,直到所有的订单都分配到相应的路径中,从而形成一个订单分配方案;
36)根据订单分配问题的多目标模型,对该分配方案进行评估;
37)利用存档更新策略,将该分配方案用于更新外部存档Archive;
采用动态订单分配机制来处理新出现的订单,具体过程如下:
71)规定开始执行订单分配任务的时间T_start比队列S第一个订单的预约时间T_firstorder早Etime分钟,即T_firstorder-T_start=Etime,且Etime>IT;其中,T_firstorder为当前分配时间片段内的最早预约时间,IT为分配的时间片段;
72)规定当天的出行订单的预约时间必须晚于订单提交时间Pretime分钟以上,且Pretime≥Etime;
73)将客户提交的新订单按照其预约的出发时间***到订单队列S中;
74)判断新提交的订单是否位于当前处理订单的时间范围内;根据基于时间序列和距离信息的启发式构造方法,处理的订单为队列的第一个订单以及与其预约时间间隔小于minTD的所有订单;即当前处理订单的时间范围为[T_firstorder,T_firstorder+minDT];
75)如果新的订单满足要求,则将新的订单***到Archive每一个分配方案中未满载且满足的路径i上;由于新订单处于当前任务的处理时间范围内,它们必然会满足时间约束;如果分配方案中没有满足容量约束的路径,即则在分配方案中增加一条新的路径,并把新订单***到新的路径中;其中,new表示新订单的客户数;
76)如果新提交的订单的预约时间不在当前任务的处理范围内,则不处理该订单,且不改变当前的分配任务;
自适应订单分配方案选择机制包括:
正常的出行时间段采用随机选择和总行驶距离优先的机制;如果rand()<0.5,则从Archive中随机选择一个分配方案;否则,从Archive中选择总行驶距离值fd最小的分配方案;中,rand()为随机产生的一个位于0和1之间的实数;
上下班高峰时间段以及节假日时间段采用总等待时间优先的机制,减少堵车带来的影响,即从Archive中选择总等待时间值ft最小的分配方案。
4.根据权利要求1所述的基于多目标优化的城际网约车订单分配方法,其特征在于,所述基于邻域操作的局部搜索,包括如下步骤:
41)从外部存档Archive中随机选择一个未进行过局部搜索的分配方案,并标记为“已搜索”;
42)从局部搜索1、局部搜索2和局部搜索3中随机选择一个搜索操作;
43)分别针对目标1和2产生两个新的分配方案;
44)若外部分存档中还存在未进行过局部搜索的分配方案,则返回41);否则,结束局部搜索过程;
其中,局部搜索1表示从一个分配方案选择的两条路径中各随机删除一个订单,然后将这两个订单重新***到该分配方案的最佳位置;局部搜索2表示将一个分配方案选择的两条路径的所有订单全部删除,然后将它们重新***到该分配方案的最佳位置;局部搜索3表示针对当前的分配方案,从外部存档中随机选择一个不同于自身的分配方案,从这两个方案中各选择一条路径进行交换,然后将当前方案中重复出现在未交换路径上的订单删除,并将未出现在该方案中的订单重新***到最佳的位置;目标1表示使得总行驶距离减少得最多的位置;目标2表示使得总等待时间减少得最多的位置。
5.根据权利要求1所述的基于多目标优化的城际网约车订单分配方法,其特征在于,所述存档更新策略包括:
如果Archive为空,则将产生的分配方案Xnew加入到Archive中;
如果Archive非空,则将产生的分配方案Xnew与已有的分配方案进行占优比较;如果存在已有方案占优Xnew,或者与Xnew相同,则将Xnew丢弃;如果Xnew占优已有的分配方案,则将被占优的方案全部删除,并将Xnew加入到Archive中;如果Xnew与所有的分配方案互不占优,则将Xnew加入到Archive中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910217057.XA CN109948854B (zh) | 2019-03-21 | 2019-03-21 | 一种基于多目标优化的城际网约车订单分配方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910217057.XA CN109948854B (zh) | 2019-03-21 | 2019-03-21 | 一种基于多目标优化的城际网约车订单分配方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109948854A CN109948854A (zh) | 2019-06-28 |
CN109948854B true CN109948854B (zh) | 2022-07-01 |
Family
ID=67010451
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910217057.XA Active CN109948854B (zh) | 2019-03-21 | 2019-03-21 | 一种基于多目标优化的城际网约车订单分配方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109948854B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110458310A (zh) * | 2019-07-24 | 2019-11-15 | 欧拉信息服务有限公司 | 网约车订单处理方法、设备及终端设备 |
CN112288233B (zh) * | 2020-09-29 | 2023-09-12 | 南京大学 | 适于乘客等待时间分布随时间变化的网约车订单分配方法 |
CN112001570B (zh) * | 2020-09-29 | 2021-07-09 | 北京嘀嘀无限科技发展有限公司 | 数据处理方法、装置、电子设备和可读存储介质 |
CN113361916A (zh) * | 2021-06-04 | 2021-09-07 | 付鑫 | 一种考虑截单情景的多模式共享出行融合调度优化*** |
CN114723125B (zh) * | 2022-04-01 | 2024-06-28 | 华侨大学 | 一种结合深度学习和多任务优化的城际车订单分配方法 |
CN117593043B (zh) * | 2024-01-16 | 2024-04-09 | 华侨大学 | 城际网约车辆未来短期时刻分布估计方法、装置及设备 |
CN117808273B (zh) * | 2024-02-29 | 2024-05-31 | 华侨大学 | 乘客出发时刻协同与阶段反馈的城际拼车调度方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106651043A (zh) * | 2016-12-28 | 2017-05-10 | 中山大学 | 一种求解多目标多车场带时间窗车辆路径问题的智能算法 |
CN109034481A (zh) * | 2018-07-31 | 2018-12-18 | 北京航空航天大学 | 一种基于约束规划的带时间窗车辆路径问题建模及优化方法 |
JP2019028992A (ja) * | 2017-07-28 | 2019-02-21 | 株式会社日立製作所 | 配送車両の配送計画生成方法、装置およびシステム |
-
2019
- 2019-03-21 CN CN201910217057.XA patent/CN109948854B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106651043A (zh) * | 2016-12-28 | 2017-05-10 | 中山大学 | 一种求解多目标多车场带时间窗车辆路径问题的智能算法 |
JP2019028992A (ja) * | 2017-07-28 | 2019-02-21 | 株式会社日立製作所 | 配送車両の配送計画生成方法、装置およびシステム |
CN109034481A (zh) * | 2018-07-31 | 2018-12-18 | 北京航空航天大学 | 一种基于约束规划的带时间窗车辆路径问题建模及优化方法 |
Non-Patent Citations (3)
Title |
---|
A Local Search-Based Multiobjective Optimization Algorithm for Multiobjective Vehicle Routing Problem With Time Windows;Ying Zhou et al.;《IEEE Systems Journal》;20140203;第9卷(第3期);全文 * |
基于多目标决策的生鲜电商联合配送车辆路径优化研究;王娇;《中国优秀硕士学位论文全文数据库 经济与管理科学辑》;20180516(第06期);全文 * |
车辆路径规划的连续多目标优化模型设计及其求解方法;王杰;《中国优秀硕士学位论文全文数据库 工程科技Ⅱ辑》;20131116(第S2期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN109948854A (zh) | 2019-06-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109948854B (zh) | 一种基于多目标优化的城际网约车订单分配方法 | |
US11614751B2 (en) | System for on-demand high-capacity ride-sharing via dynamic trip-vehicle assignment and related techniques | |
CN108417031B (zh) | 一种基于Agent仿真的智能停车泊位预约策略优化方法 | |
CN107103383B (zh) | 一种基于打车热点的动态拼车调度方法 | |
CN109657820B (zh) | 一种可预约的出租车匹配方法 | |
CN107170282B (zh) | 一种预约泊车的调度方法及*** | |
US20120078672A1 (en) | Efficient Automated Ride Sharing System | |
CN111882107B (zh) | 一种基于自动驾驶共享出租车***的司乘匹配方法 | |
JP2009527857A (ja) | 輸送スケジューリングシステム | |
CN110111601B (zh) | 一种基于两阶段选择的区域停车位动态分配方法 | |
CN114723125B (zh) | 一种结合深度学习和多任务优化的城际车订单分配方法 | |
JP7057471B2 (ja) | 乗客とルートのスケジューリングのための輸送システムと方法 | |
CN112465211A (zh) | 一种轨道交通列车满载率控制方法及应用 | |
CN115423168A (zh) | 一种考虑服务稳定性的定制公交路网优化方法及*** | |
Wirasinghe et al. | Determination of the number and locations of time points in transit schedule design—Case of a single run | |
Liu et al. | An agent-based simulation model for shared autonomous taxi system | |
Gonzales et al. | Optimizing ADA Paratransit Operation with Taxis and Ride Share Programs | |
Ding et al. | Dynamic dispatch of connected taxis for large-scale urban road networks with stochastic demands: An MFD-enabled hierarchical and cooperative approach | |
CN115186905A (zh) | 一种用于城际网约车路径规划的多任务优化方法及*** | |
CN115729106A (zh) | 一种多时间约束下行驶里程优化的轻量化拼车调度方法 | |
CN115879658A (zh) | 定制公交路径优化方法、***、存储介质及设备 | |
Lioris et al. | Evaluation of collective taxi systems by discrete-event simulation | |
CN114331502A (zh) | 一种基于次价定价机制的预约拼车出行***及方法 | |
Van Son et al. | Prediction-based optimization for online People and Parcels share a ride taxis | |
Wu et al. | Multi-agent deep reinforcement learning based real-time planning approach for responsive customized bus routes |
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 |