Method for calculating optimal path by using lns

By employing multiple threads with distinct search ranges, the method addresses the computational inefficiencies of LNS, achieving faster optimal path calculations.

WO2025244198A1PCT designated stage Publication Date: 2025-11-27CIEL MOBILITY INC
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
PCT/KR2024/014475
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-05-22
Filing Date
2024-09-25
Publication Date
2025-11-27

AI Technical Summary

Technical Problem

Existing path optimization algorithms, such as LNS, face significant computational challenges as the number of nodes increases, leading to exponentially increasing combinations and prolonged calculation times.

Method used

A method utilizing multiple threads with different search ranges in an electronic computing device, including a control module and thread modules, to execute the LNS algorithm, distributing deletion-recovery tasks across these threads to avoid overlapping search areas.

Benefits of technology

This approach significantly reduces calculation time and enhances efficiency by allowing parallel processing of LNS operations, thereby finding optimal paths more quickly.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure KR2024014475_27112025_PF_FP_ABST
    Figure KR2024014475_27112025_PF_FP_ABST
Patent Text Reader

Abstract

A method according to the present invention comprises: a step of receiving a plurality of sets of preconditions to be applied to an LNS-based optimal path calculation operation; a step of executing the LNS-based optimal path calculation operation on the basis of at least some of the pieces of precondition information; a step of distributing to a second thread module to execute the LNS-based optimal path calculation operation on the basis of the other pieces of precondition information; a step of determining a temporary optimal path on the basis of optimal path information calculated by a first thread module and optimal path information calculated by the second thread module; and a sixth step in which a control module determines the temporary optimal path to be a final optimal path if the temporary optimal path satisfies an end condition, and otherwise repeats the steps.
Need to check novelty before this filing date? Find Prior Art

Description

Optimal route calculation method using LNS

[0001] The present invention relates to a method for calculating an optimal path using LNS (Large Neighborhood Search; hereinafter abbreviated as “LNS”).

[0002] There are several path optimization algorithms that select the optimal path with the lowest cost (expense, time, etc.) in a path with multiple nodes. However, as the number of nodes increases, the number of possible combinations increases exponentially, so it takes a very long time to find the optimal path.

[0003] Among optimization algorithms, the LNS method seeks an optimal solution through a destroy-repair process. There are various deletion and repair methods, and even within the same deletion method, the scope of the optimal solution search can vary depending on which node is deleted.

[0004] Figure 3 shows an example of a path to which a deletion-recovery process is applied according to the LNS algorithm.

[0005] Fig. 3(a) is a solution of the CVRP (Capacitated Vehicle Routing Problem) before deletion-recovery is applied, Fig. 3(b) is a solution after six nodes are destroyed, and Fig. 3(c) is a solution obtained by repair.

[0006] Since the LNS algorithm is a widely known technology, a detailed description of it is omitted.

[0007] [Prior Art Literature]

[0008] Large Neighborhood Search (by David Pisinger and Stefan Ropke; published in Handbook of Metaheuristics)

[0009] The purpose of the present invention is to provide a method capable of increasing the speed of calculating an optimal path according to the LNS algorithm.

[0010] The present invention relates to a method for an electronic computing device to calculate an optimal path among paths including a plurality of nodes, wherein the electronic computing device includes a control module, a first thread module, and a second thread module.

[0011] The method according to the present invention comprises a first step in which a control module receives a plurality of sets of preconditions to be applied to an optimal path calculation operation according to LNS; a second step in which a first thread module executes an optimal path calculation operation according to LNS based on at least some precondition information among the plurality of pieces of precondition information; a third step in which the first thread module distributes to a second thread module of an electronic computing device an optimal path calculation operation according to LNS based on precondition information other than the precondition information used in the second step; a fifth step in which the control module determines a temporary optimal path based on the optimal path information calculated by the first thread module and the optimal path information calculated by the second thread module; and a sixth step in which the control module determines the temporary optimal path as a final optimal path if the temporary optimal path satisfies the termination condition, and if not, causes steps 2 to 5 to be repeated.

[0012] The present invention can be implemented by a computer program recorded on a computer-readable recording medium.

