PC クラスタシステムにおける 並列分散遺伝的アルゴリズム
description
Transcript of PC クラスタシステムにおける 並列分散遺伝的アルゴリズム
PCクラスタシステムにおける
並列分散遺伝的アルゴリズム
廣安 知之 (同志社大学)
三木 光範 (同志社大学)
売上高
1.三井物産2.三菱商事3.トヨタ自動車4.伊藤忠商事5.住友商事6.日本電信電話7.丸紅8.日立製作所9.松下電器産業10.日商岩井
経常利益
1.日本電信電話2.トヨタ自動車3.エヌ・ティ・ティ・ドコモ4.東京電力5.武田製薬工業6.ブリジストン7.関西電力8.三共9.セブン・イレブン・ジャパン10. JT
週間ダイヤモンド 2000年10 /7号
売上高経常利益率
1.立飛企業2.小野製薬工業3.キーエンス4.セブン・イレブン・ジャパン5. SANKYO6.ユーエスエス7.大和工業8.ローム9.ヒロセ電機10.大正製薬
週間ダイヤモンド 2000年10 /7号
•不動産賃貸業(必要経費がかからない)•財務的マネジメントがうまい•競争力のある商品を扱っている
文科省の重点プロジェクト
生命科学 航空宇宙 環境 物質材料 地震防災
DEEP BLUE
BLUE GENE (1PetaFLOPs)
チェスの世界チャンピオン,カスパロフを破った他の分野でもこれに比肩する偉業が達成される可能性
“ タンパク質の構造解析”にチャレンジ!!
コンピュータの設計およびアーキテクチャに対して従来とはまったく異なるタンパク質に適したアプローチをとる
IBMのチャレンジ
最適化の未来
ますます必要になる
従来とは違う分野の開拓が必要
計算機資源の拡大に伴い、対決をせまられている
PCクラスタシステムにおける
並列分散遺伝的アルゴリズム
廣安 知之 (同志社大学)
三木 光範 (同志社大学)
最適器最適器 解析器解析器設計変数
目的関数 制約条件
最適化の流れ
PCクラスタ
分散メモリ型並列計算機スーパーコンピュータ並みのシステムの構築も可能コストを抑えてシステムの構築が可能ネットワークがボトルネックとなる
アルゴリズムの並列化
逐次モデルの並列化Do loopなど
並列モデルの構築
•プログラムの構築は簡単•並列化効率を上げるのが困難•プログラムの構築がやや複雑•並列化効率は高い•場合によっては逐次モデルよりも解探索能力が高い
Evolutionary Computation (EC) の並列化
EC 生物の進化の仕組みなどを模擬した計算手法
複数個体による探索(多点探索)さまざまなオペレーション
潜在的な並列アルゴリズム
遺伝的アルゴリズム (GA)の並列モデル
マスタ スレーブモデル・セルラモデル島モデル
マスタ スレーブモデル・ 特徴
MasterSlave
process 1
process 2
process n
Evaluation
Crossover
Mutation
Selection
Criteria
逐次モデルと同一プログラムの変更が簡単
近傍モデルの例Manderickらのモデル (1989)Muhlenbeinらのモデル : ASPARAGOS(1989)
近傍モデル 特徴
一個体ずつ プロセッサに割り当て 近傍とのみ遺伝的操作
-可動範囲,近傍
分散遺伝的アルゴリズム 特徴
サブ母集団 ( 島 )に分割 各島内で遺伝的操作 移住 (migration) -移住率,移住間隔
分散 GA(DGA)の例 Taneseのモデル (1989)
2 個体分散遺伝的アルゴリズム 2 個体分散遺伝的アルゴリズムとは
(Dual Individual DGA : DuDGA)
1. サブ母集団内の個体数が 2
2. 遺伝的オペレータの改良
交叉
突然変異
選択
移住
DuDGAにおける移住 送る側 : ランダムに移住個体を選択.コピーを送る 受ける側 : 適合度の低い方の個体と置き換え
複製 複製
複製
置き換え
置き換え 置き換え
DuDGAにおける交叉 2 つの親個体から 2 つの子個体を生成 ( 一点交叉 )
親個体 子個体
DuDGAにおける突然変異 各子個体を, 1 ビットずつ反転 反転する位置を 1 ビットずつずらす
00 00
00 00 11 11 0011 00
11 00 00 1111 00 00
00 00 00 11 0011 00
11 11 00 1111
子個体
同一の子個体の生成を抑制
DuDGAにおける選択 親個体と子個体から適合度の高い方を選択 移住個体は選択されない
親個体 子個体
次世代の個体
遺伝的操作のまとめ
突然変異
親個体
交叉
子個体
次世代の個体
選択
DuDGAの特徴 島数 個体数を決めると一意に決定
交叉 一通りのペア.交叉率 1
移住 移住率 0.5 (1 個体 )
パラメータ設定の困難さの一部を解消
テスト関数
10:4,3 5:2 20:1 nFFnFnF※
)6464( 4 :
)512512( cos4000
13 :
)048.20482( )1()(1002 :
)12.512.5( )2cos(10101 :
2
1 1
11
2
1
1
2221
1
2
i
n
i
i
jj
i
n
i
in
i
i
i
n
iii
i
n
iii
xxF
xi
xxF
x.xxxF
xxxnF
Ridge
Griewank
Rosenbrock
Rastrigin
島数と性能について DuDGAは, DGAにおいて,島数を最大としたもの
DGAにおいて,島数と解探索性能との関係を調べ,
DuDGAと比較
使用したパラメータDGA DuDGA
個体数 240
島数 4, 8, 12, 24 120
染色体長 (L) 設計変数の数 × 10
選択法 ルーレット選択 前述交叉率 1.0
交叉法 一点交叉突然変異率 1/L
移住間隔 5
移住率 0.3 0.5
試行 20
最適解発見の割合
※ Reliability : 5000世代後に解を発見した割合 (20 試行中 )
Rel
iabi
lity
Rastrigin Rosenbock0
0.5
1.0
Griewank Ridge
島数が多いほど信頼性が高い傾向 DuDGAが優れた性能
4 islands
8 islands
24 islands
12 islands
DuDGA
解発見までの関数評価回数
島数が多いほど評価回数が少ない傾向 DuDGAの収束が速い
Rastrigin Rosenbock Griewank Ridge
Num
ber
of E
valu
atio
ns
0
500000
1000000
4 islands
8 islands
24 islands
12 islands
DuDGA
比較対象の FGGA(1)
各個体を 2 次元の格子状に配置
隣接する個体同士 ( 縦,横,斜め ) で 遺伝的操作
Manderick(1989)のモデル
典型的な近傍モデル
比較対象の FGGA(2)
近傍を定義しない
通信が少ない
他のプロセスの 個体の情報を格納
Maruyama(1993)のモデル
FGGAの中でも,DGAに近いモデル
使用したパラメータManderick Maruyama DuDGA
個体数 400 8 400染色体長 (L) 設計変数の数 × 10
選択法 最良個体を選択
ルーレット選択 前述
交叉率 0.8 0.8 1.0交叉法 一点交叉
突然変異率 1/L 前述可動範囲 1 格納領域サイズ
3移住間隔 5
試行 10
テスト関数
※
)512512( sin5 :
)6464( 4 :
)512512( cos4000
13 :
)048.20482( )1()(1002 :
)12.512.5( )2cos(10101 :
1
2
2
1 1
11
2
1
1
2221
1
2
i
n
iii
i
n
i
i
jj
i
n
i
in
i
i
i
n
iii
i
n
iii
xxxF
xxF
xi
xxF
x.xxxF
xxxnF
Schwefel
Ridge
Griewank
Rosenbrock
Rastrigin
30n
FGGAとの比較結果
200000 4000000
Eva
luat
ion
Val
ue
Number of Evaluations
0
500
1000
1500
2000
200000 4000000
Eva
luat
ion
Val
ue
Number of Evaluations
0
20
40
60
80
100
探索の初期においては FGGAの収束が速い Rosenbrockでは,Manderickより良好な性能
Rosenbrock Ridge
DuDGAManderickMaruyama
DuDGAManderickMaruyama
FGGAとの比較結果
200000 40000000
10
20
30
40
50
Eva
luat
ion
Val
ue
Number of Evaluations4000002000000
Eva
luat
ion
Val
ue
Number of Evaluations
0
500
1000
1500
2000
2500
3000
探索の初期においては FGGAの収束が速い DuDGAが良好な性能
Rastrigin Schwefel
DuDGAManderickMaruyama
DuDGAManderickMaruyama
FGGAとの比較結果
200000 4000000
Eva
luat
ion
Val
ue
Number of Evaluations
0.0
0.2
0.4
0.6
0.8
1.0
探索の初期においては FGGAの収束が速い
探索の初期においては, FGGAの収束が早い
解発見能力の優劣は, 問題によって異なる
Griewank
DuDGAManderickMaruyama
DuDGAが良好な性能
テスト関数
パラメータCoding 10bit Gray codingCrossover one point crossover, rate=0.6Selection roulette, elite preservationMutation rate=1 / gene lengthMigration random ring topology, interval=5, rate=0.15Terminal elite not renewed among 100 generations condition
Rastrigin, n=10
n
ii xxnf
1
2 )2cos(1010
( -5.12 < x < 5.12 )
使用クラスタ
Spec. of Cluster (16 nodes)Processor Pentium (Deschutes)ⅡClock 400MHz# Processors 1 × 16Main memory 128Mbytes × 16Network Fast Ethernet (100Mbps)Communication TCP/IP, MPICH 1.1.2OS Linux 2.2.10Compiler gcc (egcs-2.91.61)
DGA of SPGAとの比較
-1.80
-1.40
-1.00
-0.60
-0.20
0.20
32 64 96 128 160 192 224 256
Total population size
Fit
ness
val
ue
1 island
4 island
8 island
16 island
- 5.00
-4.00
-3.00
-2.00
-1.00
0.00
0 100 200 300 400 500
Elapsed time [sec]
Fit
ness
val
ue経過時間と適合度値 (8PE)
DGA:8PE
Master-slave:8PE
SGA:1PE
-5.00
-4.00
-3.00
-2.00
-1.00
0.00
0 100 200 300 400 500
Elapsed time [sec]
Fit
ness
val
ue経過時間と適合度値 (16PE)
Master-slave:16PE
SGA:1PE
DGA:16PE
適合度計算時間とネットワークの関係
Iteration Time Analysis of truss structure (FEM)
4 10 μsec none 40 100 μsec 8 nodes 15 elements (3) 400 1 msec 66 nodes 160 elements (32) 4000 10 msec 622 nodes 1550 elements (310)
Truss
8 nodes15 elements(3 stages)
スピードアップ (DGA model)
0
5
10
15
20
25
0 4 8 12 16
Number of processors
Sp
eed
up
10 μsec
100 μsec
1 msec
10 msec
ideal
スピードアップ (Master slave model)
0
5
10
15
0 4 8 12 16Number of processor
Spee
dup
10 μsec
100 μsec
1 msec
10 msec
ideal
分散 GAの並列化
ISDL, Doshisha Univ.
分散 GAは 1プロセッサに 1 つの島を割り当て, 移住によって個体情報を交換する
補足資料
移住
交叉
突然変異
選択
評価
2 個体 DGAの並列化( 1/2)
ISDL, Doshisha Univ.
2 個体 DGAは 1プロセッサに複数の島を割り当て, 島交換によって他のプロセッサ上の個体と関係を持つ
補足資料
交叉
突然変異
選択
評価
移住島交換
2 個体 DGAの並列化( 2/2)
ISDL, Doshisha Univ.
並列化によって解探索能力の向上が見られ, 理想値以上の速度向上ができた
補足資料
5
10
15
20
25
1 5 10 15
The number of processors
Sp
eed
Up
Rate