JP4032070B2 - Circuit layout optimization problem processing method and circuit layout optimization problem processing program recording computer-readable recording medium - Google Patents

Circuit layout optimization problem processing method and circuit layout optimization problem processing program recording computer-readable recording medium Download PDF

Info

Publication number
JP4032070B2
JP4032070B2 JP2006268964A JP2006268964A JP4032070B2 JP 4032070 B2 JP4032070 B2 JP 4032070B2 JP 2006268964 A JP2006268964 A JP 2006268964A JP 2006268964 A JP2006268964 A JP 2006268964A JP 4032070 B2 JP4032070 B2 JP 4032070B2
Authority
JP
Japan
Prior art keywords
algorithm
chromosome
elements
arrangement
optimization problem
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2006268964A
Other languages
Japanese (ja)
Other versions
JP2007052799A (en
Inventor
文義 笹川
明雄 品川
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2006268964A priority Critical patent/JP4032070B2/en
Publication of JP2007052799A publication Critical patent/JP2007052799A/en
Application granted granted Critical
Publication of JP4032070B2 publication Critical patent/JP4032070B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

本発明は、例えば大規模集積回路(LSI;large scale integration)上の各回路を最適な状態で配置する回路配置最適化問題、より一般的には、2次元以上の空間に複数の要素(配置要素)を最適な状態で配置する要素配置最適化問題を処理する際に用いて好適な、回路配置最適化問題処理方法及び回路配置最適化問題処理プログラムを記録したコンピュータ読み取り可能な記録媒体に関する。   The present invention relates to a circuit layout optimization problem in which, for example, each circuit on a large scale integration circuit (LSI; large scale integration) is optimally arranged. More generally, a plurality of elements (arrangements) are arranged in a two-dimensional space or more. The present invention relates to a circuit arrangement optimization problem processing method and a computer-readable recording medium recording a circuit arrangement optimization problem processing program suitable for use in processing an element arrangement optimization problem for arranging elements in an optimal state.

要素配置最適化問題は、具体的には、接続関係が規定された複数の要素を所要の空間(要素が2次元のものである場合には、所要の領域)に最適な状態で配置する問題であり、グラフマッピング問題と言われるものである。
例えば、前述したLSIにおいて、LSI上の各回路の最適配置を求めることができれば、LSIの小型化を図ることができるほか、当該各回路を接続する配線の長さを最小化して配線性を向上させることができるので、LSIにおける処理の高速化を図ることもできる。
Specifically, the element placement optimization problem is a problem in which a plurality of elements for which connection relationships are defined are optimally placed in a required space (or a required area if the elements are two-dimensional). It is called the graph mapping problem.
For example, in the above-described LSI, if the optimum arrangement of each circuit on the LSI can be obtained, the LSI can be reduced in size, and the wiring property connecting the respective circuits can be minimized to improve the wiring performance. Therefore, the processing speed in the LSI can be increased.

要素配置最適化問題は、最適化問題解決アルゴリズム(例えば遺伝的アルゴリズム,ミンカット法,n要素交換法等)を実行して、複数の要素の上記空間における最適配置を決定し、その決定に基づいて複数の要素を上記空間に配置することにより処理することができる。
ここで、要素配置最適化問題の規模が大きいとき(即ち、最適配置を求めるべき要素数が非常に多いとき)には、最適化問題解決アルゴリズムを高速に実行できるようにするために、各要素の大きさを考慮することなく、各要素を点(又は同一形状)とみなして要素の最適配置を決定していた。
The element arrangement optimization problem is performed by executing an optimization problem solving algorithm (eg, genetic algorithm, min-cut method, n-element exchange method, etc.) to determine the optimum arrangement of a plurality of elements in the space, and based on the determination. A plurality of elements can be processed by placing them in the space.
Here, when the size of the element placement optimization problem is large (that is, when the number of elements for which the optimum placement is to be obtained is very large), each element is used to enable the optimization problem solving algorithm to be executed at high speed. Without considering the size of each element, each element is regarded as a point (or the same shape) to determine the optimum arrangement of the elements.

しかしながら、要素はそれぞれ固有の大きさをもっているため、このようにして決定された最適配置に基づいて要素を配置しても、要素同士が重なったり要素間に隙間が生じたりして、要素の配置に疎密が生じることがあるという課題がある。
従って、問題規模の大きい要素配置最適化問題を高速に処理するためには、各要素の大きさを考慮しないで最適化問題解決アルゴリズムを実行し、その結果生じた要素の配置の疎密を解消する必要がある。
However, since each element has a unique size, even if the elements are arranged based on the optimum arrangement determined in this way, the elements may overlap with each other or a gap may be generated between the elements. There is a problem that sparseness and density may occur.
Therefore, in order to process an element placement optimization problem with a large problem scale at high speed, the optimization problem solving algorithm is executed without considering the size of each element, and the resulting element arrangement is eliminated. There is a need.

本発明は、このような課題に鑑み創案されたもので、要素の配置に生じた疎密を解消して要素を上記空間に均一に配置できるようにして、問題規模の大きい要素配置最適化問題を高速に処理できるようにした、回路配置最適化問題処理方法を提供することを目的とするとともに、更には、要素配置最適化問題を処理すべくコンピュータを動作させるための回路配置最適化問題処理プログラムを記録したコンピュータ読み取り可能な記録媒体を提供することを目的とする。   The present invention has been devised in view of such problems, so that the element arrangement optimization problem with a large problem scale can be solved by eliminating the sparseness and density caused in the arrangement of elements so that the elements can be arranged uniformly in the space. A circuit layout optimization problem processing program for operating a computer to process an element layout optimization problem, and to provide a circuit layout optimization problem processing method capable of high-speed processing It is an object of the present invention to provide a computer-readable recording medium on which is recorded.

このため、本発明の回路配置最適化問題処理方法は、接続関係が規定された複数の要素を所要の空間に配置するに際し、CPUをそなえたコンピュータを用いて、該接続関係を維持しながら初期配置状態にある上記複数の要素の疎密を解消するための回路配置最適化問題処理方法であって、上記の初期配置状態にある複数の要素に関する情報を配置結果として該コンピュータに入力する入力ステップと、該入力ステップにて入力された該配置結果に対して、該空間を分割したものとして構成され且つそれぞれに複数の要素を含む部分空間を遺伝子として表現し、当該遺伝子の配列からなり該配置結果に相当する染色体を複数用意して、これらの染色体を用いるとともに、複数の要素の疎密を小さくできるような染色体が大きな適応度値をとる適応度関数を用いた遺伝的アルゴリズムを該CPUで実行することにより、最高の適応度値をもつ染色体を最適な染色体として取得する第1アルゴリズム実行ステップと、該第1アルゴリズム実行ステップの実行中に生成される複数の染色体のそれぞれに対して、該遺伝的アルゴリズムで用いられる各染色体の部分空間毎に、当該部分空間内に含まれる複数の要素のうちの少なくとも一つの要素を要素密度が高い場所から要素密度が低い場所へと移動させる局所的疎密解消アルゴリズムを該CPUで行する第2アルゴリズム実行ステップとをそなえ、該第1アルゴリズム実行ステップにおける該遺伝的アルゴリズムおよび該第2アルゴリズム実行ステップにおける該局所的疎密解消アルゴリズムが、上記最適な染色体の適応度値が基準値以上になるまで繰り返し実行され、該第1アルゴリズム実行ステップが、適応度値が該基準値以上である最適な染色体を、該接続関係を維持しながら上記の初期配置状態にある複数の要素の疎密を解消した解として出力することを特徴としている(請求項1)。 For this reason, the circuit layout optimization problem processing method of the present invention uses a computer equipped with a CPU to maintain the connection relationship when arranging a plurality of elements for which a connection relationship is defined in a required space. A circuit layout optimization problem processing method for eliminating the density of the plurality of elements in an arrangement state, wherein an input step for inputting information on the plurality of elements in the initial arrangement state to the computer as an arrangement result; The arrangement result input in the input step is configured by dividing the space, and a partial space including a plurality of elements is expressed as a gene, and the arrangement result includes the arrangement of the gene. Prepare multiple chromosomes corresponding to, use these chromosomes, and chromosomes that can reduce the density of multiple elements have a large fitness value Genetic algorithm using応度function by executing in the CPU, and the first algorithm execution step of obtaining the chromosome with the highest fitness value as the best chromosome, while the execution of the first algorithm executing step For each of a plurality of generated chromosomes, for each subspace of each chromosome used in the genetic algorithm, at least one of the plurality of elements included in the subspace is a place where the element density is high local density rid algorithm includes a second algorithm executing step you run in the CPU, said genetic algorithm and the second algorithm executing step in the first algorithm executing step of moving to the element density is low location from In the local sparse / dense elimination algorithm, the optimal chromosome fitness value is less than the reference value. The first algorithm execution step is performed to determine the optimal chromosome having a fitness value equal to or higher than the reference value, and to reduce the density of the plurality of elements in the initial arrangement state while maintaining the connection relationship. The solution is output as a solved solution (claim 1).

のとき、該第1アルゴリズム実行ステップは、該遺伝的アルゴリズムを実行する際に、該染色体における上記複数の部分空間の中から選択された少なくとも一つの部分空間を、他の染色体における当該部分空間に対応する部分空間と交換することにより、遺伝オペレーションとしての交叉を実行することができる(請求項)。 At this time, the first algorithm executing step, when performing said genetic algorithm, at least one of the subspaces is selected from the plurality of partial spaces in said chromosome, the partial space in other chromosomes Crossover as a genetic operation can be executed by exchanging with the subspace corresponding to (Claim 2 ).

また、該第1アルゴリズム実行ステップは、該遺伝的アルゴリズムを実行する際に、該染色体における上記複数の部分空間の中の特定の部分空間の方が、他の染色体における当該部分空間に対応する部分空間よりも疎密が解消されている場合には、該染色体における当該部分空間を該他の染色体における当該部分空間に対応する部分空間に張り付けることにより、遺伝オペレーションとしての交叉を実行してもよい(請求項)。 Moreover, the first algorithm executing step, when performing said genetic algorithm, towards a particular subspace of among the plurality of partial spaces in said chromosome, corresponding to the subspace of other chromosomes portion If the density is eliminated than space by pasting the partial space corresponding to the partial space in the chromosome to the subspace said other chromosomes may perform crossover as genetic operations (Claim 3 ).

さらに、該第1アルゴリズム実行ステップは、該遺伝的アルゴリズムを実行する際に、上記複数の部分空間の中の少なくとも一つの部分空間内において上記複数の要素のうちの少なくとも一つの要素を移動させることにより、遺伝オペレーションとしての突然変異を実行することができる(請求項)。 Moreover, the first algorithm executing step, when performing said genetic algorithm, moving at least one element of the plurality of elements in at least one subspace in the upper Symbol plurality of subspaces Thus, mutation as a genetic operation can be performed (claim 4 ).

ここで、該第2アルゴリズム実行ステップは、該局所的疎密解消アルゴリズムとして、該部分空間内における要素の移動を流体の動きとしてとらえ、該部分空間内で要素密度が均一になるように、該流体の粘性を考慮して上記の部分空間内における要素を移動させる流体力学のアナロジーが適用されたアルゴリズムを用いることができる(請求項 Here, the second algorithm executing step, as the topical manner compressional solve algorithm, the movement of the element that put the partial space regarded as the motion of the fluid, so that the element density is uniform partial space can be in consideration of the viscosity of the fluid using an algorithm analogy is applied hydrodynamic moving elements in the partial space (claim 5).

こで、該第2アルゴリズム実行ステップは、複数の要素間の近傍性を保存しながら、上記の部分空間内に含まれる複数の要素のうちの少なくとも一つの要素を移動させることができる(請求項)。 In here, the second algorithm execution step can be moved while preserving the vicinity among multiple elements, at least one element of the plurality of elements included in the partial space ( Claim 6 ).

また、該第2アルゴリズム実行ステップは、複数の要素間の順序性を保存しながら、上記の部分空間内に含まれる複数の要素のうちの少なくとも一つの要素を移動させることをもできる(請求項)。 Further, the second algorithm executing step, while preserving the order among multiple components, can also be moved at least one element of the plurality of elements included in the partial space (according Item 7 ).

具体的には、該第2アルゴリズム実行ステップは、該局所的疎密解消アルゴリズムとして、該部分空間内における要素の移動をモーフィングにおける変形動作としてとらえ、該部分空間毎に、上記の初期配置状態にある複数の要素に関する情報に基づいてモーフィング中心部を決定し、上記の部分空間内に含まれる複数の要素のうちの少なくとも一つの要素を該モーフィング中心部から離隔した場所へと移動させるモーフィングのアナロジーが適用されたアルゴリズムを実行することができる(請求項)。 Specifically, the second algorithm executing step, as the topical manner compressional solve algorithm, regarded as a modification operation in the morphing movement of elements that put the partial space, each partial space, said initial placement determine the morphing center on the basis of the state near Ru information about multiple elements, move at least one element of the plurality of elements included in the partial space to a location spaced from said morphing center It is possible to execute an algorithm to which the analogy of morphing to be applied is applied (claim 8 ).

ここで、該第2アルゴリズム実行ステップは、上記の部分空間内に含まれる複数の要素の少なくとも一つの要素を該モーフィング中心部から離隔した場所へと移動させる際に、該モーフィング中心部から移動対象となる要素までの距離を線形的に拡大することができる(請求項)。
また、該第2アルゴリズム実行ステップは、上記の部分空間内に含まれる複数の要素の少なくとも一つの要素を該モーフィング中心部から離隔した場所へと移動させる際に、該モーフィング中心部から移動対象となる要素までの距離を非線形的に拡大することもできる(請求項1)。
Here, in the second algorithm execution step, when moving at least one element of the plurality of elements included in the subspace to a place separated from the morphing center, the second algorithm execution step moves from the morphing center. The distance to the element to be can be linearly expanded (claim 9 ).
In the second algorithm execution step, when moving at least one element of the plurality of elements included in the partial space to a place separated from the morphing center, the second algorithm is executed from the morphing center. the distance until the element can be expanded nonlinearly (0 claim 1).

また、本発明の回路配置最適化問題処理方法は、接続関係が規定された複数の要素を所要の空間に配置するに際し、CPUをそなえたコンピュータを用いて、該接続関係を維持しながら初期配置状態にある上記複数の要素の疎密を解消するための回路配置最適化問題処理方法であって、上記の初期配置状態にある複数の要素に関する情報を配置結果として該コンピュータに入力する入力ステップと、該入力ステップにて入力された該配置結果に対して、該空間を分割したものとして構成される複数の部分空間のそれぞれの第1の遺伝子として表現し、当該第1の遺伝子の配列からなる第1の染色体を複数用意して、これらの第1の染色体を用いるとともに、複数の要素の疎密を小さくできるような染色体が大きな適応度値をとる適応度関数を用いた第1遺伝的アルゴリズムを該CPUで実行する第1ステップと、該第1ステップの実行中に生成される複数の第1の染色体に対応する複数の空間のそれぞれに対して、上記第1の染色体に応じた部分空間の幅でこの空間を分割したものとして構成され且つそれぞれに複数の要素を含む部分空間を第2の遺伝子として表現し、当該第2の遺伝子の配列からなり該配置結果に相当する第2の染色体を複数用意して、これらの第2の染色体を用いるとともに、該適応度関数を用いた第2遺伝的アルゴリズムを、予め定められた世代数を超えるまで繰り返し該CPUで実行することにより、最高の適応度値をもつ第2の染色体を中間染色体として、上記複数の第1の染色体のそれぞれに対応して複数取得する第2ステップと、該第2ステップの実行中に生成される複数の第2の染色体のそれぞれに対して、該第2遺伝的アルゴリズムで用いられる各第2の染色体の該部分空間毎に、当該部分空間内に含まれる複数の要素のうちの少なくとも一つの要素を要素密度が高い場所から要素密度が低い場所へと移動させる局所的疎密解消アルゴリズムを該CPUで実行する第3ステップとをそなえ、該第1ステップが、該第2ステップにて取得した上記複数の中間染色体のそれぞれの適応度値に基づいて、上記複数の中間染色体から最高の適応度値をもつ中間染色体を最適な染色体として取得し、該第1ステップにおける該第1遺伝的アルゴリズム,該第2ステップにおける該第2遺伝的アルゴリズムおよび該第3ステップにおける該局所的疎密解消アルゴリズムが、上記最適な染色体の適応度値が基準値以上になるまで繰り返し実行され、該第1ステップが、適応度値が該基準値以上である最適な染色体を、該接続関係を維持しながら上記の初期配置状態にある複数の要素の疎密を解消した解として出力することを特徴としている(請求項1)。 Also, the circuit layout optimization problem processing method of the present invention uses a computer equipped with a CPU to maintain an initial layout while arranging a plurality of elements for which connection relationships are defined in a required space. A circuit layout optimization problem processing method for eliminating the density of the plurality of elements in a state, an input step for inputting information on the plurality of elements in the initial placement state to the computer as a placement result; with respect to the arrangement results input at said input step, the width of each of the plurality of subspaces to the space Ru are configured as obtained by dividing expressed as a first gene, said first gene a first chromosome consisting of SEQ Make several, fitness function which Rutotomoni using these first chromosome, chromosome that can reduce the density of a plurality of elements it takes a large fitness value The first genetic algorithm for each of the plurality of space corresponding to the plurality of first chromosome that is generated during the execution of the first steps, the first step to run by the CPU using the above the subspace containing a plurality of elements configured and each as obtained by dividing the space in the width of the first partial space corresponding to the chromosomes and expressed as a second gene, Ri Do from the second gene of SEQ a second chromosome corresponding to the arrangement results preparing a plurality Rutotomoni using these second chromosome, the second genetic algorithm using said fitness function, to greater than the number of generations predetermined by executing a repeating the CPU, the second chromosome with the highest fitness value as an intermediate chromosome, a second step of multiple acquired in correspondence with each of said plurality of first chromosome second step For each of the plurality of second chromosome that is generated during the execution of, for each subspace of the second chromosome used in the second genetic algorithm, multiple which is Ru contained in the subspace And a third step of executing, on the CPU, a local sparse / dense cancellation algorithm for moving at least one of the elements from a location where the element density is high to a location where the element density is low , the first step comprising: Based on the fitness values of the plurality of intermediate chromosomes acquired in the second step, the intermediate chromosome having the highest fitness value is acquired as the optimal chromosome from the plurality of intermediate chromosomes, The first genetic algorithm, the second genetic algorithm in the second step, and the local sparse / dense elimination algorithm in the third step are adapted to optimize the optimal chromosome. It is repeatedly executed until the fitness value becomes equal to or higher than the reference value, and the first step is performed for a plurality of optimal chromosomes whose fitness values are equal to or higher than the reference value in the initial arrangement state while maintaining the connection relationship. It is characterized in that it is output as a solution in which the density of the elements is eliminated (claim 1 1 ).

さらに、本発明の回路配置最適化問題処理方法は、接続関係が規定された複数の要素を所要の空間に配置するに際し、CPUをそなえたコンピュータを用いて、該接続関係を維持しながら初期配置状態にある上記複数の要素の疎密を解消するための回路配置最適化問題処理方法であって、上記の初期配置状態にある複数の要素に関する情報を配置結果として該コンピュータに入力する入力ステップと、該入力ステップにて入力された該配置結果に対して、該空間を分割したものとして構成される複数の部分空間のそれぞれの第1の遺伝子として表現し、当該第1の遺伝子の配列からなる第1の染色体を複数用意して、これらの第1の染色体を用いるとともに、複数の要素の疎密を小さくできるような染色体が大きな適応度値をとる適応度関数を用いた第1遺伝的アルゴリズムを該CPUで実行する第1ステップと、該第1ステップの実行中に生成される複数の第1の染色体に対応する複数の空間のそれぞれに対して、該第1の染色体に応じた部分空間の幅でこの空間を複数の部分空間に分割した後に、該部分空間毎に、当該部分空間内に含まれる複数の要素のうちの少なくとも一つの要素を要素密度が高い場所から要素密度が低い場所へと移動させる局所的疎密解消アルゴリズムを該CPUで実行することにより、複数の第1の染色体に対応する複数の中間配置結果を取得し、上記複数の中間配置結果のそれぞれの適応度値を該CPUで算出する第2ステップと、該空間を該第1の染色体に応じた部分空間の幅で分割したものとして構成され且つそれぞれに複数の要素を含む部分空間を第2の遺伝子として表現し、当該第2の遺伝子の配列からなり該配置結果に相当する第2の染色体を複数用意して、これらの第2の染色体を用いるとともに、該適応度関数を用いた第2遺伝的アルゴリズムを該CPUで実行することにより、最高の適応度値をもつ第2の染色体を最適な染色体として取得する第3ステップとをそなえ、該第1ステップが、該第2ステップにて算出された適応度値に基づいて、上記複数の中間配置結果から最高の適応度値をもつ中間配置結果を最適な配置結果として取得し、該第1ステップにおける該第1遺伝的アルゴリズムおよび該第2ステップにおける該局所的疎密解消アルゴリズムが、該第1遺伝的アルゴリズムにおいて予め定められた世代数を超えるまで繰り返し実行され、該第3ステップが、該第1ステップにおける該第1遺伝的アルゴリズムおよび該第2ステップにおける該局所的疎密解消アルゴリズムが繰り返し実行されることにより取得した上記最適な配置結果に対して、上記最適な染色体の適応度値が基準値以上になるまで該第2遺伝的アルゴリズムを繰り返し実行し、適応度値が該基準値以上である最適な染色体を、該接続関係を維持しながら上記の初期配置状態にある複数の要素の疎密を解消した解として出力することを特徴としている(請求項1)。 Further, according to the circuit layout optimization problem processing method of the present invention, when a plurality of elements for which connection relations are defined are placed in a required space, an initial placement is performed while maintaining the connection relation using a computer having a CPU A circuit layout optimization problem processing method for eliminating the density of the plurality of elements in a state, an input step for inputting information on the plurality of elements in the initial placement state to the computer as a placement result; with respect to the arrangement results input at said input step, the width of each of the plurality of subspaces to the space Ru are configured as obtained by dividing expressed as a first gene, said first gene a first chromosome consisting of SEQ Make several, adaptability Rutotomoni using these first chromosome, chromosome that can reduce the density of a plurality of elements it takes a large fitness value A first step to run a first genetic algorithm using the number of the CPU, for each of a plurality of space corresponding to the plurality of first chromosome that is generated during the execution of the first step, the space width of the subspaces corresponding to the chromosome of the first after dividing the subspace of multiple, for each subspace, of at least one of the multiple elements that is part on the subspace A plurality of intermediate arrangement results corresponding to a plurality of first chromosomes are acquired by executing a local sparse / dense elimination algorithm for moving an element from a place with a high element density to a place with a low element density , a second step that to calculate the respective fitness values of a plurality of intermediate placement results in the CPU, respectively are constructed and a plurality of the space as divided by the width of the subspace corresponding to the chromosome of the first Part containing the element A space is expressed as a second gene, a plurality of second chromosomes comprising the sequence of the second gene and corresponding to the arrangement result are prepared, the second chromosome is used, and the fitness function is And executing the second genetic algorithm used by the CPU to obtain the second chromosome having the highest fitness value as the optimal chromosome , and the first step comprises the second step. Based on the fitness value calculated in the step, the intermediate placement result having the highest fitness value is obtained as the optimum placement result from the plurality of intermediate placement results, and the first genetic algorithm in the first step And the local sparse / dense elimination algorithm in the second step is repeatedly executed until a predetermined number of generations is exceeded in the first genetic algorithm, and the third step includes: With respect to the optimal placement result obtained by repeatedly executing the first genetic algorithm in the first step and the local sparse / dense elimination algorithm in the second step, the optimal chromosome fitness value is The second genetic algorithm is repeatedly executed until a reference value or higher is reached, and an optimal chromosome having a fitness value equal to or higher than the reference value is selected for a plurality of elements in the initial arrangement state while maintaining the connection relationship. It is characterized by outputting a solution which solves the density (claim 1 2).

ところで、本発明の回路配置最適化問題処理プログラムを記録したコンピュータ読み取り可能な記録媒体は、接続関係が規定された複数の要素を所要の空間に配置するに際し、該接続関係を維持しながら初期配置状態にある上記複数の要素の疎密を解消するための回路配置最適化問題を、CPUをそなえたコンピュータにより処理するための回路配置最適化問題処理プログラムを記録したコンピュータ読み取り可能な記録媒体であって、該回路配置最適化問題処理プログラムが、上記初期配置状態にある複数の要素に関する情報が配置結果として該コンピュータに入力されると、入力された該配置結果に対して、該空間を分割したものとして構成され且つそれぞれに複数の要素を含む部分空間を遺伝子として表現し、当該遺伝子の配列からなり該配置結果に相当する染色体を複数用意して、これらの染色体を用いるとともに、複数の要素の疎密を小さくできるような染色体が大きな適応度値をとる適応度関数を用いた遺伝的アルゴリズムを該CPUで実行することにより、最高の適応度値をもつ染色体を最適な染色体として取得する第1アルゴリズム実行手段、及び、該第1アルゴリズム実行手段の実行中に生成される複数の染色体のそれぞれに対して、該遺伝的アルゴリズムで用いられる各染色体の部分空間毎に、当該部分空間内に含まれる複数の要素のうちの少なくとも一つの要素を要素密度が高い場所から要素密度が低い場所へと移動させる局所的疎密解消アルゴリズムを該CPUで行する第2アルゴリズム実行手段として該コンピュータを機能させるとともに、該第1アルゴリズム実行手段における該遺伝的アルゴリズムおよび該第2アルゴリズム実行手段における該局所的疎密解消アルゴリズムが、上記最適な染色体の適応度値が基準値以上になるまで繰り返し実行され、該第1アルゴリズム実行手段が、適応度値が該基準値以上である最適な染色体を、該接続関係を維持しながら上記の初期配置状態にある複数の要素の疎密を解消した解として出力するように該コンピュータを機能させることを特徴としている(請求項1)。
また、本発明の回路配置最適化問題処理プログラムを記録したコンピュータ読み取り可能な記録媒体は、接続関係が規定された複数の要素を所要の空間に配置するに際し、該接続関係を維持しながら初期配置状態にある上記複数の要素の疎密を解消するための回路配置最適化問題を、CPUをそなえたコンピュータにより処理するための回路配置最適化問題処理プログラムを記録したコンピュータ読み取り可能な記録媒体であって、該回路配置最適化問題処理プログラムが、上記の初期配置状態にある複数の要素に関する情報が配置結果として該コンピュータに入力されると、入力された該配置結果に対して、該空間を分割したものとして構成される複数の部分空間のそれぞれの幅を第1の遺伝子として表現し、当該第1の遺伝子の配列からなる第1の染色体を複数用意して、これらの第1の染色体を用いるとともに、複数の要素の疎密を小さくできるような染色体が大きな適応度値をとる適応度関数を用いた第1遺伝的アルゴリズムを該CPUで実行する第1実行手段、該第1実行手段の実行中に生成される複数の第1の染色体に対応する複数の空間のそれぞれに対して、上記第1の染色体に応じた部分空間の幅でこの空間を分割したものとして構成され且つそれぞれに複数の要素を含む部分空間を第2の遺伝子として表現し、当該第2の遺伝子の配列からなり該配置結果に相当する第2の染色体を複数用意して、これらの第2の染色体を用いるとともに、該適応度関数を用いた第2遺伝的アルゴリズムを、予め定められた世代数を超えるまで繰り返し該CPUで実行することにより、最高の適応度値をもつ第2の染色体を中間染色体として、上記複数の第1の染色体のそれぞれに対応して複数取得する第2実行手段、及び、該第2実行手段の実行中に生成される複数の第2の染色体のそれぞれに対して、該第2遺伝的アルゴリズムで用いられる各第2の染色体の該部分空間毎に、当該部分空間内に含まれる複数の要素のうちの少なくとも一つの要素を要素密度が高い場所から要素密度が低い場所へと移動させる局所的疎密解消アルゴリズムを該CPUで実行する第3実行手段として該コンピュータを機能させるとともに、該第1実行手段が、該第2実行手段にて取得した上記複数の中間染色体のそれぞれの適応度値に基づいて、上記複数の中間染色体から最高の適応度値をもつ中間染色体を最適な染色体として取得し、 該第1実行手段における該第1遺伝的アルゴリズム,該第2実行手段における該第2遺伝的アルゴリズムおよび該第3実行手段における該局所的疎密解消アルゴリズムが、上記最適な染色体の適応度値が基準値以上になるまで繰り返し実行され、該第1実行手段が、適応度値が該基準値以上である最適な染色体を、該接続関係を維持しながら上記の初期配置状態にある複数の要素の疎密を解消した解として出力するように該コンピュータを機能させることを特徴としている(請求項14)。
さらに、本発明の回路配置最適化問題処理プログラムを記録したコンピュータ読み取り可能な記録媒体は、接続関係が規定された複数の要素を所要の空間に配置するに際し、該接続関係を維持しながら初期配置状態にある上記複数の要素の疎密を解消するための回路配置最適化問題を、CPUをそなえたコンピュータにより処理するための回路配置最適化問題処理プログラムを記録したコンピュータ読み取り可能な記録媒体であって、該回路配置最適化問題処理プログラムが、上記の初期配置状態にある複数の要素に関する情報が配置結果として該コンピュータに入力されると、入力された該配置結果に対して、該空間を分割したものとして構成される複数の部分空間のそれぞれの幅を第1の遺伝子として表現し、当該第1の遺伝子の配列からなる第1の染色体を複数用意して、これらの第1の染色体を用いるとともに、複数の要素の疎密を小さくできるような染色体が大きな適応度値をとる適応度関数を用いた第1遺伝的アルゴリズムを該CPUで実行する第1実行手段、該第1実行手段の実行中に生成される複数の第1の染色体に対応する複数の空間のそれぞれに対して、該第1の染色体に応じた部分空間の幅でこの空間を複数の部分空間に分割した後に、該部分空間毎に、当該部分空間内に含まれる複数の要素のうちの少なくとも一つの要素を要素密度が高い場所から要素密度が低い場所へと移動させる局所的疎密解消アルゴリズムを該CPUで実行することにより、複数の第1の染色体に対応する複数の中間配置結果を取得し、上記複数の中間配置結果のそれぞれの適応度値を該CPUで算出する第2実行手段、及び、該空間を該第1の染色体に応じた部分空間の幅で分割したものとして構成され且つそれぞれに複数の要素を含む部分空間を第2の遺伝子として表現し、当該第2の遺伝子の配列からなり該配置結果に相当する第2の染色体を複数用意して、これらの第2の染色体を用いるとともに、該適応度関数を用いた第2遺伝的アルゴリズムを該CPUで実行することにより、最高の適応度値をもつ第2の染色体を最適な染色体として取得する第3実行手段として該コンピュータを機能させるとともに、該第1実行手段が、該第2実行手段にて算出された適応度値に基づいて、上記複数の中間配置結果から最高の適応度値をもつ中間配置結果を最適な配置結果として取得し、該第1実行手段における該第1遺伝的アルゴリズムおよび該第2実行手段における該局所的疎密解消アルゴリズムが、該第1遺伝的アルゴリズムにおいて予め定められた世代数を超えるまで繰り返し実行され、該第3実行手段が、該第1実行手段における該第1遺伝的アルゴリズムおよび該第2実行手段における該局所的疎密解消アルゴリズムが繰り返し実行されることにより取得した上記最適な配置結果に対して、上記最適な染色体の適応度値が基準値以上になるまで該第2遺伝的アルゴリズムを繰り返し実行し、適応度値が該基準値以上である最適な染色体を、該接続関係を維持しながら上記の初期配置状態にある複数の要素の疎密を解消した解として出力するように該コンピュータを機能させることを特徴としている(請求項15)。
By the way, the computer-readable recording medium on which the circuit arrangement optimization problem processing program of the present invention is recorded is arranged in the initial arrangement while maintaining the connection relation when arranging a plurality of elements in which the connection relation is defined in a required space. A computer-readable recording medium recording a circuit arrangement optimization problem processing program for processing a circuit arrangement optimization problem for eliminating the density of the plurality of elements in a state by a computer having a CPU. When the information related to the plurality of elements in the initial arrangement state is input to the computer as an arrangement result , the circuit arrangement optimization problem processing program divides the space with respect to the input arrangement result. A partial space that is configured as a thing and includes a plurality of elements each is expressed as a gene, and from the sequence of the gene Chromosome corresponding to Ri該placement result Make several, with use of these chromosomes, the genetic algorithm using the fitness function chromosomes that can reduce the density of a plurality of elements takes a large fitness value A first algorithm executing means for acquiring a chromosome having the highest fitness value as an optimal chromosome by being executed by the CPU , and each of a plurality of chromosomes generated during the execution of the first algorithm executing means ; Then, for each subspace of each chromosome used in the genetic algorithm, at least one element of the plurality of elements included in the subspace is moved from a place where the element density is high to a place where the element density is low. local density eliminates algorithm causes to function the computer as the second algorithm executing means you run in the CPU, the first The topical manner compressional eliminated algorithm in said genetic algorithm and the second algorithm execution unit in algorithms executing means, fitness value of the best chromosome are repeatedly performed until the reference value or more, the first algorithm execution unit And causing the computer to function so as to output an optimal chromosome having a fitness value equal to or higher than the reference value as a solution that eliminates the density of the plurality of elements in the initial arrangement state while maintaining the connection relationship. (Claim 1 3 ).
Further, the computer-readable recording medium recording the circuit arrangement optimization problem processing program according to the present invention is arranged in the initial arrangement while maintaining the connection relation when arranging a plurality of elements in which the connection relation is defined in a required space. A computer-readable recording medium recording a circuit arrangement optimization problem processing program for processing a circuit arrangement optimization problem for eliminating the density of the plurality of elements in a state by a computer having a CPU. When the information related to the plurality of elements in the initial arrangement state is input to the computer as an arrangement result, the circuit arrangement optimization problem processing program divides the space with respect to the input arrangement result. Each width of a plurality of partial spaces configured as a thing is expressed as a first gene, and from the sequence of the first gene A first genetic algorithm using a fitness function in which a plurality of first chromosomes are prepared, the first chromosome is used, and a chromosome capable of reducing the density of a plurality of elements takes a large fitness value The first execution means for executing the CPU, and the portion corresponding to the first chromosome for each of the plurality of spaces corresponding to the plurality of first chromosomes generated during the execution of the first execution means A partial space that is configured by dividing the space by the width of the space and that includes a plurality of elements each is expressed as a second gene, and is composed of a sequence of the second gene and corresponds to the arrangement result. To prepare a plurality of chromosomes, use these second chromosomes, and repeatedly execute the second genetic algorithm using the fitness function on the CPU until a predetermined number of generations are exceeded. Second execution means for obtaining a plurality of second chromosomes having the highest fitness value as intermediate chromosomes corresponding to each of the plurality of first chromosomes, and during execution of the second execution means For each of the plurality of second chromosomes to be generated, at least of the plurality of elements included in the subspace for each subspace of each second chromosome used in the second genetic algorithm The computer is caused to function as third execution means for executing a local sparse / dense elimination algorithm for moving one element from a place having a high element density to a place having a low element density by the CPU. Based on the fitness values of the plurality of intermediate chromosomes acquired by the second execution means, the intermediate chromosome having the highest fitness value is acquired as the optimal chromosome from the plurality of intermediate chromosomes, The first genetic algorithm in the first execution means, the second genetic algorithm in the second execution means, and the local sparse / dense elimination algorithm in the third execution means are based on the optimal chromosome fitness value. It is repeatedly executed until the value becomes equal to or greater than the value, and the first execution means selects an optimal chromosome having a fitness value equal to or greater than the reference value, while maintaining the connection relationship, the plurality of elements in the initial arrangement state are sparse / dense The computer is caused to function so as to be output as a solution that solves the problem (claim 14).
Furthermore, the computer-readable recording medium on which the circuit arrangement optimization problem processing program of the present invention is recorded has an initial arrangement while maintaining the connection relation when arranging a plurality of elements in which the connection relation is defined in a required space. A computer-readable recording medium recording a circuit arrangement optimization problem processing program for processing a circuit arrangement optimization problem for eliminating the density of the plurality of elements in a state by a computer having a CPU. When the information related to the plurality of elements in the initial arrangement state is input to the computer as an arrangement result, the circuit arrangement optimization problem processing program divides the space with respect to the input arrangement result. The width of each of a plurality of subspaces configured as a thing is expressed as a first gene, and the sequence of the first gene A first genetic algorithm using a fitness function in which a plurality of first chromosomes are prepared, and the first chromosome is used, and a chromosome capable of reducing the density of a plurality of elements takes a large fitness value. First execution means for executing the CPU on the CPU, and a portion corresponding to the first chromosome for each of a plurality of spaces corresponding to the plurality of first chromosomes generated during the execution of the first execution means After dividing this space into a plurality of partial spaces by the width of the space, for each partial space, at least one of the plurality of elements included in the partial space is reduced in the element density from the place where the element density is high. By executing a local sparse / dense elimination algorithm for moving to a place by the CPU, a plurality of intermediate arrangement results corresponding to the plurality of first chromosomes are acquired, and the respective fitness of the plurality of intermediate arrangement results Second execution means for calculating the CPU by the CPU, and a partial space that is configured by dividing the space by the width of the partial space corresponding to the first chromosome and each includes a plurality of elements as the second gene A plurality of second chromosomes comprising the sequence of the second gene and corresponding to the arrangement result, and using the second chromosome and the second genetic using the fitness function By executing the algorithm on the CPU, the computer functions as third execution means for acquiring the second chromosome having the highest fitness value as the optimal chromosome, and the first execution means includes the second execution means. Based on the fitness value calculated by the execution means, an intermediate placement result having the highest fitness value is obtained as the optimum placement result from the plurality of intermediate placement results, and the first inheritance in the first execution means is obtained. The local sparse / dense elimination algorithm in the second execution means is repeatedly executed until a predetermined number of generations is exceeded in the first genetic algorithm, and the third execution means is in the first execution means. The optimal chromosome fitness value is greater than or equal to a reference value with respect to the optimal arrangement result obtained by repeatedly executing the local sparse / dense cancellation algorithm in the first genetic algorithm and the second execution means. The second genetic algorithm is repeatedly executed until the optimal chromosome whose fitness value is greater than or equal to the reference value is eliminated, and the sparseness of the plurality of elements in the initial arrangement state is eliminated while maintaining the connection relationship. The computer is made to function so as to be output as a solution (claim 15).

以上詳述したように、本発明によれば、接続関係が規定された複数の要素を所要の空間に配置するに際し、遺伝的アルゴリズムを実行するステップと、局所的疎密解消アルゴリズムを実行するステップとをそなえることにより、問題規模の大きい要素配置最適化問題を処理する場合にも、高速に要素の疎密の解消を行なうことができる利点がある(請求項1〜,1〜1)。 As described above in detail, according to the present invention, when a plurality of elements connecting relationship is defined to place the required space, execute the automatic answering Step perform a genetic algorithm, the local density eliminates algorithm by providing the answering step, even when processing a scale of large elements layout optimization problem, there is an advantage that can be performed to eliminate the density of high speed elements (claim 1-5, 8, 1 1 to 15 ).

また、本発明の回路配置最適化問題処理方法によれば、第2アルゴリズム実行ステップが、複数の要素間の近傍性を保存しながら要素を移動させたり、複数の要素間の順序性を保存しながら要素を移動させたりできるので、処理できる回路配置最適化問題の範囲を拡大することができる(請求項)。
さらに、第2アルゴリズム実行ステップが、モーフィング中心部から移動対象となる要素までの距離を線形的に拡大したり、モーフィング中心部から移動対象となる要素までの距離を非線形的に拡大したりできるので、これによっても処理できる配置最適化問題の範囲を拡大することができる(請求項,1)。
Further, according to the circuit arrangement optimization problem processing method of the present invention, the second algorithm execution step moves the elements while preserving the proximity between the plurality of elements, or preserves the order between the plurality of elements. However, since the elements can be moved, the range of circuit layout optimization problems that can be processed can be expanded (claims 6 and 7 ).
Furthermore, since the second algorithm execution step can linearly expand the distance from the morphing center to the element to be moved, or nonlinearly increase the distance from the morphing center to the element to be moved. , it is possible to expand the range of layout optimization problem This can handle (claim 9, 1 0).

また、第2アルゴリズム実行ステップが、疎密解消対象となる要素を逐次添加したり、固定配置要素も疎密解消対象となる要素とみなしたり、大きな要素の移動量を小さくしたり、移動対象となる要素を一挙に移動させたり、移動対象となる要素を徐々に移動させたりできるので、更に処理できる配置最適化問題の範囲を拡大することができる。 In addition, the second algorithm execution step sequentially adds elements to be de-dense-resolved, considers fixed arrangement elements to be elements to be de-dense-decomposed, reduces the amount of movement of large elements, and elements to be moved the or move at once, since it or gradually moving the moving target element, Ru can expand the range of arrangement optimization problem that can be further processed.

さらに、第1アルゴリズム実行ステップが、遺伝的アルゴリズムを実行する際に、縦方向に分割された染色体の集団を有する第1アイランドと、横方向に分割された染色体の集団を有する第2アイランドとを用いることもできるので、集団における解候補となる染色体の多様性を保持することができ、最適解を効率的に探索して、要素の疎密の解消をより効率的に行なうことができる。 Furthermore, when the first algorithm execution step executes the genetic algorithm, a first island having a population of chromosomes divided in the vertical direction and a second island having a population of chromosomes divided in the horizontal direction are obtained. since it is also possible to use, can hold a variety of chromosomal as the solution candidates in the population, to search the optimal solution efficiently, Ru can be performed to eliminate the density of elements more efficiently.

以下、図面を参照して本発明の実施の形態を説明する。
(a)配置最適化問題処理装置の構成の説明
図1は配置最適化問題処理装置(回路配置最適化問題処理装置;以下、配置最適化問題処理装置という)の構成を示すブロック図であり、この図1に示す配置最適化問題処理装置1は、本発明の配置最適化問題処理方法(回路配置最適化問題処理方法;以下、配置最適化問題処理方法という)を実行するためのものである。
ここで、図1において、5Aは各種の設定画面や処理にて得られた要素の最適配置結果等を表示する表示部、5はこの表示部5A上における表示状態を制御する表示制御部、7Bは表示部5A上の表示データを参照しオペレータがその表示データに対する応答情報を入力するキーボードやマウス等の入力部、7Dは入力部7Bを制御する入力制御部である。
Embodiments of the present invention will be described below with reference to the drawings.
(A) Description of Configuration of Placement Optimization Problem Processing Device FIG. 1 is a block diagram showing a configuration of a placement optimization problem processing device (circuit placement optimization problem processing device; hereinafter referred to as a placement optimization problem processing device). The arrangement optimization problem processing apparatus 1 shown in FIG. 1 is for executing the arrangement optimization problem processing method (circuit arrangement optimization problem processing method; hereinafter referred to as arrangement optimization problem processing method) of the present invention. .
Here, in FIG. 1, 5A is a display unit for displaying various setting screens and optimum arrangement results of elements obtained by processing, and 5 is a display control unit for controlling the display state on the display unit 5A, 7B. Is an input unit such as a keyboard or a mouse for referring to display data on the display unit 5A and an operator inputs response information for the display data, and 7D is an input control unit for controlling the input unit 7B.

また、8はディスク装置で、このディスク装置8は、配置最適化問題処理装置1を動作させるために必要となる一切の情報(OS等)を記憶するものであるとともに、後述する配置最適化問題処理プログラムを記憶するものである。
なお、6は外部ファイル読出書込部,6Aは外部ファイル,7Aは印字部,7Cは印字制御部であり、外部ファイル読出書込部6及び印字部7Aは、それぞれ、入力部7Bからの指示に応じて、表示部5Aに表示された複数ノードの最適配置等を、外部ファイル6A又は所定の用紙に記録するものである。
Reference numeral 8 denotes a disk device. The disk device 8 stores all information (such as an OS) necessary for operating the layout optimization problem processing apparatus 1, and a layout optimization problem described later. A processing program is stored.
6 is an external file read / write unit, 6A is an external file, 7A is a print unit, and 7C is a print control unit. The external file read / write unit 6 and the print unit 7A are respectively instructed from the input unit 7B. Accordingly, the optimum arrangement of the plurality of nodes displayed on the display unit 5A is recorded on the external file 6A or a predetermined sheet.

そして、4は配置最適化問題処理装置1を構成する各部を統括的に管理するためのCPUである。
また、このCPU4は、接続関係が規定された複数の要素を所要の空間に配置するに際し、第1アルゴリズム実行手段及び第2アルゴリズム実行手段として機能するものである。
Reference numeral 4 denotes a CPU for comprehensively managing each unit constituting the arrangement optimization problem processing apparatus 1.
The CPU 4 functions as a first algorithm execution unit and a second algorithm execution unit when arranging a plurality of elements having a defined connection relationship in a required space.

ここで、第1アルゴリズム実行手段は、後述する遺伝的アルゴリズムを実行するものであり、第2アルゴリズム実行手段は、後述する局所的疎密解消アルゴリズムを実行するものである。
より具体的には、第1アルゴリズム実行手段は、上記複数の要素の初期配置状態に関する情報が入力されると、遺伝的アルゴリズムを実行して、初期配置状態にある上記複数の要素の疎密を解消するものである。
Here, the first algorithm executing means executes a genetic algorithm described later, and the second algorithm executing means executes a local sparse / dense elimination algorithm described later.
More specifically, the first algorithm executing means executes a genetic algorithm when information on the initial arrangement state of the plurality of elements is input, and eliminates the density of the plurality of elements in the initial arrangement state. To do.

また、第2アルゴリズム実行手段は、上記第1アルゴリズム実行手段にて疎密が解消された後の上記複数の要素の中間配置状態に関する情報が入力されると、局所的疎密解消アルゴリズムを実行して、中間配置状態にある上記複数の要素の疎密を更に解消するものである。
その他、第1アルゴリズム実行手段と第2アルゴリズム実行手段とを組み合わせて実行して、局所的疎密解消アルゴリズムを実行する際に用いるパラメータの最適値を求めた後に、当該パラメータの最適値を用いて第2アルゴリズム実行手段を実行して、初期配置状態にある上記複数の要素の疎密を解消するようにすることもできる。
The second algorithm executing means executes a local sparse / dense cancellation algorithm when information on the intermediate arrangement state of the plurality of elements after the sparse / dense is canceled by the first algorithm executing means, This further eliminates the density of the plurality of elements in the intermediate arrangement state.
In addition, after executing the combination of the first algorithm execution means and the second algorithm execution means to obtain the optimum value of the parameter to be used when executing the local sparse / dense elimination algorithm, It is also possible to execute the two-algorithm execution means to cancel the density of the plurality of elements in the initial arrangement state.

そして、実際には、上記第1アルゴリズム実行手段及び第2アルゴリズム実行手段に相当する機能は、前述したディスク装置8やCD−ROM(図示せず)等の記録媒体に記録されたプログラム(回路配置最適化問題処理プログラム;以下、配置最適化問題処理プログラムという)を図示しないメモリ(RAM)に読み出し、そのプログラムを起動してCPU4で実行することにより、CPU4の動作として実現される。   Actually, the functions corresponding to the first algorithm execution means and the second algorithm execution means are programs (circuit arrangements) recorded on a recording medium such as the disk device 8 or CD-ROM (not shown). An optimization problem processing program (hereinafter referred to as an arrangement optimization problem processing program) is read into a memory (RAM) (not shown), and the program is started and executed by the CPU 4 to realize the operation of the CPU 4.

ここで、配置最適化問題処理プログラムは、接続関係が規定された複数の要素を所要の空間に最適な状態で配置する配置最適化問題をコンピュータにより処理するためのものであり、上記第1アルゴリズム実行手段及び第2アルゴリズム実行手段としてコンピュータを機能させるものである。
なお、この配置最適化問題処理プログラムは、例えばCD−ROM等に記録されており、CD−ROM等からコンピュータにおけるディスク装置8にインストールされて使用される。
Here, the placement optimization problem processing program is for processing a placement optimization problem in which a plurality of elements for which connection relations are defined is placed in a desired state in an optimal state, and the first algorithm. The computer functions as an execution means and a second algorithm execution means.
The arrangement optimization problem processing program is recorded on, for example, a CD-ROM, and is used by being installed in the disk device 8 in the computer from the CD-ROM or the like.

即ち、上述したディスク装置8やCD−ROM等が、配置最適化問題処理プログラムを記録したコンピュータ読み取り可能な記録媒体に相当する。
このように、本実施形態にかかる配置最適化問題処理装置1は、上述したCPU4,表示部5A,表示制御部5,外部ファイル読出書込部6,印字部7A,印字制御部7C,入力部7B,入力制御部7D,ディスク装置8等を有する一般的な計算機システム(コンピュータ)を用いて実現することが可能である。
That is, the above-described disk device 8, CD-ROM, and the like correspond to a computer-readable recording medium that records an arrangement optimization problem processing program.
As described above, the layout optimization problem processing apparatus 1 according to the present embodiment includes the CPU 4, the display unit 5A, the display control unit 5, the external file reading / writing unit 6, the printing unit 7A, the printing control unit 7C, and the input unit. This can be realized by using a general computer system (computer) having 7B, input control unit 7D, disk device 8 and the like.

そして、配置最適化問題処理装置1においては、以下に説明するようにして、上記複数の配置要素9を配置領域10に最適な状態で配置する配置最適化問題が処理される。
(b)本発明の配置最適化問題処理方法の説明
(b1)基本的な考え方
まず、本発明の配置最適化問題処理方法の基本的な考え方について、図2〜図5を用いて説明する。なお、図4,図5において、符号9は要素(以下、配置要素という)を示し、図3〜図5において、符号10は配置要素9を配置するための空間(以下、配置領域という)を示している。
Then, the placement optimization problem processing apparatus 1 processes the placement optimization problem in which the plurality of placement elements 9 are placed in an optimum state in the placement area 10 as described below.
(B) Description of Arrangement Optimization Problem Processing Method of the Present Invention (b1) Basic Concept First, the basic concept of the arrangement optimization problem processing method of the present invention will be described with reference to FIGS. 4 and 5, reference numeral 9 denotes an element (hereinafter referred to as an arrangement element), and in FIGS. 3 to 5, reference numeral 10 denotes a space for arranging the arrangement element 9 (hereinafter referred to as an arrangement area). Show.

本発明の配置最適化問題処理方法によれば、接続関係が規定された複数の配置要素9を所要の配置領域10に配置するに際し、まず、配置最適化問題処理装置1に、上記複数の配置要素9の初期配置結果(初期配置状態に関する情報)が入力される(図2のステップS1)。ここで、配置要素9はそれぞれ固有の大きさをもつので、一般には、配置要素9が配置領域10に不均一に配置されて疎密が生じた状態の初期配置結果が入力される。   According to the arrangement optimization problem processing method of the present invention, when arranging a plurality of arrangement elements 9 with a defined connection relationship in a required arrangement area 10, first, the arrangement optimization problem processing apparatus 1 receives the plurality of arrangements. An initial arrangement result (information on the initial arrangement state) of the element 9 is input (step S1 in FIG. 2). Here, since each of the placement elements 9 has a unique size, generally, an initial placement result in a state in which the placement elements 9 are unevenly placed in the placement region 10 and density is generated is input.

この配置要素9の初期配置結果が入力されると、配置最適化問題処理装置1では、配置要素9の疎密が解消される(図2のステップS2)。
ここで、このステップS2では、遺伝的アルゴリズムが実行されるとともに(図2のステップS3;第1アルゴリズム実行ステップ)、局所的疎密解消アルゴリズムが実行される(図2のステップS4;第2アルゴリズム実行ステップ)。
When the initial arrangement result of the arrangement element 9 is input, the arrangement optimization problem processing apparatus 1 cancels the density of the arrangement element 9 (step S2 in FIG. 2).
Here, in step S2, a genetic algorithm is executed (step S3 in FIG. 2; first algorithm execution step) and a local sparse / dense elimination algorithm is executed (step S4 in FIG. 2; second algorithm execution). Step).

具体的には、ステップS3では、遺伝的アルゴリズムとして、遺伝的アルゴリズム(GAc)又は遺伝的アルゴリズム(GAp)が実行され、ステップS4では、局所的疎密解消アルゴリズムとして、流体力学のアナロジーが適用されたアルゴリズム、又は、モーフィングのアナロジーが適用されたアルゴリズムが実行される。なお、GAは、Genetic Algorithm の略である。   Specifically, in step S3, a genetic algorithm (GAc) or a genetic algorithm (GAp) is executed as a genetic algorithm, and in step S4, a hydrodynamic analogy is applied as a local sparse / dense cancellation algorithm. An algorithm or an algorithm to which a morphing analogy is applied is executed. GA is an abbreviation for Genetic Algorithm.

なお、これらのアルゴリズムの詳細については、後述する。
また、ステップS3にて遺伝的アルゴリズム(GAp)を実行する場合については、「(b4)第2実施形態の説明」にて説明する。
ここで、遺伝的アルゴリズム(GAc)を実行する際(ステップS3)には、まず、ステップS1において入力された配置要素9の初期配置結果を複製して、親の染色体とするための初期配置結果を複数作成する。続いて、配置領域10を、図3(b),図3(a)に示すように、縦方向又は横方向に適当な幅で分割して部分領域10aを形成する。そして、部分領域10a単位で遺伝的アルゴリズム(GAc)の交叉を行なうように定義して、遺伝的アルゴリズム(GAc)を実行することにより、初期配置状態にある配置要素9の疎密を解消する。
Details of these algorithms will be described later.
The case where the genetic algorithm (GAp) is executed in step S3 will be described in “(b4) Description of the second embodiment”.
Here, when executing the genetic algorithm (GAc) (step S3), first, the initial arrangement result for replicating the initial arrangement result of the arrangement element 9 input in step S1 to become the parent chromosome is obtained. Create multiple. Subsequently, as shown in FIGS. 3B and 3A, the arrangement region 10 is divided in an appropriate width in the vertical direction or the horizontal direction to form a partial region 10a. Then, the genetic algorithm (GAc) is defined to be crossed in units of the partial area 10a, and the genetic algorithm (GAc) is executed, thereby eliminating the density of the arrangement elements 9 in the initial arrangement state.

例えば配置領域10を縦方向に分割した場合に、ステップS3にて疎密を解消した中間配置状態にある配置要素9の一例を図4(a)に示す。この図4(a)に示す例では、遺伝的アルゴリズム(GAc)を実行しただけでは、配置要素9の疎密は完全には解消されていない。なお、図4(b)は、図4(a)に示す中間配置状態にある配置要素9の密度を示している。   For example, FIG. 4A shows an example of the arrangement element 9 in the intermediate arrangement state in which the density is eliminated in step S3 when the arrangement area 10 is divided in the vertical direction. In the example shown in FIG. 4A, the density of the arrangement elements 9 is not completely eliminated only by executing the genetic algorithm (GAc). FIG. 4B shows the density of the arrangement elements 9 in the intermediate arrangement state shown in FIG.

そこで、配置最適化問題処理装置1では、ステップS3にて疎密が解消された後の配置要素9の中間配置結果(中間配置状態に関する情報)が入力されると、局所的疎密解消アルゴリズムを実行して、中間配置状態にある配置要素9の疎密が更に解消される(ステップS4)。
ステップS4では、局所的疎密解消アルゴリズムを実行して、ステップS3にて分割された配置領域10の部分領域10a内で、配置要素9を配置要素密度が高い場所から低い場所へ移動させることにより、中間配置状態にある配置要素9の疎密を解消する。以下では、局所的疎密解消アルゴリズムを実行して配置要素9の疎密を解消する方法を、局所的疎密解消法(LO)という。
Therefore, the placement optimization problem processing apparatus 1 executes the local sparse / dense elimination algorithm when the intermediate placement result (information regarding the intermediate placement state) of the placement element 9 after the sparse / dullness is eliminated in step S3. Thus, the density of the arrangement elements 9 in the intermediate arrangement state is further eliminated (step S4).
In step S4, a local sparse / dense elimination algorithm is executed to move the arrangement element 9 from a place where the arrangement element density is high to a low place in the partial area 10a of the arrangement area 10 divided in step S3. The density of the arrangement elements 9 in the intermediate arrangement state is eliminated. Hereinafter, a method of executing the local sparse / dense cancellation algorithm to cancel the sparseness of the placement element 9 is referred to as a local sparse / dense cancellation method (LO).

なお、図4(a)に示す中間配置状態にある配置要素9の疎密を解消した結果を図5(a)に示す。また、図5(b)に、図5(a)に示す配置状態にある配置要素9の密度を示す。
さらに、配置最適化問題処理装置1では、ステップS2により配置要素9の疎密が解消されたか(ステップS4にて得られた配置結果が所定の疎密解消の条件を満たしているか)が判断され(ステップS5)、配置要素9の疎密が解消されたと判断された場合には処理を終了する(ステップS5のYESルート)。
FIG. 5A shows the result of eliminating the density of the arrangement elements 9 in the intermediate arrangement state shown in FIG. FIG. 5B shows the density of the arrangement elements 9 in the arrangement state shown in FIG.
Furthermore, in the placement optimization problem processing apparatus 1, it is determined whether or not the density of the placement element 9 has been eliminated in step S2 (whether the placement result obtained in step S4 satisfies a predetermined density elimination condition) (step S2). S5) When it is determined that the density of the arrangement element 9 has been eliminated, the process is terminated (YES route in step S5).

