JP7526155B2 - Optimization problem solving device and optimization problem solving method - Google Patents
Optimization problem solving device and optimization problem solving method Download PDFInfo
- Publication number
- JP7526155B2 JP7526155B2 JP2021167709A JP2021167709A JP7526155B2 JP 7526155 B2 JP7526155 B2 JP 7526155B2 JP 2021167709 A JP2021167709 A JP 2021167709A JP 2021167709 A JP2021167709 A JP 2021167709A JP 7526155 B2 JP7526155 B2 JP 7526155B2
- Authority
- JP
- Japan
- Prior art keywords
- optimization problem
- evaluation function
- candidate
- pattern
- unit
- 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.)
- Active
Links
Images
Landscapes
- General Factory Administration (AREA)
- Complex Calculations (AREA)
Description
本開示は、最適化問題求解装置及び最適化問題求解方法に関する。本開示は、特に、鉄鋼業における素材設計問題などの集合充填問題に用いられる最適化問題求解装置及び最適化問題求解方法に関する。 This disclosure relates to an optimization problem solving device and an optimization problem solving method. In particular, this disclosure relates to an optimization problem solving device and an optimization problem solving method used for set packing problems such as material design problems in the steel industry.
組み合わせ最適化問題は、様々な産業分野に存在する。例えば、製鉄所において複数の鋼片(スラブ、大板)に1つ以上の注文(オーダー)を引き当てる際に、最適化問題の解法が適用されて、好適な板取方法を提供し得る。 Combinatorial optimization problems exist in various industrial fields. For example, when allocating one or more orders for multiple steel pieces (slabs, large plates) in a steel mill, a method for solving the optimization problem can be applied to provide a suitable plate selection method.
特許文献1は、分枝限定法で大板パターンを作成し、0-1計画問題で大板を選択する手法を開示する。また、特許文献2は、集合分割問題のイジングモデルによる厳密な定式化による手法を開示する。また、特許文献3は、双対問題の解を求め、双対問題の解を含み2値変数により表される列生成子問題を作成し、量子計算機が列生成子問題を求解する手法を開示する。また、特許文献4は、列挙された組み合わせの中から0-1計画法を用いて、注文枚数の制約の下で、目的の評価関数を最大とする鋼片を選択する手法を開示する。
ここで、複数の鋼片に1つ以上のオーダーを引き当てる問題において、オーダーが多数ある場合に、0-1計画問題ではなく整数計画問題となる。このような場合に、特許文献1の手法をそのまま適用することは難しい。
Here, when the problem of allocating one or more orders to multiple steel pieces involves a large number of orders, it becomes an integer programming problem rather than a 0-1 programming problem. In such cases, it is difficult to apply the method of
また、複数の鋼片に1つ以上のオーダーを引き当てる問題では、複数のオーダーが別々の大板パターンに含まれてよいため、集合充填問題となる。特許文献2の手法は厳密な定式化を行っているため、直接的な適用が難しい。また、特許文献3の手法は等式制約のみを用いるため、直接的な適用が難しい。
In addition, in the problem of assigning one or more orders to multiple steel pieces, multiple orders may be included in different large plate patterns, which results in a set-packing problem. The method in
特許文献4の手法は、制約条件にペナルティ項を掛けて目的関数に含めるため適用可能ではあるが、収束性が十分でない。
The method in
一般に、組み合わせ最適化問題は、決定する要素の数が多くなると、組み合わせ爆発により最適解の導出が困難になる。上記のように、鉄鋼業において様々な厚鋼板のオーダーに対応してスラブなどの中間製品を製造する問題に適用する場合にも同様の困難さが生じる。近年、MIP(mixed-integer programming problem)、GA(genetic algorithm)、SA(simulated annealing)、PSO(particle swarm optimization)など、様々な近似的アプローチが提案されている。また、組み合わせ最適化問題を部分問題に分けて個々の探索の高速化を図り、全体として高速化する方法が提案されている。しかし、これらの方法及び計算機の計算速度の向上があっても、大規模な問題になると、最適解を現実的な時間で得ることは難しい。 In general, when the number of factors to be determined increases in a combinatorial optimization problem, it becomes difficult to derive an optimal solution due to combinatorial explosion. As mentioned above, similar difficulties arise when applied to the problem of manufacturing intermediate products such as slabs in response to various orders for thick steel plates in the steel industry. In recent years, various approximation approaches have been proposed, such as mixed-integer programming problem (MIP), genetic algorithm (GA), simulated annealing (SA), and particle swarm optimization (PSO). In addition, a method has been proposed in which a combinatorial optimization problem is divided into subproblems to speed up individual searches and speed up the overall problem. However, even with these methods and improvements in computer calculation speed, it is difficult to obtain an optimal solution in a realistic amount of time when the problem is large-scale.
近年、量子コンピュータの商用利用が開始され、ネットワークを経由したクラウドサービスにより、比較的手軽に活用できる環境が整いつつある。そのため、量子コンピュータの利用にも適する、大規模な最適化問題の求解方法が求められている。 In recent years, quantum computers have begun to be used commercially, and an environment is being created in which they can be used relatively easily through cloud services over networks. As a result, there is a demand for methods of solving large-scale optimization problems that are also suitable for use with quantum computers.
かかる事情に鑑みてなされた本開示の目的は、効率的に組み合わせ最適化問題を解くことが可能であって、量子コンピュータの利用にも適する最適化問題求解装置及び最適化問題求解方法を提供することにある。 In light of these circumstances, the purpose of this disclosure is to provide an optimization problem solving device and method that can efficiently solve combinatorial optimization problems and are also suitable for use with quantum computers.
本開示の一実施形態に係る最適化問題求解装置は、
複数の製品の組み合わせを1つの製造単位として、1つ以上の前記製造単位について最適化する組み合わせ最適化問題を解く最適化問題求解装置であって、
前記組み合わせとなり得る候補パターンを列挙し、列挙した前記候補パターンのそれぞれについて評価値を定めるモデル構築部と、
前記組み合わせの制約条件が満たされ、かつ、評価関数の値が最大又は最小となるように前記候補パターンを選択し、選択済みパターンに追加する演算部と、
前記評価関数が基準を満たす場合に、前記選択済みパターンを提示する結果提示部と、を備え、
前記評価関数は、前記選択済みパターンに含まれる前記候補パターンの前記評価値の合算を含んで構成され、
前記選択済みパターンは、同じ前記候補パターンを複数含むことができる。
An optimization problem solving device according to an embodiment of the present disclosure includes:
An optimization problem solving device that solves a combinatorial optimization problem in which a combination of a plurality of products is treated as one manufacturing unit and optimization is performed for one or more of the manufacturing units, the device comprising:
a model construction unit that lists candidate patterns that can be the combination and determines an evaluation value for each of the listed candidate patterns;
a calculation unit that selects the candidate pattern such that the constraint condition of the combination is satisfied and the value of the evaluation function is maximized or minimized, and adds the candidate pattern to a selected pattern;
a result presenting unit that presents the selected pattern when the evaluation function satisfies a criterion;
the evaluation function is configured by adding up the evaluation values of the candidate patterns included in the selected pattern,
The selected pattern may include multiple instances of the same candidate pattern.
本開示の一実施形態に係る最適化問題求解方法は、
複数の製品の組み合わせを1つの製造単位として、1つ以上の前記製造単位について最適化する組み合わせ最適化問題を解く最適化問題求解方法であって、
前記組み合わせとなり得る候補パターンを列挙し、列挙した前記候補パターンのそれぞれについて評価値を定めることと、
前記組み合わせの制約条件が満たされ、かつ、評価関数の値が最大又は最小となるように前記候補パターンを選択し、選択済みパターンに追加することと、
前記評価関数が基準を満たす場合に、前記選択済みパターンを提示することと、を含み、
前記評価関数は、前記選択済みパターンに含まれる前記候補パターンの前記評価値の合算を含んで構成され、
前記選択済みパターンは、同じ前記候補パターンを複数含むことができる。
A method for solving an optimization problem according to an embodiment of the present disclosure includes:
A method for solving an optimization problem, which solves a combinatorial optimization problem in which a combination of a plurality of products is treated as one manufacturing unit and optimization is performed for one or more of the manufacturing units, comprising the steps of:
listing candidate patterns that may be the combination, and determining an evaluation value for each of the listed candidate patterns;
selecting the candidate pattern such that the constraint condition of the combination is satisfied and the value of the evaluation function is maximized or minimized, and adding the candidate pattern to the selected patterns;
presenting the selected pattern if the evaluation function satisfies a criterion;
the evaluation function is configured by adding up the evaluation values of the candidate patterns included in the selected pattern,
The selected pattern may include multiple instances of the same candidate pattern.
本開示によれば、効率的に組み合わせ最適化問題を解くことが可能であって、量子コンピュータの利用にも適する最適化問題求解装置及び最適化問題求解方法を提供することができる。 The present disclosure provides an optimization problem solving device and method that can efficiently solve combinatorial optimization problems and are suitable for use with quantum computers.
以下、図面を参照して本開示の一実施形態に係る最適化問題求解装置及び最適化問題求解方法が説明される。 Below, an optimization problem solving device and an optimization problem solving method according to an embodiment of the present disclosure will be described with reference to the drawings.
図1は、本実施形態に係る最適化問題求解装置10の構成例を示す図である。最適化問題求解装置10は、複数の製品の組み合わせを1つの製造単位として、1つ以上の製造単位について最適化する組み合わせ最適化問題を解く装置である。最適化問題求解装置10は、上位計算機であるビジネスコンピュータと接続されて、後述するオーダーデータ121及び制約条件データ122として記憶される各種データをビジネスコンピュータから取得してよい。
Fig. 1 is a diagram showing an example of the configuration of an optimization
最適化問題求解装置10は、入出力制御部11と、記憶部12と、生産計画部13と、を備える。生産計画部13は、解探索部14と、結果提示部15と、を備える。解探索部14は、モデル構築部141と、演算部142と、条件判定部143と、パラメータ更新部144と、を備える。最適化問題求解装置10は、ハードウェア構成として、例えばコンピュータであってよい。コンピュータは、例えばメモリ及びハードディスクドライブなどの記憶装置、CPUなどの処理装置、ディスプレイなどの表示装置を備える。記憶部12は、例えば記憶装置で実現されてよい。入出力制御部11及び解探索部14は例えば処理装置で実現されてよい。結果提示部15は、例えば表示装置で実現されてよい。また、コンピュータは、ユーザからの入力を受け付けるキーボード及びマウスなどの入力装置を備えてよい。
The optimization
入出力制御部11は、最適化問題求解装置10のデータなどの入出力を制御する。入出力制御部11は、例えばユーザからの演算の実行指令、ビジネスコンピュータからの各種データを取得して、生産計画部13又は記憶部12に出力してよい。
The input/
記憶部12は、生産計画部13が実行する各種の演算で使用されるデータ、演算結果及び中間データなどを記憶する。記憶部12は、例えば最適化問題求解装置10に内蔵されるが、任意のインターフェースを介して最適化問題求解装置10に外部からアクセスされる構成も可能である。
The
本実施形態において、記憶部12はオーダーデータ121及び制約条件データ122を含む。上記のように、最適化問題求解装置10は、複数の製品の組み合わせを1つの製造単位として、1つ以上の製造単位について最適化する組み合わせ最適化問題を解く。オーダーデータ121は、この最適化問題における、複数の製品のそれぞれのサイズ、数量及び納期などの情報である。サイズは、厚み、幅、長さなどを含んでよい。また、オーダーデータ121は、さらに成分、要求機械特性といった製品の仕様を含んでよい。制約条件データ122は、製造単位を設定して製造する場合における制約条件である。制約条件は、例えば「製品aが3つ、製品bが1つ、製品cが2つ」など、所定期間までに製造されるべき複数の製品の数量に関する条件を含んでよい。
In this embodiment, the
生産計画部13は、入出力制御部11及び記憶部12のデータを用いて、最適化問題の解を演算する。図1に示される矢印は、最適化問題求解装置10が実行する最適化問題求解方法に対応する処理を簡易的に示す。以下、この処理順に沿って生産計画部13の構成要素が説明される。
The
モデル構築部141は、複数の製品の組み合わせである候補パターンを列挙し、列挙した候補パターンのそれぞれについて評価値を定める。多数のオーダーがある場合に、複数の製品の組み合わせには多くのパターンがある。候補パターンは、1つの製造単位として採用され得る組み合わせのパターンである。評価値は、その候補パターンにおける複数の製品の組み合わせの製造に対する好ましさ(又は不適切さ)を数値で示すものである。評価値は、例えば生産に要する時間、歩留り及び加工のし易さなどに基づいて算出されてよい。列挙される候補パターン及び評価値の具体例については後述する。
The
演算部142は、組み合わせの制約条件が満たされるように、かつ、評価関数の値が最大又は最小となるように、候補パターンを選択して、選択済みパターンに追加する。制約条件は、上記の制約条件データ122に記憶されている製造上の条件が用いられてよい。演算部142は、列挙された候補パターンの中から適切な候補パターンを選択して、選択済みパターンに追加する。選択済みパターンは、適切な候補パターンの集合に対応する。評価関数は、適切な候補パターンを選択するために用いられる関数であって、選択済みパターンに含まれる候補パターンの評価値の合算を含んで構成される。評価関数の具体例などについては後述する。
The
ここで、演算部142が生成する選択済みパターンは、同じ候補パターンを複数含むことができる。そのため、候補パターンの選択又は非選択を0と1の2値変数で表す場合であっても、同じ候補パターンを複数含むことが許容されることによって、整数を扱う(整数個の選択をする)ことが可能になる。換言すると、量子コンピュータ16(図8参照)での演算に適するようにパラメータが0と1の2値変数で構成される場合でも、整数計画問題についての解を得ることができる。
The selected patterns generated by the
条件判定部143は、評価関数が基準を満たすか否かについて判定する。例えば評価関数が制約条件に関するペナルティ項を含む最小化問題の場合に、条件判定部143は、評価関数の値が基準値以下であって評価関数の変化幅が所定値以下の場合、繰り返し計算の計算回数又は計算時間の上限を定めて上限に達した場合に、基準が満たされたと判定してよい。すなわち、演算結果が準最適解であっても構わない。最大化問題の場合には、評価関数値が基準値以上となるが、考え方については最小化問題と同様である。また、基準値が無い場合も許容される。条件判定部143の判定結果によって処理が分岐する。評価関数が基準を満たす場合に、演算部142から選択済みパターンが解として結果提示部15に出力される。また、評価関数が基準を満たさない場合に、パラメータ更新部144の処理が実行される。
The
パラメータ更新部144は、評価関数が含むパラメータを更新する。例えば評価関数がラグランジュ乗数を含む場合に、パラメータ更新部144はラグランジュ乗数を更新する。ここで、評価関数がパラメータの更新をしない構成である場合に、パラメータ更新部144は省略されてよい。
The
条件判定部143によって評価関数が基準を満たさないと判定される場合に、モデル構築部141による処理が再び実行される。モデル構築部141は、列挙する候補パターンを追加する。後述するように、候補パターンは単純に追加されてよいし(図5の第1の方法参照)、直前に追加した候補パターンのうち演算部142によって選択されなかった候補パターンを削除してから追加されてよい(図5の第2の方法参照)。
When the
結果提示部15は、解探索部14の演算結果(解)をユーザに提示する。ユーザは、結果提示部15によって示された解を生産計画に反映することによって、生産効率及び歩留りを向上させることができる。
The
ここで、図8に示すように、演算部142は、インターネットなどのネットワークを介して接続される量子コンピュータ16で実現されてよい。演算部142として量子コンピュータ16を用いることによって、演算の高速化を図ることができる。ここで、図8に示される構成の最適化問題求解装置10は、最適化問題求解システムと称されてよい。また、図1又は図8の最適化問題求解装置10は、ビジネスコンピュータとともに最適化問題求解システムを構成してよい。
Here, as shown in FIG. 8, the
以下において、最適化問題求解装置10及び最適化問題求解方法は、鉄鋼業において複数の鋼片(スラブ、大板)に1つ以上の注文(オーダー)を引き当てる厚板素材設計問題に用いられるとして、より詳細に説明される。ここで、オーダーの用語は、顧客によってサイズ、数量及び納期などが指定された鋼板製品を指すものとしても用いられる。
The optimization
素材設計問題は、複数のオーダーであるオーダー群(鋼種板厚ロット)を、製造上の制約条件を充足し、生産効率がよいように大板への割り当てを決定する問題である。図2に示すように、オーダー群は例えば納期に基づいて決定される。オーダー群が含むいくつかのオーダーをまとめて大板としながら、切り捨てロス及び組残りが少なくなるように割り当てを決定する。 The material design problem is to determine the allocation of multiple order groups (steel grades, plate thicknesses, lots) to large plates in a way that satisfies manufacturing constraints and is production efficient. As shown in Figure 2, order groups are determined, for example, based on delivery dates. The allocation is determined so that cutting losses and leftovers are reduced while combining several orders contained in an order group into large plates.
このような問題は数理最適化の分野でよく知られており、オーダー群をまとめて素材を作る場合には集合充填問題、製造済みの在庫から製品を切り出す場合にはカッティングストック問題に分類される。上記の問題はNP困難というクラスに属し、オーダー数が多くなるにつれて必要な計算時間が指数関数的に増大するため、現実的な時間で解けない場合がある。 Such problems are well known in the field of mathematical optimization, and are classified as set packing problems, in which a group of orders is compiled to create materials, and cutting stock problems, in which products are cut from manufactured stock. The above problems belong to the class of NP-hard problems, and the required calculation time increases exponentially as the number of orders increases, so they may not be solvable in a realistic amount of time.
素材設計問題に対して、問題を多段階に分割して効率化するなどの工夫がなされてきた。例えば図3に示すように、オーダー群に対し、制約条件を加味して組み合わせ可能なパターン(候補パターン)をあらかじめ列挙し、候補パターンの中からオーダー群をなるべく多く含み、生産効率及び切り捨てロスという観点から最適なパターン群を選択する、という2段階の構成が提案されている(特許文献1)。本実施形態に係る最適化問題求解装置10においても、図3における「パターン列挙」までの処理について、すなわち選択前に候補パターンを列挙する処理までについて、特許文献1に記載の手法を用いることができる。本実施形態に係る最適化問題求解装置10は、候補パターンを列挙する処理の後で、以下に説明するように、例えば量子コンピュータ16を活用した高速な演算にも適するパターン選択の処理を実行する。
For material design problems, various efforts have been made to improve efficiency by dividing the problem into multiple stages. For example, as shown in FIG. 3, a two-stage configuration has been proposed in which possible patterns (candidate patterns) that can be combined with order groups while taking into account constraints are enumerated in advance, and an optimal pattern group that includes as many order groups as possible and is optimal in terms of production efficiency and truncation loss is selected from the candidate patterns (Patent Document 1). The optimization
図4は、厚板素材設計問題における大板パターンの選択を説明するための図である。第1データの縦軸はオーダー(添え字i=1~N)を示す。また、横軸は大板パターン(添え字j=1~M)を示す。M個の大板パターンは、モデル構築部141によって列挙される候補パターンに対応する。候補パターンの列挙とは、具体的な処理として、モデル構築部141が第1データを生成して記憶部12に格納することを指す。また、上記のように列挙する候補パターンは追加されるため、第1データに示されるMは変動する。
Figure 4 is a diagram for explaining the selection of a large plate pattern in a thick plate material design problem. The vertical axis of the first data indicates the order (subscript i = 1 to N). The horizontal axis indicates the large plate pattern (subscript j = 1 to M). The M large plate patterns correspond to the candidate patterns enumerated by the
第1データのオーダーと大板パターンとの交点における数値は、その大板パターンに含まれる枚数(Pij)を示す。また、各大板の生産に要する時間及び歩留りを加味した評価値であるスコア(cj)が設定されている。本実施形態において、スコアは高いほど良い。 The numerical value at the intersection between the order of the first data and the large board pattern indicates the number of sheets (P ij ) included in the large board pattern. Also, a score (c j ) is set, which is an evaluation value taking into account the time and yield required for the production of each large board. In this embodiment, the higher the score, the better.
第2データは、各オーダーの受注枚数(di)及び組残りの罰則(bi)を定める。モデル構築部141は、オーダーデータ121及び制約条件データ122に基づいて第2データを生成してよい。本実施形態において、制約条件は、各オーダ(#1~#N)の大板パターン群への組み込み総数が受注枚数を超えないことである。また、最小化問題としての評価関数は「選択した大板パターンのスコアの合計」と「オーダーの受注枚数を充足できなかった場合の不足罰則の合計」に対応する項を含む。
The second data defines the number of orders (d i ) and the remaining penalty (b i ) for each order. The
列挙された候補パターンの中から適切な候補パターンを選択する場合において、演算部142が行う評価関数を最小化する処理は、下記の式(1)で示すことができる。
When selecting an appropriate candidate pattern from the enumerated candidate patterns, the process of minimizing the evaluation function performed by the
ここで、xjは大板パターンの選択数であって、仮に0以上の整数とする。また、yiは受注枚数(di)に対する不足数であり、式(2)で表される。cjは上記のようにスコアである。biは上記のように組残りの罰則である。Pijはパターン行列であって、列挙された候補パターンに対応する。第1項は「選択した大板パターンのスコアの合計」に対応する。第2項は「オーダーの受注枚数を充足できなかった場合の不足罰則の合計」に対応する。第3項は組み込み枚数がオーダー枚数を超えないという不等式制約に関するペナルティ項に相当し、受注枚数との差を二乗して係数をかけたものである。受注枚数に一致するときペナルティはゼロとなる。しかし、差を取って2乗しているため、受注枚数に対して超過も不足も同等という意味では、受注枚数を超えないという制約を厳密に表現できてはいない。ここで、本実施形態では評価関数の最小化が計算されるが、別の例として評価関数の最大化が計算されてよい。 Here, x j is the number of large board patterns selected, and is assumed to be an integer equal to or greater than 0. Also, y i is the number of shortages relative to the number of orders (d i ), and is expressed by formula (2). c j is the score as described above. b i is the penalty for remaining in the set as described above. P ij is a pattern matrix, and corresponds to the enumerated candidate patterns. The first term corresponds to the "total score of the selected large board patterns". The second term corresponds to the "total shortage penalty when the number of orders cannot be fulfilled". The third term corresponds to a penalty term related to the inequality constraint that the number of pieces to be incorporated does not exceed the number of pieces ordered, and is obtained by squaring the difference with the number of pieces ordered and multiplying it by a coefficient. When it matches the number of pieces ordered, the penalty is zero. However, since the difference is taken and squared, the constraint of not exceeding the number of pieces ordered is not strictly expressed in the sense that an excess or shortage is equivalent to the number of pieces ordered. Here, in this embodiment, the minimization of the evaluation function is calculated, but as another example, the maximization of the evaluation function may be calculated.
この定式化において、xjを0以上の整数としたが次のような検討事項がある。まず、xjは大板パターンの選択数であるため、0又は1のみで表現しようとすると変数を多用することになる。 In this formulation, xj is an integer equal to or greater than 0, but there are the following points to consider: First, since xj is the selection number of large board patterns, if it is expressed only as 0 or 1, a large number of variables will be used.
例えば0又は1の2値表現しかできない量子アニーリング(QUBO(Quadratic Unconstrained Binary Optimization)モデル)において、整数値を示すためにはいくつかの変数を合計して整数値を扱う必要がある。典型的な表現例としては、下記の式(3)のように2進数表現によりxjを表す。 For example, in quantum annealing (QUBO (Quadratic Unconstrained Binary Optimization) model), which can only express binary values of 0 or 1, it is necessary to handle integer values by summing several variables to represent integer values. As a typical example of expression, xj is expressed by binary expression as shown in the following formula (3).
ここで、式(3)のqi,kは0又は1である。ただし、変数の数がNであって、それぞれの整数を表すためにK個の変数がさらに必要である場合に、実効的な変数はNK個となる。そのためN変数の問題を解く場合に、実質的には、NK変数の規模の問題を解くことになってしまい、限られた量子ビットを浪費することにつながる。 Here, q i,k in formula (3) is 0 or 1. However, when the number of variables is N and K variables are further required to represent each integer, the effective number of variables is NK. Therefore, when solving a problem with N variables, it is essentially solving a problem of the scale of NK variables, which leads to a waste of limited quantum bits.
そこで、量子アニーリングで定式化しやすいようにxjを0又は1の2値変数とし、採用された大板パターン(選択された候補パターン)は有用性が高いと考え、行列Pを拡大して再度解く、という新たな手法によって2進数表現を用いることなく、解を演算することができるようにする。本実施形態に係る最適化問題求解装置10は、モデル構築部141が列挙する候補パターンを追加する処理を実行すること、及び、演算部142が生成する選択済みパターンが同じ候補パターンを複数含むことができること、によって、この新たな手法を実行することができる。
Therefore, in order to make it easier to formulate using quantum annealing, xj is set as a binary variable of 0 or 1, and the adopted large plate pattern (selected candidate pattern) is considered to be highly useful, so that a solution can be calculated without using binary representation by using a new method of expanding the matrix P and solving it again. The optimization
上記の新たな手法に対応するように修正した数式は下記の式(4)の通りである。xjは0又は1の2値変数であって、パターン行列が拡大することが当初の数式と異なる。他のパラメータについては式(1)及び式(2)と同じである。 The formula modified to correspond to the above new method is as shown in the following formula (4). x j is a binary variable of 0 or 1, and the difference from the original formula is that the pattern matrix is expanded. The other parameters are the same as formulas (1) and (2).
図5は、パターン行列の拡大について説明するための図である。パターン行列は上記のように列挙された候補パターンに対応する。パターン行列は、実線の横長の長方形で示されている。図5の第1の方法において、上段が1つ前(直前)のパターン行列に対応し、下段が現在のパターン行列に対応する。第1の方法では、直前においてもパターン行列への追加が行われて、直前の追加後のパターン行列に対してさらに現在の追加が行われる。ここで、破線は使われた(1であるxjに対応する)パターンを示す。使われたパターンは、演算部142によって列挙された候補パターンの中から選択された候補パターンに対応する。破線で示されるパターンの集合が、演算部142によって生成された選択済みパターンに対応する。
FIG. 5 is a diagram for explaining the expansion of a pattern matrix. The pattern matrix corresponds to the candidate patterns listed as above. The pattern matrix is shown as a horizontally long rectangle drawn with a solid line. In the first method of FIG. 5, the upper row corresponds to the previous (immediately preceding) pattern matrix, and the lower row corresponds to the current pattern matrix. In the first method, an addition is also made to the pattern matrix immediately before, and the current addition is further made to the pattern matrix after the immediately preceding addition. Here, the dashed lines indicate the patterns used (corresponding to x j , which is 1). The used patterns correspond to the candidate patterns selected from the candidate patterns listed by the
パターン行列の拡大は第2の方法で行われてよい。図5に示すように、第2の方法では、直前に追加されたパターンのうち、使われなかったパターンを削除した上で、現在の追加が行われる。第2の方法は、第1の方法と比べて、使用する変数を節約できる。 The pattern matrix may be expanded by a second method. As shown in FIG. 5, in the second method, unused patterns from the previously added patterns are deleted before the current addition is performed. The second method can save variables compared to the first method.
ここで、式(1)及び式(4)において、各オーダーの受注枚数(di)が完全には満たされない場合を適切に扱うこと、換言すると不等式制約を適切に扱うことが、収束性を高めるために必要である。本実施形態に係る最適化問題求解方法では、式(4)に別の変数を導入することによって、さらに収束性を高めることが可能である。 Here, in order to improve convergence, it is necessary to properly handle the case where the quantity of received orders (d i ) of each order is not completely satisfied in formulas (1) and (4), in other words, to properly handle inequality constraints. In the method for solving the optimization problem according to this embodiment, it is possible to further improve convergence by introducing another variable into formula (4).
例えば、不等式制約については、スラック変数ziを導入して等式制約に変換することが行われる。本実施形態に係る最適化問題求解方法において、スラック変数ziを導入した場合の数式は下記の式(5)の通りである。式(5)では、評価関数のペナルティ項がスラック変数ziを含む。スラック変数ziは、0からdiの値をとる決定変数で、不等式制約を等式制約に変換する役割を果たす。ここで、式(5)の他のパラメータについては式(1)及び式(2)と同じである。 For example, an inequality constraint is converted into an equality constraint by introducing a slack variable z i . In the optimization problem solving method according to the present embodiment, the formula when the slack variable z i is introduced is as shown in the following formula (5). In formula (5), the penalty term of the evaluation function includes the slack variable z i . The slack variable z i is a decision variable that takes a value from 0 to d i , and plays a role in converting the inequality constraint into an equality constraint. Here, the other parameters of formula (5) are the same as those of formulas (1) and (2).
ここで、スラック変数ziは、0からdiの各数値(通常の整数)であることから、0又は1の2値変数で扱うため、式(3)の形式で表される2進数表現が用いられる。したがって、スラック変数ziを導入する場合に、変数の数は増大するデメリットがあり得る。これに対して、例えば各オーダーの受注枚数(di)をある程度充足するという前提で、スラック変数ziがとる値の範囲を0からdi-Aにとどめることで、増大を抑えることができる。ここで、Aはdi未満の固定値である。一般に、オーダーの数(N)より大板パターンの数(M)が大きいため(図4参照)、変数の数が増大するとしても、2値変数のスラック変数ziを導入するメリットは大きい。 Here, the slack variable z i is each value from 0 to d i (normal integer), so it is treated as a binary variable of 0 or 1, and the binary representation expressed in the form of formula (3) is used. Therefore, when the slack variable z i is introduced, there may be a disadvantage that the number of variables increases. On the other hand, for example, on the premise that the number of orders (d i ) of each order is satisfied to a certain extent, the increase can be suppressed by limiting the range of values that the slack variable z i takes to 0 to d i -A. Here, A is a fixed value less than d i . In general, since the number of large board patterns (M) is larger than the number of orders (N) (see FIG. 4), the merit of introducing the binary slack variable z i is large even if the number of variables increases.
図6は、スラック変数ziを使用した定式化による結果を示す。図6の上図からわかるように、少ない計算ステップ数で制約充足解を導出できていることがわかる。また、図6の下図に示すように、オーダーの受注枚数(di、実線)と計画数(破線)との一致が多く、良好な結果を得ることができた。 Figure 6 shows the results of a formulation using slack variables z i . As can be seen from the upper diagram of Figure 6, a constraint satisfaction solution can be derived with a small number of calculation steps. Also, as shown in the lower diagram of Figure 6, there is a high degree of agreement between the order quantity (d i , solid line) and the planned quantity (dashed line), and good results were obtained.
また、別の手法として、スラック変数ziでなくラグランジュ乗数を導入した反復計算とすることができる。つまり、不等式制約条件を満たすように、ラグランジュ乗数を更新していく拡張ラグランジュ法が構成される。ラグランジュ乗数を導入した場合の数式は下記の式(6)の通りである。式(6)では、評価関数のペナルティ項(コスト関数)がラグランジュ乗数を含む。ラグランジュ乗数は、コスト関数が最小化されるように、パラメータ更新部144によって更新される。
As another method, iterative calculation can be performed by introducing a Lagrangian multiplier instead of the slack variable z i . That is, an extended Lagrangian method is configured in which the Lagrangian multiplier is updated so as to satisfy the inequality constraint condition. The mathematical expression when the Lagrangian multiplier is introduced is as shown in the following formula (6). In formula (6), the penalty term (cost function) of the evaluation function includes the Lagrangian multiplier. The Lagrangian multiplier is updated by the
ここで、νiはラグランジュ未定乗数である。他のパラメータについては式(1)及び式(2)と同じである。下記の式(7)を満たすような解が選ばれると、コスト関数が最小となる。 Here, v i is a Lagrange multiplier. The other parameters are the same as those in equations (1) and (2). When a solution that satisfies the following equation (7) is selected, the cost function is minimized.
ここで、制約条件は、各オーダーが受注枚数(di)を超えないことである。不等式制約が満たされる場合には、(di-ΣPijxj)≧0あるから(νi/λ)≦0である。ラグランジュ乗数は、不等式制約が満たされる場合に更新されず、不等式制約が満たされない場合に下記の式(8)に従って更新される(νiが大きくなる)。 Here, the constraint is that each order does not exceed the quantity received (d i ). When the inequality constraint is satisfied, (d i -ΣP ij x j ) ≥ 0, so (ν i /λ) ≤ 0. When the inequality constraint is satisfied, the Lagrange multiplier is not updated, and when the inequality constraint is not satisfied, it is updated according to the following formula (8) (ν i becomes large).
図7は、ラグランジュ乗数を使用した定式化による結果を示す。図7の上図に示すように、140を超えていた制約違反が十数ステップで0になり、制約充足解を得ることができた。また、図7の下図に示すように、オーダーの受注枚数(di、実線)を超える計画数(破線)はなく、良好な結果を得ることができた。 Figure 7 shows the results of a formulation using Lagrange multipliers. As shown in the upper diagram of Figure 7, the constraint violations, which had exceeded 140, dropped to 0 in a dozen or so steps, and a constraint satisfying solution was obtained. Also, as shown in the lower diagram of Figure 7, there was no planned number (dashed line) that exceeded the number of orders (d i , solid line), and good results were obtained.
ここで、上記のスラック変数ziを用いる方法及び拡張ラグランジュ法は、変数の数と計算ステップ数のトレードオフになるため、最適化問題の性質に合わせてどちらかを選択すればよい。 Here, since the method using the slack variable z i and the augmented Lagrangian method involve a trade-off between the number of variables and the number of calculation steps, one of them may be selected according to the nature of the optimization problem.
以上のように、本実施形態に係る最適化問題求解装置10及び最適化問題求解方法は、上記の構成及び工程によって、大板パターン選択問題を含む製造上の最適化問題を、不等式制約付き0-1計画として解くことができる。そのため、本実施形態に係る最適化問題求解装置10及び最適化問題求解方法は、効率的に組み合わせ最適化問題を解くことが可能であって、量子コンピュータ16の利用にも適する。また、本実施形態に係る最適化問題求解装置10及び最適化問題求解方法が生産計画問題の求解に適用されることによって、生産効率及び歩留りを向上させることができる。
As described above, the optimization
本開示の実施形態について、諸図面及び実施例に基づき説明してきたが、当業者であれば本開示に基づき種々の変形又は修正を行うことが容易であることに注意されたい。従って、これらの変形又は修正は本開示の範囲に含まれることに留意されたい。例えば、各構成部又は各ステップなどに含まれる機能などは論理的に矛盾しないように再配置可能であり、複数の構成部又はステップなどを1つに組み合わせたり、或いは分割したりすることが可能である。本開示に係る実施形態は装置が備えるプロセッサにより実行されるプログラム又はプログラムを記録した記憶媒体としても実現し得るものである。本開示の範囲にはこれらも包含されるものと理解されたい。 Although the embodiments of the present disclosure have been described based on the drawings and examples, it should be noted that those skilled in the art would easily be able to make various modifications or amendments based on the present disclosure. Therefore, it should be noted that these modifications or amendments are included in the scope of the present disclosure. For example, the functions included in each component or step can be rearranged so as not to cause logical inconsistencies, and multiple components or steps can be combined into one or divided. The embodiments of the present disclosure can also be realized as a program executed by a processor included in the device or a storage medium having a program recorded thereon. It should be understood that these are also included in the scope of the present disclosure.
上記の実施形態において、最適化問題求解装置10及び最適化問題求解方法は、厚鋼板の素材設計問題に適用されたが、これに限られるものではない。最適化問題求解装置10及び最適化問題求解方法は、複数の製品の組み合わせを1つの製造の単位とする様々な組み合わせ最適化問題に適用することができる。
In the above embodiment, the optimization
10 最適化問題求解装置
11 入出力制御部
12 記憶部
13 生産計画部
14 解探索部
15 結果提示部
16 量子コンピュータ
121 オーダーデータ
122 制約条件データ
141 モデル構築部
142 演算部
143 条件判定部
144 パラメータ更新部
REFERENCE SIGNS
Claims (5)
前記組み合わせとなり得る候補パターンを列挙し、列挙した前記候補パターンのそれぞれについて評価値を定めるモデル構築部と、
前記組み合わせの制約条件が満たされ、かつ、評価関数の値が最大又は最小となるように前記候補パターンを選択し、選択済みパターンに追加する演算部と、
前記評価関数が基準を満たす場合に、前記選択済みパターンを提示する結果提示部と、を備え、
前記評価関数は、前記選択済みパターンに含まれる前記候補パターンの前記評価値の合算を含んで構成され、
前記選択済みパターンは、同じ前記候補パターンを複数含むことができ、
前記モデル構築部は、前記評価関数が基準を満たさない場合に、列挙する前記候補パターンを追加する、最適化問題求解装置。 An optimization problem solving device that solves a combinatorial optimization problem for optimizing one or more manufacturing units, the manufacturing unit being a combination of a plurality of products, comprising:
a model construction unit that lists candidate patterns that can be the combination and determines an evaluation value for each of the listed candidate patterns;
a calculation unit that selects the candidate pattern such that the constraint condition of the combination is satisfied and the value of the evaluation function is maximized or minimized, and adds the candidate pattern to a selected pattern;
a result presenting unit that presents the selected pattern when the evaluation function satisfies a criterion;
the evaluation function is configured by adding up the evaluation values of the candidate patterns included in the selected pattern,
The selected pattern may include a plurality of the same candidate patterns;
The model construction unit adds the listed candidate patterns when the evaluation function does not satisfy a criterion.
前記ペナルティ項は、スラック変数を含む、請求項1又は2に記載の最適化問題求解装置。 the evaluation function includes a penalty term related to the constraint condition,
3. The apparatus for solving an optimization problem according to claim 1 , wherein the penalty term includes a slack variable.
前記組み合わせとなり得る候補パターンを列挙し、列挙した前記候補パターンのそれぞれについて評価値を定めることと、
前記組み合わせの制約条件が満たされ、かつ、評価関数の値が最大又は最小となるように前記候補パターンを選択し、選択済みパターンに追加することと、
前記評価関数が基準を満たす場合に、前記選択済みパターンを提示することと、
前記評価関数が基準を満たさない場合に、列挙する前記候補パターンを追加することと、を含み、
前記評価関数は、前記選択済みパターンに含まれる前記候補パターンの前記評価値の合算を含んで構成され、
前記選択済みパターンは、同じ前記候補パターンを複数含むことができる、最適化問題求解方法。 A method for solving an optimization problem, in which a combination of a plurality of products is treated as one manufacturing unit and a combinatorial optimization problem is solved by a computer to optimize one or more of the manufacturing units, comprising the steps of:
listing candidate patterns that may be the combination, and determining an evaluation value for each of the listed candidate patterns;
selecting the candidate pattern such that the constraint condition of the combination is satisfied and the value of the evaluation function is maximized or minimized, and adding the candidate pattern to the selected patterns;
presenting the selected pattern if the evaluation function satisfies a criterion ; and
adding the candidate patterns to the list when the evaluation function does not satisfy a criterion;
the evaluation function is configured by adding up the evaluation values of the candidate patterns included in the selected pattern,
The selected pattern may include a plurality of the same candidate patterns.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2021167709A JP7526155B2 (en) | 2021-10-12 | 2021-10-12 | Optimization problem solving device and optimization problem solving method |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2021167709A JP7526155B2 (en) | 2021-10-12 | 2021-10-12 | Optimization problem solving device and optimization problem solving method |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2023057945A JP2023057945A (en) | 2023-04-24 |
| JP7526155B2 true JP7526155B2 (en) | 2024-07-31 |
Family
ID=86054752
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2021167709A Active JP7526155B2 (en) | 2021-10-12 | 2021-10-12 | Optimization problem solving device and optimization problem solving method |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP7526155B2 (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN116629520B (en) * | 2023-04-27 | 2024-03-15 | 苏州大学 | Integrated control method for corrugated board double-cutter processing line |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2004276034A (en) | 2003-03-12 | 2004-10-07 | Jfe Steel Kk | Plate removal method |
| JP2011170408A (en) | 2010-02-16 | 2011-09-01 | Sumitomo Forestry Co Ltd | Member assignment system |
| JP2020181576A (en) | 2019-04-23 | 2020-11-05 | 日本製鉄株式会社 | Optimization support device, optimization support method, program, and optimization system |
| JP2020204928A (en) | 2019-06-18 | 2020-12-24 | 富士通株式会社 | Optimization device and optimization method |
-
2021
- 2021-10-12 JP JP2021167709A patent/JP7526155B2/en active Active
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2004276034A (en) | 2003-03-12 | 2004-10-07 | Jfe Steel Kk | Plate removal method |
| JP2011170408A (en) | 2010-02-16 | 2011-09-01 | Sumitomo Forestry Co Ltd | Member assignment system |
| JP2020181576A (en) | 2019-04-23 | 2020-11-05 | 日本製鉄株式会社 | Optimization support device, optimization support method, program, and optimization system |
| JP2020204928A (en) | 2019-06-18 | 2020-12-24 | 富士通株式会社 | Optimization device and optimization method |
Non-Patent Citations (1)
| Title |
|---|
| 小西 洋三 ほか,"大規模組合せ計画問題に対するパターン解法とその応用 -組合せ理論の生産への適用-",日立評論,日立評論社,1981年,第63巻, 第10号,pp. 57-62 |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2023057945A (en) | 2023-04-24 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| Zhang et al. | Improved evolutionary algorithm for parallel batch processing machine scheduling in additive manufacturing | |
| Wang et al. | An effective multi-objective whale swarm algorithm for energy-efficient scheduling of distributed welding flow shop | |
| US6044361A (en) | Fast inventory matching algorithm for the process industry | |
| US5563783A (en) | Method and system for securities pool allocation | |
| Zhang et al. | An improved hybrid particle swarm optimization for multi-objective flexible job-shop scheduling problem | |
| Chu et al. | A manufacturing resource allocation method with knowledge-based fuzzy comprehensive evaluation for aircraft structural parts | |
| EP1114385A1 (en) | Computer-implemented product development planning method | |
| Arredondo et al. | Learning and adaptation of a policy for dynamic order acceptance in make-to-order manufacturing | |
| JP2003256635A (en) | Support method for manufacture instruction quantity determination and program therefor | |
| JP2016189079A (en) | Plan creation support apparatus and plan creation support method | |
| Dao et al. | An improved genetic algorithm for multidimensional optimization of precedence-constrained production planning and scheduling | |
| Zhang et al. | Mathematical formulation and an improved moth–flame optimization algorithm for parallel two-sided disassembly line balancing based on fixed common stations | |
| KR101522478B1 (en) | Method, program, and device for grouping plurality of elements | |
| JP4388248B2 (en) | Optimal portfolio determination method and apparatus | |
| Salatiello et al. | Long-sighted dispatching rules for manufacturing scheduling problem in Industry 4.0 hybrid approach | |
| Choueiri et al. | Multi-product scheduling through process mining: bridging optimization and machine process intelligence | |
| JP7526155B2 (en) | Optimization problem solving device and optimization problem solving method | |
| Elkabalawy et al. | Optimized resource-constrained method for project schedule compression | |
| Huang et al. | DyS-MPADE: A novel multipopulation adaptive differential evolution methodology based on dynamic subpopulation | |
| Sadati-Keneti et al. | Stepping into Industry 4.0-based optimization model: a hybrid of the NSGA-III and MOAOA | |
| Huang et al. | Schedule-cost optimization in high-rise buildings considering uncertainty | |
| Rahmani | A new proactive-reactive approach to hedge against uncertain processing times and unexpected machine failures in the two-machine flow shop scheduling problems | |
| Gürel et al. | Rescheduling with controllable processing times for number of disrupted jobs and manufacturing cost objectives | |
| Feldman et al. | Model for cost estimation in a finite-capacity environment | |
| Mohammadi et al. | A genetic algorithm for simultaneous lotsizing and sequencing of the permutation flow shops with sequence-dependent setups |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230517 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20240430 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20240507 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240620 |
|
| 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: 20240709 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240719 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 7526155 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |