[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

CN104951848A - Real-time car-pooling matching method - Google Patents

Real-time car-pooling matching method Download PDF

Info

Publication number
CN104951848A
CN104951848A CN201510315033.XA CN201510315033A CN104951848A CN 104951848 A CN104951848 A CN 104951848A CN 201510315033 A CN201510315033 A CN 201510315033A CN 104951848 A CN104951848 A CN 104951848A
Authority
CN
China
Prior art keywords
driver
passenger
share
car
pickup
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
Application number
CN201510315033.XA
Other languages
Chinese (zh)
Inventor
曹斌
赵立为
范菁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang University of Technology ZJUT
Original Assignee
Zhejiang University of Technology ZJUT
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhejiang University of Technology ZJUT filed Critical Zhejiang University of Technology ZJUT
Priority to CN201510315033.XA priority Critical patent/CN104951848A/en
Publication of CN104951848A publication Critical patent/CN104951848A/en
Pending legal-status Critical Current

Links

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

一种实时拼车匹配方法,包括如下步骤:步骤1实时拼车场景建模;步骤2,实时拼车匹配,步骤2包括:步骤21基于欧氏距离的乘客最大等待时间筛选策略;步骤22基于欧式距离的最大拼车费用筛选策略;步骤23渐进式Return筛选;步骤24渐进式Pickup筛选。

A real-time carpool matching method, comprising the steps of: step 1 real-time carpool scene modeling; step 2, real-time carpool matching, step 2 includes: step 21 passenger maximum waiting time screening strategy based on Euclidean distance; step 22 based on Euclidean distance Maximum carpool cost screening strategy; Step 23 progressive Return screening; Step 24 progressive Pickup screening.

Description

一种实时拼车匹配方法A real-time carpool matching method

技术领域 technical field

本发明属于基于位置服务(LBS,Location Based Service)的移动应用领域,主要针对当前城市车辆激增引起的一系列交通拥堵、人们出行困难等问题,提出一种实时的动态拼车匹配方法,可自动的将愿意进行拼车的乘客与司机进行匹配,进而以拼车的形式减缓上述交通问题。 The invention belongs to the mobile application field of location-based service (LBS, Location Based Service), and mainly aims at a series of traffic jams caused by the surge of urban vehicles, people's travel difficulties, etc., and proposes a real-time dynamic carpooling matching method, which can automatically Match passengers who are willing to carpool with drivers, and then alleviate the above traffic problems in the form of carpooling.

背景技术 Background technique

拼车作为解决城市交通问题的有效手段,有着方式灵活,政府投入成本少,降低空车率,减少环境污染,分担出行费用等优势。近年来,随着智能手机和基于位置的服务(LBS)的普及以及相关政策上的逐渐放开,拼车问题以其良好的前景获得了工业界,学术界以及投资者们的一致关注。 As an effective means to solve urban traffic problems, carpooling has the advantages of flexible methods, low government investment costs, reduced empty car rates, reduced environmental pollution, and shared travel costs. In recent years, with the popularization of smartphones and location-based services (LBS) and the gradual liberalization of related policies, carpooling has attracted unanimous attention from industry, academia and investors with its promising prospects.

在工业界,大部分拼车系统使用模式为:用户选择拼车的角色,输入拼车的相关信息如起点、终点、时间和费用等。之后系统有几种处理方法:(1)等待其他用户手动配对并电话联系确认,这样做对拼车双方来说十分不便。(2)与打车软件类似,系统选择乘客起点附近的K个最邻近司机,并将离乘客最近的司机返回给乘客。这样找到的司机可能终点离乘客终点很远,导致拼车费用高;(3)系统只选择有重合路线的司机与乘客。这样无疑大大减少了拼车成功的概率;(4)系统允许司机指定乘客的上下客地点,因此乘客可能需要在上车前或下车后步行,这样的拼车方式在实际应用中不够灵活。 In the industry, most of the carpooling systems are used in the following mode: the user selects the carpooling role, and enters carpooling related information such as starting point, destination, time and cost. Afterwards, the system has several processing methods: (1) Waiting for other users to manually pair and call for confirmation, which is very inconvenient for both carpooling parties. (2) Similar to taxi-hailing software, the system selects the K closest drivers near the passenger's starting point, and returns the driver closest to the passenger to the passenger. The driver found in this way may have a very far end point from the passenger end point, resulting in high carpooling costs; (3) the system only selects drivers and passengers with overlapping routes. This undoubtedly greatly reduces the probability of successful carpooling; (4) the system allows the driver to specify the pick-up and drop-off locations of passengers, so passengers may need to walk before getting on or after getting off the car. Such a carpooling method is not flexible enough in practical applications.

在学术界,拼车的问题始于发达国家的电话叫车服务(Dial-a-ride Service),电话叫车是需要服务的人(通常为老年人或残疾人)拨打政府的服务热线预约服务,调度中心根据每个服务的时间和地点安排工作人员开车上门。近年来,研究人员主要关注于司机和乘客的动态匹配方法设计,但现有的主流匹配方法大多基于大规模的司机行车轨迹数据对司机的位置进行预测或者对拼车匹配过程中耗时最多的最短路径进行预处理计算。这些方法能够保证实时高效,但是预测的方 式使得匹配方法在实际中的准确度无法得到有效保证,而对最短路径的预处理需要消耗大量的空间存储资源。 In academia, the problem of carpooling began with the Dial-a-ride Service in developed countries. Dial-a-ride Service is when people who need services (usually the elderly or disabled) call the government's service hotline to make an appointment. The dispatch center arranges staff to drive to the door according to the time and place of each service. In recent years, researchers have mainly focused on the design of dynamic matching methods for drivers and passengers. However, most of the existing mainstream matching methods are based on large-scale driver trajectory data to predict the driver's location or to predict the shortest time-consuming match in the carpooling process. path for preprocessing calculations. These methods can guarantee real-time efficiency, but the prediction method makes the accuracy of the matching method in practice unable to be effectively guaranteed, and the preprocessing of the shortest path needs to consume a large amount of space and storage resources.

发明内容 Contents of the invention

本发明要克服现有技术的上述缺点,提出一种实时的动态拼车匹配方法。该方法最终目的是根据乘客实时的拼车需求,高效地匹配出满足其要求的候选司机集合。 The present invention overcomes the above-mentioned shortcomings of the prior art, and proposes a real-time dynamic carpooling matching method. The ultimate goal of this method is to efficiently match a set of candidate drivers that meet passengers' real-time carpooling needs.

本发明方法包括如下步骤: The inventive method comprises the steps:

步骤1实时拼车场景建模 Step 1 Real-time carpooling scene modeling

实际拼车场景中,乘客和司机均有起点和终点,此外,乘客还有最迟到达目的地时间和最大拼车费用的要求。为了实现拼车匹配,本步骤将对拼车费用建立模型,对拼车问题进行定义,并设计拼车匹配过程中的数据结构。 In the actual carpooling scenario, both the passenger and the driver have a starting point and an ending point. In addition, the passenger also has requirements for the latest arrival time at the destination and the maximum carpooling fee. In order to realize carpool matching, this step will establish a model for carpooling fees, define the carpooling problem, and design the data structure in the process of carpooling matching.

步骤1-1拼车费用建模  Step 1-1 Carpool Fee Modeling

在拼车过程中,司机d首先需要从自己的起点赶到乘客r的起点,接着从乘客r的起点将乘客载至其终点,最后从乘客r的终点回到自己的终点。在拼车结束后,乘客r需要支付一定的拼车费用给司机作为报酬。 In the process of carpooling, driver d first needs to drive from his starting point to passenger r’s starting point, then drive the passenger from passenger r’s starting point to his destination point, and finally return from passenger r’s end point to his own destination point. After the carpooling is over, the passenger r needs to pay a certain carpooling fee to the driver as a reward.

根据上述的拼车过程,本方法中的拼车费用定义如下: According to the above carpooling process, the carpooling fee in this method is defined as follows:

Price(d,r)=RiderTrip(r)+Detour(d,r) Price(d,r)=RiderTrip(r)+Detour(d,r)

其中Price(d,r)表示拼车费用;RiderTrip(r)表示拼车后司机和乘客共同走的路程,即司机载着乘客从乘客起点到乘客终点的路程(本发明中路程、费用以及时间均与距离成正比,因此可互相转化);Detour(d,r)表示司机相对其原始路线多走的路程,即绕道路程,其计算方式如下: Wherein Price (d, r) represents the cost of carpooling; RiderTrip (r) represents the distance that the driver and the passenger walk together after the carpooling, that is, the distance that the driver carries the passenger from the passenger's starting point to the passenger's terminal point (distance, cost and time in the present invention are all related to The distance is proportional, so it can be transformed into each other); Detour(d,r) represents the distance that the driver takes more than the original route, that is, the detour distance, and its calculation method is as follows:

Detour(d,r)=Pickup(d,r)+RiderTrip(r)+Return(d,r)–DriverTrip(d,r) Detour(d,r)=Pickup(d,r)+RiderTrip(r)+Return(d,r)–DriverTrip(d,r)

其中,Pickup(d,r)是司机起点与乘客起点间的路程,即司机去接乘客时的费用;Return(d,r)表示司机目的地与乘客目的地间的路程距离,即司机在送完乘客时返回的费用;DriverTrip(d,r)是指司机在不接送乘客的情况下自己的原有路程。 Among them, Pickup(d,r) is the distance between the driver’s starting point and the passenger’s starting point, that is, the driver’s fare when picking up the passenger; Return(d,r) represents the distance between the driver’s destination and the passenger’s The cost of returning when the passenger is finished; DriverTrip(d,r) refers to the driver's original distance without picking up the passenger.

基于上述关系,可进一步得到计算拼车费用的如下公式: Based on the above relationship, the following formula for calculating the cost of carpooling can be further obtained:

Price(d,r)=Pickup(d,r)+2*RiderTrip(r)+Return(d,r)–DriverTrip(d,r)  (公式1) Price(d,r)=Pickup(d,r)+2*RiderTrip(r)+Return(d,r)–DriverTrip(d,r) (Formula 1)

步骤1-2拼车匹配过程建模 Step 1-2 Modeling of carpool matching process

本发明适用的拼车场景中,乘客和司机都有其各自的拼车约束条件。其中乘客有起点、终点的拼车约束,以及最迟到达时间rmax_ArrTime和最大拼车费用rmax_Price拼车约束;司机有起点与终点的位置约束。因此,本方法将拼车匹配过程定义如下: In the carpooling scene to which the present invention is applicable, passengers and drivers have their own carpooling constraints. Among them, the passenger has the carpooling constraints of the starting point and the ending point, and the carpooling constraints of the latest arrival time r max_ArrTime and the maximum carpooling fee r max_Price ; the driver has the location constraints of the starting point and the ending point. Therefore, this method defines the carpool matching process as follows:

定义1.给定一个司机集合D和一个乘客r,拼车匹配旨在D中找到一个子集合D’,并且对于D’中的任意一个司机d,需要满足如下约束: Definition 1. Given a set of drivers D and a passenger r, carpool matching aims to find a subset D’ in D, and for any driver d in D’, the following constraints need to be met:

·时间约束:Pickup(d,r)+RiderTrip(r)<rmax_ArrTime Time constraints: Pickup(d,r)+RiderTrip(r)<r max_ArrTime

·费用约束:Price(d,r)<rmax_Price Cost constraint: Price(d,r)<r max_Price

·Skyline约束:D’中的每个司机在Pickup(d,r)与Price(d,r)上是skyline关系。 ·Skyline constraint: Each driver in D' has a skyline relationship between Pickup(d,r) and Price(d,r).

Skyline约束是指集合D’中的司机与司机之间在乘客到达时间与拼车费用两个属性上是skyline关系,即任意一个司机不会同时在等待时间和拼车费用上大于另一个集合中的司机。否则选择该司机则没有实际意义,例如,d1在15分钟内接到乘客,并且所涉及的拼车费用是20元,d2提供给同一乘客的等待时间与拼车费用分别是17分钟和25元,那么,本发明认为d2这样的司机作为候选司机推荐给乘客是没有意义的。因此本发明匹配技术在匹配过程当中,也对这一类的司机进行了相应的skyline过滤处理。 The Skyline constraint means that there is a skyline relationship between the drivers in the set D' on the two attributes of passenger arrival time and carpooling cost, that is, any driver will not be greater than the driver in another set in terms of waiting time and carpooling cost at the same time . Otherwise, it is meaningless to choose this driver. For example, d1 picks up the passenger within 15 minutes, and the carpooling fee involved is 20 yuan, and the waiting time and carpooling fee provided by d2 to the same passenger are 17 minutes and 25 yuan respectively , then, the present invention considers that it is meaningless to recommend a driver like d 2 to a passenger as a candidate driver. Therefore, during the matching process, the matching technology of the present invention also performs corresponding skyline filtering processing for this type of drivers.

步骤1-3拼车数据结构设计 Step 1-3 carpooling data structure design

为了便于后续的拼车匹配计算、记录备选司机和匹配过程,需要设计相关的拼车数据结构。即如下两个表格: In order to facilitate subsequent carpool matching calculations, record candidate drivers and the matching process, it is necessary to design relevant carpool data structures. That is, the following two tables:

司机信息表(Driver Table):该表共有四个字段,用于记录司机的相关信息。包括:1)司机唯一标识ID;2)司机当前位置CurrentLocation;3)司机的目的地位置Destination;4)司机从当前位置到目的地需要经过的路程DriverTrip。 Driver Information Table (Driver Table): There are four fields in this table, which are used to record the relevant information of the driver. Including: 1) The driver's unique ID; 2) The driver's current location CurrentLocation; 3) The driver's destination location Destination; 4) The driver's distance from the current location to the destination DriverTrip.

