Optimization device, optimization method and computer program

JP2025025669AActive Publication Date: 2025-02-21KK TOYOTA CHUO KENKYUSHO
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2023130687
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-08-10
Publication Date
2025-02-21
Estimated Expiration
2043-08-10

Smart Images

  • Figure 2025025669000001_ABST
    Figure 2025025669000001_ABST
Patent Text Reader

Abstract

To provide a technology for an optimization device that can find optimized combinations even for combinatorial optimization problems imposed with constraints that are difficult to formulate.SOLUTION: An optimization device comprises: a data acquisition unit for acquiring data on an optimized combination using basic information related to basic component elements of the combination; a correction unit for correcting the basic information using the data on the optimized combination and constraint information related to constraint conditions; and a learning unit for acquiring new basic information that has learned the constraint conditions using the corrected basic information. The data acquisition unit acquires new data on the optimized combination using the new basic information acquired by the learning unit, the correction unit corrects the new basic information using the new data on the optimized combination acquired by the data acquisition unit and the constraint information, and the learning unit acquires further new basic information that has further learned the constraint conditions using the new basic information corrected by the correction unit.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to an optimization device, an optimization method, and a computer program. [Background technology]

[0002] Optimization devices for solving combinatorial optimization problems have been known (for example, Non-Patent Document 1). [Prior art documents] [Non-patent literature]

[0003] [Non-Patent Document 1] S. Feld, C. Eoch, T. Gabor, C. Seidal, F. Neukart, I. Galter, W. Mauerer and C. Linnhoff-Popien "A Hybrid Solution Method for the Capacitated Vehicle Routing Problem Using a Quantum Annealer" Frontiers in ICT, VOL 6,2019, [Retrieved July 10, 2023], Internet<https: / / www.frontiersin.org / articles / 10.3389 / fict.2019.00013 / full> Summary of the Invention [Problem to be solved by the invention]

[0004] However, even with prior art such as that disclosed in Patent Document 1, there is still room for improvement in the technology for finding optimized combinations in optimization devices for combinatorial optimization problems that have constraints that are difficult to formulate.

[0005] The present invention has been made to solve the above-mentioned problems, and has an object to provide a technique that enables an optimization device to find an optimized combination even in a combinatorial optimization problem that has constraints that are difficult to formulate. [Means for solving the problem]

[0006] The present invention has been made to solve at least part of the above-mentioned problems, and can be realized in the following forms.

[0007] (1) According to one aspect of the present invention, there is provided an optimization device for solving a combinatorial optimization problem on which constraint conditions are imposed. The optimization device includes an input unit to which basic information on basic components of a combination and constraint information on the constraint conditions are input, a data acquisition unit to acquire data of an optimized combination using the basic information, a correction unit to correct the basic information using the data of the optimized combination acquired by the data acquisition unit and the constraint information, and a learning unit to acquire new basic information that has learned the constraint conditions using the basic information corrected by the correction unit, wherein the data acquisition unit acquires new data of the optimized combination using the new basic information acquired by the learning unit, the correction unit corrects the new basic information acquired by the learning unit using the new data of the optimized combination acquired by the data acquisition unit and the constraint information, and the learning unit acquires further new basic information that has further learned the constraint conditions using the new basic information corrected by the correction unit.

[0008] According to this configuration, the correction unit corrects the basic information using the data of the optimized combination and the constraint information acquired by the data acquisition unit. The learning unit acquires new basic information in which the constraint conditions are learned using the basic information corrected by the correction unit. The data acquisition unit acquires new data of the optimized combination using the new basic information acquired by the learning unit. This makes it possible to obtain an optimized combination even in a combinatorial optimization problem in which a constraint condition that is difficult to formulate and difficult to include as basic information is imposed. In addition, the correction unit corrects the new basic information using the new data of the optimized combination and the constraint information acquired by the data acquisition unit, and the learning unit acquires further new basic information in which the constraint conditions are further learned using the new basic information corrected by the correction unit. In this way, by sequentially repeating the acquisition of the data of the optimized combination by the data acquisition unit and the acquisition of the basic information in which the constraint conditions are learned by the learning unit, a further optimized combination can be obtained from among combinations that satisfy the constraint conditions. Therefore, an optimized combination can be obtained in a combinatorial optimization problem in which a constraint condition that is difficult to formulate is imposed.

[0009] (2) In the optimization device of the above embodiment, the correction unit may include a condition determination unit that determines whether or not the optimized combination acquired by the data acquisition unit satisfies the constraint condition, and an information update unit that updates the basic information when the condition determination unit determines that the optimized combination does not satisfy the constraint condition. According to this configuration, the correction unit updates the basic information depending on whether or not the optimized combination acquired by the data acquisition unit satisfies the constraint condition. The learning unit acquires new basic information that has learned the constraint condition using the basic information corrected in response to the determination by the condition determination unit, so that the data acquisition unit acquires new data of the optimized combination. This makes it possible to find a further optimized combination from among the combinations that satisfy the constraint condition.

[0010] (3) In the optimization device of the above aspect, the data acquisition unit may calculate an evaluation value of an optimized combination, and the information update unit may update the basic information by changing the evaluation value using a penalty value corresponding to the constraint condition when the condition determination unit determines that the optimized combination does not satisfy the constraint condition. According to this configuration, when the condition determination unit determines that the optimized combination does not satisfy the constraint condition, the information update unit changes the evaluation value of the optimized combination using a penalty value corresponding to the constraint condition, so that the constraint information can be reliably included in the new basic information. This makes it possible to find a further optimized combination from among combinations that satisfy the constraint condition.

