JP2019082786A - Solution method for nonlinear programming problem, generation method for composition plan, and computer program, recording medium, apparatus, and composition operation method therefor - Google Patents

Solution method for nonlinear programming problem, generation method for composition plan, and computer program, recording medium, apparatus, and composition operation method therefor Download PDF

Info

Publication number
JP2019082786A
JP2019082786A JP2017209020A JP2017209020A JP2019082786A JP 2019082786 A JP2019082786 A JP 2019082786A JP 2017209020 A JP2017209020 A JP 2017209020A JP 2017209020 A JP2017209020 A JP 2017209020A JP 2019082786 A JP2019082786 A JP 2019082786A
Authority
JP
Japan
Prior art keywords
solution
programming problem
vector
linear programming
variable
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
JP2017209020A
Other languages
Japanese (ja)
Other versions
JP6806034B2 (en
Inventor
徹 熊野
Toru Kumano
徹 熊野
山口 収
Osamu Yamaguchi
収 山口
吉成 有介
Yuusuke Yoshinari
有介 吉成
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.)
JFE Steel Corp
Original Assignee
JFE 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 JFE Steel Corp filed Critical JFE Steel Corp
Priority to JP2017209020A priority Critical patent/JP6806034B2/en
Publication of JP2019082786A publication Critical patent/JP2019082786A/en
Application granted granted Critical
Publication of JP6806034B2 publication Critical patent/JP6806034B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

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

Abstract

To provide a fast solution method for a nonlinear programming problem.SOLUTION: A solution method for a nonlinear programming problem has: a vectorization step for variable which determines a term or mathematical expression included in a term as a new variable, changes a description of the nonlinear programming problem, and defines the new variable as a linear or higher-order vector variable; an initial solution generation step for a vector variable which generates a plurality of initial solutions of the vector variable; a formulation step for a linear programming problem which formulate the nonlinear programming problem, as a plurality of linear programming problems using linear variables, from a term or mathematical expression included in the nonlinear term determined as the new variable and a plurality of initial solutions; a solution step for the linear programming problem which finds solutions of the linear programming problems respectively; a solution modification step for vector variable which evaluates an object function for the respective solutions of the plurality of vector variables and modifying the solutions of the vector variables; and a selection step for the solutions of the vector variables which divides the solutions of the vector variables into a plurality of groups and selecting a solution of a vector variable to be used for subsequent calculation in each group.SELECTED DRAWING: Figure 5

Description

本発明は、非線形性を持つ変数を一つ以上含む非線形計画問題の求解を行う非線形計画問題の求解方法およびそのコンピュータプログラム、記録媒体、求解装置に関するものである。
また、本発明は、制約条件を満たした上で目的関数が最適となる原料の配合割合を計画する、配合計画の作成方法およびそのコンピュータプログラム、記録媒体、配合操業方法、作成装置に関するものである。
The present invention relates to a method for solving a non-linear programming problem which solves a non-linear programming problem including one or more variables having non-linearity, a computer program therefor, a recording medium, and a solution solving apparatus.
The present invention also relates to a method of creating a compounding plan, a computer program therefor, a recording medium, a compounding operation method, and a device for planning the blending ratio of raw materials for which the objective function becomes optimal after satisfying the constraint conditions. .

数理最適化は、最適化問題とも呼ばれ、制約条件の下で得られる特定の集合上で定義された目的関数について、その値が最大或いは最小となる状態を解析する問題である。鉄鋼を初めとする多くの産業において、例えば商品の製造コストを目的関数として最小化することは極めて重要である。   Mathematical optimization, also called optimization problem, is a problem of analyzing the state in which the value is maximum or minimum for an objective function defined on a specific set obtained under constraints. In many industries including steel, for example, it is extremely important to minimize the production cost of goods as an objective function.

最適化問題は、線形計画問題(以下、LPとも略記)と非線形計画問題(以下、NLPとも略記)に2分でき、前者は制約条件および目的関数ともに線形関数であり、後者は制約条件あるいは目的関数の少なくともいずれかが非線形関数(例えば、2次以上の項を持つ関数)を含むものである。   The optimization problem can be divided into a linear programming problem (hereinafter abbreviated as LP) and a nonlinear programming problem (hereinafter abbreviated as NLP). The former is a linear function for both the constraint and the objective function, and the latter is a constraint or purpose At least one of the functions includes a non-linear function (e.g., a function having a second or higher order term).

線形計画問題は、1963年のDanzigによるシンプレックス法の提案に始まり、その問題に適した高速解法が提案されており、多数の汎用ソルバの適用が可能である。   The linear programming problem began with the proposal of the simplex method by Danzig in 1963. A fast solution suitable for the problem has been proposed, and a large number of general-purpose solvers can be applied.

しかしながら、非線形計画問題を厳密に解くことは非常に困難であり、線形近似処理を行ったり、近似解法を用いて解くことが主流である。例えば、特許文献1では、制約式及び目的関数が非線形式で与えられる場合でも、それをベクトル変数として探索を実施した。   However, it is very difficult to solve nonlinear programming problems exactly, and it is mainstream to perform linear approximation processing or solve using an approximation solution. For example, in Patent Document 1, even when a constraint expression and an objective function are given by a non-linear expression, a search is performed using it as a vector variable.

特願2016−212398Japanese Patent Application No. 2016-212398

しかしながら、特許文献1は、ベクトル変数の探索を粒子群最適化などの多点探索法を適用して行っており、無駄な計算を多数実行していたため、計算速度に課題があった。   However, Patent Document 1 searches for vector variables by applying a multipoint search method such as particle swarm optimization, and many unnecessary calculations are performed, which causes a problem in calculation speed.

本発明は、このような従来の問題に鑑みてなされたものであり、計算に用いるベクトル変数の解を取捨選択し、高速計算を可能にした非線形計画問題の求解方法、そのコンピュータプログラム、記録媒体、求解装置を提供することを目的とする。   The present invention has been made in view of such conventional problems, and selects a solution of vector variables used for calculation and solves the nonlinear programming problem that enables high-speed calculation, its computer program, and recording medium , It aims at providing a solution solving device.

また、近年、製鉄プロセスでは、各工程における生産計画、物流計画の最適化・立案自動化が進められている。原料工程には、原料を積載した船舶から荷役した原料をどのヤードに積み付けるかを決めるヤード配置問題、ヤードやパイル上の原料をどのベルトコンベア系列を用いていつ払い出すかを決める原料搬送問題、高炉に装入する原料配合問題などの計画問題がある。   In recent years, in the iron making process, optimization and planning automation of production plans and distribution plans in each process have been promoted. In the raw material process, the yard arrangement problem of deciding which yard to load the raw material loaded from the ship loaded with the raw material into, and the raw material conveyance problem of deciding which belt conveyor line is used to pay away the raw material on the yard or pile There are planning problems such as the problem of mixing raw materials into the blast furnace.

かかる原料配合問題の一つに鉱石配合問題がある。この鉱石配合問題は、高炉の要求する性状制約などの制約条件を満たした上でコスト最小となるような各銘柄の配合割合を考える問題である。   One of the raw material blending problems is the ore blending problem. The ore blending problem is a problem of considering the blending ratio of each brand which minimizes the cost after satisfying the constraint conditions such as the property constraint required by the blast furnace.

これに対して、特許文献1では、生産物の性状と製造設備の能力とに関する制約を守り、原材料の購買並びに製造に掛るコストを最小化する原材料の購買及び使用計画を作成する際に、制約式及び目的関数が非線形式で与えられる場合でも、それをベクトル変数として探索を実施した。   On the other hand, Patent Document 1 restricts the constraints on the properties of the product and the capacity of the manufacturing facilities, and the planning of the purchasing and use of the raw materials which minimizes the cost for purchasing and manufacturing the raw materials. Even when the equation and the objective function are given as non-linear equations, the search is performed using them as vector variables.

しかしながら、特許文献1は、ベクトル変数の探索を粒子群最適化などの多点探索法を適用して行っており、無駄な計算を多数実行していたため、計算速度に課題があった。   However, Patent Document 1 searches for vector variables by applying a multipoint search method such as particle swarm optimization, and many unnecessary calculations are performed, which causes a problem in calculation speed.

そこで、本発明は、計算に用いるベクトル変数の解を取捨選択し、高速計算を可能にした配合計画の作成方法、そのコンピュータプログラム、記録媒体、配合操業方法、作成装置を提供することを目的とする。   Therefore, the present invention has an object of providing a method of creating a compounding plan which makes it possible to perform high-speed calculation by selecting solutions of vector variables used for calculation, and providing a computer program, a recording medium, a blending operation method, and a producing device. Do.

上記課題は、以下に示す本発明によって解決できる。   The above problems can be solved by the present invention described below.

[1]非線形項を一つ以上含む非線形計画問題を解く非線形計画問題の求解方法であって、
前記非線形項に含まれる一部の項または数式を新たな変数として定め、前記非線形計画問題の記述を変更し、前記新たな変数を一次元以上のベクトル変数として定義する変数のベクトル化ステップと、
前記ベクトル変数の初期解を複数個作成するベクトル変数の初期解作成ステップと、
前記新たな変数として定めた前記非線形項に含まれる一部の項または数式と前記複数の初期解から前記非線形計画問題を線形変数を用いた複数の線形計画問題として定式化する線形計画問題の定式化ステップと、
該線形計画問題の定式化ステップで定式化された複数の線形計画問題の解をそれぞれ求める線形計画問題の求解ステップと、
該線形計画問題の求解ステップで求められた、複数個の前記ベクトル変数の解それぞれに対する目的関数を評価し、前記ベクトル変数の解を改変する、ベクトル変数の解改変ステップと、
ベクトル変数の解を複数のグループに分け、各グループ内でその後の計算に用いるベクトル変数の解を取捨選択する、計算高速化のためのベクトル変数の解の取捨選択ステップと、を有し、
前記ベクトル変数の解改変ステップで改変されたそれぞれの前記ベクトル変数の解を用いて、前記線形計画問題の定式化ステップ、前記線形計画問題の求解ステップ、および前記ベクトル変数の解改変ステップを繰り返して、前記非線形計画問題を求解し、
前記繰り返しの途中で、ベクトル変数の解改変ステップの後に、適宜にベクトル変数の解の取捨選択ステップを行ってから前記線形計画問題の定式化ステップを行うことで前記非線形計画問題の求解を高速化することを特徴とする非線形計画問題の求解方法。
[2]上記[1]に記載の非線形計画問題の求解方法において、
前記ベクトル変数の解改変ステップは、前記目的関数の最小化または最大化を志向しつつ実行可能な前記ベクトル変数を探索することを特徴とする非線形計画問題の求解方法。
[3]上記[1]または[2]に記載の非線形計画問題の求解方法を実行することを特徴としたコンピュータプログラム。
[4]上記[3]に記載のコンピュータプログラムを記録し読み取り可能としたことを特徴とする記録媒体。
[5]非線形項を一つ以上含む非線形計画問題を解く非線形計画問題の求解装置であって、
対象とする変数、目的関数、制約条件、計画期間、終了条件、ベクトル変数の初期解の個数といった入力データを取り込む入力データの取り込み手段と、
該入力データの取り込み手段で取り込んだ入力データをもとに、前記非線形計画問題の最適解を得る非線形計画問題の求解手段と、
前記最適解を計画結果として出力する計画の出力手段とを具備し、
前記非線形計画問題の求解手段では、
前記非線形項に含まれる一部の項または数式を新たな変数として定め、前記非線形計画問題の記述を変更し、前記新たな変数を一次元以上のベクトル変数として定義する変数のベクトル化処理と、
前記ベクトル変数の初期解を複数個作成するベクトル変数の初期解作成処理と、
前記新たな変数として定めた前記非線形項に含まれる一部の項または数式と前記複数の初期解から前記非線形計画問題を線形変数を用いた複数の線形計画問題として定式化する線形計画問題の定式化処理と、
該線形計画問題の定式化処理で定式化された複数の線形計画問題の解をそれぞれ求める線形計画問題の求解処理と、
該線形計画問題の求解処理で求められた、複数個の前記ベクトル変数の解それぞれに対する目的関数を評価し、前記ベクトル変数の解を改変する、ベクトル変数の解改変処理と、を行い、
該ベクトル変数の解改変処理で改変されたそれぞれの前記ベクトル変数の解を用いて、前記線形計画問題の定式化処理、前記線形計画問題の求解処理、および前記ベクトル変数の解改変処理を繰り返して、前記非線形計画問題の最適解を求解し、
前記繰り返しの途中で、ベクトル変数の解改変処理の後に、
適宜に、ベクトル変数の解を複数のグループに分け、各グループ内でその後の計算に用いるベクトル変数の解を取捨選択する、計算高速化のためのベクトル変数の解の取捨選択処理を行ってから、前記線形計画問題の定式化処理を行うことで前記非線形計画問題の最適解の求解を高速化することを特徴とする非線形計画問題の求解装置。
[6]上記[5]に記載の非線形計画問題の求解装置において、
前記ベクトル変数の解改変処理は、前記目的関数の最小化または最大化を志向しつつ実行可能な前記ベクトル変数を探索することを特徴とする非線形計画問題の求解装置。
[1] A method for solving a nonlinear programming problem which solves a nonlinear programming problem including one or more nonlinear terms,
A vectorization step of a variable which defines a part of terms or an equation included in the non-linear term as a new variable, changes a description of the non-linear programming problem, and defines the new variable as a one or more dimensional vector variable;
An initial solution creating step of a vector variable that creates a plurality of initial solutions of the vector variable;
Formulation of a linear programming problem that formulates the nonlinear programming problem as a plurality of linear programming problems using linear variables from some terms or formulas included in the nonlinear term determined as the new variable and the plurality of initial solutions Step, and
A step of solving a linear programming problem for finding solutions of a plurality of linear programming problems formulated in the step of formulating the linear programming problem;
A solution modification step of the vector variable, evaluating an objective function for each of the plurality of solutions of the vector variable determined in the solution solving step of the linear programming problem, and modifying the solution of the vector variable;
The solution of the vector variable is divided into a plurality of groups, and the solution of the vector variable used for the subsequent calculation is selected in each group, and the step of discarding the solution of the vector variable for speeding up calculation is provided.
Repeating the formulation step of the linear programming problem, the solving step of the linear programming problem, and the solution modification step of the vector variable using the solution of each of the vector variables modified in the solution modification step of the vector variable Solve the non-linear programming problem,
In the middle of the repetition, after the solution modification step of the vector variable, the solution selection step of the vector variable is appropriately performed and then the formulation step of the linear programming problem is performed to speed up the solution of the non-linear programming problem. A method of solving a non-linear programming problem characterized by
[2] In the method for solving a nonlinear programming problem according to the above [1],
The method of solving a non-linear programming problem, wherein the solution modifying step of the vector variable searches for the vector variable that can be executed while aiming at minimizing or maximizing the objective function.
[3] A computer program characterized by executing the method of solving nonlinear programming problems according to the above [1] or [2].
[4] A recording medium on which the computer program according to [3] is recorded and readable.
[5] An apparatus for solving nonlinear programming problems, which solves nonlinear programming problems including one or more nonlinear terms,
Input data capturing means for capturing input data such as target variables, objective functions, constraints, planning period, end conditions, number of initial solutions of vector variables,
A means for solving the non-linear programming problem for obtaining an optimum solution of the non-linear programming problem based on the input data taken in by the means for taking in the input data;
Providing a plan output means for outputting the optimal solution as a plan result,
In the means for solving the nonlinear programming problem,
A vectorization process of a variable that defines a part of terms or an equation included in the non-linear term as a new variable, changes a description of the non-linear programming problem, and defines the new variable as a vector variable of one or more dimensions;
Initial solution creation processing of the vector variable for creating a plurality of initial solutions of the vector variable;
Formulation of a linear programming problem that formulates the nonlinear programming problem as a plurality of linear programming problems using linear variables from some terms or formulas included in the nonlinear term determined as the new variable and the plurality of initial solutions Processing,
A solution process of a linear programming problem to obtain solutions of a plurality of linear programming problems formulated by the formulation process of the linear programming problem;
Performing a solution modification process of the vector variable, evaluating an objective function for each solution of a plurality of the vector variables determined by the solution process of the linear programming problem, and modifying the solution of the vector variable;
The formulation process of the linear programming problem, the solution process of the linear programming problem, and the solution modification process of the vector variable are repeated using the solution of each of the vector variables modified by the solution modification process of the vector variable. Solve the optimal solution of the nonlinear programming problem,
In the middle of the repetition, after the solution modification process of the vector variable,
The solutions of vector variables are divided into a plurality of groups as appropriate, and the solutions of vector variables used in subsequent calculations are selected within each group, and the solution of vector variables is sorted out for speeding up calculation. An apparatus for solving a non-linear programming problem characterized by speeding up solution of an optimal solution of the non-linear programming problem by performing formulation processing of the linear programming problem.
[6] In the apparatus for solving nonlinear programming problems according to the above [5],
The solution solving apparatus of the nonlinear programming problem characterized in that solution modification processing of the vector variable searches for the vector variable that can be executed while aiming at minimizing or maximizing the objective function.