一方、配置要素9の疎密が解消されていないと判断された場合には、遺伝的アルゴリズムのパラメータと局所的疎密解消アルゴリズムのパラメータの変更を行なった後に(ステップS5のNOルートからステップS6)、前述したステップS2以降の動作を繰り返す。
このように、本発明の配置最適化問題処理方法によれば、接続関係が規定された複数の配置要素9を所要の配置領域10に配置するに際し、遺伝的アルゴリズム(GAc)を実行して初期配置状態にある配置要素9の疎密を解消した後に、局所的疎密解消アルゴリズムを実行して中間配置状態にある配置要素9の疎密を更に解消しているので、問題規模の大きい要素配置最適化問題を処理する場合にも、高速に配置要素9の疎密の解消を行なうことができる。
On the other hand, if it is determined that the sparse / dense of the arrangement element 9 has not been eliminated, after changing the parameters of the genetic algorithm and the parameters of the local sparse / eliminate algorithm (from the NO route of step S5 to step S6), The operations after step S2 described above are repeated.
As described above, according to the layout optimization problem processing method of the present invention, when a plurality of layout elements 9 for which connection relations are defined are arranged in a required layout area 10, a genetic algorithm (GAc) is executed to perform initial processing. After the arrangement element 9 in the arrangement state is eliminated, the local density elimination algorithm is executed to further eliminate the density of the arrangement element 9 in the intermediate arrangement state. Also when processing is performed, the density of the arrangement elements 9 can be eliminated at high speed.

