Parallel Simulated Annealing with Adaptive

遺伝的アルゴリズムを用いた
適応的温度スケジュールを持つ並列シミュレーテッド
アニーリング
同志社大学大学院
工学研究科 知識工学専攻
○輪湖 純也, 三木 光範, 廣安 知之
MPS symposium 2004
Doshisha University, Kyoto, Japan
研究対象
最適化とは
• 与えられた条件の下で,
対象とする問題の中から最も良いものを探すこと.
LSI配置問題
最適化問題
■ 組合せ最適化問題
・巡回セールスマン問題
・スケジューリング問題
■ 連続最適化問題
・タンパク質の立体構造予測
巡回セールスマン問題
ヒューリスティック探索
• 遺伝的アルゴリズム(GA)
• シミュレーテッドアニーリング(SA)
MPS symposium 2004
タンパク質立体構造予測
Doshisha University, Kyoto, Japan
Simulated Annealing (SA)
• 組合せ最適化問題に有効な汎用近似解法
• 金属を緩慢に冷却する「焼き鈍し」を模倣
アルゴリズム
1. 初期状態の生成
2. 次状態の生成
3. エネルギー差と温度から受理判定
E  0
 1

P 
 ( Enext  Ecurrent )
exp
E  0

Tem perature

High temperature
Local
minimum
Low temperature
Global minimum
4. 状態推移
5. 温度パラメータを減少(クーリング)
• 温度スケジュール : SA試行中の温度T の推移
• SAの欠点
: 温度スケジュールを決定するのは容易でない
緩慢な冷却により多くの計算量が必要
MPS symposium 2004
Doshisha University, Kyoto, Japan
SAの温度パラメータと温度スケジュール
SAの温度パラメータ
Temperature
•最高温度(初期温度)
•最低温度(終了温度)
•クーリング周期
•クーリング回数
•クーリング率
Max Temperature
Min Temperature
Time
• 高い温度から指数的に緩慢に冷却する方法が最も一般的
多くの予備実験からのパラメータチューニングが必要
• 特定の温度のみの解探索で良好な結果が得られる [Mark 2000]
この特定温度(重要温度)を特定することは容易でない
MPS symposium 2004
Doshisha University, Kyoto, Japan
SAの温度パラメータと温度スケジュール
SAの温度パラメータ
Temperature
•最高温度(初期温度)
•最低温度(終了温度)
•クーリング周期
•クーリング回数
•クーリング率
Max Temperature
Min Temperature
Time
• 高い温度から指数的に緩慢に冷却する方法が最も一般的
多くの予備実験からのパラメータチューニングが必要
• 特定の温度のみの解探索で良好な結果が得られる [Mark 2000]
この特定温度(重要温度)を決定することは容易でない
MPS symposium 2004
Doshisha University, Kyoto, Japan
重要温度領域(巡回セールスマン問題)
- eil101 TSP
Optimum
eil101
629
1.1 ~ 2.5
kroA200
29368
27 ~ 53
lin318
42029
20 ~ 39
pr439
107217
44 ~ 72
rat575
6773
1.7 ~ 3.9
48912
14 ~ 27
d657
Topt region
• 巡回セールスマン問題には,重要温度領域が存在する.
ただし,この値や範囲は問題毎に異なる.
MPS symposium 2004
Doshisha University, Kyoto, Japan
研究目的
• 温度スケジュールの自動化を可能にする新たなSAの開発
• 問題毎に異なる重要温度を適応的に特定
遺伝的アルゴリズム(GA)により,重要温度を特定する.
並列化による多点探索が必要.
Parallel SA
+
GA for Temperature
Parallel SA with Adaptive Temperature
determined by Genetic Algorithm (PSA/AT(GA))
MPS symposium 2004
Doshisha University, Kyoto, Japan
PSA/AT(GA)のアルゴリズム
SA
L : 温度交換周期
SA
L
L
SA
Solution
SA
Temperature(個
体)
0
1
2
3
GA operation
SAの1プロセスにGAの1個体(温度)を割当て
SAの実行 + GAの適合度計算
同期後,GAにより新たな温度を生成
各SAプロセスに温度を設定
MPS symposium 2004
Doshisha University, Kyoto, Japan
解の動きと温度の関係
- eil101 -
最高温度
最低温度
重要温度
一定温度SA
• 重要温度領域での解の特徴
– 解品質が良好な領域で,比較的良く動く
• 解の動きを評価することで,温度の良し悪しを判定できる
MPS symposium 2004
Doshisha University, Kyoto, Japan
適合度計算
• 適合度(Fitness)は,解の動きを評価する値
• 適合度計算は,同期周期L までの間,
基準値E とエネルギー値Ek との差を加算して算出
• ただし,適合度計算は,受理時のみ
• 基準値は,全プロセスのエネルギーの平均値
L
k 1
Solution
Energy
Fitness  ( E  E k )
Average
Annealing Steps: k
MPS symposium 2004
Doshisha University, Kyoto, Japan
Genetic Algorithm (GA)
• 生物の進化を模倣した進化的計算手法
• 同期毎にGAを適用し,新たな個体(温度)を生成
• 実数値GA [Eshelman93] を使用
GAオペレータ
Individual
Population
MPS symposium 2004
Selection
適合度の高い個体が
生き残る
Crossover
個体間の情報交換
Mutation
個体情報の変更
Doshisha University, Kyoto, Japan
選択(Selection)
• 温度と解の動きは密接に関係している.
• 適合度は,解の動きを評価する指標である.
Energy
Steps
Fitness : low
Low temperature
Energy
Important temperature
Energy
High temperature
Steps
Fitness : high
Baseline
Steps
Fitness : low
• 重要温度での探索では,適合度が高くなるように設計.
• 重要温度で探索するSAプロセスは,
GAによって次世代にも生き残る確率が高い.
MPS symposium 2004
Doshisha University, Kyoto, Japan
交叉(Crossover)
• BLX-αを用いた実数値GAを採用
BLX-α
親個体(p1,p2)の区間d から両側にαd だけ拡張した
区間から一様分布で子個体を生成
指数型クーリングに対応するため,
温度T を
対数にした値X を用いる.
X  log10 T
MPS symposium 2004
Doshisha University, Kyoto, Japan
突然変異(Mutation)
• 正規分布を用いて,
良好な子個体の付近に,突然変異個体を発生させる.
生成確率
平均μ
:子個体の温度
標準偏差σ:β・d
(0<β<1)
(子個体)
d
MPS symposium 2004
Doshisha University, Kyoto, Japan
GAのパラメータ
値
パラメータ
個体数(プロセス
数)
32
選択方法
トーナメント選択(サイズ:2)
交叉方法
BLX-α
α値
0.5
交叉率
0.3
突然変異方法
β値
突然変異率
MPS symposium 2004
子個体を中心とした正規分布
0.05
0.03125(1/32)
Doshisha University, Kyoto, Japan
PSA/AT(GA)のアルゴリズム
SA
SA
SA
Solution
SA
Temperature(個
体)
0
1
2
3
GA operation
SAの1プロセスにGAの1個体を割当て
SAの実行 + GAの適合度計算
同期後,GAにより新たな温度を生成
各SAプロセスに温度を設定
L
L
L : 温度交換周期
重要温度領域に探索温度範囲を収束させる
MPS symposium 2004
Doshisha University, Kyoto, Japan
数値実験
• 対象問題:
・巡回セールスマン問題(TSP)
・ジョブショップスケジューリング問題(JSP)
• 比較手法:
・PSA/AT(GA)(提案手法)
・完全独立型並列SA(Parallel SA:PSA)
・温度並列SA(Temperature Parallel SA : TPSA)
• 比較項目:
・解探索能力 :最適解との誤差率(%)
・解の収束速度:良好な解に到達するまでの探索数
MPS symposium 2004
Doshisha University, Kyoto, Japan
比較手法
Max Temperature
・複数のプロセスが独立に
逐次SAを行なう
・全プロセスが
同じ温度スケジュール
・全プロセスの中から最良解を選択
• 温度並列SA(TPSA)
Temperature
• 完全独立型並列SA(PSA)
Min Temperature
Steps
High T
・各プロセスに異なる温度を割当て,
解探索途中で解交換を行う
・温度スケジュールの自動化
・並列処理との高い親和性
Low T
Steps
MPS symposium 2004
Doshisha University, Kyoto, Japan
パラメータ
パラメータ
TSP
JSP
プロセス数
同期周期
1プロセスの評価計算回数
32
都市数×20
1000
同期周期×160
32000
試行回数
50
最高温度
最大となる改悪を
50%の確率で受理する温度
最低温度
最小の改悪を
同期周期中に1回は受理する温度
MPS symposium 2004
Doshisha University, Kyoto, Japan
解探索能力に関する実験結果(TSP)
2.5
Error ratio(%)
2
PSA/AT(GA)
PSA
TPSA
1.5
1
0.5
0
eil101
kroA200
lin318
pr439
rat573
d657
TSP Problems
提案手法であるPSA/AT(GA)は,
全ての問題に対してTPSAより良好,PSAとほぼ同等の性能を有する
MPS symposium 2004
Doshisha University, Kyoto, Japan
解の収束速度に関する実験結果
PSA:
最終段階に到達した時に
はじめて良好な解を得ることができる
- pr439 -
Error ratio(%)
TPSA:
解の収束速度は速いが,
解探索能力が弱い
PSA/AT(GA):
解の収束速度,解探索能力ともに良好
Num. of annealing steps(×10 5 )
MPS symposium 2004
Doshisha University, Kyoto, Japan
温度スケジュール(全プロセス)
Temperature
- eil101 -
Num. of annealing steps
Num. of annealing steps
Num. of annealing steps
PSA/AT(GA):温度が特定範囲に収束
TPSA
: 解によって,推移する温度が異なる
PSA
:高温から低温まで一定割合で減少
MPS symposium 2004
Doshisha University, Kyoto, Japan
温度スケジュール(最良解のプロセスのみ)
Temperature
- eil101 -
Num. of annealing steps
Num. of annealing steps
Num. of annealing steps
PSA/AT(GA):温度が特定範囲に収束
TPSA
: 解によって,推移する温度が異なる
PSA
:高温から低温まで一定割合で減少
MPS symposium 2004
Doshisha University, Kyoto, Japan
温度スケジュール(最良解のプロセスのみ)
Temperature
- eil101 -
Num. of annealing steps
Num. of annealing steps
Num. of annealing steps
PSA/AT(GA)の収束温度範囲は,重要温度領域と一致
MPS symposium 2004
Doshisha University, Kyoto, Japan
解探索能力に関する実験結果(JSP)
3
PSA/AT(GA)
PSA
TPSA
Error ratio(%)
2.5
2
1.5
1
0.5
0
FT10
FT20
ORB1
ORB3
LA21
LA40
JSP Problems
提案手法であるPSA/AT(GA)の
高い探索能力が,JSPについても確認できる.
MPS symposium 2004
Doshisha University, Kyoto, Japan
まとめ
提案手法:
遺伝的アルゴリズムを用いた適応的温度スケジュール持つ
並列シミュレーテッドアニーリング(PSA/AT(GA))
PSA/AT(GA)の特徴
• 並列に実行するSAの温度をGAを用いて決定
• 温度スケジュールの設定を自動化する
数値実験
• TSP,JSPを対象問題として解探索能力,解の収束速度を比較
• PSA/AT(GA)は,
• PSAと同等,TPSAより良好な解探索能力を有する
• PSAより解の収束速度が速い
提案手法の重要温度領域に収束する
温度スケジュールは,解探索に有効である.
MPS symposium 2004
Doshisha University, Kyoto, Japan
MPS symposium 2004
Doshisha University, Kyoto, Japan
研究目的
• SAの研究に求められていること
・パラメータ(温度スケジュール)設定の簡単化
・アルゴリズムの高速化
・解探索能力の向上
• パラメータ設定の簡単化
(=温度スケジュールの自動化)
MPS symposium 2004
Doshisha University, Kyoto, Japan
ジョブショップスケジューリング問題(JSP)
• n個の仕事(Job)をm台の機械(Machine)で処理
• 制約条件
:各仕事を処理する機械の順序(技術的順序)
• すべての仕事を完成させるまでの時間(Makespan)
を最小にするスケジュールを求める
MPS symposium 2004
Doshisha University, Kyoto, Japan
ジョブショップスケジューリング問題(JSP)
• n個の仕事(Job)をm台の機械(Machine)で処理
• 制約条件
:各仕事を処理する機械の順序(技術的順序)
• すべての仕事を完成させるまでの時間(Makespan)
を最小にするスケジュールを求める
MPS symposium 2004
Doshisha University, Kyoto, Japan
GAのパラメータ(β値)
- kroA200 0.8
Error ratio(%)
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
0.01
0.05
0.1
0.3
0.5
β
β値は,0.05程度が適切
MPS symposium 2004
Doshisha University, Kyoto, Japan
GAのパラメータ(交叉率)
- kroA200 1.6
Error ratio(%)
1.4
1.2
1
0.8
0.6
0.4
0.2
0
0
0.2
0.3
0.4
0.6
0.8
1
Crossover ratio
交叉率は,0.3程度が適切
MPS symposium 2004
Doshisha University, Kyoto, Japan
GAのパラメータ(突然変異率)
- kroA200 1.6
Error ratio(%)
1.4
1.2
1
0.8
0.6
0.4
0.2
0
1
2
4
8
16
Mutation ratio (X/32)
突然変異率は,1/32程度が適切
MPS symposium 2004
Doshisha University, Kyoto, Japan
GAのパラメータ(プロセス数)
- kroA200 4
Error ratio(%)
3.5
3
2.5
2
1.5
1
0.5
0
4
8
16
24
32
36
42
Num. of processes
プロセス数は,32程度が適切
MPS symposium 2004
Doshisha University, Kyoto, Japan
Coding of temperature
• PSA/AT(GA) uses GA to optimize the cooling schedule.
• Individual : Temperature on each processor
• Design variable : The exponent of temperature function, X
Real Value
Bit Array
Encoding
X
Temperature = 10 X
Decoding
• The expression of temperature in
PSA/AT(GA) is suitable for the exponential
cooling schedule in SA.
MPS symposium 2004
SA cooling method
Tn1  Tn (  1.0)
Doshisha University, Kyoto, Japan
Cooling schedule (eil101)
- PSA/AT(GA) -
- TPSA 100
Temperature
Temperature
100
10
1
0.1
10
1
0.1
0
20000
40000
60000
Num. of annealing steps
80000
0
20000
40000
60000
80000
Num. of annealing steps
A line : a cooling schedule on one SA.
PSA/AT(GA) : Convergence on the important temperature region
TPSA
: All processes can’t always have good search.
The cooling schedule of PSA/AT(GA) is more proper than TPSA’s.
MPS symposium 2004
Doshisha University, Kyoto, Japan
Experimental results (Error Rate) in TSPs
Error Rate (%)
2.5
2
PSA/AT(GA)(binary-coding)
PSA/AT(GA)(real-coding)
PSA
TPSA
1.5
1
0.5
0
eil101
kroA200 lin318
pr439
rat575
d657
TSP Problems
MPS symposium 2004
Doshisha University, Kyoto, Japan
SAの並列化
• 並列SAの分類 [D.R.Greening,1990]
- Serial-Like : 部分解を異なるプロセッサで解探索するモデル.
多くの通信が必要
- Altered generation : 複数の逐次SAを同時実行し, 同期をとって通信
するモデル
- Asynchronous : 非同期の通信を行うモデル
Serial-Like
Altered generation
Asynchronous
- 計算時間の短縮,解探索能力の向上
- 温度スケジュールは逐次SAと同じ
MPS symposium 2004
Doshisha University, Kyoto, Japan
温度のコーディング
個体:各プロセスが持つ温度
遺伝子型 1 0 0 1 0 1 1 0 1 0
ビット列で
指数部を表現
温度 = 10
X
602
ビット長が
10ビット
2 =1024
範囲
[-2,6]
2.703
10
2.703
PSA/AT(GA)で探索する温度範囲
最高温度と最低温度が定義域
最高温度 : 10000
最低温度 : 0.01
MPS symposium 2004
ビット列が表現する
範囲 : [-2,4]
Temperature
温度
表現型(温度)
10 =
504.66
Max Temperature
Min Temperature
Time
Doshisha University, Kyoto, Japan
SA
GA
MPS symposium 2004
Doshisha University, Kyoto, Japan
MPS symposium 2004
Doshisha University, Kyoto, Japan
MPS symposium 2004
Doshisha University, Kyoto, Japan