[7]制約条件を満たした上で目的関数が最適となる原材料の配合割合を計画する配合計画の作成方法であって、
前記配合計画は、非線形項を一つ以上含む非線形計画問題で表されるものであり、
配合計画の作成に必要な入力データを取り込む入力データの取り込みステップと、
該入力データの取り込みステップで取り込んだ前記非線形項に含まれる一部の項または数式を新たな変数として定め、前記非線形計画問題の記述を変更し、前記新たな変数を一次元以上のベクトル変数として定義する変数のベクトル化ステップと、
前記ベクトル変数の初期解を複数個作成するベクトル変数の初期解作成ステップと、
前記新たな変数として定めた前記非線形項に含まれる一部の項または数式と前記複数の初期解から前記非線形計画問題を線形変数を用いた複数の線形計画問題として定式化する線形計画問題の定式化ステップと、
該線形計画問題の定式化ステップで定式化された複数の線形計画問題の解をそれぞれ求める線形計画問題の求解ステップと、
該線形計画問題の求解ステップで求められた、複数個の前記ベクトル変数の解それぞれに対する目的関数を評価し、前記ベクトル変数の解を改変する、ベクトル変数の解改変ステップと、
ベクトル変数の解を複数のグループに分け、各グループ内でその後の計算に用いるベクトル変数の解を取捨選択する、計算高速化のためのベクトル変数の解の取捨選択ステップと、を有し、
前記ベクトル変数の解改変ステップで改変されたそれぞれの前記ベクトル変数の解を用いて、前記線形計画問題の定式化ステップ、前記線形計画問題の求解ステップ、および前記ベクトル変数の解改変ステップを繰り返して、前記非線形計画問題を求解し、
前記繰り返しの途中で、ベクトル変数の解改変ステップの後に、適宜にベクトル変数の解の取捨選択ステップを行ってから前記線形計画問題の定式化ステップを行うことで前記非線形計画問題の求解を高速化することを特徴とする配合計画の作成方法。
[8]上記[7]に記載の配合計画の作成方法において、
前記ベクトル変数の解改変ステップは、前記目的関数の最小化または最大化を志向しつつ実行可能な前記ベクトル変数を探索することを特徴とする配合計画の作成方法。
[9]上記[7]または[8]に記載の配合計画の作成方法を実行することを特徴としたコンピュータプログラム。
[10]上記[9]に記載のコンピュータプログラムを記録し読み取り可能としたことを特徴とする記録媒体。
[11]上記[7]または[8]に記載の配合計画の作成方法によって作成された配合計画に基づいて、配合操業を行うことを特徴とする配合操業方法。
[12]制約条件を満たした上で目的関数が最適となる原材料の配合割合を計画する配合計画の作成装置であって、
前記配合計画は、非線形項を一つ以上含む非線形計画問題で表されるものであり、
配合計画の作成に必要な入力データを取り込む入力データの取り込み部と、
該入力データの取り込み部で取り込んだ入力データをもとに、前記非線形計画問題の最適解を得る非線形計画問題の求解部と、
前記最適解を計画結果として出力する計画の出力部とを具備し、
前記非線形計画問題の求解部では、
非線形項に含まれる一部の項または数式を新たな変数として定め、前記非線形計画問題の記述を変更し、前記新たな変数を一次元以上のベクトル変数として定義する変数のベクトル化処理と、
前記ベクトル変数の初期解を複数個作成するベクトル変数の初期解作成処理と、
前記新たな変数として定めた前記非線形項に含まれる一部の項または数式と前記複数の初期解から前記非線形計画問題を線形変数を用いた複数の線形計画問題として定式化する線形計画問題の定式化処理と、
該線形計画問題の定式化処理で定式化された複数の線形計画問題の解をそれぞれ求める線形計画問題の求解処理と、
該線形計画問題の求解処理で求められた、複数個の前記ベクトル変数の解それぞれに対する目的関数を評価し、前記ベクトル変数の解を改変する、ベクトル変数の解改変処理と、を行い、
該ベクトル変数の解改変処理で改変されたそれぞれの前記ベクトル変数の解を用いて、前記線形計画問題の定式化処理、前記線形計画問題の求解処理、および前記ベクトル変数の解改変処理を繰り返して、前記非線形計画問題を求解し、
前記繰り返しの途中で、ベクトル変数の解改変処理の後に、
適宜に、ベクトル変数の解を複数のグループに分け、各グループ内でその後の計算に用いるベクトル変数の解を取捨選択する、計算高速化のためのベクトル変数の解の取捨選択処理を行ってから、前記線形計画問題の定式化処理を行うことで前記非線形計画問題の求解を高速化することを特徴とする配合計画の作成装置。
[13]上記[12]に記載の配合計画の作成装置において、
前記ベクトル変数の解改変処理は、前記目的関数の最小化または最大化を志向しつつ実行可能な前記ベクトル変数を探索することを特徴とする配合計画の作成装置。
[7] A method of creating a blending plan for planning blending proportions of raw materials for which an objective function is optimal after satisfying constraint conditions.
The combination plan is represented by a nonlinear programming problem including one or more nonlinear terms,
A step of capturing input data for capturing input data required to create a formulation plan;
A part of terms or an equation included in the non-linear term taken in the input data taking-in step is defined as a new variable, the description of the non-linear programming problem is changed, and the new variable is taken as one or more dimensional vector variables A vectorization step of the variables to be defined,
An initial solution creating step of a vector variable that creates a plurality of initial solutions of the vector variable;
Formulation of a linear programming problem that formulates the nonlinear programming problem as a plurality of linear programming problems using linear variables from some terms or formulas included in the nonlinear term determined as the new variable and the plurality of initial solutions Step, and
A step of solving a linear programming problem for finding solutions of a plurality of linear programming problems formulated in the step of formulating the linear programming problem;
A solution modification step of the vector variable, evaluating an objective function for each of the plurality of solutions of the vector variable determined in the solution solving step of the linear programming problem, and modifying the solution of the vector variable;
The solution of the vector variable is divided into a plurality of groups, and the solution of the vector variable used for the subsequent calculation is selected in each group, and the step of discarding the solution of the vector variable for speeding up calculation is provided.
Repeating the formulation step of the linear programming problem, the solving step of the linear programming problem, and the solution modification step of the vector variable using the solution of each of the vector variables modified in the solution modification step of the vector variable Solve the non-linear programming problem,
In the middle of the repetition, after the solution modification step of the vector variable, the solution selection step of the vector variable is appropriately performed and then the formulation step of the linear programming problem is performed to speed up the solution of the non-linear programming problem. How to make a recipe that is characterized by
[8] In the method of creating a combination plan described in the above [7],
The solution modification step of the vector variable is searching for the vector variable which can be executed while aiming at minimizing or maximizing the objective function.
[9] A computer program characterized by executing the method of creating a combination plan described in the above [7] or [8].
[10] A recording medium on which the computer program according to [9] is recorded and readable.
[11] A compounding operation method characterized in that compounding operation is performed based on the compounding plan created by the method of preparing the compounding plan described in [7] or [8] above.
[12] A device for creating a blending plan that plans blending ratios of raw materials for which an objective function is optimal after satisfying constraint conditions,
The combination plan is represented by a nonlinear programming problem including one or more nonlinear terms,
Input data capture unit that captures input data required to create a formulation plan,
A solving unit for a non-linear programming problem for obtaining an optimal solution of the non-linear programming problem based on the input data taken in by the taking-in unit of the input data;
And an output unit of a plan that outputs the optimal solution as a plan result,
In the solution part of the nonlinear programming problem,
Vectorization processing of a variable which defines a part of a term or formula contained in a nonlinear term as a new variable, changes the description of the nonlinear programming problem, and defines the new variable as a vector variable of one or more dimensions;
Initial solution creation processing of the vector variable for creating a plurality of initial solutions of the vector variable;
Formulation of a linear programming problem that formulates the nonlinear programming problem as a plurality of linear programming problems using linear variables from some terms or formulas included in the nonlinear term determined as the new variable and the plurality of initial solutions Processing,
A solution process of a linear programming problem to obtain solutions of a plurality of linear programming problems formulated by the formulation process of the linear programming problem;
Performing a solution modification process of the vector variable, evaluating an objective function for each solution of a plurality of the vector variables determined by the solution process of the linear programming problem, and modifying the solution of the vector variable;
The formulation process of the linear programming problem, the solution process of the linear programming problem, and the solution modification process of the vector variable are repeated using the solution of each of the vector variables modified by the solution modification process of the vector variable. Solve the non-linear programming problem,
In the middle of the repetition, after the solution modification process of the vector variable,
The solutions of vector variables are divided into a plurality of groups as appropriate, and the solutions of vector variables used in subsequent calculations are selected within each group, and the solution of vector variables is sorted out for speeding up calculation. An apparatus for creating a combination plan characterized by speeding up solution of the non-linear programming problem by performing formulation processing of the linear programming problem.
[13] In the preparation apparatus of the combination plan described in the above [12],
The solution modification processing of the vector variable is searching for the vector variable that can be executed while aiming at the minimization or maximization of the objective function.