匹配记录表(Matching Table):该表共有6个字段,作为拼车匹配记录和计算的依据。包括:1)司机唯一标识ID;2)司机起点与乘客起点间的最短实际路径Pickup,该值可换算表示成乘客的实际等待时间;(3)司机起点与乘客起点间的欧式距离EuclideanPickup;4)司机目的地与乘客目的地间的最短实际路径Return;5)司机目的地与乘客目的地间的欧式距离EuclideanReturn;6)司机的起点与目的地间的最短路径DriverTrip,即Driver Table中的第4个字段。步骤2,实时拼车匹配; Matching Table: This table has a total of 6 fields, which are used as the basis for carpool matching records and calculations. Including: 1) The driver's unique ID; 2) The shortest actual path Pickup between the driver's starting point and the passenger's starting point, which can be converted into the passenger's actual waiting time; (3) Euclidean Pickup between the driver's starting point and the passenger's starting point; 4 ) the shortest actual path Return between the driver's destination and the passenger's destination; 5) the Euclidean Return between the driver's destination and the passenger's destination; 6) the shortest path DriverTrip between the driver's starting point and the destination, that is, the first 4 fields. Step 2, real-time carpool matching;

本发明使用场景中,会有大量的司机与乘客参与,在每次拼车匹配过程中,有大量的司机与乘客间的最短路径需要计算,而这些计算十分耗时,严重影响了实时拼车场景的应用。为此,本发明设计了一系列的剪枝步骤,尽可能的减少最短路径计算数量,进而提高拼车匹配的效率。 In the application scene of the present invention, there will be a large number of drivers and passengers participating in each carpooling matching process, there are a large number of shortest paths between drivers and passengers to be calculated, and these calculations are very time-consuming, which seriously affects the real-time carpooling scene. application. For this reason, the present invention designs a series of pruning steps to reduce the number of calculations of the shortest path as much as possible, thereby improving the efficiency of carpool matching.

