A path search method considering steering delay, electronic equipment and storage medium

By transforming the original directed graph into a dual graph, the problem of low computational efficiency in existing path search methods is solved, and efficient path search considering turning delays in urban roads is realized.

CN115438872BActive Publication Date: 2026-05-01NINGBO TRANSPORTATION DEV RES CENT
View PDF 3 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
NINGBO TRANSPORTATION DEV RES CENT
Filing Date
2022-09-23
Publication Date
2026-05-01

AI Technical Summary

Technical Problem

Existing path search methods are computationally inefficient when considering turning delays, especially in urban roads where the number of intersections is high and the road network size increases exponentially, leading to reduced computational efficiency.

Method used

The original directed graph is transformed into a dual graph. By establishing a mapping relationship and adding edge weights to the dual graph, path search is achieved without changing the network size. The edge-to-edge turning delay is taken into account.

Benefits of technology

It improves the computational efficiency and universality of the path search algorithm, supports path search with the initial state being a node or a directed edge, and is imperceptible to the user, greatly improving the efficiency of path search.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure QLYQS_1
    Figure QLYQS_1
  • Figure QLYQS_2
    Figure QLYQS_2
  • Figure QLYQS_19
    Figure QLYQS_19
Patent Text Reader

Abstract

This invention proposes a path search method, electronic device, and storage medium that considers turning delays, belonging to the field of path search technology. It includes: S1. Establishing a mapping relationship based on the features of the original directed graph; S2. Establishing a mapping relationship from the original directed graph to the dual graph and creating the dual graph; S3. Adding edge weights of the dual graph based on the weights of the original directed graph; S4. Performing path search based on the dual graph; S5. Restoring the shortest path in the dual graph to a path in the original directed graph. This invention transforms the original directed graph into a dual graph, converting the edges of the original directed graph into nodes of the dual graph, and vice versa. The network size remains unchanged before and after the transformation, without altering the physical structure of the network. It also considers edge-to-edge turning delays, supporting path search starting with nodes and path search starting with directed edges. This solves the problem of low computational efficiency in existing path search methods that consider delays.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to path search methods, and more particularly to a path search method, electronic device, and storage medium that take into account turning delays, belonging to the field of path search technology. Background Technology

[0002] Shortest path search in road networks is a core algorithm in modern navigation services. By abstracting roads as directed edges and assigning time-varying road segment travel times to these edges as their weights, the shortest path (minimizing travel time) between a specified origin and destination can be calculated. However, urban roads contain numerous intersections, typically equipped with traffic lights. Vehicles passing through intersections may turn left, right, go straight, or make a U-turn. Due to the timing of traffic lights, different turning behaviors at intersections result in varying time delays. Traditional path search methods can only consider the travel time cost of directed edges, failing to account for the time cost of edge-to-edge turning. To address edge-to-edge turning delays, a time-varying K-shortest path search method for urban road networks (CN106845703B) has been proposed. This method obtains the turning edges at intersection boundaries using an extended network method and considers intersection turning delays by controlling the delay values ​​of these turning edges. The problem with this method is that if there are many intersections in the road network, the expansion of the road network will lead to a multiple increase in the size of the road network, resulting in a decrease in computational efficiency. Summary of the Invention

[0003] A brief overview of the invention is given below to provide a basic understanding of certain aspects of it. It should be understood that this overview is not an exhaustive summary of the invention. It is not intended to identify key or essential parts of the invention, nor is it intended to limit the scope of the invention. Its purpose is merely to present certain concepts in a simplified form as a prelude to the more detailed description that follows.

[0004] In view of this, in order to solve the problem of low computational efficiency of existing path search methods that take into account delays, the present invention provides a path search method, electronic device and storage medium that take into account turning delays.

[0005] Option 1: A path search method that considers turning delays, comprising the following steps:

[0006] S1. Establish mapping relationships based on the existing features of the directed graph;

[0007] S2. Establish the mapping relationship from the original directed graph to the dual graph and create the dual graph;

[0008] S3. Add edge weights of the dual graph based on the original directed graph weights;

[0009] S4. Path search based on dual graph;

[0010] S5. Restore the shortest path in the dual graph to the original directed graph path.

[0011] Preferably, S1 specifically involves: recording the upstream and downstream relationships of the nodes in the original directed graph, and obtaining the downstream feature hash table and the upstream feature hash table. Specific steps include:

[0012] S11. Initialize the downstream feature hash table and the upstream feature hash table:

[0013] from atrr ={n1:[],n2:[],…n K :[]}