また、上記[1]に記載の非線形計画問題の求解方法は、好適には以下の態様を有する。
非線形項を制約条件および/または目的関数に一つ以上含む非線形計画問題を解く非線形計画問題の求解方法であって、
前記非線形項に含まれる一部の項または数式を一つ以上の新たな変数として定めるとともに、前記非線形計画問題の記述式を該新たな変数により変更し、前記一つ以上の新たな変数を一次元以上のベクトル変数として定義する変数のベクトル化ステップと、
前記ベクトル変数の初期解を複数個作成するベクトル変数の初期解作成ステップと、
前記非線形項に含まれる一部の項または数式の新たな変数への置き換えを制約式として追加し、前記ベクトル変数の複数の解それぞれを前記変更された非線形計画問題の記述式に代入して、線形変数を用いた複数の線形計画問題として定式化する線形計画問題の定式化ステップと、
該線形計画問題の定式化ステップで定式化された複数の線形計画問題の解をそれぞれ求める線形計画問題の求解ステップと、
該線形計画問題の求解ステップで求められた、複数個の前記ベクトル変数の解それぞれに対する目的関数を評価し、前記ベクトル変数の解を改変する、ベクトル変数の解改変ステップと、
ベクトル変数の解を複数のグループに分け、各グループ内でその後の計算に用いるベクトル変数の解を取捨選択する、計算高速化のためのベクトル変数の解の選択ステップと、を有し、
前記ベクトル変数の解改変ステップで改変されたそれぞれの前記ベクトル変数の解を用いて、前記線形計画問題の定式化ステップ、前記線形計画問題の求解ステップ、および前記ベクトル変数の解改変ステップを繰り返して、前記非線形計画問題を求解し、
前記繰り返しの途中で、ベクトル変数の解改変ステップの後に、適宜にベクトル変数の解の取捨選択ステップを行ってから前記線形計画問題の定式化ステップを行うことで前記非線形計画問題の求解を高速化することを特徴とする非線形計画問題の求解方法。
In addition, the method of solving a non-linear programming problem described in the above [1] preferably has the following aspect.
A method for solving a non-linear programming problem which solves a non-linear programming problem including at least one non-linear term in a constraint and / or an objective function,
While defining some terms or formulas included in the non-linear term as one or more new variables, the description formula of the non-linear programming problem is changed by the new variables, and the one or more new variables are first-order A vectorization step of variables defined as vector variables of original and higher
An initial solution creating step of a vector variable that creates a plurality of initial solutions of the vector variable;
A replacement of a part of a term or equation included in the non-linear term with a new variable is added as a constraint equation, and each of a plurality of solutions of the vector variable is substituted into a description equation of the modified non-linear programming problem, A linear programming problem formulation step which is formulated as a plurality of linear programming problems using linear variables;
A step of solving a linear programming problem for finding solutions of a plurality of linear programming problems formulated in the step of formulating the linear programming problem;
A solution modification step of the vector variable, evaluating an objective function for each of the plurality of solutions of the vector variable determined in the solution solving step of the linear programming problem, and modifying the solution of the vector variable;
Selecting solutions of vector variables for speeding up calculation, dividing solutions of vector variables into a plurality of groups, and selecting solutions of vector variables used for subsequent calculation in each group;
Repeating the formulation step of the linear programming problem, the solving step of the linear programming problem, and the solution modification step of the vector variable using the solution of each of the vector variables modified in the solution modification step of the vector variable Solve the non-linear programming problem,
In the middle of the repetition, after the solution modification step of the vector variable, the solution selection step of the vector variable is appropriately performed and then the formulation step of the linear programming problem is performed to speed up the solution of the non-linear programming problem. A method of solving a non-linear programming problem characterized by

本発明によれば、ベクトル変数の探索を効率化することによる高速計算を可能にした非線形計画問題の求解方法、そのコンピュータプログラム、記録媒体、求解装置を提供することができる。   According to the present invention, it is possible to provide a method of solving a non-linear programming problem that enables high-speed calculation by efficiently searching vector variables, a computer program, a recording medium, and a solution solution apparatus thereof.

また、本発明によれば、ベクトル変数の探索を効率化することによる高速計算を可能にした配合計画の配合計画の作成方法、そのコンピュータプログラム、記録媒体、配合操業方法、作成装置を提供することができる。   Further, according to the present invention, there is provided a method of creating a blending plan of a blending plan which enables high-speed calculation by efficiently searching for vector variables, a computer program, a recording medium, a blending operation method, and a creating apparatus. Can.

線形計画問題の解空間および実行可能領域を示す模式図である。It is a schematic diagram which shows the solution space and feasible area | region of a linear programming problem. 非線形計画問題の解空間および実行可能領域を示す模式図である。It is a schematic diagram which shows the solution space and feasible area | region of a nonlinear programming problem. 非線形計画問題における探索過程を示す模式図である。It is a schematic diagram which shows the search process in a nonlinear programming problem. 本発明に係る非線形計画問題の求解装置の構成例を示す図である。It is a figure which shows the structural example of the solution-solving apparatus of the nonlinear programming problem which concerns on this invention. 本発明に係る非線形計画問題の求解方法の処理例を示す図である。It is a figure which shows the process example of the solution method of the nonlinear programming problem which concerns on this invention. 鉄鉱石が高炉に装入されるまでの処理フローを示す概略図である。It is the schematic which shows the processing flow until iron ore is charged to a blast furnace. 配合計画作成装置および上位システムの構成例を示す図である。It is a figure which shows the structural example of a mixing | blending plan production apparatus and a high-order system. 本発明に係る配合計画の作成方法の処理例を示した図である。It is a figure showing the example of processing of the preparation method of the combination plan concerning the present invention. K-means法のアルゴリズムを示した図である。It is a figure showing an algorithm of K-means method. 実施例における解の収束過程を示す図である。It is a figure which shows the convergence process of the solution in an Example.

以下、図面および数式を参照して、本発明の実施形態を説明する。先ず、本発明が対象とする非線形計画問題は、以下のように表すことができる。   Hereinafter, embodiments of the present invention will be described with reference to the drawings and formulas. First, the nonlinear programming problem targeted by the present invention can be expressed as follows.

図1は、線形計画問題の解空間および実行可能領域を示す模式図である。上記目的関数および制約条件が線形であり、図1中の多角形は線形計画問題(LP)の実行可能領域を示している。LPを適用する際は、多角形の頂点のみを探索すればよいので高速計算が可能となる。目的関数を右下がりの直線とすると、この例におけるLPの最適解は黒円で囲まれた頂点である。   FIG. 1 is a schematic view showing a solution space and feasible region of a linear programming problem. The objective function and the constraint are linear, and the polygon in FIG. 1 indicates the feasible region of the linear programming problem (LP). When applying LP, high-speed calculation is possible because it is only necessary to search for polygon vertices. Assuming that the objective function is a downward-sloping straight line, the optimal solution of LP in this example is a vertex surrounded by a black circle.

図2は、非線形計画問題の解空間および実行可能領域を示す模式図である。そして、図3は、非線形計画問題における探索過程を示す模式図である。   FIG. 2 is a schematic diagram showing the solution space and feasible region of the nonlinear programming problem. And FIG. 3 is a schematic diagram which shows the search process in a nonlinear programming problem.

非線形計画問題(NLP)は、LPと比べて非常に複雑であり、実行可能領域が凸多角形となる図1のLP の場合と異なり、図2のように曲線で囲まれた複雑な凸凹となっている。そして、NLP を解く際には、この領域の境界線上の点を探索する必要がある。   The nonlinear programming problem (NLP) is much more complicated than LP, and unlike the case of LP in FIG. 1 where the feasible region is a convex polygon, it is complicated curves and surrounded by curves as shown in FIG. It has become. And, when solving NLP, it is necessary to search for a point on the boundary of this area.

図2の例では、大域的最適解は黒円で囲まれた点である。しかし、探索過程において、図3の破線円で囲まれた局所最適解と呼ばれる凹部の点に解が収束することがたびたび起こる。解がひとたび局所最適解に収束すると、局所最適解を脱して解を更新することが困難であり、大域的最適解を導出することが難しい。また、問題自身が複雑なので、計算時間が長くなる。   In the example of FIG. 2, the global optimum solution is a point surrounded by a black circle. However, in the search process, the solution often converges to a point of a concave portion called a local optimum solution surrounded by a dashed circle in FIG. Once the solution converges to the local optimal solution, it is difficult to remove the local optimal solution and update the solution, and it is difficult to derive a global optimal solution. In addition, since the problem itself is complicated, the calculation time becomes long.

目的関数の値は、最適化問題に応じて所定の数値とすることができる。たとえば、最小値や最大値、あるいはあらかじめ設定された所定の値とすることができる。ここでは例として、以下のような最適化問題を考える。   The value of the objective function can be a predetermined value depending on the optimization problem. For example, the minimum value or the maximum value, or a predetermined value set in advance can be used. Here, as an example, consider the following optimization problem.

上記(5)式は、左辺にxの2次の項を含むことになるため、そのまま扱うと煩雑な問題になる。そこで、本発明では、(5)式の左辺の一項目を以下の(6)式のように定数化する。 Since the above equation (5) includes the second-order term of x i on the left side, handling it as it is a complicated problem. Therefore, in the present invention, one item on the left side of the equation (5) is made constant as in the following equation (6).

(5)式の左辺の一項目を(6)式のように定数化することによって、(5)式の制約条件を一次式で記述することができ、(6)式を等式制約とすれば、上記非線形計画問題は単純な線形計画問題となり、容易に解くことができる。ただし、定数化する非線形項は、上記の例では1個であるが、目的関数の性質や制約条件を考慮して、複数選択することができる。   By making one item on the left side of equation (5) constant as equation (6), the constraint condition of equation (5) can be described by a linear expression, and equation (6) can be regarded as an equality constraint. For example, the non-linear programming problem is a simple linear programming problem and can be easily solved. However, although the number of non-linear terms to be constant is one in the above example, a plurality of non-linear terms can be selected in consideration of the nature of the objective function and the constraints.

この場合、選択された変数はベクトルとして扱われるので、この操作を以降ベクトル化と称する。またベクトル化された非線形項に含まれる一部の項または数式をベクトル変数または線形化変数と称する。   In this case, since the selected variable is treated as a vector, this operation is hereinafter referred to as vectorization. Also, some terms or formulas included in the vectorized non-linear terms are referred to as vector variables or linearization variables.

ただし、定数化にともなって制約条件を変更したことにより、元の最適化問題の探索範囲が狭くなっており、局所解に収束してしまうことが考えられる。そこで、本発明では、(6)式右辺の定数項を多数(問題に応じて適宜定める所定のj個)用意し、線形計画問題を多数定式化して、同問題を解くことで得られる評価関数値(目的関数の値)を比較することで、より評価関数値が小さくなる定数項の与え方を探索するようにしている。   However, the search range of the original optimization problem is narrowed by changing the constraint condition in accordance with the constantization, and it is conceivable that the solution converges to the local solution. Therefore, in the present invention, an evaluation function is obtained by preparing a large number of constant terms on the right side of the equation (6) (a predetermined number j determined appropriately according to the problem), formulating a large number of linear programming problems, and solving the problems. By comparing the values (the values of the objective function), it is possible to search for a method of giving a constant term that makes the evaluation function value smaller.

なお、上記問題例は2次の項を含む式が1つだけである非常に単純な例であるが、本発明を用いれば、上述したように複数の変数を定数化することによって、より複雑な非線形計画問題を単純な線形計画問題に置き換えることが可能である。たとえば、制約条件に2次以上の非線形項を含む数式が複数ある場合、定数化する変数を数式ごとに選び、それぞれ線形化することができる。また、一つの数式中に2次以上の項が複数ある場合であっても、当該項を適宜選択して線形化することで、単純な線形計画問題に置き換えることができる。   Although the above problem example is a very simple example in which there is only one equation including a quadratic term, the present invention can be more complicated by making a plurality of variables constant as described above. Nonlinear programming problems can be replaced by simple linear programming problems. For example, in the case where there are a plurality of mathematical expressions including non-linear terms of second order or higher in the constraints, variables to be constantized can be selected for each of the mathematical expressions and linearized. In addition, even when there are a plurality of quadratic or higher order terms in one equation, it is possible to replace the term with a simple linear programming problem by appropriately selecting the term and linearizing the term.

図4は、本発明に係る非線形計画問題の求解装置の構成例を示す図である。図中、01は入力データの取り込み手段、02は非線形計画問題の求解手段、および03は計画の出力手段をそれぞれ表す。   FIG. 4 is a view showing an example of the configuration of an apparatus for solving nonlinear programming problems according to the present invention. In the figure, 01 represents a means for taking in input data, 02 represents a means for solving nonlinear programming problems, and 03 represents a means for outputting plans.

入力データの取り込み手段01では、対象とする変数、目的関数、制約条件、計画期間、終了条件、ベクトル変数の初期解の個数などが入力データとして取り込まれる。   In the input data fetching means 01, target variables, objective functions, constraints, planning period, end conditions, the number of initial solutions of vector variables, etc. are fetched as input data.

そして、非線形計画問題の求解手段02では、上記入力データ取り込み手段01から取り込まれた入力データと、後述する粒子群最適化法と線形計画法を組み合わせた数理計画問題を多数定式化し、線形計画問題の求解を繰り返して最適解を得る。
計画の出力手段03では、非線形計画法の求解手段02で求解された目的関数を最小とする最良解を計画として出力する。
Then, in the means 02 for solving the non-linear programming problem, a large number of mathematical programming problems combining the input data taken in from the above-mentioned input data taking means 01 and the particle swarm optimization method described later and the linear programming are formulated, Repeat the solution of to obtain the optimal solution.
The plan output means 03 outputs, as a plan, the best solution that minimizes the objective function solved by the non-linear programming solution means 02.

上述の装置は、コンピュータで構成され、一つのコンピュータで構成しても、それぞれ別のコンピュータで構成して情報の授受をさせるように構成してもよい。そして、後述する求解方法の処理については、コンピュータに実装するコンピュータプログラムにて実行する。さらに、コンピュータプログラムは、CD、磁気テープなどの記録媒体に記録し読み取り可能とするようにするとよい。   The above-described apparatus may be configured by a computer, may be configured by one computer, or may be configured by different computers to transmit and receive information. The processing of the solution method to be described later is executed by a computer program installed in a computer. Furthermore, the computer program may be recorded on a recording medium such as a CD or a magnetic tape so as to be readable.

