US10401185B2 - Apparatus and method for online generation of an optimum route-graph - Google Patents
Apparatus and method for online generation of an optimum route-graph Download PDFInfo
- Publication number
- US10401185B2 US10401185B2 US15/297,812 US201615297812A US10401185B2 US 10401185 B2 US10401185 B2 US 10401185B2 US 201615297812 A US201615297812 A US 201615297812A US 10401185 B2 US10401185 B2 US 10401185B2
- Authority
- US
- United States
- Prior art keywords
- graph
- route
- planar
- trajectory
- trajectories
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active, expires
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
- G01C21/36—Input/output arrangements for on-board computers
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
- G01C21/3453—Special cost functions, i.e. other than distance or default speed limit of road segments
Definitions
- the embodiment discussed herein is related to apparatus and method for online generation of an optimum route-graph.
- trajectory data of a moving body collected by a sensor such as a global positioning system (GPS)
- GPS global positioning system
- Japanese Laid-open Patent Publication No. 2015-76069 is an example of the related art.
- an apparatus stores plural pieces of trajectory information each indicating a trajectory and including plural pieces of position information indicating a position, and graph information on one or more planar graphs each including a plurality of nodes and a plurality of edges, where the graph information includes information on positions of the plurality of nodes and information on the plurality of edges connecting a pair of nodes among the plurality of nodes.
- the apparatus acquires a first piece of trajectory information from among the plural pieces of trajectory information, acquires a first planar graph from among the one or more planar graphs, and generates a second planar graph, based on the acquired first planar graph and the plural pieces of position information included in the acquired first piece of trajectory information.
- the apparatus extracts, from among the plural pieces of trajectory information, second pieces of trajectory information indicating trajectories passing a difference portion between the first planar graph and the second planar graph. For each of a group of candidate graphs that are each obtained by excluding a reduction set of edges included in the second planar graph from the second planar graph, the apparatus calculates optimality of the each candidate graph with which an addition set of trajectories indicated by the first piece of trajectory information and the second pieces of trajectory information are associated, and outputs one of the group of candidate graphs that is determined based on the calculated optimality.
- FIG. 1 is a diagram illustrating an example of a configuration of a route-graph generating apparatus, according to an embodiment
- FIG. 2 is a diagram illustrating an example of a data structure of trajectory data, according to an embodiment
- FIG. 3 is a diagram illustrating an example of a route graph database, according to an embodiment
- FIG. 4 is a diagram illustrating an example of specifying ⁇ G, according to an embodiment
- FIG. 5 is a diagram illustrating an example of specifying ⁇ G, according to an embodiment
- FIG. 6 is a diagram illustrating an example of a configuration of a computer that functions as a route-graph generating apparatus, according to an embodiment
- FIG. 7 is a diagram illustrating an example of an operational flowchart for route-graph generation processing, according to an embodiment
- FIG. 8 is a diagram illustrating an example of an operational flowchart for route-graph update processing, according to an embodiment
- FIG. 9 is a diagram illustrating an example of a management database, according to an embodiment.
- FIG. 10 is a diagram illustrating an example of a route graph G (0.5) , according to an embodiment
- FIG. 11 is a diagram illustrating an example of a route graph G (1.5) , according to an embodiment
- FIG. 12 is a diagram illustrating an example of a management database, according to an embodiment
- FIG. 13 is a diagram illustrating an example of a route graph G (2.5) , according to an embodiment
- FIG. 14 is a diagram illustrating an example of a management database, according to an embodiment
- FIG. 15 is a diagram illustrating an example of a route graph G (3.5) , according to an embodiment.
- FIG. 16 is a diagram illustrating an example of a management database, according to an embodiment.
- a method of extracting the graph structure through the clustering of the vectors obtained by dividing the trajectory data is batch processing. Therefore, the method may be unable to be applied to on-line processing for instantaneously reflecting flows of people, automobiles, and the like.
- a piece of trajectory data to be added next is selected to optimize cost (optimality). Therefore, to sufficiently optimize cost, the method requests to take into account the order of pieces of trajectory data to be added. Therefore, the method may be unable to be applied to on-line processing that may be unable to take into account the order of the addition.
- a route-graph generating apparatus 10 receives trajectory data 21 as an input.
- the route-graph generating apparatus 10 updates, using the received trajectory data 21 , a route graph G stored in a route graph database (DB) 22 to thereby generate a new route graph G.
- DB route graph database
- the trajectory data 21 is a series of observation data indicating positions of a moving body observed by a sensor such as a GPS (Global Positioning System) at predetermined time intervals and is data representing a trajectory of movement of the moving body.
- a sensor such as a GPS (Global Positioning System) at predetermined time intervals and is data representing a trajectory of movement of the moving body.
- the observation data includes a sensor ID for identifying the sensor, position data (an x coordinate and a y coordinate) indicated by latitude and longitude of each of the observed positions, and observation time.
- the trajectory data 21 is obtained by extracting a plurality of observation data for each of sensor IDs and arranging, based on observation times, in time series, observation points included in the observation data. Note that, even if the sensor ID is the same, when the observation times at the observation points are different a predetermined time or more, the trajectory data is divided at the observation points. In this case, for example, by adding serial numbers to the sensor IDs, trajectory IDs capable of uniquely identifying the trajectory data are added to each of the trajectory data.
- trajectory data 21 the trajectory ID of which is ⁇ i
- trajectory ID ⁇ i a trajectory represented by the trajectory data ⁇ i
- trajectory ⁇ i a trajectory represented by the trajectory data ⁇ i
- observation points included in the trajectory data ⁇ i are P i1 , P i2 , . . . , P ij , . . . , and P iJ (J is the number of observation points included in the trajectory data ⁇ i ).
- Observation data indicating observation points includes a trajectory ID of the trajectory data 21 including the observation points, observation point IDs, which is identification information of the observation points, position data (x coordinates and y coordinates), and observation times.
- the trajectory data 21 is represented by a data structure of a table format.
- the route graph G is represented by a plurality of nodes, each representing position information, and edges that connect the nodes.
- the route graph DB 22 includes, for example, as illustrated in FIG. 3 , a set of node information indicating nodes included in the route graph G and a set of edge information indicating the edges included in the route graph G.
- the node information includes, for example, identification information (note IDs) of the nodes and position data (x coordinates and y coordinates) of the nodes.
- the edge information includes identification information (edge IDs) of the edges and information concerning connected nodes represented by connecting, with “_(under bar)”, the node IDs of the nodes connected by the edges.
- an edge the edge ID of which is e i , is referred to as “edge e i ” as well.
- ⁇ represents a constant ( ⁇ >0)
- represents complexity of the route graph G
- ⁇ ⁇ (G) represents dissimilarity between the route graph G and the trajectory ⁇ .
- the complexity of the route graph G may be set as, for example, the number of nodes, the number of edges, or a sum of edge lengths included in the route graph G.
- the dissimilarity ⁇ ⁇ (G) may be set as, for example, a Frechet distance.
- a steepest descent method which is a method for calculating a local optimum solution, is applied to optimization of cost of the route graph G.
- Expression (2) is repeated until a solution x (i) converges.
- ⁇ represents a constant.)
- x (i+1) x (i) ⁇ f ( x (i) ) (2)
- ⁇ G is selected based on a difference ⁇ cost T,G ( ⁇ G) defined by Expression (3) below and ⁇ G is updated like G ⁇ G ⁇ G to obtain a local optimum solution.
- ⁇ cost T,G ( ⁇ G ) ⁇ ( ⁇ ⁇ T ⁇ ⁇ ( G ⁇ G )+ ⁇
- ) ⁇ ⁇ ⁇ T [ ⁇ ⁇ ( G ⁇ G ) ⁇ ⁇ ( G )] ⁇ [
- a route graph G (0) serving as an initial solution is set.
- Trajectory data ⁇ T e passing an edge e included G (i) (V (i) , E (i) ), which is a subgraph of the route graph G (0) , is map-matched with a route graph G (i) ⁇ e ⁇ that is set to prohibit passage of the edge e.
- map-matching trajectory data passing the edge e with a route graph set to prohibit passage of the edge e is referred to as “reroute” as well.
- a route graph obtained by leaving only edges that one or more trajectories pass is represented as G ⁇ G.
- the edge e 8 is set to passage prohibition. It is assumed that trajectories passing the edge e 8 are a trajectory ⁇ 1 and ⁇ 2 .
- a route obtained by map-matching the trajectory ⁇ 1 with the route graph G (i) is the edge e 1 ⁇ e 6 ⁇ e 7 ⁇ e 8 ⁇ e 5 and a route obtained by map-matching the trajectory ⁇ 2 to the route graph G (i) is the edge e 1 ⁇ e 2 ⁇ e 9 ⁇ e 8 ⁇ e 5 .
- a route obtained by map-matching the trajectory ⁇ 1 with the route graph G (i) is the edge e 1 ⁇ e 6 ⁇ e 7 ⁇ e 8 ⁇ e 5
- a route obtained by map-matching the trajectory ⁇ 2 to the route graph G (i) is the edge e 1 ⁇ e 2 ⁇ e 9 ⁇ e 8 ⁇ e 5 .
- ⁇ G is determined for every e ⁇ E (i) .
- ⁇ G will be also referred to as “a reduction set of edges”.
- a set of trajectory data representing trajectories passing the edge e is represented as T e .
- ⁇ G whose cost satisfies predetermined conditions, is selected.
- predetermined conditions for example, conditions described below may be determined.
- a route graph is generated from a Delaunay graph that includes observation points of trajectory data as Delaunay points.
- U represents a set of nodes (Delaunay points) included in the Delaunay graph
- F represents a set of edges (Delaunay sides) included in the Delaunay graph.
- F ( ⁇ ) F (i) ⁇ F (i+1)
- E ( ⁇ ) E (i) ⁇ F ( ⁇ ) and trajectories represented by trajectory data to be added among trajectories represented by trajectory data used for generation of the route graph G (i) , to a Delaunay graph D (i+1)
- F ( ⁇ ) is a subset of edges, in a Voronoi diagram forming a dual graph of a Delaunay graph D (i) , which each include as an end point a generation point of a Voronoi region including an observation point of trajectory data to be added.
- the Delaunay graph D (i+1) may be calculated with computational complexity proportional to the number of generation points of the Voronoi regions including the observation points of the trajectory data to be added.
- the number of generation points does not exceed the number of observation points to be added. Therefore, it is possible to calculate D (i+1) with computational complexity proportional to the number of observation points to be added.
- the route graph G is generated by the method of formulating the steepest descent method and expanding the steepest descent method to the online processing.
- Functional units of the route-graph generating apparatus 10 according to this embodiment are explained in detail below.
- the route-graph generating apparatus 10 includes, as illustrated in FIG. 1 , an acquiring unit 11 , a planar graph generating unit 12 , an extracting unit 13 , a calculating unit 14 , and a route-graph generating unit 15 .
- a route graph DB 22 In a predetermined storage region of the route-graph generating apparatus 10 , a route graph DB 22 , a Delaunay graph DB 23 , and a management DB 24 are stored.
- the route graph DB 22 information on the route graph G explained above (e.g., FIG. 3 ) is stored.
- the Delaunay graph DB 23 information on the Delaunay graph D generated by the planar graph generating unit 12 is stored.
- a data structure of the Delaunay graph D includes plural pieces of node (Delaunay points) information and plural pieces of edge (Delaunay edges) information.
- the management DB 24 information on trajectory data required for calculation of cost in the calculating unit 14 and generation of the route graph G in the route-graph generating unit 15 is stored.
- the acquiring unit 11 acquires the trajectory data 21 one by one, for example, from the trajectory-data generating apparatus 30 that generates trajectory data from observation data of a GPS or the like acquired from a moving body.
- the acquiring unit 11 may acquire the trajectory data 21 not only from the trajectory-data generating apparatus 30 but also from other information processing apparatuses, an external storage device, an internal storage device, and the like.
- an information processing apparatus such as a car navigation system or a smartphone, mounted or held in the moving body has a function of generating trajectory data from observation data
- the acquiring unit 11 may directly acquire the trajectory data from the information processing apparatus mounted or held in the moving body.
- the acquiring unit 11 passes the acquired trajectory data 21 to the planar graph generating unit 12 .
- the planar graph generating unit 12 reads, from the Delaunay graph DB 23 , a Delaunay graph D (t ⁇ 1) which was previously generated, adds observation points included in the trajectory data 21 passed from the acquiring unit 11 to the Delaunay graph D (t ⁇ 1) , and generates a Delaunay graph D (t) .
- the planar graph generating unit 12 stores the generated Delaunay graph D (t) in the Delaunay graph DB 23 and passes the trajectory data 21 passed from the acquiring unit 11 to the extracting unit 13 .
- the extracting unit 13 generates a route graph G (t ⁇ 1/2) by reflecting a difference between the Delaunay graph D (t ⁇ 1) stored in the Delaunay graph DB 23 and the Delaunay graph D (t) on a route graph G (t ⁇ 1) .
- the extracting unit 13 specifies the edge set F ( ⁇ ) erased from the Delaunay graph D (t) in an edge set F (t ⁇ 1) included in the Delaunay graph D (t ⁇ 1) .
- the extracting unit 13 extracts, from the trajectory data stored in the management DB 24 , trajectory data passing any one of edges of the edge set F (1) .
- the extracting unit 13 passes the extracted trajectory data, the trajectory data 21 passed from the acquiring unit 11 , and the generated route graph G (t ⁇ 1/2) to the calculating unit 14 .
- the calculating unit 14 reroutes each of trajectories represented by the respective trajectory data passed from the extracting unit 13 , to a route graph G (t ⁇ 1/2) ⁇ e ⁇ in which edge e, which is passed by the each trajectory map-matched with the route graph G (t ⁇ 1/2) , is set to passage prohibition.
- the calculating unit 14 determines ⁇ G to be a portion where no trajectory passes as a result of the rerouting, and calculates, according to Expression (4), cost for a route graph (G (t ⁇ 1/2) ⁇ G) which is a candidate for the route graph G (t) .
- the route-graph generating unit 15 specifies ⁇ G in which the cost calculated by the calculating unit 14 satisfies predetermined conditions and excludes edges included in ⁇ G from the route graph G (t ⁇ 1/2) to generate the route graph G (t) .
- the route-graph generating apparatus 10 may be realized by, for example, a computer 40 illustrated in FIG. 6 .
- the computer 40 includes a CPU 41 , a memory 42 functioning as a temporary storage region, and a storing unit 43 that is nonvolatile.
- the computer 40 includes an input/output device 44 such as a display device or an input device.
- the computer 40 includes a read/write (R/W) unit 45 that controls reading and writing of data in and from a storage medium 49 , and a network I/F 46 connected to a network such as the Internet.
- the CPU 41 , the memory 42 , the storing unit 43 , the input/output device 44 , the R/W unit 45 , and the network I/F 46 are coupled to one another via a bus 47 .
- the storing unit 43 may be realized by a HDD (Hard Disk Drive), an SSD (solid state drive), a flash memory, or the like.
- a route-graph generating program 50 for causing the computer 40 to function as the route-graph generating apparatus 10 is stored.
- the route-graph generating program 50 includes an acquiring process 51 , a planar graph generating process 52 , an extracting process 53 , a calculating process 54 , and a route-graph generating process 55 .
- the storing unit 43 includes a data storage region 60 that stores information configuring the route graph DB 22 , information configuring the Delaunay graph DB 23 , information configuring the management DB 24 , and the like.
- the CPU 41 reads out the route-graph generating program 50 from the storing unit 43 , develops the route-graph generating program 50 in the memory 42 , and sequentially executes the processes included in the route-graph generating program 50 .
- the CPU 41 reads out the information stored in the data storage region 60 and develops the route graph DB 22 , the Delaunay graph DB 23 , and the management DB 24 in the memory 42 .
- the CPU 41 executes the acquiring process 51 to operate as the acquiring unit 11 illustrated in FIG. 1 .
- the CPU 41 executes the planar graph generating process 52 to operate as the planar graph generating unit 12 illustrated in FIG. 1 .
- the CPU 41 executes the extracting process 53 to operate as the extracting unit 13 illustrated in FIG. 1 .
- the CPU 41 executes the calculating process 54 to operate as the calculating unit 14 illustrated in FIG. 1 .
- the CPU 41 executes the route-graph generating process 55 to operate as the route-graph generating unit 15 illustrated in FIG. 1 . Consequently, the computer 40 executing the route-graph generating program 50 functions as the route-graph generating apparatus 10 .
- route-graph generating program 50 may also be realized by, for example, a semiconductor integrated circuit, more specifically, an ASIC (Application Specific Integrated Circuit).
- ASIC Application Specific Integrated Circuit
- route-graph generation processing illustrated in FIG. 7 is executed in the route-graph generating apparatus 10 .
- the trajectory data 21 inputted to the route-graph generating apparatus 10 is once stored in a predetermined storage region.
- step S 10 of the route-graph generation processing illustrated in FIG. 7 the acquiring unit 11 sets, at an initial value “1”, a variable t indicating a sequence number of pieces of trajectory data that have been acquired to generate the route graph G.
- the acquiring unit 11 sets an empty graph as an initial value of a Delaunay graph generated by the planar graph generating unit 12 .
- U represents a set of nodes (Delaunay points) included in the Delaunay graph
- F represents a set of edges (Delaunay edges) included in the Delaunay graph.
- the acquiring unit 11 sets an empty graph as an initial value of a route graph generated by the route-graph generating unit 15 .
- V represents a set of nodes included in the route graph
- E represents a set of edges included in the route graph.
- step S 15 the acquiring unit 11 reads, from a predetermined storage region, trajectory data ⁇ (t) inputted to the route-graph generating apparatus 10 .
- the acquiring unit 11 passes the read trajectory data 21 to the planar graph generating unit 12 .
- the planar graph generating unit 12 generates the Delaunay graph D (t) by reading, from the Delaunay graph DB 23 , the Delaunay graph D (t ⁇ 1) that was previously generated, and adding observation points included in the trajectory data ⁇ (t) passed from the acquiring unit 11 to the Delaunay graph D (t ⁇ 1) .
- the planar graph generating unit 12 erases edges that each includes as an end point a generation point of Voronoi regions to which observation points of the trajectory data ⁇ (t) are added, where a node set U (t ⁇ 1) of the Delaunay graph D (t ⁇ 1) is composed of generation points of the Voronoi regions.
- U (+) U (t) ⁇ U (t ⁇ 1) .
- the planar graph generating unit 12 generates, based on the new node set U (+) and the erased edge set F ( ⁇ ) , a new edge set F (+) .
- step S 25 the planar graph generating unit 12 stores the generated Delaunay graph D (t) in the Delaunay graph DB 23 and passes the trajectory data 21 passed from the acquiring unit 11 to the extracting unit 13 .
- the extracting unit 13 generates the route graph G (t ⁇ 1/2) by reflecting a difference between the Delaunay graph D (t ⁇ 1) stored in the Delaunay graph DB 23 and the Delaunay graph D (t) on the route graph G (t ⁇ 1) .
- step S 30 the extracting unit 13 extracts trajectory data passing any one of the edges e of the edge set F ( ⁇ ) from the trajectory data stored in the management DB 24 , that is, the trajectory data used for the generation of the route graph G (t ⁇ 1) .
- a set of the extracted trajectory data is represented as T e .
- step S 35 the extracting unit 13 passes the trajectory data set T obtained by adding the trajectory data ⁇ (t) to the trajectory data set T e and the generated route graph G (t ⁇ 1/2) to the calculating unit 14 .
- step S 40 route-graph update processing is executed.
- the route-graph update processing is explained with reference to FIG. 8 .
- step S 41 the calculating unit 14 sets the route graph G (t ⁇ 1/2) as the route graph G.
- e (1) represents a top edge
- e (N) represents an end edge at the time when the trajectory ⁇ is map-matched.
- the calculating unit 14 calculates dissimilarity ⁇ ⁇ (G) between the trajectory ⁇ and the route graph G.
- step S 42 the calculating unit 14 registers a result obtained by map-matching the trajectory a in a trajectory management table 24 A and an edge-trajectory table 24 B of the management DB 24 .
- Examples of the trajectory management table 24 A and the edge-trajectory table 24 B are illustrated in FIG. 9 .
- the trajectory management table 24 A a trajectory ID of the trajectory data ⁇ representing the map-matched trajectory ⁇ , the route ⁇ obtained by the map matching, and the dissimilarity ⁇ ⁇ (G) are stored in association with one another.
- the edge-trajectory table 24 B is a table indicating a correspondence relation between edges included in the route graph G and trajectories passing the edges.
- entries associating edge IDs of the edges e and a set (a trajectory data set A) of trajectory IDs of the trajectory data ⁇ passing the edges e are stored.
- step S 43 the calculating unit 14 determines whether an entry for which the following processing is not performed yet is present in the edge-trajectory table 24 B. When an unprocessed entry is present, the processing shifts to step 544 .
- step S 44 the calculating unit 14 extracts an entry (e, A) in which a size of a trajectory data set is the smallest among the unprocessed entries in the edge-trajectory table 24 B.
- the size of the trajectory data set is the smallest when the number of pieces of trajectory data included in the trajectory data set A or a sum of lengths of the pieces of trajectory data included in the trajectory data set A is the smallest.
- the processing in this step is intended to meet the predetermined cost condition “(3) ⁇ cost T,G ( ⁇ G) ⁇ 0 and
- step S 45 the calculating unit 14 sets, as an initial value of ⁇ G, a partial graph including only edges that are passed by trajectories respectively represented by trajectory data included in the trajectory data set A for trajectories passing the edge e of the extracted entry.
- step S 46 the calculating unit 14 sets respective work variables ⁇ err and ⁇ graph at initial values.
- ⁇ err is a work variable for calculating a first term ( ⁇ ⁇ T [ ⁇ ⁇ (G ⁇ G) ⁇ ⁇ (G)]) of Expression (4).
- ⁇ graph a work variable for calculating a second term ( ⁇ [
- step S 47 the calculating unit 14 determines whether trajectory data for which the following processing is not performed yet is present in the trajectory data set A of the entry extracted in step S 44 .
- the processing shifts to step S 48 .
- step S 48 the calculating unit 14 selects one piece of unprocessed trajectory data from the trajectory data set A, and sets the unprocessed piece of trajectory data as trajectory data ⁇ A .
- the calculating unit 14 calculates dissimilarity ⁇ ⁇ A (G ⁇ e ⁇ ) between the trajectory ⁇ A and the route graph G ⁇ e ⁇ in which edge e is prohibited from being passed.
- step S 50 the calculating unit 14 adds a difference between the dissimilarity ⁇ ⁇ A (G ⁇ e ⁇ ) and the dissimilarity ⁇ ⁇ A (G) to ⁇ err .
- the calculating unit 14 acquires the dissimilarity ⁇ ⁇ A (G) from the trajectory management table 24 A.
- the calculating unit 14 subtracts, from ⁇ graph , a sum of lengths of edges that are common in both the edges included in ⁇ G and the edges included in the route ⁇ ⁇ A obtained by rerouting the trajectory ⁇ A . Further, the calculating unit 14 excludes the edges included in the route ⁇ ⁇ A from ⁇ G.
- step S 51 the calculating unit 14 determines whether ⁇ err is smaller than ⁇ graph .
- the processing returns to step S 47 .
- the processing returns to step S 43 .
- ⁇ graph monotonously decreases. That is, when rerouting of the trajectory ⁇ A represented by k-th piece of trajectory data ⁇ A included in the trajectory data set A is completed, if ⁇ err ⁇ graph does not hold, ⁇ err ⁇ graph does not hold even if k+1-th and subsequent trajectories ⁇ A are rerouted.
- step S 51 by determining, according to the determination in step S 51 , whether the rerouting of the trajectory ⁇ A represented by the remaining trajectory data ⁇ A included in the trajectory data set A is continued, it is possible to reduce the number of times of processing of the rerouting (the map mapping) with large computational complexity.
- the candidate graph (G ⁇ G) corresponding to the edge e of an entry being processed is excluded from candidates.
- step S 47 When it is determined in step S 47 that trajectory data for which the following processing is not performed yet is absent in the trajectory data set A, the processing shifts to step S 52 .
- step S 52 the route-graph generating unit 15 excludes ⁇ G from the route graph G, updates the route graph G, and updates the trajectory management table 24 A and the edge-trajectory table 24 B. The processing returns to step S 43 .
- step S 43 When it is determined in step S 43 that the unprocessed entry is absent in the edge-trajectory table 24 B, the processing shifts to step S 53 .
- step S 53 the route-graph generating unit 15 set the present route graph G as the route graph G (t) .
- the processing returns to the route-graph generation processing ( FIG. 7 ).
- step S 60 of the route-graph generation processing illustrated in FIG. 7 the acquiring unit 11 determines whether next trajectory data inputted to the route-graph generating apparatus 10 is present. When the next trajectory data is present, the processing shifts to step S 65 . The acquiring unit 11 increments t by 1, and the processing returns to step S 15 . On the other hand, when the next trajectory data is absent, the route-graph generation processing ends.
- the route-graph generation processing is explained using a specific example.
- the acquiring unit 11 reads trajectory data ⁇ (1) (S 15 ).
- the planar graph generating unit 12 generates a Delaunay graph D (1) (S 20 ).
- the extracting unit 13 generates a route graph G (0.5) .
- An example of the route graph G (0.5) is illustrated in FIG. 10 .
- groups of solid line edges and broken line edges (excluding edges each including a white circle node at one end) represent the route graph G (0.5) .
- Edges e 1 , e 9 , e 11 , e 13 , e 14 , e 15 , and e 8 illustrated in FIG. 10 are the edge set F (+) . Note that nodes indicated by black circles in FIG.
- FIGS. 10, 11, 13, and 15 are nodes generated based on nodes of the Delaunay graph D (1) generated by observation points of the trajectory data ⁇ (1) .
- Nodes indicated by white circles in FIG. 10 are nodes that are provided, for convenience of drawing a diagram, in order to avoid complication of the Delaunay graph D (1) generated by the observation points of the trajectory data ⁇ (1) and simplify explanation. The same applies in FIGS. 10, 11, 13, and 15 .
- trajectory management table 24 A and the edge-trajectory table 24 B are updated as illustrated in FIG. 9 (S 42 ).
- an entry (e 15 , ⁇ (1) ⁇ ) is extracted from the edge-trajectory table 24 B (S 44 ).
- the route graph G ⁇ e15 ⁇ is not a connected graph, trajectories represented by the trajectory data ⁇ A are unable to be rerouted to the route graph G ⁇ e15 ⁇ .
- Dissimilarity ⁇ ⁇ A (G ⁇ e15 ⁇ ) becomes ⁇ , and ⁇ e (m)
- m 1, . . . , M ⁇ becomes empty
- m 1, . . . , M ⁇
- the calculating unit 14 updates ⁇ G ⁇ e 1 , e 9 , e 11 , e 13 , e 14 , e 15 , e 8 ⁇ with ⁇ G ⁇ e 1 , e 9 , e 11 , e 13 , e 14 , e 15 , e 8 ⁇ (not changed) by excluding ⁇ e (m)
- m 1, . . . , M ⁇ (empty) from ⁇ G ⁇ e 1 , e 9 , e 11 , e 13 , e 14 , e 15 , e 8 ⁇ .
- ⁇ err > ⁇ graph As explained above, since ⁇ ⁇ A (G ⁇ (e15) ) is an extremely large value, ⁇ err > ⁇ graph . Negative determination is made in step S 51 , and the processing returns to step S 43 .
- ⁇ err > ⁇ graph As for the other entries included in the edge-trajectory table 24 B, it is assumed that ⁇ err > ⁇ graph as in the case of the entry (e 15 , ⁇ (1) ⁇ ). In this case, no edge is excluded from the route graph G (0.5) set as the route graph G, and G (0.5) as-is becomes the route graph G (1) (S 53 ). That is, the solid line edge group illustrated in FIG. 10 represents the route graph G (1) .
- the acquiring unit 11 reads trajectory data ⁇ (2) (S 15 ).
- the planar graph generating unit 12 generates a Delaunay graph D (2) ( 520 ).
- the extracting unit 13 generates a route graph G (1.5) (S 20 ).
- An example of the route graph G (1.5) is illustrated in FIG. 11 .
- groups of solid line edges, broken line edges, and alternate long and short dash line edges represent the route graph G (1.5) .
- Edges e 2 and e 10 illustrated in FIG. 11 are the edge set F (+) .
- trajectory management table 24 A and the edge-trajectory table 24 B are updated as illustrated in FIG. 12 (S 42 ).
- m 1, . . . , M ⁇
- the acquiring unit 11 reads trajectory data ⁇ (3) (S 15 ).
- the planar graph generating unit 12 generates a Delaunay graph D (3) (S 20 ).
- the extracting unit 13 generates a route graph G (2.5) (S 20 ).
- An example of the route graph G (2.5) is illustrated in FIG. 13 .
- groups of solid line edges, broken line edges, and alternate long and short dash line edges represent the route graph G (2.5) .
- Edges e 3 , e 12 , and the alternate long and short dash line edge illustrated in FIG. 13 are the edge set F (+) .
- edge set F ( ⁇ ) composed of edges, except the edges including the white circle nodes as the one ends, which are erased from the last Delaunay graph D (2) , is absent (empty).
- trajectory management table 24 A and the edge-trajectory table 24 B are updated as illustrated in FIG. 14 (S 42 ).
- m 1, . . . , M ⁇
- the acquiring unit 11 reads trajectory data ⁇ (4) (S 15 ).
- the planar graph generating unit 12 generates a Delaunay graph D (4) (S 20 ).
- the extracting unit 13 generates a route graph G (3.5) (S 20 ).
- An example of the route graph G (3.5) is illustrated in FIG. 15 .
- groups of solid line edges, broken line edges, and alternate long and short dash line edges represent the route graph G (3.5) .
- Edges e 4 , e 5 , e 6 , e 7 , and the alternate long and short dash line edges illustrated in FIG. 15 are the edge set F (+) .
- edge set F ( ⁇ ) composed of edges, except edges including the white circle nodes as the one ends, which are erased from the last Delaunay graph D (3) , is absent (empty) (S 30 ).
- trajectory management table 24 A and the edge-trajectory table 24 B are updated as illustrated in FIG. 16 (S 42 ).
- m 1, . . . M ⁇
- the processing returns to step S 47 .
- m 1, . . . , M ⁇
- the processing returns to step S 47 .
- the processing returns to step S 47 . Since unprocessed trajectory data is absent in the trajectory data set A, the processing shifts to step S 52 .
- the route-graph generating unit 15 updates the trajectory management table 24 and the edge-trajectory table 24 B.
- a difference of cost is defined taking into account dissimilarity between the route graph and trajectory data and complexity of the route graph, and the steepest descent method, which is an algorithm of an online type, is applied. Consequently, it is possible to obtain a local optimum solution of a route graph in which cost is optimized. Therefore, it is possible to more efficiently realize the online processing.
- a route graph with only trajectory data. That is, if only a condition that the trajectory data is series data of observation points is satisfied, without depending on inherent characteristics such as speed and an observation interval of observation data of a moving body mounted with a sensor such as a GPS, it is possible to generate, through the online processing, a route graph in which cost is optimized.
- the route graph in which cost is optimized may be generated by the online processing, it is possible to carry out analysis of trajectory data on a real time basis. For example, it is possible to predict traffic jams, instantaneously detect occurrence of accidents and troubles, and analyze changes in flows of people and cars involved in the traffic jams, the accidents, and the troubles on a real time basis.
- the map matching of trajectory data is performed for each of the trajectory data.
- the embodiment is not limited to this. Since results of map matching of different trajectory data do not depend on each other, the map matching may be executed in parallel using threads or sub-processes that share a graph G- ⁇ G. Consequently, it is possible to further reduce a processing time for generation of a route graph.
- a Delaunay graph is updated using all of noses of a generated Delaunay graph and observation points of trajectory data to be added.
- the Delaunay graph may be updated using, for example, nodes and observation points extracted from all of the nodes and the observation points by sampling using a random number. Consequently, it is possible to reduce computational complexity of the map matching and the number of times of repetition of the steepest descent method.
- a graph serving as an initial solution is empty.
- a route graph already generated from a plurality of trajectory data, digital road network data, a triangular lattice graph, a square lattice graph, a Delaunay graph including any points as Delaunay points, and the like may be used.
- D (t) is typically D (t ⁇ 1)
- F ( ⁇ ) is typically ⁇ .
- T e ⁇ .
- edges at the time when ⁇ (t) is map-matched with D (t) are set.
- a graph generated by the planar graph generating unit is not limited to a Delaunay graph and only has to be a planar graph.
- the route-graph generating program 50 is stored (installed) in the storing unit 43 in advance.
- the embodiment is not limited to this.
- the program related to the disclosed technique may also be provided in a form in which the program is recorded in a recording medium such as a CD-ROM, a DVD-ROM, or a USB memory.
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Automation & Control Theory (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Navigation (AREA)
- Traffic Control Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
costT(G)=Σα∈Tδα(G)+λ|G| (1)
x (i+1) =x (i) −η∇f(x (i)) (2)
ΔcostT,G(ΔG)={(Σα∈Tδα(G−ΔG)+λ|G−ΔG|)−(Σα∈Tδα(G)+λ|G|)}=Σα∈T[δα(G−ΔG)−δα(G)]−λ[|G|−|G−ΔG|] (3)
ΔcostT,G(ΔG)=Σα∈T[δα(G−ΔG)−δα(G)]−λ[|G|−|G−ΔG|]=Σ α∈Te[δα(G−ΔG)−δα(G)]+Σα∈T−Te[δα(G−ΔG)−δα(G)]−λ[|G|−|G−ΔG|]=Σ α∈Te[δα(G−ΔG)−δα(G)]−λ[|G|−|G−ΔG|] (4)
Claims (20)
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015-216883 | 2015-11-04 | ||
JP2015216883A JP6672711B2 (en) | 2015-11-04 | 2015-11-04 | Path graph generation method, apparatus, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
US20170122760A1 US20170122760A1 (en) | 2017-05-04 |
US10401185B2 true US10401185B2 (en) | 2019-09-03 |
Family
ID=58634474
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/297,812 Active 2037-08-25 US10401185B2 (en) | 2015-11-04 | 2016-10-19 | Apparatus and method for online generation of an optimum route-graph |
Country Status (2)
Country | Link |
---|---|
US (1) | US10401185B2 (en) |
JP (1) | JP6672711B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102021207528A1 (en) | 2021-07-15 | 2023-01-19 | Robert Bosch Gesellschaft mit beschränkter Haftung | Detection of connection patterns based on trajectory data |
CN114445573A (en) * | 2021-12-29 | 2022-05-06 | 武汉中海庭数据技术有限公司 | Road network generation method and device |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001209667A (en) | 2000-01-26 | 2001-08-03 | Internatl Business Mach Corp <Ibm> | Method and device for automatically generating multi- terminal net, and program storage medium having program for executing automatic multi-terminal net generation method stored therein |
US6392646B1 (en) | 1999-12-22 | 2002-05-21 | General Electric Co. | Iterative determination of the shortest path between two points on a polygonal surface |
US20040023612A1 (en) * | 2002-08-02 | 2004-02-05 | Kriesel Marshall S. | Apparatus and methods for the volumetric and dimensional measurement of livestock |
JP2004118290A (en) | 2002-09-24 | 2004-04-15 | Nippon Telegr & Teleph Corp <Ntt> | Device and method for generating index for moving locus data retrieval, device and method for retrieving moving locus data, index generating program for moving locus data retrieval, recording medium recording the same, moving locus data retrieval program and recording medium recording the same |
US20050257748A1 (en) * | 2002-08-02 | 2005-11-24 | Kriesel Marshall S | Apparatus and methods for the volumetric and dimensional measurement of livestock |
JP2011223419A (en) | 2010-04-12 | 2011-11-04 | Mitsubishi Electric Corp | Multihop wireless ad hoc network, communication system, information collection and setting device, information terminal, and route search method |
JP2012014458A (en) | 2010-06-30 | 2012-01-19 | Toshiba Tec Corp | Traffic line processing device, method and program |
WO2012050932A1 (en) | 2010-09-29 | 2012-04-19 | University Of Virginia Patent Foundation | Method, system and computer program product for optimizing route planning digital maps |
JP2013090799A (en) | 2011-10-26 | 2013-05-16 | Fujifilm Corp | Image processing device, method and program |
JP2014045919A (en) | 2012-08-31 | 2014-03-17 | Casio Comput Co Ltd | Course creation support device and program, course creation support method, and course creation support system |
US20150106392A1 (en) * | 2013-10-11 | 2015-04-16 | Fujitsu Limited | Planar graph generation device and method |
CN104700617A (en) * | 2015-04-02 | 2015-06-10 | 武汉大学 | High-precision lane information extracting method based on low-precision GPS track data |
US9146299B2 (en) * | 2013-08-06 | 2015-09-29 | Qualcomm Incorporated | Method and apparatus for position estimation using trajectory |
US9460713B1 (en) * | 2015-03-30 | 2016-10-04 | Google Inc. | Language model biasing modulation |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002279576A (en) * | 2001-03-21 | 2002-09-27 | Kumohei Otani | Optimum patrol road searching system |
US8874361B2 (en) * | 2009-05-27 | 2014-10-28 | Microsoft Corporation | Vehicle route representation creation |
US8306732B2 (en) * | 2009-08-18 | 2012-11-06 | Palo Alto Research Center Incorporated | Model based method to assess road curvature effect on travel time and comfort for route planning |
US10614600B2 (en) * | 2010-12-31 | 2020-04-07 | Tomtom Global Content B.V. | Graph based topological map matching |
JP6160399B2 (en) * | 2013-09-20 | 2017-07-12 | 富士通株式会社 | Destination information providing program, destination information providing apparatus, and destination information providing method |
-
2015
- 2015-11-04 JP JP2015216883A patent/JP6672711B2/en active Active
-
2016
- 2016-10-19 US US15/297,812 patent/US10401185B2/en active Active
Patent Citations (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6392646B1 (en) | 1999-12-22 | 2002-05-21 | General Electric Co. | Iterative determination of the shortest path between two points on a polygonal surface |
JP2003518302A (en) | 1999-12-22 | 2003-06-03 | ゼネラル・エレクトリック・カンパニイ | Determination of the shortest path between two points on a polygonal surface by an iterative method |
US20010018760A1 (en) | 2000-01-26 | 2001-08-30 | International Business Machines Corporation | Method and apparatus for automatically generating multi-terminal nets, and program storage medium storing program for executing automatic multi-terminal net generation method |
JP2001209667A (en) | 2000-01-26 | 2001-08-03 | Internatl Business Mach Corp <Ibm> | Method and device for automatically generating multi- terminal net, and program storage medium having program for executing automatic multi-terminal net generation method stored therein |
US20040023612A1 (en) * | 2002-08-02 | 2004-02-05 | Kriesel Marshall S. | Apparatus and methods for the volumetric and dimensional measurement of livestock |
US20050257748A1 (en) * | 2002-08-02 | 2005-11-24 | Kriesel Marshall S | Apparatus and methods for the volumetric and dimensional measurement of livestock |
JP2004118290A (en) | 2002-09-24 | 2004-04-15 | Nippon Telegr & Teleph Corp <Ntt> | Device and method for generating index for moving locus data retrieval, device and method for retrieving moving locus data, index generating program for moving locus data retrieval, recording medium recording the same, moving locus data retrieval program and recording medium recording the same |
JP2011223419A (en) | 2010-04-12 | 2011-11-04 | Mitsubishi Electric Corp | Multihop wireless ad hoc network, communication system, information collection and setting device, information terminal, and route search method |
JP2012014458A (en) | 2010-06-30 | 2012-01-19 | Toshiba Tec Corp | Traffic line processing device, method and program |
JP2013545078A (en) | 2010-09-29 | 2013-12-19 | ユニバーシティ オブ バージニア パテント ファウンデーション | Method, system, and computer program product for optimizing route design digital maps |
WO2012050932A1 (en) | 2010-09-29 | 2012-04-19 | University Of Virginia Patent Foundation | Method, system and computer program product for optimizing route planning digital maps |
US20130179067A1 (en) | 2010-09-29 | 2013-07-11 | University of Virginia Patent Foundation, d/b/a University of Virginia Licensing & Ventures Group | Method, System and Computer Program Product for Optimizing Route Planning Digital Maps |
JP2013090799A (en) | 2011-10-26 | 2013-05-16 | Fujifilm Corp | Image processing device, method and program |
US20140232725A1 (en) | 2011-10-26 | 2014-08-21 | Fujifilm Corporation | Image processing apparatus, image processing method, and image processing program |
JP2014045919A (en) | 2012-08-31 | 2014-03-17 | Casio Comput Co Ltd | Course creation support device and program, course creation support method, and course creation support system |
US9146299B2 (en) * | 2013-08-06 | 2015-09-29 | Qualcomm Incorporated | Method and apparatus for position estimation using trajectory |
US20150106392A1 (en) * | 2013-10-11 | 2015-04-16 | Fujitsu Limited | Planar graph generation device and method |
JP2015076069A (en) | 2013-10-11 | 2015-04-20 | 富士通株式会社 | Planar graph generation device, program and method |
US9460713B1 (en) * | 2015-03-30 | 2016-10-04 | Google Inc. | Language model biasing modulation |
CN104700617A (en) * | 2015-04-02 | 2015-06-10 | 武汉大学 | High-precision lane information extracting method based on low-precision GPS track data |
Non-Patent Citations (3)
Title |
---|
Lee et al., "Trajectory Clustering: A Partition -and-Group Framework", SIGMOD '07 pp. 1-12, Jun. 11-14, 2007, Beijing, China (cited in the specification). |
Machine Translation CN 104700617; published Jun. 2015 (Year: 2015). * |
Office Action dated Jun. 11, 2019, issued in counterpart JP Application No. 2015-216883, with English machine translation. (10 pages). |
Also Published As
Publication number | Publication date |
---|---|
JP2017090093A (en) | 2017-05-25 |
US20170122760A1 (en) | 2017-05-04 |
JP6672711B2 (en) | 2020-03-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9581454B2 (en) | Route information processing apparatus and route information processing method | |
JP6828044B2 (en) | Route deviation recognition method, terminal, and storage medium | |
KR102178295B1 (en) | Decision model construction method and device, computer device and storage medium | |
Yang et al. | Travel cost inference from sparse, spatio temporally correlated time series using markov models | |
CN108692739B (en) | Integrity monitoring method for navigation system with heterogeneous measurements | |
KR102047953B1 (en) | Method and System for Recognizing Faces | |
US9880011B2 (en) | Simplification of trajectory representation | |
JP2015161557A5 (en) | ||
US11341297B2 (en) | Obstacle distribution simulation method, device and terminal based on a probability graph | |
US10547536B2 (en) | Identifying shortest paths | |
US10401185B2 (en) | Apparatus and method for online generation of an optimum route-graph | |
US20150308851A1 (en) | Route extraction method, and route graph generation method | |
Almeida et al. | DMM: A Distributed Map-matching algorithm using the MapReduce Paradigm | |
US20170045363A1 (en) | Path graph generation method, path graph generation device and storage medium | |
US9547983B2 (en) | Analysis method and analyzing device | |
US20130046467A1 (en) | Method and apparatus for determining traveling route | |
JP5132694B2 (en) | DATA GENERATION DEVICE, DATA GENERATION METHOD, AND ROUTE SEARCH DEVICE | |
CN111858785B (en) | Map discrete element matching method, device, system and storage medium | |
JP6417272B2 (en) | Information processing apparatus and computer program | |
US20170092120A1 (en) | Common information output method, common information output device and non-transitory computer-readable storage medium | |
CN107766881B (en) | Way finding method and device based on basic classifier and storage device | |
JP2016211900A (en) | Information processing apparatus, route search method, traffic information data, and computer program | |
JP6512050B2 (en) | Search method, search program and search device | |
WO2020230277A1 (en) | Route search device, route search method, and route search program | |
US20140067769A1 (en) | String substitution apparatus, string substitution method and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: FUJITSU LIMITED, JAPAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:INAKOSHI, HIROYA;MORIKAWA, HIROAKI;ASAI, TATSUYA;AND OTHERS;REEL/FRAME:040423/0263 Effective date: 20160929 |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: PUBLICATIONS -- ISSUE FEE PAYMENT RECEIVED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: PUBLICATIONS -- ISSUE FEE PAYMENT VERIFIED |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 4 |