Apparatus, method and program for speeding up branch and bound algorithms

The apparatus and method enhance branch and bound algorithms by using probability-based deemed thresholds to prune solution sets, thereby accelerating the search for optimal solutions.

JP7810268B2Active Publication Date: 2026-02-03NIPPON TELEGRAPH & TELEPHONE CORP
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2024538605
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2022-08-04
Publication Date
2026-02-03
Estimated Expiration
2042-08-04

AI Technical Summary

Technical Problem

Conventional branch and bound algorithms face inefficiencies in minimizing search time due to wide ranges between upper and lower limits, leading to prolonged searches when the difference between these limits is large.

Method used

An apparatus and method that utilize a branching unit, interval determination, and comparison unit to set deemed thresholds based on probability distributions, pruning solution sets where the optimal solution is unlikely to exist, thereby accelerating the search process.

Benefits of technology

The proposed method significantly reduces the search time for optimal solutions by increasing the number of pruning operations, ensuring faster completion without requiring excessive computational resources.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007810268000005
    Figure 0007810268000005
  • Figure 0007810268000006
    Figure 0007810268000006
  • Figure 0007810268000007
    Figure 0007810268000007
Patent Text Reader

Abstract

This device for accelerating a branch-and-bound method comprises a branching unit, an interval determination unit, a presumed threshold determination unit, and a comparison unit. The branching unit performs a branching operation that divides an input problem into a plurality of problems. The interval determination unit determines a first threshold that defines a first interval where a solution set for each divided problem may exist on the basis of feasible solutions of each divided problem, and determines a second threshold that defines the first interval by solving a relaxation problem of each divided problem. The presumed threshold determination unit uses the first threshold, the second threshold, a probability distribution representing a probability that an optimal solution for each divided problem exists in a second interval narrower than the first interval and with one threshold defining the second interval as the first threshold, and a set probability value to determine a third threshold as the other threshold defining the second interval. The comparison unit executes pruning of the solution sets by comparing the first threshold with the third threshold for each solution set.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The embodiments relate to an apparatus, a method, and a program for accelerating a branch and bound algorithm. [Background technology]

[0002] An optimization problem is a problem of finding the optimal solution among solutions that satisfy a condition. One type of optimization problem is the combinatorial optimization problem, which finds the optimal combination of solutions. In combinatorial optimization problems, the number of optimal solution candidates generally increases exponentially with the input. For this reason, it is difficult to enumerate all feasible solutions in a combinatorial optimization problem and find the optimal solution from among those enumerated feasible solutions.

[0003] One method for finding an optimal solution without enumerating all feasible solutions is the branch and bound method. The branch and bound method consists of two operations: branch and bound. The branch operation is an operation that divides the problem to be solved into multiple problems by case analysis. The bound operation is an operation that reduces the time required to search for an optimal solution by comparing the solution sets of each divided problem and, as a result of the comparison, terminating the search for solutions in solution sets where an optimal solution cannot exist. This termination of the search for solutions is called pruning. For example, in the case of a minimization problem, the upper and lower limits of the range in which solutions exist within the limited solution set are determined. Then, as a result of comparing the ranges of existence of two different solution sets, the solution set with the larger optimal solution is found to be one in which an optimal solution for the original problem cannot exist, and the search for solutions in that solution set is terminated. [Prior art documents] [Non-patent literature]

[0004] [Non-Patent Document 1] M.Ogawa et al. “A route searching method using two-dimensional coordinates,” IEICE, DOI:10.34385 / proc.63.E4-3, 2020 [Non-patent document 2] Nazari, Mohammadreza, et al. "Reinforcement learning for solving the vehicle routing problem." Advances in neural information processing systems 31 (2018) Summary of the Invention [Problem to be solved by the invention]

[0005] In minimization problems, an appropriate solution from among the feasible solutions is used as the upper limit. On the other hand, the lower limit can be obtained by appropriately setting and solving a relaxation problem. Here, when the difference between the upper and lower limits of the range in which solutions exist in a certain solution set is large, i.e., when the range in which solutions exist is wide, it is possible that the optimal solution exists in both solution sets as a result of comparing with other solution sets. In this case, the search will not be terminated, and the search time will not be reduced.

