Model generation device, model generation method, and program

WO2025062492A1PCT designated stage expired Publication Date: 2025-03-27NEC CORP
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
PCT/JP2023/033954
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-09-19
Publication Date
2025-03-27

Smart Images

  • Figure JP2023033954_27032025_PF_FP_ABST
    Figure JP2023033954_27032025_PF_FP_ABST
Patent Text Reader

Abstract

A model generation device 100 according to the present disclosure comprises: a determination unit 121 that, when a mathematical optimization problem represented by a mathematical expression having a plurality of terms is changed, determines a method for formulating a term corresponding to the change on the basis of the formulated mathematical optimization problem; and an update unit 122 that converts the term corresponding to the change by means of the determined formulation method and updates the formulated mathematical optimization problem.
Need to check novelty before this filing date? Find Prior Art

Description

Model generation device, model generation method, and program

[0001] The present disclosure relates to a model generation device, a model generation method, and a program.

[0002] One method for solving real-world problems is to formulate them as mathematical optimization problems and solve them. As an example of formulating a mathematical optimization problem, Patent Literature 1 discloses a QUBO (Quadratic Unconstrained Binary Optimization) formulation used for combinatorial optimization problems.

[0003] Japanese Patent Application Laid-Open No. 2022-55120

[0004] However, in a mathematical optimization problem, the objective function and constraints may change. This means that every time the mathematical optimization problem is changed, it is necessary to create a mathematical formula and perform a formulation such as QUBO to generate a model, which results in a problem that it takes a long time to generate the model.

[0005] Therefore, an object of the present disclosure is to provide a model generation device that can solve the above-mentioned problem that it takes time to generate a model when the mathematical optimization problem is changed.

[0006] A model generation device according to one aspect of the present disclosure includes: a determination unit that, when a change is made to a mathematical optimization problem expressed by a mathematical expression having a plurality of terms, determines a formulation method for a term corresponding to the change, based on the formulated mathematical optimization problem; and an update unit that converts the term corresponding to the change using the determined formulation method, thereby updating the formulated mathematical optimization problem. Also, a model generation method according to one aspect of the present disclosure includes: when a change is made to a mathematical optimization problem expressed by a mathematical expression having a plurality of terms, determines a formulation method for a term corresponding to the change, based on the formulated mathematical optimization problem, and converts the term corresponding to the change using the determined formulation method, thereby updating the formulated mathematical optimization problem. Furthermore, a program according to one embodiment of the present disclosure has a configuration that causes a computer to execute the following processes: when a change is made to a mathematical optimization problem expressed by a mathematical expression having multiple terms, determine a formulation method for a term corresponding to the change based on the formulated mathematical optimization problem; and convert the term corresponding to the change using the determined formulation method to update the formulated mathematical optimization problem.

[0007] By being configured as described above, the present disclosure can reduce the time required to generate a model even when the mathematical optimization problem is changed.

[0008] FIG. 1 is a block diagram showing a configuration of a model generation device according to the present disclosure. FIG. 2 is a diagram showing an example of a model according to the present disclosure. FIG. 3 is a diagram showing an example of a model generation process according to the present disclosure. FIG. 4 is a diagram showing an example of a model generation process related to the present disclosure. FIG. 4 is a flowchart showing the operation of the model generation process according to the present disclosure. FIG. 5 is a diagram showing an example of a model generation process according to the present disclosure. FIG. 6 is a flowchart showing the operation of the model generation process according to the present disclosure. FIG. 7 is a block diagram showing the hardware configuration of a model generation device according to the present disclosure. FIG. 8 is a block diagram showing the configuration of a model generation device according to the present disclosure.

[0009] First Embodiment To facilitate understanding of the first embodiment of the present disclosure, a definition of a mathematical optimization problem will be described. A mathematical optimization problem is composed of a mathematical expression including an objective function and a constraint, and is expressed as in the following equation 1. In this case, the objective function (obj) is an index to be minimized (or maximized), and the constraint (constr) represents a condition that must be observed. If the constraint is satisfied, constr = 0, and if not satisfied, it is a positive value (a negative value in the case of a maximization problem).

[0010] Here, as an example of formulating the above-mentioned mathematical optimization problem, there is a QUBO (Quadratic Unconstrained Binary Optimization) formulation as described in Patent Document 1, and the mathematical equation of the mathematical optimization problem shown in the above-mentioned Equation 1 can be formulated into a QUBO formulation and expressed as a model such as Equation 2. This makes it possible to solve the optimization problem of finding a combination of x that minimizes a function f(x) expressed by a variable x of 0 / 1.