即ち、本発明の配置最適化問題処理方法によれば、遺伝的アルゴリズム(GAc)による疎密解消法を用いているので、遺伝的アルゴリズム(GAc)の大域的探索法により効率的に配置要素9の疎密の解消を行なうことができるほか、適応度の増大に寄与して配置最適化問題処理装置1の計算速度を増加させることができるため、配置最適化問題を高速に処理することができる。   That is, according to the layout optimization problem processing method of the present invention, since the sparse / dense elimination method using the genetic algorithm (GAc) is used, the global search method of the genetic algorithm (GAc) can be used to efficiently arrange the layout elements 9. In addition to eliminating the density, the calculation speed of the placement optimization problem processing apparatus 1 can be increased by contributing to an increase in fitness, so that the placement optimization problem can be processed at high speed.

このとき、局所的疎密解消アルゴリズムを実行して局所的疎密解消法(LO)を実行しているので、疎密の解消を見通し良く且つ効果的に実施することができる。
このように、本発明の配置最適化問題処理方法は、接続関係が規定された複数の配置要素9を所要の空間に配置するに際し、遺伝的アルゴリズムを実行する第1アルゴリズム実行ステップと、局所的疎密解消アルゴリズムを実行する第2アルゴリズム実行ステップとをそなえることにより、初期配置状態にある上記複数の配置要素9の疎密を解消して、上記複数の配置要素9を配置領域10に最適な状態で配置する配置最適化問題を処理しているのであるが、第1アルゴリズム実行ステップと第2アルゴリズム実行ステップとを組み合わせた各実施形態について、以下にて詳細に説明する。
At this time, since the local sparse / dense elimination algorithm is executed and the local sparse / dense elimination method (LO) is executed, the sparse / dense elimination can be effectively performed with good visibility.
As described above, the placement optimization problem processing method according to the present invention includes a first algorithm execution step for executing a genetic algorithm when a plurality of placement elements 9 for which connection relations are defined is placed in a required space, and a local algorithm. By providing the second algorithm execution step for executing the sparse / dense elimination algorithm, the sparse / dense of the plurality of placement elements 9 in the initial placement state is eliminated, and the plurality of placement elements 9 are optimally placed in the placement region 10. Although the placement optimization problem to be placed is processed, each embodiment in which the first algorithm execution step and the second algorithm execution step are combined will be described in detail below.

(b2)第1実施形態の説明
本発明の第1実施形態にかかる配置最適化問題処理方法について説明する。
第1実施形態にかかる配置最適化問題処理方法は、上記第1アルゴリズム実行ステップ(図2のステップS3)において、遺伝的アルゴリズム(GAc)を実行し、第2アルゴリズム実行ステップ(図2のステップS4)において、局所的疎密解消アルゴリズムとして流体力学のアナロジーが適用されたアルゴリズムを実行するものである。
(B2) Description of First Embodiment A placement optimization problem processing method according to the first embodiment of the present invention will be described.
In the layout optimization problem processing method according to the first embodiment, the genetic algorithm (GAc) is executed in the first algorithm execution step (step S3 in FIG. 2), and the second algorithm execution step (step S4 in FIG. 2). ) Executes an algorithm to which an analogy of fluid dynamics is applied as a local sparse / dense elimination algorithm.

ここで、第1実施形態にて実行される遺伝的アルゴリズム(GAc)は、配置要素9の配置結果を染色体とみなして、配置要素9の疎密を直接解消するための遺伝的アルゴリズムである。
即ち、第1実施形態にかかる配置最適化問題処理方法は、各染色体(即ち、配置要素9の配置結果)に遺伝的アルゴリズム(GAc)を適用した後に、この遺伝的アルゴリズムとは異なる制御パラメータ(即ち異なる配置要素9の移動方法)をもつ局所的疎密解消法(LO)を各染色体に適用することで、効果的に配置要素9の疎密を解消しようとするものである。なお、この配置最適化問題処理方法は、GAc+LOと表記することができる。
Here, the genetic algorithm (GAc) executed in the first embodiment is a genetic algorithm for directly eliminating the density of the arrangement elements 9 by regarding the arrangement result of the arrangement elements 9 as a chromosome.
That is, in the layout optimization problem processing method according to the first embodiment, after applying the genetic algorithm (GAc) to each chromosome (that is, the layout result of the layout element 9), control parameters ( That is, by applying a local sparse / dense elimination method (LO) having a different arrangement element 9 movement method to each chromosome, the sparseness of the arrangement element 9 is effectively eliminated. This placement optimization problem processing method can be expressed as GAc + LO.

ここで、遺伝的アルゴリズム(GAc)による疎密解消法について、図6〜図11を用いて説明する。
まず、遺伝的アルゴリズムについて説明すると、遺伝的アルゴリズムは、生物の遺伝の機構を模倣してそれを工学的に応用した技術であり、確率的探索,学習及び最適化の一手法と考えることができる。
Here, the sparse / dense elimination method using the genetic algorithm (GAc) will be described with reference to FIGS.
First, the genetic algorithm is explained. The genetic algorithm is a technology that imitates the genetic mechanism of an organism and applies it to engineering, and can be considered as a method of probabilistic search, learning, and optimization. .

生物の進化の過程では、既存の個体(親)から新たなる個体(子)が生まれる際に、個体のもつ染色体同士の交叉,染色体上の遺伝子の突然変異などが起こる。そして、環境に適応しない個体は淘汰され、環境により適応した個体が生きのびて新たな親となってさらに新たな子孫を作ることにより、環境に適応した個体の集団が生きのびていく。
各個体がどの程度環境に適応するかは、染色体(遺伝子の一次元ストリング)によって決定されるが、遺伝的アルゴリズムでは、配置最適化問題の解候補が遺伝子の一次元ストリングである染色体として表現される。そして、配置最適化問題の目的関数がいわゆる環境に相当し、目的関数を最適にするものほど大きい値をとるような適応度関数が染色体に対して定義される。
In the process of evolution of organisms, when a new individual (child) is born from an existing individual (parent), crossing of chromosomes of the individual, gene mutation on the chromosome, etc. occur. Individuals that do not adapt to the environment are deceived, and individuals that adapt to the environment survive to become new parents and create new offsprings, so that a group of individuals adapted to the environment survives.
The degree to which each individual adapts to the environment is determined by chromosomes (one-dimensional strings of genes), but in genetic algorithms, solution candidates for the placement optimization problem are expressed as chromosomes that are one-dimensional strings of genes. The Then, the fitness function corresponding to the so-called environment corresponds to a so-called environment, and an fitness function that takes a larger value is defined for the chromosome.

そして、遺伝的アルゴリズムでは、染色体の遺伝子配列を変化させて問題の最適解になりうる染色体(目的関数をより最適にする解)を生成するために、各染色体に、図8に示すような各種の遺伝オペレーション(選択/自己複製,交叉及び突然変異)が施される。
ここで、選択(Selection )/自己複製(Reproduction)は、集団の中で適応度の高い染色体をもつ個体をより高い確率で選択して次世代の親とする操作であり(図9参照)、交叉(Crossover )は、2つの親の染色体の一部を互いに入れ換えて新たな個体(子)を作りだす操作であり(図10参照)、突然変異(Mutation)は、1つの染色体の一部の遺伝子をランダムに置き換えて個体を変化させる操作である(図11参照)。
In the genetic algorithm, in order to generate chromosomes (solutions that optimize the objective function) that can be the optimal solution of the problem by changing the gene sequence of the chromosomes, various chromosomes as shown in FIG. Genetic operations (selection / self-replication, crossover and mutation) are performed.
Here, selection / self-replication (Reproduction) is an operation to select an individual having a highly-adapted chromosome in a group with a higher probability to be a next generation parent (see FIG. 9). Crossover is an operation to create a new individual (child) by exchanging part of two parental chromosomes (see Fig. 10). Mutation is a part of one chromosome gene. Is an operation of changing the individual by randomly replacing (see FIG. 11).

そして、これらの遺伝オペレーションを施すことにより、適応度値(fitnessvalue )のより高い染色体(即ち、目的関数をより最適にする解)を得ることができる。
ここで、第1実施形態では、上記第1アルゴリズム実行ステップが、複数の配置要素9の配置状態を遺伝子として表現し、配置領域10に上記複数の配置要素9を配置する問題の解候補として、当該遺伝子の配列からなり配置領域10として定義される染色体を用いることにより、遺伝的アルゴリズム(GAc)を実行するようになっている。
Then, by performing these genetic operations, it is possible to obtain a chromosome with a higher fitness value (ie, a solution that optimizes the objective function).
Here, in the first embodiment, the first algorithm execution step expresses the arrangement state of the plurality of arrangement elements 9 as a gene, and as a solution candidate for the problem of arranging the plurality of arrangement elements 9 in the arrangement area 10, A genetic algorithm (GAc) is executed by using a chromosome which is composed of the sequence of the gene and is defined as the arrangement region 10.

まず、第1アルゴリズム実行ステップでは、遺伝的アルゴリズム(GAc)を実行する際に、配置領域10を複数の部分領域10aに分割することにより染色体を複数の帯状の領域に分割する。
即ち、第1アルゴリズム実行ステップでは、配置要素9の配置結果を必要なだけ複製して、これらを親の染色体とする。次に、配置領域10を前述したように縦方向又は横方向に帯状に分割して〔図3(a),図3(b)参照〕、染色体を複数の帯状領域に分割する。ただし、遺伝的アルゴリズム(GAc)を実行する際には、分割方向はどの染色体でも同一であるとする。
First, in the first algorithm execution step, when executing the genetic algorithm (GAc), the chromosome is divided into a plurality of band-like regions by dividing the arrangement region 10 into a plurality of partial regions 10a.
That is, in the first algorithm execution step, the arrangement results of the arrangement elements 9 are duplicated as necessary, and these are used as parent chromosomes. Next, as described above, the arrangement region 10 is divided into bands in the vertical direction or the horizontal direction (see FIGS. 3A and 3B), and the chromosome is divided into a plurality of band regions. However, when executing the genetic algorithm (GAc), it is assumed that the dividing direction is the same for all chromosomes.

続いて、第1アルゴリズム実行ステップでは、染色体における上記複数の帯状領域の中から選択された少なくとも一つの帯状領域を、他の染色体における当該帯状領域に対応する帯状領域(この帯状領域は、当該帯状領域に含まれる要素と同じ要素を含むものである)と交換することにより、遺伝オペレーションとしての交叉が実行される。
ここで、交叉の一例を図6に示す。図6に示すように、染色体11,12を親の染色体として確率的に選んでこれらのコピーを作り、染色体11の帯状領域A1 〜A4 ,染色体12の帯状領域B1 〜B4 のうち、選ばれた帯状領域を互いに交換することによって交叉が実行される。図6には、染色体11の帯状領域A3と染色体12の帯状領域B3 とを交換して、帯状領域A1 ,A2 ,B3 ,A4 からなる子の染色体13を得た例が示されている。なお、図6には、染色体の一つの帯状領域を選択し、染色体同士でこの部分を交換して交叉を実行する例が示されているが、染色体の複数の帯状領域を選択し、染色体同士でこれらの部分を交換して交叉を実行してもよい。
Subsequently, in the first algorithm execution step, at least one band region selected from the plurality of band regions in the chromosome is converted into a band region corresponding to the band region in another chromosome (this band region is the band region). Crossover as a genetic operation is performed by exchanging for the same element as the element included in the region.
An example of crossover is shown in FIG. As shown in FIG. 6, the chromosomes 11 and 12 are stochastically selected as parent chromosomes to make copies of these, and among the band-like regions A 1 to A 4 of the chromosome 11 and the band-like regions B 1 to B 4 of the chromosome 12 Crossover is performed by exchanging the selected strip regions with each other. 6, replace the band-like region B 3 strip-like regions A 3 and chromosome 12 in chromosome 11, examples give the band region A 1, A 2, B 3 , A 4 chromosome 13 of the child consisting of the It is shown. FIG. 6 shows an example in which one band-like region of chromosomes is selected, and this portion is exchanged between chromosomes to perform crossover. The crossover may be executed by exchanging these parts.

また、第1アルゴリズム実行ステップでは、一方の染色体における上記複数の帯状領域の中のある特定の帯状領域の方が、他方の染色体における当該帯状領域に対応する帯状領域よりも疎密が解消されている場合には、染色体における当該帯状領域を他の染色体における当該帯状領域に対応する帯状領域に張り付けることにより、遺伝オペレーションとしての交叉を実行してもよい。   Further, in the first algorithm execution step, the density of a certain band-like region among the plurality of band-like regions in one chromosome is eliminated compared to the band-like region corresponding to the band-like region in the other chromosome. In some cases, crossover as a genetic operation may be executed by pasting the band-like region in the chromosome to the band-like region corresponding to the band-like region in another chromosome.

例えば、一方の染色体の帯状領域Ri (i=1,…,N)の中で配置要素9の疎密が著しいものを一つ又は複数選び、もし他方の染色体の対応する帯状領域Ri ′(i=1,…,N)の配置要素9の疎密が、上記一方の染色体の帯状領域Ri より少ない場合には、他方の染色体の帯状領域Ri ′を一方の染色体の対応する部分へ張り付けることにより、交叉を実行することができる。 For example, one or a plurality of the zonal regions R i (i = 1,..., N) of one chromosome having a remarkable arrangement element 9 are selected, and if the corresponding zonal region R i ′ ( If the density of the arrangement elements 9 of i = 1,..., N) is less than the banded region R i of one chromosome, the banded region R i ′ of the other chromosome is pasted to the corresponding part of one chromosome Thus, crossover can be executed.

また、一方の染色体の帯状領域Ri の配置要素9の疎密と、他方の染色体の対応する帯状領域Ri ′の配置要素9の疎密とを全て比較し、もし他方の染色体に疎密が少ない帯状領域Ri ′があればそれを一方の染色体の対応する部分へ張り付け、逆に一方の染色体に疎密が少ない帯状領域Ri があればそれを他方の染色体の対応する部分へ張り付けることにより、交叉を実行してもよい。 Further, the density of the arrangement element 9 in the band-like region R i of one chromosome is compared with the density of the arrangement element 9 in the corresponding band-like area R i ′ of the other chromosome, and if the density of the other chromosome is less By pasting the region R i ′ to the corresponding part of one chromosome, and conversely, if there is a band-like region R i with low density on one chromosome, it is pasted to the corresponding part of the other chromosome, Crossover may be performed.

さらに、第1アルゴリズム実行ステップでは、上記複数の帯状領域の中の少なくとも一つの帯状領域内において、上記複数の配置要素9のうちの少なくとも一つの配置要素9を移動させることにより、遺伝オペレーションとしての突然変異が実行される。
ここで、突然変異の一例を図7に示す。図7に示すように、配置要素9をある確率で選び、この配置要素9の属する領域Ri の中で配置要素9をランダムに移動させることによって、突然変異が実行される。なお、図7では、移動させる配置要素9に網かけを施している。
Further, in the first algorithm execution step, at least one of the plurality of arrangement elements 9 is moved in at least one of the plurality of band-like areas, whereby a genetic operation is performed. Mutation is performed.
Here, an example of the mutation is shown in FIG. As shown in FIG. 7, mutation is executed by selecting a placement element 9 with a certain probability and moving the placement element 9 randomly within a region R i to which the placement element 9 belongs. In FIG. 7, the arrangement element 9 to be moved is shaded.

最後に、第1アルゴリズム実行ステップでは、上記複数の配置要素9の疎密が小さい染色体が大きな適応度値をとりうるような適応度値関数(fitness 関数)を用いて、遺伝オペレーションとしての選択が実行される。
ここで、選択を実行する際には、以下のように定義された適応度値関数を用いればよい。
Finally, in the first algorithm execution step, selection as a genetic operation is performed using a fitness value function (fitness function) that allows a chromosome with a small density of the plurality of arrangement elements 9 to take a large fitness value. Is done.
Here, when executing the selection, a fitness value function defined as follows may be used.

適応度値=定数−(配置要素密度の最大値−配置要素密度の最小値)…(1)
適応度値=定数−(配置要素密度が平均配置要素密度以下である配置領域の面積 )…(2)
適応度値=定数−(配置要素密度が平均配置要素密度以上である配置領域の面積) …(3)
さらに、局所的疎密解消法(LO)について、図12〜図17を用いて説明する。
Fitness value = constant− (maximum value of arrangement element density−minimum value of arrangement element density) (1)
Fitness value = constant− (area of arrangement area where arrangement element density is below average arrangement element density) (2)
Fitness value = constant− (area of arrangement area where arrangement element density is equal to or higher than average arrangement element density) (3)
Furthermore, a local sparse / dense elimination method (LO) will be described with reference to FIGS.

局所的疎密解消法(LO)は、前述したように、局所的疎密解消アルゴリズムを実行して、配置領域10の部分領域10a内で配置要素9を配置要素密度が高い場所から低い場所へ移動させることにより、中間配置状態にある配置要素9の疎密を解消するものである。なお、局所的疎密解消法(LO)は、各染色体毎(各配置結果毎)に適用される。
ここで、第1実施形態においては、局所的疎密解消アルゴリズムとして、流体力学のアナロジーが適用されたアルゴリズムを用いて、配置要素9の疎密の解消が行なわれる。
As described above, the local sparse / dense elimination method (LO) executes the local sparse / dense elimination algorithm to move the placement element 9 from a place where the placement element density is high to a place where the placement element density is low in the partial area 10a of the placement area 10. This eliminates the density of the arrangement elements 9 in the intermediate arrangement state. Note that the local sparse / dense elimination method (LO) is applied to each chromosome (each placement result).
Here, in the first embodiment, as the local sparse / dense elimination algorithm, the sparse / dense of the arrangement element 9 is eliminated using an algorithm to which an analogy of fluid dynamics is applied.

流体力学のアナロジーとは、配置領域10の部分領域10a内における配置要素9の移動を一種の流体の動きとしてとらえ、隣接する部分領域10aでの配置要素9の流れ(移動)の相互影響や、同一の部分領域10aでの流れの相互影響を、粘性のアナロジーで考慮したものである。
流体力学のアナロジーが適用されたアルゴリズムを用いて、配置要素9の疎密の解消を行なう際には、まず、配置領域10が縦方向又は横方向に予め決められた幅で分割されて、配置領域10が複数の帯状の領域に分けられる。
An analogy of hydrodynamics is that the movement of the arrangement element 9 in the partial area 10a of the arrangement area 10 is regarded as a kind of fluid movement, the mutual influence of the flow (movement) of the arrangement element 9 in the adjacent partial area 10a, The mutual influence of the flow in the same partial region 10a is considered in the analogy of viscosity.
When the density of the arrangement elements 9 is eliminated using an algorithm to which an analogy of fluid mechanics is applied, first, the arrangement area 10 is divided into a predetermined width in the vertical direction or the horizontal direction, and the arrangement area 10 10 is divided into a plurality of band-like regions.

ここで、第1実施形態では、遺伝的アルゴリズムを実行する際に、配置領域10を複数の部分領域10aに分割しているので、その部分領域10aをそのまま帯状領域とすることができる。
また、新たに配置領域10を分割しなおすことにより、配置領域10を複数の帯状の領域に分けてもよい。
Here, in the first embodiment, when the genetic algorithm is executed, the arrangement region 10 is divided into a plurality of partial regions 10a, so that the partial region 10a can be used as a belt-like region as it is.
Further, the arrangement area 10 may be divided into a plurality of band-like areas by newly dividing the arrangement area 10 again.

この場合には、縦方向に分割された帯状領域の個数をN本とすると、各帯状領域はS1 ,S2 ,…,SN で示すことができる。同様に、横方向に分割された帯状領域の個数をM本とすると、各帯状領域はT1 ,T2 ,…,TM で示すことができる。なお、各帯状領域(Si ,Ti )の幅は、それぞれ異なっていても良い。
また、配置領域10の分割を階層化すれば、配置要素9の密度を均一にしやすくできる。なお、配置領域10の分割を細かくしていく場合には、分割を対称的に進める方法〔図12(a)〜図12(d)参照〕と、分割を非対称的に進める方法がある。
In this case, when the number of divided vertically band-like region and N present, each band region is S 1, S 2, ..., can be represented by S N. Similarly, when the number of the divided strip-like region in the horizontal direction and M present, each swathe T 1, T 2, ..., can be represented by T M. In addition, the width | variety of each strip | belt-shaped area | region ( Si , Ti ) may each differ.
Further, if the division of the arrangement area 10 is hierarchized, the density of the arrangement elements 9 can be easily made uniform. In addition, when the division | segmentation of the arrangement | positioning area | region 10 is made fine, there exists a method (refer FIG. 12 (a)-FIG.12 (d)) which advances division symmetrically, and a method which advances division asymmetrically.

一方、配置領域10を階層的に分割せずに、最初から細分化しておけば、階層的に分割を進めていく方法よりも計算時間を短縮することができる。
そして、配置領域10が複数の帯状の領域に分けられると、帯状領域Ti (Si )内に位置する配置要素9を、この帯状領域Ti (Si )内で配置要素密度が均一になるように移動する。即ち、流体が密度の高い所から低い所へと移動する動作を模倣して、配置要素9を密度の高い位置から密度の低い位置へと移動する。
On the other hand, if the arrangement area 10 is subdivided from the beginning without being divided hierarchically, the calculation time can be reduced as compared with the method of dividing the arrangement hierarchically.
When the placement area 10 is divided into a plurality of strip-shaped region, the configuration element 9 located in the band-like region T i (S i), this band-like region T i (S i) in the placement element density uniformly in Move to be. That is, imitating the movement of the fluid from a high density place to a low place, moving the placement element 9 from a high density position to a low density position.

即ち、上記第2アルゴリズム実行ステップ(図2のステップS4)では、中間配置状態にある上記複数の配置要素9のうちの少なくとも一つの配置要素9を、配置要素密度が高い場所から配置要素密度が低い場所へと移動させることにより、流体力学のアナロジーが適用されたアルゴリズムを実行しているのである。
そして、配置領域10を複数の部分領域10aに分割したときには、第2アルゴリズム実行ステップでは、上記分割した部分領域10a内において、当該部分領域10a内に含まれる上記複数の配置要素9のうちの少なくとも一つの配置要素9を、配置要素密度が高い場所から配置要素密度が低い場所へと移動させている。
That is, in the second algorithm execution step (step S4 in FIG. 2), at least one placement element 9 among the plurality of placement elements 9 in the intermediate placement state is placed from a place where the placement element density is high. By moving to a lower place, an algorithm to which an analogy of hydrodynamics is applied is executed.
When the arrangement area 10 is divided into a plurality of partial areas 10a, the second algorithm execution step includes at least one of the plurality of arrangement elements 9 included in the partial area 10a in the divided partial area 10a. One placement element 9 is moved from a place where the placement element density is high to a place where the placement element density is low.

ここで、配置要素9を移動させる際には、以下のような方法を用いることができる。
(1)近傍性の保存
流体のアナロジーでいえば、粘性のため近接する配置要素9同士は容易に遠くへ引き離されない。
従って、図14(a),図14(b)に示すように、近接する配置要素9同士は移動後も近くに位置するように移動させる。
Here, when the arrangement element 9 is moved, the following method can be used.
(1) Preservation of proximity In terms of fluid analogy, adjacent placement elements 9 are not easily separated away due to viscosity.
Accordingly, as shown in FIGS. 14A and 14B, the adjacent arrangement elements 9 are moved so as to be located close to each other after the movement.

即ち、第2アルゴリズム実行ステップでは、上記複数の配置要素9間の近傍性を保存しながら、上記複数の配置要素9のうちの少なくとも一つの配置要素9を移動させることができる。
(2)順序性の保存
図15(a),図15(b)に示すように、ある配置要素9と別の配置要素9とが所定の位置関係を有する場合(例えば、ある配置要素9が別の配置要素9の上又は右の位置にある場合等)、移動後も2つの配置要素9がこの位置関係を保つように配置要素9を移動する。
That is, in the second algorithm execution step, at least one of the plurality of arrangement elements 9 can be moved while preserving the proximity between the plurality of arrangement elements 9.
(2) Preserving Order As shown in FIGS. 15A and 15B, when a certain arrangement element 9 and another arrangement element 9 have a predetermined positional relationship (for example, when a certain arrangement element 9 is In the case where the position is on the right side or the right side of another position element 9), the position elements 9 are moved so that the two position elements 9 maintain this positional relationship even after the movement.

これは配置最適化問題の解が与える配置要素9間の相対的な位置関係を保存する働きがある。
即ち、第2アルゴリズム実行ステップでは、上記複数の配置要素9間の順序性を保存しながら、上記複数の配置要素9のうちの少なくとも一つの配置要素9を移動させることができる。
This serves to preserve the relative positional relationship between the placement elements 9 given by the solution of the placement optimization problem.
That is, in the second algorithm execution step, at least one of the plurality of arrangement elements 9 can be moved while preserving the order between the plurality of arrangement elements 9.

(3)逐次添加法
一度に全ての配置要素9の移動を考慮するのではなく、最初はごく少数の配置要素9のみの移動を考慮する。これら少数の配置要素9を移動させて、これら少数の配置要素9の密度を均一にした後に、まだ考慮していない配置要素9の中から再び少数の配置要素9を選択し、すでに移動の終った配置要素9の集合に付け加える。そして、この新たに配置要素9が添加された配置要素9の集合について、配置要素9の密度を均一にするように配置要素9の移動を再度実施する。
(3) Sequential addition method Instead of considering the movement of all the arrangement elements 9 at a time, the movement of only a few arrangement elements 9 is considered at first. After moving these few placement elements 9 and making the density of these few placement elements 9 uniform, a small number of placement elements 9 are again selected from the placement elements 9 not yet considered, and the movement has already ended. Is added to the set of arranged elements 9. Then, the arrangement element 9 is moved again so that the density of the arrangement elements 9 is made uniform for the set of arrangement elements 9 to which the arrangement elements 9 are newly added.

例えば、図16(a)に示すように、配置要素9を、符号Aで示す配置要素9の集合と、符号Bで示す配置要素9の集合とに分ける。なお、図16(a)では、符号Aで示す配置要素9を斜線で示し、符号Bで示す配置要素9を網かけで示している。
そして、まず、図16(b),図16(c)に示すように符号Aで示す配置要素9の集合の疎密を解消して、図16(d)に示すように、疎密が解消された当該配置要素9の集合に符号Bで示す配置要素9の集合を添加する。続いて、図16(e)に示すように、符号Bで示す配置要素9の集合の疎密を解消する。
For example, as shown in FIG. 16A, the arrangement element 9 is divided into a set of arrangement elements 9 indicated by reference numeral A and a set of arrangement elements 9 indicated by reference numeral B. In FIG. 16A, the arrangement element 9 indicated by reference numeral A is indicated by diagonal lines, and the arrangement element 9 indicated by reference numeral B is indicated by shading.
First, as shown in FIGS. 16 (b) and 16 (c), the density of the set of arrangement elements 9 indicated by symbol A is eliminated, and the density is eliminated as shown in FIG. 16 (d). A set of arrangement elements 9 indicated by reference numeral B is added to the set of arrangement elements 9. Subsequently, as shown in FIG. 16E, the density of the set of the arrangement elements 9 indicated by the symbol B is eliminated.

即ち、第2アルゴリズム実行ステップでは、中間配置状態にある上記複数の配置要素9の疎密を解消する際に、疎密解消対象となる配置要素9を逐次添加していくことができる。
(4)固定配置要素の考慮
固定配置要素は移動させることができない配置要素9であるが、固定配置要素がある場合に、固定配置要素を考慮せずに固定配置要素以外の配置要素9のみを移動させると、固定配置要素の周辺の配置要素密度が大きくなりやすい傾向がある。
In other words, in the second algorithm execution step, the arrangement elements 9 that are the objects of the density elimination can be sequentially added when the density of the plurality of arrangement elements 9 in the intermediate arrangement state is eliminated.
(4) Consideration of Fixed Arrangement Elements The fixed arrangement element is an arrangement element 9 that cannot be moved. However, when there is a fixed arrangement element, only the arrangement elements 9 other than the fixed arrangement element are considered without considering the fixed arrangement element. If moved, the arrangement element density around the fixed arrangement element tends to increase.

そこで、固定配置要素の周辺に配置要素9が集積しないようにするため、上記複数の配置要素9の中に固定配置要素がある場合には、第2アルゴリズム実行ステップでは、固定配置要素も疎密解消対象となる配置要素9とみなして、中間配置状態にある上記複数の配置要素9の疎密を解消することが好ましい。
(5)大きな配置要素の考慮
他の配置要素9に比べて配置領域10を占める割合が大きな配置要素がある場合に、この大きな配置要素を移動させると、大きな配置要素は多数の配置要素9と重なりやすいため、配置要素密度を著しく増大させる恐れがある。
Therefore, in order to prevent the arrangement elements 9 from being accumulated around the fixed arrangement elements, when there are fixed arrangement elements among the plurality of arrangement elements 9, the fixed arrangement elements are also eliminated in the second algorithm execution step. It is preferable to consider the arrangement elements 9 to be targeted and eliminate the density of the plurality of arrangement elements 9 in the intermediate arrangement state.
(5) Consideration of Large Arrangement Elements If there is an arrangement element that occupies the arrangement area 10 in comparison with other arrangement elements 9, if this large arrangement element is moved, the large arrangement element becomes a large number of arrangement elements 9. Since they tend to overlap, there is a risk of significantly increasing the placement element density.

これを避けるためには、大きな配置要素の移動量を他の配置要素9の移動量に比べて比較的小さくすればよい。
即ち、上記複数の配置要素9の中に大きな配置要素がある場合には、第2アルゴリズム実行ステップでは、大きな配置要素の移動量を小さくして、中間配置状態にある上記複数の配置要素9の疎密を解消することが好ましい。
In order to avoid this, the movement amount of a large arrangement element should be relatively small compared to the movement amounts of other arrangement elements 9.
That is, when there is a large arrangement element among the plurality of arrangement elements 9, in the second algorithm execution step, the movement amount of the large arrangement element is reduced to reduce the movement amount of the plurality of arrangement elements 9 in the intermediate arrangement state. It is preferable to eliminate the density.

また、図17に示すように、大きな配置要素9aが帯状領域Ti と帯状領域Ti+1 とをまたぐように配置領域10に存在している場合には、注意が必要である。特に、大きな配置要素9aの周辺の配置要素9の移動方向が帯状領域Ti と帯状領域Ti+1 で反対である場合には、この大きな配置要素9aは動かさないようにする必要がある。
(6)配置要素密度の高い帯状領域の疎密の解消方法
配置要素密度の高い帯状領域Si (Ti )の疎密の解消方法には、一挙に(一度に)配置要素9を移動させて一度に密度の高い帯状領域Si (Ti )をなくす方法と、徐々に(段階的に)配置要素9を移動させて段階的に高い配置要素密度をならしていく方法とがある。
In addition, as shown in FIG. 17, care is required when a large arrangement element 9a exists in the arrangement area 10 so as to straddle the band-like area T i and the band-like area T i + 1 . In particular, when the movement direction of the arrangement element 9 around the large arrangement element 9a is opposite between the band-like region T i and the band-like region T i + 1 , it is necessary to prevent the large arrangement element 9a from moving.
(6) Method for eliminating the density of the band-like region having a high arrangement element density The method for eliminating the density of the band-like region S i (T i ) having a high arrangement element density is performed by moving the arrangement elements 9 at once (at a time). There are a method of eliminating the high density belt-like regions S i (T i ) and a method of gradually moving the placement elements 9 gradually (in steps) to increase the placement element density in steps.

即ち、第2アルゴリズム実行ステップでは、中間配置状態にある上記複数の配置要素9の疎密を解消する際に、移動対象となる配置要素9を一挙に移動させてもよいし、移動対象となる要素を徐々に移動させてもよい。
これにより、第1実施形態にかかる配置最適化問題処理方法においては、第1アルゴリズム実行ステップでは、上記複数の配置要素9の初期配置状態に関する情報が入力されると、遺伝的アルゴリズム(GAc)を実行して、初期配置状態にある上記複数の配置要素9の疎密が解消される。
That is, in the second algorithm execution step, when the density of the plurality of arrangement elements 9 in the intermediate arrangement state is eliminated, the arrangement elements 9 to be moved may be moved at once, or the elements to be moved May be gradually moved.
Thereby, in the layout optimization problem processing method according to the first embodiment, in the first algorithm execution step, when information on the initial layout state of the plurality of layout elements 9 is input, the genetic algorithm (GAc) is calculated. As a result, the density of the plurality of arrangement elements 9 in the initial arrangement state is eliminated.

そして、第2アルゴリズム実行ステップでは、第1アルゴリズム実行ステップにて疎密が解消された後の上記複数の配置要素9の中間配置状態に関する情報が入力されると、局所的疎密解消アルゴリズムを実行して、中間配置状態にある上記複数の配置要素9の疎密が更に解消される。
上述のように第1アルゴリズム実行ステップと第2アルゴリズム実行ステップとを実行することにより、上記複数の配置要素9を配置領域10に最適な状態で配置する配置最適化問題を処理することができる。
In the second algorithm execution step, when information on the intermediate arrangement state of the plurality of arrangement elements 9 after the density is eliminated in the first algorithm execution step, the local density elimination algorithm is executed. Further, the density of the plurality of arrangement elements 9 in the intermediate arrangement state is further eliminated.
By executing the first algorithm execution step and the second algorithm execution step as described above, it is possible to process an arrangement optimization problem in which the plurality of arrangement elements 9 are arranged in an optimum state in the arrangement area 10.

このように、本発明の第1実施形態にかかる配置最適化問題処理方法によれば、遺伝的アルゴリズム(GAc)による疎密解消法と、流体力学のアナロジーが適用されたアルゴリズムを用いた局所的疎密解消法(LO)とを組み合わせているので、適応度の増加を加速して、遺伝的アルゴリズム(GAc)の高速化を実現することができる。
また、遺伝的アルゴリズム(GAc)において、配置要素9の疎密の解消に適した交叉を導入しているので、解を効率的に発生させることができ、最適解を効率的に探索することができる。
As described above, according to the layout optimization problem processing method according to the first embodiment of the present invention, the local density using a genetic algorithm (GAc) and the algorithm to which an analogy of fluid dynamics is applied. Since the resolution method (LO) is combined, the increase in fitness can be accelerated and the speed of the genetic algorithm (GAc) can be realized.
Moreover, in the genetic algorithm (GAc), crossover suitable for eliminating the density of the arrangement elements 9 is introduced, so that the solution can be generated efficiently and the optimum solution can be searched efficiently. .

さらに、第2アルゴリズム実行ステップが、複数の配置要素9間の近傍性を保存しながら配置要素9を移動させたり、複数の配置要素9間の順序性を保存しながら配置要素9を移動させたりできるので、処理できる配置最適化問題の範囲を拡大することができる。
また、第2アルゴリズム実行ステップが、配置要素9の疎密を解消する際に、疎密解消対象となる配置要素9を逐次添加したり、固定配置要素も疎密解消対象となる配置要素9とみなしたり、大きな配置要素9の移動量を小さくしたり、移動対象となる配置要素9を一挙に移動させたり、移動対象となる配置要素9を徐々に移動させたりできるので、更に処理できる配置最適化問題の範囲を拡大することができる。
Furthermore, the second algorithm execution step moves the placement element 9 while preserving the proximity between the plurality of placement elements 9, or moves the placement element 9 while preserving the order between the plurality of placement elements 9. As a result, the range of layout optimization problems that can be processed can be expanded.
In addition, when the second algorithm execution step eliminates the density of the arrangement elements 9, the arrangement elements 9 that are the targets for the density elimination are sequentially added, or the fixed arrangement elements are also regarded as the arrangement elements 9 that are the objects of the density elimination. Since the movement amount of the large arrangement element 9 can be reduced, the arrangement element 9 to be moved can be moved all at once, or the arrangement element 9 to be moved can be gradually moved. The range can be expanded.

なお、上述においては、第1アルゴリズム実行ステップにて遺伝的アルゴリズム(GAc)による疎密解消法を実行した後に、第2アルゴリズム実行ステップにて局所的疎密解消法(LO)を実行することにより、遺伝的アルゴリズム(GAc)による疎密解消法と局所的疎密解消法(LO)とを組み合わせた場合について説明したが、第1アルゴリズム実行ステップが遺伝的アルゴリズム(GAc)を実行している中で、第2アルゴリズム実行ステップが局所的疎密解消アルゴリズムを実行することにより、遺伝的アルゴリズム(GAc)による疎密解消法と局所的疎密解消法(LO)とを組み合わせることもできる。   In the above description, the genetic algorithm (GAc) is performed in the first algorithm execution step, and then the local algorithm is performed in the second algorithm execution step. The case where the sparse / dense elimination method using the local algorithm (GAc) and the local sparse / dense elimination method (LO) are combined has been described. However, while the first algorithm execution step is executing the genetic algorithm (GAc), the second By executing the local sparse / dense elimination algorithm in the algorithm execution step, the sparse / dense elimination method by the genetic algorithm (GAc) and the local sparse / dense elimination method (LO) can be combined.

このときの配置最適化問題処理装置1の動作を、図18に示すフローチャートを用いて説明する。
まず、配置最適化問題処理装置1に、上記複数の配置要素9の初期配置結果(初期配置状態に関する情報)が入力される(ステップA1)。
この配置要素9の初期配置結果が入力されると、配置最適化問題処理装置1においては、上記第1アルゴリズム実行ステップにより、配置結果のコピーを作ることにより染色体の集団が準備される(ステップA2)。
The operation of the arrangement optimization problem processing apparatus 1 at this time will be described using the flowchart shown in FIG.
First, the initial optimization result (information regarding the initial arrangement state) of the plurality of arrangement elements 9 is input to the arrangement optimization problem processing apparatus 1 (step A1).
When the initial placement result of the placement element 9 is input, the placement optimization problem processing apparatus 1 prepares a population of chromosomes by making a copy of the placement result in the first algorithm execution step (step A2). ).