[0006] The embodiments provide an apparatus, a method, and a program for speeding up the branch and bound algorithm, which completes the search for an optimal solution faster than conventional branch and bound algorithms. [Means for solving the problem]

[0007] An apparatus for accelerating a branch and bound method according to one aspect includes a branching unit, a section determining unit, a deemed threshold determining unit, and a comparison unit. Minimize A branching operation is performed to divide the problem into multiple problems. The interval determination unit determines the first interval in which a solution set for each divided problem can exist. Upper limit A first threshold value is determined from the feasible solutions of each divided problem, and the first interval is Lower limit The assumed threshold determination unit determines the second threshold by solving a relaxation problem of each divided problem. The assumed threshold determination unit determines the first threshold, the second threshold, and the optimal solution of each divided problem by The first threshold is set as the upper limit, and the third threshold, which is greater than the second threshold, is set as the lower limit.The comparison unit determines the third threshold value based on the probability distribution representing the probability of being in the second interval and the set value of the probability. The third threshold determined for the first solution set is determined to be greater than the first threshold determined for the second solution set. Pruning is carried out. [Effects of the Invention]

[0008] According to the embodiments, an apparatus, a method, and a program for speeding up the branch and bound method are provided, which completes the search for an optimal solution faster than conventional branch and bound methods. [Brief explanation of the drawings]

[0009] [Figure 1] FIG. 1 is a block diagram showing the configuration of an apparatus for speeding up a branch and bound method according to an embodiment. [Figure 2] FIG. 2 is a graph showing the probability density distribution of equation (4) when α=6, β=1.1, Ui=2.5, and Li=1.5. [Figure 3] FIG. 3 is a block diagram showing a hardware configuration of an example of an apparatus for accelerating the branch and bound method according to the embodiment. [Figure 4] FIG. 4 is a flowchart showing the operation of the device for accelerating the branch and bound method according to the embodiment. DETAILED DESCRIPTION OF THE INVENTION

[0010] Hereinafter, an embodiment will be described with reference to the drawings. First, the branch and bound method in the embodiment will be described. The branch and bound method in the embodiment is a method for quickly obtaining an approximate solution to the original problem under the assumption that the probability distribution of where the optimal solution exists in a solution set limited by a limiting operation is known. Here, the probability distributions for each limiting operation are independent.

[0011] When the probability distribution of where the optimal solution exists in the solution set limited by the limiting operation is known, from this probability distribution, an interval in which the optimal solution exists with probability p (0 < p < 1) in the solution set limited by the limiting operation can be found. In an embodiment, this interval is regarded as the existence range of the new optimal solution in the solution set limited by the limiting operation. At this time, since the existence range of the new optimal solution is narrower than the existence range of the original optimal solution in the limited solution set, it is expected that the number of cut-off times of the solution search will increase. If the number of cut-off times of the solution search increases, it is expected that the search for the optimal solution in the original problem will end early.

[0012] Here, if n limiting operations are required until the solution of the original problem is output by the branch-and-bound method, the probability that the output solution is the optimal solution is p , i ,

[0013] , i , i , i , i , i , i , i , i is. Also, the probability that the difference between the output solution and the optimal solution is within a predetermined value can also be calculated from the probability distribution of where the optimal solution exists in the solution set limited by the limiting operation.