[0011] Next, a first embodiment of the present disclosure will be described with reference to the drawings. Note that the drawings may be relevant to any embodiment.

[0012] [Configuration] The model generation device 10 in this embodiment generates a model (formulated mathematical optimization problem) in which a mathematical expression representing a mathematical optimization problem to be solved is formulated. In particular, in this embodiment, the model generation device 10 stores in advance a model in which a mathematical expression representing a mathematical optimization problem is formulated, and when the mathematical optimization problem is changed, the model generation device 10 generates a formulated model whose content is changed to correspond to the change in the problem.

[0013] The model generation device 10 is composed of one or more information processing devices each including a calculation device and a storage device. As shown in FIG. 1, the model generation device 10 includes a determination unit 11 and an update unit 12. The functions of the determination unit 11 and the update unit 12 can be realized by the calculation device executing a program for realizing each function stored in the storage device. The model generation device 10 also includes a model storage unit 13. The model storage unit 13 is composed of a storage device. Each component will be described in detail below.

[0014] The model storage unit 13 stores a model that formulates mathematical expressions representing a mathematical optimization problem to be solved. In this embodiment, the traveling salesman problem shown in FIG. 2 (2-1) will be described as an example of a mathematical optimization problem. The traveling salesman problem is an optimization problem in which, when the distances between cities are given, a route that visits all cities once is found to have the shortest travel distance. The example in FIG. 2 (2-1) shows a case in which a route visits four cities (A-D).

[0015] The traveling salesman problem is expressed by a mathematical formula including an objective function (obj) term and a constraint (constr) term, as shown in the following formula 3. In this case, the objective function (obj) is an index to be minimized, which is the sum of the inter-city distances d. The constraint (constr) is a condition that must be observed, and two are set here. Specifically, the first constraint (constr) 1 ) is to visit the same city only once, and the second constraint ( 2 ) means that only one city is visited at a time. If the constraint is satisfied, constr=0, and if not, it is a positive value.

[0016] The mathematical equations for the above-mentioned mathematical optimization problem are formulated in a predetermined manner and stored in the model storage unit 13. In this embodiment, the above-mentioned traveling salesman problem shown in FIG. 2 is modeled using the QUBO (Quadratic Unconstrained Binary Optimization) formulation and stored. Specifically, the QUBO-formulated model of the traveling salesman problem is expressed by the following equation 4 and equation 5, which is an expansion of equation 4.

[0017] Here, the above formula 4 is also shown in Figure 2 (2-3), but the first term on the right side corresponds to the QUBO formulation model of the objective function, the second term corresponds to the QUBO formulation model of the first constraint condition, and the third term corresponds to the QUBO formulation model of the second constraint condition. In formula 4, as shown in Figure 2 (2-2), n is the number of cities, and 2 0 / 1 variables x t,v When visiting city v at time t, we prepare a variable x t,v = 1. As a result, when the first and second constraint conditions are satisfied, the second and third terms on the right side of Equation 4 become 0, and in the objective function of the first term, x t,v = 1, x t+1,v When = 1, the intercity distance d v,w are added together.

[0018] Then, by solving equation 5, which is an expansion of equation 4, that is, equation (2-4) in Figure 2, it is possible to solve the optimization problem of finding the combination of x that minimizes the function f(x) expressed by the variable x of 0 / 1.

[0019] Here, in this embodiment, it is assumed that the model storage unit 13 stores one of the QUBO formulation models expressed in two different formats. First, in a first example, it is assumed that the QUBO formulation model after expansion shown in the above-mentioned equation (5) is stored in the model storage unit 13. That is, in the first example, a model corresponding to the entire mathematical expression of the mathematical optimization problem shown in equation (5) is stored, and such a model is referred to as the "entire QUBO before change." It is assumed that the QUBO formulation model in this first example does not have QUBO formulation models (sub-models) corresponding to each of the multiple terms included in the mathematical expression of the mathematical optimization problem.