步骤2-1基于欧氏距离的乘客最大等待时间筛选策略 Step 2-1 Passenger maximum waiting time screening strategy based on Euclidean distance

本步骤的核心思路是使用乘客的最迟到达时间作为约束条件,将此条件转化为欧氏距离对司机进行筛选。 The core idea of this step is to use the latest arrival time of passengers as a constraint condition, and convert this condition into Euclidean distance to filter drivers.

●时间约束转化:乘客到达其目的地的时间为其等待时间Pickup与其从起点到目的地的路程对应的时间RiderTrip之和。由于乘客RiderTrip为定值,因此将乘客的最迟到达时间rmax_ArrTime与乘客的RiderTrip对应的时间相减即可得到乘客的最大等待时间Max_Pickup。即:Max_Pickup=rmax_ArrTime–Pickup。因此乘客的最迟到达时间被转化为最大等待时间,即司机的Pickup值不能超过Max_Pickup。 ●Time constraint transformation: the time for passengers to reach their destination is the sum of the waiting time Pickup and the time RiderTrip corresponding to the journey from the origin to the destination. Since the passenger RiderTrip is a fixed value, the passenger's maximum waiting time Max_Pickup can be obtained by subtracting the passenger's latest arrival time r max_ArrTime from the time corresponding to the passenger's RiderTrip. Namely: Max_Pickup = r max_ArrTime - Pickup. Therefore, the latest arrival time of passengers is converted into the maximum waiting time, that is, the driver's Pickup value cannot exceed Max_Pickup.

●欧氏范围查询筛选:为了将不能在乘客最大等待时间Max_Pickup内赶到其起点的司机排除,可以采用欧氏范围查询的筛选方式。首先将时间Max_Pickup转化为对应的欧氏距离(用Max_Pickup乘以当前的路网平均车速),接着以乘客当前的起点为圆心,以Max_Pickup对应的欧氏距离为半径做一个圆形的范围查询(Range Query)。所有不在此圆形范围内的司机将会被排除,原因是他们在最短距离(欧氏距离EuclideanPickup)的条件下也无法及时赶到乘客起点。 ● Euclidean range query and screening: In order to exclude drivers who cannot arrive at their starting point within the passenger's maximum waiting time Max_Pickup, the screening method of Euclidean range query can be used. First convert the time Max_Pickup into the corresponding Euclidean distance (multiply Max_Pickup by the current average vehicle speed of the road network), then use the current starting point of the passenger as the center of the circle, and use the Euclidean distance corresponding to Max_Pickup as the radius to make a circular range query ( Range Query). All drivers who are not within this circular range will be excluded because they cannot reach the passenger's starting point in time under the condition of the shortest distance (Euclidean Pickup).

步骤2-2基于欧式距离的最大拼车费用筛选策略 Step 2-2 Screening strategy for maximum carpooling cost based on Euclidean distance

对通过了上一步欧氏距离筛选的司机,将会被添加到匹配信息表中,并利用乘客的最大拼车费用约束进行进一步筛选,排除在欧氏距离下的所需拼车费用超过乘客最大拼车费用rmax_Price的司机。 Drivers who pass the Euclidean distance screening in the previous step will be added to the matching information table and further screened using the passenger's maximum carpooling fee constraint, excluding the required carpooling fee under the Euclidean distance exceeding the passenger's maximum carpooling fee r max_Price driver.

将拼车费用Price(d,r)(即公式1)当中的Pickup和Return使用欧氏距离代替,得到欧氏拼车费用公式: Replace the Pickup and Return in the carpooling fee Price(d,r) (that is, formula 1) with the Euclidean distance to get the Euclidean carpooling fee formula:

EuclideanPrice(d,r)=EuclideanPickup(d,r)+2*RiderTrip(r)+ EuclideanPrice(d,r)=EuclideanPickup(d,r)+2*RiderTrip(r)+

EuclideanReturn–DriverTrip(d)  (公式2) EuclideanReturn–DriverTrip(d) (Formula 2)

因为路网实际距离大于欧氏距离,所以若司机使用公式2计算出的理想拼车 费用EuclideanPrice(d,r)大于rmax_Price,则根据不等式的传递性,用公式1得出的实际费用Price(d,r)也将大于rmax_Price。因此这部分司机不满足乘客的最大拼车费用条件,将被排除。 Because the actual distance of the road network is greater than the Euclidean distance, if the driver’s ideal carpooling price EuclideanPrice(d,r) calculated by using formula 2 is greater than r max_Price , then according to the transitivity of the inequality, the actual cost Price(d ,r) will also be greater than r max_Price . Therefore, these drivers do not meet the passenger's maximum carpooling fee conditions and will be excluded.

至此,步骤1与步骤2均未产生任何的最短路径距离计算,仅利用简单的欧氏距离计算可以过滤掉一部分司机。 So far, step 1 and step 2 have not produced any shortest path distance calculation, and only a simple Euclidean distance calculation can filter out some drivers.

下面,对于通过上面两步骤筛选的司机,将通过匹配表重排序,对司机Return和Pickup渐进式的搜索与筛选,最后根据skyline的原则为乘客选出候选的司机。 Next, for the drivers screened through the above two steps, the matching table will be reordered, and the driver's Return and Pickup will be searched and screened gradually, and finally the candidate driver will be selected for passengers according to the skyline principle.

步骤2-3渐进式Return筛选 Step 2-3 Progressive Return Screening

对于匹配记录表中的每位司机,首先通过EuclideanPickup-DriverTrip的值按递增进行排序,接着迭代地从匹配表中挑选出司机进行判断和筛选,直到匹配表中所有的所有司机都被计算过或被排除。迭代过程如下: For each driver in the matching record table, first sort by increasing the value of EuclideanPickup-DriverTrip, and then iteratively select drivers from the matching table for judgment and screening, until all drivers in the matching table are calculated or to be excluded. The iterative process is as follows:

a)以乘客终点为出发点,使用增量式的K近邻算法(Incremental K Nearest Neighbor),找到当前匹配记录表中Return值最小,即实际路网中的终点与乘客终点最近的司机。 a) Taking the passenger's destination as the starting point, use the incremental K Nearest Neighbor algorithm (Incremental K Nearest Neighbor) to find the driver whose Return value in the current matching record table is the smallest, that is, the destination in the actual road network is closest to the passenger's destination.

