Device, method and computer program for generating distance matrix for multiple destination navigation

TWI940053BActive Publication Date: 2026-09-21INAVI SYSTEMS CORPORATION
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
TW114113458
Authority / Receiving Office
TW · TW
Patent Type
Patents
Current Assignee / Owner
Priority Date
2024-04-12
Filing Date
2025-04-10
Publication Date
2026-09-21
Estimated Expiration
2045-04-09

AI Technical Summary

Technical Problem

Existing pathfinding algorithms for the Traveling Salesman Problem (TSP) require N*N path explorations to construct a distance matrix, which increases computational cost and time with the number of destinations.

Method used

A distance matrix generation device and method that uses heuristic factors to set exploration areas and sequentially explore paths to multiple destinations, updating the matrix in a single process, reducing the number of explorations and time required.

Benefits of technology

The method effectively reduces the number of times and time spent exploring the shortest path to multiple destinations by using heuristic factors to set and update exploration areas, allowing for efficient generation of distance matrices.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure TWG2TB001912170_001
    Figure TWG2TB001912170_001
  • Figure TWG2TB001912170_002
    Figure TWG2TB001912170_002
  • Figure TWG2TB001912170_003
    Figure TWG2TB001912170_003
Patent Text Reader

Abstract

A distance matrix generation apparatus for exploring multiple destinations includes: an exploration area setting unit that calculates a heuristic factor based on a pre-set starting point and the location distribution of multiple destinations, and sets a first exploration area including a first destination among the multiple destinations based on the heuristic factor; an exploration unit that generates exploration information while sequentially expanding links from the starting point within the first exploration area, and explores paths to the first destination based on the exploration information; and an updating unit that updates the result value for the first destination in the distance matrix after completing path exploration for the first destination, and after completing path exploration for the first destination, the exploration area setting unit sets a second exploration area wider than the first exploration area based on the heuristic factor, and when completing path exploration for the first destination, the exploration unit expands links within the second exploration area to update the exploration information, and explores paths to the second destination among the multiple destinations based on the updated exploration information.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a distance matrix generation apparatus, method and computer program for exploring multiple destinations. Prior Technology

[0002] Pathfinding algorithms have various applications in real life, serving as algorithms to provide the shortest path to a destination. For example, GPS navigation systems use pathfinding algorithms to provide drivers with the shortest route.

[0003] Existing pathfinding algorithms include Dijkstra's algorithm, A* algorithm, nearest neighbor search, and depth-first search (DFS). For example, Dijkstra's algorithm is an algorithm for finding the shortest path between vertices in a graph (such as a road network).

[0004] Additionally, there is the Traveling Salesman Problem (TSP), which seeks the optimal path to visit multiple destinations once and return to the origin. Algorithms such as Ant Colony Optimization (ACO) are known to be able to solve the TSP.

[0005] When implementing algorithms to solve TSP (Traffic Strike Point), a distance matrix between destinations is required. If the path information derived from actual drivable road information is used to construct a distance matrix, it will help solve various real-world problems.

[0006] However, when using existing algorithms to solve the TSP problem with N destinations, it is necessary to perform N*N path exploration to construct the distance matrix. In other words, the computational cost increases rapidly proportionally to the number of destinations when using existing algorithms to solve the TSP.

[0007] [Existing Technical Documents]

[0008] [Patent Literature]

[0009] (Patent Document 1) Korean Patent Publication No. 10-2595387 (Granted on October 25, 2023)

[0010] (Patent Document 2) Korean Patent Publication No. 10-1031184 (Granted on April 19, 2011) Summary of the Invention

[0011] Technical problems to be solved

[0012] The purpose of this invention is to solve the problems of the prior art mentioned above, and to provide a distance matrix generation device, method and computer program that can effectively reduce the number of times and time spent exploring the shortest path to multiple destinations.

[0013] Therefore, the purpose of this invention is to provide a distance matrix generation apparatus, method, and computer program that can quickly derive the shortest path and time information between multiple destinations and quickly generate a distance matrix for exploring multiple destinations.

[0014] However, the technical task to be accomplished in this embodiment is not limited to this technical problem, and other technical problems may also exist.