[0020] In the second example, as shown in FIG. 5 (5-1), a QUBO-formulated model represented by combining sub-models in which each term of the mathematical equation of the mathematical optimization problem is QUBO-formulated is stored in the model storage unit 13. Specifically, the model storage unit 13 in the second example stores, as sub-models, a QUBO-formulated model of the objective function, a QUBO-formulated model of the first constraint, and a QUBO-formulated model of the second constraint. Note that, as shown in FIG. 5 (5-1), hereinafter, the sub-model corresponding to the first term on the right side of the mathematical equation of the mathematical optimization problem shown in Equation 4 will be referred to as the "QUBO of obj before change", the model corresponding to the second term will be referred to as the "QUBO of constr1 before change", and the model corresponding to the third term will be referred to as the "QUBO of constr2 before change".

[0021] The determination unit 11 receives change information indicating the content of the change to the mathematical optimization problem described above. For example, as shown in Figures 3(3-1) and 3(3-2), the distance d between some cities, here between cities A and D, A,DThe determination unit 11 then receives change information indicating that the distance between cities has been changed from "3" to "8." The determination unit 11 then identifies the term in the mathematical equation corresponding to the changed portion of the mathematical optimization problem based on the content of the change information, and determines a formulation method for formulating the content of the term, as described below, based on the formulated model stored in the model storage unit 13. In this case, since the distance between cities has been changed, the objective function is the corresponding term, and therefore determines a formulation method for generating a formulated sub-model corresponding to the term in the objective function from the formulated model stored in the model storage unit 13.

[0022] Specifically, the determination unit 11 reads the QUBO formulation model corresponding to the mathematical optimization problem to be changed from the model storage unit 13, and determines a formulation method for the terms of the mathematical equation corresponding to the change in the mathematical optimization problem according to the format of the stored QUBO formulation model. In this case, in the first example described above, that is, when a pre-change overall QUBO, which is a model corresponding to the entire mathematical equation, is stored in the model storage unit 13, the determination unit 11 determines a first formulation method, which is a method of generating a formulated sub-model related to the term corresponding to the change using the pre-change overall QUBO. The first formulation method, as described below, is a method of generating a QUBO for a pre-change obj, which is a sub-model that formulates the terms of the objective function corresponding to the change in the problem, and a QUBO for a post-change obj, which is a sub-model (post-change sub-model) that formulates the content according to the change in the problem, from the expanded pre-change overall QUBO as shown in Equation 5.

[0023] On the other hand, in the second example described above, that is, when the model storage unit 13 stores a QUBO formulation model consisting of a combination of QUBOs, which are sub-models corresponding to each term of the formula, the determination unit 11 determines to use the second formulation method, which is a method of generating a formulated sub-model related to the term corresponding to the change using the QUBO formulation model represented by the combination of each QUBO. The second formulation method, as will be described later, is a method of generating a QUBO of a pre-change obj, which is a sub-model that formulates a term of the objective function corresponding to the change in the problem, and a QUBO of a post-change obj, which is a sub-model (post-change sub-model) that formulates the content according to the change in the problem, from a QUBO formulation model represented by the combination of each sub-model in which each term of the formula shown in Equation 4 is QUBO-formulated.

[0024] The update unit 12 converts the terms of the mathematical equation corresponding to the changed parts of the mathematical optimization problem using the determined formulation method, and updates the overall model to correspond to the change in the problem. Specifically, the update unit 12 first generates, using the determined formulation method, a formulated sub-model (pre-change sub-model (pre-change formulation information)) corresponding to the objective function, which is a term corresponding to the change in the problem, and a formulated sub-model (post-change sub-model (post-change formulation information)) corresponding to the objective function whose content corresponds to the change in the problem.

[0025] Here, we will explain the first example described above, that is, a case where a pre-change overall QUBO, which is a model corresponding to the entire mathematical formula, is stored in the model storage unit 13, and the above-mentioned determination unit 11 has determined the first formulation method. When the first formulation method is determined, the update unit 12 calculates a formulated submodel corresponding to the objective function from the pre-change overall QUBO, as shown in FIG. 4 (4-1), and sets it as the QUBO of the pre-change obj. For example, the update unit 12 identifies element locations among the weight coefficients (matrix) that constitute the pre-change overall QUBO that may be related to the changed parameters of the mathematical optimization problem, and calculates the QUBO of the pre-change obj from such identified element locations. However, the update unit 12 may calculate the QUBO of the pre-change obj by any method using change information from the pre-change overall QUBO.