[0011] (4) The optimization device of the above embodiment may include an evaluation and judgment unit that judges whether a corrected evaluation value obtained by adding the penalty value to the evaluation value is equal to or less than a preset reference point, and the learning unit may acquire new basic information that has learned the constraint condition using new basic information updated by the information update unit when the evaluation and judgment unit judges that the corrected evaluation value is greater than the reference point. According to this configuration, the learning unit acquires new basic information that has learned the constraint condition in accordance with the judgment of whether a corrected evaluation value obtained by adding the penalty value to the evaluation value is equal to or less than a preset reference point, and the data acquisition unit acquires new data of the optimized combination using the new basic information. As a result, when data of a combination in which optimization has reached a certain level is acquired, the solution of the combinatorial optimization problem by the optimization device can be terminated, and the time required to acquire data of the optimized combination can be shortened.

[0012] (5) In the optimization device of the above embodiment, the learning unit may acquire new basic information in a format of binary variable optimization without quadratic constraints. With this configuration, the learning unit acquires new basic information in a format of binary variable optimization without quadratic constraints. This allows an Ising machine such as simulated annealing or quantum annealing to be used in acquiring data of the optimized combination.

[0013] (6) In the optimization device of the above aspect, the data acquisition unit may acquire data of the optimized combination using a binary variable optimization solver without quadratic constraints. According to this configuration, the data acquisition unit acquires data of the optimized combination using a binary variable optimization solver without quadratic constraints such as an Ising machine. This can shorten the time required to acquire data of the optimized combination.

[0014] (7) According to another aspect of the present invention, there is provided an optimization method for solving a combinatorial optimization problem to which a constraint condition is imposed, using an optimization device. This optimization method includes an input step of inputting basic information on basic components of a combination and constraint information on the constraint condition, a first data acquisition step of acquiring data of an optimized combination using the basic information, a correction step of correcting the basic information using the data of the optimized combination acquired in the first data acquisition step and the constraint information, a learning step of acquiring new basic information in which the constraint condition is learned using the basic information corrected in the correction step, and a second data acquisition step of acquiring new data of the optimized combination using the new basic information acquired in the learning step. According to this configuration, in the correction step, the basic information is corrected using the data of the optimized combination acquired in the first data acquisition step and the constraint information. In the learning step, new basic information in which the constraint condition is learned is acquired using the basic information corrected in the correction step, and in the second data acquisition step, new data of the optimized combination is acquired using the new basic information in which the constraint condition is learned. This makes it possible to find an optimized combination from among combinations that satisfy a constraint condition that is difficult to formulate, for example. Also, in the learning process, new basic information that further learns the constraint condition can be obtained using new data and constraint information on the optimized combination obtained in the second data acquisition process. In this way, by sequentially repeating the acquisition of data on the optimized combination and the acquisition of basic information that learns the constraint condition, a further optimized combination can be found from among combinations that satisfy the constraint condition.

[0015] (8) According to yet another aspect of the present invention, there is provided a computer program for causing a computer to execute a solution of a combinatorial optimization problem to which a constraint condition is imposed. This computer program causes a computer to execute an input function for inputting basic information on basic components of a combination and constraint information on the constraint condition, a first data acquisition function for acquiring data of an optimized combination using the basic information, a correction function for correcting the basic information using the data of the optimized combination acquired by the first data acquisition function and the constraint information, a learning function for acquiring new basic information having learned the constraint condition using the basic information corrected by the correction function, and a second data acquisition function for newly acquiring data of the optimized combination using the new basic information acquired by the learning function. According to this configuration, the correction function of the computer corrects the basic information using the data of the optimized combination acquired by the first data acquisition function and the constraint information. The learning function acquires new basic information having learned the constraint condition using the basic information corrected by the correction function, and the second data acquisition function acquires new data of the optimized combination using the new basic information having learned the constraint condition. This makes it possible to find an optimized combination from among combinations that satisfy constraint conditions that are difficult to formulate. In addition, the learning function can obtain new basic information that further learns the constraint conditions by using new data and constraint information of the optimized combination obtained by the second data acquisition function. In this way, by sequentially repeating the acquisition of data of the optimized combination and the acquisition of basic information that learns the constraint conditions, a further optimized combination can be found from among combinations that satisfy the constraint conditions.

[0016] The present invention can be realized in various forms, for example, in the form of a system including an optimization device, a control method for these devices and systems, a computer program for executing the optimization method in these devices and systems, a server device for distributing the computer program, a non-transitory storage medium on which the computer program is stored, etc. [Brief description of the drawings]

[0017] [Figure 1] 1 is a schematic block diagram of an optimization device according to a first embodiment. [Diagram 2] 1 is a flowchart outlining an optimization method according to a first embodiment. [Diagram 3] FIG. 1 is a first diagram illustrating a specific example of a combinatorial optimization problem. [Figure 4] FIG. 2 is a second diagram illustrating a specific example of a combinatorial optimization problem. [Diagram 5] 4 is a specific example of a flowchart of the optimization method according to the first embodiment. [Figure 6] FIG. 4 is a diagram illustrating the effect of the optimization method according to the first embodiment. [Figure 7] FIG. 2 is a schematic diagram illustrating an optimization method according to the first embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0018] First Embodiment FIG. 1 is a schematic block diagram of an optimization device 1 of the first embodiment. The optimization device 1 of this embodiment is a device for solving various combinatorial optimization problems, and is particularly suitable for solving optimization problems with constraints that are difficult to formulate. The optimization device 1 of this embodiment is configured with a personal computer (PC). The optimization device 1 includes an input unit 10 that accepts input from a user, a storage unit 20, a CPU (Central Processing Unit) 30 that executes various programs, an output unit 40 that outputs information related to the execution results of the programs, and a transmission / reception unit 50 that can transmit and receive various information to and from other devices via wired or wireless communication. In this embodiment, the optimization device 1 is a single personal computer, but may be configured with multiple devices. For example, an input / output terminal including the input unit 10 and the output unit 40 and a calculation device including the storage unit 20 and the CPU 30 may be located in separate locations, and the input / output terminal and the calculation device may be connected via a network.