図5は、本発明に係る非線形計画問題の求解方法の処理例を示す図である。なお、ここでは全体の最初と最後の処理である入力データの取り込みおよび計画の出力のステップは省略し、非線形計画問題の求解手段02の処理を示している。非線形計画問題の求解手段02は、変数のベクトル化手段と、ベクトル変数の初期解作成手段と、線形計画問題の定式化手段と、線形計画問題の求解手段と、ベクトル変数の解改変手段と、ベクトル変数の解の取捨選択手段を備える。   FIG. 5 is a diagram showing an example of processing of the method of solving nonlinear programming problems according to the present invention. Here, the steps of the input data acquisition and the planning output, which are the first and last processing of the whole, are omitted, and the processing of the solution solving means 02 of the nonlinear programming problem is shown. The non-linear programming problem solving means 02 includes: vectorization means for variables, initial solution preparation means for vector variables, formulation means for linear programming problems, solution means for linear programming problems, solution modification means for vector variables, A means for selecting and selecting solutions of vector variables is provided.

変数のベクトル化ステップStep101では、変数のベクトル化手段が、非線形項に含まれる一部の項または数式を適宜選択して新たな変数として定め、非線形問題の記述を変更し、前記新たな変数を一次元以上のベクトル変数として定義する変数のベクトル化処理を行う。すなわち、ベクトル化する非線形項に含まれる一部の項または数式を決める。ベクトル化する項または数式が複数ある場合、前記項または数式の数に応じて、多次元ベクトル化される。非線形項を含む数式が複数ある場合は、非線形項を適宜選択してそれぞれベクトル化される。   In the vectorization step of the variable Step 101, the vectorization means of the variable appropriately selects some terms or formulas included in the non-linear term, determines them as new variables, changes the description of the non-linear problem, and changes the new variables. Performs vectorization processing of variables defined as vector variables of one or more dimensions. That is, some terms or formulas included in the non-linear term to be vectorized are determined. When there are a plurality of terms or formulas to be vectorized, they are multi-dimensional vectorized according to the number of the terms or formulas. When there are a plurality of expressions including non-linear terms, the non-linear terms are appropriately selected and vectorized respectively.

ベクトル変数の初期解作成ステップStep102では、ベクトル変数の初期解作成手段が、変数のベクトル化ステップStep101で定義したベクトル化された変数の組み合わせを作成するベクトル変数の初期解作成処理を行う。ここでは、ベクトル変数とその組み合わせを初期解と称する。組み合わせの個数は、入力データの取り込み手段01で設定された個数とする。つまり、初期解は組み合わせの個数の分だけ存在する。   In the initial solution creating step of the vector variable Step 102, the initial solution creating means of the vector variable performs an initial solution creating process of the vector variable for creating the combination of the vectorized variables defined in the vectorization step Step 101 of the variable. Here, vector variables and their combinations are called initial solutions. The number of combinations is the number set by the input data acquisition means 01. That is, there are as many initial solutions as the number of combinations.

線形計画問題の定式化ステップStep103では、線形計画問題の定式化手段が、変数のベクトル化ステップStep101で定義したベクトル変数を、線形計画問題の制約とする線形計画問題の定式化処理を行う。そして、目的関数、前記制約を制約式とする最適化問題を、予め入力データの取り込み手段01で設定された個数分の線形計画問題として定式化する。   In the formulation step Step 103 of the linear programming problem, the formulation means of the linear programming problem performs a formulation process of the linear programming problem in which the vector variable defined in the vectorization step Step 101 is a constraint of the linear programming problem. Then, the optimization problem with the objective function and the constraint as the constraint equation is formulated as a linear programming problem for the number of objects set in advance by the input data acquisition means 01.

線形計画問題の求解ステップStep104では、線形計画問題の求解手段が、線形計画問題の定式化ステップStep103で作成された複数個の線形計画問題について、各線形計画問題を解いて目的関数をそれぞれ求める線形計画問題の求解処理を行う。そして、目的関数が最小となる線形変数の組み合わせを決める。   In the step of solving linear programming problems Step 104, the means of solving linear programming problems is linear for solving each linear programming problem and obtaining an objective function for the plurality of linear programming problems created in the step of formulation linear programming problems Step 103 Solve the planning problem. Then, the combination of linear variables that minimizes the objective function is determined.

ベクトル変数の解改変ステップStep105では、ベクトル変数の解改変手段が、線形計画問題の求解ステップStep104で得た解に基づいてベクトル変数を更新するベクトル変数の解改変処理を行う。このときの処理には、前記目的関数の最小化または最大化を志向しつつ実行可能な前記ベクトル変数を探索するメタヒューリスティック法が用いられる。好適には、粒子群最適化法(PSO:Particle Swarm Optimization)、遺伝的アルゴリズム(GA:Genetic Algorithm)、タブーサーチなどの手法が用いられる。これらは多数の候補から優良な候補を適宜選択しながら効率的に解を探索する方法である。粒子群最適化法を適用した例を以下に述べるが、この限りではない。   In the vector variable solution modification step Step 105, the vector variable solution modification means performs a vector variable solution modification process for updating the vector variable based on the solution obtained in the linear programming problem solving step Step104. In the process at this time, a metaheuristic method is used which searches for the vector variable that can be executed while aiming for the minimization or maximization of the objective function. Preferably, techniques such as particle swarm optimization (PSO), genetic algorithm (GA), and tabu search are used. These are methods for efficiently searching for solutions while appropriately selecting good candidates from a large number of candidates. Although the example which applied the particle swarm optimization method is described below, it is not this limitation.

線形計画問題の求解ステップStep104とベクトル変数の解改変ステップStep105では、最小となる目的関数の値(目的関数の最小化を志向するメタヒューリスティック法が適用される場合)と、その値が得られる線形変数の組み合わせが求められる。ここで求められた目的関数の値は、与えられたベクトル変数の組み合わせの中では最小であるが、当初の非線形計画問題としての最小値であるとは限らない。そこで、目的関数の値を最小とするベクトル変数の組み合わせを出発点として、さらにベクトル変数の組み合わせを作成し、計算を行う。   In the step of solving the linear programming problem Step 104 and the step of changing the solution of the vector variable Step 105, the value of the objective function which is the smallest (if the metaheuristic method aiming to minimize the objective function is applied) A combination of variables is sought. Although the value of the objective function obtained here is the smallest among the given combinations of vector variables, it is not necessarily the smallest value as the initial non-linear programming problem. Therefore, starting from the combination of vector variables that minimize the value of the objective function, the combination of vector variables is further created and calculation is performed.

たとえば、目的関数の値が最小になる線形化変数の組み合わせと、目的関数の値が2番目に小さくなる線形化変数の組み合わせの間で、新たに線形変数の組み合わせを作成し、これらの線形変数の組み合わせなどによって再度線形計画問題の求解計算を行う。
なお、ここでの線形化変数の組み合わせの数は、入力データの取り込み手段01で設定された個数に含まれる。
For example, a new combination of linear variables is created between the combination of linearization variables in which the value of the objective function is the smallest and the combination of linearization variables in which the value of the objective function is the second smallest, and these linear variables Solve the linear programming problem again by the combination of
Here, the number of combinations of linearization variables is included in the number set by the input data acquisition means 01.

ベクトル変数の解の取捨選択ステップStep106では、ベクトル変数の解の取捨選択手段が、ベクトル変数の解を複数のグループに分け、各グループ内でその後の計算に用いるベクトル変数の解を取捨選択するベクトル変数の解の取捨選択処理を行う。このStep106でのベクトル変数の解の取捨選択処理は、適宜の方法で実施することができ、例えばベクトル変数の解を複数のグループに分け、各グループ内で評価関数値に応じて解を取捨選択することができる。例えば、評価関数値の良いもの(例えば、目的関数が最小値を求めるものであれば評価関数値が小さいもの、目的関数が最大値を求めるものであれば評価関数値が大きいもの)から順番に所定個数の解を選択し、それ以外の解を選択しないようにすることができる。また、このStep106でのグループ分けにはクラスタリングを用いることが好ましい。ここでは、K-means法を適用した例を記載するが、最短距離法(Nearest Neighbor(NN法))、K-NN法、Ward法、最長距離法など、いずれのクラスタリング手法も適用可能である。   The vector variable solution selection step Step 106, the vector variable solution selection means divides the vector variable solution into a plurality of groups, and discards a vector variable solution to be used in subsequent calculations in each group. Perform selection processing of solution of variable. The selection process of solutions of vector variables in Step 106 can be performed by an appropriate method. For example, solutions of vector variables are divided into a plurality of groups, and solutions are sorted according to the evaluation function value in each group. can do. For example, the evaluation function values are good (for example, the evaluation function value is small if the objective function is to obtain the minimum value, the evaluation function value is large if the objective function is to obtain the maximum value) It is possible to select a predetermined number of solutions and not to select other solutions. Moreover, it is preferable to use clustering for grouping in Step 106. Although an example in which the K-means method is applied is described here, any clustering method such as the nearest distance method (Nearest Neighbor (NN method)), the K-NN method, the Ward method, and the longest distance method can be applied. .

繰返し判断ステップStep107では、繰返し判断手段が、目的関数の計算が入力データの取り込み手段01で予め設定された終了条件を満たしているか否かの判定を行う。終了条件を満たしていれば計画の出力手段03へ、終了条件を満たしていなければ線形計画問題の定式化ステップStep103へ戻り、以後の処理ステップを繰り返す。終了条件として、たとえば、計算時間、ループ回数や更新回数の上限等をあげることができる。   In the repeat determination step Step 107, the repeat determination means determines whether or not the calculation of the objective function satisfies the end condition set in advance by the input data take-in means 01. If the end condition is satisfied, the process is returned to the plan output means 03. If the end condition is not satisfied, the process returns to the linear programming problem formulation step Step 103, and the subsequent processing steps are repeated. As the end condition, for example, the calculation time, the number of loops, the upper limit of the number of updates, and the like can be mentioned.

なお、前記ベクトル変数の解の取捨選択ステップStep106は、適宜のタイミングで実施すればよい。例えば、前記線形計画問題の定式化ステップStep103、線形計画問題の求解ステップStep104、ベクトル変数の解改変ステップStep105のループを任意の回数実施した後に、ベクトル変数の解の取捨選択ステップStep106を実施してもよいし、ベクトル変数の解改変ステップStep105を実施した結果で、評価関数値が一定程度収束したタイミング(例えば、後述のパーソナルベストが一定程度同じ位置に留まっているタイミング)でベクトル変数の解の取捨選択ステップStep106を実施してもよい。ベクトル変数の解の取捨選択ステップStep106が実施されることで、ベクトル変数の解が取捨選択され、その後の計算に用いるベクトル変数の解の数が減少し計算が高速化される。   Note that the solution selection step Step 106 of the vector variable may be performed at an appropriate timing. For example, after the loop of the formulation step Step103 of the linear programming problem, the solution step Step104 of the linear programming problem, and the solution modification step Step105 of the vector variable is performed any number of times, the solution step of the vector variable is sorted out Step106. It is also preferable that the solution of the vector variable is performed at the timing when the evaluation function value converges to a certain degree (for example, the timing when the personal best described later stays at the same position to a certain degree). The selection step Step 106 may be performed. Since the solution of the vector variable is carried out at Step 106, the solution of the vector variable is selected, the number of solutions of the vector variable used for the subsequent calculation is reduced, and the calculation is speeded up.

次に、本発明の適用例(原材料の配合計画の作成方法)について説明する。
鉄鋼業界では、購入した種々の性状を有する多種類の鉄鉱石や石炭などの原材料を混合するが、高炉操業上の理由から、原材料混合後の品質・性状を一定範囲内に収めることが求められている。また、この時、コストが重要な指標として判断されるため、購入コスト、製造コスト等の最小化が求められる。更に、原材料の在庫が切れないように、配合割合を変化させながら複数日に亘って、配合を計画することが求められる。配合計画はすべての原材料を変数として作成されるが、ここでは鉄鉱石の最適な配合計画の作成を例に、本発明について以下に説明する。
Next, an application example of the present invention (a method of creating a blending plan of raw materials) will be described.
In the iron and steel industry, raw materials such as iron ore and coal having various properties purchased and mixed are mixed, but from the ground of blast furnace operation, it is required to keep the quality and properties after mixing raw materials within a certain range ing. At this time, since cost is judged as an important index, it is required to minimize purchase cost, manufacturing cost and the like. Furthermore, it is required to plan the blending over several days while changing the blending ratio so that the stock of raw materials is not exhausted. Although the formulation plan is created with all the raw materials as variables, the present invention will be described below by taking the creation of an optimal formulation plan of iron ore as an example.

図6は、鉄鉱石が高炉に装入されるまでの処理フローを示す概略図である。図中、201はバース、202は鉱石ヤード、203は鉱石パイル、204は焼結機、および205は高炉をそれぞれ表す。   FIG. 6 is a schematic view showing a process flow until iron ore is charged into a blast furnace. In the figure, 201 represents a berth, 202 represents an ore yard, 203 represents an ore pile, 204 represents a sintering machine, and 205 represents a blast furnace.

バース201に入船した船舶に積載された高炉の原材料である鉄鉱石は、アンローダと呼ばれる荷役機器で荷役され、鉱石ヤード202に積み付けられる。産出される鉱山によって含有成分が大きく異なる鉄鉱石は、その後、焼結鉱の硬度等の品質、高炉に投入される全鉄鉱石の性状指標を考慮して所望とする成分になるように配合され、鉱石パイル203に払い出される。   Iron ore which is a raw material of a blast furnace loaded on a ship entering the berth 201 is unloaded by a cargo handling device called an unloader and stacked in the ore yard 202. The iron ore that contains significantly different components depending on the produced mine is then blended to be the desired component in consideration of the quality such as hardness of sintered ore, and the property index of all iron ore input to the blast furnace. , To the ore pile 203.