[0015] Technical solution

[0016] As a means to solve the above-mentioned technical problems, an embodiment of the present invention provides a distance matrix generation device for exploring multiple destinations. The distance matrix generation device includes: an exploration area setting unit, which calculates a heuristic factor based on the location distribution of multiple destinations and sets a first exploration area including a first destination among the multiple destinations based on the heuristic factor; an exploration unit, which generates exploration information while sequentially expanding links from a set starting point within the first exploration area, and explores a path to the first destination based on the exploration information; and an updating unit, which updates the result value of the first destination in the distance matrix after completing the path exploration of the first destination, and after completing the path exploration of the first destination, the exploration area setting unit sets a second exploration area wider than the first exploration area based on the heuristic factor, and when completing the path exploration of the first destination, the exploration unit expands links within the second exploration area to update the exploration information, and explores a path to the second destination among the multiple destinations based on the updated exploration information.

[0017] Another embodiment of the present invention provides a method for generating a distance matrix for exploring multiple destinations. The method includes: calculating a heuristic factor based on the location distribution of multiple destinations; setting a first exploration region including a first destination within the multiple destinations based on the heuristic factor; generating exploration information within the first exploration region while sequentially expanding links from a pre-set starting point; exploring paths to the first destination based on the exploration information; and updating the result value for the first destination in the distance matrix after completing path exploration for the first destination. The step of setting the first exploration region includes: setting a second exploration region wider than the first exploration region based on the heuristic factor after completing path exploration for the first destination; generating the exploration information includes: updating the exploration information by expanding links within the second exploration region after completing path exploration for the first destination; and exploring paths to the second destination among the multiple destinations based on the updated exploration information.

[0018] Another embodiment of the present invention provides a computer program stored on a computer-readable recording medium, comprising a command sequence for generating a distance matrix for exploring multiple destinations, wherein the computer program, when executed by a computing device, includes the command sequence, which calculates a heuristic factor based on the location distribution of the multiple destinations, sets a first exploration area including a first destination among the multiple destinations based on the heuristic factor, generates exploration information while sequentially extending links from a pre-set starting point within the first exploration area, explores a path to the first destination based on the exploration information, updates the result value for the first destination in the distance matrix after completing the path exploration for the first destination, sets a second exploration area wider than the first exploration area based on the heuristic factor, extends links within the second exploration area to update the exploration information, and explores a route to the second destination among the multiple destinations based on the updated exploration information.

[0019] The methods for solving the problem described above are merely illustrative and should not be construed as limiting the present invention. In addition to the illustrative embodiments described above, further embodiments may be described in the accompanying drawings and detailed description of the present invention.

[0020] Invention Effects

[0021] According to any of the above-described means of solving the problem of the present invention, a distance matrix generation apparatus, method, and computer program can be provided, which can effectively reduce the number of times and time spent exploring the shortest path to multiple destinations.

[0022] Therefore, a distance matrix generation apparatus, method, and computer program can be provided that can quickly derive the shortest path and time information between multiple destinations and quickly generate a distance matrix for exploring multiple destinations. Simple Explanation of the Diagram

[0023] Figure 1 is a schematic diagram showing a distance matrix generation device for exploring multiple destinations.

[0024] Figure 2 is an example diagram illustrating the process of exploring multiple destinations.

[0025] Figure 3 is an example diagram illustrating a method for calculating heuristic factors.

[0026] Figure 4 is an example diagram illustrating a method for setting up an exploration area based on heuristic factors.

[0027] Figure 5 is an example diagram illustrating a method for setting up an exploration area based on heuristic factors.

[0028] Figure 6 is an example diagram illustrating the process of exploring a path to a destination.

[0029] Figure 7 is an example diagram illustrating the method used to update the distance matrix.

[0030] Figure 8 is a flowchart illustrating a method for generating a distance matrix for exploring multiple destinations. Implementation

[0031] The embodiments of the present invention will now be described in detail with reference to the accompanying drawings, so that those skilled in the art can easily implement the invention. However, the present invention can be implemented in various different forms and is not limited to the embodiments described herein. Furthermore, in order to clearly explain the invention in the drawings, parts irrelevant to the explanation have been omitted, and similar reference numerals have been used for similar parts throughout the specification.