[0013] According to the present invention, an effect of quickly calculating an optimal path according to the LNS algorithm is provided by using multiple threads with different search ranges.

[0014] Figure 1 is a diagram of a system in which an optimal path calculation method according to the present invention is executed.

[0015] Figure 2 is a flowchart of an optimal path calculation method according to the present invention.

[0016] Figure 3 is a diagram explaining the deletion-recovery solution of the LNS algorithm.

[0017]

[0018] Hereinafter, the present invention will be described in detail with reference to the attached drawings.

[0019] The information (data) transmission / reception process performed in this specification may be subject to encryption / decryption as needed, and expressions describing the information (data) transmission process in this specification and patent claims should be interpreted to include cases of encryption / decryption even if not mentioned separately.

[0020] In this specification, expressions such as "transmitting (delivering) from A to B" or "A receiving from B" include transmission (delivery) or reception through another medium in the middle, and do not only express direct transmission (delivery) or reception from A to B. In the description of the present invention, the order of each step should be understood as non-limiting, unless a preceding step must be performed logically and temporally before a subsequent step. In other words, except for the exceptional cases above, even if a process described as a subsequent step is performed before a process described as a preceding step, the essence of the invention is not affected, and the scope of rights should be defined regardless of the order of the steps.

[0021] In this specification, “A or B” is defined to mean not only selectively referring to either A or B, but also including both A and B. Furthermore, the term “including” in this specification is intended to encompass the inclusion of additional components in addition to the elements listed as including.

[0022] This specification describes only the minimum components necessary to explain the present invention, and does not mention components irrelevant to the essence of the present invention. Furthermore, the description should not be interpreted as exclusive, encompassing only the mentioned components, but rather as non-exclusive, encompassing other components not mentioned.

[0023] In this specification, “module” or “unit” or “part” or “node” means a logical combination of general-purpose hardware and software that performs its function.

[0024] The expressions “first,” “second,” or similar used in this specification are used to distinguish between the same or similar components or to distinguish between the names of components or steps constituting the present invention, and do not imply an order or plurality.

[0025] The method according to the present invention can be executed by an electronic computing device such as a computer, tablet PC, mobile phone, portable computing device, or stationary computing device. It should also be understood that one or more methods or aspects of the present invention can be executed by at least one processor. The processor can be installed in a computer, tablet PC, mobile device, or portable computing device. A memory configured to store computer program instructions can be installed in such a device, and the program can be specifically programmed to cause the processor to execute the stored program instructions, thereby executing one or more processes as described herein. It should also be understood that the information and methods described herein can be executed by a computer, tablet PC, mobile device, or portable computing device that includes one or more additional components and a processor. In addition, the control logic can be implemented as a non-volatile computer-readable medium containing program instructions executable by a processor, a control unit, or the like. Examples of computer-readable media include, but are not limited to, ROM, RAM, CD-ROM, magnetic tape, floppy disk, flash drive, smart card, or optical data storage device. Additionally, the computer-readable recording medium may be distributed across network-connected computers, such that the computer-readable medium may be stored and executed in a distributed manner, for example, by a remote server or cloud.

[0026] Figure 1 shows a block diagram of a system that executes an optimal path calculation method using LNS according to the present invention.

[0027] As illustrated in FIG. 1, the system of the present invention includes a control module (100), a first thread module (20), a second thread module (20), and an optimal path recording unit (30) in which the calculated optimal path is recorded.

[0028] The first thread module (10) includes a distribution sub-module (15). The first thread module (10) and the second thread module (20) perform a path optimization operation according to the LNS algorithm to derive an optimal path. The distribution sub-module (15) performs the role of distributing the destroy-repair operation, as described below, to the first thread module (10) and the second thread module (20) according to a precondition. A plurality of second thread modules (20) may be provided.

[0029] The control module (100) is a module that controls the entire method for calculating the optimal route using LNS according to the present invention and controls the execution of the first thread module (10) and the second thread module (20). Although the control module (100) is illustrated as a separate component in FIG. 1, the control module (100) may function as an integrated component with the first thread module (10).