[0019] The input unit 10 receives basic information on basic components of the combinations searched for in the optimization device 1 and constraint information on constraint conditions imposed on the combinations. In this embodiment, the basic components refer to the elements themselves that are combined in the search for combinations, and the basic information refers to information necessary for the optimization device 1 to acquire data on the combinations. For example, in a moving path problem for an electric vehicle described later, the basic components are the moving cost between two points that the electric vehicle should visit, and the basic information is the number of points that the electric vehicle should visit, the number of charging stations, and the like. The constraint information refers to information on the conditions (constraint conditions) that the combinations searched for should comply with. For example, in a moving path problem for an electric vehicle, the constraint information is the maximum electric capacity of the battery that the electric vehicle has. In this embodiment, the input unit 10 is composed of a keyboard and a mouse. Note that the input unit 10 is not limited to this, and may be an interface with an external recording device such as a USB memory or a flash memory in which the basic information and constraint information are stored. In addition, the input of the basic information and constraint information in this embodiment is not limited to that by the input unit 10, and may be input by receiving these information from another device not shown using the transmission / reception unit 50.

[0020] The storage unit 20 stores the basic information and constraint information input by the input unit 10, and also stores a computer program for solving the combinatorial optimization problem. In this embodiment, the storage unit 20 is a general term for memory devices, and various types of storage devices such as a read only memory (ROM), a random access memory (RAM), a solid state drive (SSD), a hard disk (HDD), and a flash memory card can be used.

[0021] The CPU 30 executes the functions of various programs by expanding, into the RAM, the programs stored in the ROM of the storage unit 20. The CPU 30 functions as a data acquisition unit 31, a correction unit 32, an evaluation / determination unit 33, and a learning unit .

[0022] The data acquisition unit 31 acquires data of the optimized combination using the basic information. There are two methods for acquiring the data of the optimized combination in the data acquisition unit 31: acquiring the data using the basic information input by the input unit 10, and acquiring the data using new basic information acquired by learning in the learning unit 34. In this embodiment, the data acquisition unit 31 calculates an evaluation value for evaluating the optimality of the combination for the acquired data of the optimized combination. Details of the function of the data acquisition unit 31 will be described later.

[0023] The correction unit 32 corrects the basic information using the data of the optimized combination acquired by the data acquisition unit 31 and the constraint information. The correction unit 32 has a condition determination unit 32a and an information update unit 32b. The condition determination unit 32a determines whether the optimized combination acquired by the data acquisition unit 31 satisfies the constraint condition included in the constraint information. The information update unit 32b updates the basic information according to the determination result by the condition determination unit 32a. In this embodiment, the information update unit 32b updates the basic information using the evaluation value calculated by the data acquisition unit 31 and the penalty value corresponding to the constraint condition. The function of the correction unit 32 will be described in detail later.

[0024] The evaluation and determination unit 33 determines the optimality of the optimized combination acquired by the data acquisition unit 31. In this embodiment, the evaluation and determination unit 33 determines the optimality using the basic information corrected by the correction unit 32. The function of the evaluation and determination unit 33 will be described in detail later.

[0025] The learning unit 34 acquires new basic information that has learned the constraint conditions, using the basic information corrected by the correction unit 32. The learning unit 34 of this embodiment acquires new basic information using Bayesian estimation for the basic information corrected by the correction unit 32. Details of the function of the learning unit 34 will be described later.

[0026] FIG. 2 is a flowchart for explaining an outline of the optimization method of this embodiment. FIG. 2 shows the flowchart of the optimization method of this embodiment in a generalized manner. The optimization method explained by the flowchart shown in FIG. 2 is applied to a combinatorial optimization problem to which a constraint condition is imposed (hereinafter, referred to as a "constrained optimization problem"). The constrained optimization problem to which the optimization method of this embodiment is applied aims to find an input x that gives a solution z with the best evaluation value y in a situation in which a constraint condition to be satisfied for a solution z for an input x is imposed. Furthermore, the constrained optimization problem of this embodiment is characterized in that it is difficult to formulate the constraint condition to be satisfied for the solution z.

[0027] In the optimization method for solving a constrained optimization problem of this embodiment, as shown in FIG. 2, first, basic data including basic information and constraint information is input by the input unit 10 (step S1). Next, the data acquisition unit 31 solves the unconstrained optimization problem using the basic information (step S2). As a result, the data acquisition unit 31 derives a solution z for the input x and acquires data of the combination of the optimized input x and solution z. No constraint condition is imposed on the solution z derived in step S2. After deriving the solution z for the input x, the data acquisition unit 31 obtains a provisional evaluation value a for the solution z for the input x (step S3). Step S1 corresponds to the "input step" in the claims. Step S2 corresponds to the "first data acquisition step" in the claims.

[0028] Next, the condition determination unit 32a uses the data of the combination of the input x and the solution z acquired by the data acquisition unit 31 and the constraint information to determine whether the solution z satisfies the constraint condition (step S4). If the condition determination unit 32a determines that the solution z satisfies the constraint condition (step S4: YES), the process proceeds to step S5. If the condition determination unit 32a determines that the solution z does not satisfy the constraint condition (step S4: NO), the process proceeds to step S6.

[0029] In step S5, the condition determination unit 32a sets the provisional evaluation value a as the evaluation value y for the input x (step S5). Meanwhile, in step S6, the condition determination unit 32a sets the value (modified evaluation value) obtained by a calculation using the provisional evaluation value a and the penalty value b corresponding to the constraint condition as the evaluation value y for the input x (step S6). Note that the calculation using the penalty value b in step S6 is, for example, an arithmetic operation such as addition or subtraction, but is not limited to these. The change in the magnitude of the evaluation value y due to the calculation in step S6 is important in determining the degree of optimality in step S8, which will be described later. Therefore, the content of the calculation in step S6 differs depending on the content of the constrained optimization problem to which the optimization method of this embodiment is applied.

