WO2016188151A1 - Searching method and device for optimal route of multiple meeting point applicable for real-time ride-sharing - Google Patents

Searching method and device for optimal route of multiple meeting point applicable for real-time ride-sharing Download PDF

Info

Publication number
WO2016188151A1
WO2016188151A1 PCT/CN2016/073858 CN2016073858W WO2016188151A1 WO 2016188151 A1 WO2016188151 A1 WO 2016188151A1 CN 2016073858 W CN2016073858 W CN 2016073858W WO 2016188151 A1 WO2016188151 A1 WO 2016188151A1
Authority
WO
WIPO (PCT)
Prior art keywords
point
path
cost
optimal
queue
Prior art date
Application number
PCT/CN2016/073858
Other languages
French (fr)
Chinese (zh)
Inventor
李荣华
邱宇轩
毛睿
秦璐
钟舒馨
Original Assignee
深圳大学
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 深圳大学 filed Critical 深圳大学
Publication of WO2016188151A1 publication Critical patent/WO2016188151A1/en

Links

Images

Classifications

    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16ZINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS, NOT OTHERWISE PROVIDED FOR
    • G16Z99/00Subject matter not provided for in other main groups of this subclass

Definitions

  • the invention relates to the field of real-time sharing application technology, in particular to an optimal multi-join point path searching method and device applied to real-time multiplication.
  • Real-time multiplication also known as dynamic carpooling
  • many real-time ride-in applications such as Uber (www.uber.com) and Lyft (www.lyft.com)
  • Uber www.uber.com
  • Lyft www.lyft.com
  • ride-in system there are two types of entities: the driver and the passenger. Passengers can book a car through their smartphone with a location function. They need to provide their geographic location information to the system, and then the system dynamically arranges for the driver to provide a ride for these passengers.
  • the OSR problem the optimal sequenced route
  • [4] F.Li, D.Cheng, M.Hadjieleftheriou, G.Kollios, and S.-H.Teng, "On Trip planning queries in spatial databases,” in Advances in Spatial and Temporal Databases, Springer, 2005, pp. 273-290
  • [5] M. Sharifzadeh, M. Kolahdouzan, and C. Shahabi, "The optimal sequenced route The query, "VLDB J., vol. 17, no. 4, pp. 765-787, 2008” was independently proposed and was promoted in later literature.
  • the goal of the OSR problem is to find a path with the shortest distance.
  • This path starts from a source point and passes through several types of points in a certain order. This certain order is determined by the point. The type is applied and eventually reaches a target point.
  • the OSR problem is different from ours. There are three main differences: 1. In our problem, these nodes do not have any type information, and the OSR passes through a series of points that belong to different types. 2. Unlike the OSR problem, our problem does not impose a type sequence constraint on the optimal path. 3. In the OSR problem, the optimal path must pass through these specific types of nodes, and our problem does not need to go through a specific point. Take Figure 1 as an example.
  • KOR problem (see [10]: X. Cao, L. Chen, G. Cong, and X. Xiao, "Keyword-aware optimal route search," Proc. VLDB Endow., vol. 5, no. 11, pp .1136–1147, 2012), the keyword-aware optimal route.
  • the KOR problem aims to find an optimal s ⁇ t path that passes through all the given keywords, and it also satisfies some established constraints. Obviously, according to the definition, we can know that our problem is fundamentally different from the KOR problem. Therefore, the method of KOR problem in [10] can not be used to solve our problem.
  • the ride-sharing query is in the literature [11] (F. Drews and D. Luxen, “Multi-hop ride sharing,” in Sixth Annual Symposium on Combinatorial Search, 2013.), [12] ( R. Geisberger, D. Luxen, S. Neubauer, P. Sanders, and L. Volker, "Fast detour computation for ride sharing," ArXiv Prepr. ArXiv 09075269, 2009).
  • the goal of this problem is to find an optimal s ⁇ t return path, which contains a subpath s' ⁇ t', where s' and t' are given in the query.
  • the OMP problem is aimed at finding a rendezvous point, and the result of our problem is a s ⁇ t path.
  • the objective function consists of two parts - the length of the path and the distance from all query points to the path.
  • the objective function is only determined by the distance from the query point to the rendezvous point. Because of these differences, existing methods in OMP problems cannot be used to solve our problems.
  • [14] also illustrates that the assembly point of the OMP problem must be a node on the graph through a different proof than the one we use.
  • An optimal multi-join point path search method applied to real-time multiplication including:
  • w(v, u) is the weight of the edge (v, u);
  • the optimal path is obtained after the end of the loop.
  • is returned.
  • the operation of updating (Q, D, (v, X), cost) is as follows:
  • An optimal multi-join point path searching device for real-time multiplication is applicable to a mobile terminal, and the device includes:
  • a path searching unit configured to search for preset information according to the path, and search for an optimal path from the starting point s to the destination point t in the graph G by using a best-priority dynamic programming strategy;
  • Search result output unit for outputting an optimal path searched by the path search unit.
  • the mobile terminal comprises: a mobile phone, a smart phone, a notebook computer, a personal digital assistant, a tablet computer.
  • the present invention has the following advantages:
  • the optimal multi-joining point path searching method proposed by the invention can effectively solve the unsolved technical difficulties in the current real-time multi-function application, that is, how to quickly determine the optimal path for driving after matching the driver and the passengers It is possible to connect all the matching passengers and fill in the gaps in the related technologies in the current real-time sharing application.
  • FIG. 1 is a schematic diagram of a road network according to an embodiment of the present invention.
  • FIG. 2 is a schematic diagram of a path provided by an embodiment of the present invention, assuming that a meeting point x falls on an edge;
  • FIG. 3 is a schematic diagram of a first path constructed according to an embodiment of the present invention, assuming that the meeting point is a node r;
  • FIG. 4 is a schematic diagram of a second path constructed according to an embodiment of the present invention, assuming that its meeting point is a node v;
  • FIG. 5 is a schematic diagram of an extended manner of adopting edge growth for a state (v, X) according to an embodiment of the present invention
  • FIG. 6 is a schematic diagram of an extended manner of adopting point growth for a state (v, X) according to an embodiment of the present invention.
  • the present invention 1) gives a specific definition of the second technical difficulty, and names it OMMPR (optimal multi-meeting-point) Query, the optimal multi-recovery path search problem; 2) An algorithm for solving the OMMRP problem is proposed, hereinafter referred to as the OMMRP algorithm.
  • the algorithm can effectively solve the second technical difficulty in the real-time multiplication problem, namely the OMMRP problem.
  • the present invention abstracts the road network into a weighted graph G(V, E, W), where V, E, and W are a set of points, sets of edges, and weights, respectively.
  • n
  • denote the number of points, and m
  • w (v i, v j) represents the point to point distance between v i v j.
  • the graph G is treated here as an undirected graph, but in practice the invention can be used to process directed graphs.
  • dist(u,v i ) is the distance from node u to node v i .
  • the parameter ⁇ ⁇ (0, 1) is used to balance the specific gravity of the distance between the points in the paths P st and U to P st .
  • the distance between all the points in U to P st occupies the same specific gravity (1- ⁇ ).
  • the method of the present invention can be extended to support the handling of different points of gravity at different points.
  • c(P st ) represents the driver's cost. Represents the cost of all passengers.
  • the goal of the OMMPR search is to find a path P st from the source node s to the destination node t in the graph G such that f(P st ) is minimized.
  • the goal of OMMRP to search for Q(s, t, U, ⁇ ) is to find a s ⁇ t path P st on graph G, such that f(P st ) Minimal, ie
  • ⁇ st is a collection of all paths from s to t.
  • the meeting point must be a point on the graph. Below, proof will be given.
  • the present invention proposes an efficient algorithm - OMMPR algorithm.
  • the OMMPR algorithm is based on dynamic programming, using (u, X) to represent a state, where u represents the end node of a path and X is a subset of U.
  • the algorithm finds the optimal path by extending the end node of a path and the subset X of U.
  • f(u,X) be the average cost of an OMMPR path, ie
  • the cost on the path is 0, and the cost from the node in U to the path is ⁇ x ⁇ X dist(x, s).
  • the invention For each state (v, X), the invention has two modes of expansion, edge growing and node growing. As the side grows, the present invention extends the state (v, X) to the new state (u, X) with one edge (v, u) ⁇ E. As the point grows, the present invention extends each state (v, X) to a new state (v, X ⁇ ⁇ x ⁇ ) with each node x ⁇ U-X. Then the state transition equation is as follows:
  • the present invention can take the minimum cost of the above two as f(u, X), that is, the state transition equation above.
  • the present invention can solve the OMMRP search problem by a best-first dynamic programming strategy.
  • Figure G (V, E, W), point set U, ⁇ , starting point s, destination point t.
  • the present invention uses a priority queue Q to achieve the best priority strategy.
  • Each element in Q is a tuple ((v, X), cost).
  • the cost in each element ((v, X), cost) is the priority order, and the element with the lowest cost is always at the head of the queue.
  • Queue Q has three operations, pop, push, and update.
  • the pop-up operation dequeues the leader element, which is the lowest cost element, from the queue.
  • the push operation pushes an element into the queue.
  • the update operation updates the cost of an element in the queue and adjusts the queue so that it stays in order of priority.
  • a set D is also used in the algorithm to save the state that has been calculated.
  • the present invention also provides an optimal multi-join point path searching device, including:
  • a path searching unit configured to search for preset information according to the path, and search for an optimal path from the starting point s to the destination point t in the graph G by using a best-priority dynamic programming strategy;
  • Search result output unit used to output and display the optimal path; the display mode can adopt different ways according to the user's usage habits or individualized requirements.
  • the above-mentioned optimal multi-joining point path searching device can be applied to various mobile terminals, and specifically can be a mobile phone, a smart phone, a notebook computer, a personal digital assistant, a tablet computer, and the terminal can be used as long as a terminal equipped with a real-time sharing application can be used. .
  • the above algorithm efficiently solves the problem of optimal path determination in real-time multiplication applications, filling A gap in the prior art.
  • Two examples will be enumerated below to illustrate the application of the above algorithm.
  • Example 1 the example in Example 1 is used to demonstrate the algorithm flow of the OMMRP algorithm in Figure 1 to solve the optimal multi-rejoin path. After changing the parameters s, t, ⁇ , U, the algorithm flow is similar to this example.

