Optimization device, optimization method, and program

The optimization device enhances quantization accuracy by transforming continuous variables into binary candidates and updating transformation rules, addressing the issue of accuracy loss when no discretization point matches the variable.

WO2025224810A1PCT designated stage Publication Date: 2025-10-30MITSUBISHI ELECTRIC CORP
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
PCT/JP2024/015794
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-04-23
Publication Date
2025-10-30

AI Technical Summary

Technical Problem

Existing optimization devices face a deterioration in quantization accuracy when there is no discretization point that matches a continuous variable.

Method used

An optimization device that includes a variable transformation unit to transform a continuous variable into a binary variable candidate solution, a variable inverse transformation unit to convert back to a continuous variable, an evaluation value calculation unit to calculate the evaluation value, and a transformation rule update unit to update the transformation rules based on the evaluation value, thereby preventing quantization accuracy deterioration.

Benefits of technology

The device effectively prevents quantization accuracy deterioration by transforming and updating rules, even when there is no matching discretization point, improving quantization accuracy.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2024015794_30102025_PF_FP_ABST
    Figure JP2024015794_30102025_PF_FP_ABST
Patent Text Reader

Abstract

This optimization device is configured to comprise: a variable transformation part (1) that acquires a first continuous variable, which is represented as either a real number value or an integer value, and transforms the first continuous variable into a candidate solution, which is a binary variable; a variable inverse transformation part (2) that inversely transforms the candidate solution into a second continuous variable; an evaluation value calculation part (3) that calculates an evaluation value of the second continuous variable; and a transformation rule update part (4) that updates, on the basis of the evaluation value, each of the rule of transformation into a candidate solution performed by the variable transformation part 1 and the rule of inverse transformation into a second continuous variable performed by the variable inverse transformation part 2.
Need to check novelty before this filing date? Find Prior Art

Description

Optimization device, optimization method, and program

[0001] The present disclosure relates to an optimization device, an optimization method, and a program.

[0002] There is an optimization device that quantizes a continuous variable, which is a variable expressed as either a real value or an integer value. For example, Patent Document 1 discloses an optimization device that quantizes a continuous variable by identifying a discretization point that is closest to the continuous variable among a plurality of discretization points. The plurality of discretization points are points into which the domain of the continuous variable is evenly divided.

[0003] Japanese Patent Application Laid-Open No. 2020-113190

[0004] The optimization device disclosed in Patent Document 1 has a problem in that, if there is no discretization point among the plurality of discretization points that matches a continuous variable, the quantization accuracy deteriorates.

[0005] The present disclosure has been made to solve the above-mentioned problems, and aims to provide an optimization device that can prevent deterioration of quantization accuracy when there is no discretization point that matches a continuous variable.

[0006] The optimization device according to the present disclosure includes a variable transformation unit that acquires a first continuous variable, which is a variable expressed as either a real value or an integer value, and transforms the first continuous variable into a candidate solution of a binary variable; a variable inverse transformation unit that inversely transforms the candidate solution into a second continuous variable; an evaluation value calculation unit that calculates an evaluation value of the second continuous variable; and a transformation rule update unit that updates, based on the evaluation value, the transformation rule for the candidate solution used by the variable transformation unit and the inverse transformation rule for the second continuous variable used by the variable inverse transformation unit.

[0007] According to the present disclosure, it is possible to prevent deterioration of quantization accuracy when there is no discretization point that matches a continuous variable.

[0008] FIG. 1 is a configuration diagram showing an optimization device according to a first embodiment. FIG. 2 is a hardware configuration diagram showing hardware of the optimization device according to the first embodiment. FIG. 3 is a hardware configuration diagram of a computer when the optimization device is realized by software, firmware, or the like. FIG. 4 is a flowchart showing an optimization method, which is a processing procedure of the optimization device shown in FIG. 1. FIG. 5 is an explanatory diagram showing a plurality of discretization processes by a variable transformation unit 1. k FIG. 10 is an explanatory diagram showing a process of moving (k=1, . . . , K).

[0009] In order to explain the present disclosure in more detail, embodiments of the present disclosure will be described below with reference to the accompanying drawings.

[0010] Embodiment 1. Fig. 1 is a configuration diagram showing an optimization device according to embodiment 1. Fig. 2 is a hardware configuration diagram showing the hardware of the optimization device according to embodiment 1. The optimization device shown in Fig. 1 includes a variable transformation unit 1, a variable inverse transformation unit 2, an evaluation value calculation unit 3, and a transformation rule update unit 4.

[0011] The variable transformation unit 1 is realized by, for example, a variable transformation circuit 11 shown in FIG. 2. The variable transformation unit 1 includes an encoder 1a, a model estimator 1b, and a sampler 1c. The variable transformation unit 1 acquires a first continuous variable x, which is a variable expressed as either a real value or an integer value. The variable transformation unit 1 converts the first continuous variable x into a binary variable candidate solution z t The first continuous variable x is transformed into a binary variable candidate solution z t The variable transformation unit 1 transforms the binary variable candidate solution z t is output to the variable inverse transformation unit 2.

[0012] The encoder 1a acquires a first continuous variable x from a storage unit 3b (described later). The encoder 1a discretizes the first continuous variable x and outputs a discrete value z, which is the discretization result of the first continuous variable x, to the model estimator 1b. Specifically, the encoder 1a calculates the distances between each of the multiple discretization points and the first continuous variable x. Based on the distances between the multiple discretization points and the first continuous variable x, the encoder 1a determines the shortest distance L kThe discretization point s k The solution z indicating the following is output to the model estimator 1b.

[0013] The model estimator 1b is located at the shortest distance L k The discretization point s k The model estimator 1b estimates a Q matrix of a surrogate model based on the solution z and outputs the Q matrix to the sampler 1c. The sampler 1c acquires the Q matrix from the model estimator 1b. The sampler 1c executes a Bayesian Optimization (BO) algorithm using the Q matrix to obtain a candidate solution z of a binary variable. t The sampler 1c calculates a binary variable candidate solution z t is output to the variable inverse transformation unit 2.

[0014] The variable inverse transformation unit 2 is realized by, for example, the variable inverse transformation circuit 12 shown in FIG. t The variable inverse transformation unit 2 obtains the candidate solution z t the second continuous variable x t and transform it back to the second continuous variable x t is output to the evaluation value calculation unit 3. Candidate solution z t the second continuous variable x t The process of inversely transforming the image into the image is the second process.

[0015] The evaluation value calculation unit 3 is realized by, for example, the evaluation value calculation circuit 13 shown in FIG. 2. The evaluation value calculation unit 3 includes an evaluator 3a and a storage unit 3b. The evaluation value calculation unit 3 receives the second continuous variable x t The evaluation value calculation unit 3 obtains the second continuous variable x t The evaluation value y t Calculate the second continuous variable x t The evaluation value y t The process of calculating is the third process.

[0016] The evaluator 3a receives the second continuous variable x from the variable inverse transformer 2. t The evaluator 3a obtains the second continuous variable x using the evaluation function. t The evaluation value y tThe estimator 3a calculates the second continuous variable x t and the evaluation value y t The memory unit 3b outputs the second continuous variable x t and the evaluation value y t Each of the above is memorized.

[0017] The conversion rule update unit 4 is realized by, for example, a conversion rule update circuit 14 shown in FIG. t Based on this, the candidate solution z t and the second continuous variable x by the variable inverse transformation unit 2 t The candidate solution z t and the second continuous variable x by the variable inverse transformation unit 2 t The process of updating each of the inverse transformation rules to is the fourth process.

[0018] In Fig. 1, it is assumed that each of the components of the optimization device, namely, a variable transformation unit 1, a variable inverse transformation unit 2, an evaluation value calculation unit 3, and a transformation rule update unit 4, is realized by dedicated hardware as shown in Fig. 2. That is, each of the variable transformation circuit 11, the variable inverse transformation circuit 12, the evaluation value calculation circuit 13, and the transformation rule update circuit 14 of the optimization device corresponds to, for example, a single circuit, a composite circuit, a processor that executes processing based on instructions from a program, a processor that executes processing based on instructions from a parallel program, an ASIC (Application Specific Integrated Circuit), an FPGA (Field-Programmable Gate Array), or a combination of these.