払い出される鉄鉱石の内、高炉の通気性に悪影響を及ぼす粉鉱石は、焼結機204に払い出され、焼き固められて焼結鉱となり、高炉205に払い出される。また、塊鉱石・処理鉱はそのまま高炉205に払い出される。鉱石ヤード202から鉱石パイル203に払い出す際の配合計画作成に、本発明を適用する。   Among the iron ore to be discharged, powder ore that adversely affects the air permeability of the blast furnace is discharged to the sintering machine 204, and is sintered to be sintered ore, and is discharged to the blast furnace 205. In addition, lump ore and treated ore are discharged to the blast furnace 205 as it is. The present invention is applied to preparation of a compounding plan when delivering from the ore yard 202 to the ore pile 203.

図7は、配合計画作成装置および上位システムの構成例を示す図である。図中、301は入力データの取り込み部、302は非線形計画問題の求解部、303は計画の出力部、304は各プロセスのデータ出力部、305はプロセスコンピュータ、306はビジネスコンピュータをそれぞれ表す。   FIG. 7 is a diagram showing an example of the configuration of a blending plan creating device and a host system. In the figure, reference numeral 301 denotes an input data acquisition unit, 302 denotes a solution solver for nonlinear programming problems, 303 denotes a plan output unit, 304 denotes a data output unit of each process, 305 denotes a process computer, and 306 denotes a business computer.

本発明に係る配合計画作成装置は、主に、入力データの取り込み部301、非線形計画問題の求解部302、および計画の出力部303から構成される。   The compounding plan creation apparatus according to the present invention mainly includes an input data fetching unit 301, a non-linear programming problem solving unit 302, and a planning output unit 303.

入力データの取り込み部301には、鉄鉱石の入荷予定日および入荷予定量、成分、コスト、鉱石ヤード上の在庫量、装入する副原料として配合する原材料の成分、コスト、高炉の出銑予定量、塊鉱石の払出可能量、焼結鉱の生産予定量、計画期間、終了条件、ベクトル変数(焼成歩留など)の初期解の個数といった各種の入力データが取り込まれる。   In the input data import section 301, planned arrival date and expected arrival quantity of iron ore, component, cost, inventory amount on ore yard, ingredient of raw material to be mixed as auxiliary material to be charged, cost, planned delivery of blast furnace Various input data such as amount, mass ore dispensable amount, planned production amount of sintered ore, planned period, end condition, number of initial solution of vector variable (such as calcination yield) are taken.

各種の入力データは、図6で示したバース201、鉱石ヤード202、鉱石パイル203、焼結機204、高炉205といった各プロセスのデータ出力部304から、さらにビジネスコンピュータ306からプロセスコンピュータ305を経由して、入力データの取り込み部301に送られる。   Various input data are sent from the data output unit 304 of each process such as the berth 201, the ore yard 202, the ore pile 203, the sintering machine 204, and the blast furnace 205 shown in FIG. Then, it is sent to the input data acquisition unit 301.

非線形計画問題の求解部302では、入力データの取り込み部301から取り込まれた入力データと、粒子群最適化法と線形計画法を組み合わせた数理計画問題を多数定式化し、線形計画問題の求解(例えば、コストを最小とするなど)を繰り返して最適解を得る。   The non-linear programming problem solving unit 302 formulates a large number of mathematical programming problems combining the particle swarm optimization method and the linear programming method with the input data taken in from the input data taking-in unit 301, and solves the linear programming problem (for example, , Minimize costs, etc.) to obtain an optimal solution.

計画の出力部303では、非線形計画問題の求解部302で求めた最適解を計画結果としてプロセスコンピュータ305に送る。   The plan output unit 303 sends the optimum solution obtained by the non-linear programming problem solving unit 302 to the process computer 305 as a planning result.

上述の装置は、コンピュータで構成され、一つのコンピュータで構成しても、それぞれ別のコンピュータで構成して情報の授受をさせるように構成してもよい。そして、後述する求解方法の処理については、コンピュータに実装するコンピュータプログラムにて実行する。さらに、コンピュータプログラムは、CD、磁気テープなどの記録媒体に記録し読み取り可能とするようにするとよい。   The above-described apparatus may be configured by a computer, may be configured by one computer, or may be configured by different computers to transmit and receive information. The processing of the solution method to be described later is executed by a computer program installed in a computer. Furthermore, the computer program may be recorded on a recording medium such as a CD or a magnetic tape so as to be readable.

図8は、本発明に係る配合計画の作成方法の処理例を示した図である。この図には、処理全体の最初と最後の処理である入力データの取り込みおよび計画の出力についての処理ステップは省略し、非線形計画問題の求解部302での処理を示している。非線形計画問題の求解部302は、変数のベクトル化手段と、ベクトル変数の初期解作成手段と、線形計画問題の定式化手段と、線形計画問題の求解手段と、ベクトル変数の解改変手段と、ベクトル変数の解の取捨選択手段を備える。
なお、入力データの取り込みでは、上述した鉄鉱石の入荷予定日および入荷予定量などといった各種の入力データを上位システムから取り込み、計画の出力処理部303では、配合の最良解を上位システムに出力する。
FIG. 8 is a view showing a processing example of a method of creating a combination plan according to the present invention. In this figure, the processing steps for the acquisition of input data and the output of a plan, which are the first and last processing of the entire processing, are omitted, and the processing of the non-linear programming problem by the solution section 302 is shown. The non-linear programming problem solution part 302 comprises: vectorization means of variables, initial solution preparation means of vector variables, formulation means of linear programming problems, solution means of linear programming problems, solution modification means of vector variables, A means for selecting and selecting solutions of vector variables is provided.
It should be noted that in the input data import, various input data such as the planned arrival date and arrival amount of iron ore mentioned above are fetched from the upper system, and the plan output processing unit 303 outputs the best solution of the combination to the upper system .

先ず、変数のベクトル化ステップStep401では、変数のベクトル化手段が、非線形項に含まれる一部の項または数式を適宜選択して新たな変数として定め、非線形計画問題の記述を変更し、前記新たな変数を一次元以上のベクトル変数として定義する変数のベクトル化処理を行う。すなわち、ベクトル化する非線形項に含まれる一部の項または数式を決める。ベクトル化する項または数式が複数ある場合、前記項または数式の数に応じて、多次元ベクトル化される。非線形項を含む数式が複数ある場合は、非線形項を適宜選択してそれぞれベクトル化される。   First, in the variable vectorization step Step 401, the vectorization unit of variables appropriately selects some terms or formulas included in the non-linear terms and determines them as new variables, changes the description of the non-linear programming problem, and Perform vectorization processing of variables that define various variables as vector variables of one or more dimensions. That is, some terms or formulas included in the non-linear term to be vectorized are determined. When there are a plurality of terms or formulas to be vectorized, they are multi-dimensional vectorized according to the number of the terms or formulas. When there are a plurality of expressions including non-linear terms, the non-linear terms are appropriately selected and vectorized respectively.

ベクトル変数の初期解作成ステップStep402では、ベクトル変数の初期解作成手段が、変数のベクトル化ステップStep401で定義したベクトル変数の初期解を予め入力データの取り込み部301で設定された個数だけ複数作成するベクトル変数の初期解作成処理を行う。なお、前記個数については、自由に増減させることができるようにする。ここで、初期解の個数は、以下で説明する初期解改変ステップと繰返し判断ステップStep407での計算時間と、求められる解の精度などを考慮して適宜決められる。具体的には、計算条件によっても異なるが、ベクトル変数の1000倍程度を上限とすることが適当である。   In the initial solution creating step of the vector variable Step 402, the initial solution creating means of the vector variable creates a plurality of initial solutions of the vector variable defined in the vectorization step Step 401 of the variable by the number set in advance by the input data loading unit 301. Perform initial solution creation processing of vector variables. The number can be freely increased or decreased. Here, the number of initial solutions is appropriately determined in consideration of the calculation time in the initial solution modification step and the iterative determination step Step 407 described below, the accuracy of the solution to be obtained, and the like. Specifically, although depending on the calculation conditions, it is appropriate to set the upper limit to about 1000 times the vector variable.

線形計画問題の定式化ステップStep403では、線形計画問題の定式化手段が、各原材料の在庫量切れ回避の制約、配合後主原料の成分・性状の制約、スラグの流動性を維持するためのスラグ成分制約、変数のベクトル化ステップStep401で定義した変数を線形計画問題の制約として作成する線形計画問題の定式化処理を行う。そして、配合計画のコストを表す関数を目的関数とし、前記制約を制約式とする最適化問題が、予め設定されたベクトル変数の個数分の線形計画問題として定式化される。   In the step of formulating the linear programming problem Step 403, the formulating means of the linear programming problem is a constraint for avoiding stock shortage of each raw material, a constraint on composition and properties of main raw materials after blending, and slag for maintaining slag fluidity. Component constraint, vectorization step of variables A formulation process of a linear programming problem is performed in which the variable defined in Step 401 is created as a constraint of the linear programming problem. Then, an optimization problem in which a function representing the cost of the blending plan is an objective function and the constraint is a constraint equation is formulated as a linear programming problem for the number of vector variables set in advance.

線形計画問題の求解ステップStep404では、線形計画問題の求解手段が、線形計画問題の定式化ステップStep403で作成された複数個の線形計画問題について、各線形計画問題を解いて目的関数をそれぞれ求める線形計画問題の求解処理を行う。そして、目的関数が最小となる線形変数の組み合わせを決めていく。   In the step of solving linear programming problems Step 404, the means of solving linear programming problems is linear for solving each linear programming problem and obtaining an objective function for a plurality of linear programming problems created in the step of formulation linear programming problems Step 403. Solve the planning problem. Then, the combination of linear variables that minimize the objective function is determined.

ベクトル変数の解改変ステップStep405では、ベクトル変数の解改変手段が、線形計画問題の求解ステップStep404で得た解に基づいてベクトル変数を更新するベクトル変数の解改変処理を行う。このときの処理には、前記目的関数の最小化または最大化を志向しつつ実行可能な前記ベクトル変数を探索するメタヒューリスティック法が用いられる。好適には、粒子群最適化法(PSO:Particle Swarm Optimizers)、遺伝的アルゴリズム(GA:Genetic Algorithm)、タブーサーチなどの方法が用いられる。これらは多数の候補から優良な候補を適宜選択しながら効率的に解を探索する方法である。粒子群最適化法を適用した例を以下に述べるが、この限りではない。   In the vector variable solution modification step Step 405, the vector variable solution modification means performs a vector variable solution modification process for updating the vector variable based on the solution obtained in the linear programming problem solution step Step 404. In the process at this time, a metaheuristic method is used which searches for the vector variable that can be executed while aiming for the minimization or maximization of the objective function. Preferably, methods such as particle swarm optimization (PSO), genetic algorithm (GA), and tabu search are used. These are methods for efficiently searching for solutions while appropriately selecting good candidates from a large number of candidates. Although the example which applied the particle swarm optimization method is described below, it is not this limitation.

線形計画問題の求解ステップStep404とベクトル変数の解改変ステップStep405では、最小となる目的関数の値(目的関数の最小化を志向するメタヒューリスティック法が適用される場合)と、その値が得られる線形変数の組み合わせが求められる。ここで求められた目的関数の値は、与えられたベクトル変数の組み合わせの中では最小であるが、当初の非線形計画問題としての最小値であるとは限らない。そこで、目的関数の値を最小とするベクトル変数の組み合わせを出発点として、さらにベクトル変数の組み合わせを作成し、計算を行う。   In the step of solving the linear programming problem Step 404 and the step of changing the solution of the vector variable Step 405, the value of the objective function which is the smallest (if the metaheuristic method aiming to minimize the objective function is applied) A combination of variables is sought. Although the value of the objective function obtained here is the smallest among the given combinations of vector variables, it is not necessarily the smallest value as the initial non-linear programming problem. Therefore, starting from the combination of vector variables that minimize the value of the objective function, the combination of vector variables is further created and calculation is performed.

たとえば、目的関数の値が最小になる線形化変数の組み合わせと、目的関数の値が2番目に小さくなる線形化変数の組み合わせの間で、新たに線形変数の組み合わせを作成し、これらの線形変数の組み合わせなどによって再度線形計画問題の求解計算を行う。
なお、ここでの線形化変数の組み合わせの数は、入力データの取り込み部301で設定された個数に含まれる。
For example, a new combination of linear variables is created between the combination of linearization variables in which the value of the objective function is the smallest and the combination of linearization variables in which the value of the objective function is the second smallest, and these linear variables Solve the linear programming problem again by the combination of
Here, the number of combinations of linearization variables is included in the number set by the input data acquisition unit 301.

ベクトル変数の解の取捨選択ステップStep406では、ベクトル変数の解の取捨選択手段が、ベクトル変数の解を複数のグループにわけ、各グループ内でその後の計算に用いるベクトル変数の解を取捨選択するベクトル変数の解の取捨選択処理を行う。このStep406でのベクトル変数の解の取捨選択処理は、適宜の方法で実施することができ、例えばベクトル変数の解を複数のグループに分け、各グループ内で評価関数値に応じて解を取捨選択することができる。例えば、評価関数値の良いもの(例えば、目的関数が最小値を求めるものであれば評価関数値が小さいもの、目的関数が最大値を求めるものであれば評価関数値が大きいもの)から順番に所定個数の解を選択し、それ以外の解を選択しないようにすることができる。また、このStep406でのグループ分けにはクラスタリングを用いることが好ましい。ここでは、K-means法を適用した例を記載するが、最短距離法(Nearest Neighbor(NN法))、K-NN法、Ward法、最長距離法など、いずれのクラスタリング手法も適用可能である。   The vector variable solution selection step Step 406, the vector variable solution selection means divides the vector variable solution into a plurality of groups, and discards a vector variable solution to be used in subsequent calculations within each group. Perform selection processing of solution of variable. The selection process of solutions of vector variables in this Step 406 can be performed by an appropriate method. For example, solutions of vector variables are divided into a plurality of groups, and solutions are sorted according to the evaluation function value in each group. can do. For example, the evaluation function values are good (for example, the evaluation function value is small if the objective function is to obtain the minimum value, the evaluation function value is large if the objective function is to obtain the maximum value) It is possible to select a predetermined number of solutions and not to select other solutions. In addition, it is preferable to use clustering for grouping in Step 406. Although an example in which the K-means method is applied is described here, any clustering method such as the nearest distance method (Nearest Neighbor (NN method)), the K-NN method, the Ward method, and the longest distance method can be applied. .

