470 likes | 788 Views
温度並列シミュレーテッドアニーリングにおける重要温度. 三木 光範 (同志社大学). 廣安 知之 (同志社大学). ○ 窪田 耕明 (同志社大学大学院). 吉田 武史 (同志社大学). 研究背景. 温度並列 SA(TPSA). 最適化問題. ヒューリスティック探索手法. シミュレーテッドアニーリング( SA). , GA,etc. 高い計算負荷で並列化は必須. 並列アルゴリズム. 並列 SA , 分散 GA,etc. SA の基本アルゴリズム. ・生成処理. 減少. 必ず受理. エネルギー が. -(E next - E current ).
E N D
温度並列シミュレーテッドアニーリングにおける重要温度温度並列シミュレーテッドアニーリングにおける重要温度 三木 光範 (同志社大学) 廣安 知之 (同志社大学) ○ 窪田 耕明 (同志社大学大学院) 吉田 武史 (同志社大学)
研究背景 温度並列SA(TPSA) 最適化問題 ヒューリスティック探索手法 シミュレーテッドアニーリング(SA) ,GA,etc. 高い計算負荷で並列化は必須 並列アルゴリズム 並列SA ,分散GA,etc.
SAの基本アルゴリズム ・生成処理 減少 必ず受理 エネルギーが -(Enext-Ecurrent) ・受理判定 増加 exp Temperature ・温度のクーリング の確率で受理 SAの欠点 ・計算時間がかかる ・温度設定が困難 SA:焼きなましのアナロジーを模倣 大 Energy 局所解 温度並列SA(TPSA) 最適解 小
TPSA SA T1 T2 T3 Temparature T4 T5 T6 Time TPSA 各プロセスに温度を割り当てる T1 TPSAの利点 T2 T3 Temparature T4 T5 T6 Time ・生成処理 ・受理判定 ・解交換 ・並列処理との親和性が高い ・温度スケジュールの自動化 温度パラメータの設定が重要
重要温度 研究目的 T1 T2 T3 Temparature T4 T5 T6 Time 一定温度でのアニーリングが有効 無駄な探索 効率の良い探索 (重要温度) 局所解に収束 ・巡回セールスマン問題において重要温度の存在を確認する. ・重要温度の規則性を検証する. TPSAの適切な温度パラメータ設定が可能!
巡回セールスマン問題(TSP) eil51(51都市,最適解:426) 初期解 最適解
重要温度を確認する実験 使用するパラメータ 最高温度:1.0E+6 Temparature T1 最低温度:1.0E-2 T2 T3 温度数:32 T4 T5 計算回数:160000回 Time T6 解交換を行なわないTPSA
実験結果 重要温度を確認できた
各問題での重要温度 重要温度は 1.最適解に比例? 2.都市数に反比例? 最適解/都市数 = 平均経路長 重要温度は平均経路長と関係がある?
平均経路長と重要温度 1 傾き の直線 4 (pr76) (bier127) (pr152) (kroA100) (eil51)
平均経路長と重要温度 最適解と都市数(平均経路長)から 重要温度を導くことができる 1 重要温度 ×(最適解/都市数) = 4 ・一般的なTSPでは 特殊な問題ではどうか?
テスト問題による検証 解交換を行なわないTPSAを適用 eil51を使用してテスト問題を作成 都市数を2倍にしたeil51 ・各都市に近接して都市を付加 (eil51-A) ・各都市の中間点に都市を付加 (eil51-B)
eil51-A 各都市に近接して都市を付加(102都市) eil51-B 最適解:426
eil51-B 各都市の中間点に都市を付加(102都市) eil51 最適解:426 eil51-C 最適解:426
実験結果 ・eil51-A→ 重要温度は変化しない. 重要温度は都市数に反比例していない? ・eil51-B→ 重要温度の幅が広くなる. 重要温度は高くてもいい?
考察 1 1 1 1 2.1 1.8 0.2 最適解:8 都市数:8 平均経路長 = 1 計算で求めた 平均経路長 実際の各経路長 = 最適解:8 都市数:8 平均経路長 = 1 計算で求めた 平均経路長 実際の各経路長 ≠
eil51の経路長分布 平均経路長=426÷51=8.4
eil51-A(近接)の経路長分布 平均経路長=426÷102=4.2
考察(eil51-A) 経路長にばらつきがあり 平均経路長と異なる 平均経路長から重要温度は 計算できない! 平均経路長=426÷102=4.2 温度に関係なく結ばれる経路長
eil51-B(中間点)の経路長分布 経路長にばらつきがなく 平均経路長と等しい 平均経路長=426÷102=4.2
考察(eil51-B) 各都市の中間点に都市を付加 問題が簡単になった (迷うような経路がない) 多少の温度差に影響を受けない 局所探索で解が求まる (重要温度はなくなる) 問題が簡単になる
考察 eil51-A 小さい経路長は考慮されない 特殊な問題 重要温度が変わらない eil51-B 問題が簡単になる 重要温度の幅が広くなる 平均経路長(最適解/都市数)が使えない 実際にどのような大きさの組み換えがあるのか? 経路長の組み換えによって生じる エネルギー(ΔE)が重要
結論 重要温度 ×(最適解/都市数) = 1 4 ・TSPにおいて重要温度がある ・特殊なTSPに関しては,組み換えで生じる エネルギー(ΔE)が重要 ・一般的なTSPにおいて,重要温度は 平均経路長(最適解/都市数)に依存している TPSAの適切な温度パラメータを決める指針を示した.
問題が未知の場合は? 問題が未知の場合は? ・「局所解 ≒ 最適解」とする 局所解を用いることによる誤差で 重要温度は高温側にずれる 最高温度
重要温度は複数ある 1 1 1 1 2.1 1.8 0.2 生成されるΔEはほぼ同じ大きさ 生成されるΔEはばらばら (大きいΔEと小さいΔE) 複数の重要温度
シミュレーテッドアニーリング(SA) • 物理現象のモデル化 • 金属の焼きなまし(アニーリング)を計算機上でシミュレート 温度 高 温度 低 ゆっくり冷やす エネルギー 大 エネルギー 小 最適化に利用
kroA100 TSPLIB: http://www.informatik.uni-heidelberg.de/groups/comopt/software/TSPLIB95/index.html 最適解:21282 重要温度:50
pr152 TSPLIB: http://www.informatik.uni-heidelberg.de/groups/comopt/software/TSPLIB95/index.html 最適解:73682 重要温度:130
bier127 TSPLIB: http://www.informatik.uni-heidelberg.de/groups/comopt/software/TSPLIB95/index.html 最適解:118282 重要温度:180
pr76 TSPLIB: http://www.informatik.uni-heidelberg.de/groups/comopt/software/TSPLIB95/index.html 最適解:108159 重要温度:300
eil51-A 最適解だけを変化 スケールを10000倍にしたeil51(51都市) eil51 最適解:426 eil51-A 最適解:4260000
実験結果 ・eil51-A → 重要温度は10000倍になる. 重要温度は最適解に比例している. ・eil51-B → 重要温度は変化しない. 重要温度は都市数に反比例していない?
テスト問題による検証 1.スケールだけを10000倍にしたeil51 (eil51-A) 重要温度が最適解に比例しているか検証 2.都市数だけを2倍にしたeil51 (eil51-B) 重要温度が都市数に反比例しているか検証 解交換を行なわないTPSAを適用
テスト問題による検証 解交換を行なわないTPSAを適用 1.重要温度が最適解に比例しているか検証 スケールだけを10000倍にしたeil51(eil51-A) 2.重要温度が都市数に反比例しているか検証 都市数だけを2倍にしたeil51 ・各都市に近接して都市を付加 (eil51-B) ・各都市の中間点に都市を付加 (eil51-C)
考察 1 4 経路長のばらつきが大きく,平均経路長と 経路長分布が大きく異なる問題(eil51-B) 計算で求めた平均経路長は使用できない ・経路長のばらつきが比較的小さい場合 最適解と都市数から 重要温度を導くことができる 重要温度 ×(最適解/都市数) =