[0019] The components of the optimization device are not limited to those realized by dedicated hardware, and the optimization device may be realized by software, firmware, or a combination of software and firmware. The software or firmware is stored in the memory of a computer as a program. The computer refers to hardware that executes a program, and includes, for example, a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a central processing unit, a processing unit, an arithmetic unit, a microprocessor, a microcomputer, a processor, or a DSP (Digital Signal Processor).

[0020] 3 is a hardware configuration diagram of a computer when the optimization device is realized by software, firmware, etc. When the optimization device is realized by software, firmware, etc., programs for causing a computer to execute the respective processing procedures of the variable transformation unit 1, the variable inverse transformation unit 2, the evaluation value calculation unit 3, and the transformation rule update unit 4 are stored in memory 21. Then, a processor 22 of the computer executes the programs stored in memory 21.

[0021] 2 shows an example in which each of the components of the optimization device is realized by dedicated hardware, while Fig. 3 shows an example in which the optimization device is realized by software, firmware, etc. However, this is merely an example, and some of the components in the optimization device may be realized by dedicated hardware, and the remaining components may be realized by software, firmware, etc.

[0022] Next, the operation of the optimization device shown in Fig. 1 will be described. Fig. 4 is a flowchart showing an optimization method, which is a processing procedure of the optimization device shown in Fig. 1. First, the variable transformation unit 1 acquires a first continuous variable x from, for example, an external source. The variable transformation unit 1 transforms the first continuous variable x into a binary variable candidate solution z t The variable transformation unit 1 transforms the binary variable candidate solution z tis output to the variable inverse transformation unit 2.

[0023] Hereinafter, the candidate solution z by the variable transformation unit 1 t 5 is an explanatory diagram showing a plurality of discretization processes by the variable transformation unit 1. The encoder 1a of the variable transformation unit 1 acquires a first continuous variable x from, for example, an external device (step ST1 in FIG. 4). The internal memory of the encoder 1a stores K discretization points s k are stored. k=1,...,K, where K is an integer equal to or greater than 2. K discretization points s k are points into which the domain W of the first continuous variable x is equally divided, as shown in FIG. 5. If the domain W of the first continuous variable x is, for example, 0.0 to 1.0, the discretization points s k is expressed, for example, as the following formula (1): k = [0.0, 0.2, 0.4, 0.6, 0.8, 1.0] (1)

[0024] The encoder 1a generates K discretized points s k (k=1, . . . , K) and the distance L between the first continuous variable x k Calculate L k = |s k −x| (2) The encoder 1a calculates K distances L 1 ~L K Among them, the shortest distance L k The discretization point s k In the example of FIG. 5, the first continuous variable x is 0.35, so the discretization point s 3 (=0.4) is the shortest distance L k The encoder 1a is the discretized point corresponding to the shortest distance L k The discretization point s k The solution z indicating the following is output to the model estimator 1b.

[0025] The model estimator 1b is located at the shortest distance L k The discretization point s kThe model estimator 1b obtains a solution z indicating the Q matrix of the surrogate model based on the solution z (step ST3 in FIG. 4). The process of estimating the Q matrix of the surrogate model is a known technique, and therefore a detailed description thereof will be omitted. The model estimator 1b outputs the Q matrix to the sampler 1c.

[0026] The sampler 1c obtains the Q matrix from the model estimator 1b. The sampler 1c executes the BO algorithm using the Q matrix to find a candidate solution z t (Step ST4 in FIG. 4). The candidate solution z t The calculation process itself is a known technique, and therefore a detailed description thereof will be omitted. 3 (=0.4) is the shortest distance L k Since the discretization point is related to t is expressed as the following equation (3): t = [0, 0, 1, 0, 0, 0] (3) In equation (3), 1 is the shortest distance L k , and 0 indicates the shortest distance L k The sampler 1c is a discretization point related to a distance other than the binary variable candidate solution z t is output to the variable inverse transformation unit 2.