b)使用此真实Return值代替EuclideanPrice(d,r)(公式2)费用公式中的EuclideanReturn值,得到新的费用公式: b) Use this real Return value to replace the Euclidean Return value in the cost formula of EuclideanPrice(d,r) (Formula 2) to get a new cost formula:

Semi-EuclideanPricePrice(d,r)=EuclideanPickup(d,r)+2*RiderTrip(r)+ Semi-EuclideanPricePrice(d,r)=EuclideanPickup(d,r)+2*RiderTrip(r)+

Return(d,r)–DriverTrip(d)  (公式3) Return(d,r)–DriverTrip(d) (Formula 3)

c)判断根据公式3计算得到的费用是否超过乘客的最大拼车费用rmax_Price,若超过此费用约束,则将此司机d从匹配信息表中删除。因为司机d提供拼车服务所需的费用大于乘客所能提供的最大拼车费用。同时删除匹配表中d司机以下的所有司机,因为下方的这些司机的EuclideanPickup-DriverTrip和Return值都大于d,拼车费用也必然大于d。 c) Determine whether the price calculated according to formula 3 exceeds the passenger's maximum carpooling price r max_Price , and if it exceeds the cost constraint, delete the driver d from the matching information table. Because the fee required by the driver d to provide carpooling services is greater than the maximum carpooling fee that passengers can provide. At the same time, delete all drivers below driver d in the matching table, because the Euclidean Pickup-DriverTrip and Return values of these drivers below are both greater than d, and the carpooling fee must also be greater than d.

d)进入下一个迭代过程。 d) Go to the next iteration process.

步骤2-4渐进式Pickup筛选 Step 2-4 Progressive Pickup Screening

对于匹配信息表中所有通过了渐进式Return筛选的司机,首先设置一个阀值MAX,初始化其值为乘客费用约束rmax_Price,接着通过Return–DriverTrip的值按递增顺序进行排序,然后迭代地从匹配表中挑选出司机进行判断和筛选,最后将符合skyline条件的司机加入备选司机集合,直到所有的司机都被处理完毕。 迭代过程如下: For all drivers in the matching information table that have passed the progressive Return screening, first set a threshold MAX, initialize its value as the passenger cost constraint r max_Price , and then sort in increasing order by the value of Return-DriverTrip, and then iteratively start from the matching The drivers are selected from the table for judgment and screening, and finally the drivers who meet the skyline conditions are added to the candidate driver set until all the drivers are processed. The iterative process is as follows:

e)以乘客起点为出发点,使用增量式的K近邻算法(Incremental K Nearest Neighbor),找到当前匹配记录表中Pickup值最小,即实际路网中起点与乘客起点最近的司机d。 e) Taking the starting point of the passenger as the starting point, use the incremental K Nearest Neighbor algorithm (Incremental K Nearest Neighbor) to find the driver d whose Pickup value is the smallest in the current matching record table, that is, the starting point in the actual road network is closest to the passenger’s starting point.

f)使用此真实Pickup值,与乘客最大等待时间Max_Pickup作比较,若大于乘客最大等待时间,则表示d无法满足乘客的时间约束条件,显然表中剩下的司机的Pickup都将大于d,因此将司机d和表中剩下所有司机都删除。本次匹配结束,返回候选司机集合。 f) Use this real Pickup value to compare it with the maximum passenger waiting time Max_Pickup. If it is greater than the maximum passenger waiting time, it means that d cannot meet the passenger's time constraints. Obviously, the pickups of the remaining drivers in the table will be greater than d, so Delete driver d and all remaining drivers in the table. This matching is over, and the set of candidate drivers is returned.

g)若真实Pickup小于乘客的最大等待时间,则根据此Pickup值以及司机d在Return筛选阶段得到的真实Return值计算公式1的拼车费用,此费用也将是司机d提供的实际费用。若此费用超过了MAX,则因为不满足skyline费用原则,将司机d和其下方的所有司机全部删除。 g) If the real Pickup is less than the passenger's maximum waiting time, the carpooling fee in Formula 1 is calculated based on the Pickup value and the real Return value obtained by driver d in the Return screening stage, and this fee will also be the actual fee provided by driver d. If the fee exceeds MAX, driver d and all drivers below him will be deleted because the skyline fee principle is not met.

h)若此司机的实际拼车费用小于MAX,则将此司机加入备选司机集合,然后更新MAX的值为此司机的拼车费用,再将此司机从匹配信息表中删除。更新MAX的值是因为最终返回的所有匹配司机要求是skyline关系。而新的候选司机相对前一个候选司机来说,由于其Pickup要比前一个司机大,所以其收取的拼车费用要比上一个候选司机小才能作为候选司机。 h) If the actual carpooling cost of the driver is less than MAX, add the driver to the candidate driver set, update the value of MAX to the carpooling cost of the driver, and delete the driver from the matching information table. The value of MAX is updated because all matching drivers that are eventually returned require a skyline relationship. Compared with the previous candidate driver, the new candidate driver has a larger Pickup than the previous driver, so the carpool fee charged by him should be smaller than that of the previous candidate driver in order to be a candidate driver.

i)进入下一个迭代过程。 i) Go to the next iteration process.

本发明的优点是: The advantages of the present invention are:

1)拼车过程自动匹配。仅需要根据乘客和司机双方的时间、费用等拼车约束条件,即可自动智能地为乘客找出备选司机集合。相比当前的拼车技术,本发明方法无需进行人工式的沟通以确定是否匹配。 1) Carpooling process is automatically matched. It only needs to automatically and intelligently find out a set of alternative drivers for passengers based on carpooling constraints such as time and cost of both passengers and drivers. Compared with the current carpooling technology, the method of the present invention does not require manual communication to determine whether to match.

2)拼车匹配效率高,能够实时完成。拼车匹配过程中潜在的大量最短路径计算在本发明中被一系列的剪枝技术过滤,进而能够在很短的时间内找出满足乘客时间与费用约束条件的司机。 2) Carpool matching is efficient and can be completed in real time. A large number of potential shortest path calculations in the carpool matching process are filtered by a series of pruning techniques in the present invention, so that drivers who meet the passenger time and cost constraints can be found in a very short time.

附图说明 Description of drawings

图1为本发明步骤2和步骤3的过程图 Fig. 1 is the process chart of step 2 and step 3 of the present invention

图2为本发明步骤4的渐进式Return筛选过程图 Fig. 2 is the progressive Return screening process figure of step 4 of the present invention

图3为本发明步骤4的渐进式Pickup筛选过程图 Fig. 3 is the progressive Pickup screening process diagram of step 4 of the present invention

图4为欧氏距离筛选示例 Figure 4 is an example of Euclidean distance screening

图5为司机匹配信息表 Figure 5 is the driver matching information table

图6为欧氏费用筛选示例 Figure 6 is an example of Euclidean fee screening

图7为渐进式Return筛选示例图 Figure 7 is an example of progressive Return screening

图8为渐进式Pickup筛选示例图 Figure 8 is an example of progressive Pickup screening

具体实施方式 Detailed ways

参照附图:  Refer to attached picture:

图1表示本拼车匹配方法的步骤2和步骤3的过程图。在已知拼车司机和乘客的相关信息后,首先计算出乘客的最大等待时间;然后以乘客的起点为圆心,以乘客的最大等待时间对应的欧氏距离作为半径,做一个范围查询,将此范围内的司机加入到匹配信息表中;接着对匹配信息表中的所有司机,使用公式2计算其拼车费用;最后删除所有超过乘客最大拼车费用约束司机。 Fig. 1 shows the process diagram of step 2 and step 3 of the carpool matching method. After knowing the relevant information of carpool drivers and passengers, first calculate the maximum waiting time of passengers; then use the starting point of passengers as the center of the circle, and use the Euclidean distance corresponding to the maximum waiting time of passengers as the radius to do a range query. The drivers within the range are added to the matching information table; then, for all drivers in the matching information table, the carpooling fee is calculated using formula 2; finally, all drivers exceeding the passenger's maximum carpooling fee constraint are deleted.

图2为本发明步骤4的渐进式Return筛选过程图。对匹配信息表中通过了上面两个步骤的司机首先根据EuclideanPickup-DriverTrip的值按递增进行排序,接着按以下方式迭代计算,直到所有司机都被考察过:以乘客终点为出发点,使用增量式的K近邻算法找到当前表中Return值最小的司机,按公式3计算此司机的费用,并和乘客的最大拼车费用比较。若大于乘客拼车费用则删除该司机和该司机下方的所有司机。 Fig. 2 is a diagram of the progressive Return screening process in Step 4 of the present invention. For the drivers who have passed the above two steps in the matching information table, they are firstly sorted in ascending order according to the value of EuclideanPickup-DriverTrip, and then iteratively calculated in the following way until all drivers have been examined: starting from the passenger terminal, using incremental The K-Nearest Neighbor Algorithm finds the driver with the smallest Return value in the current table, calculates the driver's cost according to formula 3, and compares it with the passenger's maximum carpooling cost. If it is greater than the passenger's carpooling fee, delete the driver and all drivers under the driver.

图3为本发明步骤4的渐进式Pickup筛选过程图。对匹配表中通过了上面所有步骤的司机首先根据Return-DriverTrip的值按递增进行排序,并设置阀值MAX为乘客的最大拼车费用。接着按以下方式迭代计算,直到匹配信息表为空:首先以乘客的起点为出发点,使用增量式的K近邻算法找到当前表中Pickup值最小的司机,用此Pickup值与乘客最大等待时间MAX_Pickup比较,若大于MAX_Pickup,则删除表中剩余的所有司机,立即终止匹配,返回候选司机集合;若小于此值,则按公式1计算拼车费用,并与MAX比较。若拼车费用大于MAX,则将此司机从表中删除,并删除此司机下方的所有司机;若小于MAX,则将 MAX值更新为此司机的拼车费用,并将此司机加入到候选司机集合,最后从匹配信息表中删除此司机。 Fig. 3 is a progressive Pickup screening process diagram of Step 4 of the present invention. The drivers who have passed all the above steps in the matching table are first sorted in ascending order according to the value of Return-DriverTrip, and the threshold MAX is set as the passenger's maximum carpooling fee. Then iteratively calculate in the following way until the matching information table is empty: First, use the incremental K-nearest neighbor algorithm to find the driver with the smallest Pickup value in the current table, using the passenger’s starting point as the starting point, and use this Pickup value and the passenger’s maximum waiting time MAX_Pickup Compare, if it is greater than MAX_Pickup, delete all the remaining drivers in the table, terminate the matching immediately, and return the set of candidate drivers; if it is less than this value, calculate the carpooling fee according to formula 1, and compare it with MAX. If the carpooling fee is greater than MAX, delete this driver from the table, and delete all drivers below this driver; if it is less than MAX, update the MAX value to the carpooling fee of this driver, and add this driver to the candidate driver set, Finally delete this driver from the matching information table.

图4-图8展示一个完整的拼车匹配示例。 Figures 4-8 show a complete carpool matching example.

图4展示了一个根据欧氏距离筛选司机的示例。假设乘客r(白点表示)要求35分钟后到达其终点,而从此乘客的起点到终点的路程需要走20分钟,因此可以计算得到该乘客的最大等待时间为15分钟(35分钟减去20分钟)。那么以乘客的起点为圆心,以15分钟所对应的欧氏距离为半径做一个范围查询,可以看到能够及时赶到乘客起点的司机(黑点表示)有:d1,d2,d3。。。d6Figure 4 shows an example of filtering drivers based on Euclidean distance. Assume that passenger r (indicated by the white dot) requires 35 minutes to arrive at its destination, and it takes 20 minutes to travel from the passenger's starting point to the destination, so it can be calculated that the passenger's maximum waiting time is 15 minutes (35 minutes minus 20 minutes ). Then take the starting point of the passenger as the center of the circle, and use the Euclidean distance corresponding to 15 minutes as the radius to make a range query, and you can see that the drivers (indicated by black dots) who can arrive at the starting point of the passenger in time are: d 1 , d 2 , d 3 . . . d 6 .

图5为匹配信息表。在图4欧氏距离筛选步骤中中所选出的司机d1,d2,d3。。。d6将会被填入到匹配表中。表中司机的DriverTrip字段可以由司机表中的对应字段直接复制而来。 Figure 5 is the matching information table. The drivers d 1 , d 2 , and d 3 selected in the Euclidean distance screening step in FIG. 4 . . . d 6 will be filled in the matching table. The DriverTrip field of the driver in the table can be directly copied from the corresponding field in the driver table.

图6为根据欧氏费用筛选司机的示例。对于匹配信息表中的所有司机,将计算其EuclideanPickup和EuclideanReturn并填入表中,然后根据公式2计算其欧氏拼车费用EuclideanPrice。本示例中乘客的rmax_time=15,rmax_price=30,RiderTrip=12;司机的EuclideanPickup,EuclideanReturn和DriverTrip分别如表中所示。司机d6将会因欧氏拼车费用(7.3+12*2+9.1-8)=32.4>30,不能满足乘客的拼车费用约束而被从匹配表中删除。 Figure 6 is an example of screening drivers based on Euclid fees. For all drivers in the matching information table, their EuclideanPickup and EuclideanReturn will be calculated and filled in the table, and then their EuclideanPrice will be calculated according to formula 2. In this example, the passenger's r max_time = 15, r max_price = 30, RiderTrip = 12; the driver's EuclideanPickup, EuclideanReturn and DriverTrip are shown in the table respectively. Driver d 6 will be deleted from the matching table because the Euclid carpooling fee (7.3+12*2+9.1-8)=32.4>30 cannot satisfy the passenger's carpooling fee constraint.