Abstract

A searching method and device for an optimal route of multiple meeting points applicable for real-time ride-sharing. The method comprises: obtaining preset route searching information comprising a graph G = (V, E, W), a point set of U, α, a starting point s, and a destination point t; initializing a queue Q and a set D, and adding an initial state ((s, ∅), 0) into the queue Q; and if the queue Q is not empty, then repeating the following steps: (A) popping a first element ((v, X), cost) in the queue Q; (B) returning cost if both v = t and X = U; (C) adding a state (v, X) into the set D; (D) iterating through all edges (v, u) to update (Q, D, (v, X),cost + α × w(v, u)); (E) iterating through all points x in the set U-X to update (Q, D, (v, X∪{x}), cost + (1 - α) × dist(x, v)); and obtaining an optimal route upon completion of the iteration. The searching method for an optimal route of multiple meeting points can efficiently solve the technical difficulties unresolved in current real-time ride-sharing applications, namely, how to rapidly determine an optimal route for a driver to pick up all matched passengers after the driver and the passengers are matched, thus bridging the gap in the related art of the current real-time ride-sharing applications.

Description

应用于实时合乘的最优多会合点路径搜索方法及装置Optimal multi-join point path searching method and device applied to real-time multiplication 技术领域Technical field
本发明涉及实时合乘应用技术领域,尤其涉及一种应用于实时合乘的最优多会合点路径搜索方法及装置。The invention relates to the field of real-time sharing application technology, in particular to an optimal multi-join point path searching method and device applied to real-time multiplication.
背景技术Background technique
实时合乘,又被称作动态拼车,是现代交通系统中一种颇具发展前景的节省燃油并减轻交通拥堵的方式。最近一段时间以来,许多实时合乘应用,诸如Uber(www.uber.com)、Lyft(www.lyft.com),在智能手机用户中越来越受欢迎,因为这可以帮助他们规划旅程。在典型的实时合乘系统中,有两种实体:驾驶者和乘客。乘客可以通过他们带定位功能的智能手机来预定汽车。他们需要提供他们的地理位置信息给系统,随后系统动态地安排驾驶者为这些乘客提供合乘服务。Real-time multiplication, also known as dynamic carpooling, is a promising way to save fuel and reduce traffic congestion in modern transportation systems. Recently, many real-time ride-in applications, such as Uber (www.uber.com) and Lyft (www.lyft.com), have become increasingly popular among smartphone users as it helps them plan their journey. In a typical real-time ride-in system, there are two types of entities: the driver and the passenger. Passengers can book a car through their smartphone with a location function. They need to provide their geographic location information to the system, and then the system dynamically arranges for the driver to provide a ride for these passengers.
架设一个这样的实时合乘系统不是一件容易的事。主要的技术难点有两个:1、如何快速地找到可以服务进来的用户请求的驾驶者;2、匹配好了驾驶者和乘客之后,又该如何快速地确定最优的路径让驾驶者可以接上所有的匹配的乘客。在文献里,现有的一些研究主要集中在解决第一个问题。Setting up such a real-time ride system is not an easy task. The main technical difficulties are two: 1. How to quickly find the driver who can service the incoming user request; 2. After matching the driver and the passenger, how to quickly determine the optimal path for the driver to pick up All the matching passengers. In the literature, some of the existing research focuses on solving the first problem.
例如,在文献[2]“S.Ma,Y.Zheng,and O.Wolfson,“T-share:A large-scale dynamic taxi ridesharing service,”in 2013IEEE 29th International Conference on Data Engineering(ICDE),2013,pp.410–421”和文献[3]“S.Ma and O.Wolfson,“Analysis and evaluation of the slugging form of ridesharing,”in Proceedings of the21st ACM SIGSPATIAL International Conference on Advances in Geographic  Information Systems,2013,pp.64–73”中,Shuo Ma等人做出了一个叫T-share的系统,用于的士合乘应用中,驾驶者和乘客的实时匹配。在文献[1](Y.Huang,R.Jin,F.Bastani,and X.S.Wang,“Large Scale Real-time Ridesharing with Service Guarantee on Road Networks,”ArXiv13026666Cs,Feb.2013)中,Yan Huang等人提出了一种高效的活动树算法来支持一种有服务保证的驾驶者和乘客之间的匹配。这几种算法的工作都集中在开发一种实用的算法来高效地解决驾驶者和乘客之间的匹配问题,即上文所述的技术难点1。而对于上文所述的技术难点2,据我们所知,暂时还没有相关的研究见诸报道。相类似的研究有:OSR问题、KOR问题、合乘查询问题以及OMP问题。For example, in [2] "S. Ma, Y. Zheng, and O. Wolfson, "T-share: A large-scale dynamic taxi ridesharing service," in 2013 IEEE 29th International Conference on Data Engineering (ICDE), 2013, Pp.410–421” and [3] “S.Ma and O.Wolfson, “Analysis and evaluation of the slugging form of ridesharing,” in Proceedings of the 21st ACM SIGSPATIAL International Conference on Advances in Geographic In Information Systems, 2013, pp. 64–73, Shuo Ma et al. made a system called T-share for real-time matching of drivers and passengers in taxi-combining applications. [1] (Y. Huang, R. Jin, F. Bastani, and XSWang, "Large Scale Real-time Ridesharing with Service Guarantee on Road Networks," ArXiv 13026666Cs, Feb. 2013), Yan Huang et al. proposed an efficient The activity tree algorithm supports a match between a driver and a passenger with service guarantees. The work of these algorithms focuses on developing a practical algorithm to efficiently solve the matching problem between the driver and the passenger, ie The technical difficulties described above are 1. For the technical difficulties 2 described above, as far as we know, there are no related studies reported in the past. Similar studies include: OSR, KOR, and multiplication queries. Problems and OMP issues.
OSR问题,即最优序列路径问题(optimal sequenced route),该问题分别在文献[4](F.Li,D.Cheng,M.Hadjieleftheriou,G.Kollios,and S.-H.Teng,“On trip planning queries in spatial databases,”in Advances in Spatial and Temporal Databases,Springer,2005,pp.273–290)和文献[5](M.Sharifzadeh,M.Kolahdouzan,and C.Shahabi,“The optimal sequenced route query,”VLDB J.,vol.17,no.4,pp.765–787,2008)中被独立提出,并且在之后的文献中被推广。根据[5]中的定义,OSR问题的目标是找出一条有着最短距离的路径,这条路径从一个源点出发,按照一定的顺序经过数个有类型的点,这个一定的顺序由点的类型施加,最终到达一个目标点。OSR问题同我们的问题是不同的,主要有以下三个不同点:1、在我们的问题中,这些节点是没有任何类型信息的,而OSR经过的一系列点是分属不同的类型的。2、不同于OSR问题,我们的问题并不会给最优路径强加一个类型序列的约束。3、OSR问题里,最优路径必须经过这些特定类型的节点,而我们的问题并不需要经过特定的点。以图1为例子。假设我们的源节点和目的节点分别为v1和v10,我们假设乘客到路径和驾驶者沿着 路径行驶的花费,所占的权重相同,并且假设乘客在v6点,即U={v6}。那么对于这个问题,OSR求解的结果是路径(v1,v3,v6,v8,v10),而我们这个问题的结果应该是(v1,v3,v7,v10)。因为结果如此地不同,所以之前用于解决的OSR问题的技术(参阅文献[4],文献[5],文献[9](M.Sharifzadeh and C.Shahabi,“Processing optimal sequenced route queries using voronoi diagrams,”GeoInformatica,vol.12,no.4,pp.411–433,2008.))都不能被用于解决本问题。The OSR problem, the optimal sequenced route, is in the literature [4] (F.Li, D.Cheng, M.Hadjieleftheriou, G.Kollios, and S.-H.Teng, "On Trip planning queries in spatial databases," in Advances in Spatial and Temporal Databases, Springer, 2005, pp. 273-290) and [5] (M. Sharifzadeh, M. Kolahdouzan, and C. Shahabi, "The optimal sequenced route The query, "VLDB J., vol. 17, no. 4, pp. 765-787, 2008" was independently proposed and was promoted in later literature. According to the definition in [5], the goal of the OSR problem is to find a path with the shortest distance. This path starts from a source point and passes through several types of points in a certain order. This certain order is determined by the point. The type is applied and eventually reaches a target point. The OSR problem is different from ours. There are three main differences: 1. In our problem, these nodes do not have any type information, and the OSR passes through a series of points that belong to different types. 2. Unlike the OSR problem, our problem does not impose a type sequence constraint on the optimal path. 3. In the OSR problem, the optimal path must pass through these specific types of nodes, and our problem does not need to go through a specific point. Take Figure 1 as an example. Assuming that our source and destination nodes are v 1 and v 10 respectively , we assume that the passengers travel to the path and the driver spends the same amount of time along the path, and assume that the passenger is at v 6 points, ie U={v 6 }. Then for this problem, the result of the OSR solution is the path (v 1 , v 3 , v 6 , v 8 , v 10 ), and the result of our problem should be (v 1 , v 3 , v 7 , v 10 ). Because the results are so different, the techniques used to solve the OSR problem (see [4], [5], [9] (M. Sharifzadeh and C. Shahabi, "Processing optimal sequenced route queries using voronoi diagrams "GeoInformatica, vol.12, no.4, pp.411-433, 2008.)) cannot be used to solve this problem.
KOR问题(参阅文献[10]:X.Cao,L.Chen,G.Cong,and X.Xiao,“Keyword-aware optimal route search,”Proc.VLDB Endow.,vol.5,no.11,pp.1136–1147,2012),即关键词发现最优路径问题(keyword-aware optimal route)。KOR问题旨在找到一条最优的s~t路径,该路径经过的点覆盖了所有给定的关键词,而且它同时满足一些既定的约束。很明显,根据定义就可以知道我们的问题跟KOR问题有着根本的区别,故而[10]中KOR问题的方法不可以用于解决我们的问题。KOR problem (see [10]: X. Cao, L. Chen, G. Cong, and X. Xiao, "Keyword-aware optimal route search," Proc. VLDB Endow., vol. 5, no. 11, pp .1136–1147, 2012), the keyword-aware optimal route. The KOR problem aims to find an optimal s~t path that passes through all the given keywords, and it also satisfies some established constraints. Obviously, according to the definition, we can know that our problem is fundamentally different from the KOR problem. Therefore, the method of KOR problem in [10] can not be used to solve our problem.
合乘查询问题(ride-sharing query),在文献[11](F.Drews and D.Luxen,“Multi-hop ride sharing,”in Sixth Annual Symposium on Combinatorial Search,2013.),文献[12](R.Geisberger,D.Luxen,S.Neubauer,P.Sanders,and L.Volker,“Fast detour computation for ride sharing,”ArXiv Prepr.ArXiv09075269,2009)中被提出。该问题的目标在于找到一条最优s~t迂回路径,该路径包含一子路径s'~t',这里的s'和t'在查询中给出。明显地,合乘查询问题的最优s~t迂回路径经过给定的点s'和t',而我们的问题里的路径并不需要经过查询点。因为这一点根本的不同,[11],[12]里给出的方法不能被用于我们的问题。The ride-sharing query is in the literature [11] (F. Drews and D. Luxen, "Multi-hop ride sharing," in Sixth Annual Symposium on Combinatorial Search, 2013.), [12] ( R. Geisberger, D. Luxen, S. Neubauer, P. Sanders, and L. Volker, "Fast detour computation for ride sharing," ArXiv Prepr. ArXiv 09075269, 2009). The goal of this problem is to find an optimal s~t return path, which contains a subpath s'~t', where s' and t' are given in the query. Obviously, the optimal s~t迂 path of the multiplicative query problem passes through the given points s' and t', and the path in our problem does not need to go through the query point. Because of this fundamental difference, the methods given in [11], [12] cannot be used for our problems.
OMP问题,最优会合点(optimal meeting point)问题(参阅文献[13](Z.Xu and H.-A.Jacobsen,“Processing proximity relations in road networks,”in  Proceedings of the 2010ACM SIGMOD international conference on management of data,2010,pp.243–254),文献[14](D.Yan,Z.Zhao,and W.Ng,“Efficient algorithms for finding optimal meeting point on road networks,”Proc.VLDB Endow.,vol.4,no.11,2011))。该问题给定一个查询点集,要求一个集合点,使得所有的查询点到集合点的花费总和最小。OMP问题也明显不同于我们的问题。一方面,OMP问题旨在找到一个集合点,而我们的问题要求的结果是一条s~t路径。另一方面,在我们的问题里,目标函数包含两个部分——路径的长度和所有查询点到路径的距离。而在OMP问题里,目标函数只由查询点到集合点的距离决定。因为这些不同,OMP问题里现有的方法不能被用于求解我们的问题。而且,[14]还通过一种不同与我们所用的证明来说明OMP问题的集合点必然为图上的一个节点。OMP problem, optimal meeting point problem (see [13] (Z. Xu and H.-A. Jacobsen, "Processing proximity relations in road networks," in Proceedings of the 2010 ACM SIGMOD international conference on management of data, 2010, pp. 243–254), [14] (D. Yan, Z. Zhao, and W. Ng, “Efficient algorithms for finding optimal meeting point on road networks , "Proc. VLDB Endow., vol. 4, no. 11, 2011)). The problem is given a set of query points, requiring a rendezvous so that the sum of all query points to the rendezvous is the smallest. The OMP problem is also significantly different from ours. On the one hand, the OMP problem is aimed at finding a rendezvous point, and the result of our problem is a s~t path. On the other hand, in our problem, the objective function consists of two parts - the length of the path and the distance from all query points to the path. In the OMP problem, the objective function is only determined by the distance from the query point to the rendezvous point. Because of these differences, existing methods in OMP problems cannot be used to solve our problems. Moreover, [14] also illustrates that the assembly point of the OMP problem must be a node on the graph through a different proof than the one we use.
此外,值得注意的是,源节点和目的节点之间的最短路径明显不是我们问题的解。故而,Dijkstra算法以及其他许多基于索引的最短路径解法都不能被应用于我们的问题。In addition, it is worth noting that the shortest path between the source node and the destination node is obviously not the solution to our problem. Therefore, the Dijkstra algorithm and many other index-based shortest path solutions cannot be applied to our problem.
发明内容Summary of the invention
本发明的目的在于提供一种应用于实时合乘的最优多会合点路径搜索方法及装置,能够快速地确定最优的路径以让驾驶者可以接上所有的匹配的乘客。It is an object of the present invention to provide an optimal multi-join point path search method and apparatus for real-time multiplication, which can quickly determine an optimal path for the driver to connect to all matching passengers.
本发明的目的是通过以下技术方案实现的。The object of the present invention is achieved by the following technical solutions.
一种应用于实时合乘的最优多会合点路径搜索方法,包括:An optimal multi-join point path search method applied to real-time multiplication, including:
获取路径搜索预设信息,包括:图G=(V,E,W),点集U,α,出发点s,目的点t;其中,V、E和W分别为点集、边集和权值的集合;
Figure PCTCN2016073858-appb-000001
为顶点的子集;参数α∈(0,1),用于平衡图G上s~t路径Pst和U中的点到路径Pst之间的距离 和的比重;
Obtain path search preset information, including: graph G=(V, E, W), point set U, α, starting point s, destination point t; wherein, V, E, and W are point sets, edge sets, and weights, respectively Collection
Figure PCTCN2016073858-appb-000001
a subset of vertices; a parameter α ∈ (0, 1) for balancing the proportion of the distance between the point s to the path P st and U in the graph G to the path P st ;
初始化队列Q和集合D,将初始状态
Figure PCTCN2016073858-appb-000002
加入队列Q;
Initialize queue Q and set D, initial state
Figure PCTCN2016073858-appb-000002
Join the queue Q;
当所述队列Q不为空时重复以下步骤:Repeat the following steps when the queue Q is not empty:
A、弹出队列Q中第一个元素((v,X),cost);其中v为子路径的终点,X为纳入子路径的U的子集,cost为状态(v,X)的花费。A. The first element ((v, X), cost) in the pop-up queue Q; where v is the end point of the sub-path, X is a subset of Us that are included in the sub-path, and cost is the cost of the state (v, X).
B、如果v=t同时X=U则返回cost;B. If v=t and X=U, return cost;
C、将状态(v,X)加入集合D;C, adding the state (v, X) to the set D;
D、对于集合E里的所有(v,u)边循环,更新(Q,D,(v,X),cost+α×w(v,u));D, for all (v, u) edge loops in set E, update (Q, D, (v, X), cost + α × w (v, u));
w(v,u)为边(v,u)的权值;w(v, u) is the weight of the edge (v, u);
E、对于集合U-X里的所有x点循环,更新(Q,D,(v,X∪{x}),cost+(1-α)×dist(x,v));其中dist(x,v)为点x到点v的距离。E. For all x-point loops in the set UX, update (Q, D, (v, X∪{x}), cost+(1-α)×dist(x,v)); where dist(x,v) The distance from point x to point v.
循环结束后得到最优路径。The optimal path is obtained after the end of the loop.
优选地,所述方法中,若在所述循环结束还没有找到最优解,则返回∞。Preferably, in the method, if an optimal solution has not been found at the end of the cycle, then ∞ is returned.
优选地,所述方法中,更新(Q,D,(v,X),cost)的操作如下:Preferably, in the method, the operation of updating (Q, D, (v, X), cost) is as follows:
当状态(v,X)∈D时,直接返回;When the state (v, X) ∈ D, return directly;
当状态
Figure PCTCN2016073858-appb-000003
时,将状态((v,X),cost)压入队列Q;
When state
Figure PCTCN2016073858-appb-000003
When the state ((v, X), cost) is pushed into the queue Q;
当cost<Q.cost((v,X))时,Q.update((v,X),cost)。When cost<Q.cost((v,X)), Q.update((v,X), cost).
一种应用于实时合乘的最优多会合点路径搜索装置,适用于移动终端,所述装置包括:An optimal multi-join point path searching device for real-time multiplication is applicable to a mobile terminal, and the device includes:
搜索信息输入单元:用于获取路径搜索预设信息,包括:图G=(V,E,W),点集U,α,出发点s,目的点t;其中,V、E和W分别为点集、边集和权值的集合;
Figure PCTCN2016073858-appb-000004
为顶点的子集;参数α∈(0,1),用于平衡路径Pst和U中的点到Pst之间的距离和的比重;
Search information input unit: used to obtain path search preset information, including: graph G=(V, E, W), point set U, α, starting point s, destination point t; wherein, V, E, and W are points respectively a set of sets, edge sets, and weights;
Figure PCTCN2016073858-appb-000004
a subset of vertices; the parameter α∈(0,1) is used to balance the distance and the proportion of the distance between the points P St and U to P st ;
路径搜索单元:用于根据所述路径搜索预设信息,通过最好优先的动态规划策略,搜索在所述图G中从出发点s到目的点t的最优路径;a path searching unit: configured to search for preset information according to the path, and search for an optimal path from the starting point s to the destination point t in the graph G by using a best-priority dynamic programming strategy;
搜索结果输出单元:用于输出显示所述路径搜索单元所搜索到的最优路径。Search result output unit: for outputting an optimal path searched by the path search unit.
优选地,所述移动终端包括:移动电话、智能电话、笔记本电脑、个人数字助理、平板电脑。Preferably, the mobile terminal comprises: a mobile phone, a smart phone, a notebook computer, a personal digital assistant, a tablet computer.
本发明实施例与现有技术相比,本发明具有以下优点:Compared with the prior art, the present invention has the following advantages:
本发明提出的最优多会合点路径搜索方法能够高效地解决目前实时合乘应用中尚未解决的技术难点,即,在匹配好了驾驶者和乘客之后,如何快速地确定最优的路径让驾驶者可以接上所有的匹配的乘客,填补了目前实时合乘应用中相关技术的空白。The optimal multi-joining point path searching method proposed by the invention can effectively solve the unsolved technical difficulties in the current real-time multi-function application, that is, how to quickly determine the optimal path for driving after matching the driver and the passengers It is possible to connect all the matching passengers and fill in the gaps in the related technologies in the current real-time sharing application.
附图说明DRAWINGS
图1是本发明实施例提供的一个公路网络的示意图;1 is a schematic diagram of a road network according to an embodiment of the present invention;
图2是本发明实施例提供的一条路径示意图,假定其会合点x落在边上;2 is a schematic diagram of a path provided by an embodiment of the present invention, assuming that a meeting point x falls on an edge;
图3是本发明实施例构造的第一条路径示意图,假定其会合点为节点r;3 is a schematic diagram of a first path constructed according to an embodiment of the present invention, assuming that the meeting point is a node r;
图4是本发明实施例构造的第二条路径示意图,假定其会合点为节点v;4 is a schematic diagram of a second path constructed according to an embodiment of the present invention, assuming that its meeting point is a node v;
图5是本发明实施例提供的对状态(v,X)采用边增长的扩展方式示意图;FIG. 5 is a schematic diagram of an extended manner of adopting edge growth for a state (v, X) according to an embodiment of the present invention; FIG.
图6是本发明实施例提供的对状态(v,X)采用点增长的扩展方式示意图。FIG. 6 is a schematic diagram of an extended manner of adopting point growth for a state (v, X) according to an embodiment of the present invention.
具体实施方式Detailed ways
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。 The present invention will be further described in detail below with reference to the accompanying drawings and embodiments. It is understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.
针对背景技术中没有用于解决实时合乘问题中第二个技术难点的问题,本发明1)给出了第二个技术难点的具体定义,并将其命名为OMMPR(optimal multi-meeting-point query,最优多会合点路径搜索)问题;2)提出了一种用于解决OMMPR问题的算法,下文称之为OMMPR算法。该算法能够有效地求解实时合乘问题中的第二个技术难点,即OMMPR问题。In view of the problem that the second technical difficulty in solving the real-time multiplication problem is not solved in the background art, the present invention 1) gives a specific definition of the second technical difficulty, and names it OMMPR (optimal multi-meeting-point) Query, the optimal multi-recovery path search problem; 2) An algorithm for solving the OMMRP problem is proposed, hereinafter referred to as the OMMRP algorithm. The algorithm can effectively solve the second technical difficulty in the real-time multiplication problem, namely the OMMRP problem.
一、定义OMMPR问题。First, define the OMMRP problem.
本发明将公路网络抽象成为一个加权图G(V,E,W),这里V,E和W分别为点集,边集和权值的集合。令n=|V|表示点的数目,m=|E|表示边的数目。边(vi,vj)上的权值w(vi,vj)表示点vi到点vj之间的距离。这里将图G作为一个无向图来处理,但是实际上本发明可以被用于处理有向图。本发明将s~t路径记为Pst=(s,v1,…,vk-1,t)。令v0=s,vk=t,
Figure PCTCN2016073858-appb-000005
为Pst上的节点的集合,即
Figure PCTCN2016073858-appb-000006
则可以将路径上的总花费记为
Figure PCTCN2016073858-appb-000007
注意这里的路径不一定是一条无重复顶点的简单路径。令
Figure PCTCN2016073858-appb-000008
为顶点的子集,对于每一个u∈U,我们定义从节点u到路径Pst上的点集
Figure PCTCN2016073858-appb-000009
的距离为:
The present invention abstracts the road network into a weighted graph G(V, E, W), where V, E, and W are a set of points, sets of edges, and weights, respectively. Let n=|V| denote the number of points, and m=|E| denote the number of edges. On the right side (v i, v j) the value of w (v i, v j) represents the point to point distance between v i v j. The graph G is treated here as an undirected graph, but in practice the invention can be used to process directed graphs. The present invention records the s to t path as P st = (s, v 1 , ..., v k-1 , t). Let v 0 = s, v k = t,
Figure PCTCN2016073858-appb-000005
Is a collection of nodes on P st , ie
Figure PCTCN2016073858-appb-000006
You can record the total cost on the path as
Figure PCTCN2016073858-appb-000007
Note that the path here is not necessarily a simple path with no repeating vertices. make
Figure PCTCN2016073858-appb-000008
For a subset of vertices, for each u∈U we define a set of points from node u to path P st
Figure PCTCN2016073858-appb-000009
The distance is:
Figure PCTCN2016073858-appb-000010
Figure PCTCN2016073858-appb-000010
这里的dist(u,vi)是从节点u到节点vi的距离。很明显的,这里的
Figure PCTCN2016073858-appb-000011
表明了从节点u到路径Pst的距离。如果一个节点
Figure PCTCN2016073858-appb-000012
并且有
Figure PCTCN2016073858-appb-000013
那么本发明就称节点v为节点u与路径Pst的会合点。后面将会证明在本发明的问题里,会合点必然为图上的一个点。
Here dist(u,v i ) is the distance from node u to node v i . Obviously, here
Figure PCTCN2016073858-appb-000011
Indicates the distance from node u to path P st . If a node
Figure PCTCN2016073858-appb-000012
And there is
Figure PCTCN2016073858-appb-000013
Then the present invention calls the node v the meeting point of the node u and the path P st . As will be shown later, in the problem of the present invention, the meeting point is necessarily a point on the graph.
本发明定义
Figure PCTCN2016073858-appb-000014
为集合U中所有的点到路径Pst的距离总和,即
Figure PCTCN2016073858-appb-000015
则对于给定的s,t,U和α,可以构造出路径Pst的平均花费函数:
Definition of the invention
Figure PCTCN2016073858-appb-000014
The sum of the distances from all points in the set U to the path P st , ie
Figure PCTCN2016073858-appb-000015
Then for a given s, t, U and α, the average cost function of the path P st can be constructed:
Figure PCTCN2016073858-appb-000016
Figure PCTCN2016073858-appb-000016
这里的参数α∈(0,1),用于平衡路径Pst和U中的点到Pst之间的距离和的比重。在这里考虑U中所有的点到Pst之间的距离占有相同的比重(1-α)。但是本发明的方法可以被扩展为支持处理不同点不同比重的情况。明显地,在实时合乘应用中,c(Pst)代表了驾驶者的花费,
Figure PCTCN2016073858-appb-000017
代表了所有乘客的花费。OMMPR搜索的目标就是在图G中找到一条从源节点s到目的节点t的路径Pst,使得f(Pst)取得最小。
Here, the parameter α ∈ (0, 1) is used to balance the specific gravity of the distance between the points in the paths P st and U to P st . Here, consider that the distance between all the points in U to P st occupies the same specific gravity (1-α). However, the method of the present invention can be extended to support the handling of different points of gravity at different points. Obviously, in real-time multiplication applications, c(P st ) represents the driver's cost.
Figure PCTCN2016073858-appb-000017
Represents the cost of all passengers. The goal of the OMMPR search is to find a path P st from the source node s to the destination node t in the graph G such that f(P st ) is minimized.
OMMPR搜索的正式定义如下:The official definition of OMMPR search is as follows:
对于给定的路网G=(V,E,W),OMMPR搜索Q(s,t,U,α)的目标是找到一条图G上的s~t路径Pst,使得f(Pst)最小,即For a given road network G=(V, E, W), the goal of OMMRP to search for Q(s, t, U, α) is to find a s~t path P st on graph G, such that f(P st ) Minimal, ie
minf(Pst)Minf(P st )
s.t.Pst∈Ρst stP st ∈Ρ st
这里的Ρst是所有从s到t的路径的集合。Here Ρ st is a collection of all paths from s to t.
前面提到,会合点必然为图上的一个点。下面,将给出证明。As mentioned earlier, the meeting point must be a point on the graph. Below, proof will be given.
重述:对于给定的一个路网G=(V,E,W)和一个OMMPR搜索Q(s,t,U,α),所有的节点u∈U和最优路径Pst的会合点必然在集合V中。Restatement: For a given road network G=(V, E, W) and an OMMRP search Q(s, t, U, α), the convergence point of all nodes u∈U and the optimal path P st is inevitable In the set V.
证明:利用反证法来证明这个问题。对于每一个节点u∈U和最优s~t路径Pst,不失一般性,假定u和Pst的会合点落在边(r,v)上,如图2所示。将该会合点记为x。则有:Proof: Use the counter-evidence method to prove this problem. For each node u∈U and the optimal s~t path P st , without loss of generality, it is assumed that the meeting point of u and P st falls on the edge (r, v), as shown in FIG. 2 . Record the meeting point as x. Then there are:
f(Pst)=α(c(Psr)+c(Prt)+2w(r,x))+(1-α)(dist(u,v)+w(v,x))。f(P st )=α(c(P sr )+c(P rt )+2w(r,x))+(1-α)(dist(u,v)+w(v,x)).
为了获得矛盾,构造两条路径
Figure PCTCN2016073858-appb-000018
Figure PCTCN2016073858-appb-000019
分别如图3和图4所示。u和
Figure PCTCN2016073858-appb-000020
的会合点为节点r,u和
Figure PCTCN2016073858-appb-000021
的会合点为节点v。则有
In order to obtain contradictions, construct two paths
Figure PCTCN2016073858-appb-000018
with
Figure PCTCN2016073858-appb-000019
See Figure 3 and Figure 4, respectively. u and
Figure PCTCN2016073858-appb-000020
The meeting point is node r, u and
Figure PCTCN2016073858-appb-000021
The meeting point is node v. Then there is
Figure PCTCN2016073858-appb-000022
Figure PCTCN2016073858-appb-000022
Figure PCTCN2016073858-appb-000023
Figure PCTCN2016073858-appb-000023
做差,可以求出: If you do poor, you can find:
Figure PCTCN2016073858-appb-000024
Figure PCTCN2016073858-appb-000025
Figure PCTCN2016073858-appb-000024
with
Figure PCTCN2016073858-appb-000025
故而有
Figure PCTCN2016073858-appb-000026
这意味着可以
Figure PCTCN2016073858-appb-000027
Figure PCTCN2016073858-appb-000028
中必有一条路径比Pst更优,这与条件Pst是最优路径相矛盾。所以命题得证。
So there is
Figure PCTCN2016073858-appb-000026
This means that
Figure PCTCN2016073858-appb-000027
with
Figure PCTCN2016073858-appb-000028
There must be a path better than P st , which contradicts the condition P st is the optimal path. So the proposition is proved.
二、针对OMMPR问题,本发明提出了一种高效的算法——OMMPR算法。Second, for the OMMRP problem, the present invention proposes an efficient algorithm - OMMPR algorithm.
OMMPR算法基于动态规划,利用(u,X)来表示一个状态,这里的u表示一条路径的终节点,X是U的一个子集。该算法通过扩展一条路径的终节点和U的子集X来寻找最优路径,当u=t,X=U的时候,就取得了最优的路径。令f(u,X)为一条OMMPR路径的平均花费,即
Figure PCTCN2016073858-appb-000029
当u=s的时候,有f(s,X)满足f(s,X)=(1-α)×∑x∈Xdist(x,s)。因为当u=s的时候,从s到u的路径只包含一个点s,所以路径上的花费为0,而从U中节点到路径的花费和为∑x∈Xdist(x,s)。明显地,当
Figure PCTCN2016073858-appb-000030
时,
Figure PCTCN2016073858-appb-000031
The OMMPR algorithm is based on dynamic programming, using (u, X) to represent a state, where u represents the end node of a path and X is a subset of U. The algorithm finds the optimal path by extending the end node of a path and the subset X of U. When u=t, X=U, the optimal path is obtained. Let f(u,X) be the average cost of an OMMPR path, ie
Figure PCTCN2016073858-appb-000029
When u = s, f(s, X) satisfies f(s, X) = (1 - α) × ∑ x ∈ X dist (x, s). Because when u=s, the path from s to u contains only one point s, the cost on the path is 0, and the cost from the node in U to the path is ∑ x∈X dist(x, s). Obviously, when
Figure PCTCN2016073858-appb-000030
Time,
Figure PCTCN2016073858-appb-000031
对于每一个状态(v,X),本发明有两种扩展方式,边增长(edge growing)和点增长(node growing)。在边增长时,本发明用一条边(v,u)∈E来扩展状态(v,X)为新的状态(u,X)。在点增长时,本发明用每一个节点x∈U-X来扩展状态(v,X)为新的状态(v,X∪{x})。则状态转移方程如下所示:For each state (v, X), the invention has two modes of expansion, edge growing and node growing. As the side grows, the present invention extends the state (v, X) to the new state (u, X) with one edge (v, u) ∈ E. As the point grows, the present invention extends each state (v, X) to a new state (v, X ∪ {x}) with each node x ∈ U-X. Then the state transition equation is as follows:
Figure PCTCN2016073858-appb-000032
Figure PCTCN2016073858-appb-000032
上式的解释如下:令Psu表示从s出发到u结束,考虑点集X的最优的路径。f(u,X)表示Psu的花费。则f(u,X)可以通过以下两种方式获得。The above formula is explained as follows: Let P su denote the end from s to the end of u, considering the optimal path of point set X. f(u, X) represents the cost of P su . Then f(u, X) can be obtained in the following two ways.
1、边增长。对于集合X中的查询点和最优路径Psu,假设所有的会合点都在集合VPsu-{u}上。在这种情况下,可以通过扩展子路径Psv,在它上面加上边(v,u)∈E,来获得最优的路径Psu。因为此时所有的会合点都落在最优子路径Psv上。图5展示了边增长的过程。很明显,此时有
Figure PCTCN2016073858-appb-000033
1. While growing. For the query point and the optimal path P su in the set X, it is assumed that all the rendezvous points are on the set V Psu -{u}. In this case, by extending the sub-path P sv, at its top with the edge (v, u) ∈E, to obtain the optimal path P su. Because all the rendezvous points fall on the optimal subpath P sv at this time. Figure 5 shows the process of edge growth. Obviously, there is
Figure PCTCN2016073858-appb-000033
2、点增长。假设至少一个点x∈X与最优路径Psu的会合点落在点u。在这种情况下,可以通过扩展考虑集合X-{x}的最优路径Psu来获得考虑集合X的最优路径Psu。图6展示了点增长的过程。可以得到2. Point growth. It is assumed that the meeting point of at least one point x ∈ X and the optimal path P su falls at point u. In this case, the optimal path can be taken into account set X P su extended by considering the set of X- {x} is the optimal path P su. Figure 6 shows the process of point growth. Can get
Figure PCTCN2016073858-appb-000034
Figure PCTCN2016073858-appb-000034
显然,本发明可以通过取上面两者的最小花费作为f(u,X),也就是上面的那个状态转移方程式。Obviously, the present invention can take the minimum cost of the above two as f(u, X), that is, the state transition equation above.
基于上面的状态转移方程,本发明可以通过最好优先(best-first)的动态规划策略来求解OMMPR搜索问题。Based on the above state transition equation, the present invention can solve the OMMRP search problem by a best-first dynamic programming strategy.
OMMPR算法的详细过程如下所示:The detailed process of the OMMPR algorithm is as follows:
输入:图G=(V,E,W),点集U,α,出发点s,目的点t。Input: Figure G = (V, E, W), point set U, α, starting point s, destination point t.
输出:最小花费。Output: Minimum cost.
(1)初始化队列Q和集合D,将初始状态
Figure PCTCN2016073858-appb-000035
加入队列Q。
(1) Initialize queue Q and set D, the initial state
Figure PCTCN2016073858-appb-000035
Join queue Q.
(2)当队列Q不为空时重复以下步骤:(2) Repeat the following steps when queue Q is not empty:
(2.1)弹出队列Q中第一个元素((v,X),cost);(2.1) pop the first element in the queue Q ((v, X), cost);
(2.2)如果v=t同时X=U则返回cost;(2.2) If v=t and X=U, return cost;
(2.3)将状态(v,X)加入集合D;(2.3) adding the state (v, X) to the set D;
(2.4)对于集合E里的所有(v,u)边循环,(2.4) For all (v, u) edge loops in set E,
(2.4.1)  更新(Q,D,(v,X),cost+α×w(v,u));(2.4.1) Update (Q, D, (v, X), cost + α × w (v, u));
(2.5)对于集合U-X里的所有x点循环,(2.5) For all x-point loops in the set U-X,
(2.5.1)  更新(2.5.1) Update
(Q,D,(v,X∪{x}),cost+(1-α)×dist(x,v))。(Q, D, (v, X ∪ {x}), cost + (1-α) × dist (x, v)).
(3)所有上述循环结束还没有找到最优解,则返回∞。(3) If all the above loops have not found the optimal solution, return ∞.
更新(Q,D,(v,X∪X'),cost')的操作如下: The operation of updating (Q, D, (v, X∪X'), cost') is as follows:
当状态(v,X)∈D时,直接返回;When the state (v, X) ∈ D, return directly;
当状态
Figure PCTCN2016073858-appb-000036
时,将状态((v,X),cost)压入队列Q;
When state
Figure PCTCN2016073858-appb-000036
When the state ((v, X), cost) is pushed into the queue Q;
当cost<Q.cost((v,X))时,Q.update((v,X),cost)。When cost<Q.cost((v,X)), Q.update((v,X), cost).
在上面的算法中,本发明定义了状态(v,X),并用元组((v,X),cost)来表示,这里的cost=f(v,X),表示从点s出发,到点t结束,考虑查询集合X的OMMPR问题的花费。在该算法里,本发明使用了一个优先队列Q来实现最好优先的策略。Q中的每一个元素都是一个元组((v,X),cost)。在优先队列Q中,每个元素((v,X),cost)中的cost为优先序,cost最小的元素始终在队首。队列Q有三个操作,分别为弹出(pop),压入(push)和更新(update)。弹出操作将队首元素也就是cost最小的元素从队列中出队。压入操作将一个元素压入队列当中。更新操作更新队列中一个元素的cost,并且调整该队列,使得其保持优先顺序。算法中还使用了一个集合D来保存已经被计算过的状态。In the above algorithm, the present invention defines the state (v, X) and is represented by a tuple ((v, X), cost), where cost=f(v, X), from the point s to At the end of point t, consider the cost of querying the OMMRP problem of set X. In this algorithm, the present invention uses a priority queue Q to achieve the best priority strategy. Each element in Q is a tuple ((v, X), cost). In the priority queue Q, the cost in each element ((v, X), cost) is the priority order, and the element with the lowest cost is always at the head of the queue. Queue Q has three operations, pop, push, and update. The pop-up operation dequeues the leader element, which is the lowest cost element, from the queue. The push operation pushes an element into the queue. The update operation updates the cost of an element in the queue and adjusts the queue so that it stays in order of priority. A set D is also used in the algorithm to save the state that has been calculated.
相应地,本发明还提供了一种最优多会合点路径搜索装置,包括:Correspondingly, the present invention also provides an optimal multi-join point path searching device, including:
搜索信息输入单元:用于获取路径搜索预设信息,包括:图G=(V,E,W),点集U,α,出发点s,目的点t;Search information input unit: used to obtain path search preset information, including: graph G=(V, E, W), point set U, α, starting point s, destination point t;
路径搜索单元:用于根据所述路径搜索预设信息,通过最好优先的动态规划策略,搜索在所述图G中从出发点s到目的点t的最优路径;a path searching unit: configured to search for preset information according to the path, and search for an optimal path from the starting point s to the destination point t in the graph G by using a best-priority dynamic programming strategy;
搜索结果输出单元:用于输出显示最优路径;显示的方式可根据用户的使用习惯或者个性化需求采用不同的多种方式。Search result output unit: used to output and display the optimal path; the display mode can adopt different ways according to the user's usage habits or individualized requirements.
上述最优多会合点路径搜索装置可应用于各种移动终端,具体可以为移动电话、智能电话、笔记本电脑、个人数字助理、平板电脑,只要安装有实时合乘应用的终端均可使用本装置。The above-mentioned optimal multi-joining point path searching device can be applied to various mobile terminals, and specifically can be a mobile phone, a smart phone, a notebook computer, a personal digital assistant, a tablet computer, and the terminal can be used as long as a terminal equipped with a real-time sharing application can be used. .
综上,上述算法高效地解决了实时合乘应用中的最优路径确定问题,填补 了现有技术的空白。下面将列举两个实例来对上述算法的应用进行说明。In summary, the above algorithm efficiently solves the problem of optimal path determination in real-time multiplication applications, filling A gap in the prior art. Two examples will be enumerated below to illustrate the application of the above algorithm.
实例一Example one
本例中,通过介绍一个OMMPR问题的示例及其结果计算方法。考察图1所示的示例图,假设s=v1,t=v10,α=1/2,U={v6}。则OMMPR搜索的最优路径为Pst=(v1,v3,v7,v10),该路径的最优平均花费为3,即f(Pst)=3。点v6和路径Pst的相遇点为v3,因为路径(v6,v3)是从点v6到集合
Figure PCTCN2016073858-appb-000037
的最短路径。
In this example, an example of an OMMRP problem and its result calculation method are introduced. Looking at the example diagram shown in Fig. 1, assume that s = v 1 , t = v 10 , α = 1/2, U = {v 6 }. Then the optimal path of the OMMRP search is P st = (v 1 , v 3 , v 7 , v 10 ), and the optimal average cost of the path is 3, that is, f(P st )=3. The point of convergence of point v 6 and path P st is v 3 because the path (v 6 , v 3 ) is from point v 6 to the set
Figure PCTCN2016073858-appb-000037
The shortest path.
实例二Example two
本例中,沿用实例1中的例子,演示OMMPR算法在图1中求解最优多会合点路径的算法流程。改变参数s,t,α,U后,算法流程与本例类似。In this example, the example in Example 1 is used to demonstrate the algorithm flow of the OMMRP algorithm in Figure 1 to solve the optimal multi-rejoin path. After changing the parameters s, t, α, U, the algorithm flow is similar to this example.
如图1中所示的示例图,假设s=v1,t=v10,U={v6},α=1/2。首先将元素
Figure PCTCN2016073858-appb-000038
加入优先队列Q。在第一次迭代中,花费最小的元素
Figure PCTCN2016073858-appb-000039
从队列Q中弹出。接下来,算法分别用边增长和点增长来扩展状态
Figure PCTCN2016073858-appb-000040
边增长时,对于所有的边(s,v)∈E,扩展该边。点增长时,对于所有的点
Figure PCTCN2016073858-appb-000041
这里就只有一个点v6,扩展这个点。扩展结果生成了4个状态
Figure PCTCN2016073858-appb-000042
和((v1,{v6}),3/2),并将它们加入队列Q。类似地,在第二轮迭代中,该算法弹出新的花费最小的元素
Figure PCTCN2016073858-appb-000043
并以相似的方式扩展状态
Figure PCTCN2016073858-appb-000044
当算法弹出状态(v10,{v6})时,算法结束。则最优花费为3,最优路径为(v1,v3,v7,v10)。
As shown in the example diagram shown in Fig. 1, it is assumed that s = v 1 , t = v 10 , U = {v 6 }, and α = 1/2. First element
Figure PCTCN2016073858-appb-000038
Join the priority queue Q. The least expensive element in the first iteration
Figure PCTCN2016073858-appb-000039
Pop up from queue Q. Next, the algorithm expands the state with edge growth and point growth, respectively.
Figure PCTCN2016073858-appb-000040
As the edge grows, the edge is expanded for all edges (s, v) ∈ E. When the point grows, for all points
Figure PCTCN2016073858-appb-000041
There is only one point v 6 here to extend this point. The expanded result generated 4 states
Figure PCTCN2016073858-appb-000042
And ((v 1 ,{v 6 }), 3/2) and add them to the queue Q. Similarly, in the second iteration, the algorithm pops up the new least expensive element.
Figure PCTCN2016073858-appb-000043
And extend the state in a similar way
Figure PCTCN2016073858-appb-000044
When the algorithm pops up state (v 10 , {v 6 }), the algorithm ends. The optimal cost is 3, and the optimal path is (v 1 , v 3 , v 7 , v 10 ).
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。 The above is only the preferred embodiment of the present invention, and is not intended to limit the present invention. Any modifications, equivalent substitutions and improvements made within the spirit and principles of the present invention should be included in the protection of the present invention. Within the scope.

Claims (5)

  1. 一种应用于实时合乘的最优多会合点路径搜索方法,其特征在于,该方法包括:An optimal multi-join point path searching method applied to real-time multiplication, characterized in that the method comprises:
    获取路径搜索预设信息,包括:图G=(V,E,W),点集U,α,出发点s,目的点t;其中,V、E和W分别为点集、边集和权值的集合;
    Figure PCTCN2016073858-appb-100001
    为顶点的子集;参数α∈(0,1),用于平衡图G上s~t路径Pst和U中的点到路径Pst之间的距离和的比重;
    Obtain path search preset information, including: graph G=(V, E, W), point set U, α, starting point s, destination point t; wherein, V, E, and W are point sets, edge sets, and weights, respectively Collection
    Figure PCTCN2016073858-appb-100001
    a subset of vertices; a parameter α ∈ (0, 1) for balancing the proportion of the distance between the points in the s to t paths P st and U on the graph G to the path P st ;
    初始化队列Q和集合D,将初始状态
    Figure PCTCN2016073858-appb-100002
    加入队列Q;
    Initialize queue Q and set D, initial state
    Figure PCTCN2016073858-appb-100002
    Join the queue Q;
    当所述队列Q不为空时重复以下步骤:Repeat the following steps when the queue Q is not empty:
    A、弹出队列Q中第一个元素((v,X),cost);其中v为子路径的终点,X为纳入子路径的U的子集,cost为状态(v,X)的花费。A. The first element ((v, X), cost) in the pop-up queue Q; where v is the end point of the sub-path, X is a subset of Us that are included in the sub-path, and cost is the cost of the state (v, X).
    B、如果v=t同时X=U则返回cost;B. If v=t and X=U, return cost;
    C、将状态(v,X)加入集合D;C, adding the state (v, X) to the set D;
    D、对于集合E里的所有(v,u)边循环,更新(Q,D,(v,X),cost+α×w(v,u));D, for all (v, u) edge loops in set E, update (Q, D, (v, X), cost + α × w (v, u));
    w(v,u)为边(v,u)的权值;w(v, u) is the weight of the edge (v, u);
    E、对于集合U-X里的所有x点循环,更新E, for all x-point loops in the set U-X, update
    (Q,D,(v,X∪{x}),cost+(1-α)×dist(x,v));其中dist(x,v)为点x到点v的距离。(Q, D, (v, X ∪ {x}), cost + (1 - α) × dist (x, v)); where dist (x, v) is the distance from point x to point v.
    循环结束后得到最优路径。The optimal path is obtained after the end of the loop.
  2. 如权利要求1所述的最优多会合点路径搜索方法,其特征在于,所述方法中,若在所述循环结束还没有找到最优解,则返回∞。The optimal multi-join point path searching method according to claim 1, wherein in the method, if an optimal solution has not been found at the end of the loop, ∞ is returned.
  3. 如权利要求1所述的最优多会合点路径搜索方法,其特征在于,所述方法中,更新(Q,D,(v,X),cost)的操作如下:The optimal multi-join point path searching method according to claim 1, wherein in the method, the operation of updating (Q, D, (v, X), cost) is as follows:
    当状态(v,X)∈D时,直接返回;When the state (v, X) ∈ D, return directly;
    当状态
    Figure PCTCN2016073858-appb-100003
    时,将状态((v,X),cost)压入队列Q;
    When state
    Figure PCTCN2016073858-appb-100003
    When the state ((v, X), cost) is pushed into the queue Q;
    当cost<Q.cost((v,X))时,Q.update((v,X),cost)。When cost<Q.cost((v,X)), Q.update((v,X), cost).
  4. 一种应用于实时合乘的最优多会合点路径搜索装置,适用于移动终端,其特征在于,所述装置包括:An optimal multi-joining point path searching device for real-time multiplication is applicable to a mobile terminal, and the device includes:
    搜索信息输入单元:用于获取路径搜索预设信息,包括:图G=(V,E,W),点集U,α,出发点s,目的点t;其中,V、E和W分别为点集、边集和权值的集合;
    Figure PCTCN2016073858-appb-100004
    为顶点的子集;参数α∈(0,1),用于平衡路径Pst和U中的点到Pst之间的距离和的比重;
    Search information input unit: used to obtain path search preset information, including: graph G=(V, E, W), point set U, α, starting point s, destination point t; wherein, V, E, and W are points respectively a set of sets, edge sets, and weights;
    Figure PCTCN2016073858-appb-100004
    a subset of vertices; the parameter α∈(0,1) is used to balance the distance and the proportion of the distance between the points P St and U to P st ;
    路径搜索单元:用于根据所述路径搜索预设信息,通过最好优先的动态规划策略,搜索在所述图G中从出发点s到目的点t的最优路径;a path searching unit: configured to search for preset information according to the path, and search for an optimal path from the starting point s to the destination point t in the graph G by using a best-priority dynamic programming strategy;
    搜索结果输出单元:用于输出显示所述路径搜索单元所搜索到的最优路径。Search result output unit: for outputting an optimal path searched by the path search unit.
  5. 如权利要求4所述的最优多会合点路径搜索装置,其特征在于,所述移动终端包括:移动电话、智能电话、笔记本电脑、个人数字助理、平板电脑。 The optimal multi-join point path searching device according to claim 4, wherein the mobile terminal comprises: a mobile phone, a smart phone, a notebook computer, a personal digital assistant, and a tablet computer.
PCT/CN2016/073858 2015-05-26 2016-02-16 Searching method and device for optimal route of multiple meeting point applicable for real-time ride-sharing WO2016188151A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201510274711.2A CN104992044B (en) 2015-05-26 2015-05-26 Optimal more meeting point method for searching path and device applied to real-time rideshare
CN2015102747112 2015-05-26

Publications (1)

Publication Number Publication Date
WO2016188151A1 true WO2016188151A1 (en) 2016-12-01

Family

ID=54303858

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2016/073858 WO2016188151A1 (en) 2015-05-26 2016-02-16 Searching method and device for optimal route of multiple meeting point applicable for real-time ride-sharing

Country Status (2)

Country Link
CN (1) CN104992044B (en)
WO (1) WO2016188151A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110431573A (en) * 2017-12-14 2019-11-08 北京嘀嘀无限科技发展有限公司 The system and method for Order splitting optimization
CN113822008A (en) * 2021-09-29 2021-12-21 东南大学 Ultra-large-scale integrated circuit wiring method based on multi-pin simultaneous diffusion search

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104992044B (en) * 2015-05-26 2018-01-30 深圳大学 Optimal more meeting point method for searching path and device applied to real-time rideshare
CN105678054B (en) * 2015-12-30 2020-06-30 深圳大学 Optimal multi-meeting-point path searching method and device based on A-star strategy
CN105489002B (en) * 2016-01-05 2017-12-26 深圳大学 A kind of share-car method and system based on intelligent Matching and path optimization
TWI581207B (en) 2016-04-28 2017-05-01 國立清華大學 Computing method for ridesharing path, computing apparatus and recording medium using the same
CN106709591A (en) * 2016-08-11 2017-05-24 淮阴工学院 Cooperative car-pooling route selection method with uncertain demand in Internet of Vehicles environment
CN110222786B (en) * 2019-06-14 2022-09-20 深圳大学 Dynamic car pooling method and system based on travel information
CN112097782B (en) * 2020-07-14 2022-04-08 中山大学 Optimal group order path circular filtering query method based on meeting point
CN112347216B (en) * 2020-11-06 2023-10-31 思创数码科技股份有限公司 Initial line searching method based on dynamic road network
CN112577490A (en) * 2020-12-14 2021-03-30 中国人民解放军海军潜艇学院 Low-speed target active convergence discrimination and treatment method based on equivalence and estimation
CN113990093B (en) * 2021-11-22 2022-10-21 大连理工大学 System and method for dynamically sharing and scheduling unmanned electric taxi

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6259988B1 (en) * 1998-07-20 2001-07-10 Lockheed Martin Corporation Real-time mission adaptable route planner
CN101788298A (en) * 2008-10-31 2010-07-28 歌乐牌株式会社 Guider and air navigation aid
CN103149576A (en) * 2013-01-29 2013-06-12 武汉大学 Map matching method of floating car data
CN103186710A (en) * 2011-12-31 2013-07-03 北京金山软件有限公司 Optimal route searching method and system
CN103324982A (en) * 2013-06-07 2013-09-25 银江股份有限公司 Path planning method based on genetic algorithm
CN104992044A (en) * 2015-05-26 2015-10-21 深圳大学 Optimal multi-meeting-point route searching method and apparatus applied to real-time ridesharing

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6259988B1 (en) * 1998-07-20 2001-07-10 Lockheed Martin Corporation Real-time mission adaptable route planner
CN101788298A (en) * 2008-10-31 2010-07-28 歌乐牌株式会社 Guider and air navigation aid
CN103186710A (en) * 2011-12-31 2013-07-03 北京金山软件有限公司 Optimal route searching method and system
CN103149576A (en) * 2013-01-29 2013-06-12 武汉大学 Map matching method of floating car data
CN103324982A (en) * 2013-06-07 2013-09-25 银江股份有限公司 Path planning method based on genetic algorithm
CN104992044A (en) * 2015-05-26 2015-10-21 深圳大学 Optimal multi-meeting-point route searching method and apparatus applied to real-time ridesharing

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110431573A (en) * 2017-12-14 2019-11-08 北京嘀嘀无限科技发展有限公司 The system and method for Order splitting optimization
CN113822008A (en) * 2021-09-29 2021-12-21 东南大学 Ultra-large-scale integrated circuit wiring method based on multi-pin simultaneous diffusion search
CN113822008B (en) * 2021-09-29 2022-11-04 东南大学 Ultra-large-scale integrated circuit wiring method based on multi-pin simultaneous diffusion search

Also Published As

Publication number Publication date
CN104992044A (en) 2015-10-21
CN104992044B (en) 2018-01-30

Similar Documents

Publication Publication Date Title
WO2016188151A1 (en) Searching method and device for optimal route of multiple meeting point applicable for real-time ride-sharing
WO2017113569A1 (en) Optimal multi-rendezvous point path searching method and device based on a* strategy
US20180097684A1 (en) Reachability-Based Coordination for Cyclic Dataflow
US9062985B2 (en) Efficient K-nearest neighbor search in time-dependent spatial networks
US9222791B2 (en) Query scenarios for customizable route planning
Kanza et al. Interactive route search in the presence of order constraints
Gbadamosi et al. Design of a Modified Dijkstra’s Algorithm for finding alternate routes for shortest-path problems with huge costs
Zhang et al. Distributed shortest path query processing on dynamic road networks
WO2012151216A1 (en) Hierarchical and exact fastest path computation in time-dependent spatial networks
Li et al. Optimal multi-meeting-point route search
Wang et al. R3: a real-time route recommendation system
Shang et al. Finding traffic-aware fastest paths in spatial networks
Yang et al. CANDS: Continuous optimal navigation via distributed stream processing
Yawalkar et al. Route recommendations on road networks for arbitrary user preference functions
Chen et al. P2H: efficient distance querying on road networks by projected vertex separators
Sasaki et al. Sequenced route query with semantic hierarchy
Wang et al. Constrained route planning over large multi-modal time-dependent networks
Liu et al. FHL-cube: multi-constraint shortest path querying with flexible combination of constraints
Fu et al. Top-k taxi recommendation in realtime social-aware ridesharing services
Zhu et al. Approximate path searching for supporting shortest path queries on road networks
CN109711633B (en) Public transport travel path planning and indexing method based on MapReduce
He et al. Exploring public transport transfer opportunities for pareto search of multicriteria journeys
CN110442624B (en) Aggregation neighbor query method with limited service time in time-dependent road network
Madria et al. Ridesharing-inspired trip recommendations
Htoo et al. Aggregate nearest neighbor search methods using SSMTA* algorithm on road-network

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16799040

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 16799040

Country of ref document: EP

Kind code of ref document: A1

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC, EPO FORM 1205A DATED 26.06.18

122 Ep: pct application non-entry in european phase

Ref document number: 16799040

Country of ref document: EP

Kind code of ref document: A1