[0026] Then, as shown in FIG. 4 (4-1), the update unit 12 further calculates a submodel (changed submodel) that formulates the content corresponding to the change in the problem based on the change information from the pre-change submodel, and sets it as the QUBO of the post-change obj. For example, the update unit 12 calculates the QUBO of the post-change obj by changing the element locations that may be related to the changed parameters of the mathematical optimization problem among the weight coefficients (matrix) that make up the QUBO of the pre-change obj. However, the update unit 12 may calculate the QUBO of the post-change obj by any method using the change information from the QUBO of the pre-change obj.

[0027] Next, the second example described above, that is, a case where the model storage unit 13 stores each QUBO, which is a submodel corresponding to each term of a mathematical formula, and the determination unit 11 determines the second formulation method described above, will be described. When the second formulation method is determined, the update unit 12 identifies a submodel among the submodels corresponding to the change information and sets it as the QUBO of the pre-change obj. For example, as shown in FIG. 5 (5-1), the determination unit 11 sets the submodel itself that may be related to the changed parameters of the mathematical optimization problem as the QUBO of the pre-change obj. However, the update unit 12 may calculate the QUBO of the pre-change obj by any method using the change information from each QUBO stored in the model storage unit 13.

[0028] Then, as shown in Figure 5 (5-2), the update unit 12 further calculates a submodel (changed submodel) that formulates the content corresponding to the change in the problem based on the change information from the pre-change submodel, and sets it as the QUBO of the post-change obj. For example, the update unit 12 calculates the QUBO of the post-change obj by changing the element locations that may be related to the changed parameters of the mathematical optimization problem among the weight coefficients (matrix) that make up the QUBO of the pre-change obj. However, the update unit 12 may calculate the QUBO of the post-change obj by any method using the change information from the QUBO of the pre-change obj.

[0029] Furthermore, the update unit 12 updates the model by replacing the pre-change sub-model with the post-change sub-model among the pre-change model stored in the model storage unit 13. In this embodiment, the update unit 12 updates the overall model by replacing the sub-model of the objective function corresponding to the change with a sub-model formulated according to the change in the problem, as shown in Figures 3 (3-3) and (3-4).

[0030] Here, in the first example described above, that is, in the case where the pre-change overall QUBO, which is a model corresponding to the entire mathematical expression, is stored in the model storage unit 13, and when the first formulation method is determined, the update unit 12 subtracts the QUBO of the pre-change obj from the pre-change overall QUBO, and then adds the QUBO of the post-change obj' to generate the post-change overall QUBO, as shown in Figure 4 (4-2). This makes it possible to generate a post-change overall QUBO that reflects the difference between the QUBO of the pre-change obj and the QUBO of the post-change obj'.

[0031] In addition, in the second example described above, that is, in the case where each QUBO, which is each sub-model corresponding to each term of the mathematical expression, is stored in the model storage unit 13, when the second formulation method is determined, the update unit 12 replaces the QUBO of the pre-change obj with the QUBO of the post-change obj', as shown in FIG. 4 (5-2), and adds each QUBO corresponding to another term (pre-change constr 1 QUBO and pre-change constr 2 The QUBOs are merged to generate the modified overall QUBO.

[0032] Here, another method for generating a QUBO-formulated model when a problem is changed, which is not the method according to this embodiment, is shown in Figure 6. As shown in this figure, when a mathematical optimization problem consisting of an objective function and constraints is changed, the formula f is formulated, expanded, and organized from scratch to generate a QUBO-formulated model. Therefore, when the mathematical optimization problem is changed, if a method other than the method according to this embodiment is used, there is a problem in that it takes a long time to generate a model and even longer to find a solution.

[0033] In contrast, in this embodiment, as described above, the QUBO of the term corresponding to the change in the formula is replaced with a QUBO that contains the change, which allows a QUBO to be generated for the entire formula corresponding to the change in the problem in a short time.

[0034] [Operation] Next, the operation of the above-described model generating device 10 will be described. Here, as described above, the explanation will be made separately depending on the data structure of the QUBO formulation model stored in the model storage unit 13. First, the first example described above, that is, the case where the pre-change overall QUBO corresponding to the entire mathematical formula is stored in the model storage unit 13, will be explained mainly with reference to Figures 4 and 7. Also, at this time, it is assumed that there is a change in the terms of the objective function of the mathematical optimization problem, as described above.