[0027] The variable inverse transformation unit 2 receives the binary variable candidate solution z t The internal memory of the variable inverse transformation unit 2 stores K discretization points s k The variable inverse transformation unit 2 stores the candidate solution z t The discretization point s k By multiplying by t the second continuous variable x t (Step ST5 in FIG. 4). t =z t ×s k      (4) In the example of FIG. 5, the candidate solution z t is expressed as in equation (3), and the discretization point s k Since the second continuous variable x tis expressed as the following equation (5): t = 0.4 (5) The variable inverse transformation unit 2 converts the second continuous variable x t is output to the evaluation value calculation unit 3.

[0028] The evaluator 3a of the evaluation value calculation unit 3 receives the second continuous variable x t The estimator 3a obtains the second continuous variable x t By substituting into the evaluation function f(·), the second continuous variable x t The evaluation value y t (Step ST6 in FIG. 4). t = f(x t ) The evaluation function f(·) is, for example, t If the first continuous variable x is equal to the evaluation value y t and returns the maximum value as the second continuous variable x t The further away from the first continuous variable x is, the higher the evaluation value y t The evaluator 3a is a function that returns a value smaller than the maximum value of the second continuous variable x t and the evaluation value y t The memory unit 3b outputs the second continuous variable x t and the evaluation value y t Each of the above is memorized.

[0029] The conversion rule update unit 4 updates the evaluation value y t Based on this, the candidate solution z t and the second continuous variable x by the variable inverse transformation unit 2 t The conversion rule update unit 4 updates the inverse conversion rules to the inverse conversion rules (step ST7 in FIG. 4). The update process of the conversion rules and the update process of the inverse conversion rules by the conversion rule update unit 4 will now be described in detail.

[0030] FIG. 6 shows the update process by the transformation rule update unit 4. k 6 is an explanatory diagram illustrating a process of moving a first continuous variable x (k=1, . . . , K) at a discretization point s 3 and discretization point s 4 Since the discretization point s exists between 3 and discretization point s 4The K discretization points s 1 ~s K In this way, the K discretization points s 1 ~s K By moving the , the granularity of the discretization points in the part where the optimal solution exists increases, and the discretization accuracy improves.

[0031] The conversion rule update unit 4 reads the second continuous variable x from the storage unit 3b. t and the evaluation value y t The conversion rule update unit 4 obtains the second continuous variable x as shown in the following equation (6). t and the evaluation value y t Based on this, the discretization point s k (k=1, ..., K) movement amount ds k Calculate.

[0032] In equation (6), sng(s k -x t ) is (s k -x t If (s) is greater than or equal to 0, return 1; k -x t ) is a function that returns -1 if it is less than 0. σ is the evaluation value y t The standard deviation of ,η, is a constant.

[0033] The transformation rule update unit 4 updates the discretized point s k (k=1,...,K) as the discretization point s k The amount of movement ds k By moving the variable transformation unit 1 by t and the second continuous variable x by the variable inverse transformation unit 2 t In the example of FIG. 6, at step t=0 before the optimization device starts the optimization process, the first continuous variable x is updated at the discretization point s 3 and discretization point s 4 Since the discretization point s exists between 3 and discretization point s 4 The K discretization points s 1 ~s K As a result, the discretization point s3 and discretization point s 4 The interval between the discretization point s 3 and discretization point s 4 The gap is narrower than the gap between the two.

