JP2009048353A - Combinatorial optimization system - Google Patents

Combinatorial optimization system Download PDF

Info

Publication number
JP2009048353A
JP2009048353A JP2007212694A JP2007212694A JP2009048353A JP 2009048353 A JP2009048353 A JP 2009048353A JP 2007212694 A JP2007212694 A JP 2007212694A JP 2007212694 A JP2007212694 A JP 2007212694A JP 2009048353 A JP2009048353 A JP 2009048353A
Authority
JP
Japan
Prior art keywords
list
optimization
storage means
solution
neighborhood
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.)
Pending
Application number
JP2007212694A
Other languages
Japanese (ja)
Inventor
Takanari Yamamoto
隆也 山本
Tomihiro Takano
富裕 高野
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2007212694A priority Critical patent/JP2009048353A/en
Publication of JP2009048353A publication Critical patent/JP2009048353A/en
Pending legal-status Critical Current

Links

Images

Landscapes

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

Abstract

<P>PROBLEM TO BE SOLVED: To provide a combinatorial optimization system that can solve a combinatorial optimization problem fast with a reduced probability of ending with a local solution. <P>SOLUTION: The combinatorial optimization system comprises: a second neighborhood search means 33 for defining a set of adjacent states whose discrete variable values are changed to a great extent from a current state as a second neighborhood, and executing the processing of a second neighborhood generation means 22, an optimum solution/best solution updating means 24, a taboo list updating means 25 and a second neighborhood search end determination means 26 to perform optimization by regarding the second neighborhood as the adjacent state; and a first neighborhood search means 34 for defining a set of adjacent states whose discrete variables are changed to a lesser extent from the current state as a first neighborhood, and executing the processing of a first neighborhood generation means 28, the optimum solution/best solution updating means 24, the taboo list updating means 25 and a first neighborhood search end determination means 29 to perform optimization by regarding the first neighborhood as the adjacent state. <P>COPYRIGHT: (C)2009,JPO&INPIT

Description

この発明は、複数の電源(発電機)の運転計画などに適用可能な、離散値を変数とする組み合わせ最適化問題を解くための組み合わせ最適化システムに関するものである。   The present invention relates to a combination optimization system for solving a combination optimization problem using discrete values as variables, which can be applied to an operation plan of a plurality of power supplies (generators).

一般に、多くの組み合わせ最適化問題は、厳密な最適解を求めることが極めて困難なことが知られている。実用的な計算時間で十分精度の高い解を求めるシステムとして、近年、局所探索法、タブー探索、シミュレーティッドアニーリングなどの、メタヒューリスティクスに関する研究が盛んに行われている。また、従来から、メタヒューリスティクスの枠組みとは無関係に、効率的に最適解を求める技術も提案されている。   In general, it is known that many combinatorial optimization problems are extremely difficult to obtain a strict optimal solution. In recent years, research on metaheuristics such as local search, tabu search, and simulated annealing has been actively conducted as a system for obtaining a sufficiently accurate solution in practical calculation time. Conventionally, a technique for efficiently obtaining an optimal solution has been proposed irrespective of the metaheuristic framework.

従来の組み合わせ最適化システムとして、高速化を実現するために、離散変数の一部またはすべてを連続変数として扱うことにより、解くべき組み合わせ最適化問題の規模を縮小して、高速化を実現する技術が提案されている(たとえば、特許文献1参照)。   A technology that reduces the scale of combinatorial optimization problems to be solved and achieves speedup by treating some or all of the discrete variables as continuous variables in order to achieve speedup as a conventional combinatorial optimization system Has been proposed (see, for example, Patent Document 1).

また、他の従来システムとして、局所最適解に陥る確率を小さくするために、制約条件を満たさない状態への遷移を認めるという技術も提案されている(たとえば、特許文献2参照)。
さらに、他の従来システムとして、高速化するとともに、局所最適解に陥る確率を小さくするために、対象を発電機の運転計画に限定して、或る特徴的な時刻の運転状態を固定して問題を解くという技術も提案されている(たとえば、特許文献3参照)。
In addition, as another conventional system, in order to reduce the probability of falling into a local optimum solution, a technique of allowing a transition to a state that does not satisfy the constraint condition has been proposed (for example, see Patent Document 2).
Furthermore, as another conventional system, in order to increase the speed and reduce the probability of falling into a local optimal solution, the target is limited to the generator operation plan and the operation state at a certain characteristic time is fixed. A technique for solving the problem has also been proposed (see, for example, Patent Document 3).

ここで、メタヒューリスティクスによる組み合わせ最適化問題の解法の一般的枠組みについて、イメージを示した図6の説明図を参照しながら説明する。
一般に、メタヒューリスティクスは、近傍探索を基本とした解法であり、現在の状態に対して、離散変数の一部の値を変更した複数の「隣接状態」(図6の左上部分を例にとると、1点鎖線枠内の白丸および黒丸)を生成し、現在の状態の評価関数値とこれら複数の隣接状態の評価関数値とを比較して、最も評価関数値が優れた点(隣接状態または現在の状態)を、次の現在の状態として更新する。以下、この処理を繰り返し実行することにより、最適解を求める。
Here, a general framework for solving the combinatorial optimization problem by metaheuristics will be described with reference to the explanatory diagram of FIG. 6 showing an image.
In general, metaheuristics is a solution based on neighborhood search, and a plurality of “adjacent states” (in the upper left part of FIG. 6 are taken as an example) in which some values of discrete variables are changed with respect to the current state. And white circles and black circles within a one-dot chain line frame, and compare the evaluation function value of the current state with the evaluation function values of these adjacent states, and the point with the best evaluation function value (adjacent state) Or the current state) is updated as the next current state. Hereinafter, the optimum solution is obtained by repeatedly executing this process.

ただし、上記のような組み合わせ最適化問題を解くための組み合わせ最適化システムでは、図6内の下段の特性曲線で示すように、一般に評価関数値の収束に時間がかかり、探索がなかなか進まない。すなわち、実用規模の問題では、最適解を得るまでに膨大な処理時間を要するという課題がある。
なお、探索領域を小さく設定すれば、計算時間の短縮を図ることも可能であるが、この場合、初期値に依存した局所解に陥ってしまうという課題が生じる。
However, in the combinatorial optimization system for solving the combinatorial optimization problem as described above, as shown by the lower characteristic curve in FIG. 6, it generally takes time to converge the evaluation function value, and the search does not easily proceed. That is, the problem on a practical scale has a problem that it takes enormous processing time to obtain an optimal solution.
Note that if the search area is set small, the calculation time can be shortened. However, in this case, there is a problem that a local solution that depends on the initial value falls.

たとえば、特許文献1では、第1の課題、すなわち最適解を得るまでに膨大な処理時間がかかるという課題を改善するために、離散変数の一部またはすべてを連続変数として扱うことにより、解くべき組み合わせ最適化問題の規模を縮小して、高速化を実現するシステムが提案されている。しかしながら、このシステムでは、対象とする問題によっては、制約条件の非線形性に起因して、離散変数を連続変数化することが可能とは限らず適用対象が限定されているので、そのような問題を対象とした場合には、依然として、第1の課題を解決することはできない。   For example, in Patent Document 1, in order to improve the first problem, that is, the problem that it takes an enormous amount of processing time to obtain an optimal solution, it should be solved by treating some or all of the discrete variables as continuous variables. A system that reduces the scale of the combinatorial optimization problem and realizes high speed has been proposed. However, in this system, depending on the problem to be addressed, it is not always possible to convert a discrete variable into a continuous variable due to the non-linearity of the constraint condition. However, the first problem cannot still be solved.

また、特許文献2では、第2の課題、すなわち局所解に陥る確率が高いという課題を改善するために、制約を満たさない状態への遷移を認めることにより、より広い領域を探索するシステムが提案されている。しかしながら、このシステムでは、対象とする問題によっては、制約を満たさない領域に遷移しにくく、有効に機能しないので、そのような問題を対象とした場合には、依然として、第2の課題を解決することはできない。   Patent Document 2 proposes a system that searches a wider area by allowing a transition to a state that does not satisfy the constraints in order to improve the second problem, that is, the problem that the probability of falling into a local solution is high. Has been. However, in this system, depending on the target problem, it is difficult to make a transition to a region that does not satisfy the constraints, and the system does not function effectively. Therefore, when such a problem is targeted, the second problem is still solved. It is not possible.

たとえば、具体例として、運転コストを最小化するために、複数台の発電機の起動停止計画問題があげられる。通常、発電機は、起動時にコストがかかるため、1日に何度も起動停止を繰り返すことはなく、起動停止は最大1日1回といった制約条件がある。
いま、組み合わせ最適化途中の或る時点の解が、或る発電機の運転時間が10:00〜17:00であるとする。
For example, as a specific example, in order to minimize the operation cost, there is a start / stop planning problem of a plurality of generators. Usually, since a generator is costly to start up, there is a restriction condition that the start and stop is not repeated many times a day, and the start and stop is once a day at the maximum.
Now, it is assumed that the solution at a certain point in the middle of the combination optimization is an operation time of a certain generator from 10:00 to 17:00.

制約条件を満たさない隣接状態は、たとえば、上記発電機を10:00〜12:00と、13:00〜17:00との2回に分割して運転する、という状態である。このような2回に分割した状態への遷移を仮に認めたとしても、起動にかかるコストを考えると、明らかに元の状態、すなわち10:00〜17:00に1回運転する状態の方が評価関数値は小さく、2回に分割した状態への遷移が発生することはない。   The adjacent state that does not satisfy the constraint condition is, for example, a state in which the generator is operated by being divided into two times of 10:00 to 12:00 and 13: 0 to 17:00. Even if the transition to the state divided into two times is admitted, the original state, that is, the state of driving once at 10: 00 to 17:00 is obviously better when considering the cost of starting. The evaluation function value is small, and the transition to the state divided into two times does not occur.

一方、特許文献3では、上記第1および第2の課題の両方を改善するために、対象を発電機の起動停止計画に限定し、特徴的な時刻の起動停止状態を固定して、この条件下で探索を行うというシステムが提案されている。しかしながら、このシステムでは、特徴的な時刻(たとえば、需要の極大値または極小値の発生時刻)の運転状態を固定することから、探索領域が限定されてしまうので、大域的な最適解を取得するのが困難である。   On the other hand, in Patent Document 3, in order to improve both the first and second problems, the target is limited to the start / stop plan of the generator, the start / stop state at a characteristic time is fixed, and this condition is satisfied. A system that searches below is proposed. However, in this system, since the operation state at a characteristic time (for example, the time when the maximum value or minimum value of demand occurs) is fixed, the search area is limited, so a global optimum solution is obtained. Is difficult.

また、特許文献3に記載のシステムでは、特徴的な時刻の運転状態を変更する技術も提案しているが、特徴的な時刻の運転状態を変更した場合、結局、元々の全領域の探索に近づけるのみであり、局所解に陥る確率を低くすることはできるものの、処理時間が増大するので、2つの問題を同時に解決することは困難である。
さらに、特許文献3の記載例で対象としている発電機数は、高々10台程度であり、最適化対象とする問題の規模が大きくないうえ、適用可能なのは、発電機の起動停止計画のみであり、実用的ではない。
The system described in Patent Document 3 also proposes a technique for changing the operating state at a characteristic time. However, if the operating state at a characteristic time is changed, the search for the original entire area is eventually performed. Although it can only reduce the probability of falling into a local solution, the processing time increases, so it is difficult to solve the two problems simultaneously.
Furthermore, the number of generators targeted in the example described in Patent Document 3 is about 10 at most, and the scale of the problem to be optimized is not large, and only applicable to start-up / stop plans for generators. Not practical.

特開2003−204624号公報JP 2003-204624 A 特開平5−143572号公報JP-A-5-143572 特開2001−258157号公報JP 2001-258157 A

従来の組み合わせ最適化システムは、特許文献1〜3に記載の手法によれば、対象とする問題によっては有効ではあるものの、依然として、実用規模の問題で膨大な処理時間を要するうえ、初期値に依存した局所最適解に陥る傾向が強いという課題があった。   According to the methods described in Patent Documents 1 to 3, the conventional combination optimization system is effective depending on the target problem, but still requires a large amount of processing time due to a problem on a practical scale, and is set to an initial value. There was a problem that there was a strong tendency to fall into a dependent local optimal solution.

この発明は、上記のような課題を解決するためになされたものであり、組み合わせ最適化問題を、局所解に陥る確率を小さくして、かつ高速に最適解を得ることのできる組み合わせ最適化システムを得ることを目的とする。   The present invention has been made to solve the above-described problems, and is a combinatorial optimization system capable of obtaining an optimal solution at high speed while reducing the probability that a combinatorial optimization problem will fall into a local solution. The purpose is to obtain.

この発明による組み合わせ最適化システムは、組み合わせ最適化問題を解くための組み合わせ最適化システムであって、最適化条件、全離散変数のリストと最小変動幅・上下限値とで定義される離散変数リスト、および、最適化の過程で変動幅を調整する離散変数のリストとこれら離散変数のリストの各初期変動幅とで定義される変動幅調整変数リスト、を記憶する記憶手段と、探索の初期では変動幅調整変数リストの変動幅を初期変動幅で変動させながら最適化を行う第2近傍探索手段と、第2近傍探索手段による第2近傍探索の終了後に、全離散変数の変動幅を最小変動幅で変動させながら最適化を行う第1近傍探索手段と、第2近傍探索と第1近傍探索手段による第1近傍探索とを実行する制御プログラムとを備えたものである。   The combinatorial optimization system according to the present invention is a combinatorial optimization system for solving a combinatorial optimization problem, and is a discrete variable list defined by optimization conditions, a list of all discrete variables, and a minimum fluctuation range and upper and lower limit values. And a storage means for storing a list of discrete variables for adjusting the variation range in the optimization process and a variation range adjustment variable list defined by each initial variation range of the list of discrete variables, and at the initial stage of the search The second neighborhood search means for performing optimization while changing the fluctuation range of the fluctuation range adjustment variable list with the initial fluctuation range, and after the second neighborhood search by the second neighborhood search means, the fluctuation range of all the discrete variables is minimized. A first neighborhood search unit that performs optimization while varying the width, and a control program that executes a second neighborhood search and a first neighborhood search by the first neighborhood search unit are provided.

この発明によれば、まず、最適解の存在が有望な集中探索領域を高速に特定するために、一部または全離散変数の変動幅を調整(大きく設定)して、第2近傍探索(大域的な探索)を行い、続いて、離散変数の変動幅を小さく設定して、第1近傍探索(有望な集中探索領域の集中探索)を行い、第2近傍探索および第1近傍探索を組み合わせて実行することにより、局所解に陥る確率を小さくするとともに、より大域的な解を高速に到達することができる。   According to the present invention, first, in order to quickly identify a concentrated search region in which the existence of an optimal solution is promising, the variation range of a part or all of the discrete variables is adjusted (largely set), and the second neighborhood search (global Search), and then, by setting the fluctuation range of the discrete variable to be small, the first neighborhood search (the intensive search of promising intensive search regions) is performed, and the second neighborhood search and the first neighborhood search are combined. By executing it, it is possible to reduce the probability of falling into a local solution and to reach a more global solution at high speed.

実施の形態1.
以下、具体的な最適化対象として、必要に応じて複数の電源の運転計画に適用する場合を例にとって、この発明の実施の形態1について説明する。
図1はこの発明の実施の形態1に係る組み合わせ最適化システムの全体構成を示すブロック図である。
Embodiment 1 FIG.
Hereinafter, as a specific optimization target, Embodiment 1 of the present invention will be described by taking as an example a case where it is applied to an operation plan for a plurality of power supplies as necessary.
FIG. 1 is a block diagram showing an overall configuration of a combinational optimization system according to Embodiment 1 of the present invention.

図1において、組み合わせ最適化システムは、コンピュータシステムからなり、中央処理装置40と、メインメモリ41と、ハードディスク44と、入力装置45と、出力装置46と、バス47とにより構成されている。メインメモリ41、ハードディスク44、入力装置45および出力装置46は、バス47を介して、中央処理装置40に接続されている。   In FIG. 1, the combination optimization system includes a computer system, and includes a central processing unit 40, a main memory 41, a hard disk 44, an input device 45, an output device 46, and a bus 47. The main memory 41, hard disk 44, input device 45 and output device 46 are connected to the central processing unit 40 via a bus 47.

メインメモリ41は、各種処理を実行する制御プログラム42と、最適化条件のデフォルト値43と、最適化条件記憶手段2と、変動幅調整変数リスト記憶手段7と、離散変数リスト記憶手段12と、最適解記憶手段18と、最良解記憶手段19と、タブーリスト記憶手段21と、隣接状態記憶手段23とを備えている。   The main memory 41 includes a control program 42 that executes various processes, a default value 43 of optimization conditions, an optimization condition storage unit 2, a fluctuation range adjustment variable list storage unit 7, a discrete variable list storage unit 12, The optimum solution storage means 18, the best solution storage means 19, the tabu list storage means 21, and the adjacent state storage means 23 are provided.

制御プログラム42は、最適化条件記録データ取得手段4と、最適化条件デフォルト値取得手段5と、変動幅調整変数リスト記録データ取得手段9と、変動幅調整変数リストデフォルト値取得手段10と、離散変数リスト記録データ取得手段14と、離散変数リストデフォルト値取得手段15と、初期解生成手段16と、評価関数値演算手段17と、タブーリスト初期化手段20と、第2近傍生成手段22と、最良解・最適解更新手段24と、タブーリスト更新手段25と、第2近傍探索終了判定手段26と、第1近傍探索初期解生成手段27と、第1近傍生成手段28と、第1近傍探索終了判定手段29と、最適化結果記録・出力処理手段30と、第2近傍探索手段33と、第1近傍探索手段34とを備えている。   The control program 42 includes an optimization condition record data acquisition means 4, an optimization condition default value acquisition means 5, a fluctuation range adjustment variable list record data acquisition means 9, a fluctuation range adjustment variable list default value acquisition means 10, a discrete Variable list recording data acquisition means 14, discrete variable list default value acquisition means 15, initial solution generation means 16, evaluation function value calculation means 17, taboo list initialization means 20, second neighborhood generation means 22, Best solution / optimum solution update unit 24, tabu list update unit 25, second neighborhood search end determination unit 26, first neighborhood search initial solution generation unit 27, first neighborhood generation unit 28, and first neighborhood search An end determination unit 29, an optimization result recording / output processing unit 30, a second neighborhood searching unit 33, and a first neighborhood searching unit 34 are provided.