图7为渐进式Return筛选司机的示例。对于匹配信息表中剩下司机按照EuclideanPickup-DriverTrip的值从小到大排序,依次为d1,d4,d2,d3,d5。接着以乘客终点为出发点,使用增量式的K近邻算法,找到当前匹配信息表中终点和乘客终点最近(即实际Return最小)的司机d3并得到其Return值9.9。然后d3根据公式3计算得到的拼车费用:(9.9+2*12+5.8-9.6)=30.1>30。d3因不能满足乘客的拼车费用约束被排除。而匹配表中位于d3之下的司机d5也被排除。此时匹配表中仅剩下司机d1,d4和d2,其return值分别为14、7.5和8.3,均符合乘客拼车费用约束。 Figure 7 is an example of progressive Return screening drivers. For the remaining drivers in the matching information table, they are sorted according to the value of EuclideanPickup-DriverTrip from small to large, in order of d 1 , d 4 , d 2 , d 3 , and d 5 . Then take the passenger’s destination as the starting point and use the incremental K-nearest neighbor algorithm to find the driver d 3 whose destination is closest to the passenger’s destination in the current matching information table (that is, the actual Return is the smallest) and obtain its Return value of 9.9. Then d 3 is the carpooling fee calculated according to formula 3: (9.9+2*12+5.8-9.6)=30.1>30. d 3 is excluded because it cannot satisfy the passenger's carpool cost constraint. And the driver d5 below d3 in the matching table is also excluded. At this time, only drivers d 1 , d 4 and d 2 are left in the matching table, and their return values are 14, 7.5 and 8.3 respectively, all of which meet the passenger carpooling cost constraints.

图8为渐进式Pickup筛选司机的示例。首先对匹配表中剩下的司机按照Return-DriverTrip进行排序,依次为d4,d2,d1。并设置MAX的值为乘客最大拼车费用30。接着以乘客的起点为出发点,使用增量式的K近邻算法,找到匹配表中起点和乘客起点最近(即Pickup值最小)的司机d1,并得到其Pickup值 6.5。然后d1根据费用公式1计算得到的拼车费用:(6.5+12*2+14-13.4)=31.1>MAX=30,超过了费用约束,因此d1和在表中位于d1以下的司机都将被删除。此时还剩下司机d4和d2Figure 8 is an example of progressive pickup screening drivers. Firstly, the remaining drivers in the matching table are sorted according to Return-DriverTrip, which are d 4 , d 2 , and d 1 in turn. And set the value of MAX as the passenger's maximum carpooling fee of 30. Then, using the passenger’s starting point as the starting point, use the incremental K-nearest neighbor algorithm to find the driver d 1 whose starting point is closest to the passenger’s starting point in the matching table (that is, the minimum Pickup value), and obtain its Pickup value of 6.5. Then d 1 calculates the carpooling cost according to the cost formula 1: (6.5+12*2+14-13.4)=31.1>MAX=30, which exceeds the cost constraint, so d 1 and drivers below d 1 in the table are all Will be deleted. At this point the drivers d 4 and d 2 remain.

然后再使找到下一个司机d2,并得到其Pickup值为7,拼车费用为(7+12*2+8.3-10)=29.3<MAX,因此将司机d2加入到备选司机集合,更新MAX的值为29.3,并将d2从匹配信息表中删除。 Then find the next driver d 2 , and get its Pickup value of 7, the carpooling fee is (7+12*2+8.3-10)=29.3<MAX, so add driver d 2 to the candidate driver set, update The value of MAX is 29.3 and d2 is removed from the matching information table.