[0034] The encoder 1a of the variable transformation unit 1 increments the step t. If the step t is already N, max If it has reached (step ST8 in FIG. 4: YES), the series of processes by the optimization device is completed. max is an integer equal to or greater than 1. max If it has not reached the second continuous variable x (NO in step ST8 of FIG. 4), the encoder 1a t The encoder 1a obtains the K discretized points s as the first continuous variable x (step ST9 in FIG. 4). k (k=1, . . . , K) and the distance L between the first continuous variable x k The encoder 1a calculates the K distances L 1 ~L K Among them, the shortest distance L k The discretization point s k (Step ST2 in FIG. 4). The encoder 1a determines the shortest distance L k The discretization point s k The solution z indicating the following is output to the model estimator 1b.

[0035] The model estimator 1b is located at the shortest distance L k The discretization point s k The model estimator 1b estimates the Q matrix of the surrogate model based on the solution z (step ST3 in FIG. 4). The model estimator 1b outputs the Q matrix to the sampler 1c.

[0036] The sampler 1c obtains the Q matrix from the model estimator 1b. The sampler 1c executes the BO algorithm using the Q matrix to find a candidate solution z t (Step ST4 in FIG. 4). The sampler 1c calculates the binary variable candidate solution z t is output to the variable inverse transformation unit 2.

[0037] The variable inverse transformation unit 2 receives the binary variable candidate solution z t The variable inverse transformation unit 2 obtains the candidate solution z t The discretization point s k By multiplying by t the second continuous variable x t (Step ST5 in FIG. 4). The variable inverse transformation unit 2 inversely transforms the second continuous variable x t is output to the evaluation value calculation unit 3.

[0038] The evaluator 3a of the evaluation value calculation unit 3 receives the second continuous variable x t The estimator 3a obtains the second continuous variable x t By substituting into the evaluation function f(·), the second continuous variable x t The evaluation value y t (Step ST6 in FIG. 4). t = f(x t ) The evaluation function f(·) is, for example, t If the first continuous variable x is equal to the evaluation value y t and returns the maximum value as the second continuous variable x t The further away from the first continuous variable x is, the higher the evaluation value y t The evaluator 3a is a function that returns a value smaller than the maximum value of the second continuous variable x t and the evaluation value y t The memory unit 3b outputs the second continuous variable x t and the evaluation value y t Each of the above is memorized.

[0039] The conversion rule update unit 4 updates the evaluation value y t Based on this, the candidate solution z t and the second continuous variable x by the variable inverse transformation unit 2 t In the example of FIG. 6, in step t=1, the first continuous variable x is updated at the discretization point s 3 and discretization point s 4 Since the discretization point s exists between 3and discretization point s 4 The K discretization points s 1 ~s K As a result, the discretization point s in the next step t=2 is 3 and discretization point s 4 The interval between the discretization point s 3 and discretization point s 4 The gap is narrower than the gap between the two.

[0040] The encoder 1a of the variable transformation unit 1 increments the step t. If the step t is already N, max If step t has reached N (step ST8 in FIG. 4: YES), the series of processes by the optimization device is completed. max If it has not reached the second continuous variable x (NO in step ST8 of FIG. 4), the encoder 1a t is acquired as the first continuous variable x (step ST9 in FIG. 4). Thereafter, the processes of steps ST2 to ST8 are continued. That is, the first process, the second process, the third process, and the fourth process are performed again.

[0041] In the first embodiment described above, the optimization device is configured to include a variable transformation unit 1 that acquires a first continuous variable, which is a variable expressed as either a real value or an integer value, and transforms the first continuous variable into a candidate solution of a binary variable, a variable inverse transformation unit 2 that inversely transforms the candidate solution into a second continuous variable, an evaluation value calculation unit 3 that calculates an evaluation value of the second continuous variable, and a transformation rule update unit 4 that updates, based on the evaluation value, the transformation rule for the candidate solution used by the variable transformation unit 1 and the inverse transformation rule for the second continuous variable used by the variable inverse transformation unit 2. Therefore, the optimization device can prevent deterioration of quantization accuracy when there is no discretization point that matches the continuous variable.

[0042] In the first embodiment, the optimization device is configured to repeat the following processes: transformation processing by the variable transformation unit 1, inverse transformation processing by the variable inverse transformation unit 2, evaluation value calculation processing by the evaluation value calculation unit 3, and update processing by the transformation rule update unit 4. Therefore, the optimization device can improve the quantization accuracy when there is no discretization point that matches the continuous variable.