[0035] The model generating device 10 determines the first formulation method because the QUBO formulation model stored in the model storage unit 13 is the pre-change entire QUBO corresponding to the entire mathematical expression (step S1 in FIG. 7). Then, the model generating device 10 updates the model in accordance with the determined first formulation method.

[0036] Specifically, the model generation device 10 calculates a sub-model by formulating an objective function corresponding to the part of the problem where the problem has been changed from the entire pre-change QUBO, as shown in Fig. 4 (4-1), and sets this as the QUBO of the pre-change obj. Furthermore, the model generation device 10 calculates a sub-model (post-change sub-model) by formulating the content corresponding to the change in the problem from the pre-change sub-model based on the change information, as shown in Fig. 4 (4-1), and sets this as the QUBO of the post-change obj (step S2 in Fig. 7).

[0037] Next, as shown in FIG. 4 (4-2), the model generating device 10 subtracts the QUBO of the pre-change obj from the pre-change overall QUBO stored in the model storage unit 13 (step S3 in FIG. 7). Next, as shown in FIG. 4 (4-2), the model generating device 10 adds the QUBO of the post-change obj' to the pre-change overall QUBO from which the QUBO of the pre-change obj has been subtracted (step S4 in FIG. 7). This makes it possible to generate a post-change overall QUBO that reflects the difference between the QUBO of the pre-change obj and the QUBO of the post-change obj' from the pre-change overall QUBO.

[0038] Next, the second example described above, that is, a case where each QUBO corresponding to each term of a mathematical formula is stored in the model storage unit 13, will be described mainly with reference to Figures 5 and 8. In this case, it is assumed that there is a change in the terms of the objective function of the mathematical optimization problem, as described above.

[0039] The model generating device 10 determines the second formulation method because the QUBO formulation model stored in the model storage unit 13 has each QUBO corresponding to each term of the mathematical formula (step S11 in FIG. 8). Then, the model generating device 10 updates the model in accordance with the determined second formulation method.

[0040] Specifically, when the model storage unit 13 stores QUBOs, which are sub-models corresponding to each term of the formula, as shown in FIG. 5 (5-1), the model generation device 10 first calculates the QUBO of the post-change obj', which is the sub-model corresponding to the change in the problem, from the QUBO of the pre-change obj, which is the sub-model corresponding to the change in the problem, as shown in FIG. 5 (5-2) (step S12 in FIG. 8).

[0041] Next, the model generating device 10 replaces the QUBO of the pre-change obj with the QUBO of the changed obj' (step S13 in FIG. 8), as shown in FIG. 5 (5-2). Then, the model generating device 10 merges each QUBO corresponding to another term into the replaced QUBO of the changed obj', as shown in FIG. 5 (5-3), to generate a changed overall QUBO (step S14 in FIG. 8).

[0042] In the second example described above, the model storage unit 13 stores each QUBO corresponding to each term of the formula separately. However, each QUBO corresponding to a plurality of terms may be combined and stored as a single QUBO. In this case, as shown in FIG. 9 (9-1), the model storage unit 13 may store a QUBO corresponding to the objective function and a QUBO corresponding to the constraints separately. In other words, although there are two constraints, the QUBOs corresponding to these two constraints may be combined and stored as a single QUBO. In this case, as described above, when a problem change corresponds to the objective function, as shown in FIG. 9 (9-2), the QUBO of the pre-change obj is replaced with the QUBO of the post-change obj', and as shown in FIG. 5 (9-3), the replaced QUBO of the post-change obj' is merged with the QUBO corresponding to the combined constraints to generate the entire post-change QUBO.

[0043] Although the above example illustrates a case where the term in the mathematical formula corresponding to the change in the problem is a term of the objective function, the term corresponding to the change in the problem may also be a term of the constraint. In this case, as described above, the submodel of the constraint term corresponding to the change in the problem is replaced with the changed submodel, and the model corresponding to the entire mathematical formula is updated.

[0044] In addition, although the above example illustrates a case where a mathematical expression representing a mathematical optimization problem includes an objective function and a constraint, the present disclosure can also be applied to problems expressed by a mathematical expression including multiple terms of only one of the two, such as a problem called Sudoku, which is made up of multiple constraint terms.

[0045] Furthermore, although the above example illustrates the case where the mathematical optimization problem is formulated using QUBO, it may be formulated using other methods, and the present disclosure is applicable to models and sub-models formulated using any method.

