JP2000090065A - 配置最適化問題処理方法及び配置最適化問題処理プログラムを記録したコンピュータ読み取り可能な記録媒体 - Google Patents

配置最適化問題処理方法及び配置最適化問題処理プログラムを記録したコンピュータ読み取り可能な記録媒体

Info

Publication number
JP2000090065A
JP2000090065A JP10258334A JP25833498A JP2000090065A JP 2000090065 A JP2000090065 A JP 2000090065A JP 10258334 A JP10258334 A JP 10258334A JP 25833498 A JP25833498 A JP 25833498A JP 2000090065 A JP2000090065 A JP 2000090065A
Authority
JP
Japan
Prior art keywords
algorithm
elements
arrangement
chromosome
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.)
Granted
Application number
JP10258334A
Other languages
English (en)
Other versions
JP4031874B2 (ja
Inventor
Fumiyoshi Sasagawa
文義 笹川
Akio Shinagawa
明雄 品川
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 JP25833498A priority Critical patent/JP4031874B2/ja
Priority to US09/358,925 priority patent/US6412100B1/en
Publication of JP2000090065A publication Critical patent/JP2000090065A/ja
Application granted granted Critical
Publication of JP4031874B2 publication Critical patent/JP4031874B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/392Floor-planning or layout, e.g. partitioning or placement

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Architecture (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

(57)【要約】 【課題】 2次元以上の空間に複数の要素を最適な状態
で配置する要素配置最適化問題において、問題規模の大
きい要素配置最適化問題を高速に処理できるようにす
る。 【解決手段】 上記複数の要素の初期配置状態に関する
情報が入力されると、遺伝的アルゴリズムを実行して、
初期配置状態にある上記複数の要素の疎密を解消する第
1アルゴリズム実行ステップS3と、第1アルゴリズム
実行ステップS3にて疎密が解消された後の上記複数の
要素の中間配置状態に関する情報が入力されると、局所
的疎密解消アルゴリズムを実行して、中間配置状態にあ
る上記複数の要素の疎密を更に解消する第2アルゴリズ
ム実行ステップS4とを実行することにより、上記複数
の要素を空間に最適な状態で配置する配置最適化問題を
処理するように構成する。

Description

【発明の詳細な説明】
【0001】(目次) 発明の属する技術分野 従来の技術 発明が解決しようとする課題 課題を解決するための手段 発明の実施の形態 ・(a)配置最適化問題処理装置の構成の説明(図1) ・(b)本発明の配置最適化問題処理方法の説明 (b1)基本的な考え方(図2〜図5) (b2)第1実施形態の説明(図6〜図18) (b3)第1実施形態の変形例の説明(図19) (b4)第2実施形態の説明(図20〜図23) (b5)第2実施形態の変形例の説明 (b6)第3実施形態の説明(図24) (b7)第4実施形態の説明(図25) (b8)その他(図26〜図29) 発明の効果
【0002】
【発明の属する技術分野】本発明は、例えば大規模集積
回路(LSI;large scale integration)上の各回路を
最適な状態で配置する回路配置最適化問題、より一般的
には、2次元以上の空間に複数の要素(配置要素)を最
適な状態で配置する要素配置最適化問題を処理する際に
用いて好適な、配置最適化問題処理方法及び配置最適化
問題処理プログラムを記録したコンピュータ読み取り可
能な記録媒体に関する。
【0003】
【従来の技術】要素配置最適化問題は、具体的には、接
続関係が規定された複数の要素を所要の空間(要素が2
次元のものである場合には、所要の領域)に最適な状態
で配置する問題であり、グラフマッピング問題と言われ
るものである。例えば、前述したLSIにおいて、LS
I上の各回路の最適配置を求めることができれば、LS
Iの小型化を図ることができるほか、当該各回路を接続
する配線の長さを最小化して配線性を向上させることが
できるので、LSIにおける処理の高速化を図ることも
できる。
【0004】要素配置最適化問題は、最適化問題解決ア
ルゴリズム(例えば遺伝的アルゴリズム,ミンカット
法,n要素交換法等)を実行して、複数の要素の上記空
間における最適配置を決定し、その決定に基づいて複数
の要素を上記空間に配置することにより処理することが
できる。ここで、要素配置最適化問題の規模が大きいと
き(即ち、最適配置を求めるべき要素数が非常に多いと
き)には、最適化問題解決アルゴリズムを高速に実行で
きるようにするために、各要素の大きさを考慮すること
なく、各要素を点(又は同一形状)とみなして要素の最
適配置を決定していた。
【0005】
【発明が解決しようとする課題】しかしながら、要素は
それぞれ固有の大きさをもっているため、このようにし
て決定された最適配置に基づいて要素を配置しても、要
素同士が重なったり要素間に隙間が生じたりして、要素
の配置に疎密が生じることがあるという課題がある。
【0006】従って、問題規模の大きい要素配置最適化
問題を高速に処理するためには、各要素の大きさを考慮
しないで最適化問題解決アルゴリズムを実行し、その結
果生じた要素の配置の疎密を解消する必要がある。本発
明は、このような課題に鑑み創案されたもので、要素の
配置に生じた疎密を解消して要素を上記空間に均一に配
置できるようにして、問題規模の大きい要素配置最適化
問題を高速に処理できるようにした、配置最適化問題処
理方法を提供することを目的とするとともに、更には、
要素配置最適化問題を処理すべくコンピュータを動作さ
せるための配置最適化問題処理プログラムを記録したコ
ンピュータ読み取り可能な記録媒体を提供することを目
的とする。
【0007】
【課題を解決するための手段】このため、本発明の配置
最適化問題処理方法は、接続関係が規定された複数の要
素を所要の空間に配置するに際し、上記複数の要素の初
期配置状態に関する情報が入力されると、遺伝的アルゴ
リズムを実行して、該初期配置状態にある上記複数の要
素の疎密を解消する第1アルゴリズム実行ステップと、
該第1アルゴリズム実行ステップにて疎密が解消された
後の上記複数の要素の中間配置状態に関する情報が入力
されると、局所的疎密解消アルゴリズムを実行して、該
中間配置状態にある上記複数の要素の疎密を更に解消す
る第2アルゴリズム実行ステップとを実行することによ
り、上記複数の要素を該空間に最適な状態で配置する配
置最適化問題を処理することを特徴としている(請求項
1)。
【0008】ここで、該第1アルゴリズム実行ステップ
は、上記複数の要素の配置状態を遺伝子として表現し、
該空間に上記複数の要素を配置する問題の解候補とし
て、当該遺伝子の配列からなり該空間として定義される
染色体を用いることにより、該遺伝的アルゴリズムを実
行することができる(請求項2)。このとき、該第1ア
ルゴリズム実行ステップは、該遺伝的アルゴリズムを実
行する際に、上記複数の要素を配置する該空間を複数の
部分空間に分割することにより該染色体を複数の領域に
分割し、該染色体における上記複数の領域の中から選択
された少なくとも一つの領域を、他の染色体における当
該領域に対応する領域と交換することにより、遺伝オペ
レーションとしての交叉を実行することができる(請求
項3)。
【0009】また、該第1アルゴリズム実行ステップ
は、該遺伝的アルゴリズムを実行する際に、上記複数の
要素を配置する該空間を複数の部分空間に分割すること
により該染色体を複数の領域に分割し、該染色体におけ
る上記複数の領域の中の特定の領域の方が、他の染色体
における当該領域に対応する領域よりも疎密が解消され
ている場合には、該染色体における当該領域を該他の染
色体における当該領域に対応する領域に張り付けること
により、遺伝オペレーションとしての交叉を実行しても
よい(請求項4)。
【0010】さらに、該第1アルゴリズム実行ステップ
は、該遺伝的アルゴリズムを実行する際に、上記複数の
要素を配置する該空間を複数の部分空間に分割すること
により該染色体を複数の領域に分割し、上記複数の領域
の中の少なくとも一つの領域内において上記複数の要素
のうちの少なくとも一つの要素を移動させることによ
り、遺伝オペレーションとしての突然変異を実行するこ
とができる(請求項5)。
【0011】また、該第1アルゴリズム実行ステップ
は、該遺伝的アルゴリズムを実行する際に、上記複数の
要素の疎密が小さい染色体が大きな適応度値をとりうる
ような適応度値関数を用いて、遺伝オペレーションとし
ての選択を実行することができる(請求項6)。ところ
で、本発明の配置最適化問題処理方法は、接続関係が規
定された複数の要素を所要の空間に配置するに際し、遺
伝的アルゴリズムを実行する第1アルゴリズム実行ステ
ップと、局所的疎密解消アルゴリズムを実行する第2ア
ルゴリズム実行ステップとをそなえ、該第1アルゴリズ
ム実行ステップと該第2アルゴリズム実行ステップとを
組み合わせて実行することを通じて、該局所的疎密解消
アルゴリズムを実行する際に用いるパラメータの最適値
を求めて、初期配置状態にある上記複数の要素の疎密を
解消することにより、上記複数の要素を該空間に最適な
状態で配置する配置最適化問題を処理することを特徴と
している(請求項7)。
【0012】ここで、該第1アルゴリズム実行ステップ
は、該局所的疎密解消アルゴリズムを実行する際に用い
る該パラメータを遺伝子として表現し、該パラメータを
決定する問題の解候補として当該遺伝子の配列からなる
染色体を用いることにより、該遺伝的アルゴリズムを実
行することができる(請求項8)。そして、該第2アル
ゴリズム実行ステップにおいて、上記複数の要素を配置
する該空間が複数の部分空間に分割されるときに、該パ
ラメータが、上記部分空間の大きさを規定する情報を含
むことを特徴としている(請求項9)。
【0013】このとき、該第1アルゴリズム実行ステッ
プは、該遺伝的アルゴリズムを実行する際に、二つの親
の染色体の遺伝子の重み付き平均を子の染色体の遺伝子
とすることにより、遺伝オペレーションとしての交叉を
実行することができる(請求項10)。また、該第1ア
ルゴリズム実行ステップは、該遺伝的アルゴリズムを実
行する際に、該パラメータに含まれる上記部分空間の大
きさを規定する情報の総和が変化しないように調整しな
がら、該染色体の一部の領域を他の染色体の当該領域に
対応する領域に張り付けることにより、遺伝オペレーシ
ョンとしての交叉を実行してもよい(請求項11)。
【0014】さらに、該第1アルゴリズム実行ステップ
は、該遺伝的アルゴリズムを実行する際に、該染色体の
少なくとも二つの遺伝子を選択し、選択した上記遺伝子
に任意の数値を加えることにより、該パラメータに含ま
れる上記部分空間の大きさを規定する情報の総和が変化
しないように調整して、遺伝オペレーションとしての突
然変異を実行することができる(請求項12)。
【0015】また、該第1アルゴリズム実行ステップ
は、該遺伝的アルゴリズムを実行する際に、上記複数の
要素の疎密を小さくできるような染色体が大きな適応度
値をとりうるような適応度値関数を用いて、遺伝オペレ
ーションとしての選択を実行することができる(請求項
13)。そして、本発明の配置最適化問題処理方法にお
いては、上記複数の要素を配置する空間を複数の部分空
間に分割したときに、該第2アルゴリズム実行ステップ
が、上記部分空間毎に上記複数の要素の疎密を解消する
ことを特徴としている(請求項14)。
【0016】ここで、該第2アルゴリズム実行ステップ
は、該局所的疎密解消アルゴリズムとして、流体力学の
アナロジーが適用されたアルゴリズムを用いることがで
きる(請求項15)。具体的には、該第2アルゴリズム
実行ステップは、該中間配置状態にある上記複数の要素
のうちの少なくとも一つの要素を、要素密度が高い場所
から要素密度が低い場所へと移動させることにより、該
流体力学のアナロジーが適用されたアルゴリズムを実行
することができる(請求項16)。
【0017】このとき、上記複数の要素を配置する該空
間を複数の部分空間に分割したときに、該第2アルゴリ
ズム実行ステップは、上記分割した部分空間内におい
て、当該部分空間内に含まれる上記複数の要素のうちの
少なくとも一つの要素を、要素密度が高い場所から要素
密度が低い場所へと移動させることを特徴としている
(請求項17)。
【0018】ここで、該第2アルゴリズム実行ステップ
は、上記複数の要素間の近傍性を保存しながら、上記複
数の要素のうちの少なくとも一つの要素を移動させるこ
とができる(請求項18)。また、該第2アルゴリズム
実行ステップは、上記複数の要素間の順序性を保存しな
がら、上記複数の要素のうちの少なくとも一つの要素を
移動させることをもできる(請求項19)。
【0019】さらに、該第2アルゴリズム実行ステップ
は、該局所的疎密解消アルゴリズムとして、モーフィン
グのアナロジーが適用されたアルゴリズムを用いること
もできる(請求項20)。具体的には、該第2アルゴリ
ズム実行ステップは、該中間配置状態にある上記複数の
要素に関する情報に基づいてモーフィング中心部を決定
し、上記複数の要素のうちの少なくとも一つの要素を該
モーフィング中心部から離隔した場所へと移動させるこ
とにより、該モーフィングのアナロジーが適用されたア
ルゴリズムを実行することができる(請求項21)。
【0020】このとき、上記複数の要素を配置する該空
間を複数の部分空間に分割したときに、該第2アルゴリ
ズム実行ステップは、上記部分空間毎に該モーフィング
中心部を決定し、上記部分空間内において、当該部分空
間内に含まれる上記複数の要素の少なくとも一つの要素
を該モーフィング中心部から離隔した場所へと移動させ
ることを特徴としている(請求項22)。
【0021】ここで、該第2アルゴリズム実行ステップ
は、上記複数の要素の少なくとも一つの要素を該モーフ
ィング中心部から離隔した場所へと移動させる際に、該
モーフィング中心部から移動対象となる要素までの距離
を線形的に拡大することができる(請求項23)。ま
た、該第2アルゴリズム実行ステップは、上記複数の要
素の少なくとも一つの要素を該モーフィング中心部から
離隔した場所へと移動させる際に、該モーフィング中心
部から移動対象となる要素までの距離を非線形的に拡大
することもできる(請求項24)。
【0022】さらに、該第2アルゴリズム実行ステップ
は、該中間配置状態にある上記複数の要素の疎密を解消
する際に、疎密解消対象となる要素を逐次添加していく
こともできる(請求項25)。また、上記複数の要素の
中に移動させることができない固定要素がある場合に
は、該第2アルゴリズム実行ステップは、該固定要素も
疎密解消対象となる要素とみなして、該中間配置状態に
ある上記複数の要素の疎密を解消すればよい(請求項2
6)。
【0023】さらに、上記複数の要素の中に他の要素に
比べて該空間を占める割合が大きな要素がある場合に
は、該第2アルゴリズム実行ステップは、該大きな要素
の移動量を小さくして、該中間配置状態にある上記複数
の要素の疎密を解消すればよい(請求項27)。また、
該第2アルゴリズム実行ステップは、該中間配置状態に
ある上記複数の要素の疎密を解消する際に、移動対象と
なる要素を一挙に移動させることができる(請求項2
8)。
【0024】さらに、該第2アルゴリズム実行ステップ
は、該中間配置状態にある上記複数の要素の疎密を解消
する際に、移動対象となる要素を徐々に移動させること
ができる(請求項29)。その他、該第1アルゴリズム
実行ステップは、該遺伝的アルゴリズムを実行する際
に、上記複数の要素を配置する該空間を複数の部分空間
に縦方向に分割することにより複数の領域に縦方向に分
割された該染色体の集団を少なくとも一つ有する第1ア
イランドと、上記複数の要素を配置する該空間を複数の
部分空間に横方向に分割することにより複数の領域に横
方向に分割された該染色体の集団を少なくとも一つ有す
る第2アイランドとを用いてもよい(請求項30)。
【0025】このときは、該第1アルゴリズム実行ステ
ップが、該遺伝的アルゴリズムを実行する際に、該第1
アイランドに属する該染色体及び該第2アイランドに属
する該染色体にそれぞれ局所的疎密解消アルゴリズムを
適用することにより上記各領域内である特定の要素を移
動させ、該第1アイランドに属する該染色体及び該第2
アイランドに属する該染色体における当該特定の要素の
移動量のベクトル和に応じて上記各染色体内で当該特定
の要素を移動させることにより、該第1アイランドに属
する該染色体と該第2アイランドに属する該染色体との
間で、遺伝オペレーションとしての交叉を実行すればよ
い(請求項31)。
【0026】また、該第1アルゴリズム実行ステップ
は、該遺伝的アルゴリズムを実行する際に、該第1アイ
ランド又は該第2アイランドに属する該染色体における
特定の要素を含む領域を抽出し、抽出した該領域を該第
2アイランド又は該第1アイランドに属する該染色体に
おける該領域に読み替えて該第2アイランド又は該第1
アイランドに戻すことにより、該第1アイランドに属す
る該染色体と該第2アイランドに属する該染色体との間
で、遺伝オペレーションとしての交叉を実行してもよい
(請求項32)。
【0027】つまり、本発明の配置最適化問題処理方法
は、接続関係が規定された複数の要素を所要の空間に配
置するに際し、遺伝的アルゴリズムを実行する第1アル
ゴリズム実行ステップと、局所的疎密解消アルゴリズム
を実行する第2アルゴリズム実行ステップとをそなえる
ことにより、初期配置状態にある上記複数の要素の疎密
を解消して、上記複数の要素を該空間に最適な状態で配
置する配置最適化問題を処理することを特徴としている
(請求項33)。
【0028】より具体的には、該第1アルゴリズム実行
ステップが、上記複数の要素の配置状態を遺伝子として
表現し、該空間に上記複数の要素を配置する問題の解候
補として、当該遺伝子の配列からなり該空間として定義
される染色体を用いることにより、該遺伝的アルゴリズ
ムを実行している中で、該第2アルゴリズム実行ステッ
プが、該局所的疎密解消アルゴリズムを実行するように
なっている(請求項34)。
【0029】また、該第1アルゴリズム実行ステップ
が、該局所的疎密解消アルゴリズムを実行する際に用い
るパラメータを遺伝子として表現し、該パラメータを決
定する問題の解候補として当該遺伝子の配列からなる染
色体を用いることにより、該遺伝的アルゴリズムを実行
している中で、該第2アルゴリズム実行ステップが、該
局所的疎密解消アルゴリズムを実行するようにしてもよ
い(請求項35)。
【0030】さらに、該第1アルゴリズム実行ステップ
が、該局所的疎密解消アルゴリズムを実行する際に用い
るパラメータを遺伝子として表現し、該パラメータを決
定する問題の解候補として当該遺伝子の配列からなる染
色体を用いることにより、該遺伝的アルゴリズムを実行
している中で、更に、該第1アルゴリズム実行ステップ
が、上記複数の要素の配置状態を遺伝子として表現し、
該空間に上記複数の要素を配置する問題の解候補とし
て、当該遺伝子の配列からなり該空間として定義される
染色体を用いた遺伝的アルゴリズムを実行するととも
に、該第2アルゴリズム実行ステップが、該局所的疎密
解消アルゴリズムを実行するようにしてもよい(請求項
36)。
【0031】また、該第1アルゴリズム実行ステップ
が、上記複数の要素の配置状態を遺伝子として表現し、
該空間に上記複数の要素を配置する問題の解候補とし
て、当該遺伝子の配列からなり該空間として定義される
染色体を用いることにより、該遺伝的アルゴリズムを実
行している中で、更に、該第1アルゴリズム実行ステッ
プが、該局所的疎密解消アルゴリズムを実行する際に用
いるパラメータを遺伝子として表現し、該パラメータを
決定する問題の解候補として当該遺伝子の配列からなる
染色体を用いた遺伝的アルゴリズムを実行するととも
に、該第2アルゴリズム実行ステップが、該局所的疎密
解消アルゴリズムを実行するようにしてもよい(請求項
37)。
【0032】ところで、本発明の配置最適化問題処理プ
ログラムを記録したコンピュータ読み取り可能な記録媒
体は、接続関係が規定された複数の要素を所要の空間に
最適な状態で配置する配置最適化問題をコンピュータに
より処理するための配置最適化問題処理プログラムを記
録したコンピュータ読み取り可能な記録媒体であって、
該配置最適化問題処理プログラムが、上記複数の要素の
初期配置状態に関する情報が入力されると、遺伝的アル
ゴリズムを実行して、該初期配置状態にある上記複数の
要素の疎密を解消する第1アルゴリズム実行手段、及
び、該第1アルゴリズム実行手段にて疎密が解消された
後の上記複数の要素の中間配置状態に関する情報が入力
されると、局所的疎密解消アルゴリズムを実行して、該
中間配置状態にある上記複数の要素の疎密を更に解消す
る第2アルゴリズム実行手段として該コンピュータを機
能させることを特徴としている(請求項38)。
【0033】また、本発明の配置最適化問題処理プログ
ラムを記録したコンピュータ読み取り可能な記録媒体
は、接続関係が規定された複数の要素を所要の空間に最
適な状態で配置する配置最適化問題をコンピュータによ
り処理するための配置最適化問題処理プログラムを記録
したコンピュータ読み取り可能な記録媒体であって、該
配置最適化問題処理プログラムが、遺伝的アルゴリズム
を実行する第1アルゴリズム実行手段、及び、局所的疎
密解消アルゴリズムを実行する第2アルゴリズム実行手
段として該コンピュータを機能させるとともに、該第1
アルゴリズム実行手段と該第2アルゴリズム実行手段と
を組み合わせて実行して該局所的疎密解消アルゴリズム
を実行する際に用いるパラメータの最適値を求めた後
に、当該パラメータの最適値を用いて該第2アルゴリズ
ム実行手段を実行して初期配置状態にある上記複数の要
素の疎密を解消するように該コンピュータを機能させる
ことを特徴としている(請求項39)。
【0034】さらに、本発明の配置最適化問題処理プロ
グラムを記録したコンピュータ読み取り可能な記録媒体
は、接続関係が規定された複数の要素を所要の空間に最
適な状態で配置する配置最適化問題をコンピュータによ
り処理するための配置最適化問題処理プログラムを記録
したコンピュータ読み取り可能な記録媒体であって、該
配置最適化問題処理プログラムが、遺伝的アルゴリズム
を実行する第1アルゴリズム実行手段、及び、局所的疎
密解消アルゴリズムを実行する第2アルゴリズム実行手
段として該コンピュータを機能させることを特徴として
いる(請求項40)。
【0035】
【発明の実施の形態】以下、図面を参照して本発明の実
施の形態を説明する。 (a)配置最適化問題処理装置の構成の説明 図1は配置最適化問題処理装置の構成を示すブロック図
であり、この図1に示す配置最適化問題処理装置1は、
本発明の配置最適化問題処理方法を実行するためのもの
である。
【0036】ここで、図1において、5Aは各種の設定
画面や処理にて得られた要素の最適配置結果等を表示す
る表示部、5はこの表示部5A上における表示状態を制
御する表示制御部、7Bは表示部5A上の表示データを
参照しオペレータがその表示データに対する応答情報を
入力するキーボードやマウス等の入力部、7Dは入力部
7Bを制御する入力制御部である。
【0037】また、8はディスク装置で、このディスク
装置8は、配置最適化問題処理装置1を動作させるため
に必要となる一切の情報(OS等)を記憶するものであ
るとともに、後述する配置最適化問題処理プログラムを
記憶するものである。なお、6は外部ファイル読出書込
部,6Aは外部ファイル,7Aは印字部,7Cは印字制
御部であり、外部ファイル読出書込部6及び印字部7A
は、それぞれ、入力部7Bからの指示に応じて、表示部
5Aに表示された複数ノードの最適配置等を、外部ファ
イル6A又は所定の用紙に記録するものである。
【0038】そして、4は配置最適化問題処理装置1を
構成する各部を統括的に管理するためのCPUである。
また、このCPU4は、接続関係が規定された複数の要
素を所要の空間に配置するに際し、第1アルゴリズム実
行手段及び第2アルゴリズム実行手段として機能するも
のである。
【0039】ここで、第1アルゴリズム実行手段は、後
述する遺伝的アルゴリズムを実行するものであり、第2
アルゴリズム実行手段は、後述する局所的疎密解消アル
ゴリズムを実行するものである。より具体的には、第1
アルゴリズム実行手段は、上記複数の要素の初期配置状
態に関する情報が入力されると、遺伝的アルゴリズムを
実行して、初期配置状態にある上記複数の要素の疎密を
解消するものである。
【0040】また、第2アルゴリズム実行手段は、上記
第1アルゴリズム実行手段にて疎密が解消された後の上
記複数の要素の中間配置状態に関する情報が入力される
と、局所的疎密解消アルゴリズムを実行して、中間配置
状態にある上記複数の要素の疎密を更に解消するもので
ある。その他、第1アルゴリズム実行手段と第2アルゴ
リズム実行手段とを組み合わせて実行して、局所的疎密
解消アルゴリズムを実行する際に用いるパラメータの最
適値を求めた後に、当該パラメータの最適値を用いて第
2アルゴリズム実行手段を実行して、初期配置状態にあ
る上記複数の要素の疎密を解消するようにすることもで
きる。
【0041】そして、実際には、上記第1アルゴリズム
実行手段及び第2アルゴリズム実行手段に相当する機能
は、前述したディスク装置8やCD−ROM(図示せ
ず)等の記録媒体に記録されたプログラム(以下、配置
最適化問題処理プログラムという)を図示しないメモリ
(RAM)に読み出し、そのプログラムを起動してCP
U4で実行することにより、CPU4の動作として実現
される。
【0042】ここで、配置最適化問題処理プログラム
は、接続関係が規定された複数の要素を所要の空間に最
適な状態で配置する配置最適化問題をコンピュータによ
り処理するためのものであり、上記第1アルゴリズム実
行手段及び第2アルゴリズム実行手段としてコンピュー
タを機能させるものである。なお、この配置最適化問題
処理プログラムは、例えばCD−ROM等に記録されて
おり、CD−ROM等からコンピュータにおけるディス
ク装置8にインストールされて使用される。
【0043】即ち、上述したディスク装置8やCD−R
OM等が、配置最適化問題処理プログラムを記録したコ
ンピュータ読み取り可能な記録媒体に相当する。このよ
うに、本実施形態にかかる配置最適化問題処理装置1
は、上述したCPU4,表示部5A,表示制御部5,外
部ファイル読出書込部6,印字部7A,印字制御部7
C,入力部7B,入力制御部7D,ディスク装置8等を
有する一般的な計算機システム(コンピュータ)を用い
て実現することが可能である。
【0044】そして、配置最適化問題処理装置1におい
ては、以下に説明するようにして、上記複数の配置要素
9を配置領域10に最適な状態で配置する配置最適化問
題が処理される。 (b)本発明の配置最適化問題処理方法の説明 (b1)基本的な考え方 まず、本発明の配置最適化問題処理方法の基本的な考え
方について、図2〜図5を用いて説明する。なお、図
4,図5において、符号9は要素(以下、配置要素とい
う)を示し、図3〜図5において、符号10は配置要素
9を配置するための空間(以下、配置領域という)を示
している。
【0045】本発明の配置最適化問題処理方法によれ
ば、接続関係が規定された複数の配置要素9を所要の配
置領域10に配置するに際し、まず、配置最適化問題処
理装置1に、上記複数の配置要素9の初期配置結果(初
期配置状態に関する情報)が入力される(図2のステッ
プS1)。ここで、配置要素9はそれぞれ固有の大きさ
をもつので、一般には、配置要素9が配置領域10に不
均一に配置されて疎密が生じた状態の初期配置結果が入
力される。
【0046】この配置要素9の初期配置結果が入力され
ると、配置最適化問題処理装置1では、配置要素9の疎
密が解消される(図2のステップS2)。ここで、この
ステップS2では、遺伝的アルゴリズムが実行されると
ともに(図2のステップS3;第1アルゴリズム実行ス
テップ)、局所的疎密解消アルゴリズムが実行される
(図2のステップS4;第2アルゴリズム実行ステッ
プ)。
【0047】具体的には、ステップS3では、遺伝的ア
ルゴリズムとして、遺伝的アルゴリズム(GAc)又は
遺伝的アルゴリズム(GAp)が実行され、ステップS
4では、局所的疎密解消アルゴリズムとして、流体力学
のアナロジーが適用されたアルゴリズム、又は、モーフ
ィングのアナロジーが適用されたアルゴリズムが実行さ
れる。なお、GAは、Genetic Algorithm の略である。
【0048】なお、これらのアルゴリズムの詳細につい
ては、後述する。また、ステップS3にて遺伝的アルゴ
リズム(GAp)を実行する場合については、「(b
4)第2実施形態の説明」にて説明する。ここで、遺伝
的アルゴリズム(GAc)を実行する際(ステップS
3)には、まず、ステップS1において入力された配置
要素9の初期配置結果を複製して、親の染色体とするた
めの初期配置結果を複数作成する。続いて、配置領域1
0を、図3(b),図3(a)に示すように、縦方向又
は横方向に適当な幅で分割して部分領域10aを形成す
る。そして、部分領域10a単位で遺伝的アルゴリズム
(GAc)の交叉を行なうように定義して、遺伝的アル
ゴリズム(GAc)を実行することにより、初期配置状
態にある配置要素9の疎密を解消する。
【0049】例えば配置領域10を縦方向に分割した場
合に、ステップS3にて疎密を解消した中間配置状態に
ある配置要素9の一例を図4(a)に示す。この図4
(a)に示す例では、遺伝的アルゴリズム(GAc)を
実行しただけでは、配置要素9の疎密は完全には解消さ
れていない。なお、図4(b)は、図4(a)に示す中
間配置状態にある配置要素9の密度を示している。
【0050】そこで、配置最適化問題処理装置1では、
ステップS3にて疎密が解消された後の配置要素9の中
間配置結果(中間配置状態に関する情報)が入力される
と、局所的疎密解消アルゴリズムを実行して、中間配置
状態にある配置要素9の疎密が更に解消される(ステッ
プS4)。ステップS4では、局所的疎密解消アルゴリ
ズムを実行して、ステップS3にて分割された配置領域
10の部分領域10a内で、配置要素9を配置要素密度
が高い場所から低い場所へ移動させることにより、中間
配置状態にある配置要素9の疎密を解消する。以下で
は、局所的疎密解消アルゴリズムを実行して配置要素9
の疎密を解消する方法を、局所的疎密解消法(LO)と
いう。
【0051】なお、図4(a)に示す中間配置状態にあ
る配置要素9の疎密を解消した結果を図5(a)に示
す。また、図5(b)に、図5(a)に示す配置状態に
ある配置要素9の密度を示す。さらに、配置最適化問題
処理装置1では、ステップS2により配置要素9の疎密
が解消されたか(ステップS4にて得られた配置結果が
所定の疎密解消の条件を満たしているか)が判断され
(ステップS5)、配置要素9の疎密が解消されたと判
断された場合には処理を終了する(ステップS5のYE
Sルート)。
【0052】一方、配置要素9の疎密が解消されていな
いと判断された場合には、遺伝的アルゴリズムのパラメ
ータと局所的疎密解消アルゴリズムのパラメータの変更
を行なった後に(ステップS5のNOルートからステッ
プS6)、前述したステップS2以降の動作を繰り返
す。このように、本発明の配置最適化問題処理方法によ
れば、接続関係が規定された複数の配置要素9を所要の
配置領域10に配置するに際し、遺伝的アルゴリズム
(GAc)を実行して初期配置状態にある配置要素9の
疎密を解消した後に、局所的疎密解消アルゴリズムを実
行して中間配置状態にある配置要素9の疎密を更に解消
しているので、問題規模の大きい要素配置最適化問題を
処理する場合にも、高速に配置要素9の疎密の解消を行
なうことができる。
【0053】即ち、本発明の配置最適化問題処理方法に
よれば、遺伝的アルゴリズム(GAc)による疎密解消
法を用いているので、遺伝的アルゴリズム(GAc)の
大域的探索法により効率的に配置要素9の疎密の解消を
行なうことができるほか、適応度の増大に寄与して配置
最適化問題処理装置1の計算速度を増加させることがで
きるため、配置最適化問題を高速に処理することができ
る。
【0054】このとき、局所的疎密解消アルゴリズムを
実行して局所的疎密解消法(LO)を実行しているの
で、疎密の解消を見通し良く且つ効果的に実施すること
ができる。このように、本発明の配置最適化問題処理方
法は、接続関係が規定された複数の配置要素9を所要の
空間に配置するに際し、遺伝的アルゴリズムを実行する
第1アルゴリズム実行ステップと、局所的疎密解消アル
ゴリズムを実行する第2アルゴリズム実行ステップとを
そなえることにより、初期配置状態にある上記複数の配
置要素9の疎密を解消して、上記複数の配置要素9を配
置領域10に最適な状態で配置する配置最適化問題を処
理しているのであるが、第1アルゴリズム実行ステップ
と第2アルゴリズム実行ステップとを組み合わせた各実
施形態について、以下にて詳細に説明する。
【0055】(b2)第1実施形態の説明 本発明の第1実施形態にかかる配置最適化問題処理方法
について説明する。第1実施形態にかかる配置最適化問
題処理方法は、上記第1アルゴリズム実行ステップ(図
2のステップS3)において、遺伝的アルゴリズム(G
Ac)を実行し、第2アルゴリズム実行ステップ(図2
のステップS4)において、局所的疎密解消アルゴリズ
ムとして流体力学のアナロジーが適用されたアルゴリズ
ムを実行するものである。
【0056】ここで、第1実施形態にて実行される遺伝
的アルゴリズム(GAc)は、配置要素9の配置結果を
染色体とみなして、配置要素9の疎密を直接解消するた
めの遺伝的アルゴリズムである。即ち、第1実施形態に
かかる配置最適化問題処理方法は、各染色体(即ち、配
置要素9の配置結果)に遺伝的アルゴリズム(GAc)
を適用した後に、この遺伝的アルゴリズムとは異なる制
御パラメータ(即ち異なる配置要素9の移動方法)をも
つ局所的疎密解消法(LO)を各染色体に適用すること
で、効果的に配置要素9の疎密を解消しようとするもの
である。なお、この配置最適化問題処理方法は、GAc
+LOと表記することができる。
【0057】ここで、遺伝的アルゴリズム(GAc)に
よる疎密解消法について、図6〜図11を用いて説明す
る。まず、遺伝的アルゴリズムについて説明すると、遺
伝的アルゴリズムは、生物の遺伝の機構を模倣してそれ
を工学的に応用した技術であり、確率的探索,学習及び
最適化の一手法と考えることができる。
【0058】生物の進化の過程では、既存の個体(親)
から新たなる個体(子)が生まれる際に、個体のもつ染
色体同士の交叉,染色体上の遺伝子の突然変異などが起
こる。そして、環境に適応しない個体は淘汰され、環境
により適応した個体が生きのびて新たな親となってさら
に新たな子孫を作ることにより、環境に適応した個体の
集団が生きのびていく。
【0059】各個体がどの程度環境に適応するかは、染
色体(遺伝子の一次元ストリング)によって決定される
が、遺伝的アルゴリズムでは、配置最適化問題の解候補
が遺伝子の一次元ストリングである染色体として表現さ
れる。そして、配置最適化問題の目的関数がいわゆる環
境に相当し、目的関数を最適にするものほど大きい値を
とるような適応度関数が染色体に対して定義される。
【0060】そして、遺伝的アルゴリズムでは、染色体
の遺伝子配列を変化させて問題の最適解になりうる染色
体(目的関数をより最適にする解)を生成するために、
各染色体に、図8に示すような各種の遺伝オペレーショ
ン(選択/自己複製,交叉及び突然変異)が施される。
ここで、選択(Selection )/自己複製(Reproductio
n)は、集団の中で適応度の高い染色体をもつ個体をよ
り高い確率で選択して次世代の親とする操作であり(図
9参照)、交叉(Crossover )は、2つの親の染色体の
一部を互いに入れ換えて新たな個体(子)を作りだす操
作であり(図10参照)、突然変異(Mutation)は、1
つの染色体の一部の遺伝子をランダムに置き換えて個体
を変化させる操作である(図11参照)。
【0061】そして、これらの遺伝オペレーションを施
すことにより、適応度値(fitnessvalue )のより高い
染色体(即ち、目的関数をより最適にする解)を得るこ
とができる。ここで、第1実施形態では、上記第1アル
ゴリズム実行ステップが、複数の配置要素9の配置状態
を遺伝子として表現し、配置領域10に上記複数の配置
要素9を配置する問題の解候補として、当該遺伝子の配
列からなり配置領域10として定義される染色体を用い
ることにより、遺伝的アルゴリズム(GAc)を実行す
るようになっている。
【0062】まず、第1アルゴリズム実行ステップで
は、遺伝的アルゴリズム(GAc)を実行する際に、配
置領域10を複数の部分領域10aに分割することによ
り染色体を複数の帯状の領域に分割する。即ち、第1ア
ルゴリズム実行ステップでは、配置要素9の配置結果を
必要なだけ複製して、これらを親の染色体とする。次
に、配置領域10を前述したように縦方向又は横方向に
帯状に分割して〔図3(a),図3(b)参照〕、染色
体を複数の帯状領域に分割する。ただし、遺伝的アルゴ
リズム(GAc)を実行する際には、分割方向はどの染
色体でも同一であるとする。
【0063】続いて、第1アルゴリズム実行ステップで
は、染色体における上記複数の帯状領域の中から選択さ
れた少なくとも一つの帯状領域を、他の染色体における
当該帯状領域に対応する帯状領域(この帯状領域は、当
該帯状領域に含まれる要素と同じ要素を含むものであ
る)と交換することにより、遺伝オペレーションとして
の交叉が実行される。
【0064】ここで、交叉の一例を図6に示す。図6に
示すように、染色体11,12を親の染色体として確率
的に選んでこれらのコピーを作り、染色体11の帯状領
域A 1 〜A4 ,染色体12の帯状領域B1 〜B4 のう
ち、選ばれた帯状領域を互いに交換することによって交
叉が実行される。図6には、染色体11の帯状領域A3
と染色体12の帯状領域B3 とを交換して、帯状領域A
1 ,A2 ,B3 ,A4 からなる子の染色体13を得た例
が示されている。なお、図6には、染色体の一つの帯状
領域を選択し、染色体同士でこの部分を交換して交叉を
実行する例が示されているが、染色体の複数の帯状領域
を選択し、染色体同士でこれらの部分を交換して交叉を
実行してもよい。
【0065】また、第1アルゴリズム実行ステップで
は、一方の染色体における上記複数の帯状領域の中のあ
る特定の帯状領域の方が、他方の染色体における当該帯
状領域に対応する帯状領域よりも疎密が解消されている
場合には、染色体における当該帯状領域を他の染色体に
おける当該帯状領域に対応する帯状領域に張り付けるこ
とにより、遺伝オペレーションとしての交叉を実行して
もよい。
【0066】例えば、一方の染色体の帯状領域Ri (i
=1,…,N)の中で配置要素9の疎密が著しいものを
一つ又は複数選び、もし他方の染色体の対応する帯状領
域R i ′(i=1,…,N)の配置要素9の疎密が、上
記一方の染色体の帯状領域R i より少ない場合には、他
方の染色体の帯状領域Ri ′を一方の染色体の対応する
部分へ張り付けることにより、交叉を実行することがで
きる。
【0067】また、一方の染色体の帯状領域Ri の配置
要素9の疎密と、他方の染色体の対応する帯状領域
i ′の配置要素9の疎密とを全て比較し、もし他方の
染色体に疎密が少ない帯状領域Ri ′があればそれを一
方の染色体の対応する部分へ張り付け、逆に一方の染色
体に疎密が少ない帯状領域Ri があればそれを他方の染
色体の対応する部分へ張り付けることにより、交叉を実
行してもよい。
【0068】さらに、第1アルゴリズム実行ステップで
は、上記複数の帯状領域の中の少なくとも一つの帯状領
域内において、上記複数の配置要素9のうちの少なくと
も一つの配置要素9を移動させることにより、遺伝オペ
レーションとしての突然変異が実行される。ここで、突
然変異の一例を図7に示す。図7に示すように、配置要
素9をある確率で選び、この配置要素9の属する領域R
i の中で配置要素9をランダムに移動させることによっ
て、突然変異が実行される。なお、図7では、移動させ
る配置要素9に網かけを施している。
【0069】最後に、第1アルゴリズム実行ステップで
は、上記複数の配置要素9の疎密が小さい染色体が大き
な適応度値をとりうるような適応度値関数(fitness 関
数)を用いて、遺伝オペレーションとしての選択が実行
される。ここで、選択を実行する際には、以下のように
定義された適応度値関数を用いればよい。
【0070】 適応度値=定数−(配置要素密度の最大値−配置要素密度の最小値)…(1) 適応度値=定数−(配置要素密度が平均配置要素密度以下である配置領域の面 積) …(2) 適応度値=定数−(配置要素密度が平均配置要素密度以上である配置領域の面 積) …(3) さらに、局所的疎密解消法(LO)について、図12〜
図17を用いて説明する。
【0071】局所的疎密解消法(LO)は、前述したよ
うに、局所的疎密解消アルゴリズムを実行して、配置領
域10の部分領域10a内で配置要素9を配置要素密度
が高い場所から低い場所へ移動させることにより、中間
配置状態にある配置要素9の疎密を解消するものであ
る。なお、局所的疎密解消法(LO)は、各染色体毎
(各配置結果毎)に適用される。
【0072】ここで、第1実施形態においては、局所的
疎密解消アルゴリズムとして、流体力学のアナロジーが
適用されたアルゴリズムを用いて、配置要素9の疎密の
解消が行なわれる。流体力学のアナロジーとは、配置領
域10の部分領域10a内における配置要素9の移動を
一種の流体の動きとしてとらえ、隣接する部分領域10
aでの配置要素9の流れ(移動)の相互影響や、同一の
部分領域10aでの流れの相互影響を、粘性のアナロジ
ーで考慮したものである。
【0073】流体力学のアナロジーが適用されたアルゴ
リズムを用いて、配置要素9の疎密の解消を行なう際に
は、まず、配置領域10が縦方向又は横方向に予め決め
られた幅で分割されて、配置領域10が複数の帯状の領
域に分けられる。ここで、第1実施形態では、遺伝的ア
ルゴリズムを実行する際に、配置領域10を複数の部分
領域10aに分割しているので、その部分領域10aを
そのまま帯状領域とすることができる。
【0074】また、新たに配置領域10を分割しなおす
ことにより、配置領域10を複数の帯状の領域に分けて
もよい。この場合には、縦方向に分割された帯状領域の
個数をN本とすると、各帯状領域はS1 ,S2 ,…,S
N で示すことができる。同様に、横方向に分割された帯
状領域の個数をM本とすると、各帯状領域はT1
2 ,…,TM で示すことができる。なお、各帯状領域
(Si ,Ti )の幅は、それぞれ異なっていても良い。
【0075】また、配置領域10の分割を階層化すれ
ば、配置要素9の密度を均一にしやすくできる。なお、
配置領域10の分割を細かくしていく場合には、分割を
対称的に進める方法〔図12(a)〜図12(d)参
照〕と、分割を非対称的に進める方法がある。一方、配
置領域10を階層的に分割せずに、最初から細分化して
おけば、階層的に分割を進めていく方法よりも計算時間
を短縮することができる。
【0076】そして、配置領域10が複数の帯状の領域
に分けられると、帯状領域Ti (S i )内に位置する配
置要素9を、この帯状領域Ti (Si )内で配置要素密
度が均一になるように移動する。即ち、流体が密度の高
い所から低い所へと移動する動作を模倣して、配置要素
9を密度の高い位置から密度の低い位置へと移動する。
【0077】即ち、上記第2アルゴリズム実行ステップ
(図2のステップS4)では、中間配置状態にある上記
複数の配置要素9のうちの少なくとも一つの配置要素9
を、配置要素密度が高い場所から配置要素密度が低い場
所へと移動させることにより、流体力学のアナロジーが
適用されたアルゴリズムを実行しているのである。そし
て、配置領域10を複数の部分領域10aに分割したと
きには、第2アルゴリズム実行ステップでは、上記分割
した部分領域10a内において、当該部分領域10a内
に含まれる上記複数の配置要素9のうちの少なくとも一
つの配置要素9を、配置要素密度が高い場所から配置要
素密度が低い場所へと移動させている。
【0078】ここで、配置要素9を移動させる際には、
以下のような方法を用いることができる。 (1)近傍性の保存 流体のアナロジーでいえば、粘性のため近接する配置要
素9同士は容易に遠くへ引き離されない。
【0079】従って、図14(a),図14(b)に示
すように、近接する配置要素9同士は移動後も近くに位
置するように移動させる。即ち、第2アルゴリズム実行
ステップでは、上記複数の配置要素9間の近傍性を保存
しながら、上記複数の配置要素9のうちの少なくとも一
つの配置要素9を移動させることができる。
【0080】(2)順序性の保存 図15(a),図15(b)に示すように、ある配置要
素9と別の配置要素9とが所定の位置関係を有する場合
(例えば、ある配置要素9が別の配置要素9の上又は右
の位置にある場合等)、移動後も2つの配置要素9がこ
の位置関係を保つように配置要素9を移動する。
【0081】これは配置最適化問題の解が与える配置要
素9間の相対的な位置関係を保存する働きがある。即
ち、第2アルゴリズム実行ステップでは、上記複数の配
置要素9間の順序性を保存しながら、上記複数の配置要
素9のうちの少なくとも一つの配置要素9を移動させる
ことができる。
【0082】(3)逐次添加法 一度に全ての配置要素9の移動を考慮するのではなく、
最初はごく少数の配置要素9のみの移動を考慮する。こ
れら少数の配置要素9を移動させて、これら少数の配置
要素9の密度を均一にした後に、まだ考慮していない配
置要素9の中から再び少数の配置要素9を選択し、すで
に移動の終った配置要素9の集合に付け加える。そし
て、この新たに配置要素9が添加された配置要素9の集
合について、配置要素9の密度を均一にするように配置
要素9の移動を再度実施する。
【0083】例えば、図16(a)に示すように、配置
要素9を、符号Aで示す配置要素9の集合と、符号Bで
示す配置要素9の集合とに分ける。なお、図16(a)
では、符号Aで示す配置要素9を斜線で示し、符号Bで
示す配置要素9を網かけで示している。そして、まず、
図16(b),図16(c)に示すように符号Aで示す
配置要素9の集合の疎密を解消して、図16(d)に示
すように、疎密が解消された当該配置要素9の集合に符
号Bで示す配置要素9の集合を添加する。続いて、図1
6(e)に示すように、符号Bで示す配置要素9の集合
の疎密を解消する。
【0084】即ち、第2アルゴリズム実行ステップで
は、中間配置状態にある上記複数の配置要素9の疎密を
解消する際に、疎密解消対象となる配置要素9を逐次添
加していくことができる。 (4)固定配置要素の考慮 固定配置要素は移動させることができない配置要素9で
あるが、固定配置要素がある場合に、固定配置要素を考
慮せずに固定配置要素以外の配置要素9のみを移動させ
ると、固定配置要素の周辺の配置要素密度が大きくなり
やすい傾向がある。
【0085】そこで、固定配置要素の周辺に配置要素9
が集積しないようにするため、上記複数の配置要素9の
中に固定配置要素がある場合には、第2アルゴリズム実
行ステップでは、固定配置要素も疎密解消対象となる配
置要素9とみなして、中間配置状態にある上記複数の配
置要素9の疎密を解消することが好ましい。 (5)大きな配置要素の考慮 他の配置要素9に比べて配置領域10を占める割合が大
きな配置要素がある場合に、この大きな配置要素を移動
させると、大きな配置要素は多数の配置要素9と重なり
やすいため、配置要素密度を著しく増大させる恐れがあ
る。
【0086】これを避けるためには、大きな配置要素の
移動量を他の配置要素9の移動量に比べて比較的小さく
すればよい。即ち、上記複数の配置要素9の中に大きな
配置要素がある場合には、第2アルゴリズム実行ステッ
プでは、大きな配置要素の移動量を小さくして、中間配
置状態にある上記複数の配置要素9の疎密を解消するこ
とが好ましい。
【0087】また、図17に示すように、大きな配置要
素9aが帯状領域Ti と帯状領域T i+1 とをまたぐよう
に配置領域10に存在している場合には、注意が必要で
ある。特に、大きな配置要素9aの周辺の配置要素9の
移動方向が帯状領域Ti と帯状領域Ti+1 で反対である
場合には、この大きな配置要素9aは動かさないように
する必要がある。
【0088】(6)配置要素密度の高い帯状領域の疎密
の解消方法 配置要素密度の高い帯状領域Si (Ti )の疎密の解消
方法には、一挙に(一度に)配置要素9を移動させて一
度に密度の高い帯状領域Si (Ti )をなくす方法と、
徐々に(段階的に)配置要素9を移動させて段階的に高
い配置要素密度をならしていく方法とがある。
【0089】即ち、第2アルゴリズム実行ステップで
は、中間配置状態にある上記複数の配置要素9の疎密を
解消する際に、移動対象となる配置要素9を一挙に移動
させてもよいし、移動対象となる要素を徐々に移動させ
てもよい。これにより、第1実施形態にかかる配置最適
化問題処理方法においては、第1アルゴリズム実行ステ
ップでは、上記複数の配置要素9の初期配置状態に関す
る情報が入力されると、遺伝的アルゴリズム(GAc)
を実行して、初期配置状態にある上記複数の配置要素9
の疎密が解消される。
【0090】そして、第2アルゴリズム実行ステップで
は、第1アルゴリズム実行ステップにて疎密が解消され
た後の上記複数の配置要素9の中間配置状態に関する情
報が入力されると、局所的疎密解消アルゴリズムを実行
して、中間配置状態にある上記複数の配置要素9の疎密
が更に解消される。上述のように第1アルゴリズム実行
ステップと第2アルゴリズム実行ステップとを実行する
ことにより、上記複数の配置要素9を配置領域10に最
適な状態で配置する配置最適化問題を処理することがで
きる。
【0091】このように、本発明の第1実施形態にかか
る配置最適化問題処理方法によれば、遺伝的アルゴリズ
ム(GAc)による疎密解消法と、流体力学のアナロジ
ーが適用されたアルゴリズムを用いた局所的疎密解消法
(LO)とを組み合わせているので、適応度の増加を加
速して、遺伝的アルゴリズム(GAc)の高速化を実現
することができる。
【0092】また、遺伝的アルゴリズム(GAc)にお
いて、配置要素9の疎密の解消に適した交叉を導入して
いるので、解を効率的に発生させることができ、最適解
を効率的に探索することができる。さらに、第2アルゴ
リズム実行ステップが、複数の配置要素9間の近傍性を
保存しながら配置要素9を移動させたり、複数の配置要
素9間の順序性を保存しながら配置要素9を移動させた
りできるので、処理できる配置最適化問題の範囲を拡大
することができる。
【0093】また、第2アルゴリズム実行ステップが、
配置要素9の疎密を解消する際に、疎密解消対象となる
配置要素9を逐次添加したり、固定配置要素も疎密解消
対象となる配置要素9とみなしたり、大きな配置要素9
の移動量を小さくしたり、移動対象となる配置要素9を
一挙に移動させたり、移動対象となる配置要素9を徐々
に移動させたりできるので、更に処理できる配置最適化
問題の範囲を拡大することができる。
【0094】なお、上述においては、第1アルゴリズム
実行ステップにて遺伝的アルゴリズム(GAc)による
疎密解消法を実行した後に、第2アルゴリズム実行ステ
ップにて局所的疎密解消法(LO)を実行することによ
り、遺伝的アルゴリズム(GAc)による疎密解消法と
局所的疎密解消法(LO)とを組み合わせた場合につい
て説明したが、第1アルゴリズム実行ステップが遺伝的
アルゴリズム(GAc)を実行している中で、第2アル
ゴリズム実行ステップが局所的疎密解消アルゴリズムを
実行することにより、遺伝的アルゴリズム(GAc)に
よる疎密解消法と局所的疎密解消法(LO)とを組み合
わせることもできる。
【0095】このときの配置最適化問題処理装置1の動
作を、図18に示すフローチャートを用いて説明する。
まず、配置最適化問題処理装置1に、上記複数の配置要
素9の初期配置結果(初期配置状態に関する情報)が入
力される(ステップA1)。この配置要素9の初期配置
結果が入力されると、配置最適化問題処理装置1におい
ては、上記第1アルゴリズム実行ステップにより、配置
結果のコピーを作ることにより染色体の集団が準備され
る(ステップA2)。
【0096】続いて、第2アルゴリズム実行ステップで
は、各染色体(各配置結果)に対して、配置領域10の
分割方法は同じであるがその他の制御パラメータが異な
る局所的疎密解消法(LO)が実行されて、配置結果の
疎密の解消が試みられる(ステップA3)。なお、局所
的疎密解消法(LO)は、流体力学のアナロジーが適用
されたアルゴリズムを用いて実行される。
【0097】さらに、第1アルゴリズム実行ステップで
は、各染色体に対して、遺伝オペレーションとしての交
叉,突然変異及び選択が施され(ステップA4〜A
6)、最高の適応度値をもつ染色体(最適な染色体)の
適応度値が所定の基準値以上であるか、又は、配置結果
の疎密が解消されたかどうかが判断される(ステップA
7)。
【0098】そして、最適な染色体の適応度値が所定の
基準値以上でない、又は、配置結果の疎密が解消されて
いないと判断された場合には、上記ステップA3以降の
処理を繰り返し(ステップA7のNOルート)、最適な
染色体の適応度値が所定の基準値以上である、又は、配
置結果の疎密が解消されていると判断された場合には、
その最適な染色体が配置最適化問題の解として出力され
て、配置最適化問題処理装置1での処理が終了する(ス
テップA7のYESルート)。
【0099】このようにしても、上述したものと同様の
利点を得ることができる。また、流体力学のアナロジー
が適用されたアルゴリズムを用いて局所的疎密解消法
(LO)を実行する際に、図13(a)〜図13(c)
に示すように、ある配置領域10を縦方向に分割して各
配置要素9を移動させるとともに、他の配置領域10を
横方向に分割して各配置要素9を移動させ、特定の配置
要素9の、縦方向の分割における移動(移動方向と移動
量)と、横方向の分割における移動(移動方向と移動
量)を、例えばそれぞれベクトルとみなして、2つのベ
クトルを合成することにより、当該特定の配置要素9の
移動方向と移動量を求め、これに基づいて当該特定の配
置要素9を移動させてもよい。
【0100】(b3)第1実施形態の変形例の説明 上述した第1実施形態においては、第2アルゴリズム実
行ステップが、局所的疎密解消法(LO)を実行する際
に、局所的疎密解消アルゴリズムとして、流体力学のア
ナロジーが適用されたアルゴリズムを用いる場合につい
て説明したが、第2アルゴリズム実行ステップは、局所
的疎密解消アルゴリズムとして、モーフィングのアナロ
ジーが適用されたアルゴリズムを用いることもできる。
【0101】モーフィングのアナロジーとは、ある2次
元画像を徐々に変形して他の画像にする画像処理技術で
あるモーフィング(morphing)を模倣し、配置領域10
の部分領域10a内における配置要素9の移動をモーフ
ィングにおける変形動作としてとらえたものである。た
だし、画像処理技術のモーフィングとは異なり、配置要
素9自体の大きさや形状は変化せず、配置要素9の配置
領域10上での位置座標のみが変化するようにする。
【0102】そして、モーフィングのアナロジーによっ
て配置要素9の疎密の解消を実行する際には、前述の第
1実施形態にて説明したように配置領域10を分割して
得られた各帯状領域内で、図19(a)に示すように、
それぞれ配置要素9を移動させる際の中心点(モーフィ
ング中心部)Cを決定する。そして、図19(b)に示
すように、この中心点Cを基準として、この中心点Cか
ら配置要素までの距離に応じて、配置要素9間の相対的
な位置関係を保ったまま配置要素9の座標を増加させる
ことにより配置要素9間の距離を増大させ、配置要素9
を当該配置要素9の方向に(即ち、配置要素9を中心点
Cから配置要素9が存在する方向に放射状に拡散するよ
うに)移動させる。
【0103】ここで、モーフィングの中心点Cは、以下
に示す方法のいずれかにより決定することができる。 (1)配置要素9の重心を用いる方法 配置要素9の重心の位置をモーフィングの中心とする方
法である。即ち、各配置要素9の座標を(x1
1 ),(x2 ,y2 ),…,(xM ′,yM ′)とす
るとき、モーフィングの中心をその重心、
【0104】
【数1】
【0105】とする方法である。 (2)配置要素9の数に基づいた方法 配置領域10の各帯状領域において、帯状領域のX軸に
垂直な線であってこの線の両側に位置する配置要素9の
数が等しくなるような線(X軸に垂直な線で配置要素数
をX方向に二等分する線)と、帯状領域のY軸に垂直な
線であってこの線の両側に位置する配置要素9の数が等
しくなるような線(Y軸に垂直な線で配置要素数をY方
向に二等分する線)を決定する。そして、これら二つの
線の交点をモーフィングの中心とする方法である。
【0106】(3)配置要素9の面積に基づいた方法 配置領域10の各帯状領域において、帯状領域のX軸に
垂直な線であってこの線の両側に位置する配置要素9の
面積が等しくなるような線(X軸に垂直な線で配置要素
の総面積をX方向に二等分する線)と、帯状領域のY軸
に垂直な線であってこの線の両側に位置する配置要素9
の面積が等しくなるような線(Y軸に垂直な線で配置要
素の総面積をY方向に二等分する線)を決定する。そし
て、これら二つの線の交点をモーフィングの中心とする
方法である。
【0107】即ち、第2アルゴリズム実行ステップで
は、中間配置状態にある上記複数の配置要素9に関する
情報(配置要素9の重心,総数,総面積等)に基づいて
中心点Cを決定し、上記複数の配置要素9のうちの少な
くとも一つの配置要素9を中心点Cから離隔した場所へ
と移動させることにより、モーフィングのアナロジーが
適用されたアルゴリズムを実行しているのである。
【0108】そして、上記複数の配置要素9を配置する
配置領域10を複数の帯状領域(又は部分領域10a)
に分割したときには、第2アルゴリズム実行ステップで
は、当該帯状領域毎に中心点Cを決定し、当該帯状領域
内において、当該帯状領域内に含まれる上記複数の配置
要素9の少なくとも一つの配置要素9を上記中心点Cか
ら離隔した場所へと移動させている。
【0109】ここで、配置要素9の移動量の決め方を以
下に示す。 (1)配置要素9の移動量の線形的拡大 モーフィングの中心点Cから配置要素9の中心までの距
離に比例させて(即ち線形に)、この中心点Cから当該
配置要素9の方向に向かって配置要素9を移動させる。
【0110】即ち、第2アルゴリズム実行ステップで
は、上記複数の配置要素9の少なくとも一つの配置要素
9を中心点Cから離隔した場所へと移動させる際に、中
心点Cから移動対象となる配置要素9までの距離を線形
的に拡大することができる。 (2)配置要素9の移動量の非線形的拡大 モーフィングの中心点Cから当該配置要素9の方向に向
かって配置要素9を移動させるときに、移動させる距離
はこの中心点Cから配置要素9の中心までの距離に応じ
た非線形な関数で定義されている。
【0111】具体的には、中心点Cの近傍は配置要素9
の疎密が大きいことから、中心点近傍の配置要素9の移
動量を大きくする一方、分割された帯状領域(又は部分
領域10a)の内部で配置要素9を移動させるために、
当該帯状領域の境界近傍の配置要素9の移動量はより小
さくするようにする。即ち、第2アルゴリズム実行ステ
ップでは、上記複数の配置要素9の少なくとも一つの配
置要素9を中心点Cから離隔した場所へと移動させる際
に、中心点Cから移動対象となる配置要素9までの距離
を非線形的に拡大することもできる。
【0112】このようなモーフィングのアナロジーが適
用されたアルゴリズムを用いて局所的疎密解消法(L
O)を実行しても、上述した第1実施形態の場合と同様
の利点を得ることができる。また、第2アルゴリズム実
行ステップが、配置要素9を中心点Cから離隔した場所
へと移動させる際に、中心点Cから移動対象となる配置
要素9までの距離を線形的に拡大したり、中心点Cから
移動対象となる配置要素9までの距離を非線形的に拡大
したりできるので、処理できる配置最適化問題の範囲を
拡大することができる。
【0113】なお、この第1実施形態の変形例にかかる
配置最適化問題処理方法においても、配置要素9の疎密
を解消する際に、第1実施形態にて説明したように、逐
次添加法を用いたり、固定配置要素や大きな配置要素を
考慮したり、配置要素9を一挙に移動させたり、徐々に
移動させたりすることができる。 (b4)第2実施形態の説明 本発明の第2実施形態にかかる配置最適化問題処理方法
について説明する。
【0114】第2実施形態にかかる配置最適化問題処理
方法は、上記第1アルゴリズム実行ステップ(図2のス
テップS3)において、遺伝的アルゴリズム(GAp)
を実行し、第2アルゴリズム実行ステップ(図2のステ
ップS4)において、局所的疎密解消アルゴリズムとし
て、第1実施形態にて前述した流体力学のアナロジーが
適用されたアルゴリズムを実行するものである。
【0115】ここで、第2実施形態にて実行される遺伝
的アルゴリズム(GAp)は、局所的疎密解消法(L
O)において配置領域10を分割する幅を最適化するた
めの遺伝的アルゴリズムである。即ち、第2実施形態に
かかる配置最適化問題処理方法は、局所的疎密解消法
(LO)のパラメータである配置領域10を分割する幅
のリストからなる各染色体に遺伝的アルゴリズム(GA
p)を適用することにより、配置領域10の分割を最適
化して、効率的に配置要素9の疎密を解消しようとする
ものである。
【0116】換言すれば、この方法は、配置領域10の
分割法を最適にするために、与えられた配置を初期配置
として、局所的疎密解消法(LO)におけるパラメータ
(配置領域10の横幅)を遺伝的アルゴリズム(GA
p)で最適化することにより、疎密の解消を効率的に実
施する方法である。なお、この配置最適化問題処理方法
は、GAp+LOと表記することができる。
【0117】つまり、第2実施形態では、上記第1アル
ゴリズム実行ステップが、上記第2アルゴリズム実行ス
テップにおいて実行される局所的疎密解消アルゴリズム
にて用いられるパラメータを遺伝子として表現し、この
パラメータを決定する問題の解候補として当該遺伝子の
配列からなる染色体を用いることにより、遺伝的アルゴ
リズム(GAp)を実行するようになっている。
【0118】ここで、パラメータは、配置領域10を分
割する幅を規定する情報(部分領域10aの大きさを規
定する情報)と、その他の局所的疎密解消法(LO)の
制御パラメータとからなる。つまり、遺伝的アルゴリズ
ム(GAp)では、部分領域10aの幅を規定する情報
のリストと、その他の局所的疎密解消法(LO)の制御
パラメータのリストとからなる染色体を用いている。
【0119】例えば、配置領域10を縦方向に分割する
場合に、帯状領域S1 ,S2 ,…,SN の幅をそれぞれ
1 ,W2 ,…,WN としたときの染色体の構成を、図
20に示す。ここで、幅W1 ,W2 ,…,WN の合計
は、配置領域10の横幅と等しくなければならない。な
お、染色体14は、その他の局所的疎密解消法の制御パ
ラメータa1 ,a2 も遺伝子として持っている。
【0120】そして、第1アルゴリズム実行ステップで
は、二つの親の染色体の遺伝子の重み付き平均を子の染
色体の遺伝子とすることにより、遺伝オペレーションと
しての交叉が実行される。ここで、交叉の一例を図21
に示す。図21に示すように、染色体15,16を親の
染色体として確率的に選んでこれらのコピーを作り、染
色体15の遺伝子と染色体16の遺伝子の適当な重みつ
き平均をとり、これを子の染色体17の遺伝子とするこ
とにより交叉が実行される。
【0121】なお、図21において、W1 〜W4 …,M
1 〜M4 …,Z1 〜Z4 …は、帯状領域S1 ,S2
…,SN の幅を示しており、a1 …,b1 …,c1
は、その他の局所的疎密解消法(LO)の制御パラメー
タを示している。ここで、 Zi =(Wi +Mi )/2 …(4) ci =(ai +bi )/2 …(5) である。
【0122】このほか、第1アルゴリズム実行ステップ
では、パラメータに含まれる部分領域10aの幅を規定
する情報の総和が変化しないように調整しながら、染色
体の一部の帯状領域を他の染色体の当該帯状領域に対応
する帯状領域に張り付けることにより、遺伝オペレーシ
ョンとしての交叉を実行してもよい。例えば、一方の染
色体の一部分を他方の染色体に張り付ける際に、幅
1 ,W 2 ,…,WN の合計が変化しないように他方の
染色体に元からある遺伝子を調整しながら交叉を実行す
る。なお、他方の染色体の一部分を一方の染色体に張り
付ける場合も同様である。
【0123】さらに、第1アルゴリズム実行ステップで
は、染色体の少なくとも二つの遺伝子を選択し、選択し
た上記遺伝子に任意の数値を加えることにより、パラメ
ータに含まれる上記部分領域10aの幅を規定する情報
の総和が変化しないように調整して、遺伝オペレーショ
ンとしての突然変異が実行される。即ち、染色体の遺伝
子に小さな変化をランダムに与えることによって突然変
異を起こすのであり、具体的には、選択した遺伝子のう
ちの一方の遺伝子に所定の数を加える一方、他方の遺伝
子から所定の数を引くことにより、部分領域10aの幅
を規定する情報の総和が変化しないように調整しなが
ら、突然変異が実行される。
【0124】ここで、突然変異の一例を図22に示す。
図22に示すように、染色体18の任意の二つの遺伝子
3 ,W5 を選択し、遺伝子W5 に小さな正の乱数ΔW
を加える一方、遺伝子W3 から当該乱数ΔWを差し引く
ことにより、部分領域10aの幅を規定する情報の総和
が変化しないように調整しながら、染色体18を染色体
18′に変化させる。なお、図22に示す例では、その
他の局所的疎密解消法(LO)の制御パラメータa2
絶対値の小さな乱数Δaを加えることによっても、染色
体18に突然変異を施している。
【0125】より一般には、染色体の任意の二つの遺伝
子をWi ,Wj とし、小さな正の乱数をΔWとし、突然
変異後の遺伝子をWi ′,Wj ′とすると、遺伝子
i ′,Wj ′は以下のように表すことができる。 Wi ′=Wi −ΔW …(6) Wj ′=Wj +ΔW …(7) このほか、第1アルゴリズム実行ステップでは、染色体
の任意のm個の遺伝子Wi1,Wi2,…,Wimを選択し、
絶対値が小さな乱数をΔWi1,ΔWi2,…,ΔWimを用
いて、これらの遺伝子Wi1,Wi2,…,Wimに突然変異
を施して遺伝子Wi1′,Wi2′,…,Wim′を生成して
もよい。
【0126】このとき、遺伝子Wi1′,Wi2′,…,W
im′は以下のように表すことができる。 Wik′=Wik+ΔWik 但し、ΔWi1+ΔWi2+…+ΔWim=0 …(8) このように、第2実施形態においては、第1アルゴリズ
ム実行ステップでは、遺伝的アルゴリズム(GAp)を
実行することにより、配置領域10の分割幅の最適値の
候補(最適幅の候補)が複数求められる。
【0127】その後、第2アルゴリズム実行ステップで
は、第1アルゴリズム実行ステップにて得られた複数の
最適幅の候補によりそれぞれ配置領域10を分割して、
局所的疎密解消法(LO)を実行することにより、初期
配置状態にある上記複数の配置要素9の疎密の解消が試
みられる。そして、第2実施形態においては、再度、第
1アルゴリズム実行ステップでの処理に戻り、第1アル
ゴリズム実行ステップでは、以下のように定義された適
応度値関数(即ち、上記複数の配置要素9の疎密を小さ
くできるような染色体が大きな適応度値をとりうるよう
な適応度値関数)を用いて、遺伝オペレーションとして
の選択が実行され、最も疎密が解消された配置結果とし
ての染色体が選択される。
【0128】 適応度値=定数−(配置要素密度の最大値−配置要素密度の最小値)…(9) 適応度値=定数−(配置要素密度が平均配置要素密度以下である配置領域の面 積) …(10) 適応度値=定数−(配置要素密度が平均配置要素密度以上である配置領域の面 積) …(11) つまり、これらの適応度値関数を用いて、局所的疎密解
消法(LO)を改善し、結果として、配置要素9の疎密
解消を改善することが可能になる。
【0129】即ち、第2実施形態にかかる配置最適化問
題処理方法においては、第1アルゴリズム実行ステップ
と第2アルゴリズム実行ステップとを組み合わせて実行
することにより、局所的疎密解消アルゴリズムを実行す
る際に用いるパラメータである分割幅の最適値を求める
ことを通して、初期配置状態にある上記複数の配置要素
9の疎密が解消される。
【0130】これにより、上記複数の配置要素9を配置
領域10に最適な状態で配置する配置最適化問題を処理
することができる。このように、本発明の第2実施形態
にかかる配置最適化問題処理方法によれば、遺伝的アル
ゴリズム(GAp)により配置領域10の分割を最適化
しているので、効率的に配置要素9の疎密を解消するこ
とができる。
【0131】また、遺伝的アルゴリズム(GAp)を実
行して得られた各染色体により指定される種々の幅で複
数の配置領域10を分割して、複数の配置領域10に異
なる局所的疎密解消法(LO)を適用し、最適な局所的
疎密解消法(LO)を見つけているので、配置領域10
の最適な分割法を探索することができる。なお、以下に
説明するようにして、上記第1アルゴリズム実行ステッ
プが、遺伝的アルゴリズム(GAp)を実行している中
で、第2アルゴリズム実行ステップが、局所的疎密解消
アルゴリズムを実行することにより、遺伝的アルゴリズ
ム(GAp)と局所的疎密解消法(LO)とを組み合わ
せることもできる。
【0132】このときの配置最適化問題処理装置1の動
作を、図23に示すフローチャートを用いて説明する。
まず、配置最適化問題処理装置1に、上記複数の配置要
素9の初期配置結果(初期配置状態に関する情報)が入
力される(ステップB1)。この配置要素9の初期配置
結果が入力されると、配置最適化問題処理装置1では、
上記第1アルゴリズム実行ステップにより、局所的疎密
解消法(LO)のパラメータを遺伝子とする染色体の集
団が準備される(ステップB2)。
【0133】続いて、第2アルゴリズム実行ステップで
は、各染色体に対応する局所的疎密解消法(LO)にて
疎密の解消が試みられ〔即ち、それぞれの染色体により
指定される幅で複数の配置領域10を分割して、各配置
領域10毎に局所的疎密解消法(LO)にて疎密の解消
が試みられ〕、適応度値が計算される(ステップB
3)。なお、局所的疎密解消法(LO)は、流体力学の
アナロジーが適用されたアルゴリズムを用いて実行され
る。
【0134】その後、第1アルゴリズム実行ステップで
は、各染色体に対して、遺伝オペレーションとしての交
叉及び突然変異が施され(ステップB4,B5)、最高
の適応度値をもつ染色体(最適な染色体)の適応度値が
所定の基準値以上であるか、又は、最高の適応度値をも
つ染色体により決定される幅で配置領域10を分割して
局所的疎密解消法(LO)を実行した場合に、配置要素
9の疎密解消結果は満足できるものであるかが判断され
る(ステップB6)。
【0135】そして、最適な染色体の適応度値が所定の
基準値以上でない、又は、配置要素9の疎密解消結果は
満足できるものでないと判断された場合には、上記ステ
ップB3以降の処理を繰り返し(ステップB6のNOル
ート)、最適な染色体の適応度値が所定の基準値以上で
ある、又は、配置要素9の疎密解消結果は満足できるも
のであると判断された場合には、そのときの配置要素9
の配置結果が配置最適化問題の解として出力されて、配
置最適化問題処理装置1での処理が終了する(ステップ
B6のYESルート)。
【0136】このようにしても、上述したものと同様の
利点を得ることができる。なお、この第2実施形態にか
かる配置最適化問題処理方法においても、配置要素9の
疎密を解消する際に、第1実施形態にて説明したよう
に、逐次添加法を用いたり、固定配置要素や大きな配置
要素を考慮したり、配置要素9を一挙に移動させたり、
徐々に移動させたりすることができる。
【0137】(b5)第2実施形態の変形例の説明 なお、上述した第2実施形態においては、第2アルゴリ
ズム実行ステップが、局所的疎密解消法(LO)を実行
する際に、局所的疎密解消アルゴリズムとして、流体力
学のアナロジーが適用されたアルゴリズムを用いる場合
について説明したが、前述した第1実施形態の変形例の
場合と同様に、第2アルゴリズム実行ステップは、局所
的疎密解消アルゴリズムとして、前述したモーフィング
のアナロジーが適用されたアルゴリズムを用いることも
できる。
【0138】このように、モーフィングのアナロジーが
適用されたアルゴリズムを用いて局所的疎密解消法(L
O)を実行しても、上述した第2実施形態の場合と同様
の利点を得ることができる。この場合も、配置要素9の
疎密を解消する際に、第1実施形態にて説明したよう
に、逐次添加法を用いたり、固定配置要素や大きな配置
要素を考慮したり、配置要素9を一挙に移動させたり、
徐々に移動させたりすることができるのは言うまでもな
い。
【0139】(b6)第3実施形態の説明 本発明の第3実施形態にかかる配置最適化問題処理方法
について説明する。第3実施形態にかかる配置最適化問
題処理方法は、上記第1アルゴリズム実行ステップ(図
2のステップS3)において、遺伝的アルゴリズム(G
Ap)を実行している中で、更に、第1アルゴリズム実
行ステップが遺伝的アルゴリズム(GAc)を実行する
とともに、第2アルゴリズム実行ステップ(図2のステ
ップS4)が局所的疎密解消アルゴリズムを実行するこ
とにより、遺伝的アルゴリズム(GAp,GAc)と局
所的疎密解消法(LO)とを組み合わせるものである。
【0140】即ち、第3実施形態にかかる配置最適化問
題処理方法は、遺伝的アルゴリズム(GAp)で最適解
を求める際に、各世代の終了毎又は複数世代の終了毎に
遺伝的アルゴリズム(GAc)を実行するとともに、更
に、この遺伝的アルゴリズム(GAc)の実行中に局所
的疎密解消法(LO)を実施するものである。つまり、
この方法は、遺伝的アルゴリズム(GAp)の内側に、
遺伝的アルゴリズム(GAc)と局所的疎密解消法(L
O)とを挿入したものであり、GAp+(GAc+L
O)と表記することができる。
【0141】このときの配置最適化問題処理装置1の動
作を、図24に示すフローチャートを用いて説明する。
まず、配置最適化問題処理装置1に、上記複数の配置要
素9の初期配置結果(初期配置状態に関する情報)が入
力される(ステップC1)。この配置要素9の初期配置
結果が入力されると、配置最適化問題処理装置1では、
上記第1アルゴリズム実行ステップにより、局所的疎密
解消法(LO)のパラメータを遺伝子とする、遺伝的ア
ルゴリズム(GAp)の染色体の集団が準備される(ス
テップC2)。
【0142】続いて、第1アルゴリズム実行ステップで
は、各染色体に対して、遺伝的アルゴリズム(GAp)
における遺伝オペレーションである交叉及び突然変異が
施される(ステップC3,C4)。そして、この遺伝的
アルゴリズム(GAp)の実行中に、更に第1アルゴリ
ズム実行ステップにより、遺伝的アルゴリズム(GA
c)が実行されるとともに、第2アルゴリズム実行ステ
ップにより、局所的疎密解消アルゴリズムが実行される
(ステップC5〜C12)。
【0143】即ち、第1アルゴリズム実行ステップで
は、上記ステップC1で取得した配置要素9の初期配置
結果のコピーを作ることにより、遺伝的アルゴリズム
(GAc)の染色体の集団が準備される(ステップC
5)。そして、遺伝的アルゴリズム(GAp)の複数の
染色体により指定される配置領域10の分割法により
〔即ち、遺伝的アルゴリズム(GAp)の複数の染色体
により指定される幅で〕、複数の遺伝的アルゴリズム
(GAc)の染色体である配置領域10がそれぞれ分割
される(ステップC6)。
【0144】さらに、第1アルゴリズム実行ステップで
は、各染色体に対して、遺伝的アルゴリズム(GAc)
における遺伝オペレーションである交叉及び突然変異が
施される(ステップC7,C8)。その後、第2アルゴ
リズム実行ステップでは、各染色体(各配置結果)に対
して、配置領域10の分割方法は同じであるがその他の
制御パラメータが異なる局所的疎密解消法(LO)が実
行されて、配置結果の疎密の解消が試みられる(ステッ
プC9)。なお、局所的疎密解消法(LO)は、流体力
学のアナロジーが適用されたアルゴリズム、又は、モー
フィングのアナロジーが適用されたアルゴリズムを用い
て実行される。
【0145】さらに、第1アルゴリズム実行ステップで
は、各染色体に対して、遺伝的アルゴリズム(GAc)
における遺伝オペレーションである選択が施された後に
(ステップC10)、遺伝的アルゴリズム(GAc)を
行なうように定められた世代数を超えたかが判断される
(ステップC11)。そして、定められた世代数を超え
ていないと判断された場合〔即ち、まだ定められた世代
数分の遺伝的アルゴリズム(GAc)が実行されていな
いと判断された場合〕には、上記ステップC7以降の処
理を繰り返し(ステップC11のNOルート)、定めら
れた世代数を超えたと判断された場合〔即ち、定められ
た世代数分の遺伝的アルゴリズム(GAc)が実行され
たと判断された場合〕には、遺伝的アルゴリズム(GA
c)での最適な染色体の持つ適応度値が、遺伝的アルゴ
リズム(GAp)の染色体の持つ適応度値とされる(ス
テップC11のYESルートからステップC12)。
【0146】その後、第1アルゴリズム実行ステップで
は、再度遺伝的アルゴリズム(GAp)の実行に戻り、
各染色体に対して、遺伝的アルゴリズム(GAp)にお
ける遺伝オペレーションである選択が施され(ステップ
C13)、最高の適応度値をもつ染色体(最適な染色
体)の適応度値が所定の基準値以上であるか、又は、配
置結果の疎密が解消されたかどうかが判断される(ステ
ップC14)。
【0147】そして、最適な染色体の適応度値が所定の
基準値以上でない、又は、配置結果の疎密が解消されて
いないと判断された場合には、上記ステップC3以降の
処理を繰り返し(ステップC14のNOルート)、最適
な染色体の適応度値が所定の基準値以上である、又は、
配置結果の疎密が解消されていると判断された場合に
は、その最適な染色体が配置最適化問題の解として出力
されて、配置最適化問題処理装置1での処理が終了する
(ステップC14のYESルート)。
【0148】このように、本発明の第3実施形態にかか
る配置最適化問題処理方法によれば、前述した各実施形
態と同様の効果を得ることができるほか、遺伝的アルゴ
リズム(GAp)の実行中に、遺伝的アルゴリズム(G
Ac)と局所的疎密解消法(LO)とを組み合わせて実
行しているので、遺伝的アルゴリズム(GAp)の更な
る高速化を実現することができる。
【0149】(b7)第4実施形態の説明 本発明の第4実施形態にかかる配置最適化問題処理方法
について説明する。第4実施形態にかかる配置最適化問
題処理方法は、上記第1アルゴリズム実行ステップ(図
2のステップS3)において、遺伝的アルゴリズム(G
Ac)を実行している中で、更に、第1アルゴリズム実
行ステップが遺伝的アルゴリズム(GAp)を実行する
とともに、第2アルゴリズム実行ステップが局所的疎密
解消アルゴリズムを実行することにより、遺伝的アルゴ
リズム(GAp,GAc)と局所的疎密解消法(LO)
とを組み合わせるものである。
【0150】即ち、第4実施形態にかかる配置最適化問
題処理方法は、遺伝的アルゴリズム(GAc)で最適解
を求める際に、各世代の終了毎又は複数世代の終了毎に
遺伝的アルゴリズム(GAp)を実行するとともに、更
に、この遺伝的アルゴリズム(GAp)の実行中に局所
的疎密解消法(LO)を実施するものである。つまり、
この方法は、第2実施形態にて前述したように遺伝的ア
ルゴリズム(GAp)と局所的疎密解消法(LO)とを
組み合わせて実行することにより、配置領域10の分割
幅を最適化し、この分割幅で分割された配置領域10を
遺伝的アルゴリズム(GAc)の染色体として用いて遺
伝的アルゴリズム(GAc)を実行し、更に効率的に解
を探索するものである。
【0151】なお、この配置最適化問題処理方法は、G
Ac+(GAp+LO)と表記することができる。この
ときの配置最適化問題処理装置1の動作を、図25に示
すフローチャートを用いて説明する。まず、配置最適化
問題処理装置1に、上記複数の配置要素9の初期配置結
果(初期配置状態に関する情報)が入力される(ステッ
プD1)。
【0152】配置要素9の初期配置結果が入力される
と、配置最適化問題処理装置1では、上記第1アルゴリ
ズム実行ステップにより、初期配置結果のコピーを作る
ことにより遺伝的アルゴリズム(GAc)の染色体の集
団が準備される(ステップD2)。そして、この遺伝的
アルゴリズム(GAc)の実行中に、更に第1アルゴリ
ズム実行ステップにより、遺伝的アルゴリズム(GA
p)が実行されるとともに、第2アルゴリズム実行ステ
ップにより、局所的疎密解消アルゴリズムが実行される
(ステップD3〜D9)。
【0153】即ち、上記第1アルゴリズム実行ステップ
では、局所的疎密解消法(LO)のパラメータを遺伝子
とする、遺伝的アルゴリズム(GAp)の染色体の集団
が準備される(ステップD3)。続いて、第1アルゴリ
ズム実行ステップでは、各染色体に対して、遺伝的アル
ゴリズム(GAp)における遺伝オペレーションである
交叉及び突然変異が施される(ステップD4,D5)。
【0154】そして、第2アルゴリズム実行ステップで
は、各染色体により表される分割幅で配置領域10を分
割して、局所的疎密解消法(LO)を実行することによ
り、疎密の解消が試みられ、局所的疎密解消法(LO)
の結果に基づいて適応度値が計算される(ステップD
6)。なお、局所的疎密解消法(LO)は、流体力学の
アナロジーが適用されたアルゴリズム、又は、モーフィ
ングのアナロジーが適用されたアルゴリズムを用いて実
行される。
【0155】さらに、第1アルゴリズム実行ステップで
は、各染色体に対して、遺伝的アルゴリズム(GAp)
における遺伝オペレーションである選択を施して、大き
な適応度値をもつ染色体が選ばれる(ステップD7)。
その後、遺伝的アルゴリズム(GAp)を行なうように
定められた世代数を超えたかが判断される(ステップD
8)。
【0156】そして、定められた世代数を超えていない
と判断された場合〔即ち、まだ定められた世代数分の遺
伝的アルゴリズム(GAp)が実行されていないと判断
された場合〕には、上記ステップD4以降の処理を繰り
返し(ステップD8のNOルート)、定められた世代数
を超えたと判断された場合〔即ち、定められた世代数分
の遺伝的アルゴリズム(GAp)が実行されたと判断さ
れた場合〕には、上記ステップD7で選ばれた染色体
が、遺伝的アルゴリズム(GAp)での最適な染色体で
あると決定される(ステップD8のYESルートからス
テップD9)。
【0157】その後、第1アルゴリズム実行ステップで
は、再度遺伝的アルゴリズム(GAc)の実行に戻り、
上記ステップD9で決定された遺伝的アルゴリズム(G
Ap)の染色体により指定される配置領域10の分割法
により〔即ち、ステップD9で決定された遺伝的アルゴ
リズム(GAp)の染色体により指定される幅で〕、遺
伝的アルゴリズム(GAc)の染色体である配置領域1
0が分割される(ステップD10)。
【0158】さらに、第1アルゴリズム実行ステップで
は、各染色体に対して、遺伝的アルゴリズム(GAc)
における遺伝オペレーションである交叉,突然変異及び
選択が施される(ステップD11〜D13)。そして、
最高の適応度値をもつ染色体(最適な染色体)の適応度
値が所定の基準値以上であるか、又は、配置結果の疎密
が解消されたかどうかが判断される(ステップD1
4)。
【0159】そして、最適な染色体の適応度値が所定の
基準値以上でない、又は、配置結果の疎密が解消されて
いないと判断された場合には、上記ステップD10以降
の処理を繰り返し(ステップD14のNOルート)、最
適な染色体の適応度値が所定の基準値以上である、又
は、配置結果の疎密が解消されていると判断された場合
には、その最適な染色体が配置最適化問題の解として出
力されて、配置最適化問題処理装置1での処理が終了す
る(ステップD14のYESルート)。
【0160】このように、本発明の第4実施形態にかか
る配置最適化問題処理方法によれば、前述した各実施形
態と同様の効果を得ることができるほか、遺伝的アルゴ
リズム(GAc)の実行中に、遺伝的アルゴリズム(G
Ap)と局所的疎密解消法(LO)とを組み合わせて実
行しているので、遺伝的アルゴリズム(GAc)の更な
る高速化を実現することができる。
【0161】(b8)その他 上述した第1,第3,第4実施形態では、縦方向又は横
方向のいずれか一方の同一方向に分割された染色体(即
ち配置領域10)を用いて遺伝オペレーション(GA
c)を実行する場合について説明したが、それぞれ異な
る方向に分割された染色体を用いて遺伝オペレーション
(GAc)を実行することもできる。
【0162】この場合に用いられるモデルをアイランド
モデルといい、図26を用いてこのアイランドモデルに
ついて説明する。図26に示すアイランドモデルは、縦
方向に分割された染色体の集団21を複数有する第1ア
イランド20と、横方向に分割された染色体の集団23
を複数有する第2アイランド22からなる。
【0163】なお、第1アイランド20は少なくとも一
つの集団21を有していればよく、第2アイランド22
は少なくとも一つの集団23を有していればよい。つま
り、第1アルゴリズム実行ステップでは、遺伝的アルゴ
リズム(GAc)を実行する際に、上記複数の配置要素
9を配置する配置領域10を複数の部分領域10aに縦
方向に分割することにより複数の帯状領域に縦方向に分
割された染色体の集団21を少なくとも一つ有する第1
アイランド20と、上記複数の配置要素9を配置する配
置領域10を複数の部分領域10aに横方向に分割する
ことにより複数の帯状領域に横方向に分割された染色体
の集団23を少なくとも一つ有する第2アイランド22
とを用いるようになっている。
【0164】各集団21,23は、通常は独立して遺伝
的アルゴリズム(GAc)や局所的疎密解消法(LO)
に基づいて発展していくが、遺伝的アルゴリズム(GA
c)を適当な世代数実行する毎に、第1アイランド20
の一つの集団21及び第2アイランド22の一つの集団
23から何らかの方法で染色体を選択して、分割方向の
異なるこれらの染色体を親の染色体として遺伝オペレー
ションとしての交叉を実行して、その結果生じた子の染
色体をそれぞれの集団21,23へ戻すこともできる。
【0165】このとき、分割方向の異なる染色体間の交
叉は、以下のように実行することができる。 (1)交叉の第1の方法 集団21から選択した染色体は縦方向に分割されてお
り、この染色体に局所的疎密解消法(LO)を施すと、
ある特定の配置要素9は、それが属する帯状領域内で定
められた方向に定められた量だけ移動する。このときの
移動量をベクトルx1 ′とする。
【0166】一方、集団23から選択した染色体は横方
向に分割されており、この染色体に局所的疎密解消法
(LO)を施すと、当該特定の配置要素9は、それが属
する帯状領域内で定められた方向に定められた量だけ移
動する。このときの移動量をベクトルx2 ′とする。そ
して、当該配置要素9の移動量を合成ベクトルx1 ′+
2 ′として求め、各親の染色体においてそれぞれ当該
配置要素9をその移動量だけ移動させることにより、集
団21から選択した染色体と集団23から選択した染色
体との間で交叉を実行して子の染色体を生成し、生成し
た子の染色体をそれぞれ元の集団に戻す。
【0167】即ち、第1アルゴリズム実行ステップで
は、遺伝的アルゴリズム(GAc)を実行する際に、第
1アイランド20に属する染色体に局所的疎密解消法
(LO)を適用する一方、第2アイランド22に属する
染色体に局所的疎密解消法(LO)を適用することによ
り、上記染色体の各領域内である特定の配置要素9を移
動させる。そして、第1アイランド20に属する染色体
及び第2アイランド22に属する染色体における当該特
定の配置要素9の移動量のベクトル和を求め、このベク
トル和に応じて上記各染色体内で当該特定の配置要素9
を移動させることにより、第1アイランド20に属する
染色体と第2アイランド22に属する染色体との間で、
遺伝オペレーションとしての交叉が実行される。
【0168】(2)交叉の第2の方法 集団21から選択した染色体は縦方向に分割された帯状
領域を有しているが、この帯状領域を横方向に分割され
た帯状領域に読み替えて集団23の染色体に組み込むこ
とにより、集団21から選択した染色体と集団23から
選択した染色体との間で交叉を実行して、子の染色体を
生成する。
【0169】例えば、集団21から選択した染色体にお
ける縦方向に分割されたある帯状領域に配置要素91
3 が含まれるとすると、まず、集団23から選択した
横方向に分割された染色体において、これら配置要素9
1 〜93 を含む帯状領域を探し出す。そして、横方向に
分割された染色体において、これら配置要素91 〜93
を含む帯状領域を探し出した結果、配置要素91 ,92
は横方向に分割された帯状領域のうちのある帯状領域に
含まれ、配置要素93 はその他の帯状領域に含まれてい
たとする。また、配置要素91 ,92 が含まれる帯状領
域には、その他の配置要素94 も含まれていたとする。
【0170】このとき、横方向に分割された染色体にお
いて、配置要素91 ,92 が含まれる帯状領域における
その他の配置要素94 を配置要素93 と読み替えるとと
もに、その他の帯状領域に含まれている配置要素93
配置要素94 と読み替えることにより、縦方向に分割さ
れた帯状領域を横方向に分割された帯状領域に読み替え
ることができる。
【0171】なお、同様にして、集団23から選択した
染色体における帯状領域を、縦方向に分割された帯状領
域に読み替えて、集団21の染色体に組み込むことによ
り、集団21から選択した染色体と集団23から選択し
た染色体との間で交叉を実行してもよい。即ち、第1ア
ルゴリズム実行ステップでは、遺伝的アルゴリズム(G
Ac)を実行する際に、第1アイランド20(又は第2
アイランド22)に属する染色体における特定の配置要
素9を含む帯状領域を抽出し、抽出した帯状領域を第2
アイランド22(又は第1アイランド20)に属する染
色体における帯状領域に読み替えて第2アイランド22
(又は第1アイランド20)に戻すことにより、第1ア
イランド20に属する染色体と第2アイランド22に属
する染色体との間で、遺伝オペレーションとしての交叉
が実行される。
【0172】このときの配置最適化問題処理装置1の動
作を、図27に示すフローチャートを用いて説明する。
まず、配置最適化問題処理装置1に、上記複数の配置要
素9の初期配置結果(初期配置状態に関する情報)が入
力される(ステップE1)。この配置要素9の初期配置
結果が入力されると、配置最適化問題処理装置1では、
上記第1アルゴリズム実行ステップにより、初期配置結
果のコピーを作ることにより遺伝的アルゴリズム(GA
c)の染色体の集団がN個準備される(ステップE
2)。
【0173】次に、第1アルゴリズム実行ステップで
は、N個の集団をα個の集団とβ個の集団にわけ(即
ち、α+β=N)、α個の集団の染色体は縦方向に分割
する一方、β個の集団の染色体は横方向に分割すること
により、縦方向に分割された染色体の集合21をα個有
する第1アイランド20と、横方向に分割された染色体
の集合23をβ個有する第2アイランド22とを形成す
る(ステップE3)。
【0174】そして、第1アルゴリズム実行ステップで
は、各集団21,23毎に、独立して遺伝的アルゴリズ
ム(GAc)を実行する(ステップE4)。この遺伝的
アルゴリズム(GAc)の実行中には、定められた世代
数が経過する毎に、同一方向に分割された染色体をもつ
集団間での交叉が実施される(ステップE5)。即ち、
第1アイランド20内では、ある集団21の染色体と他
の集団21の染色体との間で交叉が実行される一方、第
2アイランド22内では、ある集団23の染色体と他の
集団23の染色体との間で交叉が実行される。
【0175】さらに、定められた世代数が経過する毎
に、異なる方向に分割された染色体をもつ集団間での交
叉が実施される(ステップE6)。即ち、第1アイラン
ド20に属する集団21の染色体と、第2アイランド2
2に属する集団23の染色体との間で交叉が実行され
る。なお、この際、各染色体に局所的疎密解消法(L
O)も適用される。
【0176】そして、最高の適応度値をもつ染色体(最
適な染色体)の適応度値が所定の基準値以上であるか、
又は、配置結果の疎密が解消されたかどうかが判断され
る(ステップE7)。そして、最適な染色体の適応度値
が所定の基準値以上でない、又は、配置結果の疎密が解
消されていないと判断された場合には、上記ステップE
4以降の処理を繰り返し(ステップE7のNOルー
ト)、最適な染色体の適応度値が所定の基準値以上であ
る、又は、配置結果の疎密が解消されていると判断され
た場合には、その最適な染色体が配置最適化問題の解と
して出力されて、配置最適化問題処理装置1での処理が
終了する(ステップE7のYESルート)。
【0177】このように、異なる方向に分割された染色
体をもつ集団間での交叉を実施するアイランドモデルを
採用すれば、集団21,23における解候補となる染色
体の多様性を保持することができるので、最適解を効率
的に探索することができ、配置要素9の疎密の解消をよ
り効率的に行なうことができる。さらに、上述した第1
〜第4実施形態では、遺伝的アルゴリズム(GAc,G
Ap)を実行する中で局所的疎密解消法(LO)を実行
する際に、第2アルゴリズム実行ステップが、それぞれ
固定のアルゴリズム(流体力学のアナロジーが適用され
たアルゴリズム、及び、モーフィングのアナロジーが適
用されたアルゴリズム)を用いる場合について説明した
が、世代毎に用いるアルゴリズムを変更することがより
好ましい。なお、染色体毎に異なる局所的疎密解消法
(LO)を適用してもよい。
【0178】また、第2アルゴリズム実行ステップで
は、配置領域10を分割しない状態で局所的疎密解消法
(LO)を実施してもよい。さらに、第1アルゴリズム
実行ステップでは、染色体(配置領域10)を分割しな
い状態で、遺伝的アルゴリズム(GAc,GAp)の突
然変異を実行してもよい。
【0179】なお、以下に、本発明を応用できる配置最
適化問題の具体例を示す。 (1)LSIの設計の際のセル配置問題 セルは大きさをもつため、一般にはセルは重なってはな
らないという制約条件がある。ここで、この制約条件を
考慮して非線形計画法(例えば山登り法等)により最適
なセル配置を求めるのは、原理的には可能であるが、実
用的な規模のセル配置最適化問題を処理する場合には、
一般にはより効率良く最適なセル配置を求めるのは難し
い。
【0180】このため、この制約条件を考慮しないで非
線形計画法によりセル配置〔図28(a)参照〕を求
め、その後、本発明で説明したような方法によりセルの
疎密を解消すれば〔図28(b)参照〕、より効率的に
最適なセル配置を得ることができる。 (2)フロアプラン フロアプランとは、LSIの配置問題の一種であり、配
置するセルの面積は定まっているが、セルの各辺の長さ
が可変である問題のことをいう。
【0181】この問題を解く際にも、本発明で説明した
ような方法を用いて、疎密の解消を行なうことができる
〔図29(a),図29(b)参照〕。
【0182】
【発明の効果】以上詳述したように、本発明によれば、
接続関係が規定された複数の要素を所要の空間に配置す
るに際し、遺伝的アルゴリズムを実行する第1アルゴリ
ズム実行ステップと、局所的疎密解消アルゴリズムを実
行する第2アルゴリズム実行ステップとをそなえること
により、問題規模の大きい要素配置最適化問題を処理す
る場合にも、高速に要素の疎密の解消を行なうことがで
きる利点がある(請求項1〜17,20〜22,33〜
40)。
【0183】また、本発明の配置最適化問題処理方法に
よれば、第2アルゴリズム実行ステップが、複数の要素
間の近傍性を保存しながら要素を移動させたり、複数の
要素間の順序性を保存しながら要素を移動させたりでき
るので、処理できる配置最適化問題の範囲を拡大するこ
とができる(請求項18,19)。さらに、第2アルゴ
リズム実行ステップが、モーフィング中心部から移動対
象となる要素までの距離を線形的に拡大したり、モーフ
ィング中心部から移動対象となる要素までの距離を非線
形的に拡大したりできるので、これによっても処理でき
る配置最適化問題の範囲を拡大することができる(請求
項23,24)。
【0184】また、第2アルゴリズム実行ステップが、
疎密解消対象となる要素を逐次添加したり、固定配置要
素も疎密解消対象となる要素とみなしたり、大きな要素
の移動量を小さくしたり、移動対象となる要素を一挙に
移動させたり、移動対象となる要素を徐々に移動させた
りできるので、更に処理できる配置最適化問題の範囲を
拡大することができる(請求項25〜29)。
【0185】さらに、第1アルゴリズム実行ステップ
が、遺伝的アルゴリズムを実行する際に、縦方向に分割
された染色体の集団を有する第1アイランドと、横方向
に分割された染色体の集団を有する第2アイランドとを
用いることもできるので、集団における解候補となる染
色体の多様性を保持することができ、最適解を効率的に
探索して、要素の疎密の解消をより効率的に行なうこと
ができる(請求項30〜32)。
【図面の簡単な説明】
【図1】本発明の配置最適化問題処理方法を実行する配
置最適化問題処理装置の構成を示すブロック図である。
【図2】本発明の配置最適化問題処理方法を説明するた
めのフローチャートである。
【図3】(a),(b)は、それぞれ配置領域を分割し
て部分領域を形成する様子を示す図である。
【図4】(a),(b)は、それぞれ中間配置状態にあ
る配置要素の一例を示す図である。
【図5】(a),(b)は、それぞれ中間配置状態にあ
る配置要素の疎密を解消した結果を示す図である。
【図6】本発明の第1実施形態にかかる配置最適化問題
処理方法にて用いられる遺伝的アルゴリズム(GAc)
における交叉の一例を示す図である。
【図7】本発明の第1実施形態にかかる配置最適化問題
処理方法にて用いられる遺伝的アルゴリズム(GAc)
における突然変異の一例を示す図である。
【図8】一般的な遺伝的アルゴリズムについて説明する
ための図である。
【図9】一般的な遺伝的アルゴリズムについて説明する
ための図である。
【図10】一般的な遺伝的アルゴリズムについて説明す
るための図である。
【図11】一般的な遺伝的アルゴリズムについて説明す
るための図である。
【図12】(a)〜(d)は、それぞれ本発明の第1実
施形態にかかる配置最適化問題処理方法にて用いられる
局所的疎密解消法(LO)を実行する際の配置領域の分
割方法を示す図である。
【図13】(a)〜(c)は、それぞれ本発明の第1実
施形態にかかる配置最適化問題処理方法にて用いられる
流体力学のアナロジーが適用されたアルゴリズムを用い
た配置要素の移動方法の一例を示す図である。
【図14】(a),(b)は、それぞれ本発明の第1実
施形態にかかる配置最適化問題処理方法にて用いられる
流体力学のアナロジーが適用されたアルゴリズムを用い
た配置要素の移動方法の他の例を示す図である。
【図15】(a),(b)は、それぞれ本発明の第1実
施形態にかかる配置最適化問題処理方法にて用いられる
流体力学のアナロジーが適用されたアルゴリズムを用い
た配置要素の移動方法の他の例を示す図である。
【図16】(a)〜(e)は、それぞれ本発明の第1実
施形態にかかる配置最適化問題処理方法にて用いられる
流体力学のアナロジーが適用されたアルゴリズムを用い
た配置要素の移動方法の他の例を示す図である。
【図17】本発明の第1実施形態にかかる配置最適化問
題処理方法にて用いられる流体力学のアナロジーが適用
されたアルゴリズムを用いた配置要素の移動方法の他の
例を示す図である。
【図18】本発明の第1実施形態にかかる配置最適化問
題処理方法の他の例を説明するためのフローチャートで
ある。
【図19】(a),(b)は、それぞれ本発明の第1実
施形態の変形例にかかる配置最適化問題処理方法にて用
いられるモーフィングのアナロジーが適用されたアルゴ
リズムを用いた配置要素の移動方法の一例を示す図であ
る。
【図20】本発明の第2実施形態にかかる配置最適化問
題処理方法にて用いられる遺伝的アルゴリズム(GA
p)における染色体の一例を示す図である。
【図21】本発明の第2実施形態にかかる配置最適化問
題処理方法にて用いられる遺伝的アルゴリズム(GA
p)における交叉の一例を示す図である。
【図22】本発明の第2実施形態にかかる配置最適化問
題処理方法にて用いられる遺伝的アルゴリズム(GA
p)における突然変異の一例を示す図である。
【図23】本発明の第2実施形態にかかる配置最適化問
題処理方法の他の例を説明するためのフローチャートで
ある。
【図24】本発明の第3実施形態にかかる配置最適化問
題処理方法を説明するためのフローチャートである。
【図25】本発明の第4実施形態にかかる配置最適化問
題処理方法を説明するためのフローチャートである。
【図26】アイランドモデルを示す図である。
【図27】アイランドモデルを用いた配置最適化問題処
理方法を説明するためのフローチャートである。
【図28】(a),(b)は、それぞれ本発明をセル配
置問題に適用した例を示す図である。
【図29】(a),(b)は、それぞれ本発明をフロア
プランに適用した例を示す図である。
【符号の説明】
1 配置最適化問題処理装置 4 CPU 5 表示制御部 5A 表示部 6 外部ファイル読出書込部 6A 外部ファイル 7B 入力部 7D 入力制御部 8 ディスク装置 9,9a 配置要素(要素) 10 配置領域(空間) 10a 部分領域(部分空間) 11〜18,18′ 染色体 20 第1アイランド 21,23 集団 22 第2アイランド

Claims (40)

    【特許請求の範囲】
  1. 【請求項1】 接続関係が規定された複数の要素を所要
    の空間に配置するに際し、 上記複数の要素の初期配置状態に関する情報が入力され
    ると、遺伝的アルゴリズムを実行して、該初期配置状態
    にある上記複数の要素の疎密を解消する第1アルゴリズ
    ム実行ステップと、 該第1アルゴリズム実行ステップにて疎密が解消された
    後の上記複数の要素の中間配置状態に関する情報が入力
    されると、局所的疎密解消アルゴリズムを実行して、該
    中間配置状態にある上記複数の要素の疎密を更に解消す
    る第2アルゴリズム実行ステップとを実行することによ
    り、 上記複数の要素を該空間に最適な状態で配置する配置最
    適化問題を処理することを特徴とする、配置最適化問題
    処理方法。
  2. 【請求項2】 該第1アルゴリズム実行ステップが、上
    記複数の要素の配置状態を遺伝子として表現し、該空間
    に上記複数の要素を配置する問題の解候補として、当該
    遺伝子の配列からなり該空間として定義される染色体を
    用いることにより、該遺伝的アルゴリズムを実行するこ
    とを特徴とする、請求項1記載の配置最適化問題処理方
    法。
  3. 【請求項3】 該第1アルゴリズム実行ステップが、該
    遺伝的アルゴリズムを実行する際に、上記複数の要素を
    配置する該空間を複数の部分空間に分割することにより
    該染色体を複数の領域に分割し、該染色体における上記
    複数の領域の中から選択された少なくとも一つの領域
    を、他の染色体における当該領域に対応する領域と交換
    することにより、遺伝オペレーションとしての交叉を実
    行することを特徴とする、請求項2記載の配置最適化問
    題処理方法。
  4. 【請求項4】 該第1アルゴリズム実行ステップが、該
    遺伝的アルゴリズムを実行する際に、上記複数の要素を
    配置する該空間を複数の部分空間に分割することにより
    該染色体を複数の領域に分割し、該染色体における上記
    複数の領域の中の特定の領域の方が、他の染色体におけ
    る当該領域に対応する領域よりも疎密が解消されている
    場合には、該染色体における当該領域を該他の染色体に
    おける当該領域に対応する領域に張り付けることによ
    り、遺伝オペレーションとしての交叉を実行することを
    特徴とする、請求項2記載の配置最適化問題処理方法。
  5. 【請求項5】 該第1アルゴリズム実行ステップが、該
    遺伝的アルゴリズムを実行する際に、上記複数の要素を
    配置する該空間を複数の部分空間に分割することにより
    該染色体を複数の領域に分割し、上記複数の領域の中の
    少なくとも一つの領域内において上記複数の要素のうち
    の少なくとも一つの要素を移動させることにより、遺伝
    オペレーションとしての突然変異を実行することを特徴
    とする、請求項2記載の配置最適化問題処理方法。
  6. 【請求項6】 該第1アルゴリズム実行ステップが、該
    遺伝的アルゴリズムを実行する際に、上記複数の要素の
    疎密が小さい染色体が大きな適応度値をとりうるような
    適応度値関数を用いて、遺伝オペレーションとしての選
    択を実行することを特徴とする、請求項2記載の配置最
    適化問題処理方法。
  7. 【請求項7】 接続関係が規定された複数の要素を所要
    の空間に配置するに際し、 遺伝的アルゴリズムを実行する第1アルゴリズム実行ス
    テップと、 局所的疎密解消アルゴリズムを実行する第2アルゴリズ
    ム実行ステップとをそなえ、 該第1アルゴリズム実行ステップと該第2アルゴリズム
    実行ステップとを組み合わせて実行することを通じて、
    該局所的疎密解消アルゴリズムを実行する際に用いるパ
    ラメータの最適値を求めて、初期配置状態にある上記複
    数の要素の疎密を解消することにより、 上記複数の要素を該空間に最適な状態で配置する配置最
    適化問題を処理することを特徴とする、配置最適化問題
    処理方法。
  8. 【請求項8】 該第1アルゴリズム実行ステップが、該
    局所的疎密解消アルゴリズムを実行する際に用いる該パ
    ラメータを遺伝子として表現し、該パラメータを決定す
    る問題の解候補として当該遺伝子の配列からなる染色体
    を用いることにより、該遺伝的アルゴリズムを実行する
    ことを特徴とする、請求項7記載の配置最適化問題処理
    方法。
  9. 【請求項9】 該第2アルゴリズム実行ステップにおい
    て、上記複数の要素を配置する該空間が複数の部分空間
    に分割されるときに、該パラメータが、上記部分空間の
    大きさを規定する情報を含むことを特徴とする、請求項
    8記載の配置最適化問題処理方法。
  10. 【請求項10】 該第1アルゴリズム実行ステップが、
    該遺伝的アルゴリズムを実行する際に、二つの親の染色
    体の遺伝子の重み付き平均を子の染色体の遺伝子とする
    ことにより、遺伝オペレーションとしての交叉を実行す
    ることを特徴とする、請求項9記載の配置最適化問題処
    理方法。
  11. 【請求項11】 該第1アルゴリズム実行ステップが、
    該遺伝的アルゴリズムを実行する際に、該パラメータに
    含まれる上記部分空間の大きさを規定する情報の総和が
    変化しないように調整しながら、該染色体の一部の領域
    を他の染色体の当該領域に対応する領域に張り付けるこ
    とにより、遺伝オペレーションとしての交叉を実行する
    ことを特徴とする、請求項9記載の配置最適化問題処理
    方法。
  12. 【請求項12】 該第1アルゴリズム実行ステップが、
    該遺伝的アルゴリズムを実行する際に、該染色体の少な
    くとも二つの遺伝子を選択し、選択した上記遺伝子に任
    意の数値を加えることにより、該パラメータに含まれる
    上記部分空間の大きさを規定する情報の総和が変化しな
    いように調整して、遺伝オペレーションとしての突然変
    異を実行することを特徴とする、請求項9記載の配置最
    適化問題処理方法。
  13. 【請求項13】 該第1アルゴリズム実行ステップが、
    該遺伝的アルゴリズムを実行する際に、上記複数の要素
    の疎密を小さくできるような染色体が大きな適応度値を
    とりうるような適応度値関数を用いて、遺伝オペレーシ
    ョンとしての選択を実行することを特徴とする、請求項
    9記載の配置最適化問題処理方法。
  14. 【請求項14】 上記複数の要素を配置する空間を複数
    の部分空間に分割したときに、該第2アルゴリズム実行
    ステップが、上記部分空間毎に上記複数の要素の疎密を
    解消することを特徴とする、請求項1又は請求項7記載
    の配置最適化問題処理方法。
  15. 【請求項15】 該第2アルゴリズム実行ステップが、
    該局所的疎密解消アルゴリズムとして、流体力学のアナ
    ロジーが適用されたアルゴリズムを用いることを特徴と
    する、請求項1又は請求項7記載の配置最適化問題処理
    方法。
  16. 【請求項16】 該第2アルゴリズム実行ステップが、
    該中間配置状態にある上記複数の要素のうちの少なくと
    も一つの要素を、要素密度が高い場所から要素密度が低
    い場所へと移動させることにより、該流体力学のアナロ
    ジーが適用されたアルゴリズムを実行することを特徴と
    する、請求項15記載の配置最適化問題処理方法。
  17. 【請求項17】 上記複数の要素を配置する該空間を複
    数の部分空間に分割したときに、該第2アルゴリズム実
    行ステップが、上記分割した部分空間内において、当該
    部分空間内に含まれる上記複数の要素のうちの少なくと
    も一つの要素を、要素密度が高い場所から要素密度が低
    い場所へと移動させることを特徴とする、請求項16記
    載の配置最適化問題処理方法。
  18. 【請求項18】 該第2アルゴリズム実行ステップが、
    上記複数の要素間の近傍性を保存しながら、上記複数の
    要素のうちの少なくとも一つの要素を移動させることを
    特徴とする、請求項16記載の配置最適化問題処理方
    法。
  19. 【請求項19】 該第2アルゴリズム実行ステップが、
    上記複数の要素間の順序性を保存しながら、上記複数の
    要素のうちの少なくとも一つの要素を移動させることを
    特徴とする、請求項16記載の配置最適化問題処理方
    法。
  20. 【請求項20】 該第2アルゴリズム実行ステップが、
    該局所的疎密解消アルゴリズムとして、モーフィングの
    アナロジーが適用されたアルゴリズムを用いることを特
    徴とする、請求項1又は請求項7記載の配置最適化問題
    処理方法。
  21. 【請求項21】 該第2アルゴリズム実行ステップが、
    該中間配置状態にある上記複数の要素に関する情報に基
    づいてモーフィング中心部を決定し、上記複数の要素の
    うちの少なくとも一つの要素を該モーフィング中心部か
    ら離隔した場所へと移動させることにより、該モーフィ
    ングのアナロジーが適用されたアルゴリズムを実行する
    ことを特徴とする、請求項20記載の配置最適化問題処
    理方法。
  22. 【請求項22】 上記複数の要素を配置する該空間を複
    数の部分空間に分割したときに、該第2アルゴリズム実
    行ステップが、上記部分空間毎に該モーフィング中心部
    を決定し、上記部分空間内において、当該部分空間内に
    含まれる上記複数の要素の少なくとも一つの要素を該モ
    ーフィング中心部から離隔した場所へと移動させること
    を特徴とする、請求項21記載の配置最適化問題処理方
    法。
  23. 【請求項23】 該第2アルゴリズム実行ステップが、
    上記複数の要素の少なくとも一つの要素を該モーフィン
    グ中心部から離隔した場所へと移動させる際に、該モー
    フィング中心部から移動対象となる要素までの距離を線
    形的に拡大することを特徴とする、請求項21記載の配
    置最適化問題処理方法。
  24. 【請求項24】 該第2アルゴリズム実行ステップが、
    上記複数の要素の少なくとも一つの要素を該モーフィン
    グ中心部から離隔した場所へと移動させる際に、該モー
    フィング中心部から移動対象となる要素までの距離を非
    線形的に拡大することを特徴とする、請求項21記載の
    配置最適化問題処理方法。
  25. 【請求項25】 該第2アルゴリズム実行ステップが、
    該中間配置状態にある上記複数の要素の疎密を解消する
    際に、疎密解消対象となる要素を逐次添加していくこと
    を特徴とする、請求項1又は請求項7記載の配置最適化
    問題処理方法。
  26. 【請求項26】 上記複数の要素の中に移動させること
    ができない固定要素がある場合には、該第2アルゴリズ
    ム実行ステップが、該固定要素も疎密解消対象となる要
    素とみなして、該中間配置状態にある上記複数の要素の
    疎密を解消することを特徴とする、請求項1又は請求項
    7記載の配置最適化問題処理方法。
  27. 【請求項27】 上記複数の要素の中に他の要素に比べ
    て該空間を占める割合が大きな要素がある場合には、該
    第2アルゴリズム実行ステップが、該大きな要素の移動
    量を小さくして、該中間配置状態にある上記複数の要素
    の疎密を解消することを特徴とする、請求項1又は請求
    項7記載の配置最適化問題処理方法。
  28. 【請求項28】 該第2アルゴリズム実行ステップが、
    該中間配置状態にある上記複数の要素の疎密を解消する
    際に、移動対象となる要素を一挙に移動させることを特
    徴とする、請求項1又は請求項7記載の配置最適化問題
    処理方法。
  29. 【請求項29】 該第2アルゴリズム実行ステップが、
    該中間配置状態にある上記複数の要素の疎密を解消する
    際に、移動対象となる要素を徐々に移動させることを特
    徴とする、請求項1又は請求項7記載の配置最適化問題
    処理方法。
  30. 【請求項30】 該第1アルゴリズム実行ステップが、
    該遺伝的アルゴリズムを実行する際に、上記複数の要素
    を配置する該空間を複数の部分空間に縦方向に分割する
    ことにより複数の領域に縦方向に分割された該染色体の
    集団を少なくとも一つ有する第1アイランドと、上記複
    数の要素を配置する該空間を複数の部分空間に横方向に
    分割することにより複数の領域に横方向に分割された該
    染色体の集団を少なくとも一つ有する第2アイランドと
    を用いることを特徴とする、請求項2記載の配置最適化
    問題処理方法。
  31. 【請求項31】 該第1アルゴリズム実行ステップが、
    該遺伝的アルゴリズムを実行する際に、該第1アイラン
    ドに属する該染色体及び該第2アイランドに属する該染
    色体にそれぞれ局所的疎密解消アルゴリズムを適用する
    ことにより上記各領域内である特定の要素を移動させ、
    該第1アイランドに属する該染色体及び該第2アイラン
    ドに属する該染色体における当該特定の要素の移動量の
    ベクトル和に応じて上記各染色体内で当該特定の要素を
    移動させることにより、該第1アイランドに属する該染
    色体と該第2アイランドに属する該染色体との間で、遺
    伝オペレーションとしての交叉を実行することを特徴と
    する、請求項30記載の配置最適化問題処理方法。
  32. 【請求項32】 該第1アルゴリズム実行ステップが、
    該遺伝的アルゴリズムを実行する際に、該第1アイラン
    ド又は該第2アイランドに属する該染色体における特定
    の要素を含む領域を抽出し、抽出した該領域を該第2ア
    イランド又は該第1アイランドに属する該染色体におけ
    る該領域に読み替えて該第2アイランド又は該第1アイ
    ランドに戻すことにより、該第1アイランドに属する該
    染色体と該第2アイランドに属する該染色体との間で、
    遺伝オペレーションとしての交叉を実行することを特徴
    とする、請求項30記載の配置最適化問題処理方法。
  33. 【請求項33】 接続関係が規定された複数の要素を所
    要の空間に配置するに際し、 遺伝的アルゴリズムを実行する第1アルゴリズム実行ス
    テップと、 局所的疎密解消アルゴリズムを実行する第2アルゴリズ
    ム実行ステップとをそなえることにより、 初期配置状態にある上記複数の要素の疎密を解消して、
    上記複数の要素を該空間に最適な状態で配置する配置最
    適化問題を処理することを特徴とする、配置最適化問題
    処理方法。
  34. 【請求項34】 該第1アルゴリズム実行ステップが、
    上記複数の要素の配置状態を遺伝子として表現し、該空
    間に上記複数の要素を配置する問題の解候補として、当
    該遺伝子の配列からなり該空間として定義される染色体
    を用いることにより、該遺伝的アルゴリズムを実行して
    いる中で、該第2アルゴリズム実行ステップが、該局所
    的疎密解消アルゴリズムを実行することを特徴とする、
    請求項33記載の配置最適化問題処理方法。
  35. 【請求項35】 該第1アルゴリズム実行ステップが、
    該局所的疎密解消アルゴリズムを実行する際に用いるパ
    ラメータを遺伝子として表現し、該パラメータを決定す
    る問題の解候補として当該遺伝子の配列からなる染色体
    を用いることにより、該遺伝的アルゴリズムを実行して
    いる中で、該第2アルゴリズム実行ステップが、該局所
    的疎密解消アルゴリズムを実行することを特徴とする、
    請求項33記載の配置最適化問題処理方法。
  36. 【請求項36】 該第1アルゴリズム実行ステップが、
    該局所的疎密解消アルゴリズムを実行する際に用いるパ
    ラメータを遺伝子として表現し、該パラメータを決定す
    る問題の解候補として当該遺伝子の配列からなる染色体
    を用いることにより、該遺伝的アルゴリズムを実行して
    いる中で、更に、該第1アルゴリズム実行ステップが、
    上記複数の要素の配置状態を遺伝子として表現し、該空
    間に上記複数の要素を配置する問題の解候補として、当
    該遺伝子の配列からなり該空間として定義される染色体
    を用いた遺伝的アルゴリズムを実行するとともに、該第
    2アルゴリズム実行ステップが、該局所的疎密解消アル
    ゴリズムを実行することを特徴とする、請求項33記載
    の配置最適化問題処理方法。
  37. 【請求項37】 該第1アルゴリズム実行ステップが、
    上記複数の要素の配置状態を遺伝子として表現し、該空
    間に上記複数の要素を配置する問題の解候補として、当
    該遺伝子の配列からなり該空間として定義される染色体
    を用いることにより、該遺伝的アルゴリズムを実行して
    いる中で、更に、該第1アルゴリズム実行ステップが、
    該局所的疎密解消アルゴリズムを実行する際に用いるパ
    ラメータを遺伝子として表現し、該パラメータを決定す
    る問題の解候補として当該遺伝子の配列からなる染色体
    を用いた遺伝的アルゴリズムを実行するとともに、該第
    2アルゴリズム実行ステップが、該局所的疎密解消アル
    ゴリズムを実行することを特徴とする、請求項33記載
    の配置最適化問題処理方法。
  38. 【請求項38】 接続関係が規定された複数の要素を所
    要の空間に最適な状態で配置する配置最適化問題をコン
    ピュータにより処理するための配置最適化問題処理プロ
    グラムを記録したコンピュータ読み取り可能な記録媒体
    であって、 該配置最適化問題処理プログラムが、 上記複数の要素の初期配置状態に関する情報が入力され
    ると、遺伝的アルゴリズムを実行して、該初期配置状態
    にある上記複数の要素の疎密を解消する第1アルゴリズ
    ム実行手段、及び、 該第1アルゴリズム実行手段にて疎密が解消された後の
    上記複数の要素の中間配置状態に関する情報が入力され
    ると、局所的疎密解消アルゴリズムを実行して、該中間
    配置状態にある上記複数の要素の疎密を更に解消する第
    2アルゴリズム実行手段として該コンピュータを機能さ
    せることを特徴とする、配置最適化問題処理プログラム
    を記録したコンピュータ読み取り可能な記録媒体。
  39. 【請求項39】 接続関係が規定された複数の要素を所
    要の空間に最適な状態で配置する配置最適化問題をコン
    ピュータにより処理するための配置最適化問題処理プロ
    グラムを記録したコンピュータ読み取り可能な記録媒体
    であって、 該配置最適化問題処理プログラムが、 遺伝的アルゴリズムを実行する第1アルゴリズム実行手
    段、及び、局所的疎密解消アルゴリズムを実行する第2
    アルゴリズム実行手段として該コンピュータを機能させ
    るとともに、 該第1アルゴリズム実行手段と該第2アルゴリズム実行
    手段とを組み合わせて実行して該局所的疎密解消アルゴ
    リズムを実行する際に用いるパラメータの最適値を求め
    た後に、当該パラメータの最適値を用いて該第2アルゴ
    リズム実行手段を実行して初期配置状態にある上記複数
    の要素の疎密を解消するように該コンピュータを機能さ
    せることを特徴とする、配置最適化問題処理プログラム
    を記録したコンピュータ読み取り可能な記録媒体。
  40. 【請求項40】 接続関係が規定された複数の要素を所
    要の空間に最適な状態で配置する配置最適化問題をコン
    ピュータにより処理するための配置最適化問題処理プロ
    グラムを記録したコンピュータ読み取り可能な記録媒体
    であって、 該配置最適化問題処理プログラムが、 遺伝的アルゴリズムを実行する第1アルゴリズム実行手
    段、及び、 局所的疎密解消アルゴリズムを実行する第2アルゴリズ
    ム実行手段として該コンピュータを機能させることを特
    徴とする、配置最適化問題処理プログラムを記録したコ
    ンピュータ読み取り可能な記録媒体。
JP25833498A 1998-09-11 1998-09-11 回路配置最適化問題処理方法及び回路配置最適化問題処理プログラムを記録したコンピュータ読み取り可能な記録媒体 Expired - Fee Related JP4031874B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP25833498A JP4031874B2 (ja) 1998-09-11 1998-09-11 回路配置最適化問題処理方法及び回路配置最適化問題処理プログラムを記録したコンピュータ読み取り可能な記録媒体
US09/358,925 US6412100B1 (en) 1998-09-11 1999-07-23 Method for solving a layout optimization problem, and computer-readable recording medium having a layout optimization problem processing program recorded thereon

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP25833498A JP4031874B2 (ja) 1998-09-11 1998-09-11 回路配置最適化問題処理方法及び回路配置最適化問題処理プログラムを記録したコンピュータ読み取り可能な記録媒体

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2006268964A Division JP4032070B2 (ja) 2006-09-29 2006-09-29 回路配置最適化問題処理方法及び回路配置最適化問題処理プログラムを記録したコンピュータ読み取り可能な記録媒体

Publications (2)

Publication Number Publication Date
JP2000090065A true JP2000090065A (ja) 2000-03-31
JP4031874B2 JP4031874B2 (ja) 2008-01-09

Family

ID=17318809

Family Applications (1)

Application Number Title Priority Date Filing Date
JP25833498A Expired - Fee Related JP4031874B2 (ja) 1998-09-11 1998-09-11 回路配置最適化問題処理方法及び回路配置最適化問題処理プログラムを記録したコンピュータ読み取り可能な記録媒体

Country Status (2)

Country Link
US (1) US6412100B1 (ja)
JP (1) JP4031874B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002279337A (ja) * 2001-03-14 2002-09-27 Fujitsu Ltd 密度一様化配置問題の最適解探索方法および密度一様化配置問題の最適解探索プログラム
WO2003083729A1 (en) * 2002-04-02 2003-10-09 Institute Of High Performance Computing System and method for integrated circuit design
JP2005056421A (ja) * 2003-08-05 2005-03-03 Mitsubishi Electric Research Laboratories Inc 複数の要素および複数の値を含む組合せ最適化問題を解く方法

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001307977A (ja) * 2000-02-18 2001-11-02 Nikon Corp 荷電粒子線露光装置の設計方法、荷電粒子線露光装置、及び半導体デバイスの製造方法
US8356000B1 (en) * 2000-04-13 2013-01-15 John R. Koza Method and apparatus for designing structures
US6711725B1 (en) * 2001-02-15 2004-03-23 Neolinear, Inc. Method of creating conformal outlines for use in transistor level semiconductor layouts
US20030095151A1 (en) * 2001-11-20 2003-05-22 Shackleford J. Barry Real-time interactive adjustment of control parameters for a genetic algorithm computer
US7117456B2 (en) * 2003-12-03 2006-10-03 International Business Machines Corporation Circuit area minimization using scaling
US7155694B2 (en) * 2004-07-23 2006-12-26 Cadence Design Systems, Inc. Trial placement system with cloning
US7376927B2 (en) * 2005-06-13 2008-05-20 Advanced Micro Devices, Inc. Manhattan routing with minimized distance to destination points
US8031704B2 (en) 2007-10-22 2011-10-04 Infinera Corporation Network planning and optimization of equipment deployment
US8510699B1 (en) 2012-03-09 2013-08-13 International Business Machines Corporation Performance driven layout optimization using morphing of a basis set of representative layouts
EP3268782B1 (en) * 2015-07-08 2023-03-22 Hewlett Packard Enterprise Development LP Photonic circuit design systems

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5682322A (en) * 1994-04-19 1997-10-28 Lsi Logic Corporation Optimization processing for integrated circuit physical design automation system using chaotic fitness improvement method
US5557533A (en) * 1994-04-19 1996-09-17 Lsi Logic Corporation Cell placement alteration apparatus for integrated circuit chip physical design automation system
US5914887A (en) * 1994-04-19 1999-06-22 Lsi Logic Corporation Congestion based cost factor computing apparatus for integrated circuit physical design automation system
JP3905959B2 (ja) 1997-10-24 2007-04-18 富士通株式会社 配置最適化問題処理方法及び配置最適化問題処理装置並びに配置最適化問題処理プログラムを記録したコンピュータ読み取り可能な記録媒体

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002279337A (ja) * 2001-03-14 2002-09-27 Fujitsu Ltd 密度一様化配置問題の最適解探索方法および密度一様化配置問題の最適解探索プログラム
US6748574B2 (en) 2001-03-14 2004-06-08 Fujitsu Limited Method of and apparatus for determining an optimal solution to a uniform-density layout problem, and medium on which a program for determining the solution is stored
JP4723740B2 (ja) * 2001-03-14 2011-07-13 富士通株式会社 密度一様化配置問題の最適解探索方法および密度一様化配置問題の最適解探索プログラム
WO2003083729A1 (en) * 2002-04-02 2003-10-09 Institute Of High Performance Computing System and method for integrated circuit design
JP2005056421A (ja) * 2003-08-05 2005-03-03 Mitsubishi Electric Research Laboratories Inc 複数の要素および複数の値を含む組合せ最適化問題を解く方法

Also Published As

Publication number Publication date
US6412100B1 (en) 2002-06-25
JP4031874B2 (ja) 2008-01-09

Similar Documents

Publication Publication Date Title
JP4723740B2 (ja) 密度一様化配置問題の最適解探索方法および密度一様化配置問題の最適解探索プログラム
Carrillo et al. A consensus-based global optimization method for high dimensional machine learning problems
Sandgren et al. Robust design optimization of structures through consideration of variation
Liu et al. An evolutionary autonomous agents approach to image feature extraction
Iyer et al. Improved genetic algorithm for the permutation flowshop scheduling problem
JP4031874B2 (ja) 回路配置最適化問題処理方法及び回路配置最適化問題処理プログラムを記録したコンピュータ読み取り可能な記録媒体
Yildiz A new hybrid artificial bee colony algorithm for robust optimal design and manufacturing
Tavakkoli-Moghaddam et al. A new hybrid multi-objective Pareto archive PSO algorithm for a bi-objective job shop scheduling problem
Lee et al. A shape-based block layout approach to facility layout problems using hybrid genetic algorithm
Ahmadi et al. A hybrid method of 2-TSP and novel learning-based GA for job sequencing and tool switching problem
Hertlein et al. Generative adversarial network for early-stage design flexibility in topology optimization for additive manufacturing
US20050093875A1 (en) Synthesis of progressively-variant textures and application to arbitrary surfaces
Cappello et al. A genetic algorithm for combined topology and shape optimisations
WO2020240809A1 (ja) 学習装置、分類装置、学習方法、分類方法、学習プログラム、及び分類プログラム
Gravel et al. Efficient solutions to the cell-formation problem with multiple routings via a double-loop genetic algorithm
JP3905959B2 (ja) 配置最適化問題処理方法及び配置最適化問題処理装置並びに配置最適化問題処理プログラムを記録したコンピュータ読み取り可能な記録媒体
Nearchou A novel metaheuristic approach for the flow shop scheduling problem
Zamparelli Genetically trained cellular neural networks
Burkhart et al. Adaptive and feature‐preserving subdivision for high‐quality tetrahedral meshes
WO2021059338A1 (ja) 求解システム、求解方法および求解プログラム
Oh et al. Part decomposition and 2D batch placement in single-machine additive manufacturing systems
Hicks A genetic algorithm tool for designing manufacturing facilities in the capital goods industry
Hicks A Genetic Algorithm tool for optimising cellular or functional layouts in the capital goods industry
Erozan et al. A multi-objective genetic algorithm for a special type of 2D orthogonal packing problems
Garai et al. A distributed hierarchical genetic algorithm for efficient optimization and pattern matching

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040723

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040726

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060801

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060929

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