[0014] to atrr ={n1:[],n2:[],…n K :[]}

[0015] Among them, from atrr This represents the downstream feature hash table of the original directed graph, to atrr This represents the upstream feature hash table of the original directed graph, {n1:[],n2:[],…n K :[]} represents the set of nodes n;

[0016] S12. Traverse the edge set E of the original directed graph. ori For each directed edge e, its starting node is n. f The endpoint is n t For the downstream feature hash table, find the key named n f The key-value pairs will be the endpoint node n t Add to its value set; for the upstream feature hash table, find the key named n t The key-value pairs, n f Add to its value collection;

[0017] S13. Obtain the upstream feature hash table and the downstream feature hash table.

[0018] Preferably, S2 is:

[0019] S21. Initialize the mapping table edge_dual_node from the original directed graph edges to the dual graph nodes, the mapping table node_dual_edge from the original directed graph nodes to the dual graph edges, the dual graph node dual_node_id, and the set of dual graph edges. and dual graph node set

[0020] combine

[0021] edge_dual_node={}

[0022] node_dual_edge={}

[0023] dual_node_id = 1

[0024]

[0025]

[0026] S22. Traverse the set of edges Eori of the original directed graph. For each directed edge e, its starting node is n. f The endpoint is n t ;

[0027] a. Determine the edge tuple (n) f ,n t If the key exists in the `edge_dual_node` key, increment `dual_node_id` by 1; otherwise, add a key-value pair to `edge_dual_node`: (n f ,n t ): dual_node_id, and also in the set Add dual_node_id;