[0030] After step S5 or step S6, the information update unit 32b updates the evaluation value y for the input x according to the processing of step S5 or step S6 (step S7). That is, the correction unit 32 changes the evaluation value using the penalty value b corresponding to the constraint condition, thereby correcting the basic information used in obtaining the data of the combination of the optimized input x and the solution z in the previous step S2 to basic information that takes the constraint condition into consideration. Steps S4 to S7 correspond to the "correction process" in the claims.

[0031] Next, the evaluation judgment unit 33 judges whether the evaluation value y of the input x satisfies a preset criterion (step S8). In step S8, for example, it is judged whether the evaluation value y updated in step S7 is equal to or less than a reference value. If the evaluation judgment unit 33 judges that the evaluation value y is equal to or less than the reference value (step S8: YES), the current optimization method ends. If the evaluation judgment unit 33 judges that the evaluation value y is not equal to or less than the reference value (step S8: NO), the process proceeds to step S9. Note that the judgment method in the evaluation judgment unit 33 is not limited to whether or not the evaluation value is equal to or less than the reference value. For example, it may be equal to or more than the reference value, or may be included within a predetermined range.

[0032] If it is determined in step S8 that the evaluation value y is not equal to or less than the reference value, the relationship between the input x and the evaluation value y is learned by Bayesian estimation (step S9). Specifically, the learning unit 34 learns the relationship between the input x and the evaluation value y by using the evaluation value y updated in step S7 in Bayesian estimation represented by y=f(x). This allows the learning unit 34 to acquire new basic information that has learned the constraint conditions, including information about combinations that were not subject to the determination in steps S3 to S7. Step S9 corresponds to the "learning process" in the claims.

[0033] Next, a new input x is determined (step S10). Specifically, the data acquisition unit 31 determines a new input x that is estimated to be an optimal input by using the new basic information acquired in step S9. Note that the method of determining the input x in steps S9 and S10 is not limited to Bayesian estimation.

[0034] After step S10, the process returns to step S2, and the unconstrained optimization problem is solved using the new basic information acquired in step S9 (step S2). In the optimization method of this embodiment, the process from step S2 through two judgments (steps S4 and S8) to step S10 is sequentially performed to find the input x that gives the solution z with the best evaluation value y. Step S10 and the step S2 following step S10 correspond to the "second data acquisition step" in the claims.

[0035] Next, the optimization method of this embodiment will be described using a specific example. In this embodiment, as a constrained optimization problem, a travel route of an electric vehicle is optimized taking into account the maximum electric capacity of the electric vehicle. The combinatorial optimization problem to which the optimization method of this embodiment is applied, which will be described below, is simply referred to as an "electric vehicle travel route problem." The optimization method of this embodiment is executed when basic information and constraint information are input by a user.

[0036] FIG. 3 is a first diagram for explaining a specific example of the combinatorial optimization problem of this embodiment. FIG. 3 is a diagram showing an example of the relationship between points P1 to P10 that an electric vehicle EV should visit and charging stations installed at some of the points P1 to P10 in an electric vehicle travel route problem. In FIG. 3, charging stations Sp1 to Sp3 are installed at three points P3, P6, and P10 among the points P1 to P10 that an electric vehicle EV should visit. In the electric vehicle travel route problem, the electric vehicle EV visits all of the 10 points P1 to P10 that it should visit while using charging at each of the charging stations Sp1 to Sp3. The positions at which the charging stations Sp1 to Sp3 are installed are targets of optimization in the electric vehicle travel route problem of this embodiment. Information on the positions at which the charging stations Sp1 to Sp3 are installed is included in the basic information as an initial setting. It should be noted that FIG. 3 merely shows a schematic diagram of the relationships between the ten points P1 to P10, and does not show the distances or directions between the points P1 to P10.

[0037] FIG. 4 is a second diagram for explaining a specific example of the combinatorial optimization problem of this embodiment. FIG. 4 shows information on the consumption of a battery equipped in an electric vehicle. Specifically, the amount of electricity consumed in moving between two of the points P1 to P10 shown in FIG. 3 is shown. In FIG. 4, the horizontal axis shows the point from which the electric vehicle departs (starting point), and the vertical axis shows the point at which the electric vehicle arrives (arrival point). In FIG. 4, the density of dots indicates the amount of battery consumption in relation to the starting point and the arrival point. Specifically, the higher the dot density, the greater the amount of battery consumption. The information shown in FIG. 4 is included in the basic information.

[0038] The battery consumption of an electric vehicle differs, for example, when the starting point is A and the destination point is B, from when the starting point is B and the destination point is A. With reference to FIG. 4, when the starting point is P6 and the destination point is P8, the battery consumption Cs68 is close to 5, but when the starting point is P6 and the destination point is P8, the battery consumption Cs86 is about 4. This is because, for example, when there is a downhill slope due to the difference in elevation between the two points, the battery can be charged without being discharged. Therefore, in the relationship between the two points, there are also cases where the battery consumption is less than 0.

[0039] In this embodiment, the maximum electric capacity of the battery equipped in the electric vehicle is set to 3, and an amount of electricity equivalent to the electric capacity of the battery of 2 can be charged to the battery at one charging station. In the electric vehicle travel route problem in this embodiment, under a capacity constraint (constraint condition) in which the amount of electricity in the battery must not exceed the maximum electric capacity of 3 and also must not be allowed to become 0 or less, a charging station is placed at an optimal location and a route with the least battery consumption (travel cost) is obtained. That is, in the electric vehicle travel route problem to which the optimization method of this embodiment is applied, both the location of the charging station and the travel route of the electric vehicle are optimized while taking into account the capacity constraint of the battery equipped in the electric vehicle.

