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
実装する並列計算機に応じた計算モデルの設計
台数効果による高速化とアルゴリズム的高速化