[0013] The branch-and-bound method of the embodiment will be further described. Hereinafter, an application example for a minimization problem will be described. First, the solution set of each problem divided by the branching operation is S i (i ≤ m). Here, m represents the number of problems divided by one branching operation. Also, the upper limit value (upper bound) and the lower limit value (lower bound), which are thresholds for determining the interval in which the optimal solution may exist in the solution set S i are U i and L i respectively. Here, in the case of a minimization problem, for U i , for example, an appropriate solution among the feasible solutions is used. A feasible solution is a solution that satisfies the conditions set for the problem. The feasible solution may be calculated by any search algorithm such as a greedy method or a local search method. On the other hand, L i is obtained, for example, by solving a relaxed problem. A relaxed problem is a problem in which some of the conditions set for the problem are relaxed. Further, the optimal solution in the solution set S i is in the closed interval [L i , U iThe probability density function representing where it exists as a probability distribution is U i , L i The function f defined by i (x, L i , U i ) is represented. However, f i satisfies the relationship of the following equation (1). Here, x is a variable indicating the value of the solution that can exist in [L i , U i .

Number

[0014] For each S i if f i is known, the closed interval [l i , U i in which the optimal solution exists with probability p (0 < p < 1) can be obtained. However, p and l i satisfy the relationship of the following equation (2).

Number

[0015] For different solution sets S k , S l (k and l are both elements of i), in the conventional branch and bound method, among the solution sets S l < L k it is determined that there is no optimal solution in the original problem. On the other hand, in the embodiment, the lower limit value l k derived from p and f i is used, and among the solution sets S i where U l < l k it is determined that there is no optimal solution in the original problem. Since L k < l i < l i is true, rather than the limiting operation being performed in the interval [L i , U i , in the interval [l i [[ID=七十六]], U i], the possibility of the search for the optimal solution being terminated increases. Therefore, it is expected that the search for the optimal solution for the original problem will be completed quickly. i is called the "deemed lower limit." Deemed lower limit l i can be calculated from the lower cumulative probability calculated from equation (2). Basically, the assumed lower limit l i The smaller is, that is, the interval [l i ,U i The wider the [ ], the closer the value of probability p is to 1. If the probability p in each limiting operation is a constant value, and n limiting operations have occurred before the solution is output, the probability that the output solution will be equal to the actual optimal solution is p n Therefore, if the probability p is set to a value close to 1, the probability that the output solution will be the actual optimal solution will increase. On the other hand, in the interval [l i ,U i The narrower the parameter, the faster the speed. Thus, there is a trade-off between speed and accuracy of the solution.

[0016] If the probability distribution of the interval in which the optimal solution can exist is unimodal, and the most frequent value in the probability distribution is the upper limit value U i If it is near, the assumed lower bound l gives a probability p close to 1. i The value of this is the upper limit U i In this case, both high speed and high accuracy are expected.

[0017] Here, if the upper limit, lower limit, and distribution function of the optimal solution for the entire feasible solution S are expressed as U0, L0, f0(x, L0, U0), respectively, the probability p that the difference between the output solution output and the actual optimal solution optval is less than or equal to Δ(Δ≧0) is out can be expressed by the following equation (3): where y is a variable indicating a possible solution in the interval [output-Δ, output+Δ].

number

[0018] An apparatus for accelerating the branch and bound method according to an embodiment will be described below. Fig. 1 is a block diagram showing the configuration of an apparatus for accelerating the branch and bound method according to an embodiment. The apparatus 1 has an input unit 10, a branching unit 20, a limiting unit 30, and an output unit 40.

[0019] The input unit 10 accepts input of an original problem to be solved by the branch and bound method. The original problem may be any combinatorial optimization problem. For example, the original problem may be an optimal route search problem that searches for an optimal route that minimizes travel time when a vehicle is traveling. In the case of an optimal route search problem, the input unit 10 accepts, for example, information on a graph representing candidate vehicle travel routes based on input from a user. Alternatively, the input unit 10 acquires the original problem from a storage unit in which information on the original problem is pre-stored.

[0020] In the embodiment, the input unit 10 also calculates a probability density function f i and accepts the input of parameter p. The probability density function f i is the solution set S i If the optimal solution in the closed interval [L i ,U i ] is a probability density function that expresses the probability distribution of where the solution set S i If the optimal solution in the closed interval [l i ,U i ] is a set value of the probability that the probability density function f i The parameter p is received from, for example, a user. Alternatively, the input unit 10 receives a probability density function f i and parameter p are acquired from a storage unit in which this information is stored in advance.

[0021] In an embodiment, the probability density function f i is, for example, the first kind beta distribution shown in the following equation (4).

number

[0022] Here, the beta distribution has the characteristic that the distribution shape changes significantly depending on the values ​​of the shape parameters α and β. As described above, in the branch and bound method in the embodiment, the distribution shape is unimodal and the most frequent upper limit value U i The probability density function f that gives a distribution near i When α>1, β>1, and α>β, the beta distribution is generally unimodal, with the most frequent upper limit U i Figure 2 shows the distribution of α=6, β=1.1, U i =2.5, L i 10 is a graph showing the probability density distribution of Equation (4) when ρ=1.5.

[0023] The branching unit 20 executes a branching operation to divide an input problem into a plurality of problems. The algorithm of the branching operation by the branching unit 20 may be set appropriately depending on the type of problem, etc.

[0024] The limiting part 30 is a solution set S of the problem divided by the branching part 20. i The limiting unit 30 in this embodiment includes a range determining unit 31, a deemed lower limit value determining unit 32, and a comparing unit 33.

[0025] The interval determination unit 31 determines the solution set S i The upper limit U of the interval in which each optimal solution can exist i and the lower limit L i For minimization problems, the upper bound U i An appropriate solution is selected from the feasible solutions. iis obtained by solving the relaxation problem.

[0026] The deemed lower limit value determination unit 32 determines the upper limit value U i , lower limit L i , probability density function f i and parameter p to the solution set S i Regarding the assumed lower limit l i Determine the assumed lower limit l i For example, the probability density function f i From the section [L i ,U i ] is calculated sequentially, and the value of x when the calculated value of the lower cumulative probability matches the value of the parameter p can be determined.

[0027] The comparison unit 33 compares the solution set S i The upper limit U determined for each i and the deemed lower limit l i Based on this, the solution set S i Then, the comparison unit 33 compares the range of existence of solutions for pruning. i Specifically, the comparison unit 33 prunes U l <l k A solution set S that satisfies k Prune the branches.

[0028] The output unit 40 outputs the final solution that remains unpruned as the optimal solution. The output may be performed by any method, such as displaying the output solution on a display, printing it out on a printer, or transmitting it to an external device. For example, in the case of an optimal route search problem that searches for an optimal route that minimizes travel time, etc., the output unit 40 outputs information on the optimal route combination that minimizes travel time, etc. For example, the output unit 40 displays the optimal route on a map displayed on a display.

[0029] Fig. 3 is a block diagram showing an example of the hardware configuration of the device 1. As shown in Fig. 3, the device 1 includes a processor 101, a ROM 102, a RAM 103, a storage 104, a display 105, an input interface 106, and a communication module 107. The device 1 may be a terminal device such as a personal computer, a smartphone, or a tablet terminal. However, the device 1 is not limited to a terminal device. For example, when the device 1 is used to search for a vehicle's travel route, the device 1 may be mounted on the vehicle.

[0030] The processor 101 is a processor configured to control the operation of the device 1. The processor 101 is, for example, a CPU. The processor 101 may be an MPU or the like instead of a CPU. The processor 101 may also be configured as a hardware logic circuit such as an ASIC. The processor 101 does not have to be configured by a single CPU or the like, but may be configured by multiple CPUs or the like. The processor 101 can operate as the input unit 10, the branching unit 20, the limiting unit 30, and the output unit 40 by executing processing in accordance with a search program 1042 stored in the storage 104.

[0031] The ROM 102 is made up of, for example, a non-volatile semiconductor memory. The ROM 102 stores a startup program and the like for the device 1. The RAM 103 is made up of, for example, a volatile semiconductor memory. The RAM 103 is used as a working memory for processing by the processor 101, for example.

[0032] The storage 104 is a storage such as an SSD (Solid State Drive) or an HDD (Hard Disk Drive). The storage 104 stores, for example, an OS (Operating System) 1041 and a search program 1042. The OS 1041 is a program for realizing the basic functions of the device 1. The various programs stored in the storage 104 are executed under the control of the OS 1041. The search program 1042 is a program for performing a process in the device 1 to search for an optimal solution to an input problem using a branch and bound method. The search program 1042 can be downloaded to the device 1 as needed. The storage 104 may further store either or both of a probability density function 1043 and parameters 1044. The probability density function 1043 and parameters 1044 are determined by a deemed lower limit l i To calculate the probability density function f i and parameter p. The probability density function f i The parameter p does not necessarily have to be stored in the storage 104. The probability density function f i The parameter p may be input by, for example, a user operating the input interface 106, or may be acquired by, for example, communication from a server external to the device 1.

[0033] The display 105 is a liquid crystal display, an organic EL display, or the like. Various screens are displayed on the display 105 under the control of the search program 1042. These screens may display, for example, a problem, a probability density function f i This includes an input screen for the parameter p and a display screen for the optimal solution.

[0034] The input interface 106 is an interface that receives input from buttons, switches, a touch panel, etc. provided on the device 1. The input interface 106 converts signals from the buttons, switches, touch panel, etc. so that the processor 101 can recognize them.

[0035] The communication module 107 is a module that enables the device 1 to communicate with various external devices. The communication module 107 may be either a wired communication module or a wireless communication module. The communication method of the communication module 107 is not limited to a specific one.

[0036] Next, a description will be given of the operation of the device 1. Fig. 4 is a flowchart showing the operation of the device 1. The operation of Fig. 4 is controlled by the processor 101.

[0037] In step S1, the processor 101 receives an input of a problem. The processor 101 also calculates a probability density function f i and parameter p are input. After these inputs are received, the process proceeds to step S2. The problem can be input by, for example, the user operating the input interface 106. Also, the probability density function f i The input of the parameter p may be performed by, for example, obtaining information stored in the storage 104. For the following description, the probability density function f i is assumed to be the first kind of beta distribution shown in equation (4). The shape parameters α and β are assumed to be 6 and 1.1, respectively. The parameter p is assumed to be 0.95.

[0038] In step S2, the processor 101 performs a branching operation. For example, the processor 101 divides the original problem into multiple problems by case analysis. For example, in an optimal path search problem, the problem may be a combination of possible paths between a start point and an end point. For the sake of explanation, it is assumed below that the solution to the problem is divided into five solution sets S1, S2, S3, S4, and S5 by the branching operation. For example, if the input problem is an optimal path search problem that minimizes costs, such as travel time, required to travel a path, the values ​​of the solution sets S1, S2, S3, S4, and S5 may be cost values.

[0039] In step S3, the processor 101 determines the upper limit value U i and lower limit L iAs mentioned above, the upper limit U i is determined from the feasible solutions. i is the solution set S i It is determined by solving the relaxation problem corresponding to the above. In the following, for example, it is assumed that U1=2.5, L1=1.5, U2=3.1, L2=1.9, U3=4.5, L3=0.7, U4=3.5, L4=2.1, U5=4, L5=1 are determined. Since the solution of the relaxation problem is a solution of a problem with more relaxed conditions than the original problem, the solution set S i The optimal solution for each of these always falls within the upper limit U i and the lower limit L i and

[0040] In step S4, the processor 101 determines the upper limit value U i , lower limit L i , probability density function f i and parameter p to each solution set S i Regarding the assumed lower limit l i As mentioned above, the assumed lower limit l i For example, the probability density function f i From the section [L i ,U i ] is calculated sequentially, and the value of x when the calculated value of the lower cumulative probability matches the value of the parameter p can be determined. In the following, for example, it is assumed that l1 = 2.09, l2 = 2.6, l3 = 2.94, l4 = 2.87, and l5 = 2.77 are determined. The solution set S i The optimal solution for each of these is the upper limit U i The assumed lower limit l i It can exist with probability p in the interval defined by and. Also, the assumed lower limit l i is always the lower limit L i is greater than.

[0041] In step S5, the processor 101 l <l k S becomes k Determine whether or not there exists a U l<l k S becomes k If it is determined that U exists, the process proceeds to step S6. l <l k S becomes k If it is determined that U1 does not exist, the process proceeds to step S7. <l2、U1<l3、U1<l4、U1<l5である。したがって、U l <l k S becomes k are determined to be S2, S3, S4, and S5. In the conventional branch and bound method, U l <L k S becomes k It is determined whether or not there exists a solution set. In this case, U1>L2, U1>L3, U1>L4, U1>L5. The same applies to other combinations, and as a result, there is no solution set to be pruned. In this case, another branching operation is required.

[0042] In step S6, the processor 101 calculates the solution set S k That is, the processor 101 prunes the solution set S k The search for the optimal solution for is discontinued. In the example, the processor 101 prunes the solution sets S2, S3, S4, and S5. Then, the process proceeds to step S7.

[0043] In step S7, the processor 101 determines whether or not to terminate the search. If a predetermined search termination condition is met, such as there being only one solution set remaining without pruning and the optimal solution in that solution set being a feasible solution, it is determined that the search is to be terminated. If it is not determined in step S7 that the search is to be terminated, the process returns to step S2. In this case, the solution set S remaining without pruning is i If it is determined in step S7 that the search is to be ended, the process proceeds to step S8.

[0044] In step S8, processor 101 outputs the found solution as an output solution. Then, the processing in Fig. 4 ends. For example, in the case of an optimal route search problem, processor 101 displays a route corresponding to the output solution on display 105, for example.

[0045] As described above, according to this embodiment, in the bounding operation of the branch and bound method, instead of the lower limit determined by solving the relaxation problem, the range in which the optimal solution exists is compared using an assumed lower limit, which is the lower limit of the interval in which the optimal solution may exist with probability p. Because the assumed lower limit is larger than the lower limit, the comparison of the range in which the optimal solution exists based on the assumed lower limit is likely to increase the number of prunings. Increasing the number of prunings is expected to speed up the search for the optimal solution. In addition, excessive learning for the branching and bounding operations is not required.

[0046] In this embodiment, the range in which the optimal solution exists is compared based on the assumed lower limit. Therefore, there is a possibility that the output solution will not be the optimal solution. i ,U i ] is known, the probability that the difference y between the output solution and the actual optimal solution is less than or equal to Δ(Δ≧0) can also be calculated.

[0047] [Variations] In the above example, the probability density function f i Based on the assumed lower limit l i is calculated. This is because the problem is assumed to be a minimization problem. If the problem is assumed to be a maximization problem, the upper limit is determined by the relaxation problem. Therefore, in the case of a maximization problem, the probability density function f i Based on the assumed upper limit u i is calculated. i For example, the probability density function f i From the section [L i ,U i] is calculated sequentially, and the value of x when the calculated value of the upper cumulative probability matches the value of the parameter p can be determined. l >u k S becomes k It is determined whether or not there exists a solution set S that satisfies this condition. k is pruned.

[0048] In the embodiment, the probability density function f i However, the probability density function f i The probability density function f does not necessarily have to be the first type beta distribution. i is in the interval [L i ,U i ] may be any function that can express as a probability distribution where the optimal solution exists.

[0049] Furthermore, each process according to the above-described embodiment can be stored as a program that can be executed by the processor 101, which is a computer. Alternatively, the program can be stored in a storage medium of an external storage device such as a magnetic disk, an optical disk, or a semiconductor memory and distributed. The processor 101 can then load the program stored in the storage medium of the external storage device, and its operation can be controlled by the loaded program, thereby executing the above-described process.

[0050] The present invention is not limited to the above-described embodiments, and various modifications can be made in the implementation stage without departing from the spirit of the invention. Furthermore, the embodiments may be implemented in appropriate combinations, in which case the combined effects can be obtained. Furthermore, the above-described embodiments include various inventions, and various inventions can be extracted by combining selected elements from the disclosed elements. For example, if the problem can be solved and the desired effect can be obtained even if some elements are deleted from all elements shown in the embodiments, the configuration from which these elements are deleted can be extracted as an invention. [Explanation of symbols]

[0051] 1...device 10...Input section 20…branch 30…Limited section 31...Section determination section 32...Deemed lower limit value determination unit 33...Comparison section 40...Output section 101...Processor 102...ROM 103...RAM 104…Storage 105...Display 106...input interface 107...Communication module 1041...OS 1042...Exploration Program 1043...Probability density function 1044...Parameter

Claims

1. a branching unit that performs a branching operation to divide an input minimization problem into multiple problems; an interval determination unit that determines a first threshold value, which is an upper limit value of a first interval in which a solution set for each of the divided problems can exist, from a feasible solution for each of the divided problems, and determines a second threshold value, which is a lower limit value of the first interval, by solving a relaxation problem for each of the divided problems; a deemed threshold value determination unit that determines the third threshold value based on the first threshold value, the second threshold value, a probability distribution that represents the probability that an optimal solution to each of the divided problems exists in a second interval having the first threshold value as an upper limit and a third threshold value that is greater than the second threshold value as a lower limit, and a set value of the probability; a comparison unit that performs pruning of the first solution set when it is determined that the third threshold determined for the first solution set is greater than the first threshold determined for the second solution set; An apparatus for speeding up branch and bound algorithms comprising:

2. A branching unit that performs a branching operation to divide an input maximization problem into multiple problems; an interval determination unit that determines a first threshold value, which is a lower limit value of a first interval in which a solution set for each of the divided problems can exist, from a feasible solution for each of the divided problems, and determines a second threshold value, which is an upper limit value of the first interval, by solving a relaxation problem for each of the divided problems; a deemed threshold value determination unit that determines the third threshold value based on the first threshold value, the second threshold value, a probability distribution that represents the probability that an optimal solution to each of the divided problems exists in a second interval having the first threshold value as a lower limit and a third threshold value that is smaller than the second threshold value as an upper limit, and a set value of the probability; a comparison unit that performs pruning of the first solution set when it is determined that the third threshold determined for the first solution set is less than the first threshold determined for the second solution set; An apparatus for speeding up branch and bound algorithms comprising:

3. performing a branching operation to split the input minimization problem into multiple problems; determining a first threshold value, which is an upper limit value of a first interval in which a solution set for each of the divided problems can exist, from a feasible solution for each of the divided problems, and determining a second threshold value, which is a lower limit value of the first interval, by solving a relaxation problem for each of the divided problems; determining the third threshold based on the first threshold, the second threshold, a probability distribution representing the probability that an optimal solution to each of the divided problems exists in a second interval having the first threshold as an upper limit and a third threshold greater than the second threshold as a lower limit, and a set value of the probability; performing pruning of the first solution set where the third threshold determined for the first solution set is determined to be greater than the first threshold determined for the second solution set; A method for speeding up branch and bound algorithms comprising:

4. Performing a branching operation to divide an input maximization problem into multiple problems; determining a first threshold value, which is a lower limit of a first interval in which a solution set for each of the divided problems can exist, from a feasible solution for each of the divided problems, and determining a second threshold value, which is an upper limit of the first interval, by solving a relaxation problem for each of the divided problems; determining the third threshold based on the first threshold, the second threshold, a probability distribution representing the probability that an optimal solution to each of the divided problems exists in a second interval having the first threshold as a lower limit and a third threshold smaller than the second threshold as an upper limit, and a set value of the probability; performing pruning of the first solution set where the third threshold determined for the first solution set is determined to be less than the first threshold determined for the second solution set; A method for speeding up branch and bound algorithms comprising:

5. performing a branching operation to split the input minimization problem into multiple problems; determining a first threshold value, which is an upper limit value of a first interval in which a solution set for each of the divided problems can exist, from a feasible solution for each of the divided problems, and determining a second threshold value, which is a lower limit value of the first interval, by solving a relaxation problem for each of the divided problems; determining the third threshold based on the first threshold, the second threshold, a probability distribution representing the probability that an optimal solution to each of the divided problems exists in a second interval having the first threshold as an upper limit and a third threshold greater than the second threshold as a lower limit, and a set value of the probability; performing pruning of the first solution set where the third threshold determined for the first solution set is determined to be greater than the first threshold determined for the second solution set; A program to speed up the branch and bound method by allowing a computer to execute the above.

6. Performing a branching operation to divide an input maximization problem into multiple problems; determining a first threshold value, which is a lower limit of a first interval in which a solution set for each of the divided problems can exist, from a feasible solution for each of the divided problems, and determining a second threshold value, which is an upper limit of the first interval, by solving a relaxation problem for each of the divided problems; determining the third threshold based on the first threshold, the second threshold, a probability distribution representing the probability that an optimal solution to each of the divided problems exists in a second interval having the first threshold as a lower limit and a third threshold smaller than the second threshold as an upper limit, and a set value of the probability; performing pruning of the first solution set where the third threshold determined for the first solution set is determined to be less than the first threshold determined for the second solution set; A program to speed up the branch and bound method by allowing a computer to execute the above.

Citation Information

Patent Citations

  • Configuration management device, configuration management method, and program-recording medium storing configuration management program

    WO2012176925A1