続いて、第2アルゴリズム実行ステップでは、各染色体(各配置結果)に対して、配置領域10の分割方法は同じであるがその他の制御パラメータが異なる局所的疎密解消法(LO)が実行されて、配置結果の疎密の解消が試みられる(ステップA3)。なお、局所的疎密解消法(LO)は、流体力学のアナロジーが適用されたアルゴリズムを用いて実行される。   Subsequently, in the second algorithm execution step, for each chromosome (each placement result), a local sparse / dense elimination method (LO) is executed in which the method for dividing the placement region 10 is the same but other control parameters are different. Attempts are made to eliminate the density of the arrangement result (step A3). The local sparse / dense elimination method (LO) is executed using an algorithm to which an analogy of fluid dynamics is applied.

さらに、第1アルゴリズム実行ステップでは、各染色体に対して、遺伝オペレーションとしての交叉,突然変異及び選択が施され(ステップA4〜A6)、最高の適応度値をもつ染色体(最適な染色体)の適応度値が所定の基準値以上であるか、又は、配置結果の疎密が解消されたかどうかが判断される(ステップA7)。
そして、最適な染色体の適応度値が所定の基準値以上でない、又は、配置結果の疎密が解消されていないと判断された場合には、上記ステップA3以降の処理を繰り返し(ステップA7のNOルート)、最適な染色体の適応度値が所定の基準値以上である、又は、配置結果の疎密が解消されていると判断された場合には、その最適な染色体が配置最適化問題の解として出力されて、配置最適化問題処理装置1での処理が終了する(ステップA7のYESルート)。
Furthermore, in the first algorithm execution step, crossover, mutation and selection as genetic operations are performed on each chromosome (steps A4 to A6), and the chromosome with the highest fitness value (optimum chromosome) is adapted. It is determined whether the degree value is equal to or greater than a predetermined reference value, or whether the arrangement result has been eliminated (step A7).
When it is determined that the optimal fitness value of the chromosome is not equal to or greater than a predetermined reference value, or the arrangement result is not resolved, the process after step A3 is repeated (NO route of step A7). ) If it is determined that the optimal fitness value of the chromosome is equal to or higher than a predetermined reference value or the density of the arrangement result has been eliminated, the optimal chromosome is output as a solution to the arrangement optimization problem. Thus, the processing in the placement optimization problem processing apparatus 1 is completed (YES route in step A7).

このようにしても、上述したものと同様の利点を得ることができる。
また、流体力学のアナロジーが適用されたアルゴリズムを用いて局所的疎密解消法(LO)を実行する際に、図13(a)〜図13(c)に示すように、ある配置領域10を縦方向に分割して各配置要素9を移動させるとともに、他の配置領域10を横方向に分割して各配置要素9を移動させ、特定の配置要素9の、縦方向の分割における移動(移動方向と移動量)と、横方向の分割における移動(移動方向と移動量)を、例えばそれぞれベクトルとみなして、2つのベクトルを合成することにより、当該特定の配置要素9の移動方向と移動量を求め、これに基づいて当該特定の配置要素9を移動させてもよい。
Even if it does in this way, the same advantage as what was mentioned above can be acquired.
Further, when executing the local sparse / dense elimination method (LO) using an algorithm to which an analogy of fluid mechanics is applied, as shown in FIGS. Each of the placement elements 9 is moved while being divided in the direction, and each placement element 9 is moved by dividing the other placement region 10 in the horizontal direction to move the specific placement element 9 in the vertical division (moving direction). And the movement amount) and the movement in the horizontal division (movement direction and movement amount) are considered as vectors, for example, and by combining the two vectors, the movement direction and movement amount of the specific arrangement element 9 are determined. The specific arrangement element 9 may be moved based on this.

(b3)第1実施形態の変形例の説明
上述した第1実施形態においては、第2アルゴリズム実行ステップが、局所的疎密解消法(LO)を実行する際に、局所的疎密解消アルゴリズムとして、流体力学のアナロジーが適用されたアルゴリズムを用いる場合について説明したが、第2アルゴリズム実行ステップは、局所的疎密解消アルゴリズムとして、モーフィングのアナロジーが適用されたアルゴリズムを用いることもできる。
(B3) Description of Modified Example of First Embodiment In the first embodiment described above, when the second algorithm execution step executes the local sparse / dense elimination method (LO), as a local sparse / dense elimination algorithm, Although the case where an algorithm to which a dynamic analogy is applied has been described, the second algorithm execution step can use an algorithm to which a morphing analogy is applied as a local sparse / dense resolution algorithm.

モーフィングのアナロジーとは、ある2次元画像を徐々に変形して他の画像にする画像処理技術であるモーフィング(morphing)を模倣し、配置領域10の部分領域10a内における配置要素9の移動をモーフィングにおける変形動作としてとらえたものである。ただし、画像処理技術のモーフィングとは異なり、配置要素9自体の大きさや形状は変化せず、配置要素9の配置領域10上での位置座標のみが変化するようにする。   The morphing analogy imitates morphing, which is an image processing technique that gradually transforms a two-dimensional image into another image, and morphs the movement of the arrangement element 9 in the partial area 10a of the arrangement area 10. This is taken as a deformation operation in. However, unlike the morphing of the image processing technique, the size and shape of the arrangement element 9 itself are not changed, and only the position coordinates of the arrangement element 9 on the arrangement area 10 are changed.

そして、モーフィングのアナロジーによって配置要素9の疎密の解消を実行する際には、前述の第1実施形態にて説明したように配置領域10を分割して得られた各帯状領域内で、図19(a)に示すように、それぞれ配置要素9を移動させる際の中心点(モーフィング中心部)Cを決定する。そして、図19(b)に示すように、この中心点Cを基準として、この中心点Cから配置要素までの距離に応じて、配置要素9間の相対的な位置関係を保ったまま配置要素9の座標を増加させることにより配置要素9間の距離を増大させ、配置要素9を当該配置要素9の方向に(即ち、配置要素9を中心点Cから配置要素9が存在する方向に放射状に拡散するように)移動させる。   When the density of the arrangement elements 9 is eliminated by the morphing analogy, as shown in the first embodiment, each band-like area obtained by dividing the arrangement area 10 is shown in FIG. As shown to (a), the center point (morphing center part) C at the time of moving the arrangement | positioning element 9 is determined, respectively. Then, as shown in FIG. 19 (b), with the center point C as a reference, the placement elements are maintained while maintaining the relative positional relationship between the placement elements 9 according to the distance from the center point C to the placement elements. The distance between the arrangement elements 9 is increased by increasing the coordinates of the arrangement elements 9, and the arrangement elements 9 are arranged in the direction of the arrangement elements 9 (that is, the arrangement elements 9 are arranged radially from the center point C in the direction in which the arrangement elements 9 exist). Move).

ここで、モーフィングの中心点Cは、以下に示す方法のいずれかにより決定することができる。
(1)配置要素9の重心を用いる方法
配置要素9の重心の位置をモーフィングの中心とする方法である。
即ち、各配置要素9の座標を(x1 ,y1 ),(x2 ,y2 ),…,(xM ′,yM ′)とするとき、モーフィングの中心をその重心、
Here, the center point C of the morphing can be determined by any of the following methods.
(1) Method using the center of gravity of the arrangement element 9 This is a method in which the position of the center of gravity of the arrangement element 9 is used as the center of morphing.
That is, when the coordinates of each placement element 9 are (x 1 , y 1 ), (x 2 , y 2 ),..., (X M ′, y M ′), the center of the morphing is its center of gravity,

Figure 0004032070
Figure 0004032070

とする方法である。
(2)配置要素9の数に基づいた方法
配置領域10の各帯状領域において、帯状領域のX軸に垂直な線であってこの線の両側に位置する配置要素9の数が等しくなるような線(X軸に垂直な線で配置要素数をX方向に二等分する線)と、帯状領域のY軸に垂直な線であってこの線の両側に位置する配置要素9の数が等しくなるような線(Y軸に垂直な線で配置要素数をY方向に二等分する線)を決定する。そして、これら二つの線の交点をモーフィングの中心とする方法である。
It is a method.
(2) Method based on the number of placement elements 9 In each strip-like region of the placement region 10, the number of placement elements 9 that are perpendicular to the X-axis of the strip-like region and are located on both sides of this line are equal. A line (a line perpendicular to the X axis that bisects the number of arrangement elements in the X direction) is equal to the number of arrangement elements 9 that are perpendicular to the Y axis of the belt-like region and are located on both sides of the line. A line (a line perpendicular to the Y axis that bisects the number of arranged elements in the Y direction) is determined. And it is the method which makes the intersection of these two lines the center of morphing.

(3)配置要素9の面積に基づいた方法
配置領域10の各帯状領域において、帯状領域のX軸に垂直な線であってこの線の両側に位置する配置要素9の面積が等しくなるような線(X軸に垂直な線で配置要素の総面積をX方向に二等分する線)と、帯状領域のY軸に垂直な線であってこの線の両側に位置する配置要素9の面積が等しくなるような線(Y軸に垂直な線で配置要素の総面積をY方向に二等分する線)を決定する。そして、これら二つの線の交点をモーフィングの中心とする方法である。
(3) Method Based on Area of Arrangement Element 9 In each band-like area of arrangement area 10, the area of arrangement element 9 which is a line perpendicular to the X axis of the band-like area and located on both sides of this line is equal. The line (a line perpendicular to the X axis that bisects the total area of the arrangement element in the X direction) and the area of the arrangement element 9 that is perpendicular to the Y axis of the belt-like region and is located on both sides of this line Are equal to each other (a line perpendicular to the Y axis that bisects the total area of the arranged elements in the Y direction). And it is the method which makes the intersection of these two lines the center of morphing.

即ち、第2アルゴリズム実行ステップでは、中間配置状態にある上記複数の配置要素9に関する情報(配置要素9の重心,総数,総面積等)に基づいて中心点Cを決定し、上記複数の配置要素9のうちの少なくとも一つの配置要素9を中心点Cから離隔した場所へと移動させることにより、モーフィングのアナロジーが適用されたアルゴリズムを実行しているのである。   That is, in the second algorithm execution step, a center point C is determined based on information (the centroid, total number, total area, etc. of the arrangement elements 9) regarding the plurality of arrangement elements 9 in the intermediate arrangement state, and the plurality of arrangement elements 9 By moving at least one arrangement element 9 out of 9 to a location separated from the center point C, an algorithm to which a morphing analogy is applied is executed.

そして、上記複数の配置要素9を配置する配置領域10を複数の帯状領域(又は部分領域10a)に分割したときには、第2アルゴリズム実行ステップでは、当該帯状領域毎に中心点Cを決定し、当該帯状領域内において、当該帯状領域内に含まれる上記複数の配置要素9の少なくとも一つの配置要素9を上記中心点Cから離隔した場所へと移動させている。   When the placement area 10 in which the plurality of placement elements 9 are placed is divided into a plurality of belt-like areas (or partial areas 10a), the second algorithm execution step determines the center point C for each belt-like area, In the belt-like region, at least one of the plurality of placement elements 9 included in the belt-like region is moved to a place separated from the center point C.

ここで、配置要素9の移動量の決め方を以下に示す。
(1)配置要素9の移動量の線形的拡大
モーフィングの中心点Cから配置要素9の中心までの距離に比例させて(即ち線形に)、この中心点Cから当該配置要素9の方向に向かって配置要素9を移動させる。
即ち、第2アルゴリズム実行ステップでは、上記複数の配置要素9の少なくとも一つの配置要素9を中心点Cから離隔した場所へと移動させる際に、中心点Cから移動対象となる配置要素9までの距離を線形的に拡大することができる。
Here, how to determine the movement amount of the placement element 9 will be described below.
(1) Linear expansion of the movement amount of the placement element 9 In proportion to the distance from the center point C of the morphing to the center of the placement element 9 (that is, linearly), the direction from the center point C toward the placement element 9 To move the arrangement element 9.
That is, in the second algorithm execution step, when moving at least one of the plurality of arrangement elements 9 to a place separated from the center point C, the process from the center point C to the arrangement element 9 to be moved is performed. The distance can be expanded linearly.

(2)配置要素9の移動量の非線形的拡大
モーフィングの中心点Cから当該配置要素9の方向に向かって配置要素9を移動させるときに、移動させる距離はこの中心点Cから配置要素9の中心までの距離に応じた非線形な関数で定義されている。
具体的には、中心点Cの近傍は配置要素9の疎密が大きいことから、中心点近傍の配置要素9の移動量を大きくする一方、分割された帯状領域(又は部分領域10a)の内部で配置要素9を移動させるために、当該帯状領域の境界近傍の配置要素9の移動量はより小さくするようにする。
(2) Non-linear expansion of the movement amount of the placement element 9 When the placement element 9 is moved from the morphing center point C in the direction of the placement element 9, the distance moved is from the center point C to the placement element 9. It is defined by a non-linear function corresponding to the distance to the center.
Specifically, since the arrangement element 9 is close and dense in the vicinity of the center point C, the movement amount of the arrangement element 9 in the vicinity of the center point is increased, while the inside of the divided belt-like area (or partial area 10a) is increased. In order to move the placement element 9, the movement amount of the placement element 9 in the vicinity of the border of the band-like region is made smaller.