同理再找到下一个司机d4,得到其Pickup值为8.2,拼车费用为(8.2+12*2+7.5-10)=29.7>MAX,所以d4被排除,因为d4不满足skyline原则(d4同时在乘客等待时间Pickup和拼车费用Price上均大于d2)。 Similarly, find the next driver d 4 , get its Pickup value of 8.2, and the carpooling fee is (8.2+12*2+7.5-10)=29.7>MAX, so d 4 is excluded because d 4 does not satisfy the skyline principle ( d 4 is greater than d 2 in both passenger waiting time Pickup and carpooling price Price.

至此,所有司机都被考察完,本次匹配过程结束,返回候选司机集合即可。 So far, all drivers have been inspected, the matching process is over, and the set of candidate drivers can be returned.

Claims (1)

1. a real time pooling vehicle matching process, comprises the steps:
Step 1 real time pooling vehicle scene modeling;
In actual share-car scene, passenger and driver all have starting point and terminal, and in addition, passenger also has the requirement arriving destination time and maximum share-car expense at the latest; In order to realize share-car coupling, to share-car expense Modling model, share-car problem will be defined, and designs the data structure in share-car matching process;
Step 1-1 share-car Cost Modeling;
In share-car process, first driver d needs the starting point of arriving in passenger r from the starting point of oneself, then from the starting point of passenger r, passenger is loaded onto its terminal, finally gets back to the terminal of oneself from the terminal of passenger r; After share-car terminates, passenger r needs to pay certain share-car expense to driver in reward;
According to above-mentioned share-car process, the share-car expense in this method is defined as follows:
Price(d,r)=RiderTrip(r)+Detour(d,r)
Wherein Price (d, r) represents share-car expense; The distance that after RiderTrip (r) represents share-car, driver and passenger walk jointly, namely driver carries passenger from passenger's starting point to the distance of passenger's terminal, and distance, expense and time are all directly proportional to distance, therefore can transform mutually; Detour (d, r) represents the distance that driver walks relative to its original route more, and namely detour distance, and its account form is as follows:
Detour(d,r)=Pickup(d,r)+RiderTrip(r)+Return(d,r)–DriverTrip(d)
Wherein, Pickup (d, r) is the distance between driver's starting point and passenger's starting point, and namely driver goes expense when meeting passenger; Return (d, r) represents the path distance between driver destination and the destination of the passenger, i.e. the expense that returned when having sent passenger of driver; DriverTrip (d, r) refers to driver's oneself original distance when not picking passenger;
Based on above-mentioned relation, the following formula calculating share-car expense can be obtained further:
Price (d, r)=Pickup (d, r)+2*RiderTrip (r)+Return (d, r) – DriverTrip (d) (formula 1)
The modeling of step 1-2 share-car matching process;
In share-car scene, passenger and driver have its respective share-car constraint condition; Wherein passenger has the share-car of starting point, terminal to retrain, and at the latest time of arrival r max_ArrTimewith maximum share-car expense r max_Priceshare-car retrains; Driver has the position constraint of Origin And Destination; Therefore, share-car matching process is defined as follows:
Define 1. given drivers and gather a D and passenger r, share-car coupling is intended to find a subclass D ' in D, and for any one the driver d in D ', demand fulfillment retrains as follows:
Time-constrain: Pickup (d, r)+RiderTrip (r) <r max_ArrTime
Expense restriction: Price (d, r) <r max_Price
Skyline retrains: each driver in D ' is skyline relation on Pickup (d, r) with Price (d, r);
Skyline constraint refers to that between driver in set D ' and driver be skyline relation on passenger's time of arrival and share-car expense two attributes, namely any one driver can not be greater than on stand-by period and share-car expense simultaneously another gather in driver; Otherwise select this driver then there is no practical significance; Therefore, in the middle of matching process, also corresponding skyline filtration treatment has been carried out to the driver of this class;
Step 1-3 share-car Data Structure Design;
For the ease of follow-up share-car matching primitives, record alternative driver and matching process, need the share-car data structure that design is relevant; I.e. following two forms:
Driver information table (Driver Table): this table has four fields, for recording the relevant information of driver; Comprise: 1) driver's unique ID; 2) driver current location CurrentLocation; 3) the destination locations Destination of driver; 4) driver needs the distance DriverTrip of process from current location to destination;
Matched record table (Matching Table): this table has 6 fields, as the foundation of share-car matched record and calculating; Comprise: 1) driver's unique ID; 2) the shortest Actual path Pickup between driver's starting point and passenger's starting point, this value can convert and be expressed as the actual stand-by period of passenger; (3) the Euclidean distance EuclideanPickup between driver's starting point and passenger's starting point; 4) the shortest Actual path Return between driver destination and the destination of the passenger; 5) the Euclidean distance EuclideanReturn between driver destination and the destination of the passenger; 6) the shortest path DriverTrip between the starting point of driver and destination, the 4th field namely in Driver Table;
Step 2, real time pooling vehicle mates;
In use scenes, have a large amount of drivers and passenger participates in, in each share-car matching process, have the shortest path between a large amount of drivers and passenger to need to calculate, and these calculating are very consuming time, had a strong impact on the application of real time pooling vehicle scene; For this reason, devise a series of beta pruning step, reduce shortest path number of computations as much as possible, and then improve the efficiency of share-car coupling;
Step 2-1 is based on passenger's maximum latency screening strategy of Euclidean distance;
The core thinking of this step uses the time of arrival at the latest of passenger as constraint condition, this condition is converted into Euclidean distance and screens driver;
● time-constrain transforms: the time RiderTrip sum that the distance that the time that passenger arrives its destination is its stand-by period Pickup with it from starting point to destination is corresponding; Because passenger RiderTrip is definite value, therefore by r time of arrival at the latest of passenger max_ArrTimethe time corresponding with the RiderTrip of passenger subtracts each other the maximum latency Max_Pickup that can obtain passenger; That is: Max_Pickup=r max_ArrTime– Pickup; Therefore be converted into maximum latency the time of arrival at the latest of passenger, namely the Pickup value of driver can not more than Max_Pickup;
● Euclidean range query screens: in order to the driver that can not arrive in its starting point in passenger maximum latency Max_Pickup gets rid of, can adopt the screening mode of Euclidean range query; First time Max_Pickup is converted into corresponding Euclidean distance (being multiplied by current road network average speed with Max_Pickup), then with the current starting point of passenger for the center of circle, with Euclidean distance corresponding to Max_Pickup for radius does a circular range query (Range Query); All drivers not in this circular scope will be excluded, and reason is that they also cannot arrive in the very nick of time passenger's starting point under the condition of bee-line (Euclidean distance EuclideanPickup);
Step 2-2 is based on the maximum share-car expense screening strategy of Euclidean distance;
To the driver that have passed the screening of previous step Euclidean distance, will be added in match information table, and utilize the maximum share-car expense restriction of passenger to screen further, get rid of share-car expense needed under Euclidean distance and exceed the maximum share-car expense r of passenger max_Pricedriver;
Use Euclidean distance to replace the Pickup (d, r) in the middle of share-car expense Price (d, r) (i.e. formula 1) and Return (d, r), obtain Euclidean share-car cost formula:
EuclideanPrice(d,r)=EuclideanPickup(d,r)+2*RiderTrip(r)+
EuclideanReturn – DriverTrip (d) (formula 2)
Because road network actual range is greater than Euclidean distance, if so the desirable share-car expense EuclideanPrice (d, r) that driver uses formula 2 to calculate is greater than r max_Price, then according to the transitivity of inequality, the actual cost Price (d, r) drawn with formula 1 also will be greater than r max_Price; Therefore this part driver does not meet the maximum share-car fee condition of passenger, will be excluded;
So far, step 1 and step 2 all do not produce any shortest path distance and calculate, and only utilize simple Euclidean distance to calculate and can filter out a part of driver;
Below, for the driver by two steps screenings above, will be reordered by matching list, the search gradual to driver Return and Pickup and screening are finally the driver that passenger selects candidate according to the principle of skyline;
The gradual Return screening of step 2-3;
For every driver in matched record table, first sorted by increasing progressively by the value of EuclideanPickup-DriverTrip, then from matching list, pick out driver iteratively carry out judging and screening, until all drivers all in matching list are by calculated or be excluded; Iterative process is as follows:
A) with passenger's terminal for starting point, use the k nearest neighbor algorithm (Incremental K Nearest Neighbor) of increment type, find Return value in current matching record sheet minimum, the terminal namely in actual road network and the nearest driver of passenger's terminal;
B) use the EuclideanReturn value in this true Return value replacement EuclideanPrice (d, r) (formula 2) cost formula, obtain new cost formula:
Semi-EuclideanPricePrice(d,r)=EuclideanPickup(d,r)+2*RiderTrip(r)+
Return (d, r) – DriverTrip (d) (formula 3)
C) judge whether the expense calculated according to formula 3 exceedes the maximum share-car expense r of passenger max_Priceif exceed this expense restriction, then this driver d is deleted from match information table; Because the maximum share-car expense that driver d provides the expense needed for Ride-share service to be greater than passenger can be provided; Delete all drivers in matching list below d driver, because EuclideanPickup-DriverTrip and the Return value of these drivers of below is all greater than d, share-car expense also must be greater than d simultaneously;
D) next iterative process is entered;
The gradual Pickup screening of step 24;
For drivers that have passed gradual Return and screen all in match information table, first arrange a threshold values MAX, its value of initialization is passenger's expense restriction r max_Pricethen sorted by incremental order by the value of Return – DriverTrip, then from matching list, pick out driver iteratively carry out judging and screening, finally the driver meeting skyline condition is added alternative driver set, until all drivers are processed complete; Iterative process is as follows:
E) with passenger's starting point for starting point, use the k nearest neighbor algorithm (Incremental K Nearest Neighbor) of increment type, find Pickup value in current matching record sheet minimum, i.e. starting point and the nearest driver d of passenger's starting point in actual road network;
F) this true Pickup value is used, make comparisons with passenger maximum latency Max_Pickup, if be greater than passenger's maximum latency, then represent that d cannot meet the time constraint condition of passenger, the Pickup of driver remaining in obvious table will be greater than d, therefore all drivers remaining in driver d and table all be deleted; This mates end, returns candidate driver's set;
If g) true Pickup is less than the maximum latency of passenger, then the share-car expense of the true Return value computing formula 1 obtained at Return screening stage according to this Pickup value and driver d, this expense also will be the actual cost that driver d provides; If this expense has exceeded MAX, then because do not meet skyline cost principle, all drivers below driver d and its are all deleted;
If h) the actual share-car expense of this driver is less than MAX, then this driver is added alternative driver set, the share-car expense of the value then upgrading MAX driver for this reason, then this driver is deleted from match information table; The value upgrading MAX is because all coupling driver requests finally returned are skyline relations; And the relatively previous candidate driver of new candidate driver, because its Pickup is larger than previous driver, thus its share-car expense collected be less than a upper candidate driver could alternatively driver;
I) next iterative process is entered.
CN201510315033.XA 2015-06-10 2015-06-10 Real-time car-pooling matching method Pending CN104951848A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510315033.XA CN104951848A (en) 2015-06-10 2015-06-10 Real-time car-pooling matching method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510315033.XA CN104951848A (en) 2015-06-10 2015-06-10 Real-time car-pooling matching method

Publications (1)

Publication Number Publication Date
CN104951848A true CN104951848A (en) 2015-09-30

Family

ID=54166487

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510315033.XA Pending CN104951848A (en) 2015-06-10 2015-06-10 Real-time car-pooling matching method

Country Status (1)