[0046] The present disclosure can be applied to any type of mathematical optimization problem. For example, in a problem of creating a logistics delivery plan, when optimizing a delivery order to minimize travel distances while satisfying a delivery deadline constraint, the present disclosure can also handle situations where the delivery destination is changed. As another example, in a problem of creating a work shift plan, when optimizing to minimize the number of required personnel while satisfying a constraint on the maximum number of consecutive shifts, the present disclosure can also handle situations where the number of personnel is changed.

[0047] Second Embodiment Next, a second embodiment of the present disclosure will be described with reference to the drawings. This embodiment shows an outline of the configuration of the model generation device described in the above embodiment. Note that Figures 10 and 11 are diagrams for explaining the configuration, and these diagrams may be relevant to any of the embodiments.

[0048] First, the hardware configuration of the model generating device 100 will be described with reference to Fig. 10. The model generating device 100 is configured as a general information processing device, and is equipped with the following hardware configuration, for example: - CPU (Central Processing Unit) 101 (arithmetic unit) - ROM (Read Only Memory) 102 (storage device) - RAM (Random Access Memory) 103 (storage device) - Programs 104 loaded into RAM 103 - Storage device 105 storing programs 104 - Drive device 106 for reading and writing data from / to a storage medium 110 external to the information processing device - Communication interface 107 for connecting to a communication network 111 external to the information processing device - Input / output interface 108 for inputting and outputting data - Bus 109 for connecting the various components

[0049] 10 shows an example of the hardware configuration of the information processing device that is the model generation device 100, and the hardware configuration of the information processing device is not limited to the above-described case. For example, the information processing device may be configured with a part of the above-described configuration, such as not including the drive device 106. Furthermore, instead of the above-described CPU, the information processing device may use a GPU (Graphics Processing Unit), a DSP (Digital Signal Processor), an MPU (Micro Processing Unit), an FPU (Floating point number Processing Unit), a PPU (Physics Processing Unit), a TPU (Tensor Processing Unit), a quantum processor, a microcontroller, or a combination thereof.

[0050] The model generating device 100 can be equipped with a determination unit 121 and an update unit 122 shown in FIG. 11 by having the CPU 101 acquire and execute the program group 104. The program group 104 is stored in advance in the storage device 105 or the ROM 102, for example, and is loaded into the RAM 103 and executed by the CPU 101 as needed. The program group 104 may be supplied to the CPU 101 via the communication network 111, or may be stored in advance in the storage medium 110, with the drive device 106 reading out the programs and supplying them to the CPU 101. However, the determination unit 121 and the update unit 122 described above may be constructed using dedicated electronic circuits for realizing such means.

[0051] When a change is made to a mathematical optimization problem expressed by a mathematical expression having multiple terms, the determining unit 121 determines a formulation method for a term corresponding to the change based on the formulated mathematical optimization problem. The updating unit converts the term corresponding to the change using the determined formulation method to update the formulated mathematical optimization problem.

[0052] By being configured as described above, the present disclosure can reduce the time required to create a model and the time required to find a solution, even when the mathematical optimization problem is changed.

[0053] In addition, at least one of the functions of the above-mentioned determination unit 121 and update unit 122 may be executed by an information processing device installed and connected anywhere on the network, that is, they may be executed by so-called cloud computing.

[0054] The above-described program can be stored and supplied to a computer using various types of non-transitory computer-readable media. Non-transitory computer-readable media include various types of tangible storage media. Examples of non-transitory computer-readable media include magnetic recording media (e.g., flexible disks, magnetic tapes, hard disk drives), magneto-optical recording media (e.g., magneto-optical disks), CD-ROMs (Read Only Memory), CD-Rs, CD-RWs, and semiconductor memories (e.g., mask ROMs, PROMs (Programmable ROMs), EPROMs (Erasable PROMs), flash ROMs, and RAMs (Random Access Memory)). The program can also be supplied to a computer by various types of transitory computer-readable media. Examples of transitory computer-readable media include electrical signals, optical signals, and electromagnetic waves. The transitory computer-readable media can be supplied to a computer via wired communication paths such as electric wires and optical fibers, or via wireless communication paths.

[0055] Although the present disclosure has been described above with reference to the above-described embodiments, the present disclosure is not limited to the above-described embodiments. Various modifications that can be understood by those skilled in the art can be made to the configuration and details of the present disclosure within the scope of the present disclosure. Furthermore, each of the above-described embodiments can be combined with other embodiments as appropriate.