即ち、第2アルゴリズム実行ステップでは、上記複数の配置要素9の少なくとも一つの配置要素9を中心点Cから離隔した場所へと移動させる際に、中心点Cから移動対象となる配置要素9までの距離を非線形的に拡大することもできる。
このようなモーフィングのアナロジーが適用されたアルゴリズムを用いて局所的疎密解消法(LO)を実行しても、上述した第1実施形態の場合と同様の利点を得ることができる。
That is, in the second algorithm execution step, when moving at least one of the plurality of arrangement elements 9 to a location separated from the center point C, the process from the center point C to the arrangement element 9 to be moved is performed. It is also possible to increase the distance nonlinearly.
Even when the local sparse / dense elimination method (LO) is executed using an algorithm to which such a morphing analogy is applied, the same advantages as those in the first embodiment described above can be obtained.

また、第2アルゴリズム実行ステップが、配置要素9を中心点Cから離隔した場所へと移動させる際に、中心点Cから移動対象となる配置要素9までの距離を線形的に拡大したり、中心点Cから移動対象となる配置要素9までの距離を非線形的に拡大したりできるので、処理できる配置最適化問題の範囲を拡大することができる。
なお、この第1実施形態の変形例にかかる配置最適化問題処理方法においても、配置要素9の疎密を解消する際に、第1実施形態にて説明したように、逐次添加法を用いたり、固定配置要素や大きな配置要素を考慮したり、配置要素9を一挙に移動させたり、徐々に移動させたりすることができる。
Further, when the second algorithm execution step moves the placement element 9 to a location separated from the center point C, the distance from the center point C to the placement element 9 to be moved is linearly expanded, Since the distance from the point C to the placement element 9 to be moved can be increased nonlinearly, the range of placement optimization problems that can be processed can be expanded.
Even in the placement optimization problem processing method according to the modification of the first embodiment, when eliminating the density of the placement elements 9, as described in the first embodiment, a sequential addition method may be used, A fixed arrangement element or a large arrangement element can be considered, or the arrangement element 9 can be moved at once or gradually.

(b4)第2実施形態の説明
本発明の第2実施形態にかかる配置最適化問題処理方法について説明する。
第2実施形態にかかる配置最適化問題処理方法は、上記第1アルゴリズム実行ステップ(図2のステップS3)において、遺伝的アルゴリズム(GAp)を実行し、第2アルゴリズム実行ステップ(図2のステップS4)において、局所的疎密解消アルゴリズムとして、第1実施形態にて前述した流体力学のアナロジーが適用されたアルゴリズムを実行するものである。
(B4) Description of Second Embodiment An arrangement optimization problem processing method according to the second embodiment of the present invention will be described.
In the placement optimization problem processing method according to the second embodiment, the genetic algorithm (GAp) is executed in the first algorithm execution step (step S3 in FIG. 2), and the second algorithm execution step (step S4 in FIG. 2). ), An algorithm to which the analogy of fluid dynamics described above in the first embodiment is applied is executed as a local sparse / dense elimination algorithm.

ここで、第2実施形態にて実行される遺伝的アルゴリズム(GAp)は、局所的疎密解消法(LO)において配置領域10を分割する幅を最適化するための遺伝的アルゴリズムである。
即ち、第2実施形態にかかる配置最適化問題処理方法は、局所的疎密解消法(LO)のパラメータである配置領域10を分割する幅のリストからなる各染色体に遺伝的アルゴリズム(GAp)を適用することにより、配置領域10の分割を最適化して、効率的に配置要素9の疎密を解消しようとするものである。
Here, the genetic algorithm (GAp) executed in the second embodiment is a genetic algorithm for optimizing the width of dividing the arrangement region 10 in the local sparse / dense elimination method (LO).
That is, the placement optimization problem processing method according to the second embodiment applies the genetic algorithm (GAp) to each chromosome consisting of a list of widths that divide the placement region 10 which is a parameter of the local sparse / dense elimination method (LO). By doing so, the division of the arrangement area 10 is optimized to efficiently eliminate the density of the arrangement elements 9.

換言すれば、この方法は、配置領域10の分割法を最適にするために、与えられた配置を初期配置として、局所的疎密解消法(LO)におけるパラメータ(配置領域10の横幅)を遺伝的アルゴリズム(GAp)で最適化することにより、疎密の解消を効率的に実施する方法である。
なお、この配置最適化問題処理方法は、GAp+LOと表記することができる。
In other words, in this method, in order to optimize the division method of the arrangement region 10, the parameter (width of the arrangement region 10) in the local sparse / dense elimination method (LO) is genetically set with the given arrangement as the initial arrangement. This is a method for efficiently eliminating the density by optimizing with an algorithm (GAp).
This placement optimization problem processing method can be expressed as GAp + LO.

つまり、第2実施形態では、上記第1アルゴリズム実行ステップが、上記第2アルゴリズム実行ステップにおいて実行される局所的疎密解消アルゴリズムにて用いられるパラメータを遺伝子として表現し、このパラメータを決定する問題の解候補として当該遺伝子の配列からなる染色体を用いることにより、遺伝的アルゴリズム(GAp)を実行するようになっている。   That is, in the second embodiment, the first algorithm execution step expresses a parameter used in the local sparse / dense elimination algorithm executed in the second algorithm execution step as a gene, and solves the problem of determining this parameter. A genetic algorithm (GAp) is executed by using a chromosome comprising the sequence of the gene as a candidate.

ここで、パラメータは、配置領域10を分割する幅を規定する情報(部分領域10aの大きさを規定する情報)と、その他の局所的疎密解消法(LO)の制御パラメータとからなる。
つまり、遺伝的アルゴリズム(GAp)では、部分領域10aの幅を規定する情報のリストと、その他の局所的疎密解消法(LO)の制御パラメータのリストとからなる染色体を用いている。
Here, the parameters are composed of information defining the width for dividing the arrangement region 10 (information defining the size of the partial region 10a) and other control parameters for the local density elimination method (LO).
That is, in the genetic algorithm (GAp), a chromosome composed of a list of information that defines the width of the partial region 10a and a list of control parameters for other local sparse / dense resolution (LO) is used.

例えば、配置領域10を縦方向に分割する場合に、帯状領域S1 ,S2 ,…,SN の幅をそれぞれW1 ,W2 ,…,WN としたときの染色体の構成を、図20に示す。ここで、幅W1 ,W2 ,…,WN の合計は、配置領域10の横幅と等しくなければならない。なお、染色体14は、その他の局所的疎密解消法の制御パラメータa1 ,a2 も遺伝子として持っている。 For example, in the case of dividing the layout region 10 in the vertical direction, the band region S 1, S 2, ..., respectively W 1, W 2 the widths of the S N, ..., chromosomal structure when formed into a W N, FIG. 20 shows. Here, the sum of the widths W 1 , W 2 ,..., W N must be equal to the lateral width of the placement region 10. Chromosome 14 also has control parameters a 1 and a 2 of other local sparse / dense elimination methods as genes.

そして、第1アルゴリズム実行ステップでは、二つの親の染色体の遺伝子の重み付き平均を子の染色体の遺伝子とすることにより、遺伝オペレーションとしての交叉が実行される。
ここで、交叉の一例を図21に示す。図21に示すように、染色体15,16を親の染色体として確率的に選んでこれらのコピーを作り、染色体15の遺伝子と染色体16の遺伝子の適当な重みつき平均をとり、これを子の染色体17の遺伝子とすることにより交叉が実行される。
Then, in the first algorithm execution step, the weighted average of the genes of the two parent chromosomes is used as the gene of the child chromosome, so that the crossover as a genetic operation is executed.
An example of crossover is shown in FIG. As shown in FIG. 21, chromosomes 15 and 16 are stochastically selected as parent chromosomes to make a copy of these, taking an appropriate weighted average of the chromosome 15 gene and the chromosome 16 gene, and taking this as the child chromosome. Crossover is performed by setting 17 genes.

なお、図21において、W1 〜W4 …,M1 〜M4 …,Z1 〜Z4 …は、帯状領域S1 ,S2 ,…,SN の幅を示しており、a1 …,b1 …,c1 …は、その他の局所的疎密解消法(LO)の制御パラメータを示している。
ここで、
i =(Wi +Mi )/2 …(4)
i =(ai +bi )/2 …(5)
である。
Incidentally, in FIG. 21, W 1 ~W 4 ..., M 1 ~M 4 ..., Z 1 ~Z 4 ... it is band region S 1, S 2, ..., and the width of the S N, a 1 ... , B 1 ..., C 1 ... Indicate other control parameters of the local density cancellation method (LO).
here,
Z i = (W i + M i ) / 2 (4)
c i = (a i + b i ) / 2 (5)
It is.

このほか、第1アルゴリズム実行ステップでは、パラメータに含まれる部分領域10aの幅を規定する情報の総和が変化しないように調整しながら、染色体の一部の帯状領域を他の染色体の当該帯状領域に対応する帯状領域に張り付けることにより、遺伝オペレーションとしての交叉を実行してもよい。
例えば、一方の染色体の一部分を他方の染色体に張り付ける際に、幅W1 ,W2 ,…,WN の合計が変化しないように他方の染色体に元からある遺伝子を調整しながら交叉を実行する。なお、他方の染色体の一部分を一方の染色体に張り付ける場合も同様である。
In addition, in the first algorithm execution step, while adjusting so that the sum of the information defining the width of the partial region 10a included in the parameter does not change, a part of the zonal region of the chromosome is changed to the zonal region of another chromosome. Crossing as a genetic operation may be performed by pasting the corresponding band-like region.
For example, when pasting a portion of one chromosome to another chromosome, the width W 1, W 2, ..., crossover while adjusting the gene from the original to the other chromosome such that the sum of W N does not change execution To do. The same applies when a part of the other chromosome is attached to one chromosome.

さらに、第1アルゴリズム実行ステップでは、染色体の少なくとも二つの遺伝子を選択し、選択した上記遺伝子に任意の数値を加えることにより、パラメータに含まれる上記部分領域10aの幅を規定する情報の総和が変化しないように調整して、遺伝オペレーションとしての突然変異が実行される。
即ち、染色体の遺伝子に小さな変化をランダムに与えることによって突然変異を起こすのであり、具体的には、選択した遺伝子のうちの一方の遺伝子に所定の数を加える一方、他方の遺伝子から所定の数を引くことにより、部分領域10aの幅を規定する情報の総和が変化しないように調整しながら、突然変異が実行される。
Further, in the first algorithm execution step, at least two genes of the chromosome are selected, and an arbitrary numerical value is added to the selected gene, thereby changing the sum of information defining the width of the partial region 10a included in the parameter. The mutation as a genetic operation is executed in such a manner that the mutation is not performed.
In other words, mutations are caused by randomly giving small changes to chromosomal genes. Specifically, a predetermined number is added to one of the selected genes, while a predetermined number is added from the other gene. By subtracting, mutation is executed while adjusting so that the total sum of information defining the width of the partial region 10a does not change.

ここで、突然変異の一例を図22に示す。図22に示すように、染色体18の任意の二つの遺伝子W3 ,W5 を選択し、遺伝子W5 に小さな正の乱数ΔWを加える一方、遺伝子W3 から当該乱数ΔWを差し引くことにより、部分領域10aの幅を規定する情報の総和が変化しないように調整しながら、染色体18を染色体18′に変化させる。なお、図22に示す例では、その他の局所的疎密解消法(LO)の制御パラメータa2 に絶対値の小さな乱数Δaを加えることによっても、染色体18に突然変異を施している。 Here, an example of the mutation is shown in FIG. As shown in FIG. 22, any two genes W 3 and W 5 of the chromosome 18 are selected and a small positive random number ΔW is added to the gene W 5 while subtracting the random number ΔW from the gene W 3 The chromosome 18 is changed to the chromosome 18 'while adjusting so that the total sum of the information defining the width of the region 10a does not change. In the example shown in FIG. 22, the chromosome 18 is also mutated by adding a random number Δa having a small absolute value to the control parameter a 2 of other local sparse / dense elimination (LO).

より一般には、染色体の任意の二つの遺伝子をWi ,Wj とし、小さな正の乱数をΔWとし、突然変異後の遺伝子をWi ′,Wj ′とすると、遺伝子Wi ′,Wj ′は以下のように表すことができる。
i ′=Wi −ΔW …(6)
j ′=Wj +ΔW …(7)
このほか、第1アルゴリズム実行ステップでは、染色体の任意のm個の遺伝子Wi1,Wi2,…,Wimを選択し、絶対値が小さな乱数をΔWi1,ΔWi2,…,ΔWimを用いて、これらの遺伝子Wi1,Wi2,…,Wimに突然変異を施して遺伝子Wi1′,Wi2′,…,Wim′を生成してもよい。
More generally, if any two genes of the chromosome are W i , W j , a small positive random number is ΔW, and the genes after mutation are W i ′, W j ′, the genes W i ′, W j 'Can be expressed as follows.
W i ′ = W i −ΔW (6)
W j ′ = W j + ΔW (7)
In addition, in the first algorithm executing step, any of the m genes W i1 chromosome, W i2, ..., select W im, [Delta] W i1 small random absolute value, [Delta] W i2, ..., using the [Delta] W im Te, these genes W i1, W i2, ..., gene W i1 subjected to a mutation in the W im ', W i2', ..., may generate the W im '.

このとき、遺伝子Wi1′,Wi2′,…,Wim′は以下のように表すことができる。
ik′=Wik+ΔWik
但し、ΔWi1+ΔWi2+…+ΔWim=0 …(8)
このように、第2実施形態においては、第1アルゴリズム実行ステップでは、遺伝的アルゴリズム(GAp)を実行することにより、配置領域10の分割幅の最適値の候補(最適幅の候補)が複数求められる。
At this time, genes W i1 ′, W i2 ′,..., W im ′ can be expressed as follows.
W ik ′ = W ik + ΔW ik
However, ΔW i1 + ΔW i2 +... + ΔW im = 0 (8)
As described above, in the second embodiment, in the first algorithm execution step, a plurality of optimal value candidates (optimum width candidates) for the division width of the arrangement region 10 are obtained by executing the genetic algorithm (GAp). It is done.

その後、第2アルゴリズム実行ステップでは、第1アルゴリズム実行ステップにて得られた複数の最適幅の候補によりそれぞれ配置領域10を分割して、局所的疎密解消法(LO)を実行することにより、初期配置状態にある上記複数の配置要素9の疎密の解消が試みられる。
そして、第2実施形態においては、再度、第1アルゴリズム実行ステップでの処理に戻り、第1アルゴリズム実行ステップでは、以下のように定義された適応度値関数(即ち、上記複数の配置要素9の疎密を小さくできるような染色体が大きな適応度値をとりうるような適応度値関数)を用いて、遺伝オペレーションとしての選択が実行され、最も疎密が解消された配置結果としての染色体が選択される。
Thereafter, in the second algorithm execution step, the placement area 10 is divided by each of the plurality of optimum width candidates obtained in the first algorithm execution step, and a local sparse / dense elimination method (LO) is executed, thereby An attempt is made to eliminate the density of the plurality of arrangement elements 9 in the arrangement state.
In the second embodiment, the process returns to the first algorithm execution step again. In the first algorithm execution step, the fitness value function defined as follows (that is, the plurality of arrangement elements 9) Selection as a genetic operation is performed using a fitness value function that allows a chromosome that can reduce sparseness to have a large fitness value), and a chromosome as a placement result that is least sparsely sparse is selected. .

適応度値=定数−(配置要素密度の最大値−配置要素密度の最小値)…(9)
適応度値=定数−(配置要素密度が平均配置要素密度以下である配置領域の面積) …(10)
適応度値=定数−(配置要素密度が平均配置要素密度以上である配置領域の面積) …(11)
つまり、これらの適応度値関数を用いて、局所的疎密解消法(LO)を改善し、結果として、配置要素9の疎密解消を改善することが可能になる。
Fitness value = constant− (maximum arrangement element density−minimum arrangement element density) (9)
Fitness value = constant− (area of arrangement area where arrangement element density is below average arrangement element density) (10)
Fitness value = constant− (area of arrangement area where arrangement element density is greater than or equal to average arrangement element density) (11)
In other words, using these fitness value functions, it is possible to improve the local sparse / dense cancellation method (LO) and, as a result, improve the sparse / dense cancellation of the placement element 9.

即ち、第2実施形態にかかる配置最適化問題処理方法においては、第1アルゴリズム実行ステップと第2アルゴリズム実行ステップとを組み合わせて実行することにより、局所的疎密解消アルゴリズムを実行する際に用いるパラメータである分割幅の最適値を求めることを通して、初期配置状態にある上記複数の配置要素9の疎密が解消される。
これにより、上記複数の配置要素9を配置領域10に最適な状態で配置する配置最適化問題を処理することができる。
That is, in the layout optimization problem processing method according to the second embodiment, the parameters used when executing the local sparse / dense elimination algorithm are executed by combining the first algorithm execution step and the second algorithm execution step. By obtaining the optimum value of a certain division width, the density of the plurality of arrangement elements 9 in the initial arrangement state is eliminated.
Thereby, the arrangement optimization problem of arranging the plurality of arrangement elements 9 in the arrangement area 10 in an optimum state can be processed.

このように、本発明の第2実施形態にかかる配置最適化問題処理方法によれば、遺伝的アルゴリズム(GAp)により配置領域10の分割を最適化しているので、効率的に配置要素9の疎密を解消することができる。
また、遺伝的アルゴリズム(GAp)を実行して得られた各染色体により指定される種々の幅で複数の配置領域10を分割して、複数の配置領域10に異なる局所的疎密解消法(LO)を適用し、最適な局所的疎密解消法(LO)を見つけているので、配置領域10の最適な分割法を探索することができる。
As described above, according to the layout optimization problem processing method according to the second embodiment of the present invention, the division of the layout area 10 is optimized by the genetic algorithm (GAp). Can be eliminated.
Further, a plurality of arrangement regions 10 are divided by various widths designated by each chromosome obtained by executing the genetic algorithm (GAp), and different local sparse / dense resolution methods (LO) are divided into the plurality of arrangement regions 10. And the optimum local sparse / dense elimination method (LO) is found, so that the optimum division method of the arrangement region 10 can be searched.

なお、以下に説明するようにして、上記第1アルゴリズム実行ステップが、遺伝的アルゴリズム(GAp)を実行している中で、第2アルゴリズム実行ステップが、局所的疎密解消アルゴリズムを実行することにより、遺伝的アルゴリズム(GAp)と局所的疎密解消法(LO)とを組み合わせることもできる。
このときの配置最適化問題処理装置1の動作を、図23に示すフローチャートを用いて説明する。
As described below, while the first algorithm execution step executes the genetic algorithm (GAp), the second algorithm execution step executes the local sparse / dense elimination algorithm, It is also possible to combine a genetic algorithm (GAp) and a local sparse / dense elimination method (LO).
The operation of the arrangement optimization problem processing apparatus 1 at this time will be described with reference to the flowchart shown in FIG.

まず、配置最適化問題処理装置1に、上記複数の配置要素9の初期配置結果(初期配置状態に関する情報)が入力される(ステップB1)。
この配置要素9の初期配置結果が入力されると、配置最適化問題処理装置1では、上記第1アルゴリズム実行ステップにより、局所的疎密解消法(LO)のパラメータを遺伝子とする染色体の集団が準備される(ステップB2)。
First, the initial optimization result (information regarding the initial arrangement state) of the plurality of arrangement elements 9 is input to the arrangement optimization problem processing apparatus 1 (step B1).
When the initial arrangement result of the arrangement element 9 is input, the arrangement optimization problem processing apparatus 1 prepares a chromosome group using the local sparse / dense elimination (LO) parameter as a gene by the first algorithm execution step. (Step B2).

続いて、第2アルゴリズム実行ステップでは、各染色体に対応する局所的疎密解消法(LO)にて疎密の解消が試みられ〔即ち、それぞれの染色体により指定される幅で複数の配置領域10を分割して、各配置領域10毎に局所的疎密解消法(LO)にて疎密の解消が試みられ〕、適応度値が計算される(ステップB3)。なお、局所的疎密解消法(LO)は、流体力学のアナロジーが適用されたアルゴリズムを用いて実行される。   Subsequently, in the second algorithm execution step, the local density cancellation method (LO) corresponding to each chromosome tries to eliminate the density [that is, the plurality of arrangement regions 10 are divided by the width specified by each chromosome. Then, for each arrangement region 10, the local density is eliminated by the local density elimination method (LO)], and the fitness value is calculated (step B 3). The local sparse / dense elimination method (LO) is executed using an algorithm to which an analogy of fluid dynamics is applied.

その後、第1アルゴリズム実行ステップでは、各染色体に対して、遺伝オペレーションとしての交叉及び突然変異が施され(ステップB4,B5)、最高の適応度値をもつ染色体(最適な染色体)の適応度値が所定の基準値以上であるか、又は、最高の適応度値をもつ染色体により決定される幅で配置領域10を分割して局所的疎密解消法(LO)を実行した場合に、配置要素9の疎密解消結果は満足できるものであるかが判断される(ステップB6)。   Thereafter, in the first algorithm execution step, each chromosome is subjected to crossover and mutation as genetic operations (steps B4 and B5), and the fitness value of the chromosome having the highest fitness value (optimal chromosome) is obtained. Is equal to or greater than a predetermined reference value, or when the arrangement region 9 is divided by a width determined by the chromosome having the highest fitness value and the local sparse / dense elimination method (LO) is executed, the arrangement element 9 It is determined whether or not the result of resolution elimination is satisfactory (step B6).

そして、最適な染色体の適応度値が所定の基準値以上でない、又は、配置要素9の疎密解消結果は満足できるものでないと判断された場合には、上記ステップB3以降の処理を繰り返し(ステップB6のNOルート)、最適な染色体の適応度値が所定の基準値以上である、又は、配置要素9の疎密解消結果は満足できるものであると判断された場合には、そのときの配置要素9の配置結果が配置最適化問題の解として出力されて、配置最適化問題処理装置1での処理が終了する(ステップB6のYESルート)。   When it is determined that the optimal fitness value of the chromosome is not equal to or greater than a predetermined reference value, or the result of the sparse / dense elimination of the arrangement element 9 is not satisfactory, the processes after step B3 are repeated (step B6). If the optimal chromosome fitness value is greater than or equal to a predetermined reference value, or if it is determined that the sparse / dense elimination result of the arrangement element 9 is satisfactory, then the arrangement element 9 at that time Is output as a solution to the placement optimization problem, and the processing in the placement optimization problem processing apparatus 1 ends (YES route in step B6).

このようにしても、上述したものと同様の利点を得ることができる。
なお、この第2実施形態にかかる配置最適化問題処理方法においても、配置要素9の疎密を解消する際に、第1実施形態にて説明したように、逐次添加法を用いたり、固定配置要素や大きな配置要素を考慮したり、配置要素9を一挙に移動させたり、徐々に移動させたりすることができる。
Even if it does in this way, the same advantage as what was mentioned above can be acquired.
Also in the layout optimization problem processing method according to the second embodiment, when eliminating the sparseness of the layout elements 9, as described in the first embodiment, the sequential addition method may be used, or the fixed layout elements may be used. It is possible to consider a large arrangement element, move the arrangement element 9 all at once, or move it gradually.

(b5)第2実施形態の変形例の説明
なお、上述した第2実施形態においては、第2アルゴリズム実行ステップが、局所的疎密解消法(LO)を実行する際に、局所的疎密解消アルゴリズムとして、流体力学のアナロジーが適用されたアルゴリズムを用いる場合について説明したが、前述した第1実施形態の変形例の場合と同様に、第2アルゴリズム実行ステップは、局所的疎密解消アルゴリズムとして、前述したモーフィングのアナロジーが適用されたアルゴリズムを用いることもできる。
(B5) Description of Modified Example of Second Embodiment In the second embodiment described above, when the second algorithm execution step executes the local sparse / dense elimination method (LO), the local sparse / dense elimination algorithm is used. As described above, the case where an algorithm to which an analogy of fluid dynamics is applied has been described. As in the case of the modified example of the first embodiment described above, the second algorithm execution step is performed as the above-described morphing as a local sparse / dense elimination algorithm. An algorithm to which the analogy is applied can also be used.

このように、モーフィングのアナロジーが適用されたアルゴリズムを用いて局所的疎密解消法(LO)を実行しても、上述した第2実施形態の場合と同様の利点を得ることができる。
この場合も、配置要素9の疎密を解消する際に、第1実施形態にて説明したように、逐次添加法を用いたり、固定配置要素や大きな配置要素を考慮したり、配置要素9を一挙に移動させたり、徐々に移動させたりすることができるのは言うまでもない。
As described above, even when the local sparse / dense elimination method (LO) is executed using the algorithm to which the morphing analogy is applied, the same advantages as those of the second embodiment described above can be obtained.
Also in this case, when the density of the arrangement elements 9 is eliminated, as described in the first embodiment, a sequential addition method is used, a fixed arrangement element or a large arrangement element is considered, It goes without saying that it can be moved to or gradually moved.

(b6)第3実施形態の説明
本発明の第3実施形態にかかる配置最適化問題処理方法について説明する。
第3実施形態にかかる配置最適化問題処理方法は、上記第1アルゴリズム実行ステップ(図2のステップS3)において、遺伝的アルゴリズム(GAp)を実行している中で、更に、第1アルゴリズム実行ステップが遺伝的アルゴリズム(GAc)を実行するとともに、第2アルゴリズム実行ステップ(図2のステップS4)が局所的疎密解消アルゴリズムを実行することにより、遺伝的アルゴリズム(GAp,GAc)と局所的疎密解消法(LO)とを組み合わせるものである。
(B6) Description of Third Embodiment A placement optimization problem processing method according to the third embodiment of the present invention will be described.
In the layout optimization problem processing method according to the third embodiment, the genetic algorithm (GAp) is being executed in the first algorithm execution step (step S3 in FIG. 2). Executes the genetic algorithm (GAc) and the second algorithm execution step (step S4 in FIG. 2) executes the local sparse / dense elimination algorithm, so that the genetic algorithm (GAp, GAc) and the local sparse / dense elimination method are executed. (LO).

即ち、第3実施形態にかかる配置最適化問題処理方法は、遺伝的アルゴリズム(GAp)で最適解を求める際に、各世代の終了毎又は複数世代の終了毎に遺伝的アルゴリズム(GAc)を実行するとともに、更に、この遺伝的アルゴリズム(GAc)の実行中に局所的疎密解消法(LO)を実施するものである。
つまり、この方法は、遺伝的アルゴリズム(GAp)の内側に、遺伝的アルゴリズム(GAc)と局所的疎密解消法(LO)とを挿入したものであり、GAp+(GAc+LO)と表記することができる。
In other words, the layout optimization problem processing method according to the third embodiment executes the genetic algorithm (GAc) at the end of each generation or at the end of multiple generations when obtaining an optimal solution using the genetic algorithm (GAp). In addition, a local sparse / dense elimination method (LO) is performed during the execution of the genetic algorithm (GAc).
That is, in this method, the genetic algorithm (GAc) and the local sparse / dense elimination method (LO) are inserted inside the genetic algorithm (GAp), and can be expressed as GAp + (GAc + LO).

このときの配置最適化問題処理装置1の動作を、図24に示すフローチャートを用いて説明する。
まず、配置最適化問題処理装置1に、上記複数の配置要素9の初期配置結果(初期配置状態に関する情報)が入力される(ステップC1)。
この配置要素9の初期配置結果が入力されると、配置最適化問題処理装置1では、上記第1アルゴリズム実行ステップにより、局所的疎密解消法(LO)のパラメータを遺伝子とする、遺伝的アルゴリズム(GAp)の染色体の集団が準備される(ステップC2)。
The operation of the arrangement optimization problem processing apparatus 1 at this time will be described with reference to the flowchart shown in FIG.
First, the initial optimization result (information regarding the initial arrangement state) of the plurality of arrangement elements 9 is input to the arrangement optimization problem processing apparatus 1 (step C1).
When the initial placement result of the placement element 9 is input, the placement optimization problem processing apparatus 1 uses the first algorithm execution step to perform a genetic algorithm (using a local sparse / dense elimination method (LO) parameter) as a gene. A population of chromosomes of GAp) is prepared (step C2).

