Information processing device, information processing method, and information processing program
By generating and optimizing routes in delivery planning by information processing equipment, the problem of difficulty in finding the optimal solution in practical time in the prior art is solved, and the effect of efficient generation and optimization of routes is achieved.
Patent Information
- Application Number
- JP2021093809
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-06-03
- Publication Date
- 2025-03-18
- Estimated Expiration
- 2041-06-03
AI Technical Summary
In the delivery planning problem, it is difficult for the prior art to find the optimal solution within practical time, and it is easy to select a low-quality route during the optimization process.
Through the information processing device, multiple initial routes are generated and the initial optimal solution is obtained through the calculation unit. Then, by comparing the differences between the solution of the linear-relaxation problem and the initial solution, it is determined whether those routes that are unlikely to be selected need to be removed and new routes are generated to replace the routes removed.
Generating suitable routes in delivery planning issues for optimization is achieved, improving the efficiency of finding high-quality routes and reducing the impact of low-quality routes.
Smart Images

Figure 0007647344000009 
Figure 0007647344000010 
Figure 0007647344000011
Abstract
Description
[Technical field]
[0001] The present disclosure relates to an information processing device, an information processing method, and an information processing program. [Background technology]
[0002] The delivery planning problem is one type of combinatorial optimization problem. Multiple transport vehicles deliver parcels from a base to each node, or from each node to a base, using multiple routes that start from the base, visit a node that is the customer's location, and then return to the base. Data that defines the problem may include the number of nodes, the time required for a transport vehicle to travel between nodes, the amount of parcels to be delivered (demand), the time periods when the transport vehicles can visit each node, the maximum load capacity of each transport vehicle, the cost incurred when operating each transport vehicle, and so on. Given this data, finding a route for each transport vehicle that minimizes the sum of the costs incurred by the transport vehicles (i.e., the total transport cost) is equivalent to finding the optimal solution to the delivery planning problem.
[0003] The optimization process for finding an optimal solution to a delivery planning problem is a combinatorial optimization, and it is difficult to find an optimal solution in a practical amount of time. As a method for efficiently solving the delivery planning problem, there is a method in which, instead of targeting all possible routes for the optimization process, appropriate routes are selected as routes for delivery, and an optimal route combination is selected from among the appropriate routes by the optimization process. When selecting an appropriate route as a delivery route, it is preferable to preferentially select a route that has the potential to constitute an optimal solution among all possible routes, that is, a route that has the potential to actually be used. If undesirable routes are listed, the solution found by optimization will be of low quality. [Prior art documents] [Patent documents]
[0004] [Patent Document 1] JP 2020-057050 A [Patent Document 2] JP 2017-033378 A Summary of the Invention [Problem to be solved by the invention]
[0005] In view of the above, a method for generating an appropriate route as a route to be optimized in a delivery planning problem is desired. [Means for solving the problem]
[0006] The information processing device includes a route generation unit that generates multiple routes for delivering packages to be delivered in a delivery planning problem; a calculation unit that obtains a first optimal solution to the delivery planning problem using the multiple routes; a solution performance determination unit that determines whether a difference between an objective function value of a second optimal solution to a linear relaxation problem of the delivery planning problem obtained using the multiple routes and an objective function value of the first optimal solution is greater than or equal to a first threshold; and a route removal unit that, if the difference is greater than or equal to the first threshold, removes from the multiple routes routes any route whose variable value indicating route selection is less than or equal to a second threshold in the second optimal solution, and the route generation unit generates new routes using the route generation unit for packages to be delivered excluding packages to be delivered via routes that remain among the multiple routes and have not been removed. Effect of the Invention
[0007] According to at least one embodiment, it is possible to generate a route that is suitable as a route to be optimized in a delivery planning problem. [Brief description of the drawings]
[0008] [Figure 1] FIG. 1 is a diagram illustrating an example of a delivery planning problem. [Diagram 2] FIG. 2 illustrates an example of a hardware configuration of an information processing device. [Diagram 3] FIG. 2 is a diagram illustrating an example of a functional configuration of an information processing device. [Figure 4] 11 is a flowchart showing a processing procedure of a route generating method executed by the information processing device. [Diagram 5] 10 is a flowchart showing a processing procedure of a route generation process executed by a route generation unit. [Figure 6] FIG. 11 is a diagram illustrating an example of a set of routes generated by initial route generation. [Figure 7] FIG. 13 is a diagram showing an example of a route set to which route R5 has been added. [Figure 8] FIG. 13 is a diagram showing an example of a route set to which route R6 has been added. [Figure 9] FIG. 13 is a diagram showing an example of a route set to which route R7 has been added. [Figure 10] FIG. 13 is a diagram showing an example of a route set to which route R8 has been added. [Figure 11] FIG. 13 is a diagram showing an example of a route set to which route R9 has been added. [Figure 12] FIG. 11 is a diagram showing an example of a plurality of routes generated by the route generation process. [Figure 13] FIG. 13 is a diagram showing an example of a preferable set as a subset of paths that are the subject of an integer optimization problem. [Figure 14] FIG. 11 is a diagram showing an example of a plurality of routes generated by the route generation process. [Figure 15] FIG. 11 is a diagram showing an example of a route added by the route generation process. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0009] Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
[0010] FIG. 1 is a diagram showing a schematic diagram of an example of a delivery plan problem. In the delivery plan problem shown in FIG. 1, a base D and 12 nodes, namely, nodes N0 to N11, are specified. A plurality of transport vehicles deliver packages from the base D to each node or from each node to the base via a plurality of routes that start from the base D, visit one or more nodes, and then return to the base D. In the example shown in FIG. 1, a first transport vehicle delivers packages to nodes N0, N1, N4, and N7 via route R1, and a second transport vehicle delivers packages to nodes N2, N3, N5, and N8 via route R2. Furthermore, a third transport vehicle delivers packages to nodes N6, N9, N10, and N11 via route R3. These three routes R1 to R3 may be a set of optimal routes obtained by an optimization process that minimizes an objective function value (transportation cost).
[0011] The transportation cost may be, for example, the total distance traveled by a transport vehicle for delivery, or may be, for example, a fixed cost per vehicle for using one transport vehicle regardless of the travel distance, etc. In addition, as a constraint, for example, a maximum load capacity may be determined for each transport vehicle, and further, for example, a visitable time period may be determined for each node. The constraint is not limited to these examples, and any condition that needs to be considered when making a delivery plan may be set.
[0012] Even when targeting a relatively small number of nodes, such as 12 as shown in Figure 1, the number of all possible routes is very large. It is difficult to obtain an optimal combination of routes through optimization processing in a short time for such a large number of routes. Therefore, instead of targeting all possible routes (i.e., a set of all routes) for optimization processing, a relatively small number of routes (i.e., a subset of suitable routes) that are selectively generated in advance as suitable routes for delivery purposes are targeted for optimization processing.
[0013] For example, a route that visits nodes N5, N4, N1, and N2 in this order after departing from base D and then returns to base D is considered to be an inappropriate route that is unlikely to be used if the transportation cost is the total travel distance. Also, for example, a route that visits node N1 after departing from base D and then immediately returns to base D is considered to be an inappropriate route that is unlikely to be used if a fixed cost per vehicle is incurred as the transportation cost. In this way, since inappropriate routes that are unlikely to be used are included among all possible routes, it is preferable to select a route that contributes to reducing the transportation cost (objective function value) as much as possible while eliminating such routes as much as possible.
[0014] The information processing device and information processing method disclosed in the present application, which will be described below, generate appropriate routes as routes constituting a subset to be optimized in a delivery planning problem.
[0015] Fig. 2 is a diagram showing an example of a hardware configuration of an information processing device. The information processing device shown in Fig. 2 includes a CPU 11, a display unit 12, an input unit 13, a ROM 14, a RAM 15, a HDD 16, a network interface 17, a portable storage medium drive 18, and a metaheuristic calculation unit 19.
[0016] The input unit 13 provides an interface with the user, and various commands for operating the information processing device and user responses to requested data are input. The display unit 12 displays the results of processing by the information processing device on a display screen, and also displays various data to enable dialogue with the user when operating the information processing device. The network interface 17 is for communication with peripheral devices or remote locations.
[0017] 2 is a computer, and the information processing method is provided as a computer program executable by the information processing device. This computer program is stored in a storage medium M that can be attached to a portable storage medium drive 18, and is loaded from the storage medium M to the RAM 15 or HDD 16 via the portable storage medium drive 18. Alternatively, this computer program is stored in a storage medium (not shown) in a peripheral device or a remote location, and is loaded from the storage medium to the RAM 15 or HDD 16 via the network interface 17.
[0018] When a user issues a program execution instruction via the input unit 13, the CPU 11 loads the program into the RAM 15 from the storage medium M, a peripheral device, a remote storage medium, or the HDD 16. The CPU 11 uses the free storage space of the RAM 15 as a work area to execute the program loaded into the RAM 15, and proceeds with the processing while interacting with the user as appropriate. The ROM 14 stores a control program for controlling the basic operations of the information processing device. By executing the computer program, the information processing device performs an operation of generating an appropriate route for a delivery plan problem.
[0019] The metaheuristic calculation unit 19 may be dedicated hardware designed specifically to execute a metaheuristic algorithm, for example, dedicated hardware for searching for a solution to an Ising problem by simulated annealing. However, without providing a dedicated metaheuristic calculation unit 19, the CPU 11, which is a processor for general-purpose calculation, may execute the metaheuristic algorithm by functioning as a metaheuristic calculation unit. The metaheuristic algorithm may be simulated annealing, a random walk solution search algorithm, a genetic algorithm, a stochastic evolution method, or a tabu search. The metaheuristic algorithm may be an algorithm that heuristically searches for a solution (approximate solution) close to a solution that minimizes an objective function.
[0020] By executing the above computer program, the information processing device executes an operation of generating an appropriate route as a route to be optimized in the delivery planning problem. The information processing device may further execute an optimization process for the generated route to obtain an optimal solution (strictly speaking, a suboptimal solution (approximately optimal solution)) for the delivery planning problem. As will be described later, the metaheuristic algorithm is used in the route generation process for generating a route, and is also used in the optimization process executed for the finally determined route.
[0021] Fig. 3 is a diagram showing an example of a functional configuration of an information processing device. The information processing device 20 shown in Fig. 3 includes a path generation unit 21, an objective function generation unit 22, a calculation unit 23, an output unit 24, a solution performance determination unit 25, and a path removal unit 26. The path generation unit 21, the objective function generation unit 22, the output unit 24, the solution performance determination unit 25, and the path removal unit 26 may be realized by the CPU 11 shown in Fig. 2. The calculation unit 23 may be realized by the CPU 11 or the metaheuristic calculation unit 19.
[0022] Note that the boundaries between each functional block shown in each box and other functional blocks indicate functional boundaries and do not necessarily correspond to boundaries of program modules or to control logical separation, etc. Also, one functional block may be combined with another functional block to operate as one functional block, or one functional block may be divided into multiple functional blocks that operate in cooperation with each other.
[0023] Data defining the delivery planning problem may be input to the route generation unit 21, such as the number of nodes, the travel time required between nodes by a transport vehicle, the amount of delivered cargo (demand), the time period during which each node can be visited by a transport vehicle, the maximum load capacity of each transport vehicle, the transportation cost by each transport vehicle, etc. In the example shown in Fig. 3, data 31 indicating the travel time required between nodes by a transport vehicle, data 32 indicating the amount of cargo that needs to be transported from the transport source (base) to the transport destination (node), and data 33 indicating the time period during which each node can be visited are input.
[0024] The route generation unit 21 generates a plurality of routes R1 to Rn for delivering packages to be delivered in the delivery plan problem by route generation processing using an initial route generation and column generation method based on input data that defines the delivery plan problem. The initial route generation may be performed by any method, and a route that satisfies a constraint condition may be generated according to a simple rule without being concerned about whether the route is appropriate or not. The column generation method is a method of adding routes that reduce the objective function value of the dual problem (an approximation of the objective function of the delivery plan problem) based on information obtained by solving the dual problem of the linear relaxation problem obtained by linearly relaxing the delivery plan problem. The initial route generation and column generation methods will be described in more detail later. Data that defines each route Rr (r=1 to n) generated by the route generation unit 21 may include data indicating one or more nodes to be visited on the route, the order of visiting nodes from the base to the base and the amount of packages to be transported from the base to each node.
[0025] The objective function generating unit 22 generates an objective function and a constraint condition to be minimized in the delivery plan problem based on the input data that defines the delivery plan problem, for the routes R1 to Rn generated by the route generating unit 21. The objective function and the constraint condition may be defined by, for example, the following equations.
[0026]
number
[0027]
number
[0028] In formula (1), c r (r=1 to n) is the transportation cost for the route Rr, and may be generated based on data on the route Rr, input data 31 indicating the travel time required between nodes by a transportation vehicle, and data indicating the destinations and the order of visits of each route Rr. ris a variable indicating the selection of route Rr (i.e., a variable indicating whether or not to select that route as the route to be used), and has a value of 1 when the route is selected, and a value of 0 when it is not selected. Equation (1) is an objective function, and the value of this objective function indicates the total transportation cost for all selected routes.
[0029] In equation (2), the variable D i is a demand at a node Ni (i=0 to m) (amount of cargo that needs to be transported to the node Ni), and may be generated based on input data 32 indicating the amount of cargo that needs to be transported from the source to the destination. r,i is the amount of cargo supplied to node Ni via route Rr, and may be generated based on data on route Rr. Equation (2) is a constraint on the demand and supply of cargo specified for each node Ni (i=0 to m), and indicates that the supply for the node is greater than or equal to the demand.
[0030] The calculation unit 23 obtains a first optimal solution to the delivery plan problem for the multiple routes R1 to Rn generated by the route generation unit 21. In the delivery plan problem, obtaining a combination of routes that minimizes the objective function value defined in formula (1) while satisfying the constraint condition defined in formula (2) corresponds to obtaining an optimal solution (quasi-optimal solution). At this time, the calculation unit 23 may execute an optimization process to minimize an evaluation value obtained by multiplying the value of the right side (a value required to be 0 or less) obtained by transferring the left side of formula (2) to the right side by a weighting coefficient and adding the value multiplied by the weighting coefficient to formula (1). The calculation unit 23 may obtain a combination of routes that minimizes the evaluation value by a metaheuristic method.
[0031] In metaheuristic methods, n variables x have values 0 or 1. r A bit string consisting of (x1, x2, . . . , x n) as the state at each time point, and perform state transitions so that the evaluation value becomes smaller probabilistically. In this case, by setting the weight coefficient to a sufficiently large value, it is possible to obtain a combination of routes that always satisfies the constraint conditions. Alternatively, a metaheuristic method may be used to perform state transitions so that the objective function value defined in equation (1) becomes smaller probabilistically, and a state that always satisfies the constraint conditions in equation (2) may be selected as the next state.
[0032] In formula (2), only the transportation of luggage from the base to the node is considered. When the transportation of luggage from the node to the base is considered, a variable indicating the amount of luggage that needs to be transported from each node to the base and a variable indicating the amount of luggage transported from each node to the base for each route may be specified to generate an equation indicating a constraint condition similar to formula (2). In addition, the constraint condition shown in formula (2) does not explicitly reflect the constraint imposed by the input data 33 indicating the time period during which each node can be visited. In order to satisfy the constraint on the time period during which each node can be visited, for example, when the route generating unit 21 generates a route, the route may be generated so that the node is visited only during the time period during which the node can be visited. If there are other constraints imposed in the delivery plan problem, the constraints may be considered by adding constraint conditions related to those constraints or by generating a route to satisfy the constraints.
[0033] The first optimal solution generated by the calculation unit 23 is a bit string (x1, x2, . . . , x n ) The output unit 24 outputs data of the route selected as the optimal solution by extracting data on the selected route (route whose value is 1) indicated by the bit string of the first optimal solution from the data indicating the route generated by the route generation unit 21. The data of the route selected as the optimal solution is supplied to the solution performance determination unit 25.
[0034] The solution performance determination unit 25 may determine an objective function value (total transportation cost) of the first optimal solution based on the data of the above-mentioned route. The solution performance determination unit 25 further determines whether or not the difference between the objective function value of the second optimal solution for the linear relaxation problem of the delivery plan problem obtained for the multiple routes R1 to Rn generated by the route generation unit 21 and the objective function value of the first optimal solution is equal to or greater than a first threshold value. The objective function value here is the transportation cost value defined in the formula (1) in the case of a delivery plan problem defined by, for example, formula (1) and formula (2). The objective function value of the second optimal solution may be determined by the solution performance determination unit 25 solving the linear relaxation problem, or may be determined by the route generation unit 21 solving the linear relaxation problem and supplied to the solution performance determination unit 25.
[0035] In this application, when making a YES / NO judgment based on the magnitude relationship between a certain value and a threshold, it does not matter whether the condition for the equality sign to be established is included on the YES side or the NO side. In other words, in a judgment based on the magnitude relationship between a certain value and a threshold, the expression "when a certain value is equal to or greater than the threshold" may be interpreted as being equivalent to the expression "when a certain value is greater than the threshold." The use of the term "greater than" as a judgment criterion does not intend to be different from the judgment criterion of "greater than," and "greater than" may be read as "greater than." The same applies to "less than or equal to" and "smaller than."
[0036] Variables x that define the vehicle routing problem r is a binary variable that takes the value 0 or 1, and the vehicle delivery planning problem corresponds to an integer planning problem. The linear relaxation problem above is r Without restricting the possible values of x to integers, r This problem allows the variable x to have a real value greater than or equal to 0. r Other than the relaxation of the range of values of , other conditions such as constraints are the same between the linear relaxation problem and the original delivery plan problem. The linear relaxation problem of the delivery plan problem is a linear programming problem, and the optimal solution to the linear programming problem can be obtained using a linear programming solver that solves linear programming problems using the simplex method or the interior point method. The linear relaxation problem will be explained in more detail later.
[0037] When the difference is equal to or greater than the first threshold, the path removal unit 26 removes a variable value x r is equal to or less than the second threshold in the second optimal solution, is removed from the multiple routes R1 to Rn generated by the route generation unit 21. The multiple routes R1 to Rn initially generated by the route generation unit 21 may include many inappropriate routes that are unlikely to be used in a sub-optimal solution of sufficiently high quality. In this case, the first optimal solution obtained by the calculation unit 23 for the routes R1 to Rn may not be a sub-optimal solution of sufficiently high quality (a solution that is far from the true optimal solution). If the difference between the objective function value of the first optimal solution and the objective function value of the second optimal solution is equal to or more than the first threshold, it can be determined that the quality of the first optimal solution is not sufficiently high, so the route removal unit 26 removes the variable value x r is equal to or less than the second threshold in the second optimal solution. In this way, among the multiple routes R1 to Rn initially generated by the route generating unit 21, routes that are unlikely to be selected in a high-quality sub-optimal solution are deleted, and routes that are likely to be selected in a high-quality sub-optimal solution are left.
[0038] Since the variable ranges are different between the delivery plan problem and its linear relaxation problem, the objective function values in the optimal solutions are usually different from each other, and the objective function value corresponding to the first optimal solution of the delivery plan problem is equal to or greater than the objective function value corresponding to the second optimal solution of the linear relaxation problem. When the route generator 21 generates multiple routes R1 to Rn, in the column generation method described below, the objective function value of the linear relaxation problem of the delivery plan problem is used as an approximation value for the objective function value of the delivery plan problem, and routes are generated so that this approximation value becomes small. When the objective function values of the first optimal solution and the second optimal solution are significantly different, the variable value x rThe routes R1 to Rn are generated based on an optimal solution of the linear programming problem that is significantly different from the optimal solution (the optimal solution of the integer programming problem that is originally desired) that can be achieved by taking the value of 0 or 1. Therefore, in such a case, inappropriate routes are removed from the multiple routes R1 to Rn, so that only suitable routes remain as routes to be subjected to optimization processing in the delivery planning problem.
[0039] Also in this case, the variable value x r The path where x is less than or equal to the second threshold in the second optimal solution, e.g., r For a route with a value of 0.7, when it is selected in the vehicle delivery planning problem and its value becomes 1.0, the transportation cost is 0.3c r On the other hand, for example, the variable value x r For a route with a cost of 0.99, when it is selected in the vehicle planning problem and its value becomes 1.0, the transportation cost is 0.01c r Therefore, the variable value x r The path with a value of 0.7 is the path with a value of x r 0.99, it is considered that the route is less suitable as an optimal solution for the vehicle delivery problem and is less likely to be selected as an optimal solution. Therefore, for example, the second threshold is set to 0.9 and the variable value x r By deleting all routes for which the second optimal solution has a ρ of 0.9 or less, it is possible to leave only routes that are suitable as optimal solution routes for the delivery planning problem, i.e., routes that are more likely to be selected as the optimal solution.
[0040] Another way to look at it is that the variable value x r For example, a route with a low value of x has overlapping cargo supply with other routes, and is weighted by 0.7 or more to form an optimal solution for the linear relaxation problem. Such a route is a route that can only be weighted by 0.7 or more to form an optimal solution, and the variable value x r is not a suitable path to construct the optimal solution (the optimal solution of the integer programming problem that is actually desired) that can be achieved by taking the value of 0 or 1. Therefore, the variable value xr By deleting all routes for which the second optimum solution has a .DELTA..times ...
[0041] The route generation unit 21 generates multiple new routes for packages to be delivered, excluding packages to be delivered via one or more routes that remain unremoved from the multiple routes R1 to Rn, by the route generation process similar to that described above. That is, the routes that remain unremoved from the multiple routes R1 to Rn are determined as routes that are ultimately included in a subset of routes that are the subject of the optimization process, and packages transported via the determined routes are removed from the packages to be delivered. For the packages to be delivered that remain as a result, the route generation unit 21 generates multiple new routes by route generation process using the initial route generation and column generation method.
[0042] The set of routes including the new routes generated in this way and the already determined routes described above as elements is expected to be a more preferable set of routes as a subset to be optimized than the routes R1 to Rn initially generated by the route generating unit 21. This is because, after leaving appropriate routes and deleting all other inappropriate routes from the multiple routes generated by a predetermined route generation process, it is expected that the multiple routes newly generated by the same route generation process will include appropriate routes as in the initial case. In other words, the set of routes including the new multiple routes and the already determined routes may include appropriate routes that have already been determined and new appropriate routes that have been generated separately later. It is expected that such a set of routes is a more preferable set of routes than the initial set of routes (routes R1 to Rn) in which all routes other than the determined appropriate routes were inappropriate routes.
[0043] In this manner, the information processing device 20 shown in Fig. 3 can generate an appropriate route as a route constituting a subset to be optimized in a delivery planning problem. Furthermore, the solution-finding process by the calculation unit 23, the difference-based determination process by the solution performance determination unit 25, the route removal process by the route removal unit 26, and the new route generation process by the route generation unit 21 may be repeatedly executed while the condition that the difference is equal to or greater than the first threshold is satisfied. By repeatedly calculating the process of removing routes and generating new routes in this manner until an optimal solution of sufficiently high quality is obtained, a sufficiently high-quality subset can be obtained as a subset to be optimized in a delivery planning problem.
[0044] In the information processing device 20 shown in Fig. 3, when the difference becomes smaller than the first threshold, the calculation unit 23 may obtain an optimal solution to the delivery plan problem for a plurality of routes that were generated in the past and remained without being removed. That is, the information processing device 20 may obtain a sufficiently high-quality subset as a subset to be optimized in the delivery plan problem, and then execute an optimization process based on a metaheuristic technique for routes that belong to the subset to obtain an optimal solution to the delivery plan problem. This allows the information processing device 20 to obtain an optimal solution (quasi-optimal solution) of sufficiently high quality.
[0045] In the process of removing the paths by the path remover 26, the variable value x r is less than or equal to the second threshold in the second optimal solution, the path remover 26 r We can leave only the one route with the largest , and delete the others. This avoids repeatedly generating routes with similar quality without improving the quality of the route in the iterative calculation.
[0046] FIG. 4 is a flowchart showing the processing procedure of the path generation method executed by the information processing device 20. Note that in FIG. 4 and the following figures, the execution order of each step described in the flowchart is merely an example, and the technical scope intended by the present application is not limited to the execution order described. For example, even if the present application describes step A as being executed next to step B, it may be physically and logically possible to execute step A next to step B as well as step A next to step B. In this case, if all results that affect the processing of the flowchart are the same regardless of the order in which the steps are executed, it is self-evident that step A may be executed next to step B for the purpose of the technology disclosed in the present application. Even if the present application describes step A as being executed next to step B, it is not intended to exclude such obvious cases from the technical scope intended by the present application, and such obvious cases naturally belong to the technical scope intended by the present application.
[0047] In step S1 of FIG. 4, the information processing device 20 sets all packages that need to be transported in the delivery plan problem to "remaining packages," and initializes a variable indicating the number of loops to zero.
[0048] In step S2, the route generation unit 21 of the information processing device 20 generates a route for transporting the remaining packages by route generation processing using the initial route generation and column generation method. Here, any method may be used for the initial route generation, and it is sufficient to generate a route that satisfies the constraint conditions and meets the demand according to simple rules, regardless of whether the route is appropriate or not. The column generation method is a method of adding routes that reduce the objective function value of the dual problem (an approximation of the objective function of the delivery planning problem) based on information obtained by solving the dual problem of the linear relaxation problem obtained by linearly relaxing the delivery planning problem. The route generation processing by the route generation unit 21 will be described in detail below.
[0049] 5 is a flowchart showing the procedure of the route generation process executed by the route generation unit 21. In step S11, the route generation unit 21 generates a set of routes that satisfy the constraints of the delivery plan problem and meet the demand by using any initial route generation method. At the time of generating the initial route, the transportation cost may be poor, and the route may be generated ignoring the transportation cost. As an example, in generating the initial route, the routes may be generated by preparing the same number of routes as the number of nodes, visiting only one node by each route, and visiting different routes from each other.
[0050] In step S12, the route generation unit 21 solves a dual problem of a linear relaxation problem obtained by linearly relaxing the problem of selecting a set of routes that minimizes the total transportation cost (for example, the transportation cost defined in the above-mentioned formula (1)) from a set of already generated routes. This generates an optimal value of the linear relaxation problem (an approximation of the total transportation cost) and an index of which nodes the next route to be generated should visit to reduce the approximation of the total transportation cost. In step S13, the route generation unit 21 finds a route that functions to reduce the approximation of the total transportation cost and satisfies the conditions of the problem based on the obtained index. In step S14, it is determined whether such a route exists. If such a route does not exist, in step S16, the route generation process is terminated. If such a route exists, in step S15, the found route is added to the set of already generated routes. After that, the process returns to step S12, and the subsequent processes are repeated.
[0051] The processing described in steps S12 to S15 described above corresponds to the column generation method. The column generation method will be described in more detail below using a simplified specific example. In this specific example, there are six nodes N0 to N5. The amounts of luggage that need to be transported from the base to nodes N0, N1, N2, N3, N4, and N5 are D0 (5 kg), D1 (4 kg), D2 (4 kg), D3 (3 kg), D4 (2 kg), and D5 (2 kg), respectively. Furthermore, the maximum load capacity of each transport vehicle is 10 kg, and the cost of each transport vehicle is 1 (i.e., c in the above-mentioned formula (1)). r= 1). Furthermore, it is assumed that a load cannot be divided and transported to one node. That is, for example, a transport vehicle transporting a load to node N0 is assumed to transport the entire 5 kg load.
[0052] FIG. 6 is a diagram showing an example of a set of routes generated by initial route generation. In this example, five routes R0 to R4 as shown in the table of FIG. 6 are generated by the initial route generation in step S11 shown in FIG. 5. In the table, when a 1 is written at the intersection of a row corresponding to a certain route and a column corresponding to a certain node, the route transports luggage to the node. For example, route R0 transports luggage to nodes N0 and N1. Note that a i,r (i=0 to 5, r=0 to 4) is a variable that is set to 1 when a load is supplied to node Ni via route Rr, and is set to 0 when a load is not supplied to node Ni via route Rr.
[0053] When routes R0 to R4 shown in Fig. 6 are generated by initial route generation, a dual problem of a linear relaxation problem of a delivery planning problem is solved in step S12 shown in Fig. 5. Here, the above delivery planning problem is defined by the following equation.
[0054]
number
[0055]
number
[0056] The dual problem of the above linear relaxation problem is defined by the following equation:
[0057]
number
[0058]
number
[0059] The above variable y i corresponds to the weights applied to each of the six constraint equations (constraint equations corresponding to the six nodes Ni) shown in equation (4) when they are combined to create a composite constraint equation by multiplying each of the constraint equations by a weight and adding them together. rand corresponds to the condition under which a finite optimal solution exists (i.e., the problem is bounded) when minimizing the original objective function (objective function defined in equation (3)) under the condition that satisfies the composite constraint equation. Moreover, maximizing equation (5) corresponds to finding the weight that gives the tightest composite constraint equation when minimizing the objective function defined in equation (3). In other words, the dual problem of a linear relaxation problem corresponds to the problem of answering the question of what weight should be applied to each constraint equation of the linear relaxation problem when constructing an optimal solution of the linear relaxation problem. The objective function value of the optimal solution of the linear relaxation problem (the value of equation (3)) and the objective function value of the optimal solution of the dual problem (the value of equation (5)) are equal to each other.
[0060] For the five routes R0 to R4 shown in Fig. 6, the optimal solution to the dual problem defined by equations (5) and (6) is (y0, y1, y2, y3, y4, y5) = (1, 0, 0, 0, 1, 1). The optimal value in this case is 3. Such an optimal solution can be found by a linear programming solver that solves linear programming problems using the simplex method or the interior point method. The optimal solution to the dual problem thus found (y0, y1, y2, y3, y4, y5) = (1, 0, 0, 0, 1, 1) can be used as an index for lowering the optimal value of the dual problem (an approximation of the total transportation cost).
[0061] In step S13 shown in FIG. 5, the route generation unit 21 finds a route R5 that functions to reduce the approximate value of the total transportation cost and satisfies the problem conditions based on the above index. Specifically, the variable a is set to maximize the objective function value of the following formula (7) so as to satisfy the condition of the following formula (8). i,5 By calculating the above, candidates for route R5 are obtained.
[0062]
number
[0063]
number
[0064] Finding the above optimal solution is equivalent to finding a route for transporting luggage to three locations, node N0, node 4, and node N5, as a candidate for a newly added route R5. This candidate for route R5 is found by maximizing equation (7), so finding a candidate for route R5 is equivalent to finding a route that is highly likely to cause the optimal solution of the dual problem to not satisfy the constraint condition of equation (6) for route R5. If this candidate for route R5 is actually a route that does not satisfy the constraint condition of equation (6), then in step S15 shown in FIG. 5, this candidate can be added as a new route R5. As a result, the above-mentioned optimal solution of the dual problem (y0, y1, y2, y3, y4, y5) = (1, 0, 0, 0, 1, 1) is obtained by maximizing the variables y that do not satisfy the new constraint condition defined in equation (6) for route R5. i and it is no longer a set of variables that constitute the optimal solution. Therefore, when the dual problem is solved for the set of routes after route R5 is newly added, the optimal value of the objective function value to be maximized (the value of formula (5)) is restricted by a stricter constraint condition than the previous time, and is smaller than the previous optimal value. As described above, the optimal value of the objective function of the dual problem is equal to the optimal value of the objective function of the original linear relaxation problem, so that by adding route R5, the optimal value of the linear relaxation problem (an approximation of the total transportation cost) can be lowered.
[0065] Whether the candidate route R5 actually fails to satisfy the constraints in equation (6) depends on cr and Σa 1,5 y ic r <Σa 1,5 y i If , adding the candidate as route R5 will not satisfy the constraint in equation (6), so the optimal value of the linear relaxation problem can be lowered. r ≧Σa 1,5 y i If c is added as route R5, the constraint in equation (6) is satisfied. r ≧Σa 1,5 y i If so, it is determined in step S14 shown in FIG. 5 that the desired route does not exist, and the route generation process ends.
[0066] Fig. 7 is a diagram showing an example of a route set to which route R5 has been added as described above. When the optimal solution to the dual problem defined by equations (5) and (6) for the six routes R0 to R5 shown in Fig. 7 is found, it becomes (y0, y1, y2, y3, y4, y5) = (1 / 3, 2 / 3, 2 / 3, 0, 1 / 3, 1 / 3). In this case, the optimal value is 2.33···.
[0067] In equations (7) and (8), the variable a i,5 Instead of variable a i,6 When solving the linear programming problem using 0,6 ,a 1,6 ,a 2,6 ,a 3,6 ,a 4,6 ,a 5,6 )=(0,1,1,0,1,0).
[0068] The above-mentioned optimum solution is equivalent to finding a route for transporting luggage to three locations, node N1, node 2, and node N4, as a candidate for the newly added route R6. r <Σa 1,6 y iSince (=2 / 3+2 / 3+1 / 3), in step S15 shown in Fig. 5, the candidate is added to the set of routes as a new route R6. As a result, when the dual problem is solved for the set of routes after the new addition of route R6, the optimal value of the objective function value to be maximized (the value of formula (5)) is restricted by a stricter constraint condition than the previous time, and becomes smaller than the previous optimal value. Therefore, by adding route R6, the optimal value of the linear relaxation problem (an approximation of the total transportation cost) can be lowered.
[0069] Fig. 8 is a diagram showing an example of a route set to which route R6 has been added as described above. When the optimal solution to the dual problem defined by equations (5) and (6) is found for the seven routes R0 to R6 shown in Fig. 8, it becomes (y0, y1, y2, y3, y4, y5) = (0.6, 0.4, 0.4, 0.4, 0.2, 0.2). In this case, the optimal value is 2.2.
[0070] In equations (7) and (8), the variable a i,5 Instead of variable a i,7 When solving the linear programming problem using 0,7 ,a 1,7 ,a 2,7 ,a 3,7 ,a 4,7 ,a 5,7 )=(1,0,0,1,1,0). r <Σa 1,7 y i Since (=0.6+0.4+0.2), in step S15 shown in FIG. 5, the candidate is added to the set of routes as a new route R7.
[0071] Fig. 9 is a diagram showing an example of a route set to which route R7 has been added as described above. When the optimal solution to the dual problem defined by equations (5) and (6) is found for the eight routes R0 to R7 shown in Fig. 9, it becomes (y0, y1, y2, y3, y4, y5) = (1 / 2, 1 / 3, 1 / 2, 1 / 3, 1 / 6, 1 / 3). In this case, the optimal value is 2.166···.
[0072] In equations (7) and (8), the variable a i,5 Instead of variable a i,8 When solving the linear programming problem using 0,8 ,a 1,8 ,a 2,8 ,a 3,8 ,a 4,8 ,a 5,8 )=(0,1,1,0,0,1). r <Σa 1,8 y i Since (=1 / 3+1 / 2+1 / 3), in step S15 shown in FIG. 5, the candidate is added to the set of routes as a new route R8.
[0073] Fig. 10 is a diagram showing an example of a route set to which route R8 has been added as described above. When the optimal solution to the dual problem defined by equations (5) and (6) is found for the nine routes R0 to R8 shown in Fig. 10, it becomes (y0, y1, y2, y3, y4, y5) = (1 / 2, 0, 1 / 2, 1 / 2, 0, 1 / 2). In this case, the optimal value is 2.
[0074] In equations (7) and (8), the variable a i,5 Instead of variable a i,9 When solving the linear programming problem using 0,9 ,a 1,9 ,a 2,9 ,a 3,9 ,a 4,9 ,a 5,9 )=(1,0,0,1,0,1). r <Σa 1,9 y i Since (=1 / 2+1 / 2+1 / 2), in step S15 shown in FIG. 5, the candidate is added to the set of routes as a new route R9.
[0075] Fig. 11 is a diagram showing an example of a route set to which route R9 has been added as described above. When the optimal solution to the dual problem defined by equations (5) and (6) is found for the 10 routes R0 to R9 shown in Fig. 11, it becomes (y0, y1, y2, y3, y4, y5) = (1 / 2, 1 / 2, 1 / 4, 1 / 4, 1 / 4, 1 / 4). In this case, the optimal value is 2.
[0076] In equations (7) and (8), the variable a i,5 Instead of variable a i,10 When solving the linear programming problem using 0,10 ,a 1,10 ,a 2,10 ,a 3,10 ,a 4,10 ,a 5,10 )=(1,0,0,1,0,1). r ≧Σa 1,10 y i (=1 / 2+1 / 4+1 / 4), it can be seen that the optimum value (approximation of the total transportation cost) for the linear relaxation problem does not decrease even if the candidate is added to the set of routes as a new route R10 in step S15 shown in Fig. 5. Therefore, it is determined in step S16 shown in Fig. 5 that the desired route does not exist, and the route generation process ends.
[0077] In this manner, the route generation unit 21 generates a plurality of routes through the route generation process shown in Fig. 5. That is, in the route generation method shown in Fig. 4, the route generation process in step S2 (initial route generation by the route generation unit 21 and route generation by the column generation method) is completed.
[0078] The set of routes generated in this way is not a universal set including all possible routes, but a subset including some of all possible routes. If a sufficient number of suitable routes are not included in this subset, there is a risk that an optimal solution of sufficiently high quality cannot be obtained when the calculation unit 23 determines an optimal set of routes for the subset to solve the delivery plan problem. As an example, consider a situation in which there are three nodes and 1 kg of cargo needs to be transported from the base to each node (i.e., D in the above-mentioned formula (2)). i The maximum load of each vehicle is 1.5 kg, and the cost of each vehicle is 1 (i.e., c r =1).
[0079] FIG. 12 is a diagram showing an example of a plurality of routes generated by the route generation process. Assume that the three routes shown in FIG. 12 are generated in step S2 shown in FIG. 4. In this case, when the linear relaxation problem of the delivery plan problem defined by the above-mentioned formulas (1) and (2) is solved, the optimal solution (x1, x2, x3) = (2 / 3, 2 / 3, 2 / 3) is obtained, and the optimal value (approximate value of the total transportation cost) is 2. On the other hand, when the delivery plan problem (integer optimization problem) is solved, the optimal solution (x1, x2, x3) = (1, 1, 1) is obtained, and the optimal value (approximate value of the total transportation cost) is 3. In this example, there is a large difference between the optimal value 2 of the linear relaxation problem and the optimal value 3 of the delivery plan problem. The variable value x r A route with a low value of 2 / 3 overlaps with other routes in terms of cargo supply, and is weighted 2 / 3 and used in combination with other routes to form the optimal solution for the linear relaxation problem. Such a route is the only route that can form the optimal solution when weighted 2 / 3, and the variable value x r is not a suitable path to construct an optimal solution that can be achieved by taking the value of 0 or 1 (the optimal solution to the integer optimization problem that is actually desired).
[0080] In step S2 shown in Fig. 4, a route is generated by using a column generation method to minimize the optimal value in the linear relaxation problem of the delivery plan problem. Therefore, as shown in Fig. 12, a route that can form an optimal solution only after weighting with a value smaller than 1 may be generated, and it may not be suitable as a route that forms an optimal solution to the integer optimization problem that is actually desired. It is not desirable for such a route to form a subset of routes that are the subject of the integer optimization problem.
[0081] FIG. 13 is a diagram showing an example of a preferable set as a subset of routes to be subjected to an integer optimization problem. When the two routes shown in FIG. 13 are obtained, the optimal value of the linear relaxation problem of the delivery plan problem is 2, and the optimal value of the delivery plan problem (integer optimization problem) is also 2. In this case, there is no difference between the optimal value 2 of the linear relaxation problem and the optimal value 2 of the delivery plan problem, and it is expected that the optimal solution obtained for the delivery plan problem is a sufficiently high quality solution. Also, as can be seen from the above explanation, it is possible to determine whether the routes included in the subset are appropriate routes based on the difference between the optimal value of the linear relaxation problem of the delivery plan problem obtained for the subset of generated routes and the optimal value of the delivery plan problem.
[0082] Returning to FIG. 4, the process after the route generating unit 21 generates a plurality of routes in step S2 will be further described.
[0083] In step S3, the information processing device 20 calculates the total transportation cost by solving a route selection problem (integer optimization problem) for multiple routes, and calculates the gap between the total transportation cost and an optimal value (an approximation of the total transportation cost) of a linearly relaxed problem of the route selection problem. Specifically, the calculation unit 23 calculates a first optimal solution to the delivery plan problem for the multiple routes generated in step S2, and the solution performance determination unit 25 calculates the difference between the objective function value of the second optimal solution to the linearly relaxed problem of the delivery plan problem and the objective function value of the first optimal solution.
[0084] In step S4, the solution performance determination unit 25 of the information processing device 20 judges whether the gap found in step S3 is smaller than a predetermined threshold. If the gap is smaller than the predetermined threshold, it can be determined that the set of routes found in step S2 includes a sufficient number of appropriate routes, and the process proceeds to step S8, where the calculation unit 23 executes a final optimization process. If the gap is equal to or larger than the predetermined threshold, the process proceeds to step S5.
[0085] In step S5, the route removal unit 26 of the information processing device 20 determines that routes whose variable values indicating the routes are smaller than a threshold value in the solution of the linearly relaxed route selection problem are removed from the route set, and that the remaining routes that have not been removed are selected. At this time, if the variable values are smaller than the threshold value for all routes generated in step S2, only one route (the route with the maximum variable value) is left and the remaining routes are removed. If multiple routes have the maximum variable value, one of them may be selected randomly.
[0086] The threshold value used in step S5 may be a fixed value set in advance. Alternatively, this threshold value may be dynamically set to a larger value as the gap obtained in step S3 increases. This is because the larger the gap, the more inappropriate the route generated in step S2 is, and it is preferable to delete routes under stricter conditions (delete more routes). In this way, by dynamically changing the criteria for route deletion according to the quality of the set of routes generated in step S2, it becomes possible to generate more appropriate routes.
[0087] In step S6, the information processing device 20 deletes the luggage to be transported via the selected route from the current "remaining luggage", sets the luggage remaining after the deletion to "remaining luggage", and increments the variable indicating the number of loops by 1.
[0088] In step S7, the information processing device 20 determines whether there are no remaining bags or the number of loops has reached the upper limit. If there are no remaining bags (i.e., the "remaining bags" is empty), or if the variable value indicating the number of loops has reached a predetermined upper limit, the process proceeds to step S8. Otherwise, the process returns to step S2, and the route generation process for the "remaining bags" and the subsequent processes are repeated.
[0089] In step S8, the information processing device 20 solves a route selection problem (integer optimization problem) for the routes generated in all loops, and the solution is the final output. More specifically, the routes generated by the route generating unit 21 in step S2 in each loop and selected and confirmed without being removed by the route removing unit 26 in step S5, and the route generated by the route generating unit 21 in step S2 in the last loop are the targets of optimization processing. The calculation unit 23 finds an optimal solution to the delivery plan problem for these routes, the output unit 24 outputs data related to the routes constituting the optimal solution, and this route data is output from the information processing device 20 as the final output.
[0090] The following describes how an appropriate route set is generated by the route generation process shown in FIG. 4, based on a concrete example. As a concrete example, consider a situation where there are three nodes and 1 kg of luggage needs to be transported from the base to each node (i.e., D i The maximum load of each vehicle is 1.5 kg, and the cost of each vehicle is 1 (i.e., c r = 1), and the predetermined threshold for the gap is 1, and the threshold for the value of the variable indicating the path is 0.9.
[0091] 14 is a diagram showing an example of a plurality of routes generated by the route generation process. It is assumed that the three routes shown in FIG. 14 are generated in step S2 in the first loop shown in FIG.
[0092] In step S3, the calculation unit 23 obtains a first optimal solution to the delivery plan problem (integer optimization problem), and the solution performance judgment unit 25 obtains a gap (difference) between the objective function value of the second optimal solution to the linear relaxation problem of the delivery plan problem and the objective function value of the first optimal solution. In the case of the example of the route shown in Fig. 14, the first optimal solution includes routes R1 to R3, and the objective function value (transportation cost) at this time is 3. The second optimal solution also includes routes R1 to R3, and the values of the corresponding variables x1 to x3 are all 1 / 3, and the objective function value (approximation value of transportation cost) at this time is 2.
[0093] In step S4, the solution performance determination unit 25 of the information processing device 20 determines whether the gap calculated in step S3 is smaller than a predetermined threshold value. In this example, the size of the gap is 1, which is not smaller than the threshold value 1, so the process proceeds to step S5.
[0094] In step S5, the route removal unit 26 of the information processing device 20 determines that routes whose variables indicating the routes are smaller than a threshold value in the solution of the linearly relaxed route selection problem are removed from the route set, and that the remaining routes that have not been removed are selected. In this example, the values of the variables x1 to x3 indicating the routes are all the same value, 1 / 3, which is smaller than the threshold value 0.9, so one route (e.g., route R1) is randomly selected, and the remaining routes R2 and R3 are removed.
[0095] In step S6, the loads carried by the selected route R1 are deleted from the current "remaining loads", so that the "remaining loads" become 0 kg, 0.5 kg, and 1 kg for nodes N1, N2, and N3. Then, the process returns to step S2 to start the next loop, and in step S2 of this next loop, a new route R4 is generated.
[0096] 15 is a diagram showing an example of route R4 added by the route generation process. Next, in step S3, when a first optimal solution to the delivery plan problem (integer optimization problem) is obtained, the first optimal solution includes only route R4, and the objective function value (transportation cost) at that time is 1. Also, a second optimal solution includes only route R4, the value of the corresponding variable x4 is 1, and the objective function value (approximation value of transportation cost) at that time is 1.
[0097] In step S4, when it is determined whether the gap obtained in step S3 is smaller than a predetermined threshold, the size of the gap is 0, which is smaller than the threshold 1, so the process proceeds to step S8, and the calculation unit 23 executes a final optimization process. In this optimization process, the calculation unit 23 obtains an optimal solution to the delivery plan problem, with the route selected and confirmed in each loop (R1 in this example) and the route generated in step S2 in the last loop (R4 in this example) as targets for optimization process. The output unit 24 outputs data on the routes constituting the optimal solution (R1 and R4) (R1 transports 1 kg and 0.5 kg to N1 and N2, respectively, and R4 transports 0.5 kg and 1 kg to N2 and N3, respectively). This route data is output from the information processing device 20 as a final output.
[0098] In the above example, when the calculation unit 23 finds an optimal solution to the delivery plan problem for multiple routes, the optimal solution includes all of the multiple routes that are the optimization targets, but this is merely a simple example used for the sake of convenience. In reality, when an optimal solution to the delivery plan problem is found for a large number of routes, only some of the routes selected from the large number of routes become the routes that constitute the optimal solution.
[0099] Although the route generation method of the present invention has been described above with respect to the delivery planning problem, the route generation method of the present invention is not limited to the delivery planning problem. The route generation method of the present invention can be similarly applied to various problems that can be formulated as integer programming problems, such as the bin packing problem. For example, in the case of bin packing, a route in the delivery planning problem becomes a box (such as a bin or a container) in the bin packing problem. In the case of the delivery planning problem, one route for transporting multiple packages to multiple nodes under the condition that one package is transported to each node becomes one box in which multiple packages are packed, in the case of the bin packing problem. In this way, problems that can be defined by replacing terms such as "delivery planning problem", "package", "route", and "node" with other terms in other integer programming problems are also intended to be included within the scope of rights defined in the claims.
[0100] After obtaining an optimal solution for a plurality of routes generated by the route generation method according to the present invention, control for carrying out delivery according to the optimal delivery route corresponding to the optimal solution may be appropriately executed by the hardware (mainly the CPU) shown in FIG. 2. For example, a control operation may be executed to automatically load the luggage to be loaded on each vehicle onto the vehicle, or an instruction may be automatically sent to each driver to load the luggage to be loaded on each vehicle onto the vehicle. In addition, the delivery route of each vehicle may be automatically set wirelessly in the navigation system of each vehicle, or the delivery route may be automatically transmitted wirelessly to a mobile device carried by each driver. In this way, each device may be controlled to realize delivery according to the optimal delivery route without human judgment and / or in a manner that eliminates human intervention as much as possible.
[0101] By executing the above-mentioned control operations, not only can a high-quality solution to the delivery plan problem be generated for the route generated by the route generation method of the present invention, but also an efficient route based on such a high-quality solution can be used to deliver packages at low cost. In other words, various effects can be obtained, such as efficient use of human resources, reduced fuel consumption, and shorter delivery times.
[0102] Although the present invention has been described above based on the embodiments, the present invention is not limited to the above embodiments, and various modifications are possible within the scope of the claims. [Explanation of symbols]
[0103] 11 CPU 12 Display section 13 Input section 14 ROM 15 RAM 16 HDD 17 Network Interface 18 Portable storage media drives 19 Metaheuristic Calculation Unit 20 Information processing device 21 Route Generation Unit 22 Objective function generator 23 Arithmetic section 24 Output section 25 Solution performance judgment section 26 Path Removal Unit
Claims
1. A route generation unit that generates a plurality of routes for delivering packages to be delivered in a delivery planning problem; A calculation unit that obtains a first optimal solution to the delivery plan problem for the plurality of routes; A solution performance determination unit that determines whether a difference between an objective function value of a second optimal solution for a linear relaxation problem of the delivery planning problem obtained for the plurality of routes and an objective function value of the first optimal solution is equal to or greater than a first threshold value; a path removal unit that removes, when the difference is equal to or greater than the first threshold, a path having a variable value indicating a path selection that is equal to or less than a second threshold in the second optimal solution from the plurality of paths; wherein the route generation unit generates a new route for parcels to be delivered excluding parcels to be delivered via routes that have not been removed and remain among the plurality of routes.
2. The information processing apparatus according to claim 1 , wherein the route generation unit generates the plurality of routes using a column generation method.
3. 3. An information processing device as claimed in claim 1 or 2, wherein the process of calculating a first optimal solution for a plurality of routes including the new route by the calculation unit, the process of calculating a second optimal solution by the solution performance determination unit and determining whether the new difference is greater than or equal to the first threshold, the process of removing a route by the route removal unit, and the process of generating a further plurality of new routes by the route generation unit are repeatedly executed as long as the condition that the new difference is greater than or equal to the first threshold is satisfied.
4. The information processing device according to claim 3 , wherein when the difference or the new difference becomes smaller than the first threshold, the calculation unit finds an optimal solution to the delivery plan problem for a plurality of routes that were generated in the past and remain without being removed.
5. 2 . The information processing device according to claim 1 , wherein when the variable value for all of the plurality of paths is equal to or less than the second threshold in the second optimal solution, the path removal unit leaves only one path with the maximum variable value and removes the other paths.
6. The information processing apparatus according to claim 1 , wherein the second threshold is dynamically set to a larger value as the difference increases.
7. A plurality of routes for delivering a package to be delivered in a delivery planning problem is generated; determining a first optimal solution to the delivery planning problem for the plurality of routes; determining a second optimal solution to a linear relaxation problem of the delivery planning problem for the plurality of routes; removing, from the plurality of paths, paths whose variable values indicating path selection are equal to or less than a second threshold in the second optimal solution when a difference between an objective function value of the first optimal solution and an objective function value of the second optimal solution is equal to or more than a first threshold; generating new routes for packages to be delivered, excluding packages to be delivered via routes that have not been removed from among the plurality of routes; An information processing method in which processing is carried out by a computer.
8. A plurality of routes for delivering a package to be delivered in a delivery planning problem is generated; determining a first optimal solution to the delivery planning problem for the plurality of routes; determining a second optimal solution to a linear relaxation problem of the delivery planning problem for the plurality of routes; removing, from the plurality of paths, paths whose variable values indicating path selection are equal to or less than a second threshold in the second optimal solution when a difference between an objective function value of the first optimal solution and an objective function value of the second optimal solution is equal to or more than a first threshold; generating new routes for packages to be delivered, excluding packages to be delivered via routes that have not been removed from among the plurality of routes; An information processing program that causes a computer to execute processing.
Citation Information
Patent Citations
System for preparing schedule for procuring article from supplier and delivering it to demander
JP2007210699A
Assignment of ships plan development support method and assignment of ships plan development support system
JP2017033378A
Information processing apparatus and information processing program
JP2020057050A