[0032] Throughout this specification, when a part is “connected” to another part, this includes not only the case of a “direct connection” but also the case of an “electrical connection” with another element in between. Furthermore, when any part “includes” a constituent element, unless otherwise expressly stated, this does not exclude other constituent elements but may include them, and should be understood as not precluding the existence or additional possibility of one or more other features, figures, steps, operations, constituent elements, components, or combinations thereof.

[0033] In this specification, the term "unit" includes a unit implemented in hardware, a unit implemented in software, and a unit implemented using both. Furthermore, a unit may be implemented using two or more hardware components, or two or more units may be implemented using a single hardware component.

[0034] Some operations or functions described in this specification that are performed by a terminal or device may also be performed by a server connected to that terminal or device. Similarly, some operations or functions described as being performed by a server may also be performed by a terminal or device connected to that server.

[0035] An embodiment of the present invention will now be described in detail with reference to the accompanying drawings.

[0036] Figure 1 is a schematic diagram illustrating a distance matrix generation device for exploring multiple destinations. Referring to Figure 1, the distance matrix generation device 100 may include an exploration area setting unit 110, an exploration unit 120, and an updating unit 130. However, the aforementioned components 110 to 130 are merely examples of components controllable by the distance matrix generation device 100.

[0037] The various components of the distance matrix generation device 100 in Figure 1 are typically connected by a network. For example, as shown in Figure 1, the exploration area setting unit 110, the exploration unit 120, and the update unit 130 can be connected simultaneously or at intervals.

[0038] A network refers to a connection structure that enables information exchange between various nodes, such as terminals and servers. This includes Local Area Networks (LANs), Wide Area Networks (WANs), the Internet (WWW), wired and wireless data communication networks, telephone networks, and wired and wireless television communication networks. Examples of wireless data communication networks include, but are not limited to, 3G, 4G, 5G, 3GPP (3rd Generation Partnership Project), LTE (Long Term Evolution), WiMAX (World Interoperability for Microwave Access), Wi-Fi, Bluetooth, infrared, ultrasound, Visible Light Communication (VLC), and LiFi.

[0039] Figure 2 is an example diagram illustrating the process of exploring multiple destinations. Referring to Figure 2, the distance matrix generation device 100 can effectively reduce the number of shortest path explorations and the time required to explore multiple destinations.

[0040] The distance matrix generation device 100 can register one origin and multiple destinations (step S210). For example, the distance matrix generation device 100 can register an origin, a first destination, a second destination, a third destination, and a fourth destination. The distance matrix generation device 100 can manage the destination list in order of the shortest straight-line distance from the origin to each destination. Here, it is assumed that the order of distances from the origin to the multiple destinations is fourth destination > third destination > second destination > first destination.

[0041] The distance matrix generation device 100 can calculate the heuristic factor (step S220). For example, the distance matrix generator 100 can calculate the heuristic factor from the location distribution of the first destination, the second destination, the third destination, and the fourth destination. The method for calculating the heuristic factor will be described later.

[0042] The distance matrix generation device 100 can set the exploration area of ​​the first destination (step S230). For example, the distance matrix generation device 100 can first set the first exploration area of ​​the first destination closest to the starting point based on calculated heuristic factors.

[0043] The distance matrix generation device 100 can perform link exploration (step S240). For example, the distance matrix generation device 100 can explore linear road information, i.e., links, from the starting point to the first destination within a first exploration area.

[0044] The distance matrix generation device 100 can determine whether the explored link is the same as the already set end link (step S250). According to one embodiment, if the explored link is not the same as the already set end link (step S251), the distance matrix generation device 100 can additionally explore the link at the branch points of the explored link (step S240).

[0045] According to one embodiment, if the explored link is the same as the set termination link (step S252), the distance matrix generation device 100 can end the exploration of the first destination (step S260).

[0046] The distance matrix generation device 100 can update the distance matrix (step S270). For example, the distance matrix generation device 100 can reflect the exploration information of the first destination in the distance matrix.