Country Link
CN (1) CN104951848A (en)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107101643A (en) * 2017-04-10 2017-08-29 浙江工业大学 Car pooling matching method
CN107798403A (en) * 2016-09-07 2018-03-13 北京嘀嘀无限科技发展有限公司 A kind of share-car order processing method, server, terminal device and system
CN108268965A (en) * 2017-01-03 2018-07-10 北京嘀嘀无限科技发展有限公司 For resource allocation, for the vehicles scheduling method and its device
CN108549959A (en) * 2018-04-11 2018-09-18 车巴达(苏州)网络科技有限公司 Automatic send a car method and device, computer readable storage medium, terminal
CN109791672A (en) * 2017-08-16 2019-05-21 北京嘀嘀无限科技发展有限公司 A kind of system and method for handling the request of share-car simultaneously
CN111178724A (en) * 2019-12-23 2020-05-19 华南理工大学 A Carpool Scheduling Method Based on Evolutionary Algorithm
CN107103383B (en) * 2017-03-28 2020-07-14 大连理工大学 A dynamic carpooling scheduling method based on taxi hotspots
CN111523702A (en) * 2020-03-30 2020-08-11 深圳大学 Optimization method, system, server and storage medium for online car-hailing pick-up point
CN111739329A (en) * 2020-05-29 2020-10-02 腾讯科技(深圳)有限公司 Travel route generation method, travel route generation device, storage medium, and server
CN112766868A (en) * 2021-03-12 2021-05-07 天天惠民(北京)智能物流科技有限公司 Logistics vehicle distribution order matching method and device and computer equipment

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101216913A (en) * 2008-01-11 2008-07-09 北京工业大学 Dynamic matching multi-level screening method for carpooling
US8140256B1 (en) * 2006-08-16 2012-03-20 University Of South Florida Dynamic ride matching system
CN103778588A (en) * 2014-02-18 2014-05-07 钟磊 Hitching car sharing method
US8909475B2 (en) * 2013-03-08 2014-12-09 Zzzoom, LLC Generating transport routes using public and private modes
CN104217249A (en) * 2014-07-02 2014-12-17 浙江工业大学 Dynamic car sharing and matching method based on time and cost constraints
CN104318324A (en) * 2014-10-13 2015-01-28 南京大学 Taxi GPS (Global Positioning System) record based airport bus station and path planning method
CN104408910A (en) * 2014-11-24 2015-03-11 无锡清华信息科学与技术国家实验室物联网技术中心 Taxi-sharing scheduling method beneficial to multiple parties

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8140256B1 (en) * 2006-08-16 2012-03-20 University Of South Florida Dynamic ride matching system
CN101216913A (en) * 2008-01-11 2008-07-09 北京工业大学 Dynamic matching multi-level screening method for carpooling
US8909475B2 (en) * 2013-03-08 2014-12-09 Zzzoom, LLC Generating transport routes using public and private modes
CN103778588A (en) * 2014-02-18 2014-05-07 钟磊 Hitching car sharing method
CN104217249A (en) * 2014-07-02 2014-12-17 浙江工业大学 Dynamic car sharing and matching method based on time and cost constraints
CN104318324A (en) * 2014-10-13 2015-01-28 南京大学 Taxi GPS (Global Positioning System) record based airport bus station and path planning method
CN104408910A (en) * 2014-11-24 2015-03-11 无锡清华信息科学与技术国家实验室物联网技术中心 Taxi-sharing scheduling method beneficial to multiple parties

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107798403A (en) * 2016-09-07 2018-03-13 北京嘀嘀无限科技发展有限公司 A kind of share-car order processing method, server, terminal device and system
CN108268965A (en) * 2017-01-03 2018-07-10 北京嘀嘀无限科技发展有限公司 For resource allocation, for the vehicles scheduling method and its device
CN107103383B (en) * 2017-03-28 2020-07-14 大连理工大学 A dynamic carpooling scheduling method based on taxi hotspots
CN107101643B (en) * 2017-04-10 2019-10-29 浙江工业大学 Car pooling matching method
CN107101643A (en) * 2017-04-10 2017-08-29 浙江工业大学 Car pooling matching method
CN109791672A (en) * 2017-08-16 2019-05-21 北京嘀嘀无限科技发展有限公司 A kind of system and method for handling the request of share-car simultaneously
CN108549959A (en) * 2018-04-11 2018-09-18 车巴达(苏州)网络科技有限公司 Automatic send a car method and device, computer readable storage medium, terminal
CN111178724A (en) * 2019-12-23 2020-05-19 华南理工大学 A Carpool Scheduling Method Based on Evolutionary Algorithm
CN111523702A (en) * 2020-03-30 2020-08-11 深圳大学 Optimization method, system, server and storage medium for online car-hailing pick-up point
CN111523702B (en) * 2020-03-30 2023-01-13 深圳大学 Optimization method, system, server and storage medium for taxi-boarding points of network appointment taxi
CN111739329A (en) * 2020-05-29 2020-10-02 腾讯科技(深圳)有限公司 Travel route generation method, travel route generation device, storage medium, and server
CN111739329B (en) * 2020-05-29 2021-11-02 腾讯科技(深圳)有限公司 Travel route generation method, travel route generation device, storage medium, and server
CN112766868A (en) * 2021-03-12 2021-05-07 天天惠民(北京)智能物流科技有限公司 Logistics vehicle distribution order matching method and device and computer equipment

Similar Documents

Publication Publication Date Title
CN104951848A (en) Real-time car-pooling matching method
CN104217249B (en) A kind of dynamic share-car matching process based on time Yu expense restriction
CN111667086B (en) Vehicle ride-sharing path optimizing method and system
CN110458456B (en) Demand response type public transportation system scheduling method and system based on artificial intelligence
CN106448138A (en) Optimal multi-vehicle scheduling method based on active distribution type taxi service system
CN112466122A (en) Method and device for generating alternative line set and planning line of public traffic line network
CN109949068A (en) A real-time carpooling method and device based on prediction results
CN112561249B (en) Real-time demand-oriented city customized bus scheduling method
CN107392389A (en) Taxi dispatching processing method based on ARIMA models
CN109460936A (en) A kind of public transit vehicle smart shift scheduling method, intelligent terminal and storage medium
CN111882092B (en) Taxi vehicle searching method suitable for shared trip
CN107038858A (en) Method is recommended in the dynamic share-car of the private car that commutes
CN106228275A (en) Method based on ant group algorithm customization public bus network
CN112700034A (en) Method, device and equipment for selecting link joint transport path and readable storage medium
CN114092176A (en) A bus-based urban commuter shuttle planning method
CN111898793A (en) Path selection method considering user perception difference in combined travel mode
CN110400107A (en) An intelligent and agile discovery system and model for idle transportation business
Zhou et al. Research on resource allocation optimization of smart city based on big data
CN111063191A (en) Joint optimization method of departure frequency and network structure for bus network design
CN116434595A (en) An intelligent recommendation system for indoor parking spaces based on big data
CN111127076A (en) A pricing method under taxi sharing model
CN113222248B (en) A method for selecting charging piles for autonomous taxis
CN116187607A (en) A Multi-Agent Reinforcement Learning-Based Public Transport Bridging Method
Huang et al. An analysis of the taxi-sharing organizing and pricing
CN107832887A (en) A kind of shared automobile intelligent optimizing decision-making technique and system based on neutral net

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20150930

WD01 Invention patent application deemed withdrawn after publication