ハードディスク44は、最適化条件記録手段3と、変動幅調整変数リスト記録手段8と、離散変数リスト記録手段13と、最適化結果記録手段32とを備えている。この場合、最適化結果記録手段32は、ハードディスク44により構成されている。
入力装置45は、キーボード(図示せず)などにより構成されており、最適化条件入力手段1と、変動幅調整変数リスト入力手段6と、離散変数リスト入力手段11とを備えている。出力装置46は、最適化結果出力手段31を備えており、最適化結果出力手段31は、ディスプレイまたはプリンタなど(図示せず)により構成されている。
The hard disk 44 includes optimization condition recording means 3, fluctuation range adjustment variable list recording means 8, discrete variable list recording means 13, and optimization result recording means 32. In this case, the optimization result recording means 32 is constituted by the hard disk 44.
The input device 45 includes a keyboard (not shown) and the like, and includes an optimization condition input unit 1, a fluctuation range adjustment variable list input unit 6, and a discrete variable list input unit 11. The output device 46 includes an optimization result output unit 31. The optimization result output unit 31 includes a display or a printer (not shown).

最適化条件入力手段1は、最適化の目的、制約条件および設備データを含む最適化条件を入力する。
最適化条件記録手段3は、最適化条件入力手段1から入力された最適化条件の少なくとも一部をファイル・データベースとして記録する。
最適化条件記録データ取得手段4は、最適化条件記録手段3から最適化条件を読み出して最適化条件記憶手段2に記憶させる。
最適化条件デフォルト値取得手段5は、制御プログラム42により設定されている最適化条件のデフォルト値43を取得して最適化条件記憶手段2に記憶させる。
The optimization condition input means 1 inputs an optimization condition including an optimization purpose, constraint conditions, and facility data.
The optimization condition recording means 3 records at least a part of the optimization conditions input from the optimization condition input means 1 as a file database.
The optimization condition recording data acquisition unit 4 reads out the optimization condition from the optimization condition recording unit 3 and stores it in the optimization condition storage unit 2.
The optimization condition default value acquisition unit 5 acquires the optimization condition default value 43 set by the control program 42 and stores it in the optimization condition storage unit 2.

変動幅調整変数リスト入力手段6は、最適化の過程において変動幅を調整する離散変数のリストと離散変数の各々の初期変動幅とを、変動幅調整変数リストとして入力する。
変動幅調整変数リスト記録手段8は、変動幅調整変数リストの少なくとも一部をファイル・データベースとして記録する。
変動幅調整変数リスト記録データ取得手段9は、変動幅調整変数リスト記録手段8から変動幅調整変数リストを読み出して変動幅調整変数リスト記憶手段7に記憶させる。
変動幅調整変数リストデフォルト値取得手段10は、制御プログラム42により設定されている変動幅調整変数リストのデフォルト値43を取得して変動幅調整変数リスト記憶手段7に記憶させる。
The fluctuation range adjustment variable list input means 6 inputs, as a fluctuation range adjustment variable list, a list of discrete variables for adjusting the fluctuation range in the optimization process and an initial fluctuation range of each discrete variable.
The fluctuation range adjustment variable list recording unit 8 records at least a part of the fluctuation range adjustment variable list as a file database.
The fluctuation range adjustment variable list record data acquisition unit 9 reads the fluctuation range adjustment variable list from the fluctuation range adjustment variable list recording unit 8 and stores it in the fluctuation range adjustment variable list storage unit 7.
The fluctuation range adjustment variable list default value acquisition unit 10 acquires the default value 43 of the fluctuation range adjustment variable list set by the control program 42 and stores it in the fluctuation range adjustment variable list storage unit 7.

離散変数リスト入力手段11は、全離散変数に関するリスト、上下限値および最小変動幅を、離散変数リストとして入力する。
離散変数リスト記録手段13は、離散変数リストの少なくとも一部をファイル・データベースとして記録する。
離散変数リスト記録データ取得手段14は、離散変数リスト記録手段13から離散変数リストを読み出して離散変数リスト記憶手段12に記憶させる。
離散変数リストデフォルト値取得手段10は、制御プログラム42により設定されている離散変数リストのデフォルト値43を取得して離散変数リスト記憶手段12に記憶させる。
The discrete variable list input means 11 inputs a list relating to all discrete variables, the upper and lower limit values, and the minimum fluctuation range as a discrete variable list.
The discrete variable list recording unit 13 records at least a part of the discrete variable list as a file database.
The discrete variable list record data acquisition means 14 reads the discrete variable list from the discrete variable list record means 13 and stores it in the discrete variable list storage means 12.
The discrete variable list default value acquisition unit 10 acquires the default value 43 of the discrete variable list set by the control program 42 and stores it in the discrete variable list storage unit 12.

評価関数値演算手段17は、与えられた離散変数値に対する評価関数値を最適化条件記憶手段2内の最適化条件にしたがって演算する。
最適解記憶手段18は、最適化の過程で過去最も評価関数値が優れた解である最適解の離散変数値および評価関数値を記憶する。
最良解記憶手段19は、最適化の過程での一時的な解である最良解の離散変数値および評価関数値を記憶する。
The evaluation function value calculation means 17 calculates the evaluation function value for the given discrete variable value according to the optimization condition in the optimization condition storage means 2.
The optimal solution storage means 18 stores the discrete variable value and the evaluation function value of the optimal solution that is the solution having the best evaluation function value in the past in the optimization process.
The best solution storage means 19 stores discrete variable values and evaluation function values of the best solution, which are temporary solutions in the optimization process.

初期解生成手段16は、離散変数リスト記憶手段12から全離散変数のリストを読み出して、最適化条件記憶手段2から読み出した最適化条件を満たすように全離散変数の初期値を生成し、評価関数値演算手段17で演算された評価関数値を最適解記憶手段18および最良解記憶手段19に記憶させる。   The initial solution generation means 16 reads the list of all discrete variables from the discrete variable list storage means 12, generates initial values of all discrete variables so as to satisfy the optimization conditions read from the optimization condition storage means 2, and evaluates them. The evaluation function value calculated by the function value calculation means 17 is stored in the optimum solution storage means 18 and the best solution storage means 19.

タブーリスト記憶手段21は、過去の最良解のリストからなるタブーリストを記憶する。
タブーリスト初期化手段20は、タブーリストをクリアして、最適解記憶手段18から読み出した最適解を追加したタブーリストをタブーリスト記憶手段21に記憶させる。
隣接状態記憶手段23は、全隣接状態(後述する)の離散変数値および評価関数値を記憶する。
The taboo list storage means 21 stores a taboo list including a list of past best solutions.
The tabu list initialization unit 20 clears the tabu list and causes the tabu list storage unit 21 to store the tabu list to which the optimum solution read from the optimum solution storage unit 18 is added.
The adjacent state storage unit 23 stores discrete variable values and evaluation function values of all adjacent states (described later).

第2近傍生成手段33は、最適化条件記憶手段2から読み出した最適化条件と、変動幅調整変数リスト記憶手段7から読み出した、変動幅を調整する離散変数のリストおよび変動幅と、離散変数リスト記憶手段12から読み出した、変動幅を調整しない離散変数のリスト、最小変動幅および全離散変数の上下限値と、最良解記憶手段19から読み出した現在の最良解を構成する離散変数値および評価関数値とに基づいて、次の最良解候補である隣接状態を複数生成し、評価関数値演算手段17により全隣接状態の評価関数値を演算し、全隣接状態の離散変数値および評価関数値を、メインメモリ41上にあらかじめ領域が確保されている隣接状態記憶手段23に記憶させる。   The second neighborhood generation unit 33 includes an optimization condition read from the optimization condition storage unit 2, a list and variation range of discrete variables for adjusting the variation range read from the variation range adjustment variable list storage unit 7, and discrete variables A list of discrete variables whose fluctuation width is not adjusted, the minimum fluctuation width and the upper and lower limit values of all the discrete variables read from the list storage means 12, and the discrete variable values constituting the current best solution read from the best solution storage means 19, and Based on the evaluation function value, a plurality of adjacent states that are the next best solution candidates are generated, the evaluation function value calculating means 17 calculates the evaluation function values of all adjacent states, and the discrete variable values and evaluation functions of all adjacent states. The value is stored in the adjacent state storage unit 23 in which an area is secured in advance on the main memory 41.

最適解・最良解更新手段24は、隣接状態記憶手段23から全隣接状態を読み出し、最適解記憶手段18から現在の最適解を読み出し、最良解記憶手段19から現在の最良解を読み出して、全隣接状態と現在の最良解とから次の最良解を選択し、次の最良解を構成する離散変数値および評価関数値を最良解記憶手段19に記憶させ、次の最良解の評価関数値が現在の最適解の評価関数値よりも優れている場合には、次の最良解を構成する離散変数値および評価関数値を最適解記憶手段18に記憶させる。   The optimal solution / best solution update unit 24 reads all adjacent states from the adjacent state storage unit 23, reads the current optimal solution from the optimal solution storage unit 18, and reads the current best solution from the best solution storage unit 19. The next best solution is selected from the adjacent state and the current best solution, the discrete variable value and the evaluation function value constituting the next best solution are stored in the best solution storage means 19, and the evaluation function value of the next best solution is determined. If it is superior to the evaluation function value of the current optimum solution, the optimum solution storage means 18 stores the discrete variable value and the evaluation function value constituting the next best solution.

タブーリスト更新手段25は、最良解記憶手段19から最良解を読み出し、タブーリスト記憶手段21からタブーリストを読み出し、タブーリストに保存されている最良解の数がタブーリストの長さに達している場合には、タブーリスト内の最も古い最良解を破棄して現在の最良解を追加した新しいタブーリストをタブーリスト記憶手段21に記憶させる。   The tabu list update unit 25 reads the best solution from the best solution storage unit 19, reads the tabu list from the tabu list storage unit 21, and the number of the best solutions stored in the tabu list reaches the length of the tabu list. In this case, the oldest best solution in the taboo list is discarded, and a new taboo list in which the current best solution is added is stored in the taboo list storage means 21.

第2近傍探索終了判定手段26は、最適化条件記憶手段2から読み出した最適化条件に基づいて、第2近傍探索の終了条件を満たすか否かを判定し、第2近傍探索の終了条件を満たすと判定された場合には第1近傍探索に移行し、第2近傍探索の終了条件を満たさない場合には、第2近傍生成手段22の処理に復帰させる。   Based on the optimization condition read from the optimization condition storage unit 2, the second neighborhood search end determination unit 26 determines whether or not the second neighborhood search end condition is satisfied, and sets the second neighborhood search end condition. When it is determined that the condition is satisfied, the process proceeds to the first vicinity search, and when the end condition for the second vicinity search is not satisfied, the process returns to the process of the second vicinity generation unit 22.

第2近傍探索手段33は、第2近傍生成手段22、最適解・最良解更新手段24、タブーリスト更新手段25および第2近傍探索終了判定手段26による一連の処理を実行する。
第1近傍探索初期解生成手段27は、最適解記憶手段18から最適解を読み出して最良解記憶手段19に記憶させる。
The second neighborhood searching unit 33 executes a series of processes by the second neighborhood generating unit 22, the optimum solution / best solution updating unit 24, the taboo list updating unit 25, and the second neighborhood search end determining unit 26.
The first neighborhood search initial solution generation means 27 reads the optimum solution from the optimum solution storage means 18 and stores it in the best solution storage means 19.

第1近傍生成手段28は、最適化条件記憶手段2から読み出した最適化条件と、離散変数リスト記憶手段12から読み出した全離散変数に関するリスト、最小変動幅および上下限値と、最良解記憶手段19から読み出した現在の最良解を構成する離散変数値および評価関数値とに基づいて、次の最良解候補である隣接状態を複数生成し、評価関数値演算手段17により全隣接状態の評価関数値を演算し、全隣接状態の離散変数値および評価関数値を隣接状態記憶手段23に記憶させる。   The first neighborhood generation unit 28 includes an optimization condition read from the optimization condition storage unit 2, a list of all discrete variables read from the discrete variable list storage unit 12, a minimum fluctuation range and upper and lower limit values, and a best solution storage unit Based on the discrete variable value and the evaluation function value constituting the current best solution read from 19, a plurality of adjacent states that are the next best solution candidates are generated, and the evaluation function of all adjacent states is evaluated by the evaluation function value calculation means 17 The value is calculated, and the discrete variable values and the evaluation function values of all adjacent states are stored in the adjacent state storage means 23.

第1近傍探索終了判定手段29は、最適化条件記憶手段2から読み出した最適化条件に基づいて、第1近傍探索の終了条件を満たすか否かを判定し、第1近傍探索の終了条件を満たすと判定された場合には第1近傍探索を終了し、第1近傍探索の終了条件を満たさない場合には、第1近傍生成手段28の処理に復帰させる。
第1近傍探索手段34は、第1近傍生成手段28、最適解・最良解更新手段24、タブーリスト更新手段25および第1近傍探索終了判定手段29による一連の処理を実行する。
The first neighborhood search end determination means 29 determines whether or not the first neighborhood search end condition is satisfied based on the optimization condition read from the optimization condition storage means 2, and sets the first neighborhood search end condition. If it is determined that the first neighborhood search is satisfied, the first neighborhood search is terminated. If the first neighborhood search termination condition is not satisfied, the first neighborhood generation means 28 is returned to the processing.
The first neighborhood search unit 34 executes a series of processes by the first neighborhood generation unit 28, the optimum solution / best solution update unit 24, the tabu list update unit 25, and the first neighborhood search end determination unit 29.

最適化結果出力手段31は、ディスプレイまたはプリンタなどを含む出力装置46により構成され、最適解を構成する離散変数値および評価関数値を出力する。
最適化結果記録手段32は、ハードディスクなどにより構成され、最適解を構成する離散変数値および評価関数値をファイル・データベースとして記録する。
最適化結果記録・出力処理手段30は、第1近傍探索の終了後に、最適化結果記録手段32に最適化結果を記録するとともに、最適化結果出力手段31により最適化結果を出力させる。
The optimization result output means 31 includes an output device 46 including a display or a printer, and outputs discrete variable values and evaluation function values that constitute an optimal solution.
The optimization result recording means 32 is constituted by a hard disk or the like, and records discrete variable values and evaluation function values constituting the optimal solution as a file database.
The optimization result recording / output processing means 30 records the optimization result in the optimization result recording means 32 and causes the optimization result output means 31 to output the optimization result after the end of the first neighborhood search.

次に、図2のフローチャートを参照しながら、図1の組み合わせ最適化システムにより実行される処理手順について説明する。
図2において、まず、最適化条件を入力または読み出して記憶する(ステップS1)。
Next, a processing procedure executed by the combinational optimization system of FIG. 1 will be described with reference to the flowchart of FIG.
In FIG. 2, first, optimization conditions are input or read and stored (step S1).

具体的には、入力装置45内の最適化条件入力手段1(キーボードなど)をオペレータが操作することにより、最適化の目的(CO2排出量の最小化など)、制約条件(各時刻の電力需要=電源出力+買電+蓄電池充放電など)、設備データ(電源の容量など)が最適化条件として入力される。
以下、中央処理装置40は、メインメモリ41内の制御プログラム42の指令を受けて、入力された最適化条件を、メインメモリ41上にあらかじめ領域が確保されている最適化条件記憶手段2に記憶させる。
Specifically, when the operator operates the optimization condition input means 1 (keyboard or the like) in the input device 45, the optimization purpose (such as minimizing CO2 emissions) and the constraint conditions (power demand at each time) = Power output + power purchase + storage battery charge / discharge, etc.) and facility data (power supply capacity, etc.) are input as optimization conditions.
Thereafter, the central processing unit 40 receives the instruction of the control program 42 in the main memory 41 and stores the input optimization conditions in the optimization condition storage means 2 in which an area is secured in the main memory 41 in advance. Let

ただし、最適化条件の少なくとも一部が、あらかじめハードディスク44内の最適化条件記録手段3にファイル・データベースなどとして記録されていて、内容変更が不要な場合には、制御プログラム42内の最適化条件記録データ取得手段4により、最適化条件記録手段3から最適化条件を読み出して最適化条件記憶手段2に記憶させる。   However, if at least a part of the optimization conditions is recorded in advance in the optimization condition recording means 3 in the hard disk 44 as a file database or the like, and it is not necessary to change the contents, the optimization conditions in the control program 42 The recording data acquisition means 4 reads out the optimization conditions from the optimization condition recording means 3 and stores them in the optimization condition storage means 2.

また、制御プログラム42によりあらかじめデフォルト値43が設定されていて、デフォルト値43の内容変更が不要な最適化条件については、制御プログラム42内の最適化条件デフォルト値取得手段5により、メインメモリ41上のデフォルト値43を取得して最適化条件記憶手段2に記憶させる。   For the optimization conditions for which the default value 43 is set in advance by the control program 42 and the contents of the default value 43 do not need to be changed, the optimization condition default value acquisition means 5 in the control program 42 stores the optimization value on the main memory 41. Is obtained and stored in the optimization condition storage means 2.

次に、変動幅を調整する離散変数のリストを入力または読み出して記憶する(ステップS2)。
具体的には、入力装置45内の変動幅調整変数リスト入力手段6(キーボードなど)をオペレータが操作することにより、最適化の過程において変動幅を調整する離散変数のリストと、各離散変数の初期変動幅とが入力される。
以下、中央処理装置40は、メインメモリ41内の制御プログラム42の指令を受けて、入力された離散変数情報を、メインメモリ41上にあらかじめ領域が確保されている変動幅調整変数リスト記憶手段7に記憶させる。
Next, a list of discrete variables for adjusting the fluctuation range is input or read and stored (step S2).
Specifically, the operator operates the fluctuation range adjustment variable list input means 6 (keyboard or the like) in the input device 45, so that a list of discrete variables for adjusting the fluctuation range in the optimization process and each discrete variable The initial fluctuation range is input.
Thereafter, the central processing unit 40 receives the command of the control program 42 in the main memory 41 and stores the input discrete variable information in the fluctuation range adjustment variable list storage means 7 in which an area is secured in advance on the main memory 41. Remember me.

ただし、変動幅を調整する離散変数のリストおよび変動幅の少なくとも一部が、あらかじめハードディスク44内の変動幅調整変数リスト記録手段8にファイル・データベースなどとして記録されていて、内容変更が不要な離散変数情報については、制御プログラム42内の変動幅調整変数リスト記録データ取得手段9により、変動幅調整変数リスト記録手段8から離散変数情報を読み出して変動幅調整変数リスト記憶手段7に記憶させる。   However, a list of discrete variables for adjusting the fluctuation range and at least a part of the fluctuation ranges are recorded in advance in the fluctuation range adjustment variable list recording unit 8 in the hard disk 44 as a file database or the like, and the discrete contents that do not require changing contents Regarding the variable information, the variable range adjustment variable list record data acquisition unit 9 in the control program 42 reads the discrete variable information from the range adjustment variable list record unit 8 and stores it in the range adjustment variable list storage unit 7.

