JP2020086706A - Arithmetic unit, method and program for nonlinear planning problem - Google Patents

Arithmetic unit, method and program for nonlinear planning problem Download PDF

Info

Publication number
JP2020086706A
JP2020086706A JP2018217288A JP2018217288A JP2020086706A JP 2020086706 A JP2020086706 A JP 2020086706A JP 2018217288 A JP2018217288 A JP 2018217288A JP 2018217288 A JP2018217288 A JP 2018217288A JP 2020086706 A JP2020086706 A JP 2020086706A
Authority
JP
Japan
Prior art keywords
function
constraint condition
nonlinear
linear
programming problem
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
JP2018217288A
Other languages
Japanese (ja)
Other versions
JP7135768B2 (en
Inventor
孝介 川上
Kosuke Kawakami
孝介 川上
敬和 小林
Takakazu Kobayashi
敬和 小林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Steel Corp
Original Assignee
Nippon Steel Corp
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 Nippon Steel Corp filed Critical Nippon Steel Corp
Priority to JP2018217288A priority Critical patent/JP7135768B2/en
Publication of JP2020086706A publication Critical patent/JP2020086706A/en
Application granted granted Critical
Publication of JP7135768B2 publication Critical patent/JP7135768B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/30Computing systems specially adapted for manufacturing

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

To acquire a highly accurate optimal solution within a practical time by appropriately setting an approximation range of piecewise linear approximation in solving a nonlinear planning problem.SOLUTION: A compounding planning device 100 forms a compounding plan with a compounding ratio as a determination variable in a manufacturing process for compounding raw materials having a plurality of different qualities to manufacture a product by a method for solving a non-linear planning problem. A constraint condition setting part 103 introduces an intermediate variable to a nonlinear function representing a nonlinear constraint condition to convert it into a separable function, and represents it in the form of the sum of a one-variable function. Also, the constraint condition setting part 103 generates a plurality of samples of the compounding ratio so as to satisfy a condition according to a nonlinear constraint by random sampling, and sets the upper and lower limit values of the intermediate variable by using the samples. Then, the constraint condition setting part 103 performs piecewise linear approximation of a function constituting the separable function within the range of the upper and lower limit values of the intermediate variable, and sets a constraint condition.SELECTED DRAWING: Figure 1

Description

本発明は、線形制約条件と非線形制約条件とを含む制約条件の下で目的関数を最小化又は最大化する非線形計画問題を求解するための非線形計画問題の演算装置、方法及びプログラムに関する。 The present invention relates to a nonlinear programming problem computing device, method, and program for solving a nonlinear programming problem that minimizes or maximizes an objective function under a constraint condition that includes a linear constraint condition and a nonlinear constraint condition.

数理計画問題は、制約条件の下で目的関数を最小化又は最大化する問題である。その中でも、制約条件及び目的関数のうち少なくともいずれか一方に非線形関数を含むものを非線形計画問題と呼ぶ。
例えば製鉄業におけるコークスや焼結鉱の製造プロセスでは、各工場が保有する複数の原材料を配合して、製品を製造する。この場合に、目標となる製品の特性値や生産量を満たすように配合計画を立案しなければならない。また、製造プロセスにおける操業条件を満たすように配合計画を立案しなければならない。
このように目標となる製品の特性値や生産量、操業条件を満たすようにするための制約条件は、数学的に最適解を求めることが難しい関数を含む場合が多い。例えばコークスの品質を予測する推定式には、コークス強度等の構造的特性を表わす式が含まれるが、この推定式には、実験や理論に基づいた非線形関数が使用される。このように製造プロセスにおける数理計画問題の多くは、複雑な非線形計画問題となるため、実用時間内に精度の高い最適解を得ることが難しかった。
The mathematical programming problem is a problem of minimizing or maximizing an objective function under a constraint condition. Among them, the one including a nonlinear function in at least one of the constraint condition and the objective function is called a nonlinear programming problem.
For example, in the manufacturing process of coke and sinter in the steel industry, a plurality of raw materials held by each factory are mixed to manufacture a product. In this case, a blending plan must be prepared so as to satisfy the target product characteristic value and production amount. In addition, a blending plan must be prepared so as to satisfy the operating conditions in the manufacturing process.
As described above, the constraint condition for satisfying the target characteristic value of the product, the production amount, and the operation condition often includes a function in which it is difficult to mathematically obtain an optimum solution. For example, an estimation formula for predicting the quality of coke includes a formula representing structural characteristics such as coke strength, and a non-linear function based on experiments and theory is used for this estimation formula. As described above, since many of the mathematical programming problems in the manufacturing process are complicated nonlinear programming problems, it is difficult to obtain a highly accurate optimal solution within the practical time.

特開2009−175804号公報JP, 2009-175804, A

Applied Mathematical Programming, Stephen P. Bradley, Addison-Wesley, 1977Applied Mathematical Programming, Stephen P. Bradley, Addison-Wesley, 1977 多変数関数を一変数の和で表現するアルゴリズムI,山村清隆、村山泰子,電子情報通信学会技術研究報告,CAS,回路とシステム 93(102),67-74,1993-06-19Algorithm I for expressing multivariable functions by sum of one variable I, Kiyotaka Yamamura, Yasuko Murayama, IEICE technical report, CAS, Circuits and Systems 93(102), 67-74, 1993-06-19 多変数関数を一変数の和で表現するアルゴリズムII,山村清隆、村山泰子,電子情報通信学会技術研究報告,CAS,回路とシステム 93(102),75-82,1993-06-19Algorithm for expressing multi-variable functions by sum of one variable II, Kiyotaka Yamamura, Yasuko Murayama, IEICE Technical Report, CAS, Circuits and Systems 93(102), 75-82, 1993-06-19 藤江哲也, "整数計画法による定式化入門," オペレーションズ・リサーチ : 経営の科学,vol. 57,no. 4,pp. 190-197,Apr. 2012.Tetsuya Fujie, "Introduction to Formulation by Integer Programming," Operations Research: Science of Management, vol. 57, no. 4, pp. 190-197, Apr. 2012.

非線形計画問題の求解手法として、いくつかの提案がなされている。
例えば特許文献1には、複数種の配合原材料を混合する配合計画を作成するためのシミュレータと、配合原材料の需給バランス制約を表す数式モデル、及び、混合後の性状制約を表す数式モデルを構築するモデル構築部と、モデル構築部により構築された数式モデルを用い、所定の目的関数に基づいて最適化計算を行い、シミュレータに対する指示を算出する計画部とを備え、混合後の性状制約を表す数式モデルが非線形の数式を含む場合、前記非線形の数式に代えて線形の数式を導入して数式モデルを定式化し、その線形の数式を含む数式モデルを用いた計画部による求解結果が前記非線形の数式を含む数式モデルを満たすか否かを確認する手法が開示されている。
Several proposals have been made as a method for solving a nonlinear programming problem.
For example, in Patent Document 1, a simulator for creating a compounding plan for mixing a plurality of types of compounding raw materials, a mathematical model expressing the supply and demand balance constraint of the compounding raw materials, and a mathematical model expressing the property constraint after mixing are constructed. A model construction section and a mathematical section model constructed by the model construction section are used to perform optimization calculation based on a predetermined objective function, and a planning section for calculating instructions to the simulator. When the model includes a non-linear mathematical expression, a linear mathematical expression is introduced instead of the non-linear mathematical expression to formulate the mathematical expression model, and the solution result by the planning unit using the mathematical expression model including the linear mathematical expression is the non-linear mathematical expression. A method for confirming whether or not a mathematical model including is satisfied is disclosed.

また、非特許文献1には、非線形関数に補助変数(中間変数とも呼ばれる)を導入し、分離可能関数に変換した後に、区分線形関数で近似して、混合整数計画問題として定式化する手法が示されている。ここで、分離可能関数とは、一変数関数の和の形で表現できる多変数関数である。非線形関数を分離可能関数に変換することにより、区分線形近似の関数評価回数が、大幅に減少することが知られている(非特許文献2、非特許文献3)。区分線形関数は、区分的に定義される関数で、各区間が一次関数となっているものをいう。非線形関数を区分線形関数で近似することは区分線形近似と呼ばれる。以下では、非線形関数を区分線形関数で近似する全範囲を近似範囲と称し、区分線形関数で近似する各区間(一つの一次関数で近似する各区間)を近似区間と称する。 In Non-Patent Document 1, a method of introducing an auxiliary variable (also referred to as an intermediate variable) to a non-linear function, converting it into a separable function, and then approximating it with a piecewise linear function to formulate it as a mixed integer programming problem It is shown. Here, the separable function is a multivariable function that can be expressed in the form of a sum of univariate functions. It is known that the number of function evaluations in piecewise linear approximation is significantly reduced by converting a non-linear function into a separable function (Non-Patent Documents 2 and 3). The piecewise linear function is a function that is defined piecewise, and each section is a linear function. Approximating a non-linear function with a piecewise linear function is called piecewise linear approximation. Hereinafter, the entire range in which the nonlinear function is approximated by the piecewise linear function is referred to as an approximation range, and each section approximated by the piecewise linear function (each section approximated by one linear function) is referred to as an approximate section.

しかしながら、特許文献1の手法では、非線形計画問題を線形計画問題に簡略化して近似するため、近似誤差が発生し、十分な精度の解が得られないおそれがある。 However, in the method of Patent Document 1, since a nonlinear programming problem is simplified and approximated to a linear programming problem, an approximation error may occur and a solution with sufficient accuracy may not be obtained.

また、非特許文献1の手法では、分離後の非線形関数それぞれに近似範囲を設定する必要があるが、適切な近似範囲が設定されない場合、区分線形関数の発散や、近似精度の悪化を招くおそれがある。 Further, in the method of Non-Patent Document 1, it is necessary to set an approximation range for each of the separated non-linear functions, but if an appropriate approximation range is not set, divergence of the piecewise linear function and deterioration of approximation accuracy may occur. There is.

本発明は上記のような点に鑑みてなされたものであり、非線形計画問題を求解する際に、区分線形近似の近似範囲を適切に設定し、実用時間内に精度の高い最適解が得られるようにすることを目的とする。 The present invention has been made in view of the above points, and when solving a nonlinear programming problem, an approximate range of piecewise linear approximation is appropriately set, and a highly accurate optimal solution can be obtained within a practical time. The purpose is to do so.

上記の課題を解決するための本発明の要旨は、以下のとおりである。
[1] 線形制約条件と非線形制約条件とを含む制約条件の下で目的関数を最小化又は最大化する非線形計画問題を求解するための非線形計画問題の演算装置であって、
前記非線形制約条件を表わす非線形関数に中間変数を導入して分離可能関数に変換した上で区分線形近似して、制約条件を設定する設定手段と、
前記設定手段で設定した制約条件の下で前記非線形計画問題を求解する求解手段とを備え、
前記設定手段は、ランダムサンプリングにより、前記非線形関数を構成する変数のうち中間変数を除いた独立変数のサンプルを複数生成し、前記サンプルを用いることにより、前記中間変数の上下限値を設定して、当該上下限値の範囲で、前記分離可能関数を構成する関数を区分線形近似することを特徴とする非線形計画問題の演算装置。
[2] 前記設定手段は、前記非線形制約条件に準じた条件を満たすように、前記非線形関数を構成する変数のうち中間変数を除いた独立変数のサンプルを複数生成することを特徴とする[1]に記載の非線形計画問題の演算装置。
[3] 前記設定手段は、前記非線形関数を、前記中間変数を導入して一変数関数の和の形で表現することを特徴とする[1]又は[2]に記載の非線形計画問題の演算装置。
[4] 前記非線形計画問題は、複数の原材料を配合して製品を製造する製造プロセスにおいて、配合割合を決定変数とする配合計画問題であり、
前記設定手段は、ランダムサンプリングにより、配合割合をランダムに生成し、配合割合のサンプルを複数生成することを特徴とする[1]乃至[3]のいずれか一つに記載の非線形計画問題の演算装置。
[5] 前記設定手段は、前記分離可能関数を構成する各関数に対して、前記中間変数の上下限値の設定、及び区分線形近似を繰り返すことを特徴とする[1]乃至[4]のいずれか一つに記載の非線形計画問題の演算装置。
[6] 線形制約条件と非線形制約条件とを含む制約条件の下で目的関数を最小化又は最大化する非線形計画問題を求解するための非線形計画問題の演算方法であって、
設定手段が、前記非線形制約条件を表わす非線形関数に中間変数を導入して分離可能関数に変換した上で区分線形近似して、制約条件を設定する設定ステップと、
求解手段が、前記設定ステップで設定した制約条件の下で前記非線形計画問題を求解する求解ステップとを有し、
前記設定ステップでは、ランダムサンプリングにより、前記非線形関数を構成する変数のうち中間変数を除いた独立変数のサンプルを複数生成し、前記サンプルを用いることにより、前記中間変数の上下限値を設定して、当該上下限値の範囲で、前記分離可能関数を構成する関数を区分線形近似することを特徴とする非線形計画問題の演算方法。
[7] 線形制約条件と非線形制約条件とを含む制約条件の下で目的関数を最小化又は最大化する非線形計画問題を求解するためのプログラムであって、
前記非線形制約条件を表わす非線形関数に中間変数を導入して分離可能関数に変換した上で区分線形近似して、制約条件を設定する設定手段と、
前記設定手段で設定した制約条件の下で前記非線形計画問題を求解する求解手段としてコンピュータを機能させ、
前記設定手段は、ランダムサンプリングにより、前記非線形関数を構成する変数のうち中間変数を除いた独立変数のサンプルを複数生成し、前記サンプルを用いることにより、前記中間変数の上下限値を設定して、当該上下限値の範囲で、前記分離可能関数を構成する関数を区分線形近似することを特徴とするプログラム。
The gist of the present invention for solving the above problems is as follows.
[1] A calculation device for a nonlinear programming problem for solving a nonlinear programming problem that minimizes or maximizes an objective function under a constraint condition including a linear constraint condition and a nonlinear constraint condition,
Setting means for introducing an intermediate variable into the non-linear function representing the non-linear constraint condition, converting it into a separable function, and then performing piecewise linear approximation, and setting the constraint condition,
A solving means for solving the nonlinear programming problem under the constraint condition set by the setting means,
The setting means generates a plurality of independent variable samples excluding intermediate variables from variables constituting the nonlinear function by random sampling, and uses the samples to set upper and lower limit values of the intermediate variable. An arithmetic device for a nonlinear programming problem, characterized by performing a piecewise linear approximation of a function forming the separable function in the range of the upper and lower limits.
[2] The setting means generates a plurality of independent variable samples excluding intermediate variables among variables constituting the nonlinear function so as to satisfy a condition conforming to the nonlinear constraint condition [1 ] The arithmetic device of the nonlinear programming problem described in the above.
[3] The setting means expresses the non-linear function in the form of a sum of univariate functions by introducing the intermediate variable, and calculates the non-linear programming problem described in [1] or [2]. apparatus.
[4] The nonlinear programming problem is a compounding planning problem in which a compounding ratio is a decision variable in a manufacturing process in which a plurality of raw materials are compounded to manufacture a product,
The setting means randomly generates a blending ratio by random sampling, and generates a plurality of samples of the blending ratio. [1] to [3] The nonlinear programming problem calculation according to any one of [1] to [3]. apparatus.
[5] The setting means repeats the setting of the upper and lower limit values of the intermediate variable and piecewise linear approximation for each function forming the separable function of [1] to [4]. An arithmetic device for the nonlinear programming problem described in any one.
[6] A calculation method of a nonlinear programming problem for solving a nonlinear programming problem that minimizes or maximizes an objective function under a constraint condition including a linear constraint condition and a nonlinear constraint condition,
A setting step in which the setting means introduces an intermediate variable into the non-linear function representing the non-linear constraint condition and converts it into a separable function, and then performs piecewise linear approximation to set the constraint condition;
The solution solving means has a solution solving step of solving the nonlinear programming problem under the constraint condition set in the setting step,
In the setting step, random sampling is performed to generate a plurality of independent variable samples excluding intermediate variables among the variables forming the nonlinear function, and the samples are used to set upper and lower limit values of the intermediate variable. A method for computing a non-linear programming problem, characterized by performing a piecewise linear approximation of a function that constitutes the separable function in the range of the upper and lower limits.
[7] A program for solving a nonlinear programming problem that minimizes or maximizes an objective function under a constraint condition including a linear constraint condition and a nonlinear constraint condition,
Setting means for setting a constraint condition by introducing an intermediate variable into a nonlinear function representing the nonlinear constraint condition, converting the variable into a separable function, and then performing a piecewise linear approximation,
Causing a computer to function as a solution finding means for solving the nonlinear programming problem under the constraint condition set by the setting means,
The setting means generates a plurality of independent variable samples excluding intermediate variables from variables constituting the nonlinear function by random sampling, and uses the samples to set upper and lower limit values of the intermediate variable. A program, characterized by performing a piecewise linear approximation of a function constituting the separable function in the range of the upper and lower limits.

本発明によれば、非線形計画問題を求解する際に、区分線形近似の近似範囲を適切に設定し、実用時間内に精度の高い最適解を得ることができる。 According to the present invention, when solving a nonlinear programming problem, an approximate range of piecewise linear approximation can be appropriately set, and an accurate and highly accurate solution can be obtained within practical time.

実施形態に係る配合計画立案装置の機能構成を示す図である。It is a figure which shows the function structure of the formulation planning apparatus which concerns on embodiment. 実施形態に係る配合計画立案装置による配合計画の立案方法の処理を示すフローチャートである。It is a flow chart which shows processing of a formulation method of a formulation plan by a formulation planning device concerning an embodiment. 図2のフローチャートにおける制約条件の設定処理の詳細を示すフローチャートである。3 is a flowchart showing details of constraint condition setting processing in the flowchart of FIG. 2. 図3のフローチャートにおけるランダムサンプリングの詳細を示すフローチャートである。4 is a flowchart showing details of random sampling in the flowchart of FIG. 3. 変数の範囲を決定するイメージを示す図である。It is a figure which shows the image which determines the range of a variable. 中間変数v4の範囲を求めた結果を示し、中間変数v4と2log(v4)との関係を示す図である。Shows the result of obtaining the range of the intermediate variable v 4, a diagram showing the relationship between the intermediate variable v 4 and 2log (v 4). 中間変数v4と2log(v4)との関係を示す図である。It is a diagram showing the relationship between the intermediate variable v 4 and 2log (v 4).

以下、添付図面を参照して、本発明の好適な実施形態について説明する。
線形制約条件(以下、単に線形制約と呼ぶ)と非線形制約条件(以下、単に非線形制約と呼ぶ)とを含む制約条件の下で目的関数を最小化又は最大化する非線形計画問題を求解する際に、非線形制約を表わす非線形関数が多変数関数である場合、この非線形関数を、中間変数を導入して一変数関数の和の形で表現することで、分離可能関数に変換することが考えられる。これにより、非線形関数の次元を減らし、区分線形近似に必要な変数を減らすことができる。
Hereinafter, preferred embodiments of the present invention will be described with reference to the accompanying drawings.
When solving a nonlinear programming problem that minimizes or maximizes the objective function under a constraint condition including a linear constraint condition (hereinafter, simply referred to as linear constraint) and a nonlinear constraint condition (hereinafter, simply referred to as non-linear constraint) When the non-linear function representing the non-linear constraint is a multivariable function, it is possible to convert the non-linear function into a separable function by introducing an intermediate variable and expressing it in the form of the sum of the one-variable functions. This reduces the dimension of the non-linear function and reduces the variables required for piecewise linear approximation.

このようにして分離した後の一変数関数を区分線形近似するためには、その近似範囲を決定しなければならない。一変数関数の近似範囲を大きくすると、近似精度を保つためにより多くの近似区間が必要となる他、近似対象となる非線形関数が発散する可能性がある。したがって、できるだけ狭い近似範囲を事前に決定することが望ましい。しかしながら、近似範囲の決定は、非線形制約を考慮しなければならず、元の非線形計画問題と同等に難しい。 In order to perform the piecewise linear approximation of the one-variable function after separating in this way, the approximation range must be determined. When the approximation range of the univariate function is increased, more approximation intervals are required to maintain the approximation accuracy, and there is a possibility that the non-linear function to be approximated may diverge. Therefore, it is desirable to determine an approximation range that is as narrow as possible in advance. However, the determination of the approximate range is as difficult as the original nonlinear programming problem because the nonlinear constraint must be taken into consideration.

そこで、本発明者は、一変数関数の近似範囲を決定する手法を確立した。以下に詳述するが、ランダムサンプリングにより、非線形関数を構成する変数のうち中間変数を除いた独立変数のサンプルを複数生成する。その際、当該独立変数のサンプルは、非線形制約に準じた条件を満たすようにする生成する。そして、これらサンプルを用いることにより、中間変数の上下限値を設定して一変数関数の近似範囲を決定する。これにより、非線形計画問題を求解する際に、区分線形近似の近似範囲を適切に設定し、実用時間内に精度の高い最適解を得ることができる。 Therefore, the present inventor has established a method for determining the approximate range of a univariate function. As will be described in detail below, random sampling generates a plurality of independent variable samples excluding the intermediate variable from the variables forming the nonlinear function. At that time, the sample of the independent variable is generated so as to satisfy the condition conforming to the nonlinear constraint. Then, by using these samples, the upper and lower limits of the intermediate variable are set and the approximation range of the univariate function is determined. As a result, when solving a nonlinear programming problem, the approximation range of piecewise linear approximation can be set appropriately, and a highly accurate optimal solution can be obtained within practical time.

以下に述べる実施形態では、製鉄業におけるコークスや焼結鉱の製造プロセスのように、複数の異なる性質を持つ原材料(以下、銘柄と呼ぶ)を配合して製品を製造する製造プロセスに対して本発明を適用した例を説明する。
図1に、実施形態に係る配合計画立案装置100の機能構成を示す。配合計画立案装置100は、本発明を適用した非線形計画問題の演算装置として機能し、複数の異なる性質を持つ銘柄を配合して製品を製造する製造プロセスにおいて、配合割合を決定変数とし、目標となる製品の特性値や生産量、操業条件を満たし、かつ、製造に係るコストを最小化する配合計画を立案する。つまり、最適な配合割合を求める。本実施形態で取り扱う配合計画問題では、制約条件の少なくとも一部が、非線形関数で表わされる非線形制約となっている。
In the embodiments described below, a manufacturing process for manufacturing a product by mixing raw materials (hereinafter, referred to as a brand) having a plurality of different properties, such as a manufacturing process of coke and a sintered ore in the iron manufacturing industry An example to which the invention is applied will be described.
FIG. 1 shows a functional configuration of a formulation planning apparatus 100 according to the embodiment. The blending plan planning apparatus 100 functions as a computing device for a nonlinear programming problem to which the present invention is applied, and in a manufacturing process in which a plurality of brands having different properties are blended to manufacture a product, the blending ratio is used as a decision variable, and a target is set. Formulate a compounding plan that satisfies the characteristic values, production amount, and operating conditions of the following products and minimizes the manufacturing cost. That is, the optimum blending ratio is obtained. In the compounding planning problem handled in this embodiment, at least a part of the constraint conditions is a non-linear constraint represented by a non-linear function.

入力部101は、例えばデータベース108から配合計画を立案する上で必要になる各銘柄の性状情報(性質や状態に関する情報)、操業条件情報、コスト情報等のデータを取り込む。 The input unit 101 fetches data such as property information (information about properties and state) of each brand, operating condition information, cost information, and the like, which is necessary for making a formulation plan from the database 108, for example.

分割数設定部102は、非線形関数を区分線形近似する際の分割数を設定する。分割数設定部102は、例えばオペレータの指示に従って分割数を設定するようにしてもよいし、予め定められた分割数の範囲内で自動的に分割数を設定するようにしてもよい。 The division number setting unit 102 sets the division number for piecewise linear approximation of the nonlinear function. The division number setting unit 102 may set the division number according to, for example, an operator's instruction, or may automatically set the division number within a range of a predetermined division number.

制約条件設定部103は、入力部101で取り込んだデータに基づいて、目標となる製品の特性値や生産量、操業条件を満たすための制約条件を設定する。
ここで、制約条件設定部103は、関数変換部103aと、上下限値設定部103bとを備える。
関数変換部103aは、非線形制約を表わす非線形関数が、分離可能関数であるか否かを判断する。分離可能関数とは、n次元のユークリッド空間の任意のx=(x1,x2,・・・,xnTに対して、関数fが下記のかたちで表わされる関数である。非線形関数が分離可能関数でない場合には、非線形関数に中間変数を導入して分離可能関数に変換し、一変数関数の和の形で表現する。
The constraint condition setting unit 103 sets a constraint condition for satisfying a target product characteristic value, a production amount, and an operation condition based on the data captured by the input unit 101.
Here, the constraint condition setting unit 103 includes a function conversion unit 103a and an upper and lower limit value setting unit 103b.
The function conversion unit 103a determines whether or not the nonlinear function representing the nonlinear constraint is a separable function. The separable function is a function in which the function f is expressed in the following form with respect to arbitrary x=(x 1 , x 2 ,..., X n ) T in the n-dimensional Euclidean space. When the non-linear function is not a separable function, an intermediate variable is introduced into the non-linear function to convert it into a separable function, which is expressed as a sum of univariate functions.

Figure 2020086706
Figure 2020086706

非線形関数を分離可能関数に変換すると、一つの非線形関数が、複数の一変数関数で表現される。ここで、各一変数関数には非線形関数が含まれる場合がある。このため、定式化のためには、各一変数関数に対して区分線形近似をしなければならない。ただし、非線形関数を分離するときに用いた中間変数は、変数の取りうる範囲が定まっていない。したがって、もし、区分線形近似の独立変数に中間変数が存在する場合は、事前に中間変数の取りうる範囲を定めるために、区分線形関数の近似範囲を決めなければならない。ここで、一変数関数の近似範囲を大きくすると、近似精度を保つためにより多くの近似区間が必要となる他、非線形関数の形状によっては非線形関数が発散する(±∞の値になる)領域も近似対象になり得る。これらの問題を避けるために、近似精度は保ちつつ、近似範囲をできるだけ狭い範囲に事前に決定することが望ましい。
そこで、上下限値設定部103bは、ランダムサンプリングにより、非線形制約に準じた条件を満たすように、非線形関数を構成する変数のうち中間変数を除いた独立変数(例えば決定変数である配合割合)のサンプルを複数生成し、これらサンプルを用いることにより、中間変数の上下限値を設定する。
そして、制約条件設定部103は、関数変換部103aで変換した分離可能関数を構成する関数(本実施形態では一変数関数)が非線形関数である場合には、上下限値設定部103bで設定した上下限値の範囲で、当該一変数関数を区分線形近似して、制約条件を設定する。
When a non-linear function is converted into a separable function, one non-linear function is represented by a plurality of univariate functions. Here, each univariate function may include a non-linear function. Therefore, for formulation, piecewise linear approximation must be performed for each univariate function. However, the range that the variable can take is not defined for the intermediate variable used when separating the nonlinear function. Therefore, if an intermediate variable exists in the independent variable of the piecewise linear approximation, the approximation range of the piecewise linear function must be determined in advance to determine the range that the intermediate variable can take. Here, if the approximation range of the univariate function is increased, more approximation intervals are required to maintain the approximation accuracy, and depending on the shape of the nonlinear function, the area in which the nonlinear function diverges (becomes ±∞ values) It can be an approximation target. In order to avoid these problems, it is desirable to predetermine the approximation range as narrow as possible while maintaining the approximation accuracy.
Therefore, the upper and lower limit value setting unit 103b uses random sampling to determine the independent variables (for example, the compounding ratio that is a decision variable) excluding the intermediate variables from the variables that form the nonlinear function so as to satisfy the conditions conforming to the nonlinear constraints. The upper and lower limit values of the intermediate variable are set by generating a plurality of samples and using these samples.
Then, the constraint condition setting unit 103 sets in the upper and lower limit value setting unit 103b when the function (the one-variable function in this embodiment) forming the separable function converted by the function converting unit 103a is a non-linear function. Within the range of upper and lower limits, the univariate function is piecewise linearly approximated to set the constraint condition.

目的関数設定部104は、入力部101で取り込んだデータに基づいて、製造に係るコストを最小化する目的関数を設定する。 The objective function setting unit 104 sets an objective function that minimizes the manufacturing cost based on the data captured by the input unit 101.

求解部105は、制約条件設定部103及び目的関数設定部104で設定した配合計画問題を求解する。 The solution solving unit 105 solves the mixture planning problem set by the constraint condition setting unit 103 and the objective function setting unit 104.

判定部106は、求解部105による求解結果が妥当なものか否かを判定する。その結果、求解結果が妥当なものである場合、当該求解結果を確定する。求解結果が妥当なものでない場合は、分割数設定部102で分割数を変更して、制約条件設定部103、目的関数設定部104及び求解部105による配合計画問題の求解を繰り返す。
求解結果の妥当性を判定する仕組みとして、求解部105で得られた配合割合を、制約条件設定部103による区分線形近似後の関数に代入して得られた計算値と、元の非線形制約に代入して得られた理論計算値とを比較する。そして、計算値と理論計算値との差が所定の条件を満たすまで、分割数設定部102で分割数を変更して、制約条件設定部103、目的関数設定部104及び求解部105による配合計画問題の設定及び求解を繰り返す。
The determination unit 106 determines whether or not the solution result obtained by the solution solution unit 105 is valid. As a result, if the solution result is valid, the solution result is confirmed. When the solution result is not valid, the number of divisions setting unit 102 changes the number of divisions, and the constraint condition setting unit 103, the objective function setting unit 104, and the solution finding unit 105 repeat the solution of the mixture planning problem.
As a mechanism for determining the appropriateness of the solution result, the calculated value obtained by substituting the mixture ratio obtained by the solution solving unit 105 into the function after the piecewise linear approximation by the constraint condition setting unit 103 and the original nonlinear constraint The theoretical calculation value obtained by substitution is compared. Then, until the difference between the calculated value and the theoretical calculated value satisfies the predetermined condition, the number of divisions is changed by the number-of-divisions setting unit 102, and the combination plan by the constraint condition setting unit 103, the objective function setting unit 104, and the solution finding unit 105. Repeat the problem setting and solution.

出力部107は、判定部106での求解結果を出力装置110に送信する。 The output unit 107 transmits the solution result obtained by the determination unit 106 to the output device 110.

データベース108は、配合計画を立案する上で必要になる各銘柄の性状情報、操業条件情報、コスト情報等のデータを格納する。なお、ここでデータベース108からデータを取り込む例を示したが、それ以外にも、例えばネットワークを介して外部機器からデータを取り込んだり、ユーザが直接入力したデータを取り込んだりする形態であっても構わない。 The database 108 stores data such as property information of each brand, operating condition information, cost information, etc., which is necessary for making a formulation plan. It should be noted that the example in which the data is fetched from the database 108 has been shown here, but other than that, for example, the data may be fetched from an external device via a network, or the data directly input by the user may be fetched. Absent.

入力装置109は、ポインティングデバイスやキーボード等である。
出力装置110は、出力部107から送信された求解結果を出力するディスプレイ等の表示装置、音声情報を出力するスピーカ等の音声出力装置等であってもよい。また、出力装置110は、出力部107から送信された求解結果を不図示の記憶領域に保存、登録する記憶装置等であってもよい。
The input device 109 is a pointing device, a keyboard, or the like.
The output device 110 may be a display device such as a display that outputs the solution result transmitted from the output unit 107, an audio output device such as a speaker that outputs audio information, or the like. Further, the output device 110 may be a storage device or the like that stores and registers the solution result transmitted from the output unit 107 in a storage area (not shown).

次に、配合計画立案装置100による配合計画の立案方法を説明する。
図2は、実施形態に係る配合計画立案装置100による配合計画の立案方法の処理を示すフローチャートである。
ステップS1で、入力部101は、例えばデータベース108から配合計画を立案する上で必要になる各銘柄の性状情報、操業条件情報、コスト情報等のデータを取り込む。例えば表1に示すように、各銘柄の配合割合に関して上下限値の情報が取り込まれる。
Next, a method of formulating a composition plan by the composition planning apparatus 100 will be described.
FIG. 2 is a flow chart showing the processing of the method for formulating a blending plan by the blending plan drafting apparatus 100 according to the embodiment.
In step S1, the input unit 101 fetches data such as property information of each brand, operating condition information, cost information, etc., which is necessary for formulating a blending plan from the database 108, for example. For example, as shown in Table 1, information on upper and lower limit values regarding the blending ratio of each brand is fetched.

Figure 2020086706
Figure 2020086706

ステップS2で、分割数設定部102は、非線形関数を区分線形近似する際の分割数Kを設定する。なお、区分線形近似すべき非線形関数が複数ある、或いは分離可能関数に用いられる変数が複数ある場合、分割数は非線形関数ごと、分離可能関数に用いられる変数ごとに設定してもよい。 In step S2, the division number setting unit 102 sets the division number K for piecewise linear approximation of the nonlinear function. When there are a plurality of non-linear functions to be piecewise-linearly approximated, or when there are a plurality of variables used for separable functions, the number of divisions may be set for each non-linear function or each variable used for separable functions.

ステップS3で、制約条件設定部103は、ステップS1で取り込んだデータに基づいて、目標となる製品の特性値や生産量、操業条件を満たすための制約条件を設定する。
本実施形態において制約条件は、式(1)のように線形関数で表わされる線形制約と、式(2)のように非線形関数で表わされる非線形制約とに分けられる。
In step S3, the constraint condition setting unit 103 sets constraint conditions for satisfying the target product characteristic value, the production amount, and the operation condition based on the data captured in step S1.
In the present embodiment, the constraint condition is divided into a linear constraint represented by a linear function as in Expression (1) and a nonlinear constraint represented by a nonlinear function as in Expression (2).

Figure 2020086706
Figure 2020086706

式(1)は、制約条件の中でも線形となる制約条件を表わす式である。式(1)のxは決定変数である配合割合を表わすM次元の列ベクトルであり、ベクトルの要素は各銘柄の配合割合に相当する。式(1)のAはN行M列の行列であり、Aのすべての要素は実数値をとるものとする。bはN次元の列ベクトルであり、実数値をとるものとする。
式(2)のgi(x)は非線形関数であり、iは制約の種類を表わす。例えば非線形関数gi(x)は、製鉄業であればコークス強度等、非線形性が強い特性値を表わす。式(2)の非線形関数gi(x)は、多変数関数であったり、非凸関数であったり、微分不可能な関数であったりする。diは定数であり、gi(x)の下限値を表わす。
Expression (1) is an expression that expresses a linear constraint condition among the constraint conditions. X in the equation (1) is an M-dimensional column vector that represents the mixing ratio that is a decision variable, and the elements of the vector correspond to the mixing ratio of each brand. It is assumed that A in Expression (1) is a matrix with N rows and M columns, and all elements of A take real values. b is an N-dimensional column vector and takes a real value.
In equation (2), g i (x) is a non-linear function, and i represents the type of constraint. For example, the non-linear function g i (x) represents a characteristic value having strong non-linearity such as coke strength in the steel industry. The nonlinear function g i (x) in Expression (2) is a multivariable function, a non-convex function, or a non-differentiable function. d i is a constant and represents the lower limit of g i (x).

本発明を適用するに際して、制約条件を線形制約と非線形制約に分けて定式化を行う。まず、線形制約を数式モデルに追加する。線形制約は、特に困難なく数式モデルへの追加が可能である。 When applying the present invention, the constraint condition is divided into a linear constraint and a non-linear constraint for formulation. First, add a linear constraint to the mathematical model. Linear constraints can be added to mathematical models without particular difficulty.

次に、非線形制約の定式化を行う。ステップS3では、図3に示すフローチャートに従って、非線形制約を表わす非線形関数に中間変数を導入して分離可能関数に変換する。そして、中間変数の上下限値を設定するとともに、分離可能関数を構成する関数(本実施形態では一変数関数)が非線形関数である場合は、当該一変数関数を区分線形近似して、近似した区分線形関数を制約条件として設定する。 Next, the formulation of the nonlinear constraint is performed. In step S3, an intermediate variable is introduced into a non-linear function representing a non-linear constraint and converted into a separable function according to the flowchart shown in FIG. Then, when the upper and lower limit values of the intermediate variable are set and the function forming the separable function (univariate function in this embodiment) is a non-linear function, the univariate function is piecewise linearly approximated and approximated. Set a piecewise linear function as a constraint.

ステップS301で、制約条件設定部103は、非線形関数gi(x)を入力する。本実施形態では、非線形関数gi(x)が、式(3)の形式で表わされる場合を例として考える。xは決定変数である配合割合を表わすM次元の列ベクトルであり、ベクトルの要素は各銘柄の配合割合に相当する。w1,w2,w3はM次元のベクトルであり、ベクトルの要素は実数値をとるものとする。本実施形態では、各wiの次元は5として、値は表2のように与えられる場合を考える。wiは例えば各銘柄別の性状や成分を表すパラメータを表す。 In step S301, the constraint condition setting unit 103 inputs the nonlinear function g i (x). In the present embodiment, the case where the non-linear function g i (x) is expressed in the form of Expression (3) will be considered as an example. x is an M-dimensional column vector representing the mixture ratio which is a decision variable, and the element of the vector corresponds to the mixture ratio of each brand. w 1 , w 2 , and w 3 are M-dimensional vectors, and the elements of the vectors have real values. In the present embodiment, it is assumed that the dimension of each w i is 5 and the values are given as shown in Table 2. w i represents, for example, a parameter representing the property or component of each brand.

Figure 2020086706
Figure 2020086706

Figure 2020086706
Figure 2020086706

ステップS302で、制約条件設定部103は、非線形関数gi(x)を、中間変数を導入して分離可能関数に変換し、一変数関数の和の形で表現する。分離可能関数への変換は、非特許文献2や非特許文献3に提示されるアルゴリズムを用いても構わないし、その他どのようなアルゴリズムを用いても構わない。非線形関数gi(x)を分離可能関数に変換すると、式(4)のように表わされる。非線形関数gi(x)は、決定変数xの線形結合で表わされる中間変数v1〜v5を独立変数とする関数となる。 In step S302, the constraint condition setting unit 103 converts the nonlinear function g i (x) into a separable function by introducing an intermediate variable, and expresses it in the form of the sum of the one-variable functions. The conversion to the separable function may use the algorithm presented in Non-Patent Document 2 or Non-Patent Document 3, or any other algorithm. When the non-linear function g i (x) is converted into a separable function, it is expressed as in equation (4). The non-linear function g i (x) is a function having the intermediate variables v 1 to v 5 represented by the linear combination of the decision variable x as independent variables.

Figure 2020086706
Figure 2020086706

ここで、分離可能関数を構成する関数(本実施形態では一変数関数)を区分線形近似するために、非線形関数の独立変数である中間変数v1,v4,v5の範囲(上下限値)を設定しなければならない。式(4)の例では、中間変数v2,v3は中間変数v4の独立変数であり、中間変数v4と線形関係である。このため、区分線形近似による近似誤差や、関数の発散は発生しない。つまり、近似範囲を決定する必要はないので、本実施形態の考察から除外する。 Here, in order to perform a piecewise linear approximation of a function (a one-variable function in this embodiment) that constitutes a separable function, the range (upper and lower limit values) of the intermediate variables v 1 , v 4 , and v 5 which are independent variables of the nonlinear function. ) Must be set. In the example of Equation (4), the intermediate variable v 2, v 3 is the independent variable of the intermediate variable v 4, a linear relationship with the intermediate variable v 4. Therefore, approximation error due to piecewise linear approximation and divergence of the function do not occur. In other words, it is not necessary to determine the approximate range, so it is excluded from the consideration of this embodiment.

ステップS303で、制約条件設定部103は、ランダムサンプリングにより、配合割合をランダムに生成し、配合割合のサンプルを複数生成する。その際、配合割合のサンプルは、非線形制約に準じた条件を満たすようにする生成する。そして、これらサンプルを用いることにより、各中間変数の範囲を設定する。
図4を参照して、ステップS303のランダムサンプリングの詳細を説明する。
ここで、drs iは、ランダムサンプリングを行うときの非線形関数gi(x)のしきい値である。しきい値drs iの条件が厳しい場合、本来最適化で解くべき実行可能領域をサンプリングによって損失する可能性が存在する。このため、通常、しきい値drs iの値は、元の非線形制約のしきい値diよりも緩和した値を与える。例えばしきい値diは500であるので、しきい値drs iは非線形制約を緩和する500以下の値を与えればよい。本実施形態では、しきい値di,drs iともに500とした。
中間変数vkの範囲を正確に定めるには、中間変数vkの範囲を主問題の制約条件式(1)、(2)から逸脱しないようにしなければならない。しかしながら、式(2)の非線形関数を考慮する必要があるため、計算が難しい。もし、変数の範囲が実操業範囲から大きく逸脱した場合は、配合銘柄の品質に係る非線形制約の関数自体が未定義となり、区分線形近似自体が行えない、といった事態を招く可能性がある。
そこで、本発明者は、中間変数vkの範囲を設定するにあたり、非線形関数を近似した制約条件を用いて範囲を限定すればよいと考えた。図5に、変数の範囲を決定するイメージを示す。非線形制約に対して、配合割合の乱数を発生させ、非線形制約に準じた条件を満たすサンプルを抽出し、サンプル結果を凸関数で近似することで、変数の範囲を決定できると考えた。
In step S303, the constraint condition setting unit 103 randomly generates a mixture ratio by random sampling, and generates a plurality of mixture ratio samples. At that time, the sample of the mixing ratio is generated so as to satisfy the condition conforming to the nonlinear constraint. Then, the range of each intermediate variable is set by using these samples.
Details of the random sampling in step S303 will be described with reference to FIG.
Here, d rs i is the threshold value of the nonlinear function g i (x) when performing random sampling. When the condition of the threshold value d rs i is strict, there is a possibility that the feasible region that should be solved by optimization originally may be lost by sampling. Therefore, normally, the value of the threshold value d rs i gives a value relaxed from the threshold value d i of the original nonlinear constraint. For example, since the threshold value d i is 500, the threshold value d rs i may be given a value of 500 or less that relaxes the nonlinear constraint. In this embodiment, both the threshold values d i and d rs i are set to 500.
In order to accurately determine the range of the intermediate variable v k, the range of the intermediate variable v k must be kept from the constraint condition expressions (1) and (2) of the main problem. However, the calculation is difficult because it is necessary to consider the non-linear function of equation (2). If the range of variables greatly deviates from the actual operating range, there is a possibility that the function of the non-linear constraint relating to the quality of the compounded brand itself is undefined and piecewise linear approximation itself cannot be performed.
Therefore, the inventor considered that when setting the range of the intermediate variable v k , the range should be limited by using a constraint condition that approximates the nonlinear function. FIG. 5 shows an image for determining the range of variables. It was considered that the range of variables could be determined by generating random numbers of mixture ratios for nonlinear constraints, extracting samples satisfying the conditions according to nonlinear constraints, and approximating the sample results with a convex function.

ステップS401で、一定数のサンプルが得られるまでランダムサンプリングを繰り返す。
ステップS402で、表1の例のように与えられた各銘柄の配合割合の上下限値の範囲内で配合割合をランダムに生成する。
ステップS403で、ステップS402において生成した全銘柄の配合割合の合計値が計画値の100%であるか否かを判定し、100%である場合、ステップS406に移行し、そうでない場合、ステップS404に移行する。
ステップS404で、銘柄をランダムに選択する。
ステップS405で、ステップS404において選択した銘柄の配合量を、全銘柄の配合割合の合計値が計画値の100%に近づくように調整する。具体的には、選択した銘柄の配合量をx、調整後の配合量をx'、銘柄の配合割合の上下限値をそれぞれxmin、xmaxと置く。次に、全銘柄の配合割合の合計値が100%を超えていた場合、xminからxの間でランダムな値を生成し、生成した値をx'として採用する。また、全銘柄の配合割合の合計値が100%を下回っていた場合、xからxmaxの間でランダムな値を生成し、生成した値をx'として採用する。その後、ステップS403に移行し、再度、配合割合の合計値が100%であるか否かを判定する。以上の手順を繰り返すことで、全銘柄の配合割合の合計値が計画値の100%となるサンプルを得ることができる。
In step S401, random sampling is repeated until a fixed number of samples are obtained.
In step S402, a mixture ratio is randomly generated within the upper and lower limit values of the mixture ratio of each brand given as in the example of Table 1.
In step S403, it is determined whether or not the total value of the mixture proportions of all the brands generated in step S402 is 100% of the planned value. If it is 100%, the process proceeds to step S406, and if not, step S404. Move to.
In step S404, a brand is randomly selected.
In step S405, the blending amount of the brand selected in step S404 is adjusted so that the total value of the blending ratios of all the brands approaches 100% of the planned value. Specifically, the compounding amount of the selected brand is set to x, the adjusted compounding amount is set to x′, and the upper and lower limits of the mixing ratio of the brand are set to x min and x max , respectively. Next, when the total value of the blending ratios of all brands exceeds 100%, a random value between x min and x is generated, and the generated value is adopted as x′. Further, when the total value of the blending ratios of all the brands is less than 100%, a random value between x and x max is generated, and the generated value is adopted as x′. Then, the process proceeds to step S403, and it is determined again whether or not the total value of the mixing ratios is 100%. By repeating the above procedure, it is possible to obtain a sample in which the total value of the blending ratios of all brands is 100% of the planned value.

ステップS406で、今回のループで得られたサンプルが、非線形制約に準じた条件であるgi(x)≧drs iを満たすか否かを判定する。gi(x)≧drs iを満たさない場合、ステップS402に戻り、処理を繰り返す。gi(x)≧drs iを満たす場合、ステップS407に移行し、今回のループで得られたサンプルを有効なサンプルとして採用し、その後、ステップS402に戻り、次のサンプルの生成に移行する。有効なサンプルが十分な数揃った段階で、ステップS303のランダムサンプリングを終了する。 In step S406, it is determined whether or not the sample obtained in the current loop satisfies g i (x)≧d rs i which is a condition conforming to the nonlinear constraint. If g i (x)≧d rs i is not satisfied, the process returns to step S402 and the process is repeated. If g i (x)≧d rs i is satisfied, the process proceeds to step S407, the sample obtained in this loop is adopted as a valid sample, and then the process returns to step S402 to proceed to the generation of the next sample. .. When a sufficient number of valid samples are prepared, the random sampling in step S303 ends.

表3は、ステップS303のランダムサンプリングにより、gi(x)≧drs i=500を満たす配合割合のサンプルを2000個生成した例を示す。 Table 3 shows an example in which 2000 samples with a mixing ratio satisfying g i (x)≧d rs i =500 are generated by the random sampling in step S303.

Figure 2020086706
Figure 2020086706

図3に説明を戻して、ステップS304で、制約条件設定部103は、分離可能関数を構成する各関数(本実施形態では一変数関数)に対して、区分線形近似による定式化の繰り返しを開始する。分離可能関数を構成する関数同士の関係は非巡回有向グラフで表わすことができ、各関数をラベル付けして、どの関数もその出力辺の先の関数より前に来るように並べることができる。ステップS304では、この並び順に従って、繰り返し計算を実施する。例えば式(4)の例では、中間変数v1〜v5の順番に定式化を実施する。 Returning to FIG. 3, in step S304, the constraint condition setting unit 103 starts iteration of formulation by piecewise linear approximation for each function (univariate function in this embodiment) forming a separable function. To do. The relationship between the functions forming the separable function can be represented by an acyclic digraph, and each function can be labeled so that any function is arranged so that it comes before any function ahead of its output side. In step S304, iterative calculation is performed according to this arrangement order. For example, in the example of Expression (4), the formulation is performed in the order of the intermediate variables v 1 to v 5 .

ステップS305で、制約条件設定部103は、分離可能関数を構成する関数(本実施形態では一変数関数)の近似範囲を決定する。近似範囲は、ステップS303で生成したサンプルを関数に代入して、サンプル数分の中間変数の値を計算する。そして、その最大値を中間変数の上限値として、最小値を下限値として設定する。図6は、式(4)の中間変数v4にサンプルの値を代入し、中間変数v4の範囲を求めた結果を示す図であり、中間変数v4と、中間変数v5の式の一部である2log(v4)との関係を示す図である。中間変数v4の範囲は、7.74≦v4≦14.29と求めることができる。 In step S305, the constraint condition setting unit 103 determines the approximate range of the function (univariate function in this embodiment) that constitutes the separable function. For the approximation range, the sample generated in step S303 is substituted into the function, and the value of the intermediate variable for the number of samples is calculated. Then, the maximum value is set as the upper limit value of the intermediate variable, and the minimum value is set as the lower limit value. 6 substitutes the values of the samples to the intermediate variable v 4 of the formula (4) is a diagram showing the result of obtaining the range of the intermediate variable v 4, the intermediate variable v 4, the intermediate variable v 5 of formula is a diagram showing a relationship between a part 2log (v 4). The range of the intermediate variable v 4 can be calculated as 7.74≦v 4 ≦14.29.

ステップS306で、制約条件設定部103は、分離可能関数を構成する関数(本実施形態では一変数関数)を区分線形関数で近似し、数式モデルに追加する。区分線形関数の数式モデルへの追加方法は、非特許文献4に記載の手法を用いても構わないし、その他どのような手法を用いても構わない。本実施形態では、非凸な非線形関数を区分線形近似しているので、凸結合定式化手法を用いて数式モデルに追加した。凸結合定式化とは、非線形関数y=f(x)に対して区分線形近似し、区分線形関数の節を(xi,yi)i=1、・・・、Kと置いたときに、式(5)のように関係を定式化することである。 In step S306, the constraint condition setting unit 103 approximates a function (a one-variable function in this embodiment) forming a separable function with a piecewise linear function and adds it to the mathematical model. As a method of adding the piecewise linear function to the mathematical model, the method described in Non-Patent Document 4 may be used, or any other method may be used. In the present embodiment, the non-convex non-linear function is subjected to piecewise linear approximation, and thus it is added to the mathematical model using the convex coupling formulation method. The convex coupling formulation means piecewise linear approximation to a non-linear function y=f(x), and a section of the piecewise linear function is set as (x i , y i ) i=1,..., K. , To formulate the relationship as shown in Expression (5).

Figure 2020086706
Figure 2020086706

なお、分離可能関数を構成する関数が線形関数である場合は、区分線形近似するまでもなく、線形関数のまま数式モデルとして追加すればよい。
以上のステップS304〜S306を繰り返すことにより、すべての中間変数に対して、変数同士の関係を数式モデル化し、さらにすべての中間変数に対して上下限値を設定することができる。
そして、ステップS307で、gi(x)≧diを数式モデルに追加すれば、非線形制約を含む制約条件を設定することができる。
以上が、ステップS3の制約条件の設定処理の詳細である。
When the function forming the separable function is a linear function, the linear function may be added as a mathematical model without needing the piecewise linear approximation.
By repeating the above steps S304 to S306, it is possible to formulate the relationship between variables for all intermediate variables, and set upper and lower limit values for all intermediate variables.
Then, in step S307, by adding g i (x)≧d i to the mathematical model, it is possible to set a constraint condition including a nonlinear constraint.
The above is the details of the constraint condition setting process in step S3.

図2に説明を戻して、ステップS4で、目的関数設定部104は、ステップS1で取り込んだデータに基づいて、製造に係るコストを最小化する目的関数を設定する。目的関数は、線形関数であっても、非線形関数であっても構わない。目的関数が非線形関数で表わされる場合は、制約条件の場合と同様に非線形関数を分離可能関数に変換した上で区分線形近似して、目的関数を設定すればよい。 Returning to FIG. 2, in step S4, the objective function setting unit 104 sets an objective function that minimizes the manufacturing cost based on the data captured in step S1. The objective function may be a linear function or a non-linear function. When the objective function is represented by a non-linear function, the objective function may be set by converting the non-linear function into a separable function and then performing piecewise linear approximation as in the case of the constraint condition.

ステップS5で、求解部105は、ステップS3及びステップS4で設定した非線形計画問題である配合計画問題を求解する。 In step S5, the solution solving unit 105 solves the mixture programming problem which is the nonlinear programming problem set in steps S3 and S4.

ステップS6で、判定部106は、ステップS5での求解結果が妥当なものか否かを判定する。区分線形近似はあくまで近似手法であるため、近似誤差が必ず発生し、近似誤差が十分小さいかを確認しなければならない。
求解結果の妥当性を判定する仕組みとして、ステップS5で得られた配合割合を、ステップS3での区分線形近似後の関数に代入して得られた計算値と、元の非線形制約に代入して得られた理論計算値とを比較する。そして、計算値と理論計算値との差が所定の条件を満たすまで、ステップS2で分割数Kを変更して、ステップS3〜S5の非線形計画問題の設定及び求解を繰り返す。
In step S6, the determination unit 106 determines whether the solution result obtained in step S5 is valid. Since piecewise linear approximation is only an approximation method, it is necessary to confirm whether an approximation error is generated and the approximation error is sufficiently small.
As a mechanism for determining the validity of the solution result, the mixture ratio obtained in step S5 is substituted into the function after the piecewise linear approximation in step S3 and the original nonlinear constraint is substituted. The obtained theoretical calculation value is compared. Then, the division number K is changed in step S2 and the setting and solution of the nonlinear programming problem in steps S3 to S5 are repeated until the difference between the calculated value and the theoretical calculated value satisfies the predetermined condition.

ステップS7で、出力部107は、ステップS6で妥当であると判定された求解結果を出力する。 In step S7, the output unit 107 outputs the solution result determined to be valid in step S6.

以上述べた手法(以下、本手法と呼ぶ)を用いることで、線形制約と非線形制約とを含む制約条件の下で目的関数を最小化又は最大化する非線形計画問題を求解する際に、区分線形近似の近似範囲を適切に設定し、実用時間内に精度の高い最適解を得ることができる。 By using the method described above (hereinafter referred to as this method), when solving a nonlinear programming problem that minimizes or maximizes the objective function under constraint conditions including linear constraints and nonlinear constraints, By appropriately setting the approximation range of approximation, it is possible to obtain a highly accurate optimum solution within the practical time.

比較例として、本手法を用いずに、分離可能関数を構成する関数の有向グラフのラベルが若い順番から中間変数の上下限値を計算する方法が考えられる。例えば式(4)の場合に、中間変数v1〜v5と順番に上下限値を決定する状況を考える。各銘柄の配合割合の制約条件に表1に示した値が与えられ、各ベクトルwiに表2に示した値が与えられた場合、v1,v2,v3の範囲は表4のようになる。 As a comparative example, a method of calculating the upper and lower limit values of the intermediate variable from the ascending order of the labels of the directed graph of the functions forming the separable function can be considered without using this method. For example, in the case of Expression (4), consider a situation in which the upper and lower limit values are sequentially determined with the intermediate variables v 1 to v 5 . When the value shown in Table 1 is given to the constraint condition of the mixing ratio of each brand and the value shown in Table 2 is given to each vector w i , the range of v 1 , v 2 and v 3 is shown in Table 4. Like

Figure 2020086706
Figure 2020086706

ここで、v2,v3を独立変数として持つv4の範囲は、表4に示すv2,v3の範囲に基づいて、−16.45≦v4≦19.16と計算される(図7に単純計算として示す範囲)。ところが、v5は、v4のlog関数であるため、図7に示すように、v4≦0の範囲では関数が未定義となる。また、v4の定義領域を正の範囲に限定した場合であっても、v4=0を近似範囲に含む場合は、その後段であるv5の定義領域がマイナス無限大から定義する必要があるため、近似精度が著しく劣化する。
これに対して、本手法を用いた場合は、上述したようにv4の範囲が7.74≦v4≦14.29と正の範囲に限定されており、関数は発散していない。したがって、本手法を用いることで、近似範囲を適切に決定し、高い近似精度の区分線形関数を構築できることが確認することができた。
Here, the range of v 4 having v 2 and v 3 as independent variables is calculated as −16.45≦v 4 ≦19.16 based on the range of v 2 and v 3 shown in Table 4 ( The range shown as a simple calculation in FIG. 7). However, since v 5 is a log function of v 4 , as shown in FIG. 7, the function is undefined in the range of v 4 ≦0. Even if the definition area of v 4 is limited to the positive range, if v 4 =0 is included in the approximation range, the definition area of v 5 in the subsequent stage needs to be defined from minus infinity. Therefore, the approximation accuracy is significantly deteriorated.
In contrast, when using this technique, the range of v 4 as described above is limited to a positive range and 7.74 ≦ v 4 ≦ 14.29, functions not diverge. Therefore, it was confirmed that by using this method, the approximation range can be appropriately determined and a piecewise linear function with high approximation accuracy can be constructed.

本発明を適用した非線形計画問題の演算装置は、例えばCPU、ROM、RAM等を備えたコンピュータ装置により実現される。
また、本発明は、本発明の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータがプログラムを読み出して実行することによっても実現可能である。
The calculation device for the nonlinear programming problem to which the present invention is applied is realized by a computer device including a CPU, a ROM, a RAM, and the like.
The present invention also provides software (program) that implements the functions of the present invention to a system or apparatus via a network or various storage media, and the computer of the system or apparatus reads and executes the program. It is feasible.

100:配合計画立案装置
101:入力部
102:分割数設定部
103:制約条件設定部
104:目的関数設定部
105:求解部
106:判定部
107:出力部
100: Mixing plan formulation device 101: Input unit 102: Division number setting unit 103: Constraint condition setting unit 104: Objective function setting unit 105: Solving unit 106: Judgment unit 107: Output unit

Claims (7)

線形制約条件と非線形制約条件とを含む制約条件の下で目的関数を最小化又は最大化する非線形計画問題を求解するための非線形計画問題の演算装置であって、
前記非線形制約条件を表わす非線形関数に中間変数を導入して分離可能関数に変換した上で区分線形近似して、制約条件を設定する設定手段と、
前記設定手段で設定した制約条件の下で前記非線形計画問題を求解する求解手段とを備え、
前記設定手段は、ランダムサンプリングにより、前記非線形関数を構成する変数のうち中間変数を除いた独立変数のサンプルを複数生成し、前記サンプルを用いることにより、前記中間変数の上下限値を設定して、当該上下限値の範囲で、前記分離可能関数を構成する関数を区分線形近似することを特徴とする非線形計画問題の演算装置。
An arithmetic device for a nonlinear programming problem for solving a nonlinear programming problem that minimizes or maximizes an objective function under a constraint condition including a linear constraint condition and a nonlinear constraint condition,
Setting means for introducing an intermediate variable into the non-linear function representing the non-linear constraint condition, converting it into a separable function, and then performing piecewise linear approximation, and setting the constraint condition,
A solving means for solving the nonlinear programming problem under the constraint condition set by the setting means,
The setting means generates a plurality of independent variable samples excluding intermediate variables from variables constituting the nonlinear function by random sampling, and uses the samples to set upper and lower limit values of the intermediate variable. An arithmetic device for a nonlinear programming problem, characterized by performing a piecewise linear approximation of a function forming the separable function in the range of the upper and lower limits.
前記設定手段は、前記非線形制約条件に準じた条件を満たすように、前記非線形関数を構成する変数のうち中間変数を除いた独立変数のサンプルを複数生成することを特徴とする請求項1に記載の非線形計画問題の演算装置。 The said setting means produces|generates the some sample of the independent variable which excluded the intermediate variable among the variables which comprise the said non-linear function so that the conditions according to the said non-linear constraint condition may be satisfied. Computing device for the nonlinear programming problem. 前記設定手段は、前記非線形関数を、前記中間変数を導入して一変数関数の和の形で表現することを特徴とする請求項1又は2に記載の非線形計画問題の演算装置。 The arithmetic unit for a nonlinear programming problem according to claim 1 or 2, wherein the setting means expresses the nonlinear function in the form of a sum of univariate functions by introducing the intermediate variable. 前記非線形計画問題は、複数の原材料を配合して製品を製造する製造プロセスにおいて、配合割合を決定変数とする配合計画問題であり、
前記設定手段は、ランダムサンプリングにより、配合割合をランダムに生成して、配合割合のサンプルを複数生成することを特徴とする請求項1乃至3のいずれか1項に記載の非線形計画問題の演算装置。
The non-linear programming problem is a compounding planning problem in which a compounding ratio is a decision variable in a manufacturing process in which a plurality of raw materials are compounded to manufacture a product,
4. The non-linear programming problem computing device according to claim 1, wherein the setting unit randomly generates a blending ratio by random sampling to generate a plurality of blending ratio samples. ..
前記設定手段は、前記分離可能関数を構成する各関数に対して、前記中間変数の上下限値の設定、及び区分線形近似を繰り返すことを特徴とする請求項1乃至4のいずれか1項に記載の非線形計画問題の演算装置。 5. The setting unit repeats the setting of the upper and lower limit values of the intermediate variable and piecewise linear approximation for each function forming the separable function, according to any one of claims 1 to 4. A computing device for the described nonlinear programming problem. 線形制約条件と非線形制約条件とを含む制約条件の下で目的関数を最小化又は最大化する非線形計画問題を求解するための非線形計画問題の演算方法であって、
設定手段が、前記非線形制約条件を表わす非線形関数に中間変数を導入して分離可能関数に変換した上で区分線形近似して、制約条件を設定する設定ステップと、
求解手段が、前記設定ステップで設定した制約条件の下で前記非線形計画問題を求解する求解ステップとを有し、
前記設定ステップでは、ランダムサンプリングにより、前記非線形関数を構成する変数のうち中間変数を除いた独立変数のサンプルを複数生成し、前記サンプルを用いることにより、前記中間変数の上下限値を設定して、当該上下限値の範囲で、前記分離可能関数を構成する関数を区分線形近似することを特徴とする非線形計画問題の演算方法。
A calculation method of a nonlinear programming problem for solving a nonlinear programming problem that minimizes or maximizes an objective function under a constraint condition including a linear constraint condition and a nonlinear constraint condition,
A setting step in which the setting means introduces an intermediate variable into the non-linear function representing the non-linear constraint condition and converts it into a separable function, and then performs piecewise linear approximation to set the constraint condition;
The solution solving means has a solution solving step of solving the nonlinear programming problem under the constraint condition set in the setting step,
In the setting step, random sampling is performed to generate a plurality of independent variable samples excluding intermediate variables among the variables forming the nonlinear function, and the samples are used to set upper and lower limit values of the intermediate variable. A method for computing a non-linear programming problem, characterized by performing a piecewise linear approximation of a function that constitutes the separable function in the range of the upper and lower limits.
線形制約条件と非線形制約条件とを含む制約条件の下で目的関数を最小化又は最大化する非線形計画問題を求解するためのプログラムであって、
前記非線形制約条件を表わす非線形関数に中間変数を導入して分離可能関数に変換した上で区分線形近似して、制約条件を設定する設定手段と、
前記設定手段で設定した制約条件の下で前記非線形計画問題を求解する求解手段としてコンピュータを機能させ、
前記設定手段は、ランダムサンプリングにより、前記非線形関数を構成する変数のうち中間変数を除いた独立変数のサンプルを複数生成し、前記サンプルを用いることにより、前記中間変数の上下限値を設定して、当該上下限値の範囲で、前記分離可能関数を構成する関数を区分線形近似することを特徴とするプログラム。
A program for solving a nonlinear programming problem that minimizes or maximizes an objective function under a constraint condition including a linear constraint condition and a nonlinear constraint condition,
Setting means for introducing an intermediate variable into the non-linear function representing the non-linear constraint condition, converting it into a separable function, and then performing piecewise linear approximation, and setting the constraint condition,
Causing a computer to function as a solution finding means for solving the nonlinear programming problem under the constraint condition set by the setting means,
The setting means generates a plurality of independent variable samples excluding intermediate variables from variables constituting the nonlinear function by random sampling, and uses the samples to set upper and lower limit values of the intermediate variable. A program, characterized by performing a piecewise linear approximation of a function forming the separable function in the range of the upper and lower limits.
JP2018217288A 2018-11-20 2018-11-20 Arithmetic device, method and program for nonlinear programming problem Active JP7135768B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018217288A JP7135768B2 (en) 2018-11-20 2018-11-20 Arithmetic device, method and program for nonlinear programming problem

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018217288A JP7135768B2 (en) 2018-11-20 2018-11-20 Arithmetic device, method and program for nonlinear programming problem

Publications (2)

Publication Number Publication Date
JP2020086706A true JP2020086706A (en) 2020-06-04
JP7135768B2 JP7135768B2 (en) 2022-09-13

Family

ID=70909970

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018217288A Active JP7135768B2 (en) 2018-11-20 2018-11-20 Arithmetic device, method and program for nonlinear programming problem

Country Status (1)

Country Link
JP (1) JP7135768B2 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03188562A (en) * 1989-09-12 1991-08-16 Hitachi Ltd Method and device for nonlinear optimization processing
JP2001243301A (en) * 2000-03-01 2001-09-07 Nkk Corp Device and method for preparing coal blending plan
JP2009175804A (en) * 2008-01-21 2009-08-06 Nippon Steel Corp Composition plan making-out device, method, and program
JP2018180694A (en) * 2017-04-05 2018-11-15 新日鐵住金株式会社 Arithmetic unit, method and program for nonlinear programming problem

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03188562A (en) * 1989-09-12 1991-08-16 Hitachi Ltd Method and device for nonlinear optimization processing
JP2001243301A (en) * 2000-03-01 2001-09-07 Nkk Corp Device and method for preparing coal blending plan
JP2009175804A (en) * 2008-01-21 2009-08-06 Nippon Steel Corp Composition plan making-out device, method, and program
JP2018180694A (en) * 2017-04-05 2018-11-15 新日鐵住金株式会社 Arithmetic unit, method and program for nonlinear programming problem

Also Published As

Publication number Publication date
JP7135768B2 (en) 2022-09-13

Similar Documents

Publication Publication Date Title
Deutscher et al. Output feedback control of general linear heterodirectional hyperbolic PDE-ODE systems with spatially-varying coefficients
JP4594385B2 (en) A method for generating optimal control problems for industrial processes.
Ahmad et al. Observer design for one-sided Lipschitz nonlinear systems subject to measurement delays
Marchetti et al. A feasible-side globally convergent modifier-adaptation scheme
US7149589B2 (en) Method of adjusting a process control device, adjustment tool therefor and process control device thereof
Djordjić et al. Consistent, explicit, and accessible Boltzmann collision operator for polyatomic gases
De Kluyver et al. Assessing scenario probabilities via interactive goal programming
JP2010211684A (en) Method, program and apparatus for processing data
JP6834717B2 (en) Arithmetic logic units, methods and programs for nonlinear programming problems
Stittgen et al. Towards operating curves of additive manufacturing equipment: production logistics and its contribution to increased productivity and reduced throughput time
Slater Silver mean conjectures for 15-dimensional volumes and 14-dimensional hyperareas of the separable two-qubit systems
Beyer et al. The dynamics of cumulative step size adaptation on the ellipsoid model
Miller et al. Data-driven superstabilizing control of error-in-variables discrete-time linear systems
JP2020086706A (en) Arithmetic unit, method and program for nonlinear planning problem
Friedrich et al. Parameterizing robust manipulator controllers under approximate inverse dynamics: A double‐Youla approach
Rosa et al. Simple empirical software effort estimation model
JP3631915B2 (en) Recording medium storing production planning system and production planning program
JP6844204B2 (en) Prediction table design equipment, methods and programs
Esche et al. Optimal design via chance-constrained or two-stage stochastic programming
Ünal et al. A small gain theorem for systems with non-causal subsystems
JP5168048B2 (en) Secondary planning problem calculation device, program for secondary planning problem calculation device, tidal current plan calculation device, generator output value calculation device, and portfolio optimization device
Ghasemi et al. Compositional synthesis for linear systems via convex optimization of assume-guarantee contracts
Sinha et al. LFT representation of a class of nonlinear systems: A data-driven approach
Ehlhardt et al. Real‐Time Optimization Using Machine Learning Models Applied to the 4, 4′‐Diphenylmethane Diisocyanate Production Process
WO2022113945A1 (en) Information processing system, information processing method, and information processing program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210707

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220531

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220705

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220720

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220802

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220815

R151 Written notification of patent or utility model registration

Ref document number: 7135768

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151