研究概要 |
実用的な規模で厳密な最適解を得ることが困難である組合せ最適化問題として,排他的論理和(EXOR)を使用した回路の最小化問題を選び,開発が容易である局所的な単純なルールにより近傍探索を行なうアルゴリズムから,問題例を解くことにより,単純ルールを組み合わせた,専門的な知識によって作成されるであろうマクロルールを自動的に生成すること,そして,その並列化が目的である。 1. 排他的論理和(EXOR)回路の最小化のための単純なルールによる探索アルゴリズムについては,2つのアルゴリズムを実装した。一方は,積項の組合せを探索空間とするものであり,他方は,論理式をXORDD(XOR-based Decomposition Diagram)と呼ばれるグラフで表現し,単純な部分グラフの縮退ルールにより論理式を簡単化するものである。 2. 積項の組合せを探索空間とする手法について,問題例による実験を行う中で3種類のマクロルールを発見し,それを定式化し,新しい下限,上限を証明できた。これにより,従来は困難とされていた7変数論理関数の最小化が実用的な時間で計算できるアルゴリズムを開発し,研究会等で発表した。 3. 最小化アルゴリズムの並列化については,積項の組合せを探索空間とする手法は組合せ集合を分割することにより比較的簡単に並列化することができる。現在,MPI(Message Passing Interface)を利用した分枝限定法に基づくソフトウェアを開発中である。 グラフを用いるアルゴリズムの並列化については,グラフデータの大きさのため,メッセージパッシングより共有メモリモデルが望ましく,現在そのためのアーキテクチャを検討中である。 4. マクロルールの生成とその優先度計算の原理の定式化については,上記2.での経験をふまえて検討中であるが,当初の計画と異なり,不適切な単純ルールの組合せ(良い解が得られない探索)を生成すべきであるとの結論に達した。
|