[0056] <Supplementary Notes> Some or all of the above embodiments can also be described as in the following supplementary notes. Below, an outline of the configurations of a model generation device, a model generation method, and a program according to the present disclosure will be described. However, the present disclosure is not limited to the following configurations. (Supplementary Note 1) A model generation device comprising: a determination unit that, when a change is made to a mathematical optimization problem expressed by a mathematical expression having a plurality of terms, determines a formulation method for a term corresponding to the change based on the formulated mathematical optimization problem; and an update unit that converts the term corresponding to the change using the determined formulation method to update the formulated mathematical optimization problem. (Supplementary Note 2) The model generation device according to Supplementary Note 1, wherein the update unit generates pre-change formulation information and post-change formulation information for the term corresponding to the change based on the formulated mathematical optimization problem using the determined formulation method, and updates the formulated mathematical optimization problem based on the pre-change formulation information and the post-change formulation information. (Supplementary Note 3) The model generation device according to Supplementary Note 2, wherein the update unit updates the formulated mathematical optimization problem by replacing the pre-change formulation information with the changed formulation information for the formulated mathematical optimization problem. (Supplementary Note 4) The model generation device according to Supplementary Note 1, wherein the determiner determines the formulation method depending on whether the formulated mathematical optimization problem has formulation information corresponding to each of a plurality of terms included in the mathematical expression. (Supplementary Note 5) The model generation device according to Supplementary Note 4, wherein the formulated mathematical optimization problem is formulated as an entire mathematical expression, and the update unit generates pre-change formulation information and changed formulation information for a term corresponding to the change from the formulated mathematical optimization problem, and updates the formulated mathematical optimization problem based on the pre-change formulation information and the changed formulation information. (Supplementary Note 6) The model generation device according to Supplementary Note 5, wherein the update unit updates the formulated mathematical optimization problem by subtracting the formulation information before the change from the formulated mathematical optimization problem and adding the formulation information after the change.(Supplementary Note 7) The model generation device according to Supplementary Note 4, wherein the formulated mathematical optimization problem is expressed by a combination of formulation information corresponding to each of a plurality of terms included in the mathematical expression, and the updating unit sets formulation information corresponding to the changed term in the formulated mathematical optimization problem as pre-change formulation information, generates changed formulation information from the pre-change formulation information, and updates the formulated mathematical optimization problem based on the pre-change formulation information and the changed formulation information. (Supplementary Note 8) The model generation device according to Supplementary Note 7, wherein the updating unit updates the formulated mathematical optimization problem by replacing the pre-change formulation information in the formulated mathematical optimization problem with the changed formulation information. (Supplementary Note 9) The model generation device according to Supplementary Note 1, wherein the mathematical expression is configured to have a plurality of terms that represent at least one of a term that represents an objective function in the mathematical optimization problem and a term that represents a constraint in the mathematical optimization problem. (Supplementary Note 10) The model generation device according to Supplementary Note 1, wherein the formulation is a QUBO (Quadratic Unconstrained Binary Optimization) formulation. (Supplementary Note 11) A model generation method, when a change is made to a mathematical optimization problem expressed by a mathematical expression having a plurality of terms, determining a formulation method for a term corresponding to the change based on the formulated mathematical optimization problem, and converting the term corresponding to the change using the determined formulation method to update the formulated mathematical optimization problem. (Supplementary Note 12) The model generation method according to Supplementary Note 11, generating pre-change formulation information and post-change formulation information for the term corresponding to the change based on the formulated mathematical optimization problem using the determined formulation method, and updating the formulated mathematical optimization problem based on the pre-change formulation information and the post-change formulation information. (Supplementary Note 13) The model generation method according to Supplementary Note 12, further comprising: replacing the pre-change formulation information with the post-change formulation information for the formulated mathematical optimization problem, thereby updating the formulated mathematical optimization problem.(Supplementary Note 14) The model generation method according to Supplementary Note 11, wherein the formulation method is determined depending on whether the formulated mathematical optimization problem has formulation information corresponding to each of a plurality of terms included in the mathematical expression. (Supplementary Note 15) A computer-readable storage medium storing a program causing a computer to execute the following processes: when a change is made to a mathematical optimization problem expressed by a mathematical expression having a plurality of terms, determine a formulation method for a term corresponding to the change based on the formulated mathematical optimization problem, and convert the term corresponding to the change using the determined formulation method to update the formulated mathematical optimization problem.