[0040] FIG. 5 is a specific example of a flowchart of the optimization method of this embodiment. In the optimization method for the electric vehicle travel route problem, first, basic data is input (step S11). In step S11, the input unit 10 inputs basic information and constraint information for the electric vehicle travel route problem to the optimization device 1. As described above, the basic information input in step S11 includes information on the number of points to be visited by the electric vehicle, the number of charging stations, and the travel cost between the points to be visited by the electric vehicle shown in FIG. 4. As described above, information on the positions at which the charging stations are located is included in the basic information as an initial setting. Hereinafter, for convenience, the positions at which the charging stations are located will be referred to as "position x of the charging station". Position x of the charging station corresponds to input x in the general expression of the optimization method described in FIG. 2.

[0041] Next, an optimal route problem without capacity constraints is solved (step S12). In step S12, the data acquisition unit 31 solves the electric vehicle travel route problem using the basic information. As a result, the data acquisition unit 31 acquires the optimal travel route z at the position x of the charging station as "optimized combination data". In step S12, since the electric vehicle travel route problem is solved using basic information including information about the position x of the charging station, it is not required for acquiring the optimal travel route z that the amount of electricity in the battery of the electric vehicle is equal to or less than 3, which is the maximum electric capacity, and is greater than 0. The optimal travel route z acquired in step S12 corresponds to the solution z in the general expression of the optimization method described in FIG. 2.

[0042] Next, an evaluation value of the optimal travel route is obtained (step S13). In step S13, the data acquisition unit 31 calculates an evaluation value a of the optimal travel route z at the position x of the charging station acquired in step S12. The evaluation value a can be substituted with the travel cost calculated when solving the electric vehicle travel route problem in step S12. However, the evaluation value is not limited to this. The evaluation value a corresponds to the provisional evaluation value a in the general expression of the optimization method described in FIG. 2.

[0043] Next, it is determined whether the optimal travel route satisfies the battery capacity constraint (step S14). In step S14, the condition determination unit 32a determines whether the amount of electricity in the battery of the electric vehicle for the optimal travel route z of the electric vehicle at the position x of the charging station obtained in step S12 is 3 or less and greater than 0. If the condition determination unit 32a determines that the optimal travel route z satisfies the capacity constraint (step S14: YES), the process proceeds to step S15. If the condition determination unit 32a determines that the optimal travel route z does not satisfy the capacity constraint (step S14: NO), the process proceeds to step S16.

[0044] If it is determined in step S14 that the optimal travel route z satisfies the capacity constraint, in step S15, the condition determination unit 32a sets the evaluation value a calculated in step S13 as the travel cost y of the optimal travel route z (step S15). The travel cost y corresponds to the evaluation value y in the general expression of the optimization method described in FIG.

[0045] On the other hand, if it is determined in step S14 that the optimal travel route z does not satisfy the capacity constraint, the sum of the evaluation value a and the penalty value b is set as the travel cost y of the optimal travel route z (step S16). In step S16, the condition determination unit 32a sets the value (corrected evaluation value) obtained by adding the penalty value b corresponding to the capacity constraint to the evaluation value a calculated in step S13 as the travel cost y of the optimal travel route z. In other words, if the optimal travel route does not satisfy the capacity constraint, the travel cost of the optimal travel route is likely to be larger than that of an optimal travel route that satisfies the capacity constraint. In addition, since a smaller travel cost is preferable in the travel route problem for electric vehicles, if the capacity constraint is not satisfied, the value obtained by adding the penalty value to the evaluation value is set as the travel cost.

[0046] After step S15 or step S16, the travel cost is updated (step S17). In step S17, the information update unit 32b updates the travel cost y at the position x of the charging station following the processing in step S15 or step S16, and corrects it to basic information that takes into account the capacity constraint.

[0047] Next, it is determined whether or not a movement cost equal to or less than a reference value has been acquired (step S18). In step S18, the evaluation determination unit 33 determines whether or not the movement cost updated in step S17 is equal to or less than a preset reference value. If the evaluation determination unit 33 determines that a movement cost y equal to or less than the reference value has been acquired (step S18: YES), the current optimization method is terminated. If the evaluation determination unit 33 determines that a movement cost y equal to or less than the reference value has not been acquired (step S18: NO), the process proceeds to step S19.

[0048] If it is determined in step S18 that the travel cost y is not equal to or less than the reference value, the coefficient matrix in Bayesian estimation is estimated (step S19). In step S19, the learning unit 34 estimates the coefficient matrix A of the following equation (1) by Bayesian estimation. In this way, the learning unit 34 acquires new basic information that has learned the capacity constraint. The new basic information acquired by the learning unit 34 also includes information on combinations that were not subject to the determination in steps S13 to S17. In this embodiment, the learning unit 34 can acquire new basic information in the form of Quadratic Unconstrained Binary Optimization (QUBO).

number

[0049] Next, a new position x of the charging station is determined (step S20). Specifically, the data acquisition unit 31 determines the new position x of the charging station by using the coefficient matrix A estimated in step S19.

[0050] After step S20, an optimal route problem without capacity constraints is solved at the new position x of the charging station determined in step S20 (step S12). In step S12, the data acquisition unit 31 solves the electric vehicle movement route problem at the newly determined position x of the charging station using the new basic information acquired in step S20. In this embodiment, in the second and subsequent steps of step S12, data of the optimized combination is acquired using a binary variable optimization solver without quadratic constraints such as an Ising machine. As a result, the data acquisition unit 31 acquires new data of the optimized combination using the new basic information acquired by the learning unit 34 that has learned the capacity constraints.