[0047] The distance matrix generation device 100 can set an exploration area for a second destination after the exploration of the first destination is completed (step S280). For example, the distance matrix generation device 100 can set a second exploration area for the second destination and perform path exploration to the second destination within the second exploration area. Here, the second exploration area can be set wider than the first exploration area.

[0048] The distance matrix generation device 100 can set a third exploration area for the third destination after the exploration of the second destination is completed, and can explore the path to the third destination within the third exploration area. Here, the third exploration area can be set wider than the second exploration area.

[0049] Afterwards, the distance matrix generation device 100 can set a fourth exploration area for the fourth destination after the exploration of the third destination is completed, and can explore the path to the fourth destination within the fourth exploration area. Here, the fourth exploration area can be set wider than the third exploration area.

[0050] That is, the distance matrix generating device 100 can expand the path exploration information to the first destination in the first exploration area, explore the path to the second destination in the second exploration area, expand the path exploration information in the second exploration area, explore the path to the third destination in the third exploration area, expand the path exploration information in the third exploration area, and explore the path to the fourth destination.

[0051] In other words, the distance matrix generation device 100 can overcome the shortcomings of existing technologies that require additional exploration times for each destination, and can achieve path exploration from the first destination to the fourth destination in a single process. Therefore, the distance matrix generation device 100 can effectively shorten the time required to generate distance matrices for multiple destinations.

[0052] The following figures 3 through 7 will show the various components of the distance matrix generation device 100.

[0053] Figure 3 is an example diagram illustrating a method for calculating heuristic factors. Referring to Figure 3, the exploration area setting unit 110 can calculate heuristic factors based on the location distribution of multiple destinations.

[0054] In Figure 3, 'a' represents the case where the center of gravity of the location distribution is located at the center, 'b' represents the case where the center of gravity of the location distribution is located at the periphery, and 'c' represents the case where the center of gravity of the location distribution is located at the edge. That is, in Figure 3, 'a' represents the case where multiple destinations are evenly distributed around the departure point, and 'c' represents the case where multiple destinations are densely distributed in a specific area compared to the departure point.

[0055] For example, the exploration area setting unit 110 can use the K-means algorithm to perform location analysis on the origin and multiple destinations. The exploration area setting unit 110 can determine the centroid by converting the arrangement of all coordinates of the origin and multiple destinations into a circle.

[0056] For example, the exploration area setting unit 110 can set the heuristic factor to a value between 0 and 1 based on the center of gravity of the location distribution. If the center of gravity of the location distribution is located at the center of the circle, as shown in Figure 3a, the exploration area setting unit 110 can set the heuristic factor to '0'; if the center of gravity of the location distribution is located around the circle, as shown in Figure 3b, the exploration area setting unit 110 can set the heuristic factor to '0.5'. As another example, if the center of gravity of the location distribution is located at the edge of the circle, as shown in Figure 3c, the exploration area setting unit 110 can set the heuristic factor to '1'.

[0057] In other words, the closer the center of the location distribution of multiple destinations is to the origin, the lower the heuristic factor can be set in the exploration area setting unit 110, and the farther the center of the location distribution of multiple destinations is from the origin, the higher the heuristic factor can be set.

[0058] Figures 4 and 5 are example diagrams illustrating a method for setting exploration areas based on heuristic factors. Referring to Figures 4 and 5, the exploration area setting unit 110 can set a first exploration area including a first destination among multiple destinations based on heuristic factors. The exploration area setting unit 110 can determine at least one of the size and expansion direction of each exploration area based on heuristic factors.

[0059] Figure 4 according to one embodiment shows the case where the heuristic factor is set to a relatively low value of 0.1, while Figure 5 according to another embodiment shows the case where the heuristic factor is set to a relatively high value of 0.7.

[0060] As shown in Figure 4, according to one embodiment, the exploration area setting unit 110 can set the exploration area to be circular as the heuristic factor decreases. For example, as shown in Figure 4, when multiple destinations are evenly distributed around the departure point, the exploration area setting unit 110 can set the heuristic factor to be low, thereby conducting radial exploration. That is, the lower the heuristic factor, the wider the exploration radius set by the exploration area setting unit 110, thereby enabling the even exploration of more stopover points.