また、制御プログラム42によりデフォルト値43が設定されていて、内容変更が不要な離散変数情報は、制御プログラム42内の変動幅調整変数リストデフォルト値取得手段10により、メインメモリ41上のデフォルト値43を取得して変動幅調整変数リスト記憶手段7に記憶させる。   Also, the default value 43 on the main memory 41 is obtained by the variable range adjustment variable list default value acquisition means 10 in the control program 42 for the discrete variable information for which the default value 43 is set by the control program 42 and the content change is unnecessary. And stored in the fluctuation range adjustment variable list storage means 7.

変動幅を調整する離散変数の具体例としては、たとえば、図1の組み合わせ最適化システムを複数の電源の運転計画に適用する場合には、各電源のON/OFF状態を変更する時刻があげられる。この場合、最適化問題が、翌日24時間の運転計画を立案する問題であって、計画の時間刻みが「30分間隔」であるとすると、各電源のON/OFF状態を変更する時刻の最小変動幅は「30分」であるのに対して、初期変動幅は、「60分」または「90分」などに設定される。   As a specific example of the discrete variable for adjusting the fluctuation range, for example, when the combinational optimization system of FIG. 1 is applied to an operation plan for a plurality of power sources, the time for changing the ON / OFF state of each power source can be given. . In this case, if the optimization problem is a problem of planning an operation plan for 24 hours the next day, and the time increment of the plan is “30 minute intervals”, the minimum time for changing the ON / OFF state of each power supply While the fluctuation range is “30 minutes”, the initial fluctuation range is set to “60 minutes” or “90 minutes”.

次に、全離散変数の入力または読み出しを行うために、変動幅を調整しない離散変数のリストを入力または読み出して記憶する(ステップS3)。
具体的には、入力装置45内の離散変数リスト入力手段11(キーボードなど)をオペレータが操作することにより、変動幅を調整しない離散変数を含む、全離散変数のリストと、全離散変数の上下限値と、全離散変数の最小変動幅とが入力される。
以下、中央処理装置40は、メインメモリ41内の制御プログラム42の指令を受けて、入力された離散変数情報を、メインメモリ41上にあらかじめ領域が確保されている離散変数リスト記憶手段12に記憶させる。
Next, in order to input or read out all the discrete variables, a list of discrete variables whose fluctuation width is not adjusted is input or read and stored (step S3).
Specifically, when the operator operates the discrete variable list input means 11 (keyboard or the like) in the input device 45, a list of all discrete variables including the discrete variables whose fluctuation width is not adjusted, and the top of all the discrete variables. The lower limit value and the minimum fluctuation range of all discrete variables are input.
Thereafter, the central processing unit 40 receives the command of the control program 42 in the main memory 41 and stores the input discrete variable information in the discrete variable list storage unit 12 in which an area is secured in advance on the main memory 41. Let

ただし、全離散変数情報の少なくとも一部が、ハードディスク44内の離散変数リスト記録手段13にあらかじめファイル・データベースなどとして記録されていて、内容変更が不要な場合には、制御プログラム42内の離散変数リスト記録データ取得手段14により、離散変数情報を読み出して離散変数リスト記憶手段12に記憶させる。   However, if at least a part of all the discrete variable information is recorded in advance in the discrete variable list recording means 13 in the hard disk 44 as a file database or the like, and it is not necessary to change the contents, the discrete variable in the control program 42 is used. Discrete variable information is read out by the list record data acquisition means 14 and stored in the discrete variable list storage means 12.

また、制御プログラム42によりデフォルト値43が設定されていて、内容変更が不要な離散変数については、制御プログラム42内の離散変数デフォルト値取得手段15により、メインメモリ41上のデフォルト値43を取得して離散変数リスト記憶手段12に記憶させる。   Further, for the discrete variable for which the default value 43 is set by the control program 42 and the contents need not be changed, the default value 43 on the main memory 41 is acquired by the discrete variable default value acquisition means 15 in the control program 42. And stored in the discrete variable list storage means 12.

次に、初期解を生成し、最適解(過去の探索で最も評価関数値が優れた解)、最良解(探索途中の一時的な解)として記憶する(ステップS4)。
具体的には、中央処理装置40は、メインメモリ41内の制御プログラム42の指令を受けて、制御プログラム42内の初期解生成手段16により、最適化条件記憶手段2から最適化条件を読み出すとともに、離散変数リスト記憶手段12から全離散変数のリストを読み出す。
Next, an initial solution is generated and stored as an optimal solution (a solution with the highest evaluation function value in the past search) and a best solution (a temporary solution during the search) (step S4).
Specifically, the central processing unit 40 receives an instruction from the control program 42 in the main memory 41 and reads out the optimization condition from the optimization condition storage unit 2 by the initial solution generation unit 16 in the control program 42. Then, a list of all discrete variables is read from the discrete variable list storage means 12.

また、中央処理装置40は、最適化条件の一部である制約条件を満たすように全離散変数の初期値を生成し、評価関数値演算手段17により与えられた離散変数値に対する評価関数値を最適化条件記憶手段2内の最適化条件にしたがって演算し、離散変数値および評価関数値をメインメモリ41上にあらかじめ領域が確保されている最適解記憶手段18に記憶させるとともに、離散変数値および評価関数値をメインメモリ41上にあらかじめ領域が確保されている最良解記憶手段19に記憶させる。   Further, the central processing unit 40 generates initial values of all discrete variables so as to satisfy the constraint conditions that are part of the optimization conditions, and sets the evaluation function values for the discrete variable values given by the evaluation function value calculation means 17. The calculation is performed according to the optimization condition in the optimization condition storage means 2 and the discrete variable value and the evaluation function value are stored in the optimal solution storage means 18 in which a region is secured in advance in the main memory 41, and the discrete variable value and The evaluation function value is stored in the best solution storage means 19 in which an area is secured in advance on the main memory 41.

ここでは、便宜的に、過去の探索で最も評価関数値が優れたものを「最適解」と称し、探索途中の一時的な解を「最良解」と称する。
なお、全離散変数の初期値の与え方は任意であり、たとえば、ランダムに設定してもよいし、対象とする問題において経験的に知られている適当な方法で設定してもよい。
また、評価関数値演算手段17の具体的な演算内容は、問題ごとにあらかじめ制御プログラム42にアルゴリズムが記述されている。
Here, for the sake of convenience, the one with the highest evaluation function value in the past search is referred to as “optimal solution”, and the temporary solution during the search is referred to as “best solution”.
In addition, how to give the initial value of all the discrete variables is arbitrary, For example, you may set randomly and may set with the appropriate method known empirically in the problem made into object.
The specific calculation contents of the evaluation function value calculation means 17 are described in advance in the control program 42 for each problem.

たとえば、コージェネ電源の運転計画で、最適化条件として「CO2排出量最小化」を選択した場合、評価関数値Eは、コージェネ電源の燃料消費量Fcと、コージェネ電源用燃料のCO2排出係数Kcと、商用系統からの買電量Qbと、系統電力のCO2排出係数Kq、不足熱量を供給するための燃料消費量Fpと、不足熱供給用燃料のCO2排出係数Kpとを用いて、以下の式(1)のように演算される。   For example, when “CO2 emission minimization” is selected as the optimization condition in the operation plan of the cogeneration power source, the evaluation function value E is calculated as follows: the fuel consumption amount Fc of the cogeneration power source and the CO2 emission coefficient Kc of the fuel for the cogeneration power source. The following equation (1) is obtained using the power purchase amount Qb from the commercial system, the CO2 emission coefficient Kq of the system power, the fuel consumption Fp for supplying the insufficient heat quantity, and the CO2 emission coefficient Kp of the fuel for supplying insufficient heat ( It is calculated as in 1).

E=Fc×Kc+Qb×Kq+Fp×Kp ・・・(1)   E = Fc × Kc + Qb × Kq + Fp × Kp (1)

ただし、式(1)において、コージェネ電源の燃料消費量Fc、商用系統からの買電量Qbおよび不足熱量を供給するための燃料消費量Fpは、離散変数値そのもの、または離散変数値から一意に決定できる値であり、各CO2排出係数Kc、Kq、Kpは、最適化条件の項目である。   However, in equation (1), the fuel consumption amount Fc of the cogeneration power source, the power purchase amount Qb from the commercial system, and the fuel consumption amount Fp for supplying the insufficient heat amount are uniquely determined from the discrete variable value itself or the discrete variable value. This is a possible value, and each CO2 emission coefficient Kc, Kq, Kp is an item of optimization conditions.

次に、最適化の第1段階である第2近傍探索として、制御プログラム42内の第2近傍探索手段33により、以下の処理が行われる。
すなわち、組み合わせ最適化システムの基本アルゴリズムがタブー探索を基本としている場合には、まず、制御プログラム42内のタブーリスト初期化手段20により、タブーリストを初期化(クリア)し、最適解記憶手段18から最適解を読み出してタブーリストに追加し、更新後のタブーリストをメインメモリ41上にあらかじめ領域が確保されているタブーリスト記憶手段21に記憶させる(ステップS5)。
Next, the following processing is performed by the second neighborhood search means 33 in the control program 42 as the second neighborhood search that is the first stage of optimization.
That is, when the basic algorithm of the combinatorial optimization system is based on tabu search, first, the tabu list is initialized (cleared) by the tabu list initialization unit 20 in the control program 42, and the optimum solution storage unit 18. The optimum solution is read out from the table and added to the tabu list, and the updated taboo list is stored in the tabu list storage means 21 in which an area is secured in advance on the main memory 41 (step S5).

次に、中央処理装置40は、現在の最良解からやや離れた領域の隣接状態の集合(第2近傍)を生成して評価関数値を演算するために、メインメモリ41内の制御プログラム42の指令を受けて、第2近傍生成手段22により、最適化条件記憶手段2から最適化条件を読み出し、変動幅調整変数リスト記憶手段7から変動幅を調整する離散変数のリストおよび変動幅を読み出し、離散変数リスト記憶手段12から変動幅を調整しない離散変数のリストおよび最小変動幅と全離散変数の上下限値とを読み出し、最良解記憶手段19から現在の最良解を構成する離散変数値および評価関数値を読み出す。   Next, the central processing unit 40 generates a set of adjacent states (second neighborhood) in a region slightly away from the current best solution and calculates an evaluation function value in the control program 42 in the main memory 41. In response to the command, the second neighborhood generation unit 22 reads the optimization condition from the optimization condition storage unit 2, reads the list of variation variables for adjusting the variation range and the variation range from the variation range adjustment variable list storage unit 7, A list of discrete variables that do not adjust the fluctuation range and the minimum fluctuation width and the upper and lower limit values of all the discrete variables are read from the discrete variable list storage means 12, and the discrete variable values and evaluations constituting the current best solution are read from the best solution storage means 19. Read the function value.

以下、中央処理装置40は、読み出した各情報に基づき、次の最良解候補である隣接状態を複数生成するとともに、評価関数値演算手段17により全隣接状態の評価関数値を演算し、全隣接状態の離散変数値および評価関数値をメインメモリ41上にあらかじめ領域が確保されている隣接状態記憶手段23に記憶させる(ステップS6)。   Thereafter, the central processing unit 40 generates a plurality of adjacent states which are the next best solution candidates based on each read information, and calculates the evaluation function value of all adjacent states by the evaluation function value calculating unit 17, The state discrete variable value and the evaluation function value are stored in the adjacent state storage means 23 in which an area is secured in advance on the main memory 41 (step S6).

ここで、具体的に述べると、隣接状態は、全離散変数のうちのいずれか1つの離散変数の値を、以下に示す離散変数ごとに異なる幅だけ増加または減少させることによって生成される。この処理を全離散変数に対して行うことにより、現在の最適解の近傍すなわち隣接状態の集合が生成される。   Specifically, the adjacent state is generated by increasing or decreasing the value of any one of all the discrete variables by a different width for each of the following discrete variables. By performing this process on all discrete variables, a neighborhood of the current optimal solution, that is, a set of adjacent states is generated.

全離散変数のうち、変動幅を調整する離散変数については、調整変数のリストと合わせて取得した変動幅だけ値が変更される。その他の離散変数については、最小変動幅だけ変更される。ただし、変更した離散変数値が上限値よりも大きい場合には上限値に設定し、下限値よりも小さい場合には下限値に設定して、離散変数値を所定範囲内に限定する。   Among all the discrete variables, the value of the discrete variable for adjusting the fluctuation range is changed by the fluctuation range acquired together with the adjustment variable list. For other discrete variables, only the minimum fluctuation range is changed. However, when the changed discrete variable value is larger than the upper limit value, the upper limit value is set. When the changed discrete variable value is smaller than the lower limit value, the lower limit value is set to limit the discrete variable value within a predetermined range.

次に、中央処理装置40は、最適解および最良解と第2近傍の各状態とを比較して、最適解および最良解を更新するために、メインメモリ41内の制御プログラム42の指令を受けて、最適解・最良解更新手段24により、隣接状態記憶手段23から全隣接状態を読み出し、最適解記憶手段18から現在の最適解を読み出し、最良解記憶手段19から現在の最良解を読み出す。   Next, the central processing unit 40 receives a command from the control program 42 in the main memory 41 in order to compare the optimum solution and the best solution with each state in the second neighborhood and update the optimum solution and the best solution. Then, the optimum solution / best solution update unit 24 reads all adjacent states from the adjacent state storage unit 23, reads the current optimum solution from the optimum solution storage unit 18, and reads the current best solution from the best solution storage unit 19.

以下、中央処理装置40は、全隣接状態と現在の最良解とから次の最良解を選択し、次の最良解を構成する離散変数値および評価関数値を最良解記憶手段18に記憶させ、次の最良解の評価関数値が現在の最適解の評価関数値よりも優れている場合には、次の最良解を構成する離散変数値および評価関数値を、最適解記憶手段18に更新して記憶させる(ステップS7)。   Hereinafter, the central processing unit 40 selects the next best solution from all adjacent states and the current best solution, and stores the discrete variable value and the evaluation function value constituting the next best solution in the best solution storage means 18, If the evaluation function value of the next best solution is superior to the evaluation function value of the current optimum solution, the discrete variable value and the evaluation function value constituting the next best solution are updated in the optimum solution storage means 18. (Step S7).

具体的には、次の最良解の選択方法は、適用する組み合わせ最適化システムの基本アルゴリズムにしたがう。たとえば、組み合わせ最適化システムが、局所探索を基本としている場合には、全隣接状態のうち最も評価関数値が優れているものを次の最良解とする。また、組み合わせ最適化システムが、タブー探索を基本としている場合には、全隣接状態のうち、タブーリスト含まれていないもので最も評価関数値が優れているものを次の最良解とする。   Specifically, the next best solution selection method follows the basic algorithm of the applied combinatorial optimization system. For example, when the combinatorial optimization system is based on local search, the next best solution is the one with the best evaluation function value among all the adjacent states. When the combinatorial optimization system is based on tabu search, the next best solution is the one that does not include the tabu list and has the best evaluation function value among all adjacent states.

次に、組み合わせ最適化システムの基本アルゴリズムが、タブー探索を基本としている場合には、タブーリスト更新手段25により、最良解記憶手段19から最良解を読み出し、タブーリスト記憶手段21からタブーリストを読み出して、タブーリストに保存されている最良解の数がタブーリストの長さに達していれば、タブーリスト内の最も古い最良解を破棄して現在の最良解を追加した新しいタブーリストを、タブーリスト記憶手段21に更新して記憶させる(ステップS8)。   Next, when the basic algorithm of the combinatorial optimization system is based on tabu search, the tabu list update unit 25 reads the best solution from the best solution storage unit 19 and the tabu list storage unit 21 reads the tabu list. If the number of best solutions stored in the taboo list has reached the length of the taboo list, a new taboo list in which the oldest best solution in the taboo list is discarded and the current best solution is added is displayed. The list storage means 21 is updated and stored (step S8).

次に、中央処理装置40は、メインメモリ41内の制御プログラム42の指令を受けて、第2近傍探索終了判定手段26により、最適化条件記憶手段2から最適化条件を読み出し、第2近傍探索を終了する(第2近傍探索の終了条件を満たす)か否かを判定する(ステップS9)。   Next, the central processing unit 40 receives an instruction from the control program 42 in the main memory 41, reads out the optimization condition from the optimization condition storage unit 2 by the second neighborhood search end determination unit 26, and performs the second neighborhood search. Whether or not to end (conditions for ending the second neighborhood search) are determined (step S9).