[0051] In the optimization method of this embodiment, steps S12 to S20 are repeated in this manner, and in step S18, the optimal travel route z for which the travel cost y is equal to or less than the reference value is determined as the final optimal travel route z. The determined optimal travel route for the electric vehicle is output using the output unit 40.

[0052] FIG. 6 is a diagram for explaining the effect of the optimization method of this embodiment. FIG. 6 shows the calculation result of the relationship between the travel cost of the electric vehicle and the number of searches for the position of the charging station in the optimization method described in FIG. 5, when three charging stations are placed. The horizontal axis of FIG. 6 shows the number of searches for the position of the charging station (the number of times step S20 was executed), and the vertical axis shows the travel cost of the electric vehicle calculated when each number of searches was performed. FIG. 6 shows the result when 10 is added as a penalty value to the evaluation value when the capacity constraint is violated in the judgment in step S14 (see step S16). As shown in FIG. 6, it can be seen that a solution that does not violate the capacity constraint can be found after about 50 searches. Furthermore, it can be seen that a solution of 7.69 is found as a travel cost that does not violate the capacity constraint after about 130 searches.

[0053] Fig. 7 is a schematic diagram for explaining the optimization method of this embodiment. The schematic diagram shown in Fig. 7 shows a schematic diagram of a learning process using Bayesian Optimization of Combinatorial Structure (hereinafter, referred to as "BOCS"). In the optimization method shown in the schematic diagram of Fig. 7, the relationship between input x, which is a bit string of a binary variable representing a combination, and output z is unknown. In Fig. 7, a system in which the relationship between input x and output z is unknown is shown as z=f(x), and this corresponds to the electric vehicle movement route problem described in Figs. 3 to 6.

[0054] In the optimization method shown in Fig. 7, for a system in which the relationship between input x and output z is unknown, a data set of output z for a certain input x is first obtained (arrow PR1 in Fig. 7). In the electric vehicle movement route problem described in Figs. 3 to 6, the input x corresponds to the position x of the charging station, and the output z corresponds to the optimal movement route z of the electric vehicle.

[0055] Next, using the acquired data set of input x (location of charging station) and output z (optimum travel route of electric vehicle), the relationship between input x and output z is learned in a QUBO (Quadratic Unconstrained Binary Optimization) format (arrow PR2 shown in FIG. 7). When learning the relationship between input x and output z in the QUBO format, it is determined whether or not output z satisfies the constraint condition. If output z does not satisfy the constraint condition, the constraint condition can be learned by updating the relationship between input x and output z using a penalty value corresponding to the constraint condition. In the electric vehicle travel route problem described in FIG. 3 to FIG. 6, when a capacity constraint related to the electric capacity of the battery equipped in the electric vehicle is violated, the sum of the evaluation value and the penalty value is set as the travel cost of the electric vehicle, which corresponds to learning the capacity constraint.

[0056] Next, under the learned relationship, a candidate for the next input x that gives the optimal output z is searched for (arrow PR3 in FIG. 7). When searching for the optimal input candidate, since the relationship between the input x and the output z is learned in the QUBO format, simulated annealing (SA) or quantum annealing (QA) can be used. In the electric vehicle movement path problem described in FIG. 3 to FIG. 6, this corresponds to the search for a new position of the charging station in step S20. In this way, in the learning process of the constraint conditions using BOCS, the cycle from the arrow PR1 to the arrow PR3 is set as one search, and the coefficient matrix A is updated every time a data set of the output z for the input x is obtained. This makes it possible to find the input x that gives the optimal output z with higher accuracy. In the learning process of the constraint conditions using BOCS, the search is sequentially repeated a preset number of times.

[0057] According to the optimization device 1 of the present embodiment described above, the correction unit 32 corrects the basic information using the data of the optimized combination and the constraint information acquired by the data acquisition unit 31. The learning unit 34 acquires new basic information in which the constraint conditions have been learned using the basic information corrected by the correction unit 32. The data acquisition unit 31 acquires new data of the optimized combination using the new basic information in which the constraint conditions have been learned. This makes it possible to find an optimized combination from among combinations that satisfy the constraint conditions, even in a combinatorial optimization problem in which it is difficult to formulate and in which constraint conditions are imposed that make it difficult to include information as basic information when acquiring data of the optimized combination. In addition, the correction unit 32 corrects the new basic information using the new data and constraint information of the optimized combination acquired by the data acquisition unit 31, and the learning unit 34 acquires further new basic information in which the constraint conditions have been further learned using the new basic information corrected by the correction unit 32. In this way, by sequentially repeating the acquisition of data of optimized combinations by the data acquisition unit 31 and the acquisition of new basic information that has learned the constraint conditions by the learning unit 34, it is possible to obtain a further optimized combination from among combinations that satisfy the constraint conditions. Therefore, it is possible to obtain an optimized combination for a combinatorial optimization problem that has constraint conditions that are difficult to formulate.

[0058] Furthermore, according to the optimization device 1 of this embodiment, the correction unit 32 updates the basic information depending on whether the optimized combination acquired by the data acquisition unit 31 satisfies the constraint conditions, and the learning unit 34 acquires new basic information that has learned the constraint conditions in order to acquire new data of the combination optimized by the data acquisition unit 31. This makes it possible to find a further optimized combination from among the combinations that satisfy the constraint conditions.

[0059] Furthermore, according to the optimization device 1 of this embodiment, when the condition determination unit 32a determines that the optimized combination does not satisfy the constraint condition, the information update unit 32b changes the evaluation value of the optimized combination using a penalty value corresponding to the constraint condition, so that the constraint information can be reliably included in the new basic information. This makes it possible to find a further optimized combination among the combinations that satisfy the constraint condition.