[0028] b. Find all elements from n in the original directed graph. t The set of nodes reachable from point A is denoted as f_set, where f_set = from. attr [n t ], where n t Represents n t The set of downstream adjacent nodes of the node; if f_set is an empty set: no operation is performed; if f_set is not an empty set: the endpoint node n is used. t Each element in f_set forms an edge, resulting in the edge set: [(n t ,n1),(n t ,n2)…(n t n k )], k is the number of elements in f_set, and the edge (n f n t The edge relations of the dual graph are obtained by combining each edge in the edge set with the edge set: [((n) f n t ), (n t ,n1)),((n f n t ), (n t ,n2)),…,((n f n t ), (n tn k Then add the reachable nodes. middle;

[0029] S23. Using the mapping relationship of edge_dual_node, replace the original directed graph start edge and original directed graph end edge of each edge in the dual graph edge set with the dual node number.

[0030] Preferably, S3 is:

[0031] Traverse every edge of the dual graph The starting node of the dual graph is The endpoint of the dual graph is Using the reverse mapping relationship of edge_dual_node, the original directed graph edge corresponding to the starting node of the dual graph is e. f The original directed graph edge corresponding to the endpoint node is e. t Then the edges of the dual graph weight for:

[0032]

[0033] Among them, ori_turn weight [(e f ,e t )] represents e f to e t Turning delay; ori_edge wieght [e t ] represents the original directed graph edge e t The edge delay.

[0034] Preferably, S4 is:

[0035] Specify the starting node n of the path search in the original directed graph ori and path search endpoint node n des Map the starting node in the original directed graph to the starting node of the path in the dual graph. Path endpoint nodes in the dual graph The path search using the dual graph involves the following mapping operation:

[0036] S41. Search the starting node n ori Iterate through each key name (n) in edge_dual_node x ,n y If n y =n ori ,but If no matching key name is found after the traversal, then traverse each key name (n) in edge_dual_node again. x ,n y If n x =n ori The value of the dual graph node corresponding to the key name is edge_dual_node[(n x ,n y If )], then add a node with the number -1 to the dual graph, and add an edge (-1, edge_dual_node[(n x ,n y The edge weight is equal to the weight of the edge (n) in the original directed graph. x ,n y The weight of ) and

[0037] S42. Search for the final node n des Traverse each node of the dual graph: traverse each key name (n) in edge_dual_node. x ,n y If n y ==n des ,but If no matching key name is found after the traversal, it means that the two points specified by the user are not connected and there is no shortest path.

[0038] S43. Starting node based on dual graph and the endpoint Perform shortest path calculation to obtain the path.

[0039] Preferably, S5 specifically involves: obtaining the shortest path represented by the nodes of the dual graph based on S4, assuming that the path has N dual nodes. Using the reverse mapping relationship of edge_dual_node, we can The dual node sequence in the graph is mapped to the original directed graph edge sequence p:

[0040]

[0041] in, They can be merged.

[0042] Option 2: An electronic device, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps of the path search method considering turning delays described in Option 1.

[0043] Option 3: A computer-readable storage medium having a computer program stored thereon, wherein the computer program, when executed by a processor, implements the path search method for considering turning delays as described in Option 1.

[0044] The beneficial effects of this invention are as follows: This invention transforms the original directed graph into a dual graph, converting the edges of the original directed graph into nodes of the dual graph, and vice versa. The network size remains unchanged before and after the transformation, without altering the physical structure of the network. It also considers edge-to-edge turning delays, supporting path search starting with nodes and path search starting with directed edges. The size of the directed graph network remains unchanged after processing, making computation convenient and imperceptible to the user. This invention can add turning delays from any edge to its downstream edge during path search, greatly improving the universality of the path search algorithm; it also solves the problem of low computational efficiency in existing path search methods that consider delays. Attached Figure Description

[0045] The accompanying drawings, which are included to provide a further understanding of this application and form part of this application, illustrate exemplary embodiments and are used to explain this application, but do not constitute an undue limitation of this application. In the drawings:

[0046] Figure 1 This is a flowchart illustrating a path search method that takes into account turning delays.

[0047] Figure 2 These are schematic diagrams of directed and undirected graphs, where a is an undirected graph and b is a directed graph;

[0048] Figure 3 This is a schematic diagram of a graph and its subgraphs, where a is the graph and b is the subgraph.

[0049] Figure 4 This is a schematic diagram of a connected graph;

[0050] Figure 5 A schematic diagram for adding edge weights to the dual graph based on the weights of the original graph. Detailed Implementation

[0051] To make the technical solutions and advantages of the embodiments of this application clearer, the exemplary embodiments of this application will be described in further detail below with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of this application, and not an exhaustive list of all embodiments. It should be noted that, unless otherwise specified, the embodiments and features in the embodiments of this application can be combined with each other.

[0052] Example 1, Reference Figures 1-5 This embodiment describes a path search method that takes into account turning delays, comprising the following steps:

[0053] S1. Establish mapping relationships based on the original directed graph features. To facilitate subsequent network transformation, the upstream and downstream relationships of the nodes in the original graph need to be recorded and stored as hash tables. The general forms of the downstream feature hash table and the upstream feature hash table of the original graph are as follows:

[0054] from atrr ={n1:[n 1x ,n 1y ,…],n2:[n 2x ,n 2y ,…],…n2:[n Kx ,n Ky ,…]}

[0055] to atrr ={n1:[n 1x ,n 1y ,…],n2:[n 2x ,n 2y ,…],…n2:[n Kx ,n Ky ,…]}

[0056] from atrr This is the downstream feature hash table of the original image, and its meaning is as follows:

[0057] The set of downstream nodes of node n1 is [n1x, n1y, ...].

[0058] The set of downstream nodes of node n2 is [n2x, n2y, ...].

[0059] to atrr It is the upstream feature hash table of the original image, and its meaning is as follows:

[0060] The upstream nodes of node n1 are n1x, n1y, ...

[0061] The upstream nodes of node n2 are n2x, n2y, ...

[0062] Define a way to get the set of upstream nodes of a given node nk. and downstream node set The method is as follows:

[0063]

[0064]

[0065] Record the upstream and downstream relationships of the nodes in the original directed graph, and obtain the downstream feature hash table and the upstream feature hash table. The specific steps include:

[0066] S11. Initialize the downstream feature hash table and the upstream feature hash table:

[0067] from atrr ={n1:[],n2:[],…n K :[]}

[0068] to atrr ={n1:[],n2:[],…n K :[]}

[0069] Among them, from atrr This represents the downstream feature hash table of the original directed graph, to atrr This represents the upstream feature hash table of the original directed graph, {n1:[],n2:[],…n K :[]} represents the set of nodes n;

[0070] S12. Traverse the edge set E of the original directed graph. ori For each directed edge e, its starting node is n. f The endpoint is n t For the downstream feature hash table, find the key named n f The key-value pairs will be the endpoint node n t Add to its value set; for the upstream feature hash table, find the key named n t The key-value pairs, n f Add to its value collection;

[0071] S13. Obtain the upstream feature hash table and the downstream feature hash table.

[0072] S2. Establish the mapping relationship from the original directed graph to the dual graph and create the dual graph. The method includes the following steps:

[0073] S21. Initialize the mapping table edge_dual_node from the original directed graph edges to the dual graph nodes, the mapping table node_dual_edge from the original directed graph nodes to the dual graph edges, the dual graph node dual_node_id, and the set of dual graph edges. and dual graph node set

[0074] edge_dual_node={}

[0075] node_dual_edge={}

[0076] dual_node_id = 1

[0077]

[0078]

[0079] S22. Traverse the set of edges Eori of the original directed graph. For each directed edge e, its starting node is n. f The endpoint is n t ;

[0080] a. Determine the edge tuple (n) f ,n t If the key exists in the `edge_dual_node` key, increment `dual_node_id` by 1; otherwise, add a key-value pair to `edge_dual_node`: (n f ,n t ): dual_node_id, and also in the set Add dual_node_id;

[0081] b. Find all elements from n in the original directed graph. t The set of nodes reachable from point A is denoted as f_set, where f_set = from. attr [n t ], where n t Represents n t The set of downstream adjacent nodes of the node; if f_set is an empty set: no operation is performed; if f_set is not an empty set: the endpoint node n is used. t Each element in f_set forms an edge, resulting in the edge set: [(n t ,n1),(n t ,n2)…(n t n k )], k is the number of elements in f_set, and the edge (n f n t The edge relations of the dual graph are obtained by combining each edge in the edge set with the edge set: [((n) f n t ), (n t ,n1)),((n f n t ), (n t ,n2)),…,((n f n t ), (n t n k Then add the reachable nodes. middle;

[0082] S23. Using the mapping relationship of edge_dual_node, replace the original directed graph start edge and original directed graph end edge of each edge in the dual graph edge set with the dual node number.

[0083] S3. Add edge weights of the dual graph based on the original directed graph weights (refer to...) Figure 5 Users can specify the edge-to-edge turning delay in the original graph. Now, edge weights from the dual graph will be added, where the two starting nodes of each edge in the dual graph are two edges from the original graph. The method is to iterate through each edge of the dual graph. The starting node of the dual graph is The endpoint of the dual graph is Using the reverse mapping relationship of edge_dual_node, the original directed graph edge corresponding to the starting node of the dual graph is e. f The original directed graph edge corresponding to the endpoint node is e. t Then the edges of the dual graph weight for:

[0084]

[0085] Among them, ori_turn weight [(e f ,e t )] represents e f to e t Turning delay; ori_edge wieght [e t ] represents the original directed graph edge e t The edge delay.

[0086] S4. Path search based on the dual graph, the method is as follows:

[0087] Specify the starting node n of the path search in the original directed graph ori and path search endpoint node n des Map the starting node in the original directed graph to the starting node of the path in the dual graph. Path endpoint nodes in the dual graph The path search using the dual graph involves the following mapping operation:

[0088] S41. Search the starting node n ori Iterate through each key name (n) in edge_dual_node x ,n y If n y =n ori ,but If no matching key name is found after the traversal, then traverse each key name (n) in edge_dual_node again. x ,n y If n x =n ori The value of the dual graph node corresponding to the key name is edge_dual_node[(n x ,n yIf )], then add a node with the number -1 to the dual graph, and add an edge (-1, edge_dual_node[(n x ,n y The edge weight is equal to the weight of the edge (n) in the original directed graph. x ,n y The weight of ) and

[0089] S42. Search for the final node n des Traverse each node of the dual graph: traverse each key name (n) in edge_dual_node. x ,n y If n y ==n des ,but If no matching key name is found after the traversal, it means that the two points specified by the user are not connected and there is no shortest path.

[0090] S43. Starting node based on dual graph and the endpoint Perform shortest path calculation to obtain the path.

[0091] S5. Restore the shortest path in the dual graph to the original directed graph path. The method is: based on S4, obtain the shortest path represented by the nodes of the dual graph. Assume the path has N dual nodes. Using the reverse mapping relationship of edge_dual_node, we can The dual node sequence in the graph is mapped to the original directed graph edge sequence p:

[0092]

[0093] in, They can be merged.

[0094] To better understand this description:

[0095] Suppose the sequence of dual nodes for a certain path is as follows:

[0096] p = {1, 2, 3}

[0097] After the reverse mapping of edge_dual_node:

[0098] p={1,2,3}={(6,7),(7,12),(12,11)}

[0099] That is, the edges that the path passes through in the original graph are (6,7), (7,12), and (12,11) in sequence. Since the path must be connected and continuous, the terminal node 7 of the first edge (6,7) must be the same as the starting node 7 of its downstream edge (7,12). Similarly, the terminal node 12 of the edge (7,12) is the same as the starting node 12 of its downstream edge (12,11).

[0100] Therefore, after merging identical nodes, the node sequence of the original graph path is: (6,7,12,11).

[0101] Definitions of abbreviations and key terms in this invention:

[0102] A graph is composed of an infinite non-empty set of vertices and a set of edges between vertices, usually denoted by G(V,E), where G represents a graph, V is the set of vertices in graph G, and E is the set of edges in graph G. If vertices represent entities, and lines connecting two vertices represent the relationships between the two entities, then graphs in graph theory can be used to describe specific networks of relationships between certain entities. Introducing graph structures into transportation networks can effectively solve the problem of comparing the structures of different transportation networks.

[0103] Reference Figure 2 In data structures, graphs represent a one-to-many relationship and are generally divided into undirected graphs and directed graphs. The difference between the two is that the edges in a directed graph have a direction. Edges without direction are called undirected edges, while edges with direction are called directed edges.

[0104] Reference Figure 3 If all vertices and edges in graph G'(V',E') are contained in graph G(V,E), i.e., E'∈E and V'∈V, then graph G' is called a subgraph of graph G.

[0105] Reference Figure 4 If there is a path connecting any two vertices in a graph G, then graph G is called a connected graph. In the graph below, v1 and v4 are not connected, but there are two paths from v1 to v4: v1-v0-v4 and v1-v3-v4. Therefore, v1 and v4 are also said to be connected.

[0106] In graph theory, the degree of a node refers to the number of edges associated with that node, also known as the degree of association. Specifically for directed graphs, the in-degree of a node is the number of edges entering that node, and the out-degree is the number of edges originating from that node. Therefore, the degree of a node in a directed graph is the sum of its in-degree and out-degree.

[0107] Path search refers to finding the shortest path between a given weighted directed graph, specifying a start node and an end node, and using a path search algorithm. The searched path is represented by an ordered sequence of nodes.

[0108] Turning delay refers to the time delay caused by signal control at the left-turn lane, right-turn lane, straight lane, and U-turn lane at an intersection, that is, the delay caused by moving from an upstream directed edge to a downstream directed edge.

[0109] A hash table represents a mapping relationship. An element of a hash table consists of a key and a value, which can be represented as key_name: value. Multiple elements constitute a hash table, {key_name1: value1, key_name2: value1, ...}. Keys are unique. For a known hash table (map), we obtain the value through the key as follows: val = map[key_name]

[0110] Example 2: The computer device of the present invention may include a processor and a memory, such as a microcontroller containing a central processing unit. Furthermore, the processor executes the computer program stored in the memory to implement the steps of the above-described recommendation method for modifyable relationship-driven recommendation data based on CREO software.

[0111] The processor referred to can be a Central Processing Unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor can be a microprocessor or any conventional processor.

[0112] The memory may primarily include a program storage area and a data storage area. The program storage area may store the operating system and at least one application program required for a function (such as sound playback, image playback, etc.); the data storage area may store data created based on the use of the mobile phone (such as audio data, phonebook, etc.). Furthermore, the memory may include high-speed random access memory, and may also include non-volatile memory, such as hard disks, RAM, plug-in hard disks, smart media cards (SMC), secure digital cards (SD cards), flash cards, at least one disk storage device, flash memory device, or other volatile solid-state storage devices.

[0113] Example 3: Computer-readable storage medium example

[0114] The computer-readable storage medium of the present invention can be any form of storage medium that can be read by the processor of a computer device, including but not limited to non-volatile memory, volatile memory, ferroelectric memory, etc. The computer-readable storage medium stores a computer program. When the processor of the computer device reads and executes the computer program stored in the memory, the steps of the above-described modeling method for modifyable relation-driven modeling data based on CREO software can be implemented.

[0115] The computer program includes computer program code, which may be in the form of source code, object code, executable file, or some intermediate form. The computer-readable medium may include: any entity or device capable of carrying the computer program code, recording media, USB flash drive, portable hard drive, magnetic disk, optical disk, computer memory, read-only memory (ROM), random access memory (RAM), electrical carrier signals, telecommunication signals, and software distribution media, etc. It should be noted that the content included in the computer-readable medium may be appropriately added to or subtracted according to the requirements of legislation and patent practice in the jurisdiction. For example, in some jurisdictions, according to legislation and patent practice, computer-readable media may not include electrical carrier signals and telecommunication signals.

[0116] Although the invention has been described with reference to a limited number of embodiments, those skilled in the art will understand from the foregoing description that other embodiments are conceivable within the scope of the invention described herein. Furthermore, it should be noted that the language used in this specification has been chosen primarily for readability and instructional purposes, and not for the purpose of interpreting or limiting the subject matter of the invention. Therefore, many modifications and variations will be apparent to those skilled in the art without departing from the scope and spirit of the appended claims. The disclosure of the invention is illustrative and not restrictive, and the scope of the invention is defined by the appended claims.

Claims

1. A path search method considering turning delays, characterized in that, Includes the following steps: S1. Establish mapping relationships based on the features of the original directed graph, record the upstream and downstream relationships of the nodes in the original directed graph, and obtain the downstream feature hash table and the upstream feature hash table. The specific steps include: S11. Initialize the downstream feature hash table and the upstream feature hash table: ; ; in, This represents the downstream feature hash table of the original directed graph. This represents the upstream feature hash table of the original directed graph. The set representing node n; S12. Traverse the edge set of the original directed graph. For each directed edge Its starting node is The endpoint is For the downstream feature hash table, find the key named The key-value pairs will be the endpoint node. Add to its value set; for the upstream feature hash table, find the key named key-value pairs, Add to its value collection; S13. Obtain the upstream feature hash table and the downstream feature hash table; S2. Establish the mapping relationship from the original directed graph to the dual graph and create the dual graph, specifically: S21. Initialize the mapping table from the edges of the original directed graph to the nodes of the dual graph. The mapping table from the nodes of the original directed graph to the edges of the dual graph. Dual graph nodes Dual graph edge set and dual graph node set : ; ; ; ; ; S22. Traverse the set of edges of the original directed graph. For each directed edge e, its starting node is The endpoint is ; a. Determine edge pairs Is it in In the key; if in, Increment by 1; if not present, then present. Add key-value pairs: At the same time in the set Add ; b. Find all elements from the original directed graph. The set of nodes reachable from point A is denoted as . , ,in, ;like If the set is empty: then no operation is performed; if If the set is not empty, then use the endpoint node. and Each element in the set forms an edge, resulting in the edge set: k is The number of elements, will the edge Combining each edge in the edge set yields the edge relations of the dual graph: Then add the reachable nodes. middle; S23. Utilize The mapping relationship replaces the original directed graph start edge and original directed graph end edge of each edge in the dual graph edge set with the dual node number. S3. Add edge weights to the dual graph based on the original directed graph weights. Specifically, this involves traversing each edge of the dual graph. The starting node of the dual graph is The endpoint of the dual graph is ,use The reverse mapping relationship yields the original directed graph edge corresponding to the starting node of the dual graph. The original directed graph edges corresponding to the endpoint node are: Then the edges of the dual graph weight for: ; in, express arrive Turnaround delay; Indicates the edges of the original directed graph Edge delay; S4. Perform path search based on the dual graph, specifically by specifying the starting node for the path search in the original directed graph. and path search endpoint node Map the starting node in the original directed graph to the starting node of the path in the dual graph. Path endpoint nodes in the dual graph The path search using the dual graph is performed as follows: S41. Search for the starting node traversal Each key name ,like ,but If no matching key name is found after the traversal, the traversal continues. Each key name ,like The value of the dual graph node corresponding to the key name is Then add a node with the number -1 to the dual graph and add an edge (-1, ... The edge weight is the same as the edge weight in the original directed graph. The weight, and ; S42. Search for the final node Traverse each node of the dual graph: Traverse Each key name ,like ,but If no matching key name is found after the traversal, it means that the two points specified by the user are not connected and there is no shortest path. S43. Starting node based on dual graph and the endpoint Perform shortest path calculation to obtain the path; S5. Restore the shortest path in the dual graph to the original directed graph path. Specifically, based on S4, obtain the shortest path represented by the nodes of the dual graph, assuming the path has N dual nodes. : ,use The reverse mapping relationship will The dual node sequence in the graph is mapped to the original directed graph edge sequence. : ; in, = ,merge.

2. An electronic device, characterized in that, It includes a memory and a processor, the memory storing a computer program, and the processor executing the computer program to implement the steps of the path search method considering turning delays as described in claim 1.

3. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by the processor, it implements the path search method that takes into account turning delays as described in claim 1.

Citation Information

Patent Citations

  • A Time-Varying K-Shortest Path Search Method for Urban Road Networks Considering Turning Delay

    CN106845703B

  • Heuristic shortest path search method based on direction optimization

    CN103226581A

  • Practical routing selection method based on consideration of city intersection time delay

    CN104318794A