[0043] In the first embodiment, the optimization device is configured such that the variable transformation unit 1 determines one of the plurality of discretization points as a candidate solution based on the distance between the plurality of discretization points and the first continuous variable. Therefore, even if there is no discretization point that matches the continuous variable, the optimization device can transform the first continuous variable into a candidate solution of a binary variable.

[0044] In the first embodiment, the optimization device is configured so that the conversion rule update unit 4 moves the discretization points as a way of updating the conversion rules. Therefore, the optimization device can prevent deterioration of quantization accuracy when there are no discretization points that match the continuous variables.

[0045] In the first embodiment, the optimization device is configured so that the transformation rule update unit 4 updates each of the transformation rule and the inverse transformation rule based on the second continuous variable and the evaluation value. Therefore, the optimization device can easily update each of the transformation rule and the inverse transformation rule.

[0046] In the optimization device shown in FIG. 1, the conversion rule update unit 4 calculates the discretization point s k (k=1, ..., K) movement amount ds k is calculated, and the discretization point s k The movement amount ds k By moving the variable transformation unit 1 by t and the second continuous variable x by the variable inverse transformation unit 2 t However, this is only an example, and the transformation rule update unit 4 updates each of the inverse transformation rules to the discretization points s k (k=1, ..., K) movement amount ds k is calculated, and the discretization point s k The movement amount ds k By moving the variable transformation unit 1 by t and the second continuous variable x by the variable inverse transformation unit 2 t Alternatively, each of the inverse transformation rules to .times. ...

[0047] In equation (7), g(s tk) is the surrogate model used in the model estimator 1b.

[0048] In the second embodiment, the conversion rule update unit 4 updates the candidate solution z t and the evaluation value y t Using the proxy function g(B) calculated based on each of the above, the candidate solution z t and the second continuous variable x by the variable inverse transformation unit 2 t We now describe an optimizer that updates each of the inverse transformation rules to

[0049] The configuration of the optimization device according to the second embodiment is the same as that of the optimization device according to the first embodiment, and the configuration diagram showing the optimization device according to the second embodiment is shown in FIG. 1. In the optimization device according to the second embodiment, the conversion rule update unit 4 calculates the candidate solution z t and the evaluation value y t Using the proxy function g(B) calculated based on each of the above, the discretization point s k (k=1, ..., K) movement amount ds k Calculate.

[0050] In equation (8), ▽ is a mathematical symbol that indicates the gradient of the proxy function g(B).

[0051] The transformation rule update unit 4 updates the discretized point s k The movement amount ds k By moving the variable transformation unit 1 by t and the second continuous variable x by the variable inverse transformation unit 2 t The optimization device according to the first embodiment is the same as the optimization device according to the first embodiment except for the transformation rule update unit 4.

[0052] In the second embodiment, the conversion rule update unit 4 updates the candidate solution z t and the evaluation value y t Using the proxy function g(B) calculated based on each of the above, the candidate solution z t and the second continuous variable x by the variable inverse transformation unit 2 tTherefore, the optimization device can prevent deterioration of quantization accuracy when there is no discretization point that matches the continuous variable, and can easily update each of the transformation law and the inverse transformation law.

[0053] In the optimization device according to the first embodiment, the conversion rule update unit 4 updates the evaluation value y t Based on this, the candidate solution z t and the second continuous variable x by the variable inverse transformation unit 2 t In the optimization device according to the second embodiment, the conversion rule update unit 4 updates the inverse conversion rules for the discretization points s k The movement amount ds k By moving the variable transformation unit 1 by t and the second continuous variable x by the variable inverse transformation unit 2 t In both updates, the discretization point s k If the number of divisions is large, the solution space is large, so even if annealing is used, it takes time to search. As shown in the figure, it is possible to start with a small discretized point group and add as many discretized points as necessary. The positions of the added discretized points are determined by the movement amount ds k The discretization point s shifted by k The position information r shown in the following formula (9) corresponds to the position of t is used.