[0057] REFERENCE SIGNS LIST 10 Model generating device 11 Determination unit 12 Update unit 13 Model storage unit 100 Model generating device 101 CPU 102 ROM 103 RAM 104 Program group 105 Storage device 106 Drive device 107 Communication interface 108 Input / output interface 109 Bus 110 Storage medium 111 Communication network 121 Determination unit 122 Update unit

Claims

1. A model generation device comprising: a determination unit that, when a change is made to a mathematical optimization problem expressed by a mathematical expression having a plurality of terms, determines a formulation method for a term corresponding to the change based on the formulated mathematical optimization problem; and an update unit that converts the term corresponding to the change using the determined formulation method to update the formulated mathematical optimization problem.

2. A model generating device as described in claim 1, wherein the update unit generates pre-change formulation information and post-change formulation information of a term corresponding to the change based on the formulated mathematical optimization problem using the determined formulation method, and updates the formulated mathematical optimization problem based on the pre-change formulation information and the post-change formulation information.

3. A model generating device according to claim 2, wherein the update unit replaces the formulation information before the change with the formulation information after the change for the formulated mathematical optimization problem, thereby updating the formulated mathematical optimization problem.

4. A model generating device as described in claim 1, wherein the determination unit determines the formulation method depending on whether the formulated mathematical optimization problem has formulation information corresponding to each of a plurality of terms included in the mathematical expression.

5. A model generating device as described in claim 4, wherein the formulated mathematical optimization problem is formulated as an entire mathematical expression, and the update unit generates pre-change formulation information and post-change formulation information of a term corresponding to the change from the formulated mathematical optimization problem, and updates the formulated mathematical optimization problem based on the pre-change formulation information and the post-change formulation information.

6. A model generating device according to claim 5, wherein the update unit updates the formulated mathematical optimization problem by subtracting the formulation information before the change from the formulated mathematical optimization problem and adding the formulation information after the change.

7. A model generating device according to claim 4, wherein the formulated mathematical optimization problem is expressed by combining formulation information corresponding to each of a plurality of terms included in the mathematical expression, and the update unit sets the formulation information corresponding to the changed term in the formulated mathematical optimization problem as pre-change formulation information, generates post-change formulation information from the pre-change formulation information, and updates the formulated mathematical optimization problem based on the pre-change formulation information and the post-change formulation information.

8. A model generating device according to claim 7, wherein the update unit updates the formulated mathematical optimization problem by replacing the pre-change formulation information in the formulated mathematical optimization problem with the post-change formulation information.

9. A model generating device according to claim 1, wherein the mathematical formula is configured to have at least one of a term representing an objective function in a mathematical optimization problem and a term representing a constraint condition in the mathematical optimization problem, and a plurality of terms of either one of these.

10. The model generating apparatus according to claim 1, wherein the formulation is a Quadratic Unconstrained Binary Optimization (QUBO) formulation.

11. A model generation method, when a change is made to a mathematical optimization problem expressed by a mathematical expression having a plurality of terms, determining a formulation method for a term corresponding to the change based on the formulated mathematical optimization problem, and converting the term corresponding to the change using the determined formulation method to update the formulated mathematical optimization problem.

12. A model generation method according to claim 11, comprising: generating pre-change formulation information and post-change formulation information of a term corresponding to the change based on the formulated mathematical optimization problem using the determined formulation method; and updating the formulated mathematical optimization problem based on the pre-change formulation information and the post-change formulation information.

13. A model generation method according to claim 12, further comprising: replacing the formulation information before the change with the formulation information after the change for the formulated mathematical optimization problem, thereby updating the formulated mathematical optimization problem.

14. A model generation method according to claim 11, comprising determining the formulation method depending on whether or not the formulated mathematical optimization problem has formulation information corresponding to each of a plurality of terms included in the mathematical expression.

15. A computer-readable storage medium storing a program for causing a computer to execute a process of, when a change is made to a mathematical optimization problem expressed by a mathematical expression having a plurality of terms, determining a formulation method for a term corresponding to the change based on the formulated mathematical optimization problem, and converting the term corresponding to the change using the determined formulation method to update the formulated mathematical optimization problem.

Citation Information

Patent Citations

  • Data privacy protection in cloud-based optimization system

    JP2021163474A