続いて、第1アルゴリズム実行ステップでは、各染色体に対して、遺伝的アルゴリズム(GAp)における遺伝オペレーションである交叉及び突然変異が施される(ステップC3,C4)。
そして、この遺伝的アルゴリズム(GAp)の実行中に、更に第1アルゴリズム実行ステップにより、遺伝的アルゴリズム(GAc)が実行されるとともに、第2アルゴリズム実行ステップにより、局所的疎密解消アルゴリズムが実行される(ステップC5〜C12)。
Subsequently, in the first algorithm execution step, crossover and mutation, which are genetic operations in the genetic algorithm (GAp), are performed on each chromosome (steps C3 and C4).
During the execution of the genetic algorithm (GAp), the genetic algorithm (GAc) is further executed by the first algorithm execution step, and the local sparse / dense elimination algorithm is executed by the second algorithm execution step. (Steps C5 to C12).

即ち、第1アルゴリズム実行ステップでは、上記ステップC1で取得した配置要素9の初期配置結果のコピーを作ることにより、遺伝的アルゴリズム(GAc)の染色体の集団が準備される(ステップC5)。
そして、遺伝的アルゴリズム(GAp)の複数の染色体により指定される配置領域10の分割法により〔即ち、遺伝的アルゴリズム(GAp)の複数の染色体により指定される幅で〕、複数の遺伝的アルゴリズム(GAc)の染色体である配置領域10がそれぞれ分割される(ステップC6)。
That is, in the first algorithm execution step, a population of chromosomes of the genetic algorithm (GAc) is prepared by making a copy of the initial placement result of the placement element 9 obtained in step C1 (step C5).
A plurality of genetic algorithms (by a width specified by a plurality of chromosomes of the genetic algorithm (GAp)) are divided by the division method of the arrangement region 10 specified by the plurality of chromosomes of the genetic algorithm (GAp). The arrangement region 10 which is a chromosome of GAc) is divided (step C6).

さらに、第1アルゴリズム実行ステップでは、各染色体に対して、遺伝的アルゴリズム(GAc)における遺伝オペレーションである交叉及び突然変異が施される(ステップC7,C8)。
その後、第2アルゴリズム実行ステップでは、各染色体(各配置結果)に対して、配置領域10の分割方法は同じであるがその他の制御パラメータが異なる局所的疎密解消法(LO)が実行されて、配置結果の疎密の解消が試みられる(ステップC9)。なお、局所的疎密解消法(LO)は、流体力学のアナロジーが適用されたアルゴリズム、又は、モーフィングのアナロジーが適用されたアルゴリズムを用いて実行される。
Further, in the first algorithm execution step, crossover and mutation, which are genetic operations in the genetic algorithm (GAc), are performed on each chromosome (steps C7 and C8).
Thereafter, in the second algorithm execution step, for each chromosome (each placement result), a local sparse / dense elimination method (LO) in which the division method of the placement region 10 is the same but other control parameters are different is executed. An attempt is made to eliminate the density of the arrangement result (step C9). The local sparse / dense elimination method (LO) is executed using an algorithm to which an analogy of fluid dynamics is applied or an algorithm to which an analogy of morphing is applied.

さらに、第1アルゴリズム実行ステップでは、各染色体に対して、遺伝的アルゴリズム(GAc)における遺伝オペレーションである選択が施された後に(ステップC10)、遺伝的アルゴリズム(GAc)を行なうように定められた世代数を超えたかが判断される(ステップC11)。
そして、定められた世代数を超えていないと判断された場合〔即ち、まだ定められた世代数分の遺伝的アルゴリズム(GAc)が実行されていないと判断された場合〕には、上記ステップC7以降の処理を繰り返し(ステップC11のNOルート)、定められた世代数を超えたと判断された場合〔即ち、定められた世代数分の遺伝的アルゴリズム(GAc)が実行されたと判断された場合〕には、遺伝的アルゴリズム(GAc)での最適な染色体の持つ適応度値が、遺伝的アルゴリズム(GAp)の染色体の持つ適応度値とされる(ステップC11のYESルートからステップC12)。
Further, in the first algorithm execution step, it is determined that the genetic algorithm (GAc) is performed on each chromosome after selection that is a genetic operation in the genetic algorithm (GAc) is performed (step C10). It is determined whether the number of generations has been exceeded (step C11).
If it is determined that the predetermined number of generations has not been exceeded (that is, if it is determined that the genetic algorithm (GAc) for the predetermined number of generations has not yet been executed), step C7 is performed. When the subsequent processing is repeated (NO route of step C11), when it is determined that the predetermined number of generations has been exceeded (that is, when it is determined that the genetic algorithm (GAc) for the predetermined number of generations has been executed) The fitness value of the optimal chromosome in the genetic algorithm (GAc) is set as the fitness value of the chromosome of the genetic algorithm (GAp) (from the YES route in step C11 to step C12).

その後、第1アルゴリズム実行ステップでは、再度遺伝的アルゴリズム(GAp)の実行に戻り、各染色体に対して、遺伝的アルゴリズム(GAp)における遺伝オペレーションである選択が施され(ステップC13)、最高の適応度値をもつ染色体(最適な染色体)の適応度値が所定の基準値以上であるか、又は、配置結果の疎密が解消されたかどうかが判断される(ステップC14)。   Thereafter, in the first algorithm execution step, the process returns to the execution of the genetic algorithm (GAp) again, and each chromosome is subjected to selection that is a genetic operation in the genetic algorithm (GAp) (step C13). It is determined whether the fitness value of the chromosome having the degree value (optimal chromosome) is equal to or greater than a predetermined reference value or whether the arrangement result has been eliminated (step C14).

そして、最適な染色体の適応度値が所定の基準値以上でない、又は、配置結果の疎密が解消されていないと判断された場合には、上記ステップC3以降の処理を繰り返し(ステップC14のNOルート)、最適な染色体の適応度値が所定の基準値以上である、又は、配置結果の疎密が解消されていると判断された場合には、その最適な染色体が配置最適化問題の解として出力されて、配置最適化問題処理装置1での処理が終了する(ステップC14のYESルート)。   If it is determined that the optimal fitness value of the chromosome is not equal to or greater than a predetermined reference value, or the arrangement result is not resolved, the process after step C3 is repeated (NO route of step C14). ) If it is determined that the optimal fitness value of the chromosome is equal to or higher than a predetermined reference value or the density of the arrangement result has been eliminated, the optimal chromosome is output as a solution to the arrangement optimization problem. Then, the processing in the placement optimization problem processing apparatus 1 is completed (YES route in step C14).

このように、本発明の第3実施形態にかかる配置最適化問題処理方法によれば、前述した各実施形態と同様の効果を得ることができるほか、遺伝的アルゴリズム(GAp)の実行中に、遺伝的アルゴリズム(GAc)と局所的疎密解消法(LO)とを組み合わせて実行しているので、遺伝的アルゴリズム(GAp)の更なる高速化を実現することができる。   As described above, according to the layout optimization problem processing method according to the third embodiment of the present invention, it is possible to obtain the same effect as each of the embodiments described above, and during the execution of the genetic algorithm (GAp), Since the genetic algorithm (GAc) and the local sparse / dense elimination method (LO) are combined and executed, the genetic algorithm (GAp) can be further increased in speed.

(b7)第4実施形態の説明
本発明の第4実施形態にかかる配置最適化問題処理方法について説明する。
第4実施形態にかかる配置最適化問題処理方法は、上記第1アルゴリズム実行ステップ(図2のステップS3)において、遺伝的アルゴリズム(GAc)を実行している中で、更に、第1アルゴリズム実行ステップが遺伝的アルゴリズム(GAp)を実行するとともに、第2アルゴリズム実行ステップが局所的疎密解消アルゴリズムを実行することにより、遺伝的アルゴリズム(GAp,GAc)と局所的疎密解消法(LO)とを組み合わせるものである。
(B7) Description of Fourth Embodiment A placement optimization problem processing method according to the fourth embodiment of the present invention will be described.
In the layout optimization problem processing method according to the fourth embodiment, the genetic algorithm (GAc) is being executed in the first algorithm execution step (step S3 in FIG. 2). Executes the genetic algorithm (GAp) and the second algorithm execution step executes the local sparse / dense elimination algorithm, thereby combining the genetic algorithm (GAp, GAc) and the local sparse / dense elimination (LO). It is.

即ち、第4実施形態にかかる配置最適化問題処理方法は、遺伝的アルゴリズム(GAc)で最適解を求める際に、各世代の終了毎又は複数世代の終了毎に遺伝的アルゴリズム(GAp)を実行するとともに、更に、この遺伝的アルゴリズム(GAp)の実行中に局所的疎密解消法(LO)を実施するものである。
つまり、この方法は、第2実施形態にて前述したように遺伝的アルゴリズム(GAp)と局所的疎密解消法(LO)とを組み合わせて実行することにより、配置領域10の分割幅を最適化し、この分割幅で分割された配置領域10を遺伝的アルゴリズム(GAc)の染色体として用いて遺伝的アルゴリズム(GAc)を実行し、更に効率的に解を探索するものである。
That is, the layout optimization problem processing method according to the fourth embodiment executes the genetic algorithm (GAp) at the end of each generation or at the end of multiple generations when obtaining an optimal solution by the genetic algorithm (GAc). In addition, a local sparse / dense cancellation method (LO) is performed during the execution of the genetic algorithm (GAp).
That is, this method optimizes the division width of the arrangement region 10 by executing a combination of the genetic algorithm (GAp) and the local sparse / dense elimination method (LO) as described above in the second embodiment, The genetic algorithm (GAc) is executed using the arrangement region 10 divided by the division width as a chromosome of the genetic algorithm (GAc), and a solution is searched for more efficiently.

なお、この配置最適化問題処理方法は、GAc+(GAp+LO)と表記することができる。
このときの配置最適化問題処理装置1の動作を、図25に示すフローチャートを用いて説明する。
まず、配置最適化問題処理装置1に、上記複数の配置要素9の初期配置結果(初期配置状態に関する情報)が入力される(ステップD1)。
This placement optimization problem processing method can be expressed as GAc + (GAp + LO).
The operation of the arrangement optimization problem processing apparatus 1 at this time will be described using the flowchart shown in FIG.
First, the initial optimization result (information on the initial arrangement state) of the plurality of arrangement elements 9 is input to the arrangement optimization problem processing apparatus 1 (step D1).

配置要素9の初期配置結果が入力されると、配置最適化問題処理装置1では、上記第1アルゴリズム実行ステップにより、初期配置結果のコピーを作ることにより遺伝的アルゴリズム(GAc)の染色体の集団が準備される(ステップD2)。
そして、この遺伝的アルゴリズム(GAc)の実行中に、更に第1アルゴリズム実行ステップにより、遺伝的アルゴリズム(GAp)が実行されるとともに、第2アルゴリズム実行ステップにより、局所的疎密解消アルゴリズムが実行される(ステップD3〜D9)。
When the initial placement result of the placement element 9 is input, the placement optimization problem processing apparatus 1 creates a copy of the initial placement result in the first algorithm execution step, thereby generating a population of chromosomes of the genetic algorithm (GAc). Prepared (step D2).
During execution of the genetic algorithm (GAc), the genetic algorithm (GAp) is further executed by the first algorithm execution step, and the local sparse / dense elimination algorithm is executed by the second algorithm execution step. (Steps D3 to D9).

即ち、上記第1アルゴリズム実行ステップでは、局所的疎密解消法(LO)のパラメータを遺伝子とする、遺伝的アルゴリズム(GAp)の染色体の集団が準備される(ステップD3)。
続いて、第1アルゴリズム実行ステップでは、各染色体に対して、遺伝的アルゴリズム(GAp)における遺伝オペレーションである交叉及び突然変異が施される(ステップD4,D5)。
That is, in the first algorithm execution step, a population of chromosomes of the genetic algorithm (GAp) using the parameters of the local sparse / dense elimination method (LO) as genes is prepared (step D3).
Subsequently, in the first algorithm execution step, crossover and mutation, which are genetic operations in the genetic algorithm (GAp), are performed on each chromosome (steps D4 and D5).

そして、第2アルゴリズム実行ステップでは、各染色体により表される分割幅で配置領域10を分割して、局所的疎密解消法(LO)を実行することにより、疎密の解消が試みられ、局所的疎密解消法(LO)の結果に基づいて適応度値が計算される(ステップD6)。なお、局所的疎密解消法(LO)は、流体力学のアナロジーが適用されたアルゴリズム、又は、モーフィングのアナロジーが適用されたアルゴリズムを用いて実行される。   Then, in the second algorithm execution step, the arrangement area 10 is divided by the division width represented by each chromosome, and the local sparse / dense elimination method (LO) is executed to try to eliminate the sparse / dense. A fitness value is calculated based on the result of the cancellation method (LO) (step D6). The local sparse / dense elimination method (LO) is executed using an algorithm to which an analogy of fluid dynamics is applied or an algorithm to which an analogy of morphing is applied.

さらに、第1アルゴリズム実行ステップでは、各染色体に対して、遺伝的アルゴリズム(GAp)における遺伝オペレーションである選択を施して、大きな適応度値をもつ染色体が選ばれる(ステップD7)。その後、遺伝的アルゴリズム(GAp)を行なうように定められた世代数を超えたかが判断される(ステップD8)。
そして、定められた世代数を超えていないと判断された場合〔即ち、まだ定められた世代数分の遺伝的アルゴリズム(GAp)が実行されていないと判断された場合〕には、上記ステップD4以降の処理を繰り返し(ステップD8のNOルート)、定められた世代数を超えたと判断された場合〔即ち、定められた世代数分の遺伝的アルゴリズム(GAp)が実行されたと判断された場合〕には、上記ステップD7で選ばれた染色体が、遺伝的アルゴリズム(GAp)での最適な染色体であると決定される(ステップD8のYESルートからステップD9)。
Furthermore, in the first algorithm execution step, a selection that is a genetic operation in the genetic algorithm (GAp) is performed on each chromosome, and a chromosome having a large fitness value is selected (step D7). Thereafter, it is determined whether the number of generations determined to perform the genetic algorithm (GAp) has been exceeded (step D8).
When it is determined that the predetermined number of generations has not been exceeded (that is, when it is determined that the genetic algorithm (GAp) for the predetermined number of generations has not yet been executed), the above step D4 When the subsequent processing is repeated (NO route of step D8), when it is determined that the predetermined number of generations has been exceeded (that is, when it is determined that the genetic algorithm (GAp) for the predetermined number of generations has been executed) Is determined to be the optimal chromosome in the genetic algorithm (GAp) (from the YES route in step D8 to step D9).

その後、第1アルゴリズム実行ステップでは、再度遺伝的アルゴリズム(GAc)の実行に戻り、上記ステップD9で決定された遺伝的アルゴリズム(GAp)の染色体により指定される配置領域10の分割法により〔即ち、ステップD9で決定された遺伝的アルゴリズム(GAp)の染色体により指定される幅で〕、遺伝的アルゴリズム(GAc)の染色体である配置領域10が分割される(ステップD10)。   Thereafter, in the first algorithm execution step, the process returns to the execution of the genetic algorithm (GAc) again, and by the division method of the arrangement region 10 specified by the chromosome of the genetic algorithm (GAp) determined in the above step D9 [ie, The arrangement region 10 that is the chromosome of the genetic algorithm (GAc) is divided (with the width specified by the chromosome of the genetic algorithm (GAp) determined in step D9) (step D10).

さらに、第1アルゴリズム実行ステップでは、各染色体に対して、遺伝的アルゴリズム(GAc)における遺伝オペレーションである交叉,突然変異及び選択が施される(ステップD11〜D13)。
そして、最高の適応度値をもつ染色体(最適な染色体)の適応度値が所定の基準値以上であるか、又は、配置結果の疎密が解消されたかどうかが判断される(ステップD14)。
Further, in the first algorithm execution step, crossover, mutation, and selection, which are genetic operations in the genetic algorithm (GAc), are performed on each chromosome (steps D11 to D13).
Then, it is determined whether the fitness value of the chromosome having the highest fitness value (optimal chromosome) is greater than or equal to a predetermined reference value or whether the arrangement result has been eliminated (step D14).

そして、最適な染色体の適応度値が所定の基準値以上でない、又は、配置結果の疎密が解消されていないと判断された場合には、上記ステップD10以降の処理を繰り返し(ステップD14のNOルート)、最適な染色体の適応度値が所定の基準値以上である、又は、配置結果の疎密が解消されていると判断された場合には、その最適な染色体が配置最適化問題の解として出力されて、配置最適化問題処理装置1での処理が終了する(ステップD14のYESルート)。   When it is determined that the optimal fitness value of the chromosome is not equal to or greater than a predetermined reference value, or the arrangement result is not resolved, the processing after step D10 is repeated (NO route of step D14). ) If it is determined that the optimal fitness value of the chromosome is equal to or higher than a predetermined reference value or the density of the arrangement result has been eliminated, the optimal chromosome is output as a solution to the arrangement optimization problem. As a result, the processing in the placement optimization problem processing apparatus 1 ends (YES route of step D14).

このように、本発明の第4実施形態にかかる配置最適化問題処理方法によれば、前述した各実施形態と同様の効果を得ることができるほか、遺伝的アルゴリズム(GAc)の実行中に、遺伝的アルゴリズム(GAp)と局所的疎密解消法(LO)とを組み合わせて実行しているので、遺伝的アルゴリズム(GAc)の更なる高速化を実現することができる。   As described above, according to the layout optimization problem processing method according to the fourth embodiment of the present invention, it is possible to obtain the same effect as each of the embodiments described above, and during the execution of the genetic algorithm (GAc), Since the genetic algorithm (GAp) and the local sparse / dense elimination method (LO) are executed in combination, the genetic algorithm (GAc) can be further increased in speed.

(b8)その他
上述した第1,第3,第4実施形態では、縦方向又は横方向のいずれか一方の同一方向に分割された染色体(即ち配置領域10)を用いて遺伝オペレーション(GAc)を実行する場合について説明したが、それぞれ異なる方向に分割された染色体を用いて遺伝オペレーション(GAc)を実行することもできる。
(B8) Others In the first, third, and fourth embodiments described above, the genetic operation (GAc) is performed using the chromosome (that is, the arrangement region 10) divided in the same direction in either the vertical direction or the horizontal direction. Although the case of executing is described, the genetic operation (GAc) can also be executed using chromosomes divided in different directions.

この場合に用いられるモデルをアイランドモデルといい、図26を用いてこのアイランドモデルについて説明する。
図26に示すアイランドモデルは、縦方向に分割された染色体の集団21を複数有する第1アイランド20と、横方向に分割された染色体の集団23を複数有する第2アイランド22からなる。
The model used in this case is called an island model, and this island model will be described with reference to FIG.
The island model shown in FIG. 26 includes a first island 20 having a plurality of chromosome groups 21 divided in the vertical direction and a second island 22 having a plurality of chromosome groups 23 divided in the horizontal direction.

なお、第1アイランド20は少なくとも一つの集団21を有していればよく、第2アイランド22は少なくとも一つの集団23を有していればよい。
つまり、第1アルゴリズム実行ステップでは、遺伝的アルゴリズム(GAc)を実行する際に、上記複数の配置要素9を配置する配置領域10を複数の部分領域10aに縦方向に分割することにより複数の帯状領域に縦方向に分割された染色体の集団21を少なくとも一つ有する第1アイランド20と、上記複数の配置要素9を配置する配置領域10を複数の部分領域10aに横方向に分割することにより複数の帯状領域に横方向に分割された染色体の集団23を少なくとも一つ有する第2アイランド22とを用いるようになっている。
The first island 20 only needs to have at least one group 21, and the second island 22 only needs to have at least one group 23.
That is, in the first algorithm execution step, when the genetic algorithm (GAc) is executed, a plurality of strips are formed by dividing the arrangement region 10 in which the plurality of arrangement elements 9 are arranged into a plurality of partial regions 10a in the vertical direction. A first island 20 having at least one chromosome group 21 divided vertically in the region and a plurality of arrangement regions 10 in which the plurality of arrangement elements 9 are arranged are divided into a plurality of partial regions 10a in the horizontal direction. The second island 22 having at least one chromosome group 23 divided in the horizontal direction in the band-like region is used.

各集団21,23は、通常は独立して遺伝的アルゴリズム(GAc)や局所的疎密解消法(LO)に基づいて発展していくが、遺伝的アルゴリズム(GAc)を適当な世代数実行する毎に、第1アイランド20の一つの集団21及び第2アイランド22の一つの集団23から何らかの方法で染色体を選択して、分割方向の異なるこれらの染色体を親の染色体として遺伝オペレーションとしての交叉を実行して、その結果生じた子の染色体をそれぞれの集団21,23へ戻すこともできる。   Each of the groups 21 and 23 usually develops independently based on the genetic algorithm (GAc) or the local sparse / dense elimination method (LO). However, every time the genetic algorithm (GAc) is executed for an appropriate number of generations. Next, chromosomes are selected from one group 21 of the first island 20 and one group 23 of the second island 22 by some method, and crossover as a genetic operation is performed using these chromosomes having different division directions as parent chromosomes. The resulting child chromosomes can then be returned to their respective populations 21 and 23.

このとき、分割方向の異なる染色体間の交叉は、以下のように実行することができる。
(1)交叉の第1の方法
集団21から選択した染色体は縦方向に分割されており、この染色体に局所的疎密解消法(LO)を施すと、ある特定の配置要素9は、それが属する帯状領域内で定められた方向に定められた量だけ移動する。このときの移動量をベクトルx1 ′とする。
At this time, crossing between chromosomes having different division directions can be performed as follows.
(1) First method of crossover A chromosome selected from the group 21 is divided in the vertical direction, and when a local sparse / dense resolution method (LO) is applied to this chromosome, a specific arrangement element 9 belongs to it. It moves by a defined amount in a defined direction within the strip area. Let the amount of movement at this time be a vector x 1 ′.

一方、集団23から選択した染色体は横方向に分割されており、この染色体に局所的疎密解消法(LO)を施すと、当該特定の配置要素9は、それが属する帯状領域内で定められた方向に定められた量だけ移動する。このときの移動量をベクトルx2 ′とする。
そして、当該配置要素9の移動量を合成ベクトルx1 ′+x2 ′として求め、各親の染色体においてそれぞれ当該配置要素9をその移動量だけ移動させることにより、集団21から選択した染色体と集団23から選択した染色体との間で交叉を実行して子の染色体を生成し、生成した子の染色体をそれぞれ元の集団に戻す。
On the other hand, the chromosome selected from the group 23 is divided in the horizontal direction, and when this chromosome is subjected to the local sparse / dense elimination method (LO), the specific arrangement element 9 is defined in the band-like region to which it belongs. Move by a fixed amount in the direction. Let the amount of movement at this time be a vector x 2 ′.
Then, the movement amount of the arrangement element 9 is obtained as a combined vector x 1 ′ + x 2 ′, and the arrangement element 9 is moved by the movement amount in each parental chromosome, whereby the chromosome selected from the group 21 and the group 23 Crossover is performed with the chromosomes selected from the above to generate child chromosomes, and each of the generated child chromosomes is returned to the original population.

即ち、第1アルゴリズム実行ステップでは、遺伝的アルゴリズム(GAc)を実行する際に、第1アイランド20に属する染色体に局所的疎密解消法(LO)を適用する一方、第2アイランド22に属する染色体に局所的疎密解消法(LO)を適用することにより、上記染色体の各領域内である特定の配置要素9を移動させる。そして、第1アイランド20に属する染色体及び第2アイランド22に属する染色体における当該特定の配置要素9の移動量のベクトル和を求め、このベクトル和に応じて上記各染色体内で当該特定の配置要素9を移動させることにより、第1アイランド20に属する染色体と第2アイランド22に属する染色体との間で、遺伝オペレーションとしての交叉が実行される。   That is, in the first algorithm execution step, when executing the genetic algorithm (GAc), the local sparse / dense elimination method (LO) is applied to the chromosome belonging to the first island 20 while the chromosome belonging to the second island 22 is applied. By applying a local sparse / dense elimination method (LO), a specific arrangement element 9 within each region of the chromosome is moved. Then, a vector sum of the movement amounts of the specific arrangement element 9 in the chromosome belonging to the first island 20 and the chromosome belonging to the second island 22 is obtained, and the specific arrangement element 9 in each chromosome according to the vector sum. , The crossing as a genetic operation is executed between the chromosome belonging to the first island 20 and the chromosome belonging to the second island 22.

(2)交叉の第2の方法
集団21から選択した染色体は縦方向に分割された帯状領域を有しているが、この帯状領域を横方向に分割された帯状領域に読み替えて集団23の染色体に組み込むことにより、集団21から選択した染色体と集団23から選択した染色体との間で交叉を実行して、子の染色体を生成する。
(2) Second method of crossover The chromosome selected from the group 21 has a band-like region divided in the vertical direction. This band-like region is read as a band-like region divided in the horizontal direction, and the chromosome of the group 23 Is incorporated into a chromosome selected from the group 21 and a chromosome selected from the group 23 to generate a child chromosome.

例えば、集団21から選択した染色体における縦方向に分割されたある帯状領域に配置要素91 〜93 が含まれるとすると、まず、集団23から選択した横方向に分割された染色体において、これら配置要素91 〜93 を含む帯状領域を探し出す。
そして、横方向に分割された染色体において、これら配置要素91 〜93 を含む帯状領域を探し出した結果、配置要素91 ,92 は横方向に分割された帯状領域のうちのある帯状領域に含まれ、配置要素93 はその他の帯状領域に含まれていたとする。また、配置要素91 ,92 が含まれる帯状領域には、その他の配置要素94 も含まれていたとする。
For example, if the arrangement elements 9 1 to 9 3 are included in a certain band-like region divided in the vertical direction in the chromosome selected from the group 21, these arrangements are first arranged in the chromosome divided in the horizontal direction selected from the group 23. A band-like region including elements 9 1 to 9 3 is found.
Then, the chromosomes are divided laterally, the result of finding the band-like region including these layout elements 91 to 93 3, the strip-like regions certain of the layout elements 9 1, 9 2 band regions divided in the transverse direction It included in the arrangement elements 9 3 and were included in the other strip regions. In addition, the band-like region including the layout elements 9 1, 9 2, and also included other layout elements 9 4.

このとき、横方向に分割された染色体において、配置要素91 ,92 が含まれる帯状領域におけるその他の配置要素94 を配置要素93 と読み替えるとともに、その他の帯状領域に含まれている配置要素93 を配置要素94 と読み替えることにより、縦方向に分割された帯状領域を横方向に分割された帯状領域に読み替えることができる。
なお、同様にして、集団23から選択した染色体における帯状領域を、縦方向に分割された帯状領域に読み替えて、集団21の染色体に組み込むことにより、集団21から選択した染色体と集団23から選択した染色体との間で交叉を実行してもよい。
At this time, the chromosomes are divided laterally, the arrangement with read as layout elements 9 1, 9 2 and other layout elements 9 4 the configuration element 9 3 in strip regions included, are included in other strip-like regions by replaced elements 9 3 and layout elements 9 4, it can be read a band-shaped region that is divided longitudinally in a strip region which is divided in the transverse direction.
Similarly, the band-like region in the chromosome selected from the group 23 is replaced with the band-like region divided in the vertical direction and incorporated into the chromosome of the group 21 to select the chromosome selected from the group 21 and the group 23. Crossover may be performed between chromosomes.