[0054]

[0055] The discretization points are the candidate solutions z t The discretization point position s in the next step nearest to t+1 The discretization point s k The code k for identifying the number is newly reassigned from the previous code as k=0, . . . , k, .

[0056]

[0057] The conversion rule update unit 4 uses the proxy function g(B) to calculate the discretization point s k(k=1, ..., K) movement amount ds k When calculating k, when selecting discretization points to be added, as shown in the following equation (12), t new may be calculated.

[0058]

[0059] In addition, the present disclosure allows for free combination of the respective embodiments, modification of any of the components of the respective embodiments, or omission of any of the components of the respective embodiments.

[0060] The present disclosure is suitable for an optimization device, an optimization method, and a program.

[0061] 1 variable transformation unit, 1a encoder, 1b model estimator, 1c sampler, 2 variable inverse transformation unit, 3 evaluation value calculation unit, 3a evaluator, 3b memory unit, 4 transformation rule update unit, 11 variable transformation circuit, 12 variable inverse transformation circuit, 13 evaluation value calculation circuit, 14 transformation rule update circuit, 21 memory, 22 processor.

Claims

1. An optimization device comprising: a variable transformation unit that acquires a first continuous variable, which is a variable expressed as either a real value or an integer value, and transforms the first continuous variable into a candidate solution of a binary variable; a variable inverse transformation unit that inversely transforms the candidate solution into a second continuous variable; an evaluation value calculation unit that calculates an evaluation value of the second continuous variable; and a transformation rule update unit that updates, based on the evaluation value, the transformation rule to the candidate solution used by the variable transformation unit and the inverse transformation rule to the second continuous variable used by the variable inverse transformation unit.

2. The optimization device according to claim 1, characterized in that the transformation process by the variable transformation unit, the inverse transformation process by the variable inverse transformation unit, the evaluation value calculation process by the evaluation value calculation unit, and the update process by the transformation rule update unit are repeated.

3. The optimization device according to claim 1, characterized in that the variable transformation unit determines one of the plurality of discretization points as the candidate solution based on the distance between the plurality of discretization points and the first continuous variable.

4. The optimization device according to claim 3, wherein the transformation rule update unit moves the discretization points as updates to the transformation rule and the inverse transformation rule.

5. The optimization device according to claim 1, characterized in that the transformation rule update unit updates each of the transformation rule and the inverse transformation rule based on the second continuous variable and the evaluation value.

6. The optimization device according to claim 1, characterized in that the transformation rule update unit updates the transformation rule and the inverse transformation rule using proxy functions calculated based on the candidate solution and the evaluation value, respectively.

7. An optimization method in which a variable transformation unit acquires a first continuous variable, which is a variable expressed as either a real value or an integer value, and transforms the first continuous variable into a candidate solution of a binary variable; a variable inverse transformation unit inversely transforms the candidate solution into a second continuous variable; an evaluation value calculation unit calculates an evaluation value of the second continuous variable; and a transformation rule update unit updates, based on the evaluation value, each of the transformation rule to the candidate solution used by the variable transformation unit and the inverse transformation rule to the second continuous variable used by the variable inverse transformation unit.

8. A program to be executed by a computer of an optimization device that converts a first continuous variable, which is a variable expressed as either a real value or an integer value, into a binary variable, causing the computer to execute: a first process of acquiring the first continuous variable and converting the first continuous variable into a candidate solution of a binary variable; a second process of inversely converting the candidate solution into a second continuous variable; a third process of calculating an evaluation value of the second continuous variable; and a fourth process of updating, based on the evaluation value, each of the conversion rule to the candidate solution obtained by the first process and the inverse conversion rule to the second continuous variable obtained by the second process.

Citation Information

Patent Citations

  • Method and system for configuring a system of superconducting qubits with a Hamiltonian representing a polynomial over a bounded integer domain

    JP2019526090A

  • Optimization device, optimization system, method for optimization, and program

    JP2020113190A