WO2019150561A1 - 最適化装置、最適化方法および最適化プログラム - Google Patents

最適化装置、最適化方法および最適化プログラム Download PDF

Info

Publication number
WO2019150561A1
WO2019150561A1 PCT/JP2018/003681 JP2018003681W WO2019150561A1 WO 2019150561 A1 WO2019150561 A1 WO 2019150561A1 JP 2018003681 W JP2018003681 W JP 2018003681W WO 2019150561 A1 WO2019150561 A1 WO 2019150561A1
Authority
WO
WIPO (PCT)
Prior art keywords
optimization
margin
prediction
variable
candidate set
Prior art date
Application number
PCT/JP2018/003681
Other languages
English (en)
French (fr)
Inventor
顕大 矢部
Original Assignee
日本電気株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日本電気株式会社 filed Critical 日本電気株式会社
Priority to JP2019568528A priority Critical patent/JP6947229B2/ja
Priority to US16/966,715 priority patent/US20210034999A1/en
Priority to PCT/JP2018/003681 priority patent/WO2019150561A1/ja
Publication of WO2019150561A1 publication Critical patent/WO2019150561A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • G06N5/045Explanation of inference; Explainable artificial intelligence [XAI]; Interpretable artificial intelligence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"

Definitions

  • the present invention relates to an optimization apparatus, an optimization method, and an optimization program that perform optimization based on prediction.
  • the power company determines the power generation amount of each power plant that satisfies a predetermined condition (for example, satisfies the total demand power while minimizing the cost) in the control of a power generation system including a plurality of power plants. is necessary. Therefore, in an electric power company, for example, an optimization model that models a power generation system based on demand prediction (prediction of total demand power) is created. And in order to determine the optimal electric power generation amount (optimum solution), the optimal solution (electric power generation amount) in the optimization model is calculated using a predetermined apparatus or system.
  • a predetermined condition for example, satisfies the total demand power while minimizing the cost
  • the purchasing department of the company decides the purchase amount (optimum solution) of the material that maximizes the profit (minimizes the purchase cost) while satisfying the production plan etc. in the purchase of the material in the production activity. Need. Therefore, in the purchasing department, an optimization model that models the purchase amount based on demand prediction (for example, prediction of the amount of necessary materials) is created. In order to determine the purchase amount, an optimal solution (purchase amount) in the created optimization model is calculated using a predetermined device or system.
  • the optimization model includes an “objective function” indicating a specific optimization purpose and a “constraint” that is a condition for calculating an optimal solution.
  • the “objective function” is represented as a function of “operation variable”.
  • “Operating variable” is an object of optimization.
  • the software or device described above optimizes the value of the “operation variable” so that the value of the objective function is optimized (for example, maximum or minimum) while satisfying the constraints.
  • the optimized value of the objective variable is hereinafter referred to as “optimal solution”.
  • the optimum solution is a future value. Therefore, the objective function includes a prediction model expressed using predetermined variables and parameters.
  • the prediction model is a model indicating the relationship between a variable that is a prediction target (hereinafter referred to as “explained variable”) and a variable that can affect the prediction target (hereinafter referred to as “explanatory variable”).
  • the explained variable is expressed as a function using the explanatory variable in the prediction model.
  • the term “explained variable” is used for a variable that is a prediction target in prediction.
  • the term “manipulated variable” is used for a variable to be optimized in the optimization process.
  • the term “explained variable” and the term “manipulated variable” are used in distinction from each other.
  • prediction model is created based on, for example, machine learning using past explanatory variables and explained variables.
  • regression analysis As a general method for generating a prediction model, for example, there is “regression analysis”.
  • the information processing apparatus calculates the value (optimum solution) of the objective variable that optimizes (for example, maximizes) the objective function as the optimum solution of the optimization model.
  • the explanatory variables in the prediction model may become an objective variable (variable to be optimized) in the optimization model. This point will be described later using a specific example of price optimization.
  • the target variable has a limited range of possible values.
  • the power generation amount at the above power plant has an upper limit.
  • such a restriction is an example of a “constraint”.
  • the constraint may include other conditions. Therefore, for example, the information processing apparatus calculates an optimal solution that maximizes the value of the objective function within a range that satisfies a predetermined constraint.
  • the optimization model used as an optimization target by the information processing apparatus that calculates the optimal solution is a model including an objective function and constraints.
  • the optimization model is processed in the information processing apparatus, generally, the above-described objective function and constraints can be handled by the information processing apparatus (usually, a mathematical expression expressed using variables). It is expressed using Then, the information processing apparatus calculates the value of the objective variable that sets the value of the objective function as the optimal value (maximum value or minimum value) as the optimal solution under the constraints included in the optimization model.
  • the optimization model is called “linear optimization model”.
  • the optimization model is called a “secondary optimization model”.
  • the price of the product is a value that can be set by the seller of the product.
  • the sales amount is a value that cannot be determined by the seller, and is a future value as viewed from the time when the optimization process is executed.
  • a prediction model is set using machine learning.
  • the sales amount of a product is affected by the price of the product. Therefore, the sales amount of the product is an explained variable in the prediction model for predicting the sales amount of the product.
  • the price of the product is an explanatory variable in the prediction model. That is, the sales amount of the product, which is the explained variable, is expressed as a function of the price of the product in the prediction model. That is, the total sales (objective function) is the product of “explanatory variable (product price)” and “explained variable (sales amount affected by the price of product)”.
  • the explained variable is expressed using a function of the explanatory variable (product price). Therefore, the total sales (objective function) is at least a quadratic function of the product price (explanatory variable).
  • the price of the product is an objective variable in the optimization model. That is, the total sales (objective function) is expressed using at least a quadratic function of the objective variable (product price). Therefore, when optimizing the total sales by manipulating the price of the product as described above, the secondary optimization model is used as the optimization model.
  • the constraint is, for example, the inventory amount of the product.
  • the explanatory variable (product price) in the prediction model can be the objective variable (product price) in the optimization model, that is, the variable to be optimized.
  • the price of a product behaves as an explanatory variable in the learning process and the prediction process, and behaves as an objective variable in the optimization process.
  • the optimization model includes one or more parameters in a mathematical expression representing the optimization model.
  • the parameter is a value determined based on past observation data.
  • the observation data is data including errors in measurement.
  • the calculation target of the optimization model is a future value (optimum solution) that has not yet been determined. In other words, the optimal solution may be calculated in a situation different from when past data was generated. Therefore, the parameters included in the optimization model include uncertainty.
  • the method for calculating the optimal solution in the optimization model that is generally widely used does not consider the uncertainty in the parameters. For this reason, the optimal solution calculated using a general optimization model may not be optimal when actually applied. Hereinafter, the reason will be described.
  • the optimization model includes parameters.
  • the parameter includes uncertainty. Therefore, the parameter value when the optimum solution value is actually applied may be different from the parameter value used for calculating the optimum solution. In this case, there is a possibility that the calculated optimal solution is not the optimal solution when actually applied.
  • a robust optimization model has been proposed as one of optimization models that take into account parameter uncertainties (see, for example, Non-Patent Document 1).
  • the robust optimization model sets a predetermined uncertainty range (for example, an elliptical region in the parameter space) for the parameter. Then, the information processing apparatus that calculates the optimal solution in the robust optimization model calculates the optimal solution in the range of the uncertainty.
  • the optimal solution calculated using the robust optimization model can guarantee good solution at the time of adaptation.
  • An optimization model in which a robust optimization model is applied to the above linear optimization model is called a robust linear optimization model.
  • An optimization model in which a robust optimization model is applied to a secondary optimization model is called a robust secondary optimization model.
  • Prediction error which is noise included in the optimization input.
  • system error which is noise assumed after the optimization is completed.
  • System error indicates the uncertainty of the system itself.
  • Prediction error indicates a blur that occurs in the estimation itself due to the fact that the past data is affected by the system error when the system is estimated (represented) from the past data.
  • margin In robust optimization, it is necessary to determine how much uncertainty is assumed.
  • this degree of uncertainty is referred to as a margin.
  • the margin needs to be set to such an extent that there is no excess or deficiency with respect to the required guarantee level (for example, a shortage probability of 10%). This is because if the uncertainty to be assumed is too small, the guarantee cannot be satisfied. On the other hand, if the uncertainty is too large, the cost becomes enormous. That is, an overly conservative strategy is just as unrealistic as a strategy that does not meet the guarantee. It is desirable that this level can be automatically determined from the data.
  • this level is automatically determined based on the parameter “uncertainty of estimation”. Specifically, a method is known in which robustness optimization is performed assuming a parameter included in the uncertainty region U at the guarantee level ⁇ and assuming the worst case in the uncertainty region U.
  • the size of the uncertainty region U determined in this way increases as the dimension of the parameter increases. This is because it is necessary to increase the uncertainty ( ⁇ radius) assumed for each parameter in order to guarantee the uncertainty of more parameters.
  • the present invention provides an optimization device, an optimization method, and an optimization program capable of calculating an optimal solution while suppressing excessive guarantees when an optimization parameter having uncertainty is given based on prediction.
  • the purpose is to do.
  • the optimization device is an optimization device in which an explanatory variable used for explaining a prediction target becomes an optimization operation variable, and performs optimization based on the prediction of the prediction target.
  • a candidate set determining unit that determines a set of candidates
  • a margin determining unit that determines a margin that includes an estimation error that is an error due to prediction with a specified probability for an operation variable included in the set
  • a robust optimization unit that performs robust optimization related to an operation variable using a margin.
  • the optimization method according to the present invention is an optimization method in which an explanatory variable used for explaining a prediction target becomes an optimization operation variable and performs optimization based on the prediction of the prediction target.
  • a candidate set is determined, a margin including an estimation error, which is an error due to prediction, is determined with a specified probability for an operation variable included in the set, and a robustness related to the operation variable is determined using the determined margin. It is characterized by performing optimization.
  • An optimization program is an optimization program that is applied to a computer that performs optimization based on prediction of a prediction target, where an explanatory variable used for explaining a prediction target becomes an operation variable for optimization, Candidate set decision processing for determining a candidate set of predicted operation variables in the computer, margin for determining a margin including an estimation error that is an error due to prediction with a specified probability for the operation variables included in the set Using the determination process and the determined margin, a robust optimization process for performing a robust optimization on the manipulated variable is executed.
  • Equation 1 Equation 1
  • Equation 1 ⁇ is a future realization parameter.
  • f k be linear with respect to ⁇ .
  • Equation 2 the portfolio optimization problem can be defined as shown in Equation 2 exemplified below.
  • Equation 2 ⁇ is a vector, and the i-th element of ⁇ is a gain obtained as a result of investing in asset i.
  • x i represents the amount invested in the asset i.
  • C is the total asset amount.
  • the problem expressed by Equation 2 can be said to be a problem of allocating limited assets and maximizing the investment effect.
  • the inventory cost minimization problem can be defined as shown in Equation 3 below.
  • Equation 3 c i is the inventory cost per product i, x i is the inventory amount of the product i, and ⁇ i is the demand amount of the product i.
  • Equations 1 to 3 Other problems such as power generation optimization based on power demand parameters and plant design optimization based on commodity demand parameters are formulated as Equations 1 to 3 described above.
  • is a value that will be known in the future when x is determined. Therefore, an average value ⁇ * of ⁇ is predicted, and ⁇ hat ( ⁇ superscript ⁇ , hereinafter referred to as ⁇ ⁇ ) is acquired as the predicted value. It is necessary to perform optimization based on this ⁇ ⁇ . Hereinafter, this process will be described.
  • is determined by ⁇ ⁇ * ⁇ s .
  • ⁇ s is a random variable indicating a system error, and its average is 0.
  • the system error is an unpredictable value.
  • ⁇ * is estimated based on the prediction engine using past data.
  • the estimated value ⁇ ⁇ in the case of invariant estimator, can be described as ⁇ ⁇ ⁇ ⁇ * - ⁇ e.
  • ⁇ e is a random variable indicating an estimation error, and its average is zero. This indicates that the statistical uncertainty of the historical data, the estimated value theta ⁇ also becomes uncertain values include estimated error theta e.
  • Step 1 Obtain an actual value ⁇ tilde of ⁇ ⁇ (superscript ⁇ of ⁇ , hereinafter referred to as ⁇ 1-). ⁇ ⁇ can be referred to as an estimated value.
  • Step 2 Optimize based on ⁇ ⁇ .
  • Step 3 The gain is calculated based on the actual value of ⁇ .
  • ⁇ ⁇ in step 1 is a random variable representing an estimated value, and in reality only one of its realization values is acquired.
  • step 2 neither the true value ⁇ * nor the actual value of ⁇ in the future is known. However, even if no longer be able to obtain a "or ⁇ ⁇ is away from how much ⁇ *", it is possible to obtain "or ⁇ ⁇ is likely away from how much ⁇ *". For example, you can estimate the variance-covariance matrix of ⁇ ⁇ , by obtaining a sample of ⁇ s and ⁇ e by the bootstrap samples approximation, it is possible to obtain a "or ⁇ ⁇ is likely away from how much ⁇ *" Is possible.
  • Equation 4 is an index of the constraint condition expression.
  • the inventor of the present application has found that the inequality in the above-described equation 8 does not have to be satisfied for all x, and it is sufficient if it is satisfied for x that is a solution candidate. . Specifically, the inventor has found that it is necessary to measure the “essential dimension” of the parameter from the above-described example of the dummy parameter and assume an uncertainty corresponding thereto.
  • this essential dimension is measured by measuring the size of the optimization domain, that is, “optimization uncertainty”. That is, by measuring the “optimization uncertainty” in addition to the “estimation uncertainty”, it is possible to perform optimization based on the uncertainty level without excess or deficiency.
  • FIG. 1 is a block diagram showing an embodiment of an optimization apparatus according to the present invention.
  • the explanatory variable used for explaining the prediction target becomes an optimization operation variable, and performs optimization based on the prediction of the prediction target.
  • the optimization apparatus 100 of this embodiment includes an input unit 10, a candidate set determination unit 20, a margin determination unit 30, a robust optimization unit 40, an output unit 50, and a storage unit 60.
  • the storage unit 60 is realized by, for example, a magnetic disk or the like, and stores input information, information in the middle of processing, information on processing results, and the like. In addition, the storage unit 60 stores a set as margin candidates to be used when the margin determination unit 30 described later determines a margin.
  • the input unit 10 inputs information used by the candidate set determination unit 20, the margin determination unit 30, and the robust optimization unit 40 in the processing described later. Specifically, the input unit 10 inputs a prediction formula (prediction model) and an estimation error used for prediction. For example, the input unit 10 may input a parameter representing a prediction model as a prediction parameter. Further, the input unit 10 may input, for example, a prediction error part distribution represented by a variance-covariance matrix ⁇ as an estimation error. Further, the input unit 10 inputs a guarantee probability ⁇ . The guarantee probability ⁇ is specified and inputted by the user, for example.
  • Candidate set determination unit 20 determines a set of candidate operation variables (hereinafter also referred to as a domain).
  • the method for determining the domain by the candidate set determining unit 20 is arbitrary.
  • the candidate set determination unit 20 may determine the set X by extracting only constraints that do not include uncertainty, for example.
  • a constraint that does not include uncertainty is distinguishable from a constraint that includes uncertainty because it does not include an uncertain parameter.
  • the constraint that “the price is between the fixed price and 5 discounts” is a constraint that does not include uncertainty.
  • the constraints “the inventory amount is non-negative” and “the inventory investment amount is within the budget” are constraints that do not include uncertainty.
  • the constraint that “the amount of inventory exceeds demand with a high probability” is a constraint including uncertainty because the demand includes uncertainty.
  • the candidate set determination unit 20 determines the set X. For example, ⁇ s + ⁇ e is sampled, and ⁇ 1 to + ⁇ s + ⁇ e are used as candidates for future realization values. At this time, the candidate set determination unit 20 may approximate the set X with a finite sample by repeatedly solving Equation 9 exemplified below.
  • a region T that satisfies Prob ( ⁇ s + ⁇ e ⁇ T) ⁇ 1 ⁇ is defined.
  • 1 ⁇ is a probability criterion and is a probability including a true optimum solution when the range of the set X is limited.
  • is designated by the user.
  • the candidate set determination unit 20 may approximate the set X by approximating the region T with a plurality of samples and solving Equation 10 exemplified below for the sample t.
  • the margin determining unit 30 determines a margin that includes an estimation error with a specified probability ⁇ for the operation variable included in the set determined by the candidate set determining unit 20. Specifically, the margin determination unit 30 sets the upper bound of a constraint expression with a marginal constraint expression including an estimation error for all manipulated variable candidates (solution candidates) x included in the determined set. Calculate the margin to be Here, the true constraint f k (x, ⁇ ⁇ ) and, when the margin and g k (x), the margin with constraint expression, f k (x, ⁇ ⁇ + ⁇ e) + g k (x) and Can be represented.
  • the margin determination unit 30 may obtain a minimum margin g that satisfies Equation 11 illustrated below.
  • a margin candidate set G r (g ⁇ 1, r ⁇ ,..., G ⁇ K, r ⁇ ) is defined.
  • the margin candidate set G r includes, for example, margin candidates parameterized by a one-dimensional parameter r ⁇ 0.
  • G r (rg (x)) is defined based on a certain non-negative function g (x)
  • the "unit margin" Restrictions on g 1, g 2, ..., based on g K, margin, G r (rg 1, rg 2, ..., rg K )).
  • the margin determination unit 30 makes the marginal constraint equation including the estimation error with probability ⁇ more severe than the true constraint equation for all the explanatory variable candidates x included in the determined set.
  • the minimum margin G ⁇ r * ⁇ may be determined.
  • the margin determining unit 30 may consider the probability criterion (probability including a true optimal solution when the set range is limited) when determining the margin. That is, when the candidate set determining unit 20 restricts the solution candidate set X based on the probability criterion of 1 ⁇ , the margin determining unit 30 may determine the margin by replacing the probability ⁇ with ⁇ + ⁇ .
  • the margin determination unit 30 may determine the minimum r (minimum margin) that satisfies the condition by binary search.
  • the robust optimization unit 40 performs robust optimization on the operation variable using the determined margin. That is, the robust optimization unit 40 performs robust optimization by solving the optimization problem with a margin using the determined margin g.
  • the method by which the robust optimization unit 40 performs robust optimization is arbitrary.
  • the robust optimization unit 40 may perform robust optimization using a generally known method. Since a method for performing robust optimization is widely known, detailed description thereof is omitted here.
  • the robust optimization unit 40 may approximate the optimum solution to a value closest to the obtained solution in the set X.
  • the robust optimization unit 40 may correct the optimal solution by setting an additional margin again and performing optimization. Note that the robust optimization unit 40 may adopt a solution obtained without correction as an optimal solution.
  • the candidate set determination unit 20, the margin determination unit 30, and the robust optimization unit 40 are a computer processor (for example, a CPU (Central Processing Unit)), a GPU (Graphics Processing Unit), which operates according to a program (optimization program), It is realized by FPGA (field-programmable gate array).
  • a computer processor for example, a CPU (Central Processing Unit)
  • a GPU Graphics Processing Unit
  • FPGA field-programmable gate array
  • the program may be stored in a storage unit (not shown), and the processor may read the program and operate as the candidate set determination unit 20, the margin determination unit 30, and the robust optimization unit 40 according to the program.
  • the function of the optimization device may be provided in SaaS (Software as a Service) format.
  • the candidate set determination unit 20, the margin determination unit 30, and the robust optimization unit 40 may each be realized by dedicated hardware. Moreover, a part or all of each component of each device may be realized by a general-purpose or dedicated circuit (circuitry), a processor, or a combination thereof. These may be configured by a single chip or may be configured by a plurality of chips connected via a bus. Part or all of each component of each device may be realized by a combination of the above-described circuit and the like and a program.
  • the plurality of information processing devices and circuits may be centrally arranged or distributed. It may be arranged.
  • the information processing device, the circuit, and the like may be realized as a form in which each is connected via a communication network, such as a client server system and a cloud computing system.
  • FIG. 2 is a flowchart showing an operation example of the optimization apparatus of the present embodiment.
  • the candidate set determination unit 20 determines a set X of candidate operation variables (step S11).
  • the margin determining unit 30 determines a margin including an estimation error with a designated probability ⁇ for the operation variable included in the set X (step S12).
  • the robust optimization unit 40 performs robust optimization related to the operation variable using the determined margin (step S13).
  • the candidate set determination unit 20 determines a candidate set of operation variables, and the margin determination unit 30 has an estimation error with a specified probability for the operation variables included in the set. Determine the included margin. Then, the robust optimization unit 40 performs robust optimization related to the manipulated variable using the determined margin. Therefore, when an optimization parameter having uncertainty is given based on the prediction, it is possible to calculate an optimal solution while suppressing excessive guarantees.
  • the optimization apparatus of the present embodiment can reduce the calculation cost when performing robust optimization that satisfies the required guarantee level.
  • the optimization device of this embodiment can greatly reduce the calculation cost of robust optimization by a computer.
  • ⁇ 100 is a distribution function of a chi-square distribution with 100 degrees of freedom.
  • step 2 Expression 15 exemplified below is satisfied.
  • g 1 (x) ⁇ 3 ⁇ ⁇ 1 (0.9) ⁇ 2.2. That is, according to the calculation method of the present embodiment, the margin is calculated as 2.2. In the general method, since the uncertainty of optimization is not considered, even if a fixed value is given, the same margin (18.9) is calculated.
  • the robust optimization unit 40 may perform the process of step 3 (robust optimization) described above by adding the estimated value ⁇ ⁇ and the margin 2.2.
  • FIG. 3 is a block diagram showing an outline of the optimization apparatus according to the present invention.
  • an explanatory variable for example, strategy x
  • a prediction target for example, gain
  • a candidate set deciding unit 81 for example, candidate set deciding unit 20
  • a margin determination unit 82 for example, g
  • an estimation error for example, ⁇ e
  • a specified probability for example, a guarantee probability ⁇
  • the candidate set determination unit 81 may approximate the candidate set with samples included in the range of errors from predicted values (for example, system error and estimation error).
  • the margin determination unit 82 may determine a margin at which a constraint expression with a margin including an estimation error becomes an upper bound of a true constraint expression for all candidate operation variables included in the determined set. .
  • the margin determination unit 82 uses a marginal constraint equation including an estimation error with a specified probability for all the explanatory variable candidates included in the determined set from the margin candidate set.
  • a minimum margin may be determined that is more stringent than the true constraint equation.
  • the margin candidate set may include a margin candidate represented by a one-dimensional parameter.
  • the candidate set determination unit 81 approximates the candidate set with samples included in the range of the system error and the estimation error indicating the error due to optimization, and the margin determination unit 82 uses the specified probability to determine the system error and the estimation error. May be determined.
  • FIG. 4 is a schematic block diagram showing a configuration of a computer according to at least one embodiment.
  • the computer 1000 includes a CPU 1001, a main storage device 1002, an auxiliary storage device 1003, and an interface 1004.
  • the above-described optimization device is mounted on the computer 1000.
  • the operation of each processing unit described above is stored in the auxiliary storage device 1003 in the form of a program (optimization program).
  • the CPU 1001 reads out the program from the auxiliary storage device 1003, expands it in the main storage device 1002, and executes the above processing according to the program.
  • the auxiliary storage device 1003 is an example of a tangible medium that is not temporary.
  • Other examples of the non-temporary tangible medium include a magnetic disk, a magneto-optical disk, a CD-ROM, a DVD-ROM, and a semiconductor memory connected via the interface 1004.
  • this program is distributed to the computer 1000 via a communication line, the computer 1000 that has received the distribution may develop the program in the main storage device 1002 and execute the above processing.
  • the program may be for realizing a part of the functions described above. Further, the program may be a so-called difference file (difference program) that realizes the above-described function in combination with another program already stored in the auxiliary storage device 1003.
  • difference file difference program

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Business, Economics & Management (AREA)
  • Computational Linguistics (AREA)
  • Medical Informatics (AREA)
  • Strategic Management (AREA)
  • Human Resources & Organizations (AREA)
  • Economics (AREA)
  • Computational Mathematics (AREA)
  • Marketing (AREA)
  • Probability & Statistics with Applications (AREA)
  • Game Theory and Decision Science (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Mathematical Analysis (AREA)
  • Algebra (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Development Economics (AREA)

Abstract

最適化装置80は、予測対象の説明に用いられる説明変数が最適化の操作変数になり、その予測対象の予測に基づいて最適化を行う。候補集合決定部81は、予測される操作変数の候補の集合を決定する。マージン決定部82は、集合に含まれる操作変数に対して、指定された確率で予測による誤差である推定誤差が含まれるマージンを決定する。ロバスト最適化部83は、決定されたマージンを用いて、操作変数に関するロバスト最適化を行う。

Description

最適化装置、最適化方法および最適化プログラム
 本発明は、予測に基づいて最適化を行う最適化装置、最適化方法および最適化プログラムに関する。
 近年、多くの情報を基に、所定の条件における最適な情報(例えば、プラントにおける材料の投入量、操作機器における操作量、又は、商品の設定価格)を利用者に提供する装置やシステムが用いられている。また、利用者が、最終的な選択を行うための情報(例えば、判断指標など)を提供する装置やシステムも用いられている。
 例えば、電力会社は、複数の発電所を含む発電システムの制御において、所定の条件(例えば、総需要電力を満足しながらコストを最小にする)を満足する各発電所の発電量を決定することが必要である。そこで、電力会社では、例えば、需要予測(総需要電力の予測)に基づく発電システムをモデル化した最適化モデルが作成される。そして、最適な発電量(最適解)を決定するために、所定の装置又はシステムを用いて、その最適化モデルにおける最適解(発電量)が算出される。
 他にも、企業の購入部門は、生産活動における資材の購入において、生産計画などを満足しながら利益を最大とする(購入コストを最小とする)資材の購入量(最適解)を決定することを必要とする。そこで、購入部門では、需要予測(例えば、必要となる資材の量の予測)に基づく購入量をモデル化した最適化モデルが作成される。そして、購入量を決定するため、所定の装置又はシステムを用いて、作成した最適化モデルにおける最適解(購入量)が算出される。
 このように、予測に基づいた判断又は計画をソフトウェア又は所定の装置が最適に行う技術について、以下、その具体例を説明する。
 まず、最適化の処理の対象となる最適化モデルが決定される。最適化モデルは、具体的な最適化の目的を示す「目的関数」と、最適解の算出における条件である「制約」とを含む。「目的関数」は、「操作変数」の関数として表される。「操作変数」は、最適化の対象である。最適化において、上記のソフトウェア又は装置は、制約を満たしつつ目的関数の値が最適(例えば、最大又は最小)となるように、「操作変数」の値を最適化する。最適化された目的変数の値を、以下、「最適解」と呼ぶ。なお、最適解は、将来的な値である。そのため、目的関数は、その中に、所定の変数及びパラメータを用いて表される予測モデルを含む。
 予測モデルは、予測対象である変数(以下、「被説明変数」と呼ぶ)と、予測対象に影響を及ぼし得る変数(以下、「説明変数」と呼ぶ)との関係性を示すモデルである。一般的に、被説明変数は、予測モデルにおいて、説明変数を用いた関数として表現される。
 上記のとおり、予測における予測対象である変数に対して、「被説明変数」という用語が用いられる。これに対し、最適化処理における最適化対象である変数に対して、「操作変数」という用語が用いられる。このように、以下の説明において、「被説明変数」という用語と、「操作変数」という用語とは、相互に区別して用いられる。
 なお、予測モデルは、例えば、過去の説明変数と被説明変数とを用いた機械学習等を基に作成される。予測モデルを生成する一般的な方法として、例えば、「回帰分析」がある。
 そして、情報処理装置は、最適化モデルの最適解として、目的関数を最適化(例えば、最大化)する目的変数の値(最適解)を算出する。ここで、予測モデルにおける説明変数の少なくとも一部が、最適化モデルにおける目的変数(最適化の対象である変数)となることがあり得る。この点については、後ほど価格最適化の具体例を用いて説明する。
 また、一般的に、目的変数は、取り得る値の範囲に制限がある。例えば、上記の発電所における発電量は、上限がある。例えば、このような制限が、「制約」の一例である。ただし、制約は、その他の条件を含んでもよい。そこで、情報処理装置は、例えば、所定の制約を満足する範囲で、目的関数の値が最大になるような最適解を算出する。このように、最適解を算出する情報処理装置が最適化の対象として用いる最適化モデルは、目的関数及び制約を含むモデルである。
 なお、最適化モデルは、情報処理装置において処理されるため、一般的には、上記の目的関数及び制約を、情報処理装置で取り扱い可能な形式(通常は、変数を用いて表現された数式)を用いて表される。そして、情報処理装置は、最適解として、最適化モデルに含まれる制約の下で、目的関数の値を最適値(最大値、又は、最小値)とする目的変数の値を算出する。
 最適化モデルに含まれる目的関数が、目的変数の一次関数を用いて表される場合、その最適化モデルは、「線形最適化モデル」と呼ばれる。また、最適化モデルに含まれる目的関数が、目的変数の二次関数を用いて表される場合、その最適化モデルは、「二次最適化モデル」と呼ばれる。
 ここで、具体例として、ある複数の商品又は役務(サービス)の総売上高を最適化するために、各商品又は各役務の価格をいくらに設定したらよいか、という価格最適化の最適化モデル説明する。ただし、以下では、一例として、商品を用いて説明する。
 総売上高は、各商品の価格と、商品の売上げ量(売上げ数)との積の総和である。つまり、総売上高は、「総売上高=(各商品の価格×各商品の売上げ量)の合計」となる。
 ここで、商品の価格は、商品の販売者が、設定可能な値である。一方、売上げ量は、販売者が決定できない値であり、さらに、最適化処理を実行する時点から見て未来の値である。
 そこで、商品の売上げ量を予測するため、例えば、機械学習を用いて予測モデルが設定される。ここで、商品の売上げ量は、その商品の価格の影響を受けることは自明である。そのため、商品の売上げ量は、商品の売上げ量を予測する予測モデルにおいて、被説明変数である。また、商品の価格は、予測モデルにおいて、説明変数となる。つまり、被説明変数である商品の売上げ量は、予測モデルにおいて、商品の価格の関数として表される。つまり、総売上高(目的関数)は、「説明変数(商品の価格)」と「被説明変数(商品の価格に影響を受ける売上げ量)」との積となる。
 上記のとおり、被説明変数は、説明変数(商品の価格)の関数を用いて表される。このため、総売上高(目的関数)は、商品の価格(説明変数)の少なくとも二次の関数になる。
 ここで、商品の価格は、最適化モデルにおける目的変数である。つまり、総売上高(目的関数)は、目的変数(商品の価格)の少なくとも二次関数を用いて表される。そのため、上記のような商品の価格を操作して総売上高を最適化する場合、最適化モデルとして、二次最適化モデルが用いられている。なお、この場合、制約は、例えば、商品の在庫量である。
 上記の具体例から理解されるように、予測モデルにおける説明変数(商品の価格)が、最適化モデルにおける目的変数(商品の価格)、すなわち最適化対象である変数になり得ることに留意されたい。言い換えると、商品の価格という一つの変数が、学習処理及び予測処理においては説明変数として振る舞い、最適化処理においては目的変数として振る舞うことに留意されたい。
 最適化モデルは、最適化モデルを表す数式に、1つ又は複数のパラメータを含む。パラメータは、過去の観測データなどを基に決定される値である。しかし、観測データは、測定における誤差を含むデータである。また、最適化モデルの算出対象は、まだ確定していない将来における値(最適解)である。つまり、最適解は、過去のデータが生成された時とは異なる状況において算出される可能性がある。そのため、最適化モデルに含まれるパラメータは、不確実性を含む。
 一般的に広く用いられている最適化モデルにおける最適解を算出する手法は、パラメータにおける不確実性を考慮していない。そのため、一般的な最適化モデルを用いて算出された最適解は、実際に適用された場合において、最適とはならない可能性がある。以下、この理由を説明する。
 上記のとおり、最適化モデルは、パラメータを含む。そして、パラメータは、不確実性を含む。そのため、最適解の値が実際の適用される時におけるパラメータの値は、最適解の算出に用いたパラメータの値と異なっている場合がある。この場合、算出された最適解は、実際に適用されるときにおける最適解となっていない可能性がある。
 そこで、パラメータの不確実性を考慮した最適化モデルの一つとして、ロバスト最適化モデルが提案されている(例えば、非特許文献1を参照)。ロバスト最適化モデルは、パラメータに対して所定の不確実性の範囲(例えば、パラメータ空間における楕円領域)を設定する。そして、ロバスト最適化モデルにおける最適解を算出する情報処理装置は、その不確実性の範囲における最適解を算出する。
 最適解が適用される時のパラメータの値が想定されたパラメータの不確実性の範囲内の場合、ロバスト最適化モデルを用いて算出された最適解は、適応時における解の良さを保証できる。上記の線形最適化モデルにロバスト最適化モデルを適用した最適化モデルは、ロバスト線形最適化モデルと呼ばれている。また、二次最適化モデルにロバスト最適化モデルを適用した最適化モデルは、ロバスト二次最適化モデルと呼ばれている。
Dimitris Bertsimas, David B. Brown, and Constantine Caramanis, "Theory and Application of Robust Optimization", SIAM (Society for Industrial and Applied Mathematics) Review, Vol. 53, No. 3, pp. 464-501, August 05, 2011
 上記パラメータの不確実性は、二種類想定される。一つは、最適化の入力に含まれるノイズである「予測誤差」である。もう一つは、最適化が終了した後に想定されるノイズである「システム誤差」である。「システム誤差」は、系自体が持つ不確実性を示す。「予測誤差」は、その系を過去データから推定(表現)しようとしたときに、過去データがシステム誤差から影響を受けていることに起因して推定自体に生じるブレを示す。
 ロバスト最適化では、どの程度の不確実性を想定するか決定する必要がある。以下、この不確実性の程度をマージンと記す。マージンは、要求する保証水準(例えば、欠品確率10%など)に対して、過不足がない程度に設定される必要がある。想定する不確実性が小さすぎると保証を満たすことが出来なくなり、一方で、水準より大きすぎる不確実性を想定すると、コストが莫大になってしまうからである。つまり、過剰に保守的な戦略は、保証を満たさない戦略と同等に非現実的である。また、この水準は、データから自動で決定できることが望ましい。
 一般的には、パラメータの「推定の不確実性」に基づいて、この水準(マージン)が自動で決定される。具体的には、不確実性領域Uに対して保証水準αで含まれるパラメータを想定し、その不確実性領域Uにおける最悪ケースを想定してロバスト最適化を行う方法が知られている。
 しかし、このように決定された不確実性領域Uのサイズ(円における半径に相当する量)は、パラメータの次元が上がるにつれて増加する。これは、より多くのパラメータの不確実性を保証するために、各パラメータに対して想定する不確実性(≒半径)を増加させる必要があるからである。しかし、このような不確実性領域Uを用いたロバスト最適化は、過剰に保守的になることが経験的に知られている。
 このような過剰に保守的になる典型例を説明する。推定パラメータにダミーのパラメータ(すなわち、最適化には全く関係のないパラメータ)が含まれていたとする。このとき、上述する保証を想定すると、ダミーのパラメータを含めた次元に基づいて不確実性領域Uのサイズが決定される。ダミーのパラメータは本来不要なものであるにも関わらず、これによるサイズの増加分だけ過剰な保証が要求されてしまうという問題がある。
 そこで、本発明は、不確実性を有する最適化のパラメータが予測に基づいて与えられる場合に、過剰な保証を抑制して最適解を算出できる最適化装置、最適化方法および最適化プログラムを提供することを目的とする。
 本発明による最適化装置は、予測対象の説明に用いられる説明変数が最適化の操作変数になり、その予測対象の予測に基づいて最適化を行う最適化装置であって、予測される操作変数の候補の集合を決定する候補集合決定部と、集合に含まれる操作変数に対して、指定された確率で予測による誤差である推定誤差が含まれるマージンを決定するマージン決定部と、決定されたマージンを用いて、操作変数に関するロバスト最適化を行うロバスト最適化部とを備えたことを特徴とする。
 本発明による最適化方法は、予測対象の説明に用いられる説明変数が最適化の操作変数になり、その予測対象の予測に基づいて最適化を行う最適化方法であって、予測される操作変数の候補の集合を決定し、集合に含まれる操作変数に対して、指定された確率で予測による誤差である推定誤差が含まれるマージンを決定し、決定されたマージンを用いて、操作変数に関するロバスト最適化を行うことを特徴とする。
 本発明による最適化プログラムは、予測対象の説明に用いられる説明変数が最適化の操作変数になり、その予測対象の予測に基づいて最適化を行うコンピュータに適用される最適化プログラムであって、コンピュータに、予測される操作変数の候補の集合を決定する候補集合決定処理、集合に含まれる操作変数に対して、指定された確率で予測による誤差である推定誤差が含まれるマージンを決定するマージン決定処理、および、決定されたマージンを用いて、操作変数に関するロバスト最適化を行うロバスト最適化処理を実行させることを特徴とする。
 本発明によれば、不確実性を有する最適化のパラメータが予測に基づいて与えられる場合に、過剰な保証を抑制して最適解を算出できる。
本発明による最適化装置の一実施形態を示すブロック図である。 最適化装置の動作例を示すフローチャートである。 本発明による最適化装置の概要を示すブロック図である。 少なくとも1つの実施形態に係るコンピュータの構成を示す概略ブロック図である。
 まず、本発明で想定する問題設定を具体例を用いて説明する。
 Xは操作変数のドメインであり、m次元ベクトル空間の部分集合であるとする。また、Xの要素をxと表わす。このとき、パラメータの実現値θに対する最適化モデルは、以下に例示する式1のように定義される。
 min f(x)
 s.t. f(x,θ)≦0  (式1)
 式1において、θは、未来の実現パラメータである。また、fは、θに関して線形であるとする。例えば、ポートフォリオの最適化問題では、期待利得rを最大化することが求められる。そこで、ポートフォリオ最適化問題は、以下に例示する式2のように定義できる。
 max r
 s.t. r≦θx 0≦Σx≦C  (式2)
 式2において、θはベクトルであり、θのi番目の要素は、資産iに投資した結果得られる利得である。xは、資産iに投資する金額を表す。また、Cは、総資産額である。言い換えると、上記式2で示す問題は、限られた資産を配分し、投資効果を最大化する問題と言える。
 また、例えば、在庫コストの最適化問題では、在庫コストを最小化することが求められる。そこで、在庫コスト最小化問題は、以下に例示する式3のように定義できる。
 min Σc
 s.t.  x≧θ  (式3)
 式3において、cは商品i1つあたりの在庫コスト、xは商品iの在庫量、θは、商品iの需要量である。
 他にも、電力需要パラメータに基づく発電最適化、商品需要パラメータに基づくプラントの設計最適化など、多くの問題が、上述する式1~3のように定式化される。
 実際には、上述するθを戦略xの決定に用いることはできない。これは、θは、xを決定した未来に判明する値のためである。よって、θの平均的な値θを予測し、その予測値としてθハット(θの上付き^。以下θ^と記す。)を取得する。このθ^をもとに最適化を行う必要がある。以下、この処理について説明する。
 まず、未来の値θは、θ~θ-θにより決定されると仮定する。ここで、θはシステム誤差を示す確率変数であり、その平均を0とする。上述するように、システム誤差は予測不可能な値である。
 次に、過去のデータを用いて予測エンジンに基づきθを推定する。推定値θ^は、不変推定量の場合、θ^~θ-θと記述できる。ここで、θは、推定誤差を示す確率変数であり、その平均は0である。これは、過去のデータの統計的不確実性から、推定値θ^も、推定誤差θが含まれた不確実な値になることを示している。
 予測最適化のプロセスは、以下の3ステップで行われる。
 ステップ1:θ^の実現値θチルダ(θの上付き~。以下θと記す。)を取得する。θは、推定値ということが出来る。
 ステップ2:θをもとに最適化を行う。
 ステップ3:θの実現値をもとに利得を算出する。
 なお、ステップ1におけるθ^は推定値を表す確率変数であり、現実ではその実現値の1つのみが取得される。
 ここで、ステップ2において、真の値θも未来のθの実現値も知り得ない。しかし、「θがどれだけθから離れているか」を得ることは出来なくても、「θがどれだけθから離れやすいか」を得ることは可能である。例えば、θ^の分散共分散行列を推定したり、ブートストラップサンプルによってθおよびθのサンプルを近似的に得ることによって、「θがどれだけθから離れやすいか」を得ることが可能である。
 一方、ステップ2において、以下に例示する式4のように、θを単に推定値で置き換えて最適化を行うと、高確率で制約を満たさなくなってしまう。なお、Kは、制約条件式のインデックスである。
 min f(x)
 s.t. f(x,θ)≦0, k=1,2,…,K  (式4)
 そのため、適切なマージンg(x)≧0を設定し、以下に例示する式5のような最適化を行う必要がある。
 min f(x)
 s.t. f(x,θ)+g(x)≦0, k=1,2,…,K  (式5)
 このような最適化方法がロバスト最適化と呼ばれる。マージンg(x)を設定する方法として、保証水準αが与えられたとき、領域Uを、以下に例示する式6を満たすように設定する。
 Prob(θ+θ∈U)≧α (式6)
 このとき、gを以下に例示する式7のように定義すると、このマージンg(x)に対して得られる解は、確率α以上で未来の実現値θに対する制約を満たす。
 g(x)=max{u∈U}f(x,u) (式7)
 しかし、このように設定された領域Uは、例えばダミーの推定パラメータが増加すると、その大きさも増大するため、gの値も増加する。その結果、過剰保証された戦略が選択されてしまう。このように定めたgは、確率αでいかなる戦略xに対しても、マージン込みの制約値が真の実現値以上になるからである。すなわち、以下に例示する式8を満たすようにするためである。
 ∀x∈X, f(x,θ)≦f(x,θ)+g(x) (式8)
 しかし、実際には全てのxに対して、上述する式8における不等式が成立する必要はなく、解の候補になるようなxに対して成立すれば十分であることを本願発明者は発見した。具体的には、発明者は、上述するダミーのパラメータの例から、パラメータの「本質的な次元」を測り、それに応じた不確実性を想定する必要があることを発見した。
 そこで、本発明では、この本質的な次元を、最適化ドメインの大きさ、つまり「最適化の不確実性」を測ることにより測定する。すなわち、「推定の不確実性」に加えて「最適化の不確実性」を測ることで、過不足のない不確実性水準に基づく最適化を行うことが可能になる。
 以下、本発明の実施形態を図面を参照して説明する。
 図1は、本発明による最適化装置の一実施形態を示すブロック図である。本実施形態の最適化装置100は、予測対象の説明に用いられる説明変数が最適化の操作変数になり、その予測対象の予測に基づいて最適化を行う。
 本実施形態の最適化装置100は、入力部10と、候補集合決定部20と、マージン決定部30と、ロバスト最適化部40と、出力部50と、記憶部60とを備えている。
 記憶部60は、例えば、磁気ディスク等により実現され、入力された情報や処理途中の情報、処理結果の情報などを記憶する。また、記憶部60は、後述するマージン決定部30がマージンを決定する際に利用するマージンの候補とする集合を記憶する。
 入力部10は、候補集合決定部20、マージン決定部30およびロバスト最適化部40が後述処理で用いる情報を入力する。具体的には、入力部10は、予測に用いる予測式(予測モデル)および推定誤差を入力する。入力部10は、例えば、予測モデルを表すパラメータを予測パラメータとして入力してもよい。また、入力部10は、推定誤差として、例えば、分散共分散行列Σで表される予測誤差部分布を入力してもよい。また、入力部10は、保証確率αを入力する。保証確率αは、例えば、ユーザにより指定されて入力される。
 候補集合決定部20は、操作変数の候補の集合(以下、ドメインと記すこともある。)を決定する。候補集合決定部20がドメインを決定する方法は任意である。候補集合決定部20は、例えば、推定誤差θの不確実性により、解に相当する操作変数xの集合Xを決定してもよい。また、候補集合決定部20は、例えば、不確実性を含まない制約のみを抽出することにより集合Xを決定してもよい。不確実性を含まない制約は、不確実なパラメータを含まないため、不確実性を含む制約と区別可能である。
 例えば、価格の最適化問題の場合、「価格は定価から5割引までの間であること」という制約は、不確実性を含まない制約である。また、例えば、在庫の最適化問題の場合、「在庫量は非負であること」および「在庫投資額は予算以内であること」という制約は、不確実性を含まない制約である。一方、「在庫量は需要を高確率で上回ること」という制約は、需要が不確実性を含むことから、不確実性を含む制約である。
 候補集合決定部20が集合Xを決定する具体例を説明する。例えば、θ+θをサンプリングし、θ+θ+θを未来の実現値の候補とする。このとき、候補集合決定部20は、以下に例示する式9を繰り返し解くことにより、集合Xを有限サンプルで近似してもよい。
 min f(x)
 s.t. f(x,θ+θ+θ)≦0, k=1,2,…,K  (式9)
 他にも、例えば、Prob(θ+θ∈T)≧1-δを満たす領域Tを定義する。なお、1-δは確率基準であり、集合Xの範囲を制限した場合に真の最適解を含む確率である。δは、例えば、ユーザにより指定される。このとき、候補集合決定部20は、領域Tを複数サンプルで近似し、そのサンプルtに対して、以下に例示する式10を解くことにより、集合Xを近似してもよい。
 min f(x)
 s.t. f(x,θ+t)≦0, k=1,2,…,K  (式10)
 マージン決定部30は、候補集合決定部20によって決定された集合に含まれる操作変数に対して、指定された確率αで推定誤差が含まれるマージンを決定する。具体的には、マージン決定部30は、決定された集合に含まれるすべての操作変数の候補(解の候補)xに対して、推定誤差を含むマージン付き制約式が真の制約式の上界になるマージンを計算する。ここで、真の制約式をf(x,θ)とし、マージンをg(x)とすると、マージン付き制約式は、f(x,θ+θ)+g(x)と表わすことができる。これは、fの線形性から、f(x,-θ)+g(x)≧0と等価である。よって、システム誤差を想定しない場合、マージン決定部30は、以下に例示する式11を満たす最小のマージンgを求めればよい。
Figure JPOXMLDOC01-appb-M000001
 
 なお、本実施形態では、マージンの候補集合G=(g{1,r},…,g{K,r})を定義しておく。マージンの候補集合Gは、例えば、1次元のパラメータr≧0でパラメータ化されたマージンの候補を含む。例えば、不確実な制約が一つの場合、Gは、一つの関数を含むことになる。このとき、ある非負の関数g(x)に基づいて、G=(rg(x))と定義した場合、これは、マージンになる。一般に、不確実な制約がK個存在するとき、各制約に関する「単位マージン」g,g,…,gに基づいて、マージンを、G=(rg,rg,…,rg)と定義すればよい。マージン決定部30は、決定された集合に含まれるすべての説明変数の候補xに対して、確率αで推定誤差が含まれたマージン付制約式が、真の制約式よりも厳しくなるような、最小のマージンG{r*}を決定すればよい。
 また、マージン決定部30は、マージンを決定する際、上記確率基準(集合の範囲を制限した場合に真の最適解を含む確率)を考慮してもよい。すなわち、候補集合決定部20が1-δの確率基準により解の候補の集合Xを制限した場合、マージン決定部30は、確率αをα+δに置き換えてマージンを決定してもよい。
 具体的には、θはサンプル出来るため、マージン決定部30は、θ{e,i},i=1,…,Iに対し、そのうちαSサンプルが、以下に例示する式12を満たすような最小のrを求めればよい。より具体的には、Sが整数であり、αが0から1の実数であるため、マージン決定部30は、αSを切り上げた数のサンプルが、以下に例示する式12を満たすような最小のrを求めればよい。
min{x∈X}  f(x,-θ{e,i})+g{k,r}(x)≧0 k=1,2,…,K
                                   (式12)
 各rに対して、Xが有限個の点により近似されているため、上記式12は、関数fおよび関数gの計算のみで判定が可能である。
 さらに、システム誤差θを考慮する場合、上記式11は、以下に例示する式13に置き換えることが可能である。
Figure JPOXMLDOC01-appb-M000002
 
 式13において、-θに関する確率Prob{θs}は、θの有限サンプルをとることにより近似でき、確率積分∫dθも同様にサンプルにより近似できる。そのため、各rに関して上記式13が成立するか否か判定することが可能である。マージン決定部30は、例えば、2分探索により条件を満たす最小のr(最小のマージン)を決定してもよい。
 ロバスト最適化部40は、決定されたマージンを用いて、操作変数に関するロバスト最適化を行う。すなわち、ロバスト最適化部40は、決定されたマージンgを用いて、上記マージン付最適化問題を解くことにより、ロバスト最適化を行う。
 ロバスト最適化部40がロバスト最適化を行う方法は任意である。ロバスト最適化部40は、一般的に知られた方法を用いてロバスト最適化を行ってもよい。ロバスト最適化を行う方法は広く知られているため、ここでは詳細な説明は省略する。
 なお、想定した候補である集合Xが最適解を含むことを想定しているが、本実施形態の場合、得られた解が集合Xに含まれない場合もある。このとき、ロバスト最適化部40は、集合Xの中で、得られた解に最も近い値に最適解を近似してもよい。また、ロバスト最適化部40は、追加のマージンを再度設定して最適化を行うことにより最適解を補正してもよい。なお、ロバスト最適化部40は、修正を行うことなく得られた解を最適解として採用してもよい。
 候補集合決定部20と、マージン決定部30と、ロバスト最適化部40とは、プログラム(最適化プログラム)に従って動作するコンピュータのプロセッサ(例えば、CPU(Central Processing Unit )、GPU(Graphics Processing Unit)、FPGA(field-programmable gate array ))によって実現される。
 例えば、プログラムは、記憶部(図示せず)に記憶され、プロセッサは、そのプログラムを読み込み、プログラムに従って、候補集合決定部20、マージン決定部30およびロバスト最適化部40として動作してもよい。また、最適化装置の機能がSaaS(Software as a Service )形式で提供されてもよい。
 候補集合決定部20と、マージン決定部30と、ロバスト最適化部40とは、それぞれが専用のハードウェアで実現されていてもよい。また、各装置の各構成要素の一部又は全部は、汎用または専用の回路(circuitry )、プロセッサ等やこれらの組合せによって実現されもよい。これらは、単一のチップによって構成されてもよいし、バスを介して接続される複数のチップによって構成されてもよい。各装置の各構成要素の一部又は全部は、上述した回路等とプログラムとの組合せによって実現されてもよい。
 また、最適化装置の各構成要素の一部又は全部が複数の情報処理装置や回路等により実現される場合には、複数の情報処理装置や回路等は、集中配置されてもよいし、分散配置されてもよい。例えば、情報処理装置や回路等は、クライアントサーバシステム、クラウドコンピューティングシステム等、各々が通信ネットワークを介して接続される形態として実現されてもよい。
 次に、本実施形態の最適化装置の動作を説明する。図2は、本実施形態の最適化装置の動作例を示すフローチャートである。
 候補集合決定部20は、操作変数の候補の集合Xを決定する(ステップS11)。マージン決定部30は、集合Xに含まれる操作変数に対して、指定された確率αで推定誤差が含まれるマージンを決定する(ステップS12)。そして、ロバスト最適化部40は、決定されたマージンを用いて、操作変数に関するロバスト最適化を行う(ステップS13)。
 以上のように、本実施形態では、候補集合決定部20が、操作変数の候補集合を決定し、マージン決定部30が、集合に含まれる操作変数に対して、指定された確率で推定誤差が含まれるマージンを決定する。そして、ロバスト最適化部40が、決定されたマージンを用いて、操作変数に関するロバスト最適化を行う。そのため、不確実性を有する最適化のパラメータが予測に基づいて与えられる場合に、過剰な保証を抑制して最適解を算出できる。
 このように、本実施形態の最適化装置は、要求する保証水準を満たすようなロバスト最適化をする際の計算コストを低減させることができる。言い換えると、本実施形態の最適化装置により、コンピュータによるロバスト最適化の計算コストを大きく抑制することが可能になる。
 次に、本実施形態の最適化問題を、在庫の最適化問題を例に説明する。ここでは、以下の式14に例示する100商品の在庫最適化問題を想定する。需要量は、正規分布により生成されていると想定し、θ=10、θs,i~N(0,2)とする。
 min Σc
 s.t.  x≧θ i=1,2,…,100 (式14)
 説明を簡素化するため、非整数の需要および負の需要を許容するとする。ただし、本例において、θが負になる確率は十分に低い。また、ここでは、過去4日間のデータをもとに需要を予測する。このとき、正規性の仮定のもと、推定値は、θe,i~N(10,1)に従う。
 まず、あらゆる商品で欠品が起こらない確率が90%になるようなマージンを考える。例えば、一般的な方法によりマージンを決定する場合、θe,i+θs,i~N(0,3)であるため、g(x)=√3、χ-1 100(0.9)≒18.9になる。つまり、在庫を推定値より18.9多く備える必要があると算出される。なお、χ100は、自由度100のカイ2乗分布の分布関数である。
 2~100番目の商品を、固定的に100個生産するとする。このとき、2~100番目の商品は、制約がほぼ確実に守られるため、実質的には1番目の在庫を保証するマージンを考慮すればよい。つまり、推定パラメータは100個存在するが、この想定では実質的に1次元の問題である。
 上述するステップ1に対応する集合Xが、X={x≧0,x=x=…=x100=100}で与えられる状況に対応する。このとき、上述するステップ2において、以下に例示する式15が満たされる。
Figure JPOXMLDOC01-appb-M000003
 
 したがって、g(x)=√3 Φ-1(0.9)≒2.2になる。すなわち、本実施形態の算出方法によれば、マージンは2.2と算出される。なお、一般的な方法では、最適化の不確実性を考慮しないため、固定値が与えられたとしても同じマージン(18.9)と算出されてしまう。
 ロバスト最適化部40は、推定値θ^およびマージン2.2を加えて上述するステップ3の処理(ロバスト最適化)を行えばよい。
 上述する例では、説明を簡略化するため、実質的なドメインXを決定する根拠を明示せずに説明した。次に、推定値に基づいてドメインXを決定する具体例を説明する。具体例として、ポートフォリオ最適化を挙げ、次元は100であるとする。
 ここで、推定される期待利得において、1~3番目の商品の利得がその他の商品の利得に比べて非常に大きいとする。このとき、実質的なドメインXは、X={x≧0|x=x=…=x100=0}であると考えられる。誤差θおよび誤差θをサンプルして得られた推定値に含めて最適化を繰り返すことで、Xを近似するサンプルが得られる。このような方法でも、ドメインXを自動的に決定することが可能である。
 次に、本発明の概要を説明する。図3は、本発明による最適化装置の概要を示すブロック図である。本発明による最適化装置は、予測対象(例えば、利得)の説明に用いられる説明変数(例えば、戦略x)が最適化の操作変数になり、その予測対象の予測に基づいて最適化を行う最適化装置80(例えば、最適化装置100)であって、予測される操作変数の候補の集合(例えば、ドメイン)を決定する候補集合決定部81(例えば、候補集合決定部20)と、集合に含まれる操作変数に対して、指定された確率(例えば、保証確率α)で予測による誤差である推定誤差(例えば、θ)が含まれるマージン(例えば、g)を決定するマージン決定部82(例えば、マージン決定部30)と、決定されたマージンを用いて、操作変数に関するロバスト最適化を行うロバスト最適化部83(例えば、ロバスト最適化部40)とを備えている。
 そのような構成により、不確実性を有する最適化のパラメータが予測に基づいて与えられる場合に、過剰な保証を抑制して最適解を算出できる。
 また、候補集合決定部81は、予測値からの誤差(例えば、システム誤差、推定誤差)の範囲に含まれるサンプルで候補の集合を近似してもよい。
 また、マージン決定部82は、決定された集合に含まれるすべての操作変数の候補に対して、推定誤差を含むマージン付き制約式が真の制約式の上界になるマージンを決定してもよい。
 また、マージン決定部82は、マージンの候補集合の中から、決定された集合に含まれるすべての説明変数の候補に対して、指定された確率で推定誤差が含まれたマージン付制約式が、真の制約式よりも厳しくなる、最小のマージンを決定してもよい。
 具体的には、マージンの候補集合は、1次元のパラメータで表されるマージンの候補を含んでいてもよい。
 また、候補集合決定部81は、最適化による誤差を示すシステム誤差および推定誤差の範囲に含まれるサンプルで候補の集合を近似し、マージン決定部82は、指定された確率でシステム誤差および推定誤差が含まれるマージンを決定してもよい。
 図4は、少なくとも1つの実施形態に係るコンピュータの構成を示す概略ブロック図である。コンピュータ1000は、CPU1001、主記憶装置1002、補助記憶装置1003、インタフェース1004を備える。
 上述の最適化装置は、コンピュータ1000に実装される。そして、上述した各処理部の動作は、プログラム(最適化プログラム)の形式で補助記憶装置1003に記憶されている。CPU1001は、プログラムを補助記憶装置1003から読み出して主記憶装置1002に展開し、当該プログラムに従って上記処理を実行する。
 なお、少なくとも1つの実施形態において、補助記憶装置1003は、一時的でない有形の媒体の一例である。一時的でない有形の媒体の他の例としては、インタフェース1004を介して接続される磁気ディスク、光磁気ディスク、CD-ROM、DVD-ROM、半導体メモリ等が挙げられる。また、このプログラムが通信回線によってコンピュータ1000に配信される場合、配信を受けたコンピュータ1000が当該プログラムを主記憶装置1002に展開し、上記処理を実行しても良い。
 また、当該プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、当該プログラムは、前述した機能を補助記憶装置1003に既に記憶されている他のプログラムとの組み合わせで実現するもの、いわゆる差分ファイル(差分プログラム)であっても良い。
 10 入力部
 20 候補集合決定部
 30 マージン決定部
 40 ロバスト最適化部
 50 出力部
 100 最適化装置

Claims (10)

  1.  予測対象の説明に用いられる説明変数が最適化の操作変数になり、当該予測対象の予測に基づいて最適化を行う最適化装置であって、
     予測される操作変数の候補の集合を決定する候補集合決定部と、
     前記集合に含まれる操作変数に対して、指定された確率で前記予測による誤差である推定誤差が含まれるマージンを決定するマージン決定部と、
     決定されたマージンを用いて、操作変数に関するロバスト最適化を行うロバスト最適化部とを備えた
     ことを特徴とする最適化装置。
  2.  候補集合決定部は、予測値からの誤差の範囲に含まれるサンプルで候補の集合を近似する
     請求項1記載の最適化装置。
  3.  マージン決定部は、決定された集合に含まれるすべての操作変数の候補に対して、推定誤差を含むマージン付き制約式が真の制約式の上界になるマージンを決定する
     請求項1または請求項2記載の最適化装置。
  4.  マージン決定部は、マージンの候補集合の中から、決定された集合に含まれるすべての説明変数の候補に対して、指定された確率で推定誤差が含まれたマージン付制約式が、真の制約式よりも厳しくなる、最小のマージンを決定する
     請求項1から請求項3のうちのいずれか1項に記載の最適化装置。
  5.  マージンの候補集合は、1次元のパラメータで表されるマージンの候補を含む
     請求項4記載の最適化装置。
  6.  候補集合決定部は、最適化による誤差を示すシステム誤差および推定誤差の範囲に含まれるサンプルで候補の集合を近似し、
     マージン決定部は、指定された確率で前記システム誤差および推定誤差が含まれるマージンを決定する
     請求項1から請求項5のうちのいずれか1項に記載の最適化装置。
  7.  予測対象の説明に用いられる説明変数が最適化の操作変数になり、当該予測対象の予測に基づいて最適化を行う最適化方法であって、
     予測される操作変数の候補の集合を決定し、
     前記集合に含まれる操作変数に対して、指定された確率で前記予測による誤差である推定誤差が含まれるマージンを決定し、
     決定されたマージンを用いて、操作変数に関するロバスト最適化を行う
     ことを特徴とする最適化方法。
  8.  予測値からの誤差の範囲に含まれるサンプルで候補の集合を近似する
     請求項7記載の最適化方法。
  9.  予測対象の説明に用いられる説明変数が最適化の操作変数になり、当該予測対象の予測に基づいて最適化を行うコンピュータに適用される最適化プログラムであって、
     前記コンピュータに、
     予測される操作変数の候補の集合を決定する候補集合決定処理、
     前記集合に含まれる操作変数に対して、指定された確率で前記予測による誤差である推定誤差が含まれるマージンを決定するマージン決定処理、および、
     決定されたマージンを用いて、操作変数に関するロバスト最適化を行うロバスト最適化処理
     を実行させるための最適化プログラム。
  10.  コンピュータに、
     候補集合決定処理で、予測値からの誤差の範囲に含まれるサンプルで候補の集合を近似させる
     請求項9記載の最適化プログラム。
PCT/JP2018/003681 2018-02-02 2018-02-02 最適化装置、最適化方法および最適化プログラム WO2019150561A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2019568528A JP6947229B2 (ja) 2018-02-02 2018-02-02 最適化装置、最適化方法および最適化プログラム
US16/966,715 US20210034999A1 (en) 2018-02-02 2018-02-02 Optimization device, optimization method, and optimization program
PCT/JP2018/003681 WO2019150561A1 (ja) 2018-02-02 2018-02-02 最適化装置、最適化方法および最適化プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2018/003681 WO2019150561A1 (ja) 2018-02-02 2018-02-02 最適化装置、最適化方法および最適化プログラム

Publications (1)

Publication Number Publication Date
WO2019150561A1 true WO2019150561A1 (ja) 2019-08-08

Family

ID=67478122

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/003681 WO2019150561A1 (ja) 2018-02-02 2018-02-02 最適化装置、最適化方法および最適化プログラム

Country Status (3)

Country Link
US (1) US20210034999A1 (ja)
JP (1) JP6947229B2 (ja)
WO (1) WO2019150561A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7201911B2 (ja) * 2019-05-13 2023-01-11 富士通株式会社 最適化装置および最適化装置の制御方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007524907A (ja) * 2003-06-20 2007-08-30 ストラテジック キャピタル ネットワーク エルエルシー 資源配分方法
JP2009032104A (ja) * 2007-07-27 2009-02-12 Toyota Motor Corp ロバスト最適化方法、ロバスト最適化装置、および、プログラム
JP2015094665A (ja) * 2013-11-12 2015-05-18 株式会社日立製作所 漏水調査計画立案装置、漏水調査計画立案システム、及び漏水調査計画立案方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007524907A (ja) * 2003-06-20 2007-08-30 ストラテジック キャピタル ネットワーク エルエルシー 資源配分方法
JP2009032104A (ja) * 2007-07-27 2009-02-12 Toyota Motor Corp ロバスト最適化方法、ロバスト最適化装置、および、プログラム
JP2015094665A (ja) * 2013-11-12 2015-05-18 株式会社日立製作所 漏水調査計画立案装置、漏水調査計画立案システム、及び漏水調査計画立案方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
TAKEDA, AKIKO: "Robustoness in optimization under uncertainty", SYSTEMS, CONTROL AND INFORMATION, vol. 55, no. 4, 15 April 2011 (2011-04-15), pages 17 - 22, ISSN: 0916-1600 *
WADA, TAKAYUKI: "Sequential randomized algorithms for robust optimization", TRANSACTIONS OF THE SOCIETY OF INSTRUMENT AND CONTROL ENGINEERS, vol. 44, no. 12, 31 December 2008 (2008-12-31), pages 1027 - 1033, ISSN: 0453-4654 *
YAMAMOTO, REI: "Robust portfolio optimization", THE 2011 FALL NATIONAL CONFERENCE OF OPERATIONS RESEARCH SOCIETY OF JAPAN, 13 September 2011 (2011-09-13), pages 112, 113, ISSN: 1883-1893 *

Also Published As

Publication number Publication date
JPWO2019150561A1 (ja) 2021-01-07
JP6947229B2 (ja) 2021-10-13
US20210034999A1 (en) 2021-02-04

Similar Documents

Publication Publication Date Title
AU2020202542B2 (en) Transforming attributes for training automated modeling systems
CN114127803A (zh) 用于最优预测模型选择的多方法系统
CN113269359B (zh) 用户财务状况预测方法、设备、介质及计算机程序产品
US20220391783A1 (en) Stochastic demand model ensemble
US20240095571A1 (en) Method and apparatus for constructing quantum circuit corresponding to linear function
Cuong et al. Container throughput analysis and seaport operations management using nonlinear control synthesis
JP7044153B2 (ja) 評価システム、評価方法および評価用プログラム
US20140214722A1 (en) Real time evaluation of financial returns based on nearly elliptical models
WO2019150561A1 (ja) 最適化装置、最適化方法および最適化プログラム
CN117575596B (zh) 基于人工智能的欺诈行为分析方法及数字金融大数据系统
US11586951B2 (en) Evaluation system, evaluation method, and evaluation program for evaluating a result of optimization based on prediction
US20230376559A1 (en) Solution method selection device and method
CN110796381B (zh) 风控模型的建模方法、装置、终端设备及介质
US20230222385A1 (en) Evaluation method, evaluation apparatus, and non-transitory computer-readable recording medium storing evaluation program
JPWO2017145664A1 (ja) 最適化システム、最適化方法および最適化プログラム
JP7212231B2 (ja) 情報処理装置、方法及びプログラム
JP6726312B2 (ja) シミュレーション方法、システム、及びプログラム
JP2022163293A (ja) 運用支援装置、運用支援方法及びプログラム
JP2022031119A (ja) 最適化ソルバマシンで二次整数計画(qip)問題を解く方法
WO2018155319A1 (ja) 最適化装置、最適化方法および最適化プログラム
US20230385755A1 (en) Methods, systems, articles of manufacture and apparatus to regress independent and dependent variable data
Yang et al. Using Sector-Index Data to Model Demand Allocation for Capacity and Production Planning
Allena et al. Theoretical and Empirical Differences Between Diagonal and Full BEKK for Risk Management
WO2023073655A1 (en) System and method for optimizing non-linear constraints of an industrial process unit
Tan et al. Theoretical and Empirical Differences Between Diagonal and Full BEKK for Risk Management

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18904325

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2019568528

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18904325

Country of ref document: EP

Kind code of ref document: A1