シミュレーテッドアニーリングにおける
最高温度の重要性
同志社大学工学部知的システムデザイン研究室
吉田武史
Intelligent System Design Lab
シミュレーテッドアニーリングとは
物理プロセスを計算機上でシュミレート
•金属の焼きなまし(アニーリング)
ゆっくり冷やす
温度 高
•複雑なシステムを安定状態へ
温度 低
最適化に利用
Intelligent System Design Lab
SAのアルゴリズム
1. 初期解を与える
2. 解の生成
大
現在の状態から次状態生成
Energy
3. 温度により解摂動を受理判定
小
確率的に改悪方向
への摂動もみとめる
4. クーリング
ゆっくり冷却
5. 十分な探索
計算時間が長い
安定するまで
Intelligent System Design Lab
Pararell SA
PSAの種類
•完全独立型
•受理同期型
•定期同期型
メリット
•解探索能力を増大
•計算時間の短縮
問題点
SA
情報交換
SA
SA
SA
情報交換
情報交換
•温度スケジュール
の設定が困難
Intelligent System Design Lab
逐次SAにおける温度スケジュール
温度スケジュールを決定するパラメータ
Max Temparature
•最高温度
(Max Temparature)
(Cooling Rate)
•最低温度
(Minimum Temparature)
Cooling Rate
Temparature
•冷却率
•クーリング周期
(Cooling Cycle)
Cooling Cycle
Minimum Temparature
Time
Intelligent System Design Lab
PSAでの温度スケジュール
各プロセッサが同じ温度スケジュール
SAを実行
SAを実行
SAを実行
同期を取り解交換
•解探索能力を増大
•計算時間の短縮
異なる温度スケジュールでの
PSAを提案する
SAを実行
Intelligent System Design Lab
異なる温度スケジュール
Temparature
プロセッサ間で異なるパラメータ
TYPE1
冷却率
最低温度
クーリング
周期
TYPE1
Different
Different
Same
Same
TYPE2
Different
Same
Different
Same
TYPE3
Same
Different
Different
Same
Temparature
Temparature
Time
最高温度
TYPE2
TYPE1を選択
TYPE3
Intelligent System Design Lab
対象問題
巡回セールスマン問題
(Traveling Salesman Problem:TSP)
•代表的な組み合わせ最適化問題
•最短の経路長を見つける
•近傍定義の方法
•2-change
•Modified 2-change
Intelligent System Design Lab
TSPにおける近傍(1)
2-change手法
C
A
E
F
C
A
E
F
B
D
町順 : ABCDEF
2本の枝を選択し,
交換する
B
D
町順 : ADCBEF
ランダムに選択するため効率が悪い
Intelligent System Design Lab
TSPにおける近傍(2)
Modified 2-change手法
C
A
E
半径内の町を選択
D
C
A
E
その町からの
F
枝を選択し,
2-change
F
B
C
A
E
町順 : ABCDEF
B
D
町順 : ABFEDC
F
B
D
Intelligent System Design Lab
実験に使用したパラメータ
同じアニーリング数による性能比較
アニーリング数 : 5000~50000 を 5000 区切り
対象問題 : 150都市のTSP(ch150)
逐次SA
•最高温度 : 5500
•最低温度 : 0.45
•クーリング周期 : 300
•計算回数 :
16(Best)×10
PSA
•最高温度 : 5500~0.45
までを等比分配
•最低温度 : すべてのプロセッサが0.45
•クーリング周期 : 300
•計算回数 : 16プロセッサのベスト×10
Intelligent System Design Lab
並列SAでの情報交換
情報交換の方法
SA
なし
SA
SA
SA
総アニーリング回数の
半分で情報交換
解交換なし
ベスト 最も優れた解をばら撒く
ソート 優れた解を低い温度の
プロセッサに順にばら撒く
逆順 優れた解を高い温度の
プロセッサに順にばら撒く
Intelligent System Design Lab
実行結果(2-change)
1.2
逐次SA
PSA(解交換なし)
PSA(ベスト)
PSA(ソート)
PSA(逆順)
1
0.8
0.6
0.4
0.2
0
50
00
10
00
0
15
00
0
20
00
0
25
00
0
30
00
0
35
00
0
40
00
0
45
00
0
50
00
0
Error (10trials , Medium)
1.4
Error =
(Result-Opt)/Opt
Annealing
Intelligent System Design Lab
実行結果(Modified 2-change)
0.05
逐次SA
PSA(解交換なし)
PSA(ベスト)
PSA(ソート)
PSA(逆順)
0.04
0.03
0.02
0.01
0
50
00
10
00
0
15
00
0
20
00
0
25
00
0
30
00
0
35
00
0
40
00
0
45
00
0
50
00
0
Error (10trials , Medium)
0.06
Error =
(Result-Opt)/Opt
Annealing
Intelligent System Design Lab
考察
Temparature
温度スケジュールの異なるPSAの効果
•同時に幅広い温度でのSA探索
•低温での探索が多い
効率のいい探索が行える
Time
近傍構造の影響
•Modified 2-changeの優れた性能
近傍構造のSAへの効果
Intelligent System Design Lab
まとめと今後の課題
温度スケジュールの異なるPSA
最高温度の異なるSAによって性能向上
•SAにおける低温でのアニーリングの重要性
•他のタイプの温度スケジュールでの実験
•TSP以外の問題への適用
情報交換のPSAに与える影響
情報交換での性能向上が今後の課題
•解交換回数の増加
•新たな解交換手法の提案
Intelligent System Design Lab
Intelligent System Design Lab
最高温度の設定について
最高温度 : 最大の改悪を一定の確率以上で認める温度
大
Metropolis基準
Energy
改悪
exp
-(Enext-Ecurrent)
T
小
5500 : 最大の改悪を50%の確率で受理する温度
Intelligent System Design Lab
最低温度、クーリング周期の設定
最低温度 : クーリング周期で、
Metropolis基準
最小の改悪を受理を最低1回は行う温度
-(Enext-Ecurrent)
exp
T
0.45
•温度が小さくなると局所探索法と等価
クーリング周期 : 対象問題の近傍サイズに比例
TSPの場合 : 都市数×20
150都市なら一般的に3000
300 (PSAによる計算時間短縮のため)
Intelligent System Design Lab
冷却率の設定
冷却率 : 緩慢に冷却する (0.8~1.0)
Temparature
•最高温度
•最低温度
•総アニーリング数
•クーリング周期
Tnext =γ Tnow
冷却率は決定する
温度差
(最高温度ー最低温度)
クーリング周期
総アニーリング数
Annealing
Intelligent System Design Lab
ダウンロード

シミュレーテッドアニーリングにおける最高温度の重要性