[0061] Referring to Figures 4(a) to (c), when the path exploration for the first destination is completed, the exploration area setting unit 110 can set a second exploration area that is wider than the first exploration area based on heuristic factors. Figure 4(a) shows the case of setting the first exploration area 410, (b) shows the case of setting the second exploration area 420, and (c) shows the case of setting the third exploration area 430.

[0062] As shown in Figure 4(a), the exploration area setting unit 110 can set a first exploration area 410 that is closest to the first destination based on a heuristic factor set to 0.1.

[0063] After the exploration of the first destination is completed, the exploration area setting unit 110 can set a second exploration area 420 for the second nearest second destination after the first destination based on a heuristic factor set to 0.1, as shown in Figure 4(b). The second exploration area 420 can be set as a circle that is wider than the first exploration area 410.

[0064] After the exploration of the second destination is completed, the exploration area setting unit 110 can set a third exploration area 430 for the nearest third destination after the second destination based on a heuristic factor set to 0.1, as shown in Figure 4(c). The third exploration area 430 can be set as a circle that is wider than the second exploration area 420.

[0065] According to other embodiments, as shown in Figure 5, the higher the heuristic factor, the more likely the exploration area setting unit 110 can set the exploration area to an ellipse. For example, as shown in Figure 5, when multiple destinations are densely packed in a specific area compared to the starting point, the exploration area setting unit 110 can set the heuristic factor to a high level, thereby exploring in an elliptical shape. In other words, the exploration area setting unit 110 can reduce the exploration radius as the heuristic factor increases, thereby improving the exploration speed for multiple destinations.

[0066] Figure 5 shows (a) the case where the first exploration area 510 is set, (b) the case where the second exploration area 520 is set, and (c) the case where the third exploration area 530 is set.

[0067] The exploration area setting unit 110 can set a first exploration area 510 that is closest to the first destination based on a heuristic factor set to 0.7, as shown in Figure 5(a).

[0068] After the exploration of the first destination is completed, the exploration area setting unit 110 can set a second exploration area 520 for the second destination closest to the first destination based on a heuristic factor set to 0.7, as shown in Figure 5(b). The second exploration area 520 can be set as a circle that is wider than the first exploration area 510.

[0069] After the exploration of the second destination is completed, the exploration area setting unit 110 can set a third exploration area 530 for the nearest third destination after the second destination based on a heuristic factor set to 0.7, as shown in Figure 5(c). The third exploration area 530 can be set as a circle that is wider than the second exploration area 520.

[0070] Figure 6 is an example diagram illustrating the process of exploring a path to a destination. Referring to Figure 6, the exploration unit 120 can generate exploration information by sequentially extending links from the established starting point 610 within the first exploration area. The exploration unit 120 can then explore a path to the first destination 630 based on this exploration information.

[0071] For example, a path exploration algorithm is used to explore links from the origin 610, and the optimal path to the first destination 630 is explored by continuously expanding the links. Specifically, the exploration unit 120 may have set the ending links between the origin 610 and the first destination 630. The exploration unit 120 may calculate the cost of the links connected to the origin 610 and register them in a priority queue.

[0072] The exploration unit 120 can calculate the cost of a link based on at least one of the following: length, speed, number of lanes, and road grade, as well as heuristic factors. For example, the cost of a link can consist of the cumulative calculated values ​​of link length, link speed, number of lanes, road grade, etc.

[0073] The exploration unit 120 can set or rearrange the list in the priority queue according to the link cost. The exploration unit 120 can select the link with the lowest cost from the priority queue as the highest priority.

[0074] The exploration unit 120 can extend the link until the selected link is the same as the set end link. For example, if the selected link is not the same as the set end link, the exploration unit 120 can add an expandable first link 621 and a second link 622 at the branch point 620 of the selected link.

[0075] The exploration unit 120 can calculate the cost of the added first link 621 and second link 622. The exploration unit 120 can update the cost of the first link 621 and second link 622 based on the cost of the explored links, the coordinates of the first link 621 and second link 622 to be extended, the coordinates of the first destination 630, and heuristic factors. At this time, the exploration unit can use the following mathematical formula 1.

[0076] <Mathematical Formula 1>

[0077]

[0078] In Equation 1, nc is the new cost, oc is the cost of the explored (existing) link, x1 and y1 are the coordinates of the link to be expanded, x2 and y2 are the coordinates of the first destination 630, and hp is the heuristic factor.

[0079] The exploration unit 120 can explore links to be extended from the explored links based on updated costs. For example, the exploration unit 120 can calculate the cost '247' for the first link 621 based on mathematical formula 1, and can calculate the cost '262' for the second link 622. The exploration unit 120 can rearrange the priority queue according to the calculated costs, in order of lower cost.

[0080] The exploration unit 120 can select the first link 621 with the lowest cost from the priority queue. If the first link 621 is the same as the already set end link, the exploration unit 120 can end the path exploration for the first destination 630. Subsequently, when the path exploration for the first destination is completed, the update unit 130 can update the result value for the first destination in the distance matrix.

[0081] Conversely, if the first link 621 is not the same as the already set end link, the exploration unit 120 can explore and add scalable links at the branch points of the first link 621.

[0082] When the path exploration for the first destination is completed, the exploration unit 120 can extend the links within the second exploration area to update the exploration information. At this time, the exploration unit 120 can explore paths to the second destination from multiple destinations based on the updated exploration information. For example, the exploration unit 120 can continue to perform path exploration for the second destination within the second exploration area, following the path exploration information from the first exploration area. When the path exploration for the second destination is completed, the updating unit 130 can update the result value for the second destination in the distance matrix.

[0083] The exploration unit 120 can update exploration information until path exploration for multiple destinations is completed. For example, the exploration unit 120 can operate based on a path expansion algorithm for path exploration. The exploration unit 120 can utilize the A* algorithm, which manages the composition of multiple access information and applies heuristics, to complete multiple destinations with a single exploration call.

[0084] In this way, the exploration unit 120 can effectively reduce the number of times and the time spent exploring routes to multiple destinations.

[0085] Figure 7 is an example diagram illustrating a method for updating the distance matrix. Figure 7a shows the update of distance matrix 710 according to the prior art, and b shows the update of distance matrix 720 according to the present invention.

[0086] First, referring to a in Figure 7, when the first destination is taken as the starting point, the existing technology performs path exploration n-1 times, from the first destination to the second destination, from the first destination to the third destination, ..., from the first destination to the nth destination.

[0087] In the prior art, after the path exploration from the first destination to the second destination is completed, the first exploration result 711 is updated in the distance matrix 710 of the prior art. After the path exploration from the first destination to the third destination is completed, the second exploration result 712 is updated in the distance matrix 710 of the prior art. That is to say, the prior art performs path exploration for multiple destinations at each destination and updates the distance matrix 710 of the prior art.

[0088] In the prior art, according to a in Figure 7, in order to generate the distance matrix 710 of the prior art, (n-1)*(n-1) path explorations are required, and the path exploration time is O.

[0089] In other words, the existing technology has the following problem: when the exploration of each destination is completed, new paths to each destination are explored by resetting the exploration information, which increases the amount of computation when constructing the distance matrix.

[0090] On the other hand, referring to Figure 7b, the distance matrix generation device 100 according to the present invention can derive the path exploration from the first destination to the second destination, the third destination, ..., the nth destination in one process.

[0091] For example, the distance matrix generation device 100 can perform path exploration from the first destination to the second destination, the third destination, ..., the nth destination at once, and update the path exploration results 721 for multiple destinations of the first destination in the distance matrix 720 of the present invention.

[0092] Subsequently, the distance matrix generation device 100 can perform path exploration from the second destination to the first destination, the third destination, ..., the nth destination at once, and update the path exploration results 722 for multiple destinations of the second destination in the distance matrix 720 of the present invention.

[0093] In order to generate the distance matrix 720 of the present invention according to Figure 7b, the distance matrix generation device 100 performs n path explorations and requires O(n) path exploration time.

[0094] In this way, compared with existing path exploration technologies, the distance matrix generation device 100 according to the present invention can effectively reduce the number of path explorations and the time required for path exploration.