[0030] Figure 2 illustrates a flowchart of a method for calculating an optimal route using LNS according to the present invention. The following algorithm is a general algorithm for calculating an optimal route using LNS.

[0031]

[0032]

[0033] x b is the best solution, x is the current solution, x t is a temporary solution, function d(ㆍ) is a deletion method, and function r(ㆍ) is a recovery method.

[0034] When calculating the optimal path using LNS, there are several prerequisite information such as the Destroy-Repair method (algorithm), the random variable selected to select the node to delete, and the accept method to accept the optimization calculation result. Depending on the prerequisite information, different search ranges are searched.

[0035] In the method according to the present invention, a plurality of sets of prerequisite information are first set, and the LNS optimal path calculation operation using some of the plurality of sets of prerequisite information is executed by the first thread module (10), and the remaining sets of prerequisite information are executed by the second thread module (20). Each set of prerequisite information is composed of prerequisites necessary for calculating an optimized path by LNS.

[0036] In step (200), the distribution sub-module (15) of the first thread module (10) distributes the deletion / recovery task for LNS according to the set of prerequisites. That is, the first thread module (10) executes an optimal path calculation operation according to LNS based on some of the plurality of prerequisite sets that have been set, and the distribution sub-module (15) distributes the task so that the second thread module (20) executes an optimal path calculation operation according to LNS for the remaining sets of prerequisites. When a plurality of second thread modules (20) are provided, the remaining sets of prerequisites can be divided and distributed to each of the second thread modules.

[0037] The first thread module (10) and the second thread module (20) each execute LNS optimization operations (steps 210 and 215).

[0038] The optimal path information generated by the first thread module (10) and the second thread module (20) is recorded in the optimal path recorder (30), and the control module (100) determines a temporary optimal path from among the collected optimal path information (step 220).

[0039] In step (230), the control module (100) determines whether the temporary optimal path determined in step (220) satisfies the set termination condition. If the termination condition is not met, the process returns to step (200) and repeats the aforementioned process.

[0040] According to the present invention, when calculating an optimal path according to the LNS algorithm, the first thread module (10) and the second thread module (20) execute deletion-recovery separately, but by making the set of preconditions for the deletion-recovery executed by each thread module different, the search ranges do not overlap, so that the optimal paths can be found independently. Therefore, the optimal path can be quickly calculated without overlapping areas, thereby reducing the time and increasing the efficiency of the calculation.

[0041] While the present invention has been described with reference to the attached drawings, the scope of the present invention is determined by the claims described below and should not be construed as being limited to the aforementioned embodiments and / or drawings. It should also be clearly understood that improvements, modifications, and variations apparent to those skilled in the art, as defined in the claims, are also included within the scope of the present invention.

[0042] “This PCT application was filed with the support of the Daegu Technopark Foundation’s “2024 Second Half Daegu Small and Medium Business Dense Area Stand-up Customized Support Project.”

Claims

1. In a method for an electronic computing device to calculate an optimal path among paths including a plurality of nodes, the electronic computing device includes a control module, a first thread module, and a second thread module. A first step in which the control module receives a set of multiple preconditions to be applied to the optimal path calculation operation according to LNS, A second step in which the first thread module executes an optimal path calculation operation according to LNS based on at least some of the plurality of prerequisite information, A third step in which the first thread module distributes to the second thread module of the electronic computing device an optimal path calculation operation according to LNS based on precondition information other than the precondition information used in the second step, and A fifth step in which the control module determines a temporary optimal path based on the optimal path information produced by the first thread module and the optimal path information produced by the second thread module; A sixth step in which the control module determines the temporary optimal path as the final optimal path if the temporary optimal path satisfies the termination condition, and if not, repeats steps 2 to 5. Optimal route calculation method using LNS.

2. A computer program recorded on a computer-readable recording medium for executing the method of claim 1 on a computer.

3. A computer-readable recording medium having recorded thereon a computer program for executing the method of claim 1 on a computer.

Citation Information

Patent Citations

  • acquiring method of shortest path of emergency evacuation system

    KR100791365B1

  • Method of calculating optimum path in link oriented

    KR1020010056264A

  • Method of calculating optimum path with multivariatesweighted value of object module

    KR1020010056271A