即ち、第1アルゴリズム実行ステップでは、遺伝的アルゴリズム(GAc)を実行する際に、第1アイランド20(又は第2アイランド22)に属する染色体における特定の配置要素9を含む帯状領域を抽出し、抽出した帯状領域を第2アイランド22(又は第1アイランド20)に属する染色体における帯状領域に読み替えて第2アイランド22(又は第1アイランド20)に戻すことにより、第1アイランド20に属する染色体と第2アイランド22に属する染色体との間で、遺伝オペレーションとしての交叉が実行される。   That is, in the first algorithm execution step, when executing the genetic algorithm (GAc), a band-like region including a specific arrangement element 9 in a chromosome belonging to the first island 20 (or the second island 22) is extracted and extracted. The second band 22 (or the first island 20) is replaced with the band-shaped region in the chromosome belonging to the second island 22 (or the first island 20) and returned to the second island 22 (or the first island 20). Crossover as a genetic operation is executed between the chromosomes belonging to the island 22.

このときの配置最適化問題処理装置1の動作を、図27に示すフローチャートを用いて説明する。
まず、配置最適化問題処理装置1に、上記複数の配置要素9の初期配置結果(初期配置状態に関する情報)が入力される(ステップE1)。
この配置要素9の初期配置結果が入力されると、配置最適化問題処理装置1では、上記第1アルゴリズム実行ステップにより、初期配置結果のコピーを作ることにより遺伝的アルゴリズム(GAc)の染色体の集団がN個準備される(ステップE2)。
The operation of the arrangement optimization problem processing apparatus 1 at this time will be described with reference to the flowchart shown in FIG.
First, the initial optimization result (information on the initial arrangement state) of the plurality of arrangement elements 9 is input to the arrangement optimization problem processing apparatus 1 (step E1).
When the initial placement result of the placement element 9 is input, the placement optimization problem processing apparatus 1 makes a group of genetic algorithm (GAc) chromosomes by making a copy of the initial placement result in the first algorithm execution step. N are prepared (step E2).

次に、第1アルゴリズム実行ステップでは、N個の集団をα個の集団とβ個の集団にわけ(即ち、α+β=N)、α個の集団の染色体は縦方向に分割する一方、β個の集団の染色体は横方向に分割することにより、縦方向に分割された染色体の集合21をα個有する第1アイランド20と、横方向に分割された染色体の集合23をβ個有する第2アイランド22とを形成する(ステップE3)。   Next, in the first algorithm execution step, the N populations are divided into α populations and β populations (that is, α + β = N), and the chromosomes of the α populations are divided vertically, while β The first island 20 having α sets of chromosomes 21 divided vertically and the second island having β sets of chromosomes 23 divided horizontally are divided by horizontally dividing the chromosomes of 22 (step E3).

そして、第1アルゴリズム実行ステップでは、各集団21,23毎に、独立して遺伝的アルゴリズム(GAc)を実行する(ステップE4)。
この遺伝的アルゴリズム(GAc)の実行中には、定められた世代数が経過する毎に、同一方向に分割された染色体をもつ集団間での交叉が実施される(ステップE5)。即ち、第1アイランド20内では、ある集団21の染色体と他の集団21の染色体との間で交叉が実行される一方、第2アイランド22内では、ある集団23の染色体と他の集団23の染色体との間で交叉が実行される。
In the first algorithm execution step, the genetic algorithm (GAc) is executed independently for each of the groups 21 and 23 (step E4).
During execution of this genetic algorithm (GAc), every time a predetermined number of generations elapse, crossover is performed between populations having chromosomes divided in the same direction (step E5). That is, in the first island 20, crossover is performed between the chromosomes of a certain group 21 and the chromosomes of another group 21, while in the second island 22, the chromosomes of a certain group 23 and the other groups 23. Crossover is performed between the chromosomes.

さらに、定められた世代数が経過する毎に、異なる方向に分割された染色体をもつ集団間での交叉が実施される(ステップE6)。即ち、第1アイランド20に属する集団21の染色体と、第2アイランド22に属する集団23の染色体との間で交叉が実行される。なお、この際、各染色体に局所的疎密解消法(LO)も適用される。
そして、最高の適応度値をもつ染色体(最適な染色体)の適応度値が所定の基準値以上であるか、又は、配置結果の疎密が解消されたかどうかが判断される(ステップE7)。
Further, every time a predetermined number of generations elapses, crossover between groups having chromosomes divided in different directions is performed (step E6). That is, crossover is performed between the chromosomes of the population 21 belonging to the first island 20 and the chromosomes of the population 23 belonging to the second island 22. At this time, a local sparse / dense elimination method (LO) is also applied to each chromosome.
Then, it is determined whether the fitness value of the chromosome having the highest fitness value (optimal chromosome) is greater than or equal to a predetermined reference value, or whether the arrangement result has been eliminated (step E7).

そして、最適な染色体の適応度値が所定の基準値以上でない、又は、配置結果の疎密が解消されていないと判断された場合には、上記ステップE4以降の処理を繰り返し(ステップE7のNOルート)、最適な染色体の適応度値が所定の基準値以上である、又は、配置結果の疎密が解消されていると判断された場合には、その最適な染色体が配置最適化問題の解として出力されて、配置最適化問題処理装置1での処理が終了する(ステップE7のYESルート)。   If it is determined that the optimal fitness value of the chromosome is not equal to or greater than a predetermined reference value or the density of the arrangement result is not eliminated, the processing after step E4 is repeated (NO route of step E7). ) If it is determined that the optimal fitness value of the chromosome is equal to or higher than a predetermined reference value or the density of the arrangement result has been eliminated, the optimal chromosome is output as a solution to the arrangement optimization problem. Then, the processing in the placement optimization problem processing apparatus 1 ends (YES route in step E7).

このように、異なる方向に分割された染色体をもつ集団間での交叉を実施するアイランドモデルを採用すれば、集団21,23における解候補となる染色体の多様性を保持することができるので、最適解を効率的に探索することができ、配置要素9の疎密の解消をより効率的に行なうことができる。
さらに、上述した第1〜第4実施形態では、遺伝的アルゴリズム(GAc,GAp)を実行する中で局所的疎密解消法(LO)を実行する際に、第2アルゴリズム実行ステップが、それぞれ固定のアルゴリズム(流体力学のアナロジーが適用されたアルゴリズム、及び、モーフィングのアナロジーが適用されたアルゴリズム)を用いる場合について説明したが、世代毎に用いるアルゴリズムを変更することがより好ましい。なお、染色体毎に異なる局所的疎密解消法(LO)を適用してもよい。
In this way, by adopting an island model that performs crossover between populations with chromosomes divided in different directions, the diversity of chromosomes that are candidate solutions in populations 21 and 23 can be maintained, which is optimal. The solution can be searched efficiently, and the density of the arrangement elements 9 can be eliminated more efficiently.
Further, in the first to fourth embodiments described above, when executing the local sparse / dense elimination method (LO) while executing the genetic algorithm (GAc, GAp), the second algorithm execution step is fixed. Although the case of using an algorithm (an algorithm to which an analogy of fluid mechanics is applied and an algorithm to which an analogy of morphing is applied) has been described, it is more preferable to change the algorithm used for each generation. In addition, you may apply the local sparse / dense elimination method (LO) which changes for every chromosome.

また、第2アルゴリズム実行ステップでは、配置領域10を分割しない状態で局所的疎密解消法(LO)を実施してもよい。
さらに、第1アルゴリズム実行ステップでは、染色体(配置領域10)を分割しない状態で、遺伝的アルゴリズム(GAc,GAp)の突然変異を実行してもよい。
なお、以下に、本発明を応用できる配置最適化問題の具体例を示す。
Further, in the second algorithm execution step, the local sparse / dense elimination method (LO) may be performed without dividing the arrangement region 10.
Further, in the first algorithm execution step, the mutation of the genetic algorithm (GAc, GAp) may be executed without dividing the chromosome (arrangement region 10).
A specific example of the layout optimization problem to which the present invention can be applied is shown below.

(1)LSIの設計の際のセル配置問題
セルは大きさをもつため、一般にはセルは重なってはならないという制約条件がある。
ここで、この制約条件を考慮して非線形計画法(例えば山登り法等)により最適なセル配置を求めるのは、原理的には可能であるが、実用的な規模のセル配置最適化問題を処理する場合には、一般にはより効率良く最適なセル配置を求めるのは難しい。
(1) Cell placement problem in LSI design Since cells have a size, there is generally a constraint that cells should not overlap.
Here, it is possible in principle to obtain an optimal cell arrangement by nonlinear programming (for example, hill-climbing method) in consideration of this constraint, but it handles a cell arrangement optimization problem on a practical scale. In general, it is difficult to obtain an optimal cell arrangement more efficiently.

このため、この制約条件を考慮しないで非線形計画法によりセル配置〔図28(a)参照〕を求め、その後、本発明で説明したような方法によりセルの疎密を解消すれば〔図28(b)参照〕、より効率的に最適なセル配置を得ることができる。
(2)フロアプラン
フロアプランとは、LSIの配置問題の一種であり、配置するセルの面積は定まっているが、セルの各辺の長さが可変である問題のことをいう。
For this reason, if the cell arrangement [see FIG. 28 (a)] is obtained by nonlinear programming without taking this constraint into consideration, and then the cell density is eliminated by the method described in the present invention [FIG. 28 (b). )], An optimal cell arrangement can be obtained more efficiently.
(2) Floor plan A floor plan is a kind of LSI placement problem, and refers to a problem in which the length of each side of the cell is variable, although the area of the cell to be placed is fixed.

この問題を解く際にも、本発明で説明したような方法を用いて、疎密の解消を行なうことができる〔図29(a),図29(b)参照〕。   When solving this problem, it is possible to eliminate the density by using the method described in the present invention (see FIGS. 29A and 29B).

本発明の配置最適化問題処理方法を実行する配置最適化問題処理装置の構成を示すブロック図である。It is a block diagram which shows the structure of the arrangement | positioning optimization problem processing apparatus which performs the arrangement | positioning optimization problem processing method of this invention. 本発明の配置最適化問題処理方法を説明するためのフローチャートである。It is a flowchart for demonstrating the arrangement | positioning optimization problem processing method of this invention. (a),(b)は、それぞれ配置領域を分割して部分領域を形成する様子を示す図である。(A), (b) is a figure which shows a mode that a layout area is each divided | segmented and a partial area | region is formed. (a),(b)は、それぞれ中間配置状態にある配置要素の一例を示す図である。(A), (b) is a figure which shows an example of the arrangement | positioning element in an intermediate arrangement state, respectively. (a),(b)は、それぞれ中間配置状態にある配置要素の疎密を解消した結果を示す図である。(A), (b) is a figure which shows the result of having eliminated the density of the arrangement element in an intermediate arrangement state, respectively. 本発明の第1実施形態にかかる配置最適化問題処理方法にて用いられる遺伝的アルゴリズム(GAc)における交叉の一例を示す図である。It is a figure which shows an example of crossover in the genetic algorithm (GAc) used with the arrangement | positioning optimization problem processing method concerning 1st Embodiment of this invention. 本発明の第1実施形態にかかる配置最適化問題処理方法にて用いられる遺伝的アルゴリズム(GAc)における突然変異の一例を示す図である。It is a figure which shows an example of the mutation in the genetic algorithm (GAc) used with the arrangement | positioning optimization problem processing method concerning 1st Embodiment of this invention. 一般的な遺伝的アルゴリズムについて説明するための図である。It is a figure for demonstrating a general genetic algorithm. 一般的な遺伝的アルゴリズムについて説明するための図である。It is a figure for demonstrating a general genetic algorithm. 一般的な遺伝的アルゴリズムについて説明するための図である。It is a figure for demonstrating a general genetic algorithm. 一般的な遺伝的アルゴリズムについて説明するための図である。It is a figure for demonstrating a general genetic algorithm. (a)〜(d)は、それぞれ本発明の第1実施形態にかかる配置最適化問題処理方法にて用いられる局所的疎密解消法(LO)を実行する際の配置領域の分割方法を示す図である。(A)-(d) is a figure which shows the division method of the arrangement | positioning area | region at the time of performing the local sparse / dense elimination method (LO) used with the arrangement | positioning optimization problem processing method concerning 1st Embodiment of this invention, respectively. It is. (a)〜(c)は、それぞれ本発明の第1実施形態にかかる配置最適化問題処理方法にて用いられる流体力学のアナロジーが適用されたアルゴリズムを用いた配置要素の移動方法の一例を示す図である。(A)-(c) shows an example of the movement method of the arrangement | positioning element using the algorithm to which the analog of the fluid dynamics used in the arrangement | positioning optimization problem processing method concerning 1st Embodiment of this invention was applied, respectively. FIG. (a),(b)は、それぞれ本発明の第1実施形態にかかる配置最適化問題処理方法にて用いられる流体力学のアナロジーが適用されたアルゴリズムを用いた配置要素の移動方法の他の例を示す図である。(A), (b) is another example of an arrangement element moving method using an algorithm to which an analogy of fluid dynamics used in the arrangement optimization problem processing method according to the first embodiment of the present invention is applied. FIG. (a),(b)は、それぞれ本発明の第1実施形態にかかる配置最適化問題処理方法にて用いられる流体力学のアナロジーが適用されたアルゴリズムを用いた配置要素の移動方法の他の例を示す図である。(A), (b) is another example of an arrangement element moving method using an algorithm to which an analogy of fluid dynamics used in the arrangement optimization problem processing method according to the first embodiment of the present invention is applied. FIG. (a)〜(e)は、それぞれ本発明の第1実施形態にかかる配置最適化問題処理方法にて用いられる流体力学のアナロジーが適用されたアルゴリズムを用いた配置要素の移動方法の他の例を示す図である。(A)-(e) is another example of the movement method of the arrangement | positioning element using the algorithm to which the analog of fluid dynamics used in the arrangement | positioning optimization problem processing method concerning 1st Embodiment of this invention was applied, respectively. FIG. 本発明の第1実施形態にかかる配置最適化問題処理方法にて用いられる流体力学のアナロジーが適用されたアルゴリズムを用いた配置要素の移動方法の他の例を示す図である。It is a figure which shows the other example of the movement method of the arrangement | positioning element using the algorithm to which the analog of fluid dynamics used in the arrangement | positioning optimization problem processing method concerning 1st Embodiment of this invention was applied. 本発明の第1実施形態にかかる配置最適化問題処理方法の他の例を説明するためのフローチャートである。It is a flowchart for demonstrating the other example of the arrangement | positioning optimization problem processing method concerning 1st Embodiment of this invention. (a),(b)は、それぞれ本発明の第1実施形態の変形例にかかる配置最適化問題処理方法にて用いられるモーフィングのアナロジーが適用されたアルゴリズムを用いた配置要素の移動方法の一例を示す図である。(A), (b) is an example of an arrangement element moving method using an algorithm to which a morphing analogy used in the arrangement optimization problem processing method according to the modification of the first embodiment of the present invention is applied. FIG. 本発明の第2実施形態にかかる配置最適化問題処理方法にて用いられる遺伝的アルゴリズム(GAp)における染色体の一例を示す図である。It is a figure which shows an example of the chromosome in the genetic algorithm (GAp) used with the arrangement | positioning optimization problem processing method concerning 2nd Embodiment of this invention. 本発明の第2実施形態にかかる配置最適化問題処理方法にて用いられる遺伝的アルゴリズム(GAp)における交叉の一例を示す図である。It is a figure which shows an example of the crossing in the genetic algorithm (GAp) used with the arrangement | positioning optimization problem processing method concerning 2nd Embodiment of this invention. 本発明の第2実施形態にかかる配置最適化問題処理方法にて用いられる遺伝的アルゴリズム(GAp)における突然変異の一例を示す図である。It is a figure which shows an example of the mutation in the genetic algorithm (GAp) used with the arrangement | positioning optimization problem processing method concerning 2nd Embodiment of this invention. 本発明の第2実施形態にかかる配置最適化問題処理方法の他の例を説明するためのフローチャートである。It is a flowchart for demonstrating the other example of the arrangement | positioning optimization problem processing method concerning 2nd Embodiment of this invention. 本発明の第3実施形態にかかる配置最適化問題処理方法を説明するためのフローチャートである。It is a flowchart for demonstrating the arrangement | positioning optimization problem processing method concerning 3rd Embodiment of this invention. 本発明の第4実施形態にかかる配置最適化問題処理方法を説明するためのフローチャートである。It is a flowchart for demonstrating the arrangement | positioning optimization problem processing method concerning 4th Embodiment of this invention. アイランドモデルを示す図である。It is a figure which shows an island model. アイランドモデルを用いた配置最適化問題処理方法を説明するためのフローチャートである。It is a flowchart for demonstrating the arrangement | positioning optimization problem processing method using an island model. (a),(b)は、それぞれ本発明をセル配置問題に適用した例を示す図である。(A), (b) is a figure which shows the example which applied this invention to the cell arrangement | positioning problem, respectively. (a),(b)は、それぞれ本発明をフロアプランに適用した例を示す図である。(A), (b) is a figure which shows the example which applied this invention to the floor plan, respectively.

符号の説明Explanation of symbols

1 配置最適化問題処理装置
4 CPU
5 表示制御部
5A 表示部
6 外部ファイル読出書込部
6A 外部ファイル
7B 入力部
7D 入力制御部
8 ディスク装置
9,9a 配置要素(要素)
10 配置領域(空間)
10a 部分領域(部分空間)
11〜18,18′ 染色体
20 第1アイランド
21,23 集団
22 第2アイランド
1 Placement optimization problem processor 4 CPU
DESCRIPTION OF SYMBOLS 5 Display control part 5A Display part 6 External file read / write part 6A External file 7B Input part 7D Input control part 8 Disk apparatus 9, 9a Arrangement element (element)
10 Placement area (space)
10a Partial area (partial space)
11-18, 18 'chromosome 20 first island 21,23 population 22 second island

Claims (15)