[0095] Figure 8 is a flowchart illustrating a method for generating a distance matrix for exploring multiple destinations. The distance matrix generation method shown in Figure 8 includes steps processed sequentially according to the embodiments shown in Figures 1 through 7. Therefore, even if this content is omitted below, the distance matrix generation method according to the embodiments shown in Figures 1 through 7 applies.

[0096] In step S810, the distance matrix generating device can calculate heuristic factors based on the location distribution of multiple destinations.

[0097] In step S820, the distance matrix generation device can set a first exploration area including a first destination among multiple destinations based on heuristic factors.

[0098] In step S830, the distance matrix generation device can generate exploration information by sequentially extending links from the set starting point within the first exploration area.

[0099] In step S840, the distance matrix generating device can explore the path to the first destination based on the exploration information.

[0100] In step S850, when the path exploration for the first destination is completed, the distance matrix generation device can update the result value for the first destination in the distance matrix.

[0101] In the above description, steps S810 to S850 can be further divided into additional steps or combined into fewer steps according to embodiments of the present invention. Furthermore, some steps can be omitted as needed, and the order of the steps can be rearranged.

[0102] The method for generating a distance matrix for exploring multiple destinations, as described in Figures 1 to 8, can also be implemented as a computer program stored on a computer-readable recording medium executed by a computer, or as a recording medium including computer-executable commands. Furthermore, the generation of the distance matrix for exploring multiple destinations, as described in Figures 1 to 8, can also be implemented as a computer program stored on a computer-readable recording medium and executed by a computer.

[0103] Computer-readable recording media can be any available medium that can be accessed by a computer, including volatile and non-volatile media, and decoupling and non-decoupling media. Additionally, computer-readable recording media can include computer storage media. Computer storage media includes volatile and non-volatile, decoupling and non-decoupling media, implemented in any way or by any technique for storing information, such as computer-readable instructions, data structures, program modules, or other data.

[0104] The above description of the present invention is for illustrative purposes only. Those skilled in the art will understand that the present invention can be easily modified into other specific forms without altering its technical concept or essential characteristics. Therefore, it should be understood that these embodiments are illustrative in all respects and not restrictive. For example, each constituent element described as a single entity can be implemented in a distributed manner; similarly, constituent elements described as distributed can be implemented in a combined manner.

[0105] The scope of this invention is defined by the following claims and not by this detailed description, and all variations or modifications of the meaning and scope derived from the claims and their equivalents should be interpreted as being included within the scope of this invention.

[0106] 100: Distance matrix generator 110: Exploration Area Setting Department 120: Exploration Department 130: Update Department 410, 510: First Exploration Area 420, 520: Second Exploration Area 430, 530: Third Exploration Area 610: Place of departure 620: Branch point 621: First Link 622: Second Link 630: First Destination 710: Distance Matrix of the Prior Art 711: First Exploration Results 712: Results of the Second Exploration 720: The distance matrix of the present invention 721, 722: Path exploration results S210~S280, S810~S850: Steps

Claims

1. A distance matrix generation apparatus for exploring multiple destinations, the distance matrix generation apparatus comprising: The exploration area setting unit calculates a heuristic factor based on the location distribution of multiple destinations and sets a first exploration area, including the first destination, based on this heuristic factor. The exploration unit, within this first exploration area, generates exploration information while sequentially expanding links from the established starting point, and explores paths to the first destination based on this exploration information. The update unit, after completing path exploration for the first destination, updates the result value for the first destination in the distance matrix. After completing path exploration for the first destination, the exploration area setting unit sets a second exploration area wider than the first exploration area based on the heuristic factor. When completing path exploration for the first destination, the exploration unit expands links within the second exploration area to update the exploration information and explores paths to the second destination among the multiple destinations based on the updated exploration information. Specifically, the exploration area setting unit sets the heuristic factor lower the closer the center of the location distribution of the multiple destinations is to the starting point, and sets it higher the farther the center of the location distribution is from the starting point.

2. The distance matrix generation apparatus as described in claim 1, wherein, The exploration area setting department determines at least one of the size and expansion direction of each exploration area based on this heuristic factor.

3. The distance matrix generation apparatus as described in claim 1, wherein, The exploration department will update the exploration information until the route exploration for these multiple destinations is completed.

4. The distance matrix generation apparatus as described in claim 1, wherein, The exploration department calculates the cost of each link based on at least one of the following factors: length, speed, number of lanes, and road class, as well as the heuristic factor.

5. The distance matrix generation apparatus as described in claim 4, wherein, The exploration department updates the cost of the explored link based on the cost of the explored link, the coordinates of the link to be extended, the coordinates of the first destination, and the heuristic factor, and explores the link to be extended from the explored link based on the updated cost.

6. The distance matrix generation apparatus as described in claim 1, wherein, The exploration area setting is such that the lower the heuristic factor, the more circular the exploration area will be; the higher the heuristic factor, the more elliptical the exploration area will be.

7. A method for generating a distance matrix for exploring multiple destinations, the method comprising: The steps are as follows: Calculating a heuristic factor based on the location distribution of multiple destinations; Setting a first exploration area that includes the first destination among the multiple destinations based on the heuristic factor; Generating exploration information while sequentially extending links from the established starting points within the first exploration area; Exploring a path to the first destination based on the exploration information. The steps of updating the result value of the first destination in the distance matrix after completing the path exploration of the first destination, and setting the first exploration area, include: after completing the path exploration of the first destination, setting a second exploration area wider than the first exploration area based on the heuristic factor; generating the exploration information includes: after completing the path exploration of the first destination, extending the links within the second exploration area to update the exploration information; and exploring paths to the second destination among the multiple destinations based on the updated exploration information; wherein, the step of setting the first exploration area further includes: the closer the center of the location distribution of the multiple destinations is to the origin, the lower the heuristic factor is set; and the farther the center of the location distribution of the multiple destinations is from the origin, the higher the heuristic factor is set.

8. The distance matrix generation method as described in claim 7, wherein, The step of setting the first exploration area further includes: determining at least one of the size and expansion direction of each exploration area based on the heuristic factor.

9. The distance matrix generation method as described in claim 7, wherein, The steps for generating this exploration information further include: updating the exploration information until the path exploration for the multiple destinations is completed.

10. The distance matrix generation method as described in claim 7, wherein, The steps for generating this exploration information further include: calculating the cost of each link based on at least one of the following: length, speed, number of lanes, and road class, as well as the heuristic factor.

11. The distance matrix generation method as described in claim 10, wherein, The steps of generating the exploration information further include: updating the cost of the explored link, the coordinates of the link to be extended, the coordinates of the first destination, and the cost of the link based on the heuristic factor; and exploring the link to be extended from the explored link based on the updated cost.

12. The distance matrix generation method as described in claim 7, wherein, The step of setting the first exploration area further includes: setting the exploration area as a circle when the heuristic factor is lower, and setting the exploration area as an ellipse when the heuristic factor is higher.

13. A computer program stored on a computer-readable recording medium, comprising a sequence of commands for generating a distance matrix for exploring multiple destinations, wherein, When the computer program is executed by the computing device, a heuristic factor is calculated based on the location distribution of multiple destinations. A first exploration area, including a first destination, is set based on the heuristic factor. Within the first exploration area, exploration information is generated while sequentially extending links from the established starting point. Paths to the first destination are explored based on the exploration information. After the path exploration of the first destination is completed, the result value for the first destination is updated in the distance matrix. After the path exploration of the first destination is completed, a second exploration area, wider than the first exploration area, is set based on the heuristic factor. Links are extended within the second exploration area to update the exploration information. Based on the updated exploration information, routes to the second destination are explored among the multiple destinations. Setting the first exploration area further includes: the closer the center of the location distribution of the multiple destinations is to the starting point, the lower the heuristic factor is set; and the farther the center of the location distribution of the multiple destinations is from the starting point, the higher the heuristic factor is set.

Citation Information

Patent Citations

  • Dynamic traveling salesman problem solving method and system based on decision tree and storage medium

    CN112330054A

  • Path planning method for front k dynamically limited search areas with difference

    CN115204521A

  • Restricted area autonomous vehicle control techniques

    TW202224999A

  • Method of generating a collision free path of travel and computing system

    US20190051198A1