繰返し判断ステップStep407では、繰返し判断手段が、目的関数の計算が、入力データの取り込み部301で予め設定された終了条件を満たしているか否かの判定を行う。終了条件を満たしていれば計画の出力部303へ、終了条件を満たしていなければ線形計画問題の定式化ステップStep403へ戻り、以後の処理ステップを繰り返す。終了条件として、たとえば、計算時間、ループ回数や更新回数の上限等をあげることができる。   In the iterative determination step Step 407, the iterative determination means determines whether the calculation of the objective function satisfies the termination condition set in advance by the input data fetching unit 301. If the end condition is satisfied, the process returns to the plan output unit 303. If the end condition is not satisfied, the process returns to the linear programming problem formulation step Step 403, and the subsequent processing steps are repeated. As the end condition, for example, the calculation time, the number of loops, the upper limit of the number of updates, and the like can be mentioned.

なお、前記ベクトル変数の解の取捨選択ステップStep406は、適宜のタイミングで実施すればよい。例えば、前記線形計画問題の定式化ステップStep403、線形計画問題の求解ステップStep404、ベクトル変数の解改変ステップStep405のループを任意の回数実施した後に、ベクトル変数の解の取捨選択ステップStep406を実施してもよいし、ベクトル変数の解改変ステップStep405を実施した結果で、評価関数値が一定程度収束したタイミング(例えば、後述のパーソナルベストが一定程度同じ位置に留まっているタイミング)でベクトル変数の解の取捨選択ステップStep406を実施してもよい。ベクトル変数の解の取捨選択ステップStep406が実施されることで、ベクトル変数の解が取捨選択され、その後の計算に用いるベクトル変数の解の数が減少し計算が高速化される。   Note that the solution selection and selection step Step 406 of the vector variable may be performed at an appropriate timing. For example, after the loop of the formulation step Step 403 of the linear programming problem, the solution solving step Step 404 of the linear programming problem, and the solution modification step Step 405 of the vector variable is performed any number of times, the solution selection of the vector variable step Step 406 is implemented. It is also preferable that the solution of the vector variable is performed at the timing when the evaluation function value converges to a certain extent (for example, the timing when the personal best described later remains at the same position to a certain extent). The selection step Step 406 may be performed. By performing the step of discarding the solution of the vector variable Step 406, the solution of the vector variable is sorted out, the number of solutions of the vector variable used for the subsequent calculation is reduced, and the calculation is speeded up.

ここで、粒子群最適化法について、さらに説明する。   Here, the particle swarm optimization method will be further described.

粒子群最適化法のアルゴリズムは、生物の集団行動にヒントを得たメタヒューリスティックスで、探索の対象となる目的関数が与えられたとき、複数の粒子が互いに情報を共有しながら最適解を求めて探索空間内を動き回る。この概念とアルゴリズムの簡素さ、動作の柔軟さ、改良の可能性などを特徴としている。   The particle swarm optimization algorithm is a metaheuristics inspired by the collective behavior of organisms, and given an objective function to be searched for, an optimal solution is sought while multiple particles share information with each other. Move around in the search space. It features the simplicity of the concept and algorithm, the flexibility of operation, and the possibility of improvement.

粒子群最適化法のアルゴリズムでは、次式に従って各ベクトル変数の成分を更新する。   The particle swarm optimization algorithm updates the components of each vector variable according to the following equation.

また、pで表されるパーソナルベスト(Pbest)は、k番目のベクトル変数の現在の世代までの目的関数の最良値を与える位置ベクトルであり、さらに、gで表されるグローバルベスト(Gbest)は、全てのベクトル変数のパーソナルベストの最良値であり、以下に示す(9)と(10)式ようにそれぞれ定義される。ここで、F(・)は目的関数を示しており、ここでは、目的関数の最良値として、例えば最小値を求める場合を示している。すなわち、(9)式では、粒子kのすべての現在までの世代で取った目的関数の値はパーソナルベスト以上であることが示されており、(10)式では、グローバルベストgの目的関数値は任意の粒子kのパーソナルベストp目的関数値以下となることを示している。 The personal best represented by p k (Pbest) is a position vector giving the best value of the objective function to the current generation of the k-th vector variable, further global best represented by g (gbest) Is the personal best of all vector variables, and is defined as (9) and (10) shown below. Here, F (·) indicates an objective function, and in this case, for example, a case where a minimum value is obtained as the best value of the objective function is shown. That is, it is shown that the value of the objective function taken in all the current generations of the particle k is the personal best or higher in the equation (9), and the objective function value of the global best g in the equation (10) Indicates that it is less than or equal to the personal best p k objective function value of any particle k.

ここで、位置ベクトルzはStep401(Step101)でベクトル化された変数に相当し、速度ベクトルvはベクトル変数の解改変ステップStep405(Step105)で行う新たな線形化変数の組み合わせを作成する方向に相当する。そして、pは、任意のベクトル変数kが世代lまでに取った組み合わせ中で最小の目的関数値を得る線形化変数の組み合わせであり、gはすべてのpの中で最小の目的関数の値が得られる組み合わせである。p,gは、以下に示す(11)と(12)式のように目的関数の計算が行われ、目的関数の値が得られるたびに更新される。(11)式はパーソナルベスト更新式であり、(12)式はグローバルベスト更新式である。 Here, the position vector z corresponds to the variable vectorized in Step 401 (Step 101), and the velocity vector v corresponds to the direction of creating a new combination of linearization variables performed in the step of modifying the vector variable Step 405 (Step 105). Do. Then, p k is the linear combination of variables to obtain the minimum value of the objective function in combination any vector variable k is taken to generation l, g is the smallest objective function among all p k It is a combination from which values can be obtained. The calculation of the objective function is performed as shown in the following (11) and (12), and p k and g are updated each time the value of the objective function is obtained. Equation (11) is a personal best update equation, and equation (12) is a global best update equation.

F(z)は、前述の例の(3)〜(6)式でいえば、βをzとしたときのLP解の目的関数である。Fが最小となるように、位置ベクトルzを変えて逐次計算を行う。そしてFが最小となるzをpとし、F(p)する。そしてさらに計算を行い、Fが最小となる度に、pを入れ替える。 F (z) is an objective function of the LP solution when β j is z in the equations (3) to (6) of the above example. The position vector z is changed to sequentially calculate so that F is minimized. Then, let z be the minimum of F be p, and F (p). Then, further calculation is performed, and p is switched whenever F becomes minimum.

F(g)は、すべてのF(p)の中で最小となるFである。最小となるpが得られると、gがpに置き換えられ、F(g)が得られる。   F (g) is the smallest F among all F (p). When a minimum p is obtained, g is replaced by p to obtain F (g).

F(g)は、すべてのF(p)(複数の粒子に対応して複数のパーソナルベストがある)の中で最小となるFである。最小となるpが得られると、gがpに置き換えられ、F(g)が得られる。   F (g) is the smallest F among all F (p) (there are multiple personal vests for multiple particles). When a minimum p is obtained, g is replaced by p to obtain F (g).

F(z)はzの組み合わせで求まるが、しかしながら、どの方向にF(z)が最小となるzの組み合わせがあるのか不明である。そこで、ある時点での最小のF(p)をF(g)として、F(p)の最小値が求められる度にF(g)を更新する。つまり、F(g)が小さくなれば、その方向に最適解がある可能性が高く、F(g)を更新していくことで、最適解に到達できる可能性が高くなる。   F (z) is determined by the combination of z, however, it is unclear in which direction there is a combination of z that minimizes F (z). Therefore, F (g) is updated every time the minimum value of F (p) is obtained, assuming that the minimum F (p) at a certain point in time is F (g). That is, if F (g) becomes smaller, there is a high possibility that there is an optimal solution in that direction, and by updating F (g), the possibility that the optimal solution can be reached becomes high.

すなわち、本発明においては、ベクトル変数を、より目的関数値が小さくなるように粒子群最適化法のアルゴリズムを用いて探索を行う。ある粒子がGbestに対応する“優良粒子”となると、粒子群がその“優良粒子”に引きずられて最適解に近づいていく。   That is, in the present invention, vector variables are searched using an algorithm of particle swarm optimization method so that the objective function value becomes smaller. When a particle becomes an "excellent particle" corresponding to Gbest, a particle group is dragged by the "excellent particle" and approaches an optimal solution.

以上では、目的関数を最小化する例を示したが、目的関数を最大化する場合も、同様の手順で実現できる。この場合は、目的関数が最大になる変数の組み合わせを求めるようにすればよい。また、目的関数の値の最小化または最大化だけではなく、目的関数をあらかじめ決められた所定の値とすることも可能である。この場合も同様に、目的関数を所定の値とするベクトル変数の組み合わせを求めるようにすればよい。   Although the example in which the objective function is minimized has been described above, the same procedure can be used to maximize the objective function. In this case, the combination of variables that maximizes the objective function may be determined. In addition to minimizing or maximizing the value of the objective function, it is also possible to set the objective function to a predetermined value. Also in this case, a combination of vector variables having an objective function as a predetermined value may be obtained similarly.

鉄鋼業界では、購入した種々の性状を有する多種類の鉄鉱石や石炭などの原材料を混合して、混合後の品質・性状を一定範囲内に収めることが求められている。また、この際にはコストが重要な指標として判断されるため、購入コスト、製造コスト等の最小化が求められる。更に、原材料の在庫が切れないように、配合割合を変化させながら複数日に亘って、配合を計画することが求められる。ここでは特に、鉄鉱石の最適な配合計画を作成するための本発明の適用例を示す。   In the iron and steel industry, it is required to mix raw materials such as various types of iron ore and coal having various properties purchased and to keep the quality and properties after mixing within a certain range. Moreover, since cost is judged as an important parameter | index in this case, the minimization of a purchase cost, a manufacturing cost, etc. is calculated | required. Furthermore, it is required to plan the blending over several days while changing the blending ratio so that the stock of raw materials is not exhausted. Here, in particular, an application example of the present invention for producing an optimum blending plan of iron ore is shown.

以下、実施例について説明を行う。まず、制約式の詳細例を述べる。本実施例では、予め設定した配合計画作成期間を更に複数の計画単位にわけて取り扱う。例えば、計画期間を6ヶ月に設定すれば、1ヶ月を計画単位とするなどである。以下の説明では、この設定で行うものとする。   Examples will be described below. First, a detailed example of the constraint equation will be described. In the present embodiment, the preset combination plan creation period is further divided into a plurality of plan units and handled. For example, if the planning period is set to six months, one month is considered as the planning unit. In the following description, this setting is used.

制約条件(制約式)について、具体的に説明を行う。在庫制約は、以下に示す式で与えられる。   The constraint condition (constraint equation) will be specifically described. The stock constraint is given by the formula shown below.

非線形項に含まれる一部の項または数式を定数化する際、上記計算式が制約となる。焼成歩留を例にして説明する。焼成歩留は、粉状の鉄鉱石である粉鉱石を焼き固めて焼結鉱を作るときの歩留を意味している。   When constantizing some terms or formulas included in the non-linear terms, the above formula becomes a constraint. The firing yield will be described as an example. The firing yield means the yield when the powder ore, which is a powdery iron ore, is sintered to form a sintered ore.

焼結鉱を高炉に装入した時、焼結鉱の強度が低いと粉化してしまい、高炉の通気性が悪化する。このため、焼結鉱の強度を高くすることは、操業上非常に重要である。   When sintered ore is charged into a blast furnace, if the strength of the sintered ore is low, it will be pulverized and air permeability of the blast furnace will be deteriorated. For this reason, raising the strength of sintered ore is very important in operation.

そこで、焼結鉱を作る時に、粉鉱石に石灰類の副原料を加えて焼結し、焼結鉱の強度を高くする。以下に焼成歩留の導出の式を示す。   Therefore, when making sinter ore, add the limestone by-products to the powder ore and sinter it to increase the strength of the sinter ore. The formula of derivation of the calcination yield is shown below.

すなわち、粉鉱石の量xi,mに副原料配合量を加えた原材料投入量に焼成歩留まりを乗じたものが焼結鉱生産量になる。 That is, the sintered ore production amount is obtained by multiplying the raw material input amount obtained by adding the auxiliary raw material blending amount to the powder ore amount x i, m and multiplying the firing yield.

配合する粉鉱石の量xが変数であるので、上の2式より焼成歩留は非線形性を持っている。ここで、副原料配合量と焼成歩留の値を、変数のベクトル化ステップStep401で定数化すれば、上の2式は粉鉱石の配合量和の線形な制約式として取り扱うことができる。同様の操作を、他の非線形項に含まれる一部の項または数式に行うことで、制約の線形化を行うことができる。   Since the amount x of powder ore to be blended is a variable, the calcination yield has nonlinearity from the above two equations. Here, the above two equations can be treated as a linear constraint equation of the powder ore blending amount sum, if the values of the auxiliary raw material blending amount and the firing yield are made constant in the vectorization step Step 401 of the variable. By performing the same operation on some terms or mathematical expressions included in other non-linear terms, linearization of constraints can be performed.

次に、目的関数の詳細例を以下に示す。   Next, a detailed example of the objective function is shown below.

上の1項目は、鉱石のコストを、2項目は、計画単位期間毎の払出量の変化をそれぞれ表している。製鉄業では日々の払出量が大きく変動すると操業トラブルの元になるため、日々の配合量の乖離が少ないことが望ましい。そこで、この例では、鉱石のコストに加えて、操業上の制約として、計画単位期間毎の払出量の変化を加えて目的関数としている。   The first item represents the ore cost, and the second item represents the change in the amount of payout for each planned unit period. In the iron and steel manufacturing industry, if the daily amount of withdrawal fluctuates greatly, it becomes the source of operation problems, so it is desirable that the difference in the daily amount of compounding be small. Therefore, in this example, in addition to the cost of the ore, a change in the amount of payout for each planned unit period is added as an operation constraint to form an objective function.

1ヶ月を計画単位として計画期間を6ヶ月に設定し、上記2つの項の和が最小化となる解を求めるものである。   The plan period is set to six months with one month as the plan unit, and a solution that minimizes the sum of the above two terms is sought.

ここで、K-means法を用いたクラスタリングについて述べる。
図9はK-means法のアルゴリズムを示した図である。ここでは例として3グループに分けた場合について述べるが、その限りでは無い。各ベクトル変数はランダムに3グループ(3クラスター)に分けられる。次に、クラスター毎の重心のベクトル座標を計算する。計算方法は、クラスター要素の座標の各方向の単なる平均である。続いて、該重心の位置に近いグループにクラスターを変更する。各ベクトル変数のクラスター移行が終了後、新たなクラスターに対して重心の位置を更新し、以降クラスターの変更と重心の更新を繰り返し、クラスター間のベクトル変数の移動が無くなれば終了となる。なお、2点間の距離はユークリッド距離で算出するものとした。
Here, clustering using the K-means method will be described.
FIG. 9 is a diagram showing an algorithm of the K-means method. Although the case where it divides into 3 groups as an example is described here, it is not the limitation. Each vector variable is randomly divided into 3 groups (3 clusters). Next, the vector coordinates of the center of gravity for each cluster are calculated. The calculation method is a simple average of each direction of the coordinates of cluster elements. Subsequently, the cluster is changed to a group close to the position of the center of gravity. After cluster transfer of each vector variable is completed, the position of the center of gravity is updated for a new cluster, and then changing of the cluster and updating of the center of gravity are repeated, and the process ends if there is no movement of the vector variable between clusters. Note that the distance between two points is calculated by Euclidean distance.

本実施例において、上述のベクトル変数の解の取捨選択ステップStep406では、ベクトル変数の解の取捨選択手段が、クラスタリングによりベクトル変数を複数のクラスターに分け、各クラスターの評価値が良い変数のみの計算を続行するよう処理を行う。図9では、各クラスター内で評価値が良い上位半分の変数を保持し、残りの計算を停止した例を示しているが、計算を停止する粒子の選択方法はこの限りでは無い。   In the present embodiment, in the above-mentioned vector variable solution selection step Step 406, the vector variable solution selection means divides the vector variable into a plurality of clusters by clustering, and calculates only the variables having good evaluation values for each cluster. Process to continue. Although FIG. 9 shows an example in which the upper half variable having a good evaluation value is held in each cluster and the remaining calculation is stopped, the method of selecting particles for stopping the calculation is not limited to this.

図10は、本実施例における解の収束過程を示す図である。市販のソルバーを用いて計算したものであり、縦軸にコンピューターの総計算時間(分)または無次元化したコストメリット(評価値)を、横軸にループ(Step403〜Step406)の繰返し数を示しており、計画期間を6ヶ月、計画単位期間を1ヶ月、粒子数を2,000個として計算を実行した結果である。図10に示すように、従来(特許文献1)の手法よりも計算速度が向上しており、評価値も同程度となっていることが分かる。   FIG. 10 is a diagram showing the convergence process of the solution in this embodiment. Calculated using a commercially available solver, the vertical axis indicates the total calculation time (minutes) of the computer or the non-dimensionalized cost merit (evaluation value), and the horizontal axis indicates the number of repetitions of the loop (Step 403 to Step 406). The calculation is performed with a planned period of 6 months, a planned unit period of 1 month, and 2,000 particles. As shown in FIG. 10, it can be seen that the calculation speed is improved compared to the conventional method (Patent Document 1), and the evaluation value is also comparable.

01 入力データの取り込み手段
02 非線形計画問題の求解手段
03 計画の出力手段
201 バース
202 鉱石ヤード
203 鉱石パイル
204 焼結機
205 高炉
301 入力データの取り込み部
302 非線形計画問題の求解部
303 計画の出力部
304 各プロセスのデータ出力部
305 プロセスコンピュータ
306 ビジネスコンピュータ
01 Input data acquisition means 02 Non-linear programming problem solving means 03 Planning output means 201 Berth 202 ore yard 203 Ore pile 204 Sintering machine 205 Blast furnace 301 Input data acquisition part 302 Non-linear programming problem solution part 303 Planning output part 304 Data output unit of each process 305 Process computer 306 Business computer

Claims (13)

非線形項を一つ以上含む非線形計画問題を解く非線形計画問題の求解方法であって、
前記非線形項に含まれる一部の項または数式を新たな変数として定め、前記非線形計画問題の記述を変更し、前記新たな変数を一次元以上のベクトル変数として定義する変数のベクトル化ステップと、
前記ベクトル変数の初期解を複数個作成するベクトル変数の初期解作成ステップと、
前記新たな変数として定めた前記非線形項に含まれる一部の項または数式と前記複数の初期解から前記非線形計画問題を線形変数を用いた複数の線形計画問題として定式化する線形計画問題の定式化ステップと、
該線形計画問題の定式化ステップで定式化された複数の線形計画問題の解をそれぞれ求める線形計画問題の求解ステップと、
該線形計画問題の求解ステップで求められた、複数個の前記ベクトル変数の解それぞれに対する目的関数を評価し、前記ベクトル変数の解を改変する、ベクトル変数の解改変ステップと、
ベクトル変数の解を複数のグループに分け、各グループ内でその後の計算に用いるベクトル変数の解を取捨選択する、計算高速化のためのベクトル変数の解の取捨選択ステップと、を有し、
前記ベクトル変数の解改変ステップで改変されたそれぞれの前記ベクトル変数の解を用いて、前記線形計画問題の定式化ステップ、前記線形計画問題の求解ステップ、および前記ベクトル変数の解改変ステップを繰り返して、前記非線形計画問題を求解し、
前記繰り返しの途中で、ベクトル変数の解改変ステップの後に、適宜にベクトル変数の解の取捨選択ステップを行ってから前記線形計画問題の定式化ステップを行うことで前記非線形計画問題の求解を高速化することを特徴とする非線形計画問題の求解方法。
A method for solving a nonlinear programming problem which solves a nonlinear programming problem including one or more nonlinear terms,
A vectorization step of a variable which defines a part of terms or an equation included in the non-linear term as a new variable, changes a description of the non-linear programming problem, and defines the new variable as a one or more dimensional vector variable;
An initial solution creating step of a vector variable that creates a plurality of initial solutions of the vector variable;
Formulation of a linear programming problem that formulates the nonlinear programming problem as a plurality of linear programming problems using linear variables from some terms or formulas included in the nonlinear term determined as the new variable and the plurality of initial solutions Step, and
A step of solving a linear programming problem for finding solutions of a plurality of linear programming problems formulated in the step of formulating the linear programming problem;
A solution modification step of the vector variable, evaluating an objective function for each of the plurality of solutions of the vector variable determined in the solution solving step of the linear programming problem, and modifying the solution of the vector variable;
The solution of the vector variable is divided into a plurality of groups, and the solution of the vector variable used for the subsequent calculation is selected in each group, and the step of discarding the solution of the vector variable for speeding up calculation is provided.
Repeating the formulation step of the linear programming problem, the solving step of the linear programming problem, and the solution modification step of the vector variable using the solution of each of the vector variables modified in the solution modification step of the vector variable Solve the non-linear programming problem,
In the middle of the repetition, after the solution modification step of the vector variable, the solution selection step of the vector variable is appropriately performed and then the formulation step of the linear programming problem is performed to speed up the solution of the non-linear programming problem. A method of solving a non-linear programming problem characterized by
請求項1に記載の非線形計画問題の求解方法において、
前記ベクトル変数の解改変ステップは、前記目的関数の最小化または最大化を志向しつつ実行可能な前記ベクトル変数を探索することを特徴とする非線形計画問題の求解方法。
In the method of solving nonlinear programming problems according to claim 1,
The method of solving a non-linear programming problem, wherein the solution modifying step of the vector variable searches for the vector variable that can be executed while aiming at minimizing or maximizing the objective function.
請求項1または2に記載の非線形計画問題の求解方法を実行することを特徴としたコンピュータプログラム。 A computer program for executing the method of solving nonlinear programming problems according to claim 1 or 2. 請求項3に記載のコンピュータプログラムを記録し読み取り可能としたことを特徴とする記録媒体。 A recording medium on which the computer program according to claim 3 is recorded and readable. 非線形項を一つ以上含む非線形計画問題を解く非線形計画問題の求解装置であって、
対象とする変数、目的関数、制約条件、計画期間、終了条件、ベクトル変数の初期解の個数といった入力データを取り込む入力データの取り込み手段と、
該入力データの取り込み手段で取り込んだ入力データをもとに、前記非線形計画問題の最適解を得る非線形計画問題の求解手段と、
前記最適解を計画結果として出力する計画の出力手段とを具備し、
前記非線形計画問題の求解手段では、
前記非線形項に含まれる一部の項または数式を新たな変数として定め、前記非線形計画問題の記述を変更し、前記新たな変数を一次元以上のベクトル変数として定義する変数のベクトル化処理と、
前記ベクトル変数の初期解を複数個作成するベクトル変数の初期解作成処理と、
前記新たな変数として定めた前記非線形項に含まれる一部の項または数式と前記複数の初期解から前記非線形計画問題を線形変数を用いた複数の線形計画問題として定式化する線形計画問題の定式化処理と、
該線形計画問題の定式化処理で定式化された複数の線形計画問題の解をそれぞれ求める線形計画問題の求解処理と、
該線形計画問題の求解処理で求められた、複数個の前記ベクトル変数の解それぞれに対する目的関数を評価し、前記ベクトル変数の解を改変する、ベクトル変数の解改変処理と、を行い、
該ベクトル変数の解改変処理で改変されたそれぞれの前記ベクトル変数の解を用いて、前記線形計画問題の定式化処理、前記線形計画問題の求解処理、および前記ベクトル変数の解改変処理を繰り返して、前記非線形計画問題の最適解を求解し、
前記繰り返しの途中で、ベクトル変数の解改変処理の後に、
適宜に、ベクトル変数の解を複数のグループに分け、各グループ内でその後の計算に用いるベクトル変数の解を取捨選択する、計算高速化のためのベクトル変数の解の取捨選択処理を行ってから、前記線形計画問題の定式化処理を行うことで前記非線形計画問題の最適解の求解を高速化することを特徴とする非線形計画問題の求解装置。
An apparatus for solving nonlinear programming problems, which solves nonlinear programming problems including one or more nonlinear terms, comprising
Input data capturing means for capturing input data such as target variables, objective functions, constraints, planning period, end conditions, number of initial solutions of vector variables,
A means for solving the non-linear programming problem for obtaining an optimum solution of the non-linear programming problem based on the input data taken in by the means for taking in the input data;
Providing a plan output means for outputting the optimal solution as a plan result,
In the means for solving the nonlinear programming problem,
A vectorization process of a variable that defines a part of terms or an equation included in the non-linear term as a new variable, changes a description of the non-linear programming problem, and defines the new variable as a vector variable of one or more dimensions;
Initial solution creation processing of the vector variable for creating a plurality of initial solutions of the vector variable;
Formulation of a linear programming problem that formulates the nonlinear programming problem as a plurality of linear programming problems using linear variables from some terms or formulas included in the nonlinear term determined as the new variable and the plurality of initial solutions Processing,
A solution process of a linear programming problem to obtain solutions of a plurality of linear programming problems formulated by the formulation process of the linear programming problem;
Performing a solution modification process of the vector variable, evaluating an objective function for each solution of a plurality of the vector variables determined by the solution process of the linear programming problem, and modifying the solution of the vector variable;
The formulation process of the linear programming problem, the solution process of the linear programming problem, and the solution modification process of the vector variable are repeated using the solution of each of the vector variables modified by the solution modification process of the vector variable. Solve the optimal solution of the nonlinear programming problem,
In the middle of the repetition, after the solution modification process of the vector variable,
The solutions of vector variables are divided into a plurality of groups as appropriate, and the solutions of vector variables used in subsequent calculations are selected within each group, and the solution of vector variables is sorted out for speeding up calculation. An apparatus for solving a non-linear programming problem characterized by speeding up solution of an optimal solution of the non-linear programming problem by performing formulation processing of the linear programming problem.
請求項5に記載の非線形計画問題の求解装置において、
前記ベクトル変数の解改変処理は、前記目的関数の最小化または最大化を志向しつつ実行可能な前記ベクトル変数を探索することを特徴とする非線形計画問題の求解装置。
In the apparatus for solving nonlinear programming problems according to claim 5,
The solution solving apparatus of the nonlinear programming problem characterized in that solution modification processing of the vector variable searches for the vector variable that can be executed while aiming at minimizing or maximizing the objective function.
制約条件を満たした上で目的関数が最適となる原材料の配合割合を計画する配合計画の作成方法であって、
前記配合計画は、非線形項を一つ以上含む非線形計画問題で表されるものであり、
配合計画の作成に必要な入力データを取り込む入力データの取り込みステップと、
該入力データの取り込みステップで取り込んだ前記非線形項に含まれる一部の項または数式を新たな変数として定め、前記非線形計画問題の記述を変更し、前記新たな変数を一次元以上のベクトル変数として定義する変数のベクトル化ステップと、
前記ベクトル変数の初期解を複数個作成するベクトル変数の初期解作成ステップと、
前記新たな変数として定めた前記非線形項に含まれる一部の項または数式と前記複数の初期解から前記非線形計画問題を線形変数を用いた複数の線形計画問題として定式化する線形計画問題の定式化ステップと、
該線形計画問題の定式化ステップで定式化された複数の線形計画問題の解をそれぞれ求める線形計画問題の求解ステップと、
該線形計画問題の求解ステップで求められた、複数個の前記ベクトル変数の解それぞれに対する目的関数を評価し、前記ベクトル変数の解を改変する、ベクトル変数の解改変ステップと、
ベクトル変数の解を複数のグループに分け、各グループ内でその後の計算に用いるベクトル変数の解を取捨選択する、計算高速化のためのベクトル変数の解の取捨選択ステップと、を有し、
前記ベクトル変数の解改変ステップで改変されたそれぞれの前記ベクトル変数の解を用いて、前記線形計画問題の定式化ステップ、前記線形計画問題の求解ステップ、および前記ベクトル変数の解改変ステップを繰り返して、前記非線形計画問題を求解し、
前記繰り返しの途中で、ベクトル変数の解改変ステップの後に、適宜にベクトル変数の解の取捨選択ステップを行ってから前記線形計画問題の定式化ステップを行うことで前記非線形計画問題の求解を高速化することを特徴とする配合計画の作成方法。
This is a method of creating a blending plan that plans blending ratios of raw materials for which the objective function is optimal after satisfying the constraint conditions.
The combination plan is represented by a nonlinear programming problem including one or more nonlinear terms,
A step of capturing input data for capturing input data required to create a formulation plan;
A part of terms or an equation included in the non-linear term taken in the input data taking-in step is defined as a new variable, the description of the non-linear programming problem is changed, and the new variable is taken as one or more dimensional vector variables A vectorization step of the variables to be defined,
An initial solution creating step of a vector variable that creates a plurality of initial solutions of the vector variable;
Formulation of a linear programming problem that formulates the nonlinear programming problem as a plurality of linear programming problems using linear variables from some terms or formulas included in the nonlinear term determined as the new variable and the plurality of initial solutions Step, and
A step of solving a linear programming problem for finding solutions of a plurality of linear programming problems formulated in the step of formulating the linear programming problem;
A solution modification step of the vector variable, evaluating an objective function for each of the plurality of solutions of the vector variable determined in the solution solving step of the linear programming problem, and modifying the solution of the vector variable;
The solution of the vector variable is divided into a plurality of groups, and the solution of the vector variable used for the subsequent calculation is selected in each group, and the step of discarding the solution of the vector variable for speeding up calculation is provided.
Repeating the formulation step of the linear programming problem, the solving step of the linear programming problem, and the solution modification step of the vector variable using the solution of each of the vector variables modified in the solution modification step of the vector variable Solve the non-linear programming problem,
In the middle of the repetition, after the solution modification step of the vector variable, the solution selection step of the vector variable is appropriately performed and then the formulation step of the linear programming problem is performed to speed up the solution of the non-linear programming problem. How to make a recipe that is characterized by
請求項7に記載の配合計画の作成方法において、
前記ベクトル変数の解改変ステップは、前記目的関数の最小化または最大化を志向しつつ実行可能な前記ベクトル変数を探索することを特徴とする配合計画の作成方法。
In the method of creating a combination plan according to claim 7,
The solution modification step of the vector variable is searching for the vector variable which can be executed while aiming at minimizing or maximizing the objective function.
請求項7または8に記載の配合計画の作成方法を実行することを特徴としたコンピュータプログラム。 A computer program characterized by executing the method of creating a combination plan according to claim 7 or 8. 請求項9に記載のコンピュータプログラムを記録し読み取り可能としたことを特徴とする記録媒体。 A recording medium, wherein the computer program according to claim 9 is recorded and readable. 請求項7または8に記載の配合計画の作成方法によって作成された配合計画に基づいて、配合操業を行うことを特徴とする配合操業方法。 A blending operation method comprising performing blending operation based on the blending plan created by the blending plan creating method according to claim 7 or 8. 制約条件を満たした上で目的関数が最適となる原材料の配合割合を計画する配合計画の作成装置であって、
前記配合計画は、非線形項を一つ以上含む非線形計画問題で表されるものであり、
配合計画の作成に必要な入力データを取り込む入力データの取り込み部と、
該入力データの取り込み部で取り込んだ入力データをもとに、前記非線形計画問題の最適解を得る非線形計画問題の求解部と、
前記最適解を計画結果として出力する計画の出力部とを具備し、
前記非線形計画問題の求解部では、
非線形項に含まれる一部の項または数式を新たな変数として定め、前記非線形計画問題の記述を変更し、前記新たな変数を一次元以上のベクトル変数として定義する変数のベクトル化処理と、
前記ベクトル変数の初期解を複数個作成するベクトル変数の初期解作成処理と、
前記新たな変数として定めた前記非線形項に含まれる一部の項または数式と前記複数の初期解から前記非線形計画問題を線形変数を用いた複数の線形計画問題として定式化する線形計画問題の定式化処理と、
該線形計画問題の定式化処理で定式化された複数の線形計画問題の解をそれぞれ求める線形計画問題の求解処理と、
該線形計画問題の求解処理で求められた、複数個の前記ベクトル変数の解それぞれに対する目的関数を評価し、前記ベクトル変数の解を改変する、ベクトル変数の解改変処理と、を行い、
該ベクトル変数の解改変処理で改変されたそれぞれの前記ベクトル変数の解を用いて、前記線形計画問題の定式化処理、前記線形計画問題の求解処理、および前記ベクトル変数の解改変処理を繰り返して、前記非線形計画問題を求解し、
前記繰り返しの途中で、ベクトル変数の解改変処理の後に、
適宜に、ベクトル変数の解を複数のグループに分け、各グループ内でその後の計算に用いるベクトル変数の解を取捨選択する、計算高速化のためのベクトル変数の解の取捨選択処理を行ってから、前記線形計画問題の定式化処理を行うことで前記非線形計画問題の求解を高速化することを特徴とする配合計画の作成装置。
A blending plan creation device that plans blending ratios of raw materials for which an objective function is optimal after satisfying constraint conditions.
The combination plan is represented by a nonlinear programming problem including one or more nonlinear terms,
Input data capture unit that captures input data required to create a formulation plan,
A solving unit for a non-linear programming problem for obtaining an optimal solution of the non-linear programming problem based on the input data taken in by the taking-in unit of the input data;
And an output unit of a plan that outputs the optimal solution as a plan result,
In the solution part of the nonlinear programming problem,
Vectorization processing of a variable which defines a part of a term or formula contained in a nonlinear term as a new variable, changes the description of the nonlinear programming problem, and defines the new variable as a vector variable of one or more dimensions;
Initial solution creation processing of the vector variable for creating a plurality of initial solutions of the vector variable;
Formulation of a linear programming problem that formulates the nonlinear programming problem as a plurality of linear programming problems using linear variables from some terms or formulas included in the nonlinear term determined as the new variable and the plurality of initial solutions Processing,
A solution process of a linear programming problem to obtain solutions of a plurality of linear programming problems formulated by the formulation process of the linear programming problem;
Performing a solution modification process of the vector variable, evaluating an objective function for each solution of a plurality of the vector variables determined by the solution process of the linear programming problem, and modifying the solution of the vector variable;
The formulation process of the linear programming problem, the solution process of the linear programming problem, and the solution modification process of the vector variable are repeated using the solution of each of the vector variables modified by the solution modification process of the vector variable. Solve the non-linear programming problem,
In the middle of the repetition, after the solution modification process of the vector variable,
The solutions of vector variables are divided into a plurality of groups as appropriate, and the solutions of vector variables used in subsequent calculations are selected within each group, and the solution of vector variables is sorted out for speeding up calculation. An apparatus for creating a combination plan characterized by speeding up solution of the non-linear programming problem by performing formulation processing of the linear programming problem.
請求項12に記載の配合計画の作成装置において、
前記ベクトル変数の解改変処理は、前記目的関数の最小化または最大化を志向しつつ実行可能な前記ベクトル変数を探索することを特徴とする配合計画の作成装置。
In the preparation apparatus of the combination plan according to claim 12,
The solution modification processing of the vector variable is searching for the vector variable that can be executed while aiming at the minimization or maximization of the objective function.
JP2017209020A 2017-10-30 2017-10-30 How to solve nonlinear programming problems, how to create compounding plans, and how to use these computer programs, recording media, devices, and compounding operations. Active JP6806034B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017209020A JP6806034B2 (en) 2017-10-30 2017-10-30 How to solve nonlinear programming problems, how to create compounding plans, and how to use these computer programs, recording media, devices, and compounding operations.

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017209020A JP6806034B2 (en) 2017-10-30 2017-10-30 How to solve nonlinear programming problems, how to create compounding plans, and how to use these computer programs, recording media, devices, and compounding operations.

Publications (2)

Publication Number Publication Date
JP2019082786A true JP2019082786A (en) 2019-05-30
JP6806034B2 JP6806034B2 (en) 2020-12-23

Family

ID=66671128

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017209020A Active JP6806034B2 (en) 2017-10-30 2017-10-30 How to solve nonlinear programming problems, how to create compounding plans, and how to use these computer programs, recording media, devices, and compounding operations.

Country Status (1)

Country Link
JP (1) JP6806034B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111798023A (en) * 2020-05-11 2020-10-20 宁波大学 Method for predicting comprehensive coke ratio in steelmaking sintering production
JP2022111652A (en) * 2021-01-20 2022-08-01 Jfeスチール株式会社 Plan creation device and plan creation method

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009175804A (en) * 2008-01-21 2009-08-06 Nippon Steel Corp Composition plan making-out device, method, and program

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009175804A (en) * 2008-01-21 2009-08-06 Nippon Steel Corp Composition plan making-out device, method, and program

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111798023A (en) * 2020-05-11 2020-10-20 宁波大学 Method for predicting comprehensive coke ratio in steelmaking sintering production
CN111798023B (en) * 2020-05-11 2023-08-29 宁波大学 Comprehensive coke ratio prediction method in steelmaking sintering production
JP2022111652A (en) * 2021-01-20 2022-08-01 Jfeスチール株式会社 Plan creation device and plan creation method
JP7444086B2 (en) 2021-01-20 2024-03-06 Jfeスチール株式会社 Planning device and planning method

Also Published As

Publication number Publication date
JP6806034B2 (en) 2020-12-23

Similar Documents

Publication Publication Date Title
JP6547811B2 (en) Method of solving nonlinear programming problem, method of creating formulation plan, and computer program, recording medium, apparatus, and formulation operation method of these
Qiu et al. A Tabu Search algorithm for the vehicle routing problem with discrete split deliveries and pickups
Chugh et al. A data-driven surrogate-assisted evolutionary algorithm applied to a many-objective blast furnace optimization problem
CN112699613B (en) Multi-target integrated burdening optimization method, system, equipment and medium for iron making
JP2019082786A (en) Solution method for nonlinear programming problem, generation method for composition plan, and computer program, recording medium, apparatus, and composition operation method therefor
WO2010058584A1 (en) System, method and program for making composition plan and allocation of ships
CN107203590A (en) Method is recommended based on the personalized film for improving NSGA II
Li et al. A hybrid adaptive large neighborhood search algorithm for the large-scale heterogeneous container loading problem
CN115565618A (en) Multi-objective optimization method for blast furnace burden, terminal equipment and storage medium
JP7173346B2 (en) Mixing plan creation method, mixing plan creation device, and method of operating ironworks
JP3981560B2 (en) Production / distribution plan creation method, production / distribution plan creation apparatus, distribution control method and distribution control apparatus, computer-readable storage medium, and computer program
JP4351724B2 (en) COMPOSITION PLAN CREATION DEVICE, COMPOSITION PLAN CREATION METHOD, PROGRAM, AND COMPUTER-READABLE RECORDING MEDIUM
JP6361445B2 (en) Raw material purchasing and use plan creation device, method and program
Liu et al. Research on logistics time management decision based on supply chain
JP2018012559A (en) Yard management apparatus, yard management method, and program
Chen et al. ALDS: An active learning method for multi-source materials data screening and materials design
Yang et al. Optimal charge planning model of steelmaking based on multi-objective evolutionary algorithm
JP7010258B2 (en) Raw material compounding plan creation method, coke manufacturing method, mixed integer programming problem solving method, and raw material compounding plan creation device
Song et al. Modeling and scheduling optimization for bulk ore blending process
JP6736258B2 (en) Planning device, method and program
Liu et al. Magnetic material group furnace problem modeling and the specialization of the genetic algorithm
JP6540360B2 (en) Material separation planning device for steel products, method for making steel distribution separation plans, and program
JP5598498B2 (en) Raw material purchasing and use plan creation device, method and program
JP7444086B2 (en) Planning device and planning method
Ferrantino et al. Classification and statistical reconciliation of trade in advanced technology products: the case of China and the United States

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20180502

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20180509

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20190327

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190524

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200327

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200407

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200520

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: 20201104

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201117

R150 Certificate of patent or registration of utility model

Ref document number: 6806034

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250