接続関係が規定された複数の要素を所要の空間に配置するに際し、CPUをそなえたコンピュータを用いて、該接続関係を維持しながら初期配置状態にある上記複数の要素の疎密を解消するための回路配置最適化問題処理方法であって、
上記の初期配置状態にある複数の要素に関する情報を配置結果として該コンピュータに入力する入力ステップと、
該入力ステップにて入力された該配置結果に対して、該空間を分割したものとして構成され且つそれぞれに複数の要素を含む部分空間を遺伝子として表現し、当該遺伝子の配列からなり該配置結果に相当する染色体を複数用意して、これらの染色体を用いるとともに、複数の要素の疎密を小さくできるような染色体が大きな適応度値をとる適応度関数を用いた遺伝的アルゴリズムを該CPUで実行することにより、最高の適応度値をもつ染色体を最適な染色体として取得する第1アルゴリズム実行ステップと、
該第1アルゴリズム実行ステップの実行中に生成される複数の染色体のそれぞれに対して、該遺伝的アルゴリズムで用いられる各染色体の部分空間毎に、当該部分空間内に含まれる複数の要素のうちの少なくとも一つの要素を要素密度が高い場所から要素密度が低い場所へと移動させる局所的疎密解消アルゴリズムを該CPUで行する第2アルゴリズム実行ステップとをそなえ、
該第1アルゴリズム実行ステップにおける該遺伝的アルゴリズムおよび該第2アルゴリズム実行ステップにおける該局所的疎密解消アルゴリズムが、上記最適な染色体の適応度値が基準値以上になるまで繰り返し実行され、
該第1アルゴリズム実行ステップが、適応度値が該基準値以上である最適な染色体を、該接続関係を維持しながら上記の初期配置状態にある複数の要素の疎密を解消した解として出力することを特徴とする、回路配置最適化問題処理方法。
When arranging a plurality of elements having a defined connection relationship in a required space, a computer having a CPU is used to eliminate the density of the plurality of elements in the initial arrangement state while maintaining the connection relationship. A circuit layout optimization problem processing method,
An input step for inputting information on a plurality of elements in the initial arrangement state to the computer as an arrangement result;
For the arrangement result input in the input step, a partial space that is configured as a division of the space and each includes a plurality of elements is expressed as a gene, and the arrangement result includes the sequence of the gene. the chromosome corresponding to a plurality prepared with use of these chromosomes, performing a genetic algorithm using the fitness function chromosomes that can reduce the density of a plurality of elements takes a large fitness value by the CPU A first algorithm execution step for obtaining a chromosome having the highest fitness value as an optimal chromosome ,
For each of a plurality of chromosomes generated during the execution of the first algorithm execution step , for each subspace of each chromosome used in the genetic algorithm, among the plurality of elements included in the subspace and a second algorithm executing step you run in the CPU of the at least one local density eliminates algorithm element an element density moves from a high place to the element density is low location,
The genetic algorithm in the first algorithm execution step and the local sparse / dense elimination algorithm in the second algorithm execution step are repeatedly executed until the optimal chromosome fitness value becomes a reference value or more,
The first algorithm execution step outputs an optimal chromosome having a fitness value equal to or greater than the reference value as a solution in which the plurality of elements in the initial arrangement state are eliminated while maintaining the connection relationship. A circuit layout optimization problem processing method characterized by the above.
該第1アルゴリズム実行ステップが、該遺伝的アルゴリズムを実行する際に、該染色体における上記複数の部分空間の中から選択された少なくとも一つの部分空間を、他の染色体における当該部分空間に対応する部分空間と交換することにより、遺伝オペレーションとしての交叉を実行することを特徴とする、請求項1記載の回路配置最適化問題処理方法。   When the first algorithm executing step executes the genetic algorithm, at least one subspace selected from the plurality of subspaces in the chromosome is assigned to a portion corresponding to the subspace in another chromosome. 2. The circuit layout optimization problem processing method according to claim 1, wherein crossover as a genetic operation is executed by exchanging with a space. 該第1アルゴリズム実行ステップが、該遺伝的アルゴリズムを実行する際に、該染色体における上記複数の部分空間の中の特定の部分空間の方が、他の染色体における当該部分空間に対応する部分空間よりも疎密が解消されている場合には、該染色体における当該部分空間を該他の染色体における当該部分空間に対応する部分空間に張り付けることにより、遺伝オペレーションとしての交叉を実行することを特徴とする、請求項1記載の回路配置最適化問題処理方法。   When the first algorithm execution step executes the genetic algorithm, a specific subspace in the plurality of subspaces in the chromosome is more than a subspace corresponding to the subspace in another chromosome. If the sparseness is eliminated, crossover as a genetic operation is performed by pasting the subspace in the chromosome to a subspace corresponding to the subspace in the other chromosome. The circuit layout optimization problem processing method according to claim 1. 該第1アルゴリズム実行ステップが、該遺伝的アルゴリズムを実行する際に、上記複数の部分空間の中の少なくとも一つの部分空間内において上記複数の要素のうちの少なくとも一つの要素を移動させることにより、遺伝オペレーションとしての突然変異を実行することを特徴とする、請求項1記載の回路配置最適化問題処理方法。   The first algorithm execution step moves at least one element of the plurality of elements in at least one subspace of the plurality of subspaces when executing the genetic algorithm, 2. The circuit layout optimization problem processing method according to claim 1, wherein mutation as a genetic operation is executed. 該第2アルゴリズム実行ステップが、該局所的疎密解消アルゴリズムとして、該部分空間内における要素の移動を流体の動きとしてとらえ、該部分空間内で要素密度が均一になるように、該流体の粘性を考慮して上記の部分空間内における要素を移動させる流体力学のアナロジーが適用されたアルゴリズムを用いることを特徴とする、請求項1記載の回路配置最適化問題処理方法。 Second algorithm executing step, as the topical manner compressional solve algorithm, capture the movement of the element that put the partial space as the motion of the fluid, so that the element density is uniform partial space, the fluid 2. The circuit layout optimization problem processing method according to claim 1, wherein an algorithm to which an analogy of fluid dynamics for moving an element in the subspace is applied in consideration of the viscosity of the circuit is used. 該第2アルゴリズム実行ステップが、複数の要素間の近傍性を保存しながら、上記の部分空間内に含まれる複数の要素のうちの少なくとも一つの要素を移動させることを特徴とする、請求項記載の回路配置最適化問題処理方法。 Second algorithm executing step, while preserving the vicinity among multiple elements, characterized in that moving at least one element of the plurality of elements included in the partial space, claim circuit layout optimization problem processing method 5 described. 該第2アルゴリズム実行ステップが、複数の要素間の順序性を保存しながら、上記の部分空間内に含まれる複数の要素のうちの少なくとも一つの要素を移動させることを特徴とする、請求項記載の回路配置最適化問題処理方法。 Second algorithm executing step, while preserving the order among multiple elements, characterized in that moving at least one element of the plurality of elements included in the partial space, claim circuit layout optimization problem processing method 5 described. 該第2アルゴリズム実行ステップが、該局所的疎密解消アルゴリズムとして、該部分空間内における要素の移動をモーフィングにおける変形動作としてとらえ、該部分空間毎に、上記の初期配置状態にある複数の要素に関する情報に基づいてモーフィング中心部を決定し、上記の部分空間内に含まれる複数の要素のうちの少なくとも一つの要素を該モーフィング中心部から離隔した場所へと移動させるモーフィングのアナロジーが適用されたアルゴリズムを実行することを特徴とする、請求項記載の回路配置最適化問題処理方法。 Second algorithm executing step, as the topical manner compressional solve algorithm, regarded as a modification operation in the morphing movement of elements that put the partial space, each partial space, Ru initial arrangement near the double A morphing analogy that determines a morphing center based on information on a number of elements and moves at least one element of the plurality of elements included in the subspace to a location separated from the morphing center. The circuit layout optimization problem processing method according to claim 1 , wherein the applied algorithm is executed. 該第2アルゴリズム実行ステップが、上記の部分空間内に含まれる複数の要素の少なくとも一つの要素を該モーフィング中心部から離隔した場所へと移動させる際に、該モーフィング中心部から移動対象となる要素までの距離を線形的に拡大することを特徴とする、請求項記載の回路配置最適化問題処理方法。 When the second algorithm execution step moves at least one element of the plurality of elements included in the subspace to a place separated from the morphing center, the element to be moved from the morphing center 9. The circuit layout optimization problem processing method according to claim 8 , wherein the distance to is linearly expanded. 該第2アルゴリズム実行ステップが、上記の部分空間内に含まれる複数の要素の少なくとも一つの要素を該モーフィング中心部から離隔した場所へと移動させる際に、該モーフィング中心部から移動対象となる要素までの距離を非線形的に拡大することを特徴とする、請求項記載の回路配置最適化問題処理方法。 When the second algorithm execution step moves at least one element of the plurality of elements included in the subspace to a place separated from the morphing center, the element to be moved from the morphing center 9. The circuit layout optimization problem processing method according to claim 8 , wherein the distance to is increased nonlinearly. 接続関係が規定された複数の要素を所要の空間に配置するに際し、CPUをそなえたコンピュータを用いて、該接続関係を維持しながら初期配置状態にある上記複数の要素の疎密を解消するための回路配置最適化問題処理方法であって、
上記の初期配置状態にある複数の要素に関する情報を配置結果として該コンピュータに入力する入力ステップと、
該入力ステップにて入力された該配置結果に対して、該空間を分割したものとして構成される複数の部分空間のそれぞれの第1の遺伝子として表現し、当該第1の遺伝子の配列からなる第1の染色体を複数用意して、これらの第1の染色体を用いるとともに、複数の要素の疎密を小さくできるような染色体が大きな適応度値をとる適応度関数を用いた第1遺伝的アルゴリズムを該CPUで実行する第1ステップと、
該第1ステップの実行中に生成される複数の第1の染色体に対応する複数の空間のそれぞれに対して、上記第1の染色体に応じた部分空間の幅でこの空間を分割したものとして構成され且つそれぞれに複数の要素を含む部分空間を第2の遺伝子として表現し、当該第2の遺伝子の配列からなり該配置結果に相当する第2の染色体を複数用意して、これらの第2の染色体を用いるとともに、該適応度関数を用いた第2遺伝的アルゴリズムを、予め定められた世代数を超えるまで繰り返し該CPUで実行することにより、最高の適応度値をもつ第2の染色体を中間染色体として、上記複数の第1の染色体のそれぞれに対応して複数取得する第2ステップと、
該第2ステップの実行中に生成される複数の第2の染色体のそれぞれに対して、該第2遺伝的アルゴリズムで用いられる各第2の染色体の該部分空間毎に、当該部分空間内に含まれる複数の要素のうちの少なくとも一つの要素を要素密度が高い場所から要素密度が低い場所へと移動させる局所的疎密解消アルゴリズムを該CPUで実行する第3ステップとをそなえ、
該第1ステップが、該第2ステップにて取得した上記複数の中間染色体のそれぞれの適応度値に基づいて、上記複数の中間染色体から最高の適応度値をもつ中間染色体を最適な染色体として取得し、
該第1ステップにおける該第1遺伝的アルゴリズム,該第2ステップにおける該第2遺伝的アルゴリズムおよび該第3ステップにおける該局所的疎密解消アルゴリズムが、上記最適な染色体の適応度値が基準値以上になるまで繰り返し実行され、
該第1ステップが、適応度値が該基準値以上である最適な染色体を、該接続関係を維持しながら上記の初期配置状態にある複数の要素の疎密を解消した解として出力することを特徴とする、回路配置最適化問題処理方法。
When arranging a plurality of elements having a defined connection relationship in a required space, a computer having a CPU is used to eliminate the density of the plurality of elements in the initial arrangement state while maintaining the connection relationship. A circuit layout optimization problem processing method,
An input step for inputting information on a plurality of elements in the initial arrangement state to the computer as an arrangement result;
With respect to the arrangement results input at said input step, the width of each of the plurality of subspaces to the space Ru are configured as obtained by dividing expressed as a first gene, said first gene a first chromosome consisting of SEQ Make several, first using a fitness function which Rutotomoni using these first chromosome, chromosome that can reduce the density of a plurality of elements takes a large fitness value a first step to run a genetic algorithm in the CPU,
Each of a plurality of spaces corresponding to a plurality of first chromosomes generated during the execution of the first step is configured by dividing this space by a partial space width corresponding to the first chromosome. the subspace containing a plurality of elements and each is expressed as a second gene, the second chromosome by preparing a plurality corresponding to Ri該placement result such a second gene sequences, these second Rutotomoni using chromosome of a second genetic algorithm using said fitness function, by executing a repeating said CPU to a predetermined excess of number of generations, the second chromosome with the highest fitness value A second step of acquiring a plurality of corresponding intermediate chromosomes corresponding to each of the plurality of first chromosomes,
For each of a plurality of second chromosomes generated during the execution of the second step, each subspace of each second chromosome used in the second genetic algorithm is included in the subspace. local density eliminates algorithm for moving to the at least one element element density is higher away from the element density is low location of the multiple elements includes a third step of executing by the CPU Re that,
The first step acquires the intermediate chromosome having the highest fitness value from the plurality of intermediate chromosomes as the optimal chromosome based on the fitness values of the plurality of intermediate chromosomes acquired in the second step. And
The first genetic algorithm in the first step, the second genetic algorithm in the second step, and the local sparse resolution algorithm in the third step are such that the optimal fitness value of the chromosome is not less than a reference value. It is executed repeatedly until
The first step outputs an optimal chromosome having a fitness value equal to or greater than the reference value as a solution in which the plurality of elements in the initial arrangement state are eliminated while maintaining the connection relation. A circuit layout optimization problem processing method.
接続関係が規定された複数の要素を所要の空間に配置するに際し、CPUをそなえたコンピュータを用いて、該接続関係を維持しながら初期配置状態にある上記複数の要素の疎密を解消するための回路配置最適化問題処理方法であって、
上記の初期配置状態にある複数の要素に関する情報を配置結果として該コンピュータに入力する入力ステップと、
該入力ステップにて入力された該配置結果に対して、該空間を分割したものとして構成される複数の部分空間のそれぞれの第1の遺伝子として表現し、当該第1の遺伝子の配列からなる第1の染色体を複数用意して、これらの第1の染色体を用いるとともに、複数の要素の疎密を小さくできるような染色体が大きな適応度値をとる適応度関数を用いた第1遺伝的アルゴリズムを該CPUで実行する第1ステップと、
該第1ステップの実行中に生成される複数の第1の染色体に対応する複数の空間のそれぞれに対して、該第1の染色体に応じた部分空間の幅でこの空間を複数の部分空間に分割した後に、該部分空間毎に、当該部分空間内に含まれる複数の要素のうちの少なくとも一つの要素を要素密度が高い場所から要素密度が低い場所へと移動させる局所的疎密解消アルゴリズムを該CPUで実行することにより、複数の第1の染色体に対応する複数の中間配置結果を取得し、上記複数の中間配置結果のそれぞれの適応度値を該CPUで算出する第2ステップと、
該空間を該第1の染色体に応じた部分空間の幅で分割したものとして構成され且つそれぞれに複数の要素を含む部分空間を第2の遺伝子として表現し、当該第2の遺伝子の配列からなり該配置結果に相当する第2の染色体を複数用意して、これらの第2の染色体を用いるとともに、該適応度関数を用いた第2遺伝的アルゴリズムを該CPUで実行することにより、最高の適応度値をもつ第2の染色体を最適な染色体として取得する第3ステップとをそなえ
該第1ステップが、該第2ステップにて算出された適応度値に基づいて、上記複数の中間配置結果から最高の適応度値をもつ中間配置結果を最適な配置結果として取得し、
該第1ステップにおける該第1遺伝的アルゴリズムおよび該第2ステップにおける該局所的疎密解消アルゴリズムが、該第1遺伝的アルゴリズムにおいて予め定められた世代数を超えるまで繰り返し実行され、
該第3ステップが、該第1ステップにおける該第1遺伝的アルゴリズムおよび該第2ステップにおける該局所的疎密解消アルゴリズムが繰り返し実行されることにより取得した上記最適な配置結果に対して、上記最適な染色体の適応度値が基準値以上になるまで該第2遺伝的アルゴリズムを繰り返し実行し、適応度値が該基準値以上である最適な染色体を、該接続関係を維持しながら上記の初期配置状態にある複数の要素の疎密を解消した解として出力することを特徴とする、回路配置最適化問題処理方法。
When arranging a plurality of elements having a defined connection relationship in a required space, a computer having a CPU is used to eliminate the density of the plurality of elements in the initial arrangement state while maintaining the connection relationship. A circuit layout optimization problem processing method,
An input step for inputting information on a plurality of elements in the initial arrangement state to the computer as an arrangement result;
With respect to the arrangement results input at said input step, the width of each of the plurality of subspaces to the space Ru are configured as obtained by dividing expressed as a first gene, said first gene a first chromosome consisting of SEQ Make several, first using a fitness function which Rutotomoni using these first chromosome, chromosome that can reduce the density of a plurality of elements takes a large fitness value a first step to run a genetic algorithm in the CPU,
For each of a plurality of space corresponding to the plurality of first chromosome that is generated during the execution of the first step, multiple subspaces of the space by the width of the subspaces corresponding to the chromosomes of the first after divided, for each subspace, the local density eliminates the element density of at least one element from the element density is higher location of the elements of several of the Ru contained in the subspace moves to a lower location by executing the algorithm by the CPU, the second step it calculates to obtain a plurality of intermediate placement results corresponding to the plurality of first chromosome, the respective fitness values of the plurality of intermediate placement results by the CPU When,
The space is configured by dividing the space by the width of the partial space corresponding to the first chromosome, and the partial space including a plurality of elements is expressed as a second gene, and is composed of the sequence of the second gene. By preparing a plurality of second chromosomes corresponding to the arrangement result, using these second chromosomes, and executing the second genetic algorithm using the fitness function on the CPU, the best adaptation is achieved. and a third step of obtaining the second chromosome having a degree value as an optimum chromosomes,
The first step acquires an intermediate arrangement result having the highest fitness value from the plurality of intermediate arrangement results as an optimum arrangement result based on the fitness value calculated in the second step,
The first genetic algorithm in the first step and the local sparse resolution algorithm in the second step are repeatedly executed until a predetermined number of generations are exceeded in the first genetic algorithm;
In the third step, the optimal arrangement result obtained by repeatedly executing the first genetic algorithm in the first step and the local sparse / dense cancellation algorithm in the second step The second genetic algorithm is repeatedly executed until the fitness value of the chromosome is equal to or higher than the reference value, and the optimal chromosome having the fitness value equal to or higher than the reference value is maintained in the initial arrangement state while maintaining the connection relationship. A circuit layout optimization problem processing method, characterized in that the solution is output as a solution in which the density of a plurality of elements is eliminated .
接続関係が規定された複数の要素を所要の空間に配置するに際し、該接続関係を維持しながら初期配置状態にある上記複数の要素の疎密を解消するための回路配置最適化問題を、CPUをそなえたコンピュータにより処理するための回路配置最適化問題処理プログラムを記録したコンピュータ読み取り可能な記録媒体であって、
該回路配置最適化問題処理プログラムが、
上記初期配置状態にある複数の要素に関する情報が配置結果として該コンピュータに入力されると、入力された該配置結果に対して、該空間を分割したものとして構成され且つそれぞれに複数の要素を含む部分空間を遺伝子として表現し、当該遺伝子の配列からなり該配置結果に相当する染色体を複数用意して、これらの染色体を用いるとともに、複数の要素の疎密を小さくできるような染色体が大きな適応度値をとる適応度関数を用いた遺伝的アルゴリズムを該CPUで実行することにより、最高の適応度値をもつ染色体を最適な染色体として取得する第1アルゴリズム実行手段、及び、
該第1アルゴリズム実行手段の実行中に生成される複数の染色体のそれぞれに対して、該遺伝的アルゴリズムで用いられる各染色体の部分空間毎に、当該部分空間内に含まれる複数の要素のうちの少なくとも一つの要素を要素密度が高い場所から要素密度が低い場所へと移動させる局所的疎密解消アルゴリズムを該CPUで行する第2アルゴリズム実行手段として該コンピュータを機能させるとともに、
該第1アルゴリズム実行手段における該遺伝的アルゴリズムおよび該第2アルゴリズム実行手段における該局所的疎密解消アルゴリズムが、上記最適な染色体の適応度値が基準値以上になるまで繰り返し実行され、
該第1アルゴリズム実行手段が、適応度値が該基準値以上である最適な染色体を、該接続関係を維持しながら上記の初期配置状態にある複数の要素の疎密を解消した解として出力するように該コンピュータを機能させることを特徴とする、回路配置最適化問題処理プログラムを記録したコンピュータ読み取り可能な記録媒体。
When arranging a plurality of elements for which connection relations are defined in a required space, a circuit layout optimization problem for eliminating the density of the plurality of elements in the initial arrangement state while maintaining the connection relation is A computer-readable recording medium recording a circuit layout optimization problem processing program for processing by the computer,
The circuit layout optimization problem processing program is
When information regarding a plurality of elements in the initial arrangement state is input to the computer as an arrangement result, the input arrangement result is configured as a result of dividing the space, and a plurality of elements are respectively added to the computer. Representing a partial space as a gene, preparing multiple chromosomes that consist of the sequence of the gene and corresponding to the arrangement result, and using these chromosomes, chromosomes that can reduce the density of multiple elements are large fitness A first algorithm executing means for acquiring a chromosome having the highest fitness value as an optimal chromosome by executing a genetic algorithm using a fitness function that takes a value by the CPU ; and
For each of a plurality of chromosomes generated during execution of the first algorithm execution means , for each subspace of each chromosome used in the genetic algorithm, among the plurality of elements included in the subspace at least one local density eliminates algorithm for moving an element from an element density is higher location to the element low density locations with to function the computer as the second algorithm executing means you run in the CPU,
The genetic algorithm in the first algorithm execution means and the local sparse / dense elimination algorithm in the second algorithm execution means are repeatedly executed until the optimal chromosome fitness value becomes a reference value or more,
The first algorithm executing means outputs an optimal chromosome having a fitness value equal to or greater than the reference value as a solution in which the plurality of elements in the initial arrangement state are eliminated while maintaining the connection relationship. A computer-readable recording medium having a circuit arrangement optimization problem processing program recorded thereon, wherein the computer is caused to function.
接続関係が規定された複数の要素を所要の空間に配置するに際し、該接続関係を維持しながら初期配置状態にある上記複数の要素の疎密を解消するための回路配置最適化問題を、CPUをそなえたコンピュータにより処理するための回路配置最適化問題処理プログラムを記録したコンピュータ読み取り可能な記録媒体であって、When arranging a plurality of elements for which connection relations are defined in a required space, a circuit layout optimization problem for eliminating the density of the plurality of elements in the initial arrangement state while maintaining the connection relation is A computer-readable recording medium recording a circuit layout optimization problem processing program for processing by the computer,
該回路配置最適化問題処理プログラムが、The circuit layout optimization problem processing program is
上記の初期配置状態にある複数の要素に関する情報が配置結果として該コンピュータに入力されると、入力された該配置結果に対して、該空間を分割したものとして構成される複数の部分空間のそれぞれの幅を第1の遺伝子として表現し、当該第1の遺伝子の配列からなる第1の染色体を複数用意して、これらの第1の染色体を用いるとともに、複数の要素の疎密を小さくできるような染色体が大きな適応度値をとる適応度関数を用いた第1遺伝的アルゴリズムを該CPUで実行する第1実行手段、When information regarding a plurality of elements in the initial arrangement state is input to the computer as an arrangement result, each of a plurality of partial spaces configured as a result of dividing the space with respect to the input arrangement result The width of the first gene is expressed as a first gene, a plurality of first chromosomes comprising the sequence of the first gene are prepared, and the first chromosome is used, and the density of a plurality of elements can be reduced. First execution means for executing, on the CPU, a first genetic algorithm using a fitness function in which a chromosome has a large fitness value;
該第1実行手段の実行中に生成される複数の第1の染色体に対応する複数の空間のそれぞれに対して、上記第1の染色体に応じた部分空間の幅でこの空間を分割したものとして構成され且つそれぞれに複数の要素を含む部分空間を第2の遺伝子として表現し、当該第2の遺伝子の配列からなり該配置結果に相当する第2の染色体を複数用意して、これらの第2の染色体を用いるとともに、該適応度関数を用いた第2遺伝的アルゴリズムを、予め定められた世代数を超えるまで繰り返し該CPUで実行することにより、最高の適応度値をもつ第2の染色体を中間染色体として、上記複数の第1の染色体のそれぞれに対応して複数取得する第2実行手段、及び、For each of the plurality of spaces corresponding to the plurality of first chromosomes generated during the execution of the first execution means, the space is divided by the width of the partial space corresponding to the first chromosome. A partial space that is configured and includes a plurality of elements each is expressed as a second gene, and a plurality of second chromosomes that are composed of the sequence of the second gene and that correspond to the placement result are prepared. And the second genetic algorithm using the fitness function is repeatedly executed by the CPU until the number of generations exceeds a predetermined number, whereby the second chromosome having the highest fitness value is obtained. A second execution means for obtaining a plurality of intermediate chromosomes corresponding to each of the plurality of first chromosomes; and
該第2実行手段の実行中に生成される複数の第2の染色体のそれぞれに対して、該第2遺伝的アルゴリズムで用いられる各第2の染色体の該部分空間毎に、当該部分空間内に含まれる複数の要素のうちの少なくとも一つの要素を要素密度が高い場所から要素密度が低い場所へと移動させる局所的疎密解消アルゴリズムを該CPUで実行する第3実行手段として該コンピュータを機能させるとともに、For each of a plurality of second chromosomes generated during the execution of the second execution means, for each of the subspaces of each second chromosome used in the second genetic algorithm, within the subspace Causing the computer to function as third execution means for executing, on the CPU, a local sparse / dense elimination algorithm for moving at least one element of a plurality of elements included from a place having a high element density to a place having a low element density ,
該第1実行手段が、該第2実行手段にて取得した上記複数の中間染色体のそれぞれの適応度値に基づいて、上記複数の中間染色体から最高の適応度値をもつ中間染色体を最適な染色体として取得し、Based on the fitness values of the plurality of intermediate chromosomes acquired by the second execution means, the first execution means selects an intermediate chromosome having the highest fitness value from the plurality of intermediate chromosomes as an optimal chromosome. Get as
該第1実行手段における該第1遺伝的アルゴリズム,該第2実行手段における該第2遺伝的アルゴリズムおよび該第3実行手段における該局所的疎密解消アルゴリズムが、上記最適な染色体の適応度値が基準値以上になるまで繰り返し実行され、The first genetic algorithm in the first execution means, the second genetic algorithm in the second execution means, and the local sparse / dense elimination algorithm in the third execution means are based on the optimal chromosome fitness value. It is executed repeatedly until it exceeds the value,
該第1実行手段が、適応度値が該基準値以上である最適な染色体を、該接続関係を維持しながら上記の初期配置状態にある複数の要素の疎密を解消した解として出力するように該コンピュータを機能させることを特徴とする、回路配置最適化問題処理プログラムを記録したコンピュータ読み取り可能な記録媒体。The first execution means outputs an optimal chromosome having a fitness value equal to or higher than the reference value as a solution in which the density of the plurality of elements in the initial arrangement state is eliminated while maintaining the connection relationship. A computer-readable recording medium having a circuit arrangement optimization problem processing program recorded thereon, wherein the computer functions.
接続関係が規定された複数の要素を所要の空間に配置するに際し、該接続関係を維持しながら初期配置状態にある上記複数の要素の疎密を解消するための回路配置最適化問題を、CPUをそなえたコンピュータにより処理するための回路配置最適化問題処理プログラムを記録したコンピュータ読み取り可能な記録媒体であって、When arranging a plurality of elements for which connection relations are defined in a required space, a circuit layout optimization problem for eliminating the density of the plurality of elements in the initial arrangement state while maintaining the connection relation is A computer-readable recording medium recording a circuit layout optimization problem processing program for processing by the computer,
該回路配置最適化問題処理プログラムが、The circuit layout optimization problem processing program is
上記の初期配置状態にある複数の要素に関する情報が配置結果として該コンピュータに入力されると、入力された該配置結果に対して、該空間を分割したものとして構成される複数の部分空間のそれぞれの幅を第1の遺伝子として表現し、当該第1の遺伝子の配列からなる第1の染色体を複数用意して、これらの第1の染色体を用いるとともに、複数の要素の疎密を小さくできるような染色体が大きな適応度値をとる適応度関数を用いた第1遺伝的アルゴリズムを該CPUで実行する第1実行手段、When information regarding a plurality of elements in the initial arrangement state is input to the computer as an arrangement result, each of a plurality of partial spaces configured as a result of dividing the space with respect to the input arrangement result The width of the first gene is expressed as a first gene, a plurality of first chromosomes comprising the sequence of the first gene are prepared, and the first chromosome is used, and the density of a plurality of elements can be reduced. First execution means for executing, on the CPU, a first genetic algorithm using a fitness function in which a chromosome has a large fitness value;
該第1実行手段の実行中に生成される複数の第1の染色体に対応する複数の空間のそれぞれに対して、該第1の染色体に応じた部分空間の幅でこの空間を複数の部分空間に分割した後に、該部分空間毎に、当該部分空間内に含まれる複数の要素のうちの少なくとも一つの要素を要素密度が高い場所から要素密度が低い場所へと移動させる局所的疎密解消アルゴリズムを該CPUで実行することにより、複数の第1の染色体に対応する複数の中間配置結果を取得し、上記複数の中間配置結果のそれぞれの適応度値を該CPUで算出する第2実行手段、及び、For each of a plurality of spaces corresponding to a plurality of first chromosomes generated during execution of the first execution means, this space is divided into a plurality of partial spaces with a width of the partial space corresponding to the first chromosome. For each partial space, a local sparse / dense elimination algorithm for moving at least one element of a plurality of elements included in the partial space from a place where the element density is high to a place where the element density is low A second execution means for acquiring a plurality of intermediate placement results corresponding to the plurality of first chromosomes and calculating a fitness value of each of the plurality of intermediate placement results by the CPU; ,
該空間を該第1の染色体に応じた部分空間の幅で分割したものとして構成され且つそれぞれに複数の要素を含む部分空間を第2の遺伝子として表現し、当該第2の遺伝子の配列からなり該配置結果に相当する第2の染色体を複数用意して、これらの第2の染色体を用いるとともに、該適応度関数を用いた第2遺伝的アルゴリズムを該CPUで実行することにより、最高の適応度値をもつ第2の染色体を最適な染色体として取得する第3実行手段として該コンピュータを機能させるとともに、The space is configured by dividing the space by the width of the partial space corresponding to the first chromosome, and the partial space including a plurality of elements is expressed as a second gene, and is composed of the sequence of the second gene. By preparing a plurality of second chromosomes corresponding to the arrangement result, using these second chromosomes, and executing the second genetic algorithm using the fitness function on the CPU, the best adaptation is achieved. Causing the computer to function as third execution means for acquiring the second chromosome having a degree value as an optimal chromosome,
該第1実行手段が、該第2実行手段にて算出された適応度値に基づいて、上記複数の中間配置結果から最高の適応度値をもつ中間配置結果を最適な配置結果として取得し、The first execution means acquires an intermediate arrangement result having the highest fitness value from the plurality of intermediate arrangement results as an optimum arrangement result based on the fitness value calculated by the second execution means,
該第1実行手段における該第1遺伝的アルゴリズムおよび該第2実行手段における該局所的疎密解消アルゴリズムが、該第1遺伝的アルゴリズムにおいて予め定められた世代数を超えるまで繰り返し実行され、The first genetic algorithm in the first execution means and the local sparse / dense cancellation algorithm in the second execution means are repeatedly executed until the number of generations predetermined in the first genetic algorithm exceeds a predetermined number of generations;
該第3実行手段が、該第1実行手段における該第1遺伝的アルゴリズムおよび該第2実行手段における該局所的疎密解消アルゴリズムが繰り返し実行されることにより取得した上記最適な配置結果に対して、上記最適な染色体の適応度値が基準値以上になるまで該第2遺伝的アルゴリズムを繰り返し実行し、適応度値が該基準値以上である最適な染色体を、該接続関係を維持しながら上記の初期配置状態にある複数の要素の疎密を解消した解として出力するように該コンピュータを機能させることを特徴とする、回路配置最適化問題処理プログラムを記録したコンピュータ読み取り可能な記録媒体。With respect to the optimal arrangement result obtained by the third execution means repeatedly executing the first genetic algorithm in the first execution means and the local sparse / dense elimination algorithm in the second execution means, The second genetic algorithm is repeatedly executed until the fitness value of the optimal chromosome is equal to or higher than a reference value, and an optimal chromosome having a fitness value equal to or higher than the reference value is maintained while maintaining the connection relationship. A computer-readable recording medium storing a circuit arrangement optimization problem processing program, wherein the computer functions so as to output a solution in which the density of a plurality of elements in an initial arrangement state is eliminated.
JP2006268964A 2006-09-29 2006-09-29 Circuit layout optimization problem processing method and circuit layout optimization problem processing program recording computer-readable recording medium Expired - Fee Related JP4032070B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006268964A JP4032070B2 (en) 2006-09-29 2006-09-29 Circuit layout optimization problem processing method and circuit layout optimization problem processing program recording computer-readable recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006268964A JP4032070B2 (en) 2006-09-29 2006-09-29 Circuit layout optimization problem processing method and circuit layout optimization problem processing program recording computer-readable recording medium

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP25833498A Division JP4031874B2 (en) 1998-09-11 1998-09-11 Circuit layout optimization problem processing method and circuit layout optimization problem processing program recording computer-readable recording medium

Publications (2)

Publication Number Publication Date
JP2007052799A JP2007052799A (en) 2007-03-01
JP4032070B2 true JP4032070B2 (en) 2008-01-16

Family

ID=37917150

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006268964A Expired - Fee Related JP4032070B2 (en) 2006-09-29 2006-09-29 Circuit layout optimization problem processing method and circuit layout optimization problem processing program recording computer-readable recording medium

Country Status (1)

Country Link
JP (1) JP4032070B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4739272B2 (en) * 2007-04-19 2011-08-03 株式会社富士通アドバンストエンジニアリング Load distribution apparatus, virtual server management system, load distribution method, and load distribution program

Also Published As

Publication number Publication date
JP2007052799A (en) 2007-03-01

Similar Documents

Publication Publication Date Title
JP4723740B2 (en) Optimal solution search method for density uniform arrangement problem and optimum solution search program for density uniform arrangement problem
JP4031874B2 (en) Circuit layout optimization problem processing method and circuit layout optimization problem processing program recording computer-readable recording medium
Hertlein et al. Generative adversarial network for early-stage design flexibility in topology optimization for additive manufacturing
JP4934058B2 (en) Co-clustering apparatus, co-clustering method, co-clustering program, and recording medium recording the program
Nearchou A novel metaheuristic approach for the flow shop scheduling problem
JP2009069930A (en) Sliced data structure for particle-based simulation and method for loading particle-based simulation using sliced data structure into gpu
WO2020240809A1 (en) Learning device, classification device, learning method, classification method, learning program, and classification program
JP6933167B2 (en) Robot control device
US20090326881A1 (en) Multi-objective optimal design improvement support device, its method and storage medium
JP3905959B2 (en) Arrangement optimization problem processing method, arrangement optimization problem processing apparatus, and computer readable recording medium recording arrangement optimization problem processing program
JP2010009341A (en) Device and method for classifying/displaying design shape having similar property and different shape, and program
JP7020485B2 (en) Arithmetic logic unit, arithmetic method and program
Aivaliotis-Apostolopoulos et al. Swarming genetic algorithm: A nested fully coupled hybrid of genetic algorithm and particle swarm optimization
Canellidis et al. Evolutionary computing and genetic algorithms: Paradigm applications in 3D printing process optimization
JP7219402B2 (en) Optimization device, optimization device control method, and optimization device control program
KR101416916B1 (en) Optimization distribution system of items in military logistics based on multi agent system and control method of the same
JP4032070B2 (en) Circuit layout optimization problem processing method and circuit layout optimization problem processing program recording computer-readable recording medium
Kim et al. A monarch butterfly optimization for an unequal area facility layout problem
CN117807873A (en) Layout method and system of two-dimensional irregular parts based on contour matching
JP5081059B2 (en) Topic visualization device, topic visualization method, topic visualization program, and recording medium recording the program
Ertl et al. Vertex assigned morphing for parameter free shape optimization of 3-dimensional solid structures
Rettl et al. Evaluation of combinatorial algorithms for optimizing highly nonlinear structural problems
JP2006318232A (en) Analytical mesh correction device
CN114723051A (en) Information processing apparatus, information processing method, and computer-readable recording medium
JP7431005B2 (en) Learning data generation device, learning data generation method, and program

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070320

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070518

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070710

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070907

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20071002

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20071022

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101026

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101026

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111026

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111026

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121026

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121026

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131026

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees