Transcript PPT FILE
日本機械学会2000年度年次大会先端技術フォーラム 進化的計算手法とその応用の新展開 進化的計算手法の並列計算機への実装 Implementation of Evolutionary Computation to Parallel Computers 同志社大学 工学部 三木 光範 進化的計算手法 生物の進化のプロセスを工学的なシステムの 最適化に利用 特徴 ・解の確率的摂動 ・適合度による選択 代表的な進化的計算手法 •進化戦略 Evolutional Strategy •遺伝的アルゴリズム Genetic Algorithms •遺伝的プログラミング Genetic Programming •シミュレーテッドアニーリング Simulated Annealing 複雑な実問題にも適用可能 良好な解が得られる 進化的計算手法の問題点 一般に,進化的計算手法では膨大な反復計算が必要 計算負荷が大きい 並列化 並列処理の利点 計算時間の短縮 計算モデルの変化に伴う解精度の向上 計算機の高速化 CPUの開発競争 クロック周波数は 1GHz以上に 汎用PCの性能の 飛躍的向上 MHz PC Cluster 複数の汎用PCをネットワークで接続(クラスタ化) 並列ライブラリを用いた並列処理 ネットワーク Ethernet (100BASE-T, Myrinetなど) 並列ライブラリ MPI・PVM コストパフォーマンスの高い並列計算環境 PC Clusterのコストパフォーマンス PC Cluster 400 MFLOPS(8node) ¥ 1,000,000 ~ ¥ 1,600,000 Fujitsu VPP5000 4137.30 MFLOPS ¥ 4,400,000 (月額レンタル料) 並列計算機のネットワーク 専用並列計算機 高速なネットワーク・独自のトポロジ 計算モデルを最適化させればさらに高速に PC Cluster 低速なネットワーク・通信のオーバヘッド大 通信量の少ない計算モデルが適する 計算機の通信性能やネットワークトポロジ に適した計算モデルの設計が重要 GAの並列化 生物の進化の過程を工学的に応用した最適化手法 個体の評価の計算負荷が高い アルゴリズム自体に並列性が高い 並列モデル 粒度によって分類が可能 細粒度:マスタ-・スレーブモデル,セルラーモデル 粗粒度:島モデル 分散GA(島モデル) 母集団を複数のサブ母集団に分割 各サブ母集団が独自の 領域を探索 サブ母集団を各プロセッサ に割り当て 一定世代ごとに移住 通信の頻度は低い 特徴 良好な解を速く求めることができる マスタースレーブモデル(細粒度) 評価計算のみを並列化 評価 :スレーブで処理 評価以外 :マスターで処理 master slave Shared memory PE 特徴 PE 計算量は逐次モデルと等しい PE 評価 1CPUがマスターとして必要 通信の頻度が高い PE PE セルラーモデル(細粒度) 遺伝的操作を局所的に実行 各個体は空間上のある位置 に配置 近傍の個体との間のみで 交叉・選択を行う 特徴 局所的なルールだけで動作 を記述可能 同種のトポロジを持つ 超並列アーキテクチャに向く GAの並列化のメリット 台数効果による高速化 並列計算機の計算パワーを利用 アルゴリズム的高速化 早熟収束問題の回避 並列分散モデルによる多様性の維持 島モデル・セルラーモデル 台数効果による高速化 分散GA(島モデル)における計算速度 アルゴリズム的高速化(分散の効果) 文献4)三木・廣安・金子 1 .0 1 .0 1 .0 x0 x1 0 .5 0 .5 x3 0 50 50 SP_0 0 .5 x2 0 .0 0 .0 0 分散GA 移住なし 0 .0 1 0100 0 0 50 100 50 100 Generations 1 .0 SP_1 0 .5 0 .0 対象問題 0 1 .0 Rastrigin関数(4変数) SP_2 0 .5 0 .0 0 50 100 1 .0 Convergence ratio Convergence ratio 単一母集団GA 1 .0 SP_3 0 .5 0 .5 0 .0 0 50 10 0 .0 0 50 Generations 100 x0 x1 x2 x3 アルゴリズム的高速化(移住の効果) 文献4)三木・廣安・金子 分散GA 移住なし 分散GA 移住あり SP_0 1 .0 0 .5 0 .5 0 .0 0 .0 0 50 100 0 SP_1 1 .0 50 100 50 100 50 1 .0 100 SP_1 1 .0 0 .5 0 .5 0 .0 0 .0 0 50 100 0 SP_2 1 .0 0 .5 0 .0 0 .0 50 100 0 .5 0 .0 0 0 Convergence ratio SP_3 1 .0 SP_2 1 .0 0 .5 0 Convergence ratio SP_0 1 .0 50 Generations 100 SP_3 1 .0 0 .5 0 .5 0 .0 0 50 10 0 .0 0 50 Generations 100 x0 x1 x2 x3 アルゴリズム的高速化(適合度の推移) SGA - 400個体 早熟収束によって最適解は 得られない PDGA - 50個体 8サブ母集団 ・各サブ母集団では局所探索 ・移住によって多様性を保つ 対象問題 :10変数Rastrigin関数 パラメータ: 交叉率 0.6,突然変異率 0.01, 移住率 0.3,移住間隔 5 シミュレーテッドアニーリング(SA) 金属の焼きなましを模擬した最適化法 温度パラメータによって解の摂動を制御 エネルギーと呼ばれる目的関数が増加する方向へ の解の推移を,確率的に許す.(改悪の受理) 高温時 Opt 低温時 SAの並列化 SAはマルコフ連鎖をたどる 逐次性が強く並列化は困難 並列モデル ・逐次SAを並列実行,解を交換 同期 独立型並列SA 定期同期型並列SA 受理時同期型並列SA ・温度の異なるSAを並列実行,解を交換 温度並列SA SA SA SA SA 温度並列SA(TPSA) アルゴリズム 解交換 最高温 解交換 高温 解交換 低温 確率的に良質な解が低温PEに移動 特徴 ・通信量は少ない ・温度スケジュールの自動化 最低温 温度並列SAの利点 逐次SA 温度スケジュールは 単調な減少 Initial Solution 最適なスケジュール の決定は困難 T1 T2 T3 T4 T5 0 Time 温度並列SA 解自身が自動的に温度 スケジュールを決定 Initial Solution PE1 PE2 PE3 PE4 PE5 PE6 T1 T2 T3 T4 T5 T6 Time 温度並列SAの性能 1 .0 0 E - 0 1 T e m pe ratu re (T P S A ) T e m pe ratu re (S A ) T o tal V o lu m e (T P S A ) T o tal V o lu m e (S A ) Temperature 1 .0 0 E + 0 5 1 .0 0 E + 0 4 1 .0 0 E - 0 2 1 .0 0 E + 0 3 6.94E-04 1 .0 0 E + 0 2 1 .0 0 E - 0 3 1 .0 0 E + 0 1 6.08E-04 1 .0 0 E + 0 0 1 .0 0 E - 0 4 0 1000 2000 3000 4000 A n n e alin g S te ps 5000 6000 トラス構造物の最適化における 温度とトラスの総体積の履歴 Total Volume [m^3] 1 .0 0 E + 0 6 まとめ 進化的計算手法は様々な実問題に有効 進化的計算手法は計算負荷が高く並列化は重要 安価な並列計算環境 PC Cluster 実装する並列計算機に応じた計算モデルの設計 台数効果による高速化とアルゴリズム的高速化