ステップS9において、第2近傍探索の終了条件を満たす(すなわち、YES)と判定された場合には、次の第1近傍探索(ステップS10〜S15)に移行し、終了条件を満たさない(すなわち、NO)と判定された場合には第2近傍生成手段22の処理(ステップS6)に復帰する。
上記第2近傍生成手段22〜第2近傍探索終了判定手段26の処理(ステップS6〜S9)は、第2近傍探索の1つのループと見なすことができる。
In step S9, when it is determined that the end condition of the second neighborhood search is satisfied (that is, YES), the process proceeds to the next first neighborhood search (steps S10 to S15), and the end condition is not satisfied (that is, If NO is determined, the process returns to the process of the second neighborhood generation means 22 (step S6).
The processing (steps S6 to S9) of the second neighborhood generation unit 22 to the second neighborhood search end determination unit 26 can be regarded as one loop of the second neighborhood search.

なお、第2近傍探索を終了するか否かの判定は、たとえば、最適化条件で設定されている「第2近傍探索の最大ループ回数」、「第2近傍探索の収束判定回数」または「第2近傍探索の最大探索時間」を用いて行われる。すなわち、第2近傍探索のループ回数が「第2近傍探索の最大ループ回数」を越えた場合、「第2近傍探索の収束判定回数」が連続して最適解が改善されなかった場合、または、第2近傍探索の探索を開始後に「第2近傍探索の最大探索時間」が経過した場合に、第2近傍探索の終了条件が成立したものと判定される。   Whether or not to end the second neighborhood search is determined by, for example, “the maximum number of loops of the second neighborhood search”, “the number of convergence judgments of the second neighborhood search” or “ This is performed using the “maximum search time of 2-neighbor search”. That is, when the number of loops of the second neighborhood search exceeds the “maximum number of loops of the second neighborhood search”, the “number of convergence determinations of the second neighborhood search” is not continuously improved, or When the “maximum search time for the second neighborhood search” has elapsed after the search for the second neighborhood search has started, it is determined that the end condition for the second neighborhood search has been satisfied.

次に、最適化の第2段階である第1近傍探索として、制御プログラム42内の第1近傍探索手段34により、以下の処理が行われる。
まず、中央処理装置40は、最良解を更新するために、メインメモリ41内の制御プログラム42の指令を受けて、第1近傍探索初期解生成手段27により、最適解記憶手段18から最適解を読み出して最良解記憶手段19に記憶させる(ステップS10)。
Next, the following processing is performed by the first neighborhood search means 34 in the control program 42 as the first neighborhood search that is the second stage of optimization.
First, in order to update the best solution, the central processing unit 40 receives an instruction from the control program 42 in the main memory 41, and the first neighborhood search initial solution generation unit 27 calculates the optimum solution from the optimum solution storage unit 18. It is read and stored in the best solution storage means 19 (step S10).

続いて、組み合わせ最適化システムの基本アルゴリズムが、タブー探索を基本としている場合には、タブーリスト初期化手段20により、タブーリストを初期化(クリア)し、最適解記憶手段18から最適解を読み出してタブーリストに追加し、更新後のタブーリストをタブーリスト記憶手段21に記憶させる(ステップS11)。   Subsequently, when the basic algorithm of the combinatorial optimization system is based on tabu search, the tabu list initialization means 20 initializes (clears) the taboo list and reads the optimum solution from the optimum solution storage means 18. The updated taboo list is stored in the taboo list storage means 21 (step S11).

次に、中央処理装置40は、現在の最良解の直近領域の隣接状態の集合(第1近傍)を生成して評価関数値を演算するために、メインメモリ41内の制御プログラム42の指令を受けて、第1近傍生成手段28により、最適化条件記憶手段2から最適化条件を読み出し、離散変数リスト記憶手段12から全離散変数に関するリスト、最小変動幅および上下限値を読み出し、最良解記憶手段19から現在の最良解を構成する離散変数値および評価関数値を読み出す。   Next, the central processing unit 40 generates a set of adjacent states (first neighborhood) in the immediate region of the current best solution and calculates an evaluation function value by issuing a command from the control program 42 in the main memory 41. Then, the first neighborhood generation means 28 reads out the optimization conditions from the optimization condition storage means 2, reads out the list, minimum fluctuation range, and upper and lower limit values for all the discrete variables from the discrete variable list storage means 12, and stores the best solution. The discrete variable value and the evaluation function value constituting the current best solution are read from the means 19.

以下、中央処理装置40は、読み出した各情報に基づき、次の最良解候補である隣接状態を複数生成し、評価関数値演算手段17により全隣接状態の評価関数値を演算して、全隣接状態の離散変数値および評価関数値を隣接状態記憶手段23に記憶させる(ステップS12)。   Thereafter, the central processing unit 40 generates a plurality of adjacent states that are the next best solution candidates based on the read information, calculates the evaluation function values of all adjacent states by the evaluation function value calculating unit 17, The state discrete variable value and the evaluation function value are stored in the adjacent state storage means 23 (step S12).

具体的に述べると、隣接状態は、全離散変数のうちのいずれか1つの離散変数の値を最小変動幅だけ増加または減少させることにより生成される。この処理を全離散変数に対して行うことにより、現在の最適解の近傍すなわち隣接状態の集合が生成される。ただし、変更した離散変数値が上限値よりも大きい場合には上限値に設定し、下限値よりも小さい場合には下限値に設定して、離散変数を所定範囲内に限定する。   Specifically, the adjacent state is generated by increasing or decreasing the value of any one of the discrete variables by a minimum fluctuation range. By performing this process on all discrete variables, a neighborhood of the current optimal solution, that is, a set of adjacent states is generated. However, when the changed discrete variable value is larger than the upper limit value, the upper limit value is set. When the changed discrete variable value is smaller than the lower limit value, the lower limit value is set, thereby limiting the discrete variable within a predetermined range.

次に、中央処理装置40は、最適解および最良解と第1近傍の各状態とを比較して、最適解および最良解を更新するために、メインメモリ41内の制御プログラム42の指令を受けて、最適解・最良解更新手段24により、隣接状態記憶手段23から全隣接状態を読み出し、最適解記憶手段18から現在の最適解を読み出し、最良解記憶手段19から現在の最良解を読み出す。   Next, the central processing unit 40 receives a command from the control program 42 in the main memory 41 in order to compare the optimum solution and the best solution with each state in the first neighborhood and update the optimum solution and the best solution. Then, the optimum solution / best solution update unit 24 reads all adjacent states from the adjacent state storage unit 23, reads the current optimum solution from the optimum solution storage unit 18, and reads the current best solution from the best solution storage unit 19.

以下、中央処理装置40は、全隣接状態と現在の最良解とから次の最良解を選択し、次の最良解を構成する離散変数値および評価関数値を最良解記憶手段18に記憶させ、次の最良解の評価関数値が現在の最適解の評価関数値よりも優れている場合には、次の最良解を構成する離散変数値および評価関数値を最適解記憶手段19に更新して記憶させる(ステップS13)。
次の最良解の具体的な選択方法は、前述の第2近傍探索の場合と同様である。
次に、組み合わせ最適化システムの基本アルゴリズムが、タブー探索を基本としている場合には、タブーリスト更新手段25により、最良解記憶手段19から最良解を読み出し、タブーリスト記憶手段21からタブーリストを読み出して、タブーリストに保存されている最良解の数がタブーリストの長さに達していれば、タブーリスト内の最も古い最良解を破棄して現在の最良解を追加した新しいタブーリストを、タブーリスト記憶手段21に更新して記憶させる(ステップS14)。
Hereinafter, the central processing unit 40 selects the next best solution from all adjacent states and the current best solution, and stores the discrete variable value and the evaluation function value constituting the next best solution in the best solution storage means 18, If the evaluation function value of the next best solution is superior to the evaluation function value of the current optimum solution, the discrete variable value and the evaluation function value constituting the next best solution are updated in the optimum solution storage means 19. Store (step S13).
The specific method for selecting the next best solution is the same as in the case of the second neighborhood search described above.
Next, when the basic algorithm of the combinatorial optimization system is based on tabu search, the tabu list update unit 25 reads the best solution from the best solution storage unit 19 and the tabu list storage unit 21 reads the tabu list. If the number of best solutions stored in the taboo list has reached the length of the taboo list, a new taboo list in which the oldest best solution in the taboo list is discarded and the current best solution is added is displayed. The list storage means 21 is updated and stored (step S14).

次に、中央処理装置40は、メインメモリ41内の制御プログラム42の指令を受けて、第1近傍探索終了判定手段29により、最適化条件記憶手段2から最適化条件を読み出し、第1近傍探索を終了する(第1近傍探索の終了条件を満たす)か否かを判定する(ステップS15)。   Next, the central processing unit 40 receives an instruction from the control program 42 in the main memory 41, reads out the optimization condition from the optimization condition storage unit 2 by the first neighborhood search end determination unit 29, and performs the first neighborhood search. Whether or not to end (condition for ending the first neighborhood search) is determined (step S15).

ステップS15において、第1近傍探索の終了条件を満たす(すなわち、YES)と判定された場合には第1近傍探索を終了し、終了条件を満たさない(すなわち、NO)と判定された場合には第1近傍生成手段28の処理(ステップS12)に復帰する。
上記第1近傍生成手段27〜第1近傍探索終了判定手段29の処理(ステップS12〜S15)は、第1近傍探索の1つのループと見なすことができる。
In step S15, when it is determined that the end condition of the first neighborhood search is satisfied (that is, YES), the first vicinity search is ended, and when it is determined that the end condition is not satisfied (that is, NO). The process returns to the processing of the first neighborhood generation means 28 (step S12).
The processing (steps S12 to S15) of the first neighborhood generation unit 27 to the first neighborhood search end determination unit 29 can be regarded as one loop of the first neighborhood search.

なお、第1近傍探索を終了するか否かの判定は、たとえば、最適化条件で設定されている「第1近傍探索の最大ループ回数」、「第1近傍探索の収束判定回数」または「第1近傍探索の最大探索時間」を用いて行われる。すなわち、第1近傍探索のループ回数が「第1近傍探索の最大ループ回数」を越えた場合、「第1近傍探索の収束判定回数」が連続して最適解が改善されなかった場合、または、第1近傍探索の探索を開始後に「第1近傍探索の最大探索時間」が経過した場合に、第1近傍探索を終了条件が成立したものと判定される。   Whether or not to end the first neighborhood search is determined by, for example, “the maximum number of loops of the first neighborhood search”, “the number of convergence judgments of the first neighborhood search” or “ This is performed using the “maximum search time of one neighbor search”. That is, when the number of loops of the first neighborhood search exceeds the “maximum number of loops of the first neighborhood search”, the “number of convergence judgments of the first neighborhood search” is not continuously improved, or When the “maximum search time for the first neighborhood search” has elapsed after the search for the first neighborhood search has started, it is determined that the end condition for the first neighborhood search has been satisfied.

最後に、中央処理装置40は、第1近傍探索の終了後の処理として、メインメモリ41内の制御プログラム42の指令を受けて、最適化結果記録・出力処理手段30により、ハードディスク44内の最適化結果記録手段32にファイル・データベースなどとして最適化結果(最適解を構成する離散変数値および評価関数値)を記録するとともに、出力装置46内の最適化結果出力手段31(ディスプレイ、プリンタなど)により、最適化結果を出力させて(ステップS16)、図1の処理ルーチンを終了する。   Finally, the central processing unit 40 receives an instruction from the control program 42 in the main memory 41 as processing after the end of the first neighborhood search, and the optimization result recording / output processing means 30 performs optimization in the hard disk 44. The optimization result (discrete variable value and evaluation function value constituting the optimal solution) is recorded in the optimization result recording means 32 as a file database or the like, and the optimization result output means 31 (display, printer, etc.) in the output device 46 Thus, the optimization result is output (step S16), and the processing routine of FIG. 1 is terminated.

図3はこの発明の実施の形態1に係る組み合わせ最適化システムのイメージを示す説明図である。
図3において、まず、一部の離散変数または全離散変数の変動幅を大きく設定して、現在の状態から離散変数の値を大きく変動させた隣接状態の集合を第2近傍(図3内の破線枠グレー部分)と定義し、第2近傍を隣接状態と見なして最適化する大域的な第2近傍探索を行う。
これにより、最適解が存在することが有望な集中探索する領域を高速に特定することができる。
FIG. 3 is an explanatory diagram showing an image of the combinational optimization system according to the first embodiment of the present invention.
In FIG. 3, first, the variation range of some discrete variables or all discrete variables is set to be large, and a set of adjacent states in which the value of the discrete variable is greatly varied from the current state is set to the second neighborhood (in FIG. 3). A global second neighborhood search is performed to optimize the second neighborhood as an adjacent state.
As a result, it is possible to specify at high speed an area in which a central search is promising that an optimal solution exists.

第2近傍探索により隣接状態の評価関数値が収束したら、続いて、離散変数の変動幅を小さく設定して、現在の状態から離散変数を小さく変動させた隣接状態の集合を第1近傍(図3内の実線枠)と定義し、第1近傍を隣接状態と見なして最適化する第1近傍探索を行う。
これにより、図3内の下段右の特性図に示すように、短時間で有望な領域を集中探索することができる。
When the evaluation function value of the adjacent state is converged by the second neighborhood search, subsequently, the fluctuation range of the discrete variable is set to be small, and a set of adjacent states in which the discrete variable is changed from the current state to the first neighborhood (see FIG. The first neighborhood search is performed by optimizing the first neighborhood as an adjacent state.
Thereby, as shown in the characteristic diagram on the lower right in FIG. 3, a promising region can be intensively searched in a short time.

以上のように、この発明の実施の形態1に係る組み合わせ最適化問題を解くための組み合わせ最適化システムは、
メインメモリ41上の制御プログラム42と、
最適化の目的、制約条件および設備データを含む最適化条件を入力する最適化条件入力手段1と、
最適化条件を記憶する最適化条件記憶手段2と、
最適化条件の少なくとも一部をファイル・データベースとして記録する最適化条件記録手段3と、
最適化条件記録手段3から最適化条件を読み出して最適化条件記憶手段2に記憶させる最適化条件記録データ取得手段4と、
制御プログラム42により設定されている最適化条件のデフォルト値43を取得して最適化条件記憶手段2に記憶させる最適化条件デフォルト値取得手段5と、を備えている。
As described above, the combination optimization system for solving the combination optimization problem according to the first embodiment of the present invention is as follows.
A control program 42 on the main memory 41;
An optimization condition input means 1 for inputting an optimization condition including an optimization purpose, constraint conditions, and equipment data;
An optimization condition storage means 2 for storing optimization conditions;
Optimization condition recording means 3 for recording at least a part of the optimization conditions as a file database;
An optimization condition recording data acquisition means 4 for reading out the optimization conditions from the optimization condition recording means 3 and storing them in the optimization condition storage means 2;
And an optimization condition default value acquisition means 5 that acquires the optimization condition default value 43 set by the control program 42 and stores it in the optimization condition storage means 2.

また、最適化の過程において変動幅を調整する離散変数のリストと離散変数の各々の初期変動幅とを変動幅調整変数リストとして入力する変動幅調整変数リスト入力手段6と、
変動幅調整変数リストを記憶する変動幅調整変数リスト記憶手段7と、
変動幅調整変数リストの少なくとも一部をファイル・データベースとして記録する変動幅調整変数リスト記録手段8と、
変動幅調整変数リスト記録手段8から変動幅調整変数リストを読み出して変動幅調整変数リスト記憶手段7に記憶させる変動幅調整変数リスト記録データ取得手段9と、
制御プログラム42により設定されている変動幅調整変数リストのデフォルト値43を取得して変動幅調整変数リスト記憶手段7に記憶させる変動幅調整変数リストデフォルト値取得手段10と、を備えている。
Also, a variation adjustment variable list input means 6 for inputting a list of discrete variables for adjusting the variation in the optimization process and initial variation of each of the discrete variables as a variation adjustment variable list,
A fluctuation range adjustment variable list storage means 7 for storing a fluctuation range adjustment variable list;
Fluctuation range adjustment variable list recording means 8 for recording at least a part of the fluctuation range adjustment variable list as a file database;
A fluctuation range adjustment variable list recording data acquisition unit 9 that reads out the fluctuation range adjustment variable list from the fluctuation range adjustment variable list recording unit 8 and stores it in the fluctuation range adjustment variable list storage unit 7;
A fluctuation range adjustment variable list default value acquisition unit 10 that acquires a default value 43 of the fluctuation range adjustment variable list set by the control program 42 and stores the default value 43 in the fluctuation range adjustment variable list storage unit 7;

また、全離散変数のリストと上下限値と最小変動幅を入力する離散変数リスト入力手段11と、
離散変数リストを記憶する離散変数リスト記憶手段12と、
離散変数リストの少なくとも一部をファイル・データベースとして記録する離散変数リスト記録手段13と、
離散変数リスト記録手段13から離散変数リストを読み出して離散変数リスト記憶手12段に記憶させる離散変数リスト記録データ取得手段14と、
制御プログラム42により設定されている離散変数リストのデフォルト値43を取得して離散変数リスト記憶手段13に記憶させる離散変数リストデフォルト値取得手段15と、を備えている。
Also, a discrete variable list input means 11 for inputting a list of all discrete variables, an upper and lower limit value, and a minimum fluctuation range,
Discrete variable list storage means 12 for storing a discrete variable list;
Discrete variable list recording means 13 for recording at least a part of the discrete variable list as a file database;
A discrete variable list recording data acquisition means 14 for reading the discrete variable list from the discrete variable list recording means 13 and storing it in the discrete variable list storage unit 12;
A discrete variable list default value acquisition unit 15 that acquires a default value 43 of the discrete variable list set by the control program 42 and stores it in the discrete variable list storage unit 13.

また、与えられた離散変数値に対する評価関数値を最適化条件記憶手段2内の最適化条件にしたがって演算する評価関数値演算手段17と、
最適化の過程で過去最も評価関数値が優れた解である最適解の離散変数値と評価関数値を記憶する最適解記憶手段18と、
最適化の過程で一時的な解である最良解の離散変数値と評価関数値を記憶する最良解記憶手段19と、
最適化条件記憶手段2から最適化条件を読み出し、離散変数リスト記憶手段12から全離散変数のリストを読み出し、最適化条件を満たすよう全離散変数の初期値を生成し、評価関数値演算手段17により評価関数値を演算し、求められた離散変数値および評価関数値を最適解記憶手段18および最良解記憶手段19に記憶させる初期解生成手段16と、を備えている。
Also, an evaluation function value calculation means 17 for calculating an evaluation function value for a given discrete variable value according to the optimization condition in the optimization condition storage means 2;
Optimal solution storage means 18 for storing discrete variable values and evaluation function values of the optimal solution, which is the solution with the highest evaluation function value in the past in the optimization process;
A best solution storage means 19 for storing discrete variable values and evaluation function values of the best solution which is a temporary solution in the course of optimization;
The optimization conditions are read from the optimization condition storage means 2, the list of all discrete variables is read from the discrete variable list storage means 12, initial values of all the discrete variables are generated so as to satisfy the optimization conditions, and the evaluation function value calculation means 17 And an initial solution generating means 16 for storing the obtained discrete variable values and evaluation function values in the optimal solution storage means 18 and the best solution storage means 19.

また、過去の最良解のリストであるタブーリストを記憶するタブーリスト記憶手段21と、
タブーリストをクリアし、最適解記憶手段18から最適解を読み出してタブーリストに追加し、タブーリストをタブーリスト記憶手段21に記憶させるタブーリスト初期化手段20と、
全隣接状態の離散変数値および評価関数値を記憶する隣接状態記憶手段23と、
最適化条件記憶手段2から最適化条件を読み出し、変動幅調整変数リスト記憶手段7から変動幅を調整する離散変数のリストと変動幅を読み出し、離散変数リスト記憶手段12から変動幅を調整しない離散変数のリストと最小変動幅と全離散変数の上下限値を読み出し、最良解記憶手段19から現在の最良解を構成する離散変数値および評価関数値を読み出し、次の最良解候補である隣接状態を複数生成し、評価関数値演算手段17により全隣接状態の評価関数値を演算し、全隣接状態の離散変数値および評価関数値をメインメモリ41上にあらかじめ領域が確保されている隣接状態記憶手段23に記憶させる、第2近傍生成手段22と、を備えている。
In addition, tabu list storage means 21 for storing a tabu list which is a list of past best solutions;
A tabu list initialization unit 20 that clears the tabu list, reads out the optimum solution from the optimum solution storage unit 18, adds it to the tabu list, and stores the tabu list in the tabu list storage unit 21;
Adjacent state storage means 23 for storing discrete variable values and evaluation function values of all adjacent states;
The optimization condition is read from the optimization condition storage unit 2, the list of discrete variables for adjusting the fluctuation range and the fluctuation range are read from the fluctuation range adjustment variable list storage unit 7, and the discrete range without adjusting the fluctuation range from the discrete variable list storage unit 12. A list of variables, a minimum fluctuation range, and upper and lower limits of all discrete variables are read out, a discrete variable value and an evaluation function value constituting the current best solution are read out from the best solution storage means 19, and an adjacent state which is the next best solution candidate Are generated, and the evaluation function value calculating means 17 calculates the evaluation function values of all adjacent states, and the adjacent state storage in which the area is secured in advance in the main memory 41 for the discrete variable values and evaluation function values of all adjacent states. Second neighborhood generation means 22 to be stored in the means 23.

また、隣接状態記憶手段23から全隣接状態を読み出し、最適解記憶手段18から現在の最適解を読み出し、最良解記憶手段19から現在の最良解を読み出し、全隣接状態と現在の最良解とから次の最良解を選択し、次の最良解を構成する離散変数値および評価関数値を最良解記憶手段19に記憶させ、次の最良解の評価関数値が現在の最適解の評価関数値よりも優れている場合には、次の最良解を構成する離散変数値および評価関数値を最適解記憶手段18に記憶させる、最適解・最良解更新手段24と、
最良解記憶手段19から最良解を読み出し、タブーリスト記憶手段21からタブーリストを読み出し、タブーリストに保存されている最良解の数がタブーリストの長さに達している場合には、タブーリスト内の最も古い最良解を破棄して現在の最良解を追加した新しいタブーリストをタブーリスト記憶手段21に記憶させる、タブーリスト更新手段25と、
最適化条件記憶手段2から最適化条件を読み出して、第2近傍探索を終了するか否かを判定し、終了と判定された場合には第1近傍探索に移行し、そうでない場合には第2近傍生成手段22の処理に復帰させる第2近傍探索終了判定手段26と、
第2近傍生成手段22、最適解・最良解更新手段24、タブーリスト更新手段25および第2近傍探索終了判定手段26の一連の処理を実行する第2近傍探索手段33と、を備えている。
Further, all adjacent states are read from the adjacent state storage means 23, the current optimum solution is read from the optimum solution storage means 18, the current best solution is read from the best solution storage means 19, and the entire adjacent state and the current best solution are obtained. The next best solution is selected, the discrete variable value and the evaluation function value constituting the next best solution are stored in the best solution storage means 19, and the evaluation function value of the next best solution is greater than the evaluation function value of the current optimal solution. If it is also excellent, the optimum solution / best solution updating means 24 for storing the discrete variable values and the evaluation function values constituting the next best solution in the optimum solution storage means 18;
When the best solution is read from the best solution storage means 19 and the taboo list is read from the taboo list storage means 21, the number of the best solutions stored in the taboo list reaches the length of the taboo list. A taboo list update means 25 for causing the taboo list storage means 21 to store a new taboo list in which the oldest best solution is discarded and the current best solution is added;
The optimization condition is read from the optimization condition storage means 2 to determine whether or not to end the second neighborhood search. If it is determined to end, the process proceeds to the first neighborhood search; Second neighborhood search end determining means 26 for returning to the processing of the 2 neighborhood generating means 22;
And second neighborhood search means 33 for executing a series of processes of second neighborhood generation means 22, optimum solution / best solution update means 24, tabu list update means 25, and second neighborhood search end determination means 26.

また、最適解記憶手段18から最適解を読み出して最良解記憶手段19に記憶させる第1近傍探索初期解生成手段27と、
最適化条件記憶手段18から最適化条件を読み出し、離散変数リスト記憶手段12から全離散変数のリストと最小変動幅と上下限値を読み出し、最良解記憶手段19から現在の最良解を構成する離散変数値および評価関数値を読み出し、次の最良解候補である隣接状態を複数生成し、評価関数値演算手段17により全隣接状態の評価関数値を演算し、全隣接状態の離散変数値および評価関数値を隣接状態記憶手段23に記憶させる第1近傍生成手段28と、
最適化条件記憶手段2から最適化条件を読み出して、第1近傍探索を終了するか否かを判定し、終了と判定された場合には第1近傍探索を終了し、そうでない場合には第1近傍生成手段28の処理に復帰させる第1近傍探索終了判定手段29と、
第1近傍生成手段28、最適解・最良解更新手段24、タブーリスト更新手段25および第1近傍探索終了判定手段の一連の処理を実行する第1近傍探索手段34と、を備えている。
A first neighborhood search initial solution generation unit 27 that reads the optimal solution from the optimal solution storage unit 18 and stores it in the best solution storage unit 19;
The optimization conditions are read from the optimization condition storage means 18, the list of all discrete variables, the minimum fluctuation range, and the upper and lower limit values are read from the discrete variable list storage means 12, and the discrete that constitutes the current best solution from the best solution storage means 19. A variable value and an evaluation function value are read, a plurality of adjacent states that are the next best solution candidates are generated, evaluation function values of all adjacent states are calculated by the evaluation function value calculating means 17, and discrete variable values and evaluations of all adjacent states are calculated. First neighborhood generation means 28 for storing the function value in the adjacent state storage means 23;
The optimization condition is read from the optimization condition storage means 2 to determine whether or not to end the first neighborhood search. If it is determined to end, the first neighborhood search is ended. First neighborhood search end determining means 29 for returning to the processing of the 1 neighborhood generating means 28;
A first neighborhood search means for executing a series of processes of a first neighborhood generation means, an optimum solution / best solution update means, a taboo list update means 25, and a first neighborhood search end determination means.

さらに、最適解を構成する離散変数値および評価関数値を出力するディスプレイ、プリンタなどの出力装置46からなる最適化結果出力手段31と、
ファイル・データベースなどとして最適解を構成する離散変数値および評価関数値を記録するハードディスク44などからなる最適化結果記録手段32と、
第1近傍探索の終了後に、最適化結果記録手段32に最適化結果を記録するとともに、最適化結果出力手段31により最適化結果を出力させる最適化結果記録・出力処理手段30と、を備えている。
Further, an optimization result output means 31 comprising an output device 46 such as a display or a printer that outputs discrete variable values and evaluation function values constituting an optimal solution;
An optimization result recording means 32 comprising a hard disk 44 for recording discrete variable values and evaluation function values constituting an optimal solution as a file database, etc .;
An optimization result recording / output processing unit 30 for recording the optimization result in the optimization result recording unit 32 after the first neighborhood search and outputting the optimization result by the optimization result output unit 31; Yes.

このように、第2近傍探索(第1段階の最適化)と第1近傍探索(第2段階の最適化)とを組み合わせることにより、局所解に陥る確率を小さくするとともに、より大域的な解を高速に到達することができる。   Thus, by combining the second neighborhood search (first stage optimization) and the first neighborhood search (second stage optimization), the probability of falling into a local solution is reduced, and a more global solution is obtained. Can be reached fast.

実施の形態2.
なお、上記実施の形態1では、2段階の最適化処理を実行したが、より優れた解を得るために3段階以上の任意段階の最適化処理を実行してもよい。
図4は任意段階の最適化を可能にしたこの発明の実施の形態2に係る組み合わせ最適化システムの全体構成を示すブロック図である。
Embodiment 2. FIG.
In the first embodiment, two stages of optimization processing are executed. However, in order to obtain a better solution, three or more stages of optimization processing may be executed.
FIG. 4 is a block diagram showing the overall configuration of a combinational optimization system according to Embodiment 2 of the present invention that enables optimization at an arbitrary stage.

図4において、前述(図1参照)と同様のものについては、前述と同一符号を付して、または符号の後に「A」を付して詳述を省略する。
この場合、メインメモリ41Aは、前述の構成に加えて、第n近傍を探索するかを表すカウンタ変数nを記憶するカウンタ記憶手段52を備えている。
In FIG. 4, the same components as those described above (see FIG. 1) are denoted by the same reference numerals as those described above, or “A” is appended to the reference numerals and detailed description thereof is omitted.
In this case, the main memory 41A includes a counter storage unit 52 that stores a counter variable n indicating whether to search for the n-th neighborhood in addition to the above-described configuration.

制御プログラム42Aは、前述の第2近傍生成手段22に代えて、カウンタ初期化手段51と、第N−n近傍生成手段53とを備えている。
また、制御プログラム42Aは、前述の第2近傍探索終了判定手段26〜第1近傍探索終了判定手段29に代えて、第N−n近傍探索終了判定手段54と、全探索終了判定手段55と、第N−n近傍探索条件更新手段56とを備えている。
さらに、制御プログラム42Aは、前述の第2近傍探索手段33および第1近傍探索手段34に代えて、第N−n近傍探索手段57を備えている。
The control program 42A includes a counter initialization unit 51 and an N-nth neighborhood generation unit 53 instead of the second neighborhood generation unit 22 described above.
Further, the control program 42A replaces the second neighborhood search end determination means 26 to the first neighborhood search end determination means 29 described above with an N-n neighborhood search end determination means 54, a full search end determination means 55, N-n neighborhood search condition update means 56 is provided.
Furthermore, the control program 42 </ b> A includes an Nn-th neighborhood search unit 57 instead of the second neighborhood search unit 33 and the first neighborhood search unit 34 described above.

カウンタ初期化手段51は、カウンタ記憶手段52から読み出したカウンタ変数nを「0」に設定してカウンタ記憶手段52に記憶させる。
第N−n近傍生成手段53は、最適化条件記憶手段2から読み出した最適化条件と、変動幅調整変数リスト記憶手段7から読み出した、変動幅を調整する離散変数のリストおよび変動幅W_nと、離散変数リスト記憶手段12から読み出した、変動幅を調整しない離散変数のリスト、最小変動幅および全離散変数の上下限値と、最良解記憶手段19から読み出した現在の最良解を構成する離散変数値および評価関数値とに基づいて、次の最良解候補である隣接状態を複数生成し、評価関数値演算手段17により全隣接状態の評価関数値を演算し、全隣接状態の離散変数値および評価関数値を、メインメモリ41A上にあらかじめ領域が確保されている隣接状態記憶手段23に記憶させる。
The counter initialization unit 51 sets the counter variable n read from the counter storage unit 52 to “0” and stores it in the counter storage unit 52.
The N-nth neighborhood generation means 53 includes the optimization condition read from the optimization condition storage means 2, the list of discrete variables for adjusting the fluctuation width and the fluctuation width W_n read from the fluctuation width adjustment variable list storage means 7. The discrete variable list read out from the discrete variable list storage means 12, the list of discrete variables whose fluctuation width is not adjusted, the minimum fluctuation width and the upper and lower limit values of all the discrete variables, and the discrete that constitutes the current best solution read out from the best solution storage means 19 Based on the variable value and the evaluation function value, a plurality of adjacent states which are the next best solution candidates are generated, the evaluation function value calculating means 17 calculates the evaluation function values of all adjacent states, and the discrete variable values of all adjacent states The evaluation function value is stored in the adjacent state storage means 23 in which an area is secured in advance on the main memory 41A.

第N−n近傍探索終了判定手段54は、最適化条件記憶手段2から読み出した最適化条件に基づいて、第N−n近傍探索の終了条件を満たすか否かを判定し、第N−n近傍探索の終了条件を満たすと判定された場合には第N−n近傍探索を終了し、第N−n近傍探索の終了条件を満たさない場合には、第N−n近傍生成手段53の処理に復帰させる。
第N−n近傍探索手段57は、第N−n近傍生成手段53、最適解・最良解更新手段24、タブーリスト更新手段25および第N−n近傍探索終了判定手段54による一連の処理を実行する。
The N-n-th neighbor search end determination unit 54 determines whether or not the N-n-th neighbor search end condition is satisfied based on the optimization condition read from the optimization condition storage unit 2. When it is determined that the end condition of the neighborhood search is satisfied, the N−n neighborhood search is ended. When the end condition of the N−n neighborhood search is not satisfied, the process of the N−n neighborhood generation unit 53 is performed. Return to.
The N-n neighborhood searching unit 57 executes a series of processes by the N-n neighborhood generating unit 53, the optimum solution / best solution updating unit 24, the tabu list updating unit 25, and the N-n neighborhood searching end determining unit 54. To do.

第N−n近傍探索条件更新手段56は、カウンタ記憶手段52から読み出したカウンタ変数nを「n+1」に設定(インクリメント)して、カウンタ記憶手段52に記憶させ、変動幅調整変数リスト記憶手段7から読み出した変動幅W_nを更新して変動幅調整変数リスト記憶手段7に記憶させ、最適解記憶手段18から読み出した最適解を最良解記憶手段19に記憶させる。   The (N−n) th neighbor search condition update unit 56 sets (increments) the counter variable n read from the counter storage unit 52 to “n + 1”, stores the counter variable n in the counter storage unit 52, and the fluctuation range adjustment variable list storage unit 7. The fluctuation range W_n read out from is updated and stored in the fluctuation range adjustment variable list storage unit 7, and the optimal solution read out from the optimal solution storage unit 18 is stored in the best solution storage unit 19.

全探索終了判定手段55は、最適化条件記憶手段2から読み出した最適化条件に基づいて、全探索の終了条件を満たすか否かを判定し、全探索の終了条件を満たすと判定された場合には全探索を終了し、全探索の終了条件を満たさない場合には第N−n近傍探索条件更新手段の処理に移行する。   The full search end determination means 55 determines whether or not the full search end condition is satisfied based on the optimization condition read from the optimization condition storage means 2, and when it is determined that the full search end condition is satisfied If the full search is not satisfied, the process shifts to the process of the N-nth neighborhood search condition update means.

次に、図5のフローチャートを参照しながら、図4の組み合わせ最適化システムにより実行される処理手順について説明する。
図5において、ステップS1〜S4およびS16については、前述(図2参照)と同様の処理なので、ここでは詳述を省略する。
Next, the processing procedure executed by the combinational optimization system of FIG. 4 will be described with reference to the flowchart of FIG.
In FIG. 5, steps S1 to S4 and S16 are the same as those described above (see FIG. 2), and thus detailed description thereof is omitted here.

この場合、ステップS4とステップS16との間に、前述のステップS5〜S15に代えて、ステップS24〜S33が挿入されている。
図5内のステップS25〜S29は、前述(図2)のステップS5〜S9(S11〜S15)に対応し、ステップS33は、前述のステップS10に対応する。
In this case, steps S24 to S33 are inserted between step S4 and step S16 in place of steps S5 to S15 described above.
Steps S25 to S29 in FIG. 5 correspond to steps S5 to S9 (S11 to S15) described above (FIG. 2), and step S33 corresponds to step S10 described above.

まず、前述と同様に、最適化条件を入力または読み出して記憶し(ステップS1)、変動幅を調整する変数を入力または読み出して記憶し(ステップS2)、全離散変数(変動幅を調整しない変数)を入力または読み出して記憶し(ステップS3)、初期解を生成する(ステップS4)。なお、コージェネ電源の運転計画における評価関数値は、前述の式(1)のように演算される。   First, as described above, the optimization condition is input or read and stored (step S1), the variable for adjusting the fluctuation range is input or read and stored (step S2), and all the discrete variables (variables without adjusting the fluctuation band) are stored. ) Is input or read and stored (step S3), and an initial solution is generated (step S4). In addition, the evaluation function value in the operation plan of the cogeneration power source is calculated as the above-described equation (1).

次に、カウンタ初期化手段51により、第n近傍を探索するかを表すカウンタ変数nを「0」に設定し、この設定値(n=0)を、メインメモリ41A上にあらかじめ領域が確保されているカウンタ記憶手段52に記憶させる(ステップS24)。
ただし、以下の説明においては、カウンタ値の最大値を「N」とする。
Next, the counter initialization means 51 sets a counter variable n indicating whether to search for the n-th neighborhood to “0”, and an area is reserved in advance in the main memory 41A for this set value (n = 0). Is stored in the counter storage means 52 (step S24).
However, in the following description, the maximum counter value is “N”.

次に、第N−n近傍探索手段57により、以下のように、最適化の第n段階で第N−n近傍探索の処理を行う。
まず、組み合わせ最適化システムの基本アルゴリズムが、タブー探索を基本としている場合には、タブーリスト初期化手段20により、タブーリストをクリアし、最適解記憶手段18から最適解を読み出してタブーリストに追加し、タブーリストをメインメモリ41A上にあらかじめ領域が確保されているタブーリスト記憶手段21に記憶させる(ステップS25)。
Next, the N-n neighborhood searching means 57 performs the N-n neighborhood searching process at the n-th stage of optimization as follows.
First, when the basic algorithm of the combinatorial optimization system is based on tabu search, the tabu list initialization unit 20 clears the tabu list, reads the optimum solution from the optimum solution storage unit 18, and adds it to the tabu list. Then, the tabu list is stored in the tabu list storage means 21 in which an area is secured in advance on the main memory 41A (step S25).

次に、中央処理装置40は、現在の最良解から変動幅W_nだけ離れた領域の隣接状態の集合(第N−n近傍)を生成して評価関数値を演算するために、メインメモリ41A内の制御プログラム42Aの指令を受けて、第N−n近傍生成手段53により、最適化条件記憶手段2から最適化条件を読み出し、変動幅調整変数リスト記憶手段7から変動幅を調整する離散変数のリストと第N−n近傍探索時の変動幅を読み出し、離散変数リスト記憶手段12から変動幅を調整しない離散変数のリストと最小変動幅と全離散変数の上下限値を読み出し、最良解記憶手段19から現在の最良解を構成する離散変数値および評価関数値を読み出す。   Next, the central processing unit 40 generates a set of adjacent states (near the N−n) in an area separated from the current best solution by the variation width W_n, and calculates an evaluation function value in the main memory 41A. In response to the command of the control program 42A, the N-n-th neighborhood generation means 53 reads the optimization condition from the optimization condition storage means 2, and the discrete variable for adjusting the fluctuation width from the fluctuation width adjustment variable list storage means 7 is read. The list and the fluctuation range at the time of searching for the (N−n) th neighbor are read, the list of discrete variables whose minimum fluctuation width is not adjusted, the minimum fluctuation width, and the upper and lower limit values of all the discrete variables are read from the discrete variable list storage means 12, and the best solution storage means 19, the discrete variable value and the evaluation function value constituting the current best solution are read out.

以下、中央処理装置40は、読み出した各情報に基づき、次の最良解候補である隣接状態を複数生成し、評価関数値演算手段17により全隣接状態の評価関数値を演算し、全隣接状態の離散変数値および評価関数値を、メインメモリ41A上にあらかじめ領域が確保されている隣接状態記憶手段23に記憶させる(ステップS26)。   Thereafter, the central processing unit 40 generates a plurality of adjacent states, which are the next best solution candidates, based on the read information, calculates the evaluation function values of all adjacent states by the evaluation function value calculating means 17, and determines all adjacent states. These discrete variable values and evaluation function values are stored in the adjacent state storage means 23 in which an area is secured in advance on the main memory 41A (step S26).

具体的に述べると、隣接状態は、全離散変数のうちいずれか1つの離散変数の値を以下に示す離散変数ごとに異なる幅だけ増加または減少させることによって生成される。この処理を全離散変数に対して行うことにより、現在の最適解の近傍すなわち隣接状態の集合が生成される。   Specifically, the adjacent state is generated by increasing or decreasing the value of any one of all the discrete variables by a different width for each of the following discrete variables. By performing this process on all discrete variables, a neighborhood of the current optimal solution, that is, a set of adjacent states is generated.

全離散変数のうち、変動幅を調整する離散変数については、調整変数のリストと合わせて取得した変動幅W_nだけ値を変更する。その他の離散変数については、最小変動幅だけ変更される。
ただし、変更した離散変数値が上限値よりも大きい場合には上限値に設定し、下限値よりも小さい場合には下限値に設定して、離散変数を所定範囲内に限定する。
Among all the discrete variables, the value of the discrete variable for adjusting the fluctuation range is changed by the fluctuation range W_n acquired together with the adjustment variable list. For other discrete variables, only the minimum fluctuation range is changed.
However, when the changed discrete variable value is larger than the upper limit value, the upper limit value is set. When the changed discrete variable value is smaller than the lower limit value, the lower limit value is set, thereby limiting the discrete variable within a predetermined range.

次に、中央処理装置40は、最適解および最良解と第N−n近傍の各状態とを比較して、最適解および最良解を更新するために、メインメモリ41A内の制御プログラム42Aの指令を受けて、最適解・最良解更新手段24により、隣接状態記憶手段23から全隣接状態を読み出し、最適解記憶手段18から現在の最適解を読み出し、最良解記憶手段19から現在の最良解を読み出す。   Next, the central processing unit 40 compares the optimum solution and the best solution with the respective states in the vicinity of the (Nn) th and updates the optimum solution and the best solution, so that the command of the control program 42A in the main memory 41A is updated. In response, the optimum solution / best solution update unit 24 reads all adjacent states from the adjacent state storage unit 23, reads the current optimum solution from the optimum solution storage unit 18, and obtains the current best solution from the best solution storage unit 19. read out.

以下、中央処理装置40は、全隣接状態と現在の最良解とから次の最良解を選択し、次の最良解を構成する離散変数値および評価関数値を最良解記憶手段18に記憶させ、次の最良解の評価関数値が現在の最適解の評価関数値よりも優れている場合には、次の最良解を構成する離散変数値および評価関数値を最適解記憶手段18に更新して記憶させる(ステップS27)。   Hereinafter, the central processing unit 40 selects the next best solution from all adjacent states and the current best solution, and stores the discrete variable value and the evaluation function value constituting the next best solution in the best solution storage means 18, If the evaluation function value of the next best solution is superior to the evaluation function value of the current optimum solution, the discrete variable value and the evaluation function value constituting the next best solution are updated in the optimum solution storage means 18. Store (step S27).

次の最良解の具体的な選択方法は、前述と同様に、適用する組み合わせ最適化システムの基本アルゴリズムにしたがう。たとえば、組み合わせ最適化システムが、局所探索を基本としている場合には、全隣接状態のうち最も評価関数値が優れているものを次の最良解とする。また、組み合わせ最適化システムが、タブー探索を基本としている場合には、全隣接状態のうちタブーリスト含まれていないもので最も評価関数値が優れているものを次の最良解とする。   The specific method for selecting the next best solution follows the basic algorithm of the applied combinatorial optimization system, as described above. For example, when the combinatorial optimization system is based on local search, the next best solution is the one with the best evaluation function value among all the adjacent states. When the combinatorial optimization system is based on tabu search, the next best solution is the one that does not include the tabu list and has the highest evaluation function value among all adjacent states.

次に、組み合わせ最適化システムの基本アルゴリズムが、タブー探索を基本としている場合には、タブーリスト更新手段25により、最良解記憶手段19から最良解を読み出し、タブーリスト記憶手段21からタブーリストを読み出して、タブーリストに保存されている最良解の数がタブーリストの長さに達している場合には、タブーリスト内の最も古い最良解を破棄して現在の最良解を追加した新しいタブーリストを、タブーリスト記憶手段21に更新して記憶させる(ステップS28)。   Next, when the basic algorithm of the combinatorial optimization system is based on tabu search, the tabu list update unit 25 reads the best solution from the best solution storage unit 19 and the tabu list storage unit 21 reads the tabu list. If the number of best solutions stored in the taboo list has reached the length of the taboo list, the oldest best solution in the taboo list is discarded and a new taboo list with the current best solution added is added. The taboo list storage means 21 is updated and stored (step S28).

次に、中央処理装置40は、メインメモリ41A内の制御プログラム42Aの指令を受けて、第N−n近傍探索終了判定手段54により、最適化条件記憶手段2から最適化条件を読み出し、第N−n近傍探索を終了する(終了条件を満たす)か否かを判定する(ステップS29)。   Next, the central processing unit 40 receives an instruction from the control program 42A in the main memory 41A, reads out the optimization condition from the optimization condition storage unit 2 by the N-nth neighborhood search end determination unit 54, -N It is determined whether or not the neighborhood search is to be ended (end condition is satisfied) (step S29).

ステップS29において、第N−n近傍探索の終了条件を満たす(すなわち、YES)と判定された場合には全探索終了判定手段55の処理(ステップS30)に移行し、終了条件を満たさない(すなわち、NO)と判定された場合には、第N−n近傍生成手段53の処理(ステップS26)に復帰させる。
上記第N−n近傍生成手段53〜第N−n近傍探索終了判定手段54の処理(ステップS26〜S29)は、第N−n近傍探索の1つのループと見なすことができる。
In step S29, when it is determined that the end condition of the N-nth neighborhood search is satisfied (that is, YES), the process proceeds to the process of all search end determination means 55 (step S30), and the end condition is not satisfied (that is, the end condition is not satisfied). , NO), the process returns to the process (step S26) of the N-n neighborhood generating means 53.
The processing (steps S26 to S29) of the N-n neighborhood generating means 53 to the N-n neighborhood searching end determining means 54 can be regarded as one loop of the N-n neighborhood searching.

なお、ステップS29における終了するか否かの判定は、たとえば、最適化条件で設定されている「第N−n近傍探索の最大ループ回数」、「第N−n近傍探索の収束判定回数」または「第N−n近傍探索の最大探索時間」を用いて行われる。
すなわち、第N−n近傍探索のループ回数が「第N−n近傍探索の最大ループ回数」を越えた場合、「第N−n近傍探索の収束判定回数」が連続して最適解が改善されなかった場合、または、第N−n近傍探索の探索を開始後に「第N−n近傍探索の最大探索時間」が経過した場合に、第N−n近傍探索を終了条件が成立したものと判定される。
Whether or not to end in step S29 is determined by, for example, “the maximum number of loops of the N-n neighborhood search”, “the number of convergence judgments of the N-n neighborhood search” set in the optimization condition or This is performed using the “maximum search time of the (N−n) th neighbor search”.
That is, when the number of loops of the N-n neighborhood search exceeds the “maximum number of loops of the N-n neighborhood search”, the “optimization number of convergence of the N-n neighborhood search” is continuously improved and the optimal solution is improved. If there is not, or if the “maximum search time of the N-n neighborhood search” has elapsed after the search for the N-n neighborhood search has started, it is determined that the end condition for the N-n neighborhood search is satisfied Is done.

次に、全探索終了判定手段55は、最適化条件記憶手段2から最適化条件を読み出して、全探索を終了する(終了条件を満たす)か否かを判定する(ステップS30)。
ステップS30において、全探索の終了条件を満たす(すなわち、YES)と判定された場合には、最適化結果記録・出力処理手段30の最終処理(ステップS16)に移行し、終了条件を満たさない(すなわち、NO)と判定された場合には、第N−n近傍探索条件更新手段56の処理(ステップS31)に移行する。
Next, the full search end determination means 55 reads out the optimization conditions from the optimization condition storage means 2 and determines whether or not to end the full search (end conditions are satisfied) (step S30).
If it is determined in step S30 that the full search end condition is satisfied (that is, YES), the process proceeds to the final process (step S16) of the optimization result recording / output processing means 30 and the end condition is not satisfied (step S16). That is, if it is determined as NO), the process proceeds to the process of the N-nth neighborhood search condition update unit 56 (step S31).

次に、第N−n近傍探索条件更新手段56は、カウンタ記憶手段52からカウンタ変数nを読み出して「n+1」に設定(インクリメント)し、カウンタ記憶手段52に記憶させる(ステップS31)。
また、変動幅調整変数リスト記憶手段7から変動幅W_nを読み出して、更新後の変動幅W_nを変動幅調整変数リスト記憶手段7に記憶させ(ステップS32)、最適解記憶手段18から最適解を読み出して最良解記憶手段19に記憶させることにより、最良解を初期化する(ステップS33)。
Next, the N-nth neighborhood search condition update unit 56 reads the counter variable n from the counter storage unit 52, sets (increments) it to “n + 1”, and stores it in the counter storage unit 52 (step S31).
Further, the fluctuation range W_n is read from the fluctuation range adjustment variable list storage unit 7, the updated fluctuation range W_n is stored in the fluctuation range adjustment variable list storage unit 7 (step S 32), and the optimal solution is stored from the optimal solution storage unit 18. The best solution is initialized by reading it out and storing it in the best solution storage means 19 (step S33).

以下、タブーリスト初期化手段20の処理(ステップS25)に復帰して、第N−n近傍探索(カウンタ変数nは、ステップS31で更新済)を繰り返し実行する。   Thereafter, the process returns to the processing of the tabu list initialization means 20 (step S25), and the N-nth neighborhood search (the counter variable n has been updated in step S31) is repeatedly executed.

なお、変動幅W_nの更新方法としては、順次に小さい値に設定するために、たとえば、前回の探索での変動幅W_nを1/2にすることなどが考えられる。
たとえば、前述の電源運転計画においては、電源のON/OFF状態を変更する時間幅W_nは、「120分」→「60分」→「30分」などと順次に更新される。変動幅W_nの値が最小変動幅に達した場合には、それ以上の更新は行われない。
As a method of updating the fluctuation range W_n, in order to sequentially set a smaller value, for example, the fluctuation range W_n in the previous search may be halved.
For example, in the power supply operation plan described above, the time width W_n for changing the ON / OFF state of the power supply is sequentially updated in the order of “120 minutes” → “60 minutes” → “30 minutes”. When the value of the fluctuation range W_n reaches the minimum fluctuation range, no further update is performed.

また、ステップS30での全探索の終了判定は、たとえば、最適化条件で設定されている「全探索の最大探索時間」を用いて行われる。すなわち、最初の探索を開始後に「全探索の最大探索時間」が経過した場合、または、全離散変数の変動幅W_nが最小変動幅での近傍探索が終了した場合に、全探索の終了条件が成立したものと判定される。   Further, the end determination of the full search in step S30 is performed using, for example, “maximum search time of full search” set in the optimization condition. That is, when the “maximum search time for all search” has elapsed after the start of the first search, or when the neighborhood search with the minimum fluctuation width of the fluctuation width W_n of all the discrete variables has been completed, It is determined that it has been established.

最後に、全近傍探索の終了後に、中央処理装置40は、メインメモリ41A内の制御プログラム42Aの指令を受けて、前述と同様に、最適化結果記録・出力処理手段30により、最適解を構成する離散変数値および評価関数値を、ハードディスク44からなる最適化結果記録手段32にファイル・データベースなどとして記録するとともに、出力装置46からなる最適化結果出力手段31(ディスプレイ、プリンタなど)に、最適解を構成する離散変数値および評価関数値を出力させる。   Finally, after completion of the all-neighbor search, the central processing unit 40 receives an instruction from the control program 42A in the main memory 41A, and configures an optimum solution by the optimization result recording / output processing means 30 as described above. The discrete variable value and the evaluation function value to be recorded are recorded as a file database or the like in the optimization result recording means 32 composed of the hard disk 44 and optimized to the optimization result output means 31 (display, printer, etc.) composed of the output device 46. Output discrete variable values and evaluation function values that constitute the solution.

以上のように、この発明の実施の形態2に係る組み合わせ最適化システムは、前述と同様の構成として、最適化条件入力手段1と、最適化条件記憶手段2と、最適化条件記録手段3と、最適化条件記録データ取得手段4と、最適化条件デフォルト値取得手段5と、変動幅調整変数リスト入力手段6と、変動幅調整変数リスト記憶手段7と、変動幅調整変数リスト記録手段8と、変動幅調整変数リスト記録データ取得手段9と、変動幅調整変数リストデフォルト値取得手段10と、離散変数リスト入力手段11と、離散変数リスト記憶手段12と、離散変数リスト記録手段13と、離散変数リスト記録データ取得手段14と、離散変数リストデフォルト値取得手段15と、評価関数値演算手段17と、最適解記憶手段18と、最良解記憶手段19と、初期解生成手段16と、タブーリスト記憶手段21と、タブーリスト初期化手段20と、隣接状態記憶手段23と、最適解・最良解更新手段24と、タブーリスト更新手段25と、最適化結果出力手段31と、最適化結果記録手段32と、最適化結果記録・出力処理手段30とを備えている。   As described above, the combinational optimization system according to the second embodiment of the present invention has the same configuration as described above, the optimization condition input means 1, the optimization condition storage means 2, the optimization condition recording means 3, and the like. Optimization condition record data acquisition means 4, optimization condition default value acquisition means 5, fluctuation width adjustment variable list input means 6, fluctuation width adjustment variable list storage means 7, fluctuation width adjustment variable list recording means 8, , Fluctuation range adjustment variable list record data acquisition means 9, fluctuation range adjustment variable list default value acquisition means 10, discrete variable list input means 11, discrete variable list storage means 12, discrete variable list recording means 13, discrete Variable list record data acquisition means 14, discrete variable list default value acquisition means 15, evaluation function value calculation means 17, optimum solution storage means 18, and best solution storage means 1 An initial solution generating unit 16, a taboo list storage unit 21, a taboo list initialization unit 20, an adjacent state storage unit 23, an optimum solution / best solution update unit 24, a taboo list update unit 25, and an optimization. A result output unit 31, an optimization result recording unit 32, and an optimization result recording / output processing unit 30 are provided.

また、前述とは異なる構成として、第n近傍を探索するかを表すカウンタ変数nを記憶するカウンタ記憶手段52と、カウンタ記憶手段52から第n近傍を探索するかを表すカウンタ変数nを「0」に設定し、カウンタ記憶手段に記憶させるカウンタ初期化手段51と、第N−n近傍生成手段53と、第N−n近傍探索手段57と、第N−n近傍探索条件更新手段56と、全探索終了判定手段55とを備えている。   Further, as a configuration different from that described above, a counter storage unit 52 that stores a counter variable n that indicates whether to search for the nth neighborhood, and a counter variable n that indicates whether to search for the nth neighborhood from the counter storage unit 52 are set to “0”. Counter initializing means 51, Nn neighborhood generating means 53, Nn neighborhood searching means 57, Nn neighborhood searching condition updating means 56, And an all-search end judging means 55.

第N−n近傍生成手段53は、最適化条件記憶手段2から最適化条件を読み出し、変動幅調整変数リスト記憶手段7から、変動幅を調整する離散変数のリストおよび変動幅W_nを読み出し、離散変数リスト記憶手段12から、変動幅を調整しない離散変数のリスト、最小変動幅および全離散変数の上下限値を読み出し、最良解記憶手段19から現在の最良解を構成する離散変数値および評価関数値を読み出して、次の最良解候補である隣接状態を複数生成し、評価関数値演算手段17により全隣接状態の評価関数値を演算し、全隣接状態の離散変数値および評価関数値を隣接状態記憶手段23に記憶させる。   The N-nth neighborhood generation means 53 reads the optimization condition from the optimization condition storage means 2, reads the list of discrete variables for adjusting the fluctuation width and the fluctuation width W_n from the fluctuation width adjustment variable list storage means 7, A list of discrete variables whose fluctuation width is not adjusted, a minimum fluctuation width, and upper and lower limit values of all the discrete variables are read from the variable list storage means 12, and discrete variable values and evaluation functions constituting the current best solution from the best solution storage means 19 A value is read to generate a plurality of adjacent states which are the next best solution candidates, the evaluation function value calculating means 17 calculates the evaluation function values of all adjacent states, and the discrete variable values and evaluation function values of all adjacent states are adjacent It is stored in the state storage means 23.

第N−n近傍探索終了判定手段54は、最適化条件記憶手段2から最適化条件を読み出して、第N−n近傍探索を終了するか否かを判定し、終了と判定された場合には第N−n近傍探索を終了し、そうでない場合には第N−n近傍生成手段53の処理に復帰させる。
第N−n近傍探索手段57は、第N−n近傍生成手段53、最適解・最良解更新手段24、タブーリスト更新手段25および第N−n近傍探索終了判定手段56の一連の処理を実行する。
The N-n neighborhood search end determination means 54 reads the optimization condition from the optimization condition storage means 2 and determines whether or not to end the N-n neighborhood search. The N-n neighborhood search is terminated, and if not, the process returns to the process of the N-n neighborhood generation means 53.
The N-n neighborhood searching unit 57 executes a series of processes of the N-n neighborhood generating unit 53, the optimum solution / best solution updating unit 24, the tabu list updating unit 25, and the N-n neighborhood searching end determining unit 56. To do.

第N−n近傍探索条件更新手段56は、カウンタ記憶手段52からカウンタ変数nを読み出し、「n+1」に設定(インクリメント)してカウンタ記憶手段52に記憶させ、変動幅調整変数リスト記憶手段7から変動幅W_nを読み出して更新後の変動幅W_nを変動幅調整変数リスト記憶手段7に更新記憶させ、最適解記憶手段18から最適解を読み出して最良解記憶手段19に記憶させる。
全探索終了判定手段55は、最適化条件記憶手段2から最適化条件を読み出して、全探索を終了するか否かを判定し、終了と判定された場合には全探索を終了し、そうでない場合には第N−n近傍探索条件更新手段56の処理に移行する。
The (N−n) th neighbor search condition update unit 56 reads the counter variable n from the counter storage unit 52, sets (increments) the counter variable n to “n + 1”, stores the counter variable n in the counter storage unit 52, and the fluctuation range adjustment variable list storage unit 7. The fluctuation range W_n is read and the updated fluctuation range W_n is updated and stored in the fluctuation range adjustment variable list storage unit 7, and the optimal solution is read out from the optimal solution storage unit 18 and stored in the best solution storage unit 19.
The full search end determination means 55 reads out the optimization conditions from the optimization condition storage means 2 and determines whether or not to end the full search. When it is determined that the search is complete, the full search is ended. In this case, the process proceeds to the process of the N-nth neighborhood search condition update unit 56.

このように、一部または全離散変数の変動幅を大きいものから、段階的に小さく設定して大域的な探索を行い、最適解が存在することが有望な集中探索する領域を高速に特定し、最終的に、離散変数の変動幅を最小変動幅に設定して、有望な領域を集中探索する近傍探索を組み合わせることにより、前述と同様に、局所解に陥る確率を小さくするとともに、より大域的な解を高速に到達することができる。
また、前述の実施の形態1と比べて、長い時間を要するものの、最適解の信頼性をさらに向上させることができる。
In this way, a global search is performed by setting the fluctuation range of some or all discrete variables from a large one to a small one in a stepwise manner, and a region for concentrated search where an optimal solution is promising is identified at high speed. Finally, by setting the fluctuation range of the discrete variable to the minimum fluctuation range and combining the neighborhood search that concentrates the promising area, the probability of falling into a local solution is reduced as described above, and more global A realistic solution can be reached at high speed.
In addition, although it takes a longer time than the first embodiment, the reliability of the optimum solution can be further improved.

この発明の実施の形態1に係る組み合わせ最適化システムの全体構成を示すブロック図である。It is a block diagram which shows the whole structure of the combination optimization system which concerns on Embodiment 1 of this invention. この発明の実施の形態1に係る組み合わせ最適化システムの動作を示すフローチャートである。It is a flowchart which shows operation | movement of the combination optimization system which concerns on Embodiment 1 of this invention. この発明の実施の形態1に係る組み合わせ最適化システムのイメージを示す説明図である。It is explanatory drawing which shows the image of the combination optimization system which concerns on Embodiment 1 of this invention. この発明の実施の形態2に係る組み合わせ最適化システムの全体構成を示すブロック図である。It is a block diagram which shows the whole structure of the combination optimization system which concerns on Embodiment 2 of this invention. この発明の実施の形態2に係る組み合わせ最適化システムの動作を示すフローチャートである。It is a flowchart which shows operation | movement of the combination optimization system which concerns on Embodiment 2 of this invention. 従来の組み合わせ最適化システムのイメージを示す説明図である。It is explanatory drawing which shows the image of the conventional combination optimization system.

符号の説明Explanation of symbols

1 最適化条件入力手段、2 最適化条件記憶手段、3 最適化条件記録手段、4 最適化条件記録データ取得手段、5 最適化条件デフォルト値取得手段、6 変動幅調整変数リスト入力手段、7 変動幅調整変数リスト記憶手段、8 変動幅調整変数リスト記録手段、9 変動幅調整変数リスト記録データ取得手段、10 変動幅調整変数リストデフォルト値取得手段、11 離散変数リスト入力手段、12 離散変数リスト記憶手段、13 離散変数リスト記録手段、14 離散変数リスト記録データ取得手段、15 離散変数リストデフォルト値取得手段、16 初期解生成手段、17 評価関数値演算手段、18 最適解記憶手段、19 最良解記憶手段、20 タブーリスト初期化手段、21 タブーリスト記憶手段、22 第2近傍生成手段、23 隣接状態記憶手段、24 最良解・最適解更新手段、25 タブーリスト更新手段、26 第2近傍探索終了判定手段、27 第1近傍探索初期解生成手段、28 第1近傍生成手段、29 第1近傍探索終了判定手段、30 最適化結果記録・出力処理手段、31 最適化結果出力手段、32 最適化結果記録手段、33 第2近傍探索手段、34 第1近傍探索手段、40 中央処理装置、41、41A メインメモリ、42、42A 制御プログラム、43 デフォルト値、44 ハードディスク、45 入力装置、46 出力装置、47 バス、51 カウンタ初期化手段、52 カウンタ記憶手段、53 第N−n近傍生成手段、54 第N−n近傍探索終了判定手段、55 全探索終了判定手段、56 第N−n近傍探索条件更新手段、57 第N−n近傍探索手段。   1 optimization condition input means, 2 optimization condition storage means, 3 optimization condition recording means, 4 optimization condition record data acquisition means, 5 optimization condition default value acquisition means, 6 fluctuation range adjustment variable list input means, 7 fluctuation Width adjustment variable list storage means, 8 fluctuation width adjustment variable list recording means, 9 fluctuation width adjustment variable list record data acquisition means, 10 fluctuation width adjustment variable list default value acquisition means, 11 discrete variable list input means, 12 discrete variable list storage Means, 13 discrete variable list recording means, 14 discrete variable list recorded data acquisition means, 15 discrete variable list default value acquisition means, 16 initial solution generation means, 17 evaluation function value calculation means, 18 optimal solution storage means, 19 best solution storage Means, 20 tabu list initialization means, 21 tabu list storage means, 22 second neighborhood generation means 23 adjacent state storage means, 24 best solution / optimum solution update means, 25 taboo list update means, 26 second neighborhood search end determination means, 27 first neighborhood search initial solution generation means, 28 first neighborhood generation means, 29 first Neighborhood search end determination means, 30 optimization result recording / output processing means, 31 optimization result output means, 32 optimization result recording means, 33 second neighborhood search means, 34 first neighborhood search means, 40 central processing unit, 41 , 41A main memory, 42, 42A control program, 43 default value, 44 hard disk, 45 input device, 46 output device, 47 bus, 51 counter initialization means, 52 counter storage means, 53 N-n neighborhood generating means, 54 N-n neighborhood search end determination means, 55 full search end determination means, 56 N-n neighborhood search condition update means, 5 The N-n local search means.

Claims (7)

組み合わせ最適化問題を解くための組み合わせ最適化システムであって、
最適化条件、全離散変数のリストと最小変動幅・上下限値とで定義される離散変数リスト、および、最適化の過程で変動幅を調整する離散変数のリストとこれら離散変数のリストの各初期変動幅とで定義される変動幅調整変数リスト、を記憶する記憶手段と、
探索の初期では前記変動幅調整変数リストの変動幅を前記初期変動幅で変動させながら最適化を行う第2近傍探索手段と、
前記第2近傍探索手段による第2近傍探索の終了後に、全離散変数の変動幅を前記最小変動幅で変動させながら最適化を行う第1近傍探索手段と、
前記第2近傍探索と前記第1近傍探索手段による第1近傍探索とを実行する制御プログラムと
を備えたことを特徴とする組み合わせ最適化システム。
A combinatorial optimization system for solving combinatorial optimization problems,
Each of the optimization conditions, the discrete variable list defined by the list of all discrete variables and the minimum fluctuation range / upper and lower limit values, and the list of discrete variables that adjust the fluctuation range during the optimization process and the list of these discrete variables Storage means for storing a fluctuation range adjustment variable list defined by the initial fluctuation range;
A second neighborhood search means for performing optimization while varying the fluctuation range of the fluctuation range adjustment variable list at the initial fluctuation range at an initial stage of the search;
First neighborhood search means for performing optimization while changing the fluctuation range of all discrete variables by the minimum fluctuation range after the second neighborhood search by the second neighborhood search means;
A combination optimization system, comprising: a control program that executes the second neighborhood search and the first neighborhood search by the first neighborhood search means.
前記最適化条件は、最適化の目的、制約条件および設備データを含むことを特徴とする請求項1に記載の組み合わせ最適化システム。   The combination optimization system according to claim 1, wherein the optimization condition includes an optimization purpose, a constraint condition, and facility data. 前記最適化条件、前記離散変数リストおよび前記変動幅調整変数リストを入力する入力手段と、
前記最適化条件、前記離散変数リストおよび前記変動幅調整変数リストの少なくとも一部をファイル・データベースとして記録する記録手段と、
前記記録手段から前記最適化条件、前記離散変数リストおよび前記変動幅調整変数リストを読み出して前記記憶手段に記憶させる記録データ取得手段と、
前記最適化条件、前記離散変数リストおよび前記変動幅調整変数リストのデフォルト値を取得して前記記憶手段に記憶させるデフォルト値取得手段と、
与えられた離散変数値に対する評価関数値を前記最適化条件にしたがって演算する評価関数値演算手段と、
前記最適化の過程で過去最も評価関数値が優れた解である最適解を構成する離散変数値および評価関数値を記憶する最適解記憶手段と、
前記最適化の過程での一時的な解である最良解を構成する離散変数値および評価関数値を記憶する最良解記憶手段と、
前記記憶手段から全離散変数のリストを読み出して、前記記憶手段から読み出した最適化条件を満たすように前記全離散変数の初期値を生成し、前記評価関数値演算手段で演算された評価関数値を前記最適解記憶手段および前記最良解記憶手段に記憶させる初期解生成手段と、
過去の最良解のリストからなるタブーリストを記憶するタブーリスト記憶手段と、
前記タブーリストをクリアして、前記最適解記憶手段から読み出した最適解を追加したタブーリストを前記タブーリスト記憶手段に記憶させるタブーリスト初期化手段と、
前記記憶手段から読み出した最適化条件、変動幅を調整する離散変数のリストおよび変動幅、変動幅を調整しない離散変数のリスト、最小変動幅および全離散変数の上下限値と、前記最良解記憶手段から読み出した現在の最良解を構成する離散変数値および評価関数値とに基づいて、次の最良解候補である隣接状態を複数生成し、前記評価関数値演算手段により全隣接状態の評価関数値を演算し、前記全隣接状態の離散変数値および評価関数値を前記記憶手段に記憶させる第2近傍生成手段と、
前記記憶手段から全隣接状態を読み出し、前記最適解記憶手段および前記最良解記憶手段から現在の最適解および最良解を読み出して、前記全隣接状態と現在の最良解とから次の最良解を選択し、前記次の最良解を構成する離散変数値および評価関数値を前記最良解記憶手段に記憶させ、前記次の最良解の評価関数値が現在の最適解の評価関数値よりも優れている場合には、前記次の最良解を構成する離散変数値および評価関数値を前記最適解記憶手段に記憶させる最適解・最良解更新手段と、
前記最良解記憶手段から最良解を読み出し、前記タブーリスト記憶手段からタブーリストを読み出し、前記タブーリストに保存されている最良解の数が前記タブーリストの長さに達している場合には、前記タブーリスト内の最も古い最良解を破棄して現在の最良解を追加した新しいタブーリストを前記タブーリスト記憶手段に記憶させるタブーリスト更新手段と、
前記記憶手段から読み出した最適化条件に基づいて、前記第2近傍探索の終了条件を満たすか否かを判定し、前記第2近傍探索の終了条件を満たすと判定された場合には前記第1近傍探索に移行し、前記第2近傍探索の終了条件を満たさない場合には、前記第2近傍生成手段の処理に復帰させる第2近傍探索終了判定手段とを備え、
前記第2近傍探索手段は、前記第2近傍生成手段、前記最適解・最良解更新手段、前記タブーリスト更新手段および前記第2近傍探索終了判定手段による一連の処理を実行することを特徴とする請求項1または請求項2に記載の組み合わせ最適化システム。
Input means for inputting the optimization condition, the discrete variable list, and the fluctuation range adjustment variable list;
Recording means for recording at least a part of the optimization condition, the discrete variable list, and the variation adjustment variable list as a file database;
Recording data acquisition means for reading out the optimization condition, the discrete variable list and the fluctuation range adjustment variable list from the recording means and storing them in the storage means;
Default value acquisition means for acquiring default values of the optimization condition, the discrete variable list and the fluctuation range adjustment variable list and storing the default values in the storage means;
An evaluation function value calculating means for calculating an evaluation function value for a given discrete variable value according to the optimization condition;
Optimal solution storage means for storing discrete variable values and evaluation function values constituting an optimal solution that is the solution with the best evaluation function value in the past in the optimization process;
Best solution storage means for storing discrete variable values and evaluation function values constituting the best solution which is a temporary solution in the optimization process;
Reading out a list of all discrete variables from the storage means, generating initial values of the all discrete variables so as to satisfy the optimization condition read from the storage means, and an evaluation function value calculated by the evaluation function value calculation means Initial solution generation means for storing the optimum solution storage means and the best solution storage means;
A taboo list storage means for storing a taboo list including a list of past best solutions;
Tabu list initialization means for clearing the tabu list and storing the tabu list added with the optimum solution read from the optimum solution storage means in the tabu list storage means;
Optimization conditions read from the storage means, a list and fluctuation range of discrete variables that adjust the fluctuation range, a list of discrete variables that do not adjust the fluctuation range, the minimum fluctuation range and the upper and lower limit values of all the discrete variables, and the best solution storage Based on the discrete variable value and the evaluation function value constituting the current best solution read from the means, a plurality of adjacent states that are the next best solution candidates are generated, and the evaluation function of all adjacent states is calculated by the evaluation function value calculation means A second neighborhood generating means for calculating a value and storing the discrete variable values and the evaluation function values of the all adjacent states in the storage means;
Reads out all adjacent states from the storage means, reads out the current optimum solution and the best solution from the optimum solution storage means and the best solution storage means, and selects the next best solution from the all adjacent states and the current best solution The discrete variable values and evaluation function values constituting the next best solution are stored in the best solution storage means, and the evaluation function value of the next best solution is superior to the evaluation function value of the current optimal solution In this case, the optimum solution / best solution update means for storing the discrete variable value and the evaluation function value constituting the next best solution in the optimum solution storage means;
The best solution is read from the best solution storage means, the taboo list is read from the taboo list storage means, and the number of the best solutions stored in the taboo list reaches the length of the taboo list, A taboo list update means for discarding the oldest best solution in the taboo list and storing a new taboo list in which the current best solution is added to the taboo list storage means;
Based on the optimization condition read from the storage means, it is determined whether or not an end condition for the second neighborhood search is satisfied. If it is determined that the end condition for the second neighborhood search is satisfied, the first condition is determined. Transition to neighborhood search, and if the second neighborhood search end condition is not satisfied, the second neighborhood search end determination means for returning to the processing of the second neighborhood generation means,
The second neighborhood search means executes a series of processes by the second neighborhood generation means, the optimum solution / best solution update means, the taboo list update means, and the second neighborhood search end determination means. The combinational optimization system according to claim 1 or 2.
前記最適解記憶手段から最適解を読み出して前記最良解記憶手段に記憶させる第1近傍探索初期解生成手段と、
前記記憶手段から読み出した最適化条件、全離散変数に関するリスト、最小変動幅および上下限値と、前記最良解記憶手段から読み出した現在の最良解を構成する離散変数値および評価関数値とに基づいて、次の最良解候補である隣接状態を複数生成し、前記評価関数値演算手段により全隣接状態の評価関数値を演算し、前記全隣接状態の離散変数値および評価関数値を前記隣接状態記憶手段に記憶させる第1近傍生成手段と、
前記記憶手段から読み出した最適化条件に基づいて、前記第1近傍探索の終了条件を満たすか否かを判定し、前記第1近傍探索の終了条件を満たすと判定された場合には前記第1近傍探索を終了し、前記第1近傍探索の終了条件を満たさない場合には、前記第1近傍生成手段の処理に復帰させる第1近傍探索終了判定手段と、
前記最適解を構成する離散変数値および評価関数値を出力する最適化結果出力手段と、
前記最適解を構成する離散変数値および評価関数値をファイル・データベースとして記録する最適化結果記録手段と、
前記第1近傍探索の終了後に、前記最適化結果記録手段に最適化結果を記録するとともに、前記最適化結果出力手段により前記最適化結果を出力させる最適化結果記録・出力処理手段とを備え、
前記第1近傍探索手段は、前記第1近傍生成手段、前記最適解・最良解更新手段、前記タブーリスト更新手段および前記第1近傍探索終了判定手段による一連の処理を実行することを特徴とする請求項3に記載の組み合わせ最適化システム。
First neighborhood search initial solution generation means for reading the optimum solution from the optimum solution storage means and storing the optimum solution in the best solution storage means;
Based on the optimization conditions read from the storage means, the list of all discrete variables, the minimum fluctuation range and the upper and lower limit values, and the discrete variable values and evaluation function values constituting the current best solution read from the best solution storage means A plurality of adjacent states that are the next best solution candidates, the evaluation function value calculating means calculates the evaluation function value of all adjacent states, and the discrete variable value and evaluation function value of all adjacent states are calculated as the adjacent state. First neighborhood generation means to be stored in the storage means;
Based on the optimization condition read from the storage means, it is determined whether or not an end condition for the first neighborhood search is satisfied. If it is determined that the end condition for the first neighborhood search is satisfied, the first condition is determined. A first neighborhood search termination determination unit that terminates the neighborhood search and returns to the process of the first neighborhood generation unit when the termination condition of the first neighborhood search is not satisfied;
Optimization result output means for outputting discrete variable values and evaluation function values constituting the optimal solution;
Optimization result recording means for recording discrete variable values and evaluation function values constituting the optimal solution as a file database;
An optimization result recording / output processing means for recording the optimization result in the optimization result recording means after the first neighborhood search and outputting the optimization result by the optimization result output means;
The first neighborhood searching means executes a series of processing by the first neighborhood generating means, the optimum solution / best solution updating means, the taboo list updating means, and the first neighborhood search end judging means. The combination optimization system according to claim 3.
組み合わせ最適化問題を解くための組み合わせ最適化システムであって、
最適化条件、全離散変数のリストと最小変動幅・上下限値とで定義される離散変数リスト、最適化の過程で変動幅を調整する離散変数のリストとこれら離散変数のリストの各初期変動幅とで定義される変動幅調整変数リスト、および、近傍探索の段階を示すカウンタ変数、を記憶する記憶手段と、
前記カウンタ変数が値nのときに、前記変動幅調整変数リストの変動幅を前記カウンタ変数の値nごとに異なる変動幅W_nで変動させながら最適化を行う第N−n近傍探索手段と、
前記カウンタ変数の値nを更新するカウンタ変数更新手段と、
前記第N−n近傍探索手段による第N−n近傍探索の実行時の変動幅W_nを更新する変動幅更新手段と、
前記カウンタ変数の値nを増加させながら前記第N−n近傍探索を順次実行する制御プログラムと
を備えたことを特徴とする組み合わせ最適化システム。
A combinatorial optimization system for solving combinatorial optimization problems,
Optimization conditions, a list of all discrete variables, a list of discrete variables defined by the minimum fluctuation range and upper and lower limits, a list of discrete variables that adjust the fluctuation range during the optimization process, and each initial fluctuation of the list of these discrete variables Storage means for storing a variable range adjustment variable list defined by the width, and a counter variable indicating a neighborhood search stage;
N-th neighbor search means for performing optimization while varying the variation width of the variation adjustment variable list with a variation width W_n different for each value n of the counter variable when the counter variable is a value n;
Counter variable updating means for updating the value n of the counter variable;
A fluctuation range updating unit for updating a fluctuation range W_n at the time of execution of the Nn-th neighborhood search by the N-n neighborhood search unit;
And a control program for sequentially executing the N-n-th neighborhood search while increasing the value n of the counter variable.
前記最適化条件は、最適化の目的、制約条件および設備データを含むことを特徴とする請求項5に記載の組み合わせ最適化システム。   The combination optimization system according to claim 5, wherein the optimization condition includes an optimization purpose, a constraint condition, and facility data. 前記最適化条件、前記離散変数リストおよび前記変動幅調整変数リストを入力する入力手段と、
前記最適化条件、前記離散変数リストおよび前記変動幅調整変数リストの少なくとも一部をファイル・データベースとして記録する記録手段と、
前記記録手段から前記最適化条件、前記離散変数リストおよび前記変動幅調整変数リストを読み出して前記記憶手段に記憶させる記録データ取得手段と、
前記最適化条件、前記離散変数リストおよび前記変動幅調整変数リストのデフォルト値を取得して前記記憶手段に記憶させるデフォルト値取得手段と、
与えられた離散変数値に対する評価関数値を前記最適化条件にしたがって演算する評価関数値演算手段と、
前記最適化の過程で過去最も評価関数値が優れた解である最適解を構成する離散変数値および評価関数値を記憶する最適解記憶手段と、
前記最適化の過程での一時的な解である最良解を構成する離散変数値および評価関数値を記憶する最良解記憶手段と、
前記記憶手段から全離散変数のリストを読み出して、前記記憶手段から読み出した最適化条件を満たすように前記全離散変数の初期値を生成し、前記評価関数値演算手段で演算された評価関数値を前記最適解記憶手段および前記最良解記憶手段に記憶させる初期解生成手段と、
前記記憶手段から読み出したカウンタ変数の値nを「0」に設定して前記カウンタ記憶手段に記憶させるカウンタ初期化手段と、
過去の最良解のリストからなるタブーリストを記憶するタブーリスト記憶手段と、
前記タブーリストをクリアして、前記最適解記憶手段から読み出した最適解を追加したタブーリストを前記タブーリスト記憶手段に記憶させるタブーリスト初期化手段と、
前記記憶手段から読み出した最適化条件、変動幅を調整する離散変数のリストおよび変動幅W_n、変動幅を調整しない離散変数のリスト、最小変動幅および全離散変数の上下限値と、前記最良解記憶手段から読み出した現在の最良解を構成する離散変数値および評価関数値とに基づいて、次の最良解候補である隣接状態を複数生成し、前記評価関数値演算手段により全隣接状態の評価関数値を演算し、前記全隣接状態の離散変数値および評価関数値を前記記憶手段に記憶させる第N−n近傍生成手段と、
前記記憶手段から全隣接状態を読み出し、前記最適解記憶手段および前記最良解記憶手段から現在の最適解および最良解を読み出して、前記全隣接状態と現在の最良解とから次の最良解を選択し、前記次の最良解を構成する離散変数値および評価関数値を前記最良解記憶手段に記憶させ、前記次の最良解の評価関数値が現在の最適解の評価関数値よりも優れている場合には、前記次の最良解を構成する離散変数値および評価関数値を前記最適解記憶手段に記憶させる最適解・最良解更新手段と、
前記最良解記憶手段から最良解を読み出し、前記タブーリスト記憶手段からタブーリストを読み出し、前記タブーリストに保存されている最良解の数が前記タブーリストの長さに達している場合には、前記タブーリスト内の最も古い最良解を破棄して現在の最良解を追加した新しいタブーリストを前記タブーリスト記憶手段に記憶させるタブーリスト更新手段と、
前記記憶手段から読み出した最適化条件に基づいて、前記第N−n近傍探索の終了条件を満たすか否かを判定し、前記第N−n近傍探索の終了条件を満たすと判定された場合には前記第N−n近傍探索を終了し、前記第N−n近傍探索の終了条件を満たさない場合には、前記第N−n近傍生成手段の処理に復帰させる第N−n近傍探索終了判定手段と、
前記カウンタ記憶手段から読み出したカウンタ変数nを「n+1」に設定して前記カウンタ記憶手段に記憶させ、前記変動幅調整変数リスト記憶手段から読み出した変動幅W_nを更新して前記変動幅調整変数リスト記憶手段に記憶させ、前記最適解記憶手段から読み出した最適解を前記最良解記憶手段に記憶させる第N−n近傍探索条件更新手段と、
前記記憶手段から読み出した最適化条件に基づいて、全探索の終了条件を満たすか否かを判定し、前記全探索の終了条件を満たすと判定された場合には前記全探索を終了し、前記全探索の終了条件を満たさない場合には前記第N−n近傍探索条件更新手段の処理に移行する全探索終了判定手段と、
前記最適解を構成する離散変数値および評価関数値を出力する最適化結果出力手段と、
前記最適解を構成する離散変数値および評価関数値をファイル・データベースとして記録する最適化結果記録手段と、
前記全探索の終了後に、前記最適化結果記録手段に最適化結果を記録するとともに、前記最適化結果出力手段により前記最適化結果を出力させる最適化結果記録・出力処理手段とを備え、
前記第N−n近傍探索手段は、前記第N−n近傍生成手段、前記最適解・最良解更新手段、前記タブーリスト更新手段および前記第N−n近傍探索終了判定手段による一連の処理を実行することを特徴とする請求項5または請求項6に記載の組み合わせ最適化システム。
Input means for inputting the optimization condition, the discrete variable list, and the fluctuation range adjustment variable list;
Recording means for recording at least a part of the optimization condition, the discrete variable list, and the variation adjustment variable list as a file database;
Recording data acquisition means for reading out the optimization condition, the discrete variable list and the fluctuation range adjustment variable list from the recording means and storing them in the storage means;
Default value acquisition means for acquiring default values of the optimization condition, the discrete variable list and the fluctuation range adjustment variable list and storing the default values in the storage means;
An evaluation function value calculating means for calculating an evaluation function value for a given discrete variable value according to the optimization condition;
Optimal solution storage means for storing discrete variable values and evaluation function values constituting an optimal solution that is the solution with the best evaluation function value in the past in the optimization process;
Best solution storage means for storing discrete variable values and evaluation function values constituting the best solution which is a temporary solution in the optimization process;
Reading out a list of all discrete variables from the storage means, generating initial values of the all discrete variables so as to satisfy the optimization condition read from the storage means, and an evaluation function value calculated by the evaluation function value calculation means Initial solution generation means for storing the optimum solution storage means and the best solution storage means;
Counter initialization means for setting the value n of the counter variable read from the storage means to "0" and storing it in the counter storage means;
A taboo list storage means for storing a taboo list including a list of past best solutions;
Tabu list initialization means for clearing the tabu list and storing the tabu list added with the optimum solution read from the optimum solution storage means in the tabu list storage means;
Optimization conditions read from the storage means, discrete variable list and fluctuation range W_n for adjusting the fluctuation range, discrete variable list without fluctuation range adjustment, minimum fluctuation range and upper and lower limit values of all discrete variables, and the best solution Based on the discrete variable value and the evaluation function value constituting the current best solution read from the storage means, a plurality of adjacent states that are the next best solution candidates are generated, and the evaluation function value calculating means evaluates all adjacent states. An N−n-th neighborhood generating unit that calculates a function value and stores the discrete variable value and the evaluation function value in the all adjacent states in the storage unit;
Reads out all adjacent states from the storage means, reads out the current optimum solution and the best solution from the optimum solution storage means and the best solution storage means, and selects the next best solution from the all adjacent states and the current best solution The discrete variable values and evaluation function values constituting the next best solution are stored in the best solution storage means, and the evaluation function value of the next best solution is superior to the evaluation function value of the current optimal solution In this case, the optimum solution / best solution update means for storing the discrete variable value and the evaluation function value constituting the next best solution in the optimum solution storage means;
The best solution is read from the best solution storage means, the taboo list is read from the taboo list storage means, and the number of the best solutions stored in the taboo list reaches the length of the taboo list, A taboo list update means for discarding the oldest best solution in the taboo list and storing a new taboo list in which the current best solution is added to the taboo list storage means;
Based on the optimization condition read from the storage means, it is determined whether or not the end condition of the N-n neighborhood search is satisfied, and when it is determined that the end condition of the N-n neighborhood search is satisfied Terminates the N-n neighborhood search, and if the N-n neighborhood search termination condition is not satisfied, returns to the process of the N-n neighborhood generation means to return to the N-n neighborhood search termination determination. Means,
The counter variable n read from the counter storage means is set to “n + 1” and stored in the counter storage means, and the fluctuation width W_n read from the fluctuation width adjustment variable list storage means is updated to change the fluctuation width adjustment variable list. N-n-th neighborhood search condition update means for storing in the storage means and storing the optimum solution read from the optimum solution storage means in the best solution storage means;
Based on the optimization condition read from the storage means, determine whether or not the end condition of the full search is satisfied, and if it is determined that the end condition of the full search is satisfied, end the full search, A full search end determination unit that shifts to the process of the N-n neighborhood search condition update unit when the full search end condition is not satisfied;
Optimization result output means for outputting discrete variable values and evaluation function values constituting the optimal solution;
Optimization result recording means for recording discrete variable values and evaluation function values constituting the optimal solution as a file database;
An optimization result recording / output processing means for recording the optimization result in the optimization result recording means after completion of the full search and outputting the optimization result by the optimization result output means;
The N-n neighborhood search means executes a series of processes by the N-n neighborhood generation means, the optimum solution / best solution update means, the tabu list update means, and the N-n neighborhood search end determination means. The combinational optimization system according to claim 5 or 6, characterized in that:
JP2007212694A 2007-08-17 2007-08-17 Combinatorial optimization system Pending JP2009048353A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007212694A JP2009048353A (en) 2007-08-17 2007-08-17 Combinatorial optimization system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007212694A JP2009048353A (en) 2007-08-17 2007-08-17 Combinatorial optimization system

Publications (1)

Publication Number Publication Date
JP2009048353A true JP2009048353A (en) 2009-03-05

Family

ID=40500519

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007212694A Pending JP2009048353A (en) 2007-08-17 2007-08-17 Combinatorial optimization system

Country Status (1)

Country Link
JP (1) JP2009048353A (en)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012190300A (en) * 2011-03-11 2012-10-04 Fuji Electric Co Ltd Initial solution generation method and generation device
CN109492800A (en) * 2017-11-24 2019-03-19 华东理工大学 A kind of vehicle routing optimization method for Automatic Warehouse
WO2019181313A1 (en) * 2018-03-23 2019-09-26 日本電気株式会社 Combination search system, information processing device, method, and program
WO2020022430A1 (en) * 2018-07-27 2020-01-30 株式会社東芝 Control device, control method, and computer program
JP2020522972A (en) * 2017-06-06 2020-07-30 サプライ, インコーポレイテッドSupply, Inc. Wireless power supply method and system
JP2020149607A (en) * 2019-03-15 2020-09-17 Jfeスチール株式会社 Material blend planning method, coke manufacturing method, solving method for mixed integer programming problem and material blend planning device
EP3792788A1 (en) 2019-09-12 2021-03-17 Fujitsu Limited Optimization apparatus, optimization program, and optimization method
CN113391841A (en) * 2020-03-11 2021-09-14 富士通株式会社 Information processing system, information processing method, information processing program, and information processing apparatus
JP2021140552A (en) * 2020-03-06 2021-09-16 Kddi株式会社 Explanation variable estimation method, program, and device using model additional portion
US11178625B2 (en) 2017-06-06 2021-11-16 Supply, Inc. Method and system for wireless power delivery
US11183886B2 (en) 2018-03-08 2021-11-23 Supply, Inc. Method and system for wireless power delivery
US11211826B2 (en) 2014-09-25 2021-12-28 Supply, Inc. System and method for wireless power reception
US11611242B2 (en) 2021-04-14 2023-03-21 Reach Power, Inc. System and method for wireless power networking
EP4187448A1 (en) 2021-11-26 2023-05-31 Fujitsu Limited Information processing apparatus, information processing method, and program
JP7515110B2 (en) 2020-01-24 2024-07-12 株式会社デンソー Information processing system, combinatorial optimum solution calculation method, and combinatorial optimum solution calculation program

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1189089A (en) * 1997-09-08 1999-03-30 Kansai Electric Power Co Inc:The Method of determining load interchange pattern in distribution system
JP2006048475A (en) * 2004-08-06 2006-02-16 Fuji Electric Systems Co Ltd Plant optimal design method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1189089A (en) * 1997-09-08 1999-03-30 Kansai Electric Power Co Inc:The Method of determining load interchange pattern in distribution system
JP2006048475A (en) * 2004-08-06 2006-02-16 Fuji Electric Systems Co Ltd Plant optimal design method

Cited By (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012190300A (en) * 2011-03-11 2012-10-04 Fuji Electric Co Ltd Initial solution generation method and generation device
US12074453B2 (en) 2014-09-25 2024-08-27 Reach Power, Inc. System and method for wireless power reception
US11211826B2 (en) 2014-09-25 2021-12-28 Supply, Inc. System and method for wireless power reception
US11742700B2 (en) 2014-09-25 2023-08-29 Reach Power, Inc. System and method for wireless power reception
US12127137B2 (en) 2017-06-06 2024-10-22 Reach Power, Inc. Method and system for wireless power delivery
JP2020522972A (en) * 2017-06-06 2020-07-30 サプライ, インコーポレイテッドSupply, Inc. Wireless power supply method and system
US11743841B2 (en) 2017-06-06 2023-08-29 Reach Power, Inc. Method and system for wireless power delivery
US11178625B2 (en) 2017-06-06 2021-11-16 Supply, Inc. Method and system for wireless power delivery
CN109492800A (en) * 2017-11-24 2019-03-19 华东理工大学 A kind of vehicle routing optimization method for Automatic Warehouse
US11183886B2 (en) 2018-03-08 2021-11-23 Supply, Inc. Method and system for wireless power delivery
JPWO2019181313A1 (en) * 2018-03-23 2021-02-18 日本電気株式会社 Combination search system, information processing device, method and program
WO2019181313A1 (en) * 2018-03-23 2019-09-26 日本電気株式会社 Combination search system, information processing device, method, and program
JP7132016B2 (en) 2018-07-27 2022-09-06 株式会社東芝 Control device, control method and computer program
JP2020017230A (en) * 2018-07-27 2020-01-30 株式会社東芝 Control apparatus, control method and computer program
WO2020022430A1 (en) * 2018-07-27 2020-01-30 株式会社東芝 Control device, control method, and computer program
JP2020149607A (en) * 2019-03-15 2020-09-17 Jfeスチール株式会社 Material blend planning method, coke manufacturing method, solving method for mixed integer programming problem and material blend planning device
JP7010258B2 (en) 2019-03-15 2022-01-26 Jfeスチール株式会社 Raw material compounding plan creation method, coke manufacturing method, mixed integer programming problem solving method, and raw material compounding plan creation device
EP3792788A1 (en) 2019-09-12 2021-03-17 Fujitsu Limited Optimization apparatus, optimization program, and optimization method
JP7515110B2 (en) 2020-01-24 2024-07-12 株式会社デンソー Information processing system, combinatorial optimum solution calculation method, and combinatorial optimum solution calculation program
JP7296905B2 (en) 2020-03-06 2023-06-23 Kddi株式会社 Explanatory variable estimation method, program and device using model addition part
JP2021140552A (en) * 2020-03-06 2021-09-16 Kddi株式会社 Explanation variable estimation method, program, and device using model additional portion
CN113391841A (en) * 2020-03-11 2021-09-14 富士通株式会社 Information processing system, information processing method, information processing program, and information processing apparatus
US11611242B2 (en) 2021-04-14 2023-03-21 Reach Power, Inc. System and method for wireless power networking
US11955815B2 (en) 2021-04-14 2024-04-09 Reach Power, Inc. System and method for wireless power networking
EP4187448A1 (en) 2021-11-26 2023-05-31 Fujitsu Limited Information processing apparatus, information processing method, and program

Similar Documents

Publication Publication Date Title
JP2009048353A (en) Combinatorial optimization system
US7092863B2 (en) Model predictive control (MPC) system using DOE based model
JP5932612B2 (en) Information processing apparatus, control method, program, and recording medium
JP6931624B2 (en) Learning support device and learning support method
JP7248907B2 (en) Optimizer and method of controlling the optimizer
JP6333342B2 (en) Search method and apparatus based on artificial intelligence
JP6529096B2 (en) Simulation system, simulation method and program for simulation
US20070233532A1 (en) Business process analysis apparatus
US20070162895A1 (en) Mechanism and method for two level adaptive trace prediction
US20210081809A1 (en) Optimization apparatus, optimization program, and optimization method
JP7097261B2 (en) Learning data analysis method and computer system
US20210397923A1 (en) Information processing device, regression model generation method, and regression model generation program product
US9135564B2 (en) Using cyclic Markov decision process to determine optimum policy
US20190025803A1 (en) Computer system and control method
JP7455644B2 (en) Power generation plan decision system, power generation plan decision method, and program
JP2010061179A (en) Plan optimization device, program and method
Zheng et al. Variance reduction based partial trajectory reuse to accelerate policy gradient optimization
JP2019154120A (en) Operation planning method, operation planning apparatus, and program
Robert et al. SHAMan: an intelligent framework for HPC auto-tuning of I/O accelerators
US11521049B2 (en) Optimization device and control method of optimization device
CN110928253B (en) Dynamic weighting heuristic scheduling method for automatic manufacturing system
JP7037048B2 (en) Search program and search method
JP2008059146A (en) Search device for state space and search method for state space
US20200376776A1 (en) Design tool for optimal part consolidation selection for additive manufacturing
CN112711535A (en) Particle swarm optimization-based combined test data generation method under constraint

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100107

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111115

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20120417