[0060] Furthermore, according to the optimization device 1 of this embodiment, the learning unit 34 acquires new basic information that has learned the constraint conditions according to a determination of whether or not the value obtained by adding the penalty value to the evaluation value is equal to or less than a preset reference point, and the data acquisition unit 31 acquires new data of the optimized combination using the new basic information. As a result, when data of a combination in which optimization has reached a certain level is acquired, the solution of the combinatorial optimization problem by the optimization device 1 can be terminated, and the time required to acquire data of the optimized combination can be shortened.

[0061] Furthermore, according to the optimization device 1 of this embodiment, the learning unit 34 acquires new basic information in the form of binary variable optimization without quadratic constraints. This makes it possible to use an Ising machine such as simulated annealing or quantum annealing in acquiring data of an optimized combination.

[0062] Moreover, according to the optimization device 1 of this embodiment, the data acquisition unit 31 acquires data of the optimized combination using a binary variable optimization solver without quadratic constraints, such as an Ising machine, thereby making it possible to shorten the time required to acquire data of the optimized combination.

[0063] According to the optimization method of the present embodiment, as shown in FIG. 2, in steps S4 to S7, the basic information is corrected using the data of the optimized combination acquired in step S2 and the constraint information. In step S9, the basic information corrected in steps S4 to S7 is used to acquire new basic information in which the constraint conditions have been learned, and in step S10 and the next step S2 after step S10, the new basic information in which the constraint conditions have been learned is used to acquire new data of the optimized combination. This makes it possible to obtain, for example, an optimized combination from among combinations that satisfy a constraint condition that is difficult to formulate. In addition, in step S9 from the second time onwards, new basic information in which the constraint conditions have been further learned is obtained using new data of the optimized combination acquired in step S10 and the next step S2 after step S10 and the new basic information corrected using the constraint information. In this way, by sequentially repeating the acquisition of the data of the optimized combination in step S10 and the next step S2 after step S10, and the acquisition of the basic information in which the constraint conditions have been learned in step S9, a further optimized combination can be obtained from among combinations that satisfy the constraint conditions.

[0064] According to the computer program of the present embodiment, the correction function corrects the basic information using the data of the optimized combination acquired by the first data acquisition function and the constraint information. The learning function acquires new basic information in which the constraint conditions have been learned using the basic information corrected by the correction function, and the second data acquisition function acquires new data of the optimized combination using the new basic information in which the constraint conditions have been learned. This makes it possible to obtain an optimized combination from among combinations that satisfy, for example, constraint conditions that are difficult to formulate. In addition, the learning function acquires further new basic information in which the constraint conditions have been further learned using the new data and constraint information of the optimized combination acquired by the second data acquisition function. In this way, by sequentially repeating the acquisition of the data of the optimized combination and the acquisition of the basic information in which the constraint conditions have been learned, it is possible to obtain a further optimized combination from among combinations that satisfy the constraint conditions.

[0065] <Modifications of this embodiment> The present invention is not limited to the above-described embodiment, and can be embodied in various forms without departing from the spirit and scope of the invention. For example, the following modifications are also possible.

[0066] [Variation 1] In the above embodiment, the correction unit 32 has a condition determination unit 32a that determines whether or not the optimized combination acquired by the data acquisition unit 31 satisfies the constraint condition included in the constraint information, and an information update unit 32b that updates the basic information according to the determination result by the condition determination unit 32a. The configuration of the correction unit 32 is not limited to this. It is sufficient if the correction unit 32 can correct the basic information by taking into account the constraint condition using the data of the optimized combination acquired by the data acquisition unit 31 and the constraint information.

[0067] [Variation 2] In the above embodiment, as shown in Fig. 2, in response to the result of the judgment by the evaluation / judgment unit 32c, in step S9, the relationship between the input x and the evaluation value y is learned by Bayesian estimation, and in step S10, a new input x that is estimated to be an optimal input is estimated based on the relationship estimated in step S9. The method of estimating the new input x is not limited to this.

[0068] [Variation 3] In the above embodiment, the learning unit 34 acquires new basic information in the form of binary variable optimization without quadratic constraints. However, the learning form of the learning unit 34 is not limited to this.

[0069] [Variation 4] In the above embodiment, the data acquisition unit 31 acquires data of the optimized combination using a binary variable optimization solver without quadratic constraints, such as an Ising machine. However, the method of acquiring the data of the combination by the data acquisition unit 31 is not limited to this.

[0070] Although the present aspect has been described above based on the embodiment and modified examples, the above-mentioned embodiment of the aspect is intended to facilitate understanding of the present aspect and does not limit the present aspect. The present aspect may be modified or improved without departing from the spirit and scope of the claims, and equivalents are included in the present aspect. Furthermore, if a technical feature is not described as essential in this specification, it may be deleted as appropriate.

[0071] <Application example 1> An optimization device for solving a combinatorial optimization problem subject to constraints, comprising: an input unit for inputting basic information on basic components of a combination and constraint information on the constraint conditions; a data acquisition unit that acquires data of an optimized combination using the basic information; a correction unit that corrects the basic information by using the optimized combination data acquired by the data acquisition unit and the constraint information; a learning unit that acquires new basic information that has learned the constraint condition by using the basic information corrected by the correction unit, The data acquisition unit acquires new data of an optimized combination using new basic information acquired by the learning unit; the correction unit corrects new basic information acquired by the learning unit using new data of the optimized combination acquired by the data acquisition unit and the constraint information; the learning unit further learns the constraint condition by using the new basic information corrected by the correction unit, and obtains further new basic information. Optimizer. <Application example 2> The optimization device according to Application Example 1, The correction unit is a condition determination unit that determines whether or not the optimized combination acquired by the data acquisition unit satisfies the constraint condition; an information update unit that updates the basic information when the condition determination unit determines that the optimized combination does not satisfy the constraint condition. Optimizer. <Application example 3> The optimization device according to Application Example 1 or 2, The data acquisition unit calculates an evaluation value of the optimized combination, when the condition determination unit determines that the optimized combination does not satisfy the constraint condition, the information update unit updates the basic information by changing the evaluation value using a penalty value corresponding to the constraint condition. Optimizer. <Application Example 4> The optimization device according to any one of Application Examples 1 to 3 further comprises: an evaluation determination unit that determines whether a corrected evaluation value obtained by adding the penalty value to the evaluation value is equal to or less than a preset reference point; When the evaluation determination unit determines that the corrected evaluation value is greater than the reference point, the learning unit obtains new basic information that has learned the constraint condition by using the basic information updated by the information update unit. Optimizer. <Application example 5> The optimization device according to any one of Application Examples 1 to 4, The learning unit acquires new basic information in the form of a binary variable optimization without quadratic constraints. Optimizer. <Application Example 6> The optimization device according to any one of Application Examples 1 to 5, The data acquisition unit acquires data of the optimized combination using a binary variable optimization solver without quadratic constraints. Optimizer. <Application Example 7> An optimization method for solving a combinatorial optimization problem having constraints using an optimization device, comprising the steps of: an input step of inputting basic information on basic components of a combination and constraint information on the constraint conditions; a first data acquisition step of acquiring data of an optimized combination using the basic information; a correction step of correcting the basic information by using the optimized combination data acquired in the first data acquisition step and the constraint information; a learning step of acquiring new basic information by learning the constraint conditions using the basic information corrected in the correction step; and a second data acquisition step of acquiring new data of an optimized combination by using the new basic information acquired in the learning step. Optimization methods. <Application Example 8> A computer program for causing a computer to solve a combinatorial optimization problem subject to constraints, comprising: an input function for inputting basic information on basic components of a combination and constraint information on the constraint conditions; a first data acquisition function that acquires data of an optimized combination using the basic information; a correction function that corrects the basic information by using the optimized combination data acquired by the first data acquisition function and the constraint information; a learning function that acquires new basic information that has learned the constraint conditions using the basic information corrected by the correction function; A second data acquisition function that acquires new data of an optimized combination using new basic information acquired by the learning function. Computer program. [Explanation of symbols]

[0072] 1. Optimization device 10...Input section 50…Transmitter / receiver 31…Data acquisition section 32...Compensation section 32a...Condition judgment section 32b…Information update department 33...Evaluation and Judgment Department 34…Learning Department

Claims

1. An optimization device for solving a combinatorial optimization problem subject to constraints, comprising: an input unit for inputting basic information on basic components of a combination and constraint information on the constraint conditions; a data acquisition unit that acquires data of an optimized combination using the basic information; a correction unit that corrects the basic information by using the optimized combination data acquired by the data acquisition unit and the constraint information; a learning unit that acquires new basic information that has learned the constraint condition by using the basic information corrected by the correction unit, The data acquisition unit acquires new data of an optimized combination using new basic information acquired by the learning unit; the correction unit corrects new basic information acquired by the learning unit using new data of the optimized combination acquired by the data acquisition unit and the constraint information; the learning unit further learns the constraint condition by using the new basic information corrected by the correction unit, and obtains further new basic information. Optimizer.

2. 2. The optimization device according to claim 1, The correction unit is a condition determination unit that determines whether or not the optimized combination acquired by the data acquisition unit satisfies the constraint condition; an information update unit that updates the basic information when the condition determination unit determines that the optimized combination does not satisfy the constraint condition. Optimizer.

3. 3. The optimization device according to claim 2, The data acquisition unit calculates an evaluation value of the optimized combination, when the condition determination unit determines that the optimized combination does not satisfy the constraint condition, the information update unit updates the basic information by changing the evaluation value using a penalty value corresponding to the constraint condition. Optimizer.

4. The optimization device according to claim 3 further comprises: an evaluation determination unit that determines whether a corrected evaluation value obtained by adding the penalty value to the evaluation value is equal to or less than a preset reference point; When the evaluation determination unit determines that the corrected evaluation value is greater than the reference point, the learning unit obtains new basic information that has learned the constraint condition by using the basic information updated by the information update unit. Optimizer.

5. 3. The optimization device according to claim 1, The learning unit acquires new basic information in the form of a binary variable optimization without quadratic constraints. Optimizer.

6. 3. The optimization device according to claim 1, The data acquisition unit acquires data of the optimized combination using a binary variable optimization solver without quadratic constraints. Optimizer.

7. An optimization method for solving a combinatorial optimization problem having constraints using an optimization device, comprising the steps of: an input step of inputting basic information on basic components of a combination and constraint information on the constraint conditions; a first data acquisition step of acquiring data of an optimized combination using the basic information; a correction step of correcting the basic information by using the optimized combination data acquired in the first data acquisition step and the constraint information; a learning step of acquiring new basic information by learning the constraint conditions using the basic information corrected in the correction step; and a second data acquisition step of acquiring new data of an optimized combination by using the new basic information acquired in the learning step. Optimization methods.

8. A computer program for causing a computer to solve a combinatorial optimization problem subject to constraints, comprising: an input function for inputting basic information on basic components of a combination and constraint information on the constraint conditions; a first data acquisition function that acquires data of an optimized combination using the basic information; a correction function that corrects the basic information by using the optimized combination data acquired by the first data acquisition function and the constraint information; a learning function that acquires new basic information that has learned the constraint conditions using the basic information corrected by the correction function; and a second data acquisition function that acquires new data of an optimized combination by using new basic information acquired by the learning function. Computer program.

Citation Information

Patent Citations

  • Method and device for adaptively determining weighting coefficient in relation to target function

    JP2004110831A