PPT - 知的システムデザイン研究室

Download Report

Transcript PPT - 知的システムデザイン研究室

同 志 社 大 学
工 学 部
知的システムデザイン研究室
三
廣
○實
吉
木 光 範
安 知 之
田
健
田 武 史
研究背景
最適化問題:目的関数の最小化(最大化)
例1 大型望遠鏡の主鏡配置問題
例2 たんぱく質立体構造予測問題
ヒューリスティック手法
シミュレーテッドアニーリング(SA)
遺伝的アルゴリズム(GA) etc.
Simulated Annealing(SA)
金属の焼きなましの考え方を最適化に利用 目的関数
高
アルゴリズム
•生成処理
•受理判定
改良方向
受理確率 P
局所解
低
改悪方向 exp
(
1
‐ΔE
T
最適解
)
(ΔE = Enext - Enow)
•クーリング
特徴 温度パラメータを用いて改悪の受理率を決定
解探索において温度スケジュールが重要
SAにおける温度スケジュール
Temperature
Max
高温から
徐々に冷却
収束しない
効率の良い探索
局所解に陥る
Min
Time
一定温度で探索した場合に他の温度より
計算時間がかかる
パラメータ設定が困難
良好な解が得られる温度領域(重要温度領域)が存在
重要温度領域をはさむ温度スケジュールの設定が大切
SAの効率化アプローチ
Min
Temperature
Temperature
Max
・温度並列SA(TPSA)
・適応的 TPSA(吉田)
Max
Max
Time
Min
Temperature
・逐次SA
Time
Min
温度パラメータは初期段階で与える必要がある
設定が困難
Time
温度パラメータの設定方法
重要温度領域
最低温度
最高温度②
最高温度①
最低温度 解の受理が行われなくなる温度
最高温度 ①経験的に十分高く設定する温度
②重要温度に近接した温度
最高温度の設定が不適切であると計算時間が膨大になる
研究目的
SAの欠点
パラメータ設定が困難
計算時間がかかる
重要温度領域を用いて
適切な温度パラメータ設定を行う
・重要温度領域を探索中に特定
・重要温度領域に近接した最高温度を設定し
効率的に探索を行うアルゴリズムの提案
Adaptive Simulated Annealing
/Maximum Temperature(ASA/MaxT)
ASA/MaxTの仕組み
1 探索途中で重要温度領域を特定
2 特定した重要温度領域を基に
重要温度領域に近接した最高温度を決定
3 決定した最高温度から逐次SAを行う
高温部における無駄な探索を除き
効率的に解探索を行うアルゴリズム
Traveling Salesman Problem : TSP
代表的な組合せ最適化問題
全ての都市を一度だけ巡回
最短の経路長を見つける
TSPLIB
http://www.iwr.uni-heidelberg.de/
groups/comopt/software/TSPLIB95/
eil51
pr76
ch150
重要温度領域の特定方法
重要温度領域
Distance(×105)
Temperature
Max
高温
重要温度領域
低温
Min
Steps
Steps(×105)
高温からの探索途中で重要温度領域の特定は困難
低温から温度を上げながら探索
重要温度領域の特定方法
Max
Temperature
低温から探索を始め
温度を上げながら探索を行う
Distance
Min
重要温度領域で解は
改良方向へ遷移する
Steps
局所解に陥る
改悪方向へ遷移
局所解を脱出
重要温度領域
局所解
最高温度に設定
Steps
ASA/MaxTのアルゴリズム
極低温探索
生成受理判定
SA
ASA/MaxT
加熱
評価
最高温度決定
逐次SA
ASA/MaxTと逐次SAの性能を比較
パラメータ設定
逐次SA(小西 ’94)
最高温度
最低温度
クーリング周期
クーリング率
ASA/MaxT
加熱周期
加熱率
eil51
113
1.4
1020
0.97
pr76
31811
6.1
1520
0.95
ch150
1175
1.4
3000
0.96
eil51
102
1.03
pr76
152
1.05
ch150
300
1.04
その他は逐次SAと同じパラメータを使用
実験結果
SA
ASA/MAXT
解精度の比較
評価回数の比較
考察
重要温度領域
最低温度
最高温度③ 最高温度②
(ASA/MaxT)
最高温度①
(従来の逐次SA)
最高温度① 良好な解が得られるが,計算時間が長い
最高温度② ①と同等の解が得られて,計算時間が短い
最高温度③ 良好な解が得られない
ASA/MaxTの最高温度は解精度を保証できる.
結論
• 重要温度領域を基に最高温度を設定する
ASA/MaxTを提案
- 極低温探索の後,加熱探索を行うことで,重要温度を特定
- 特定した重要温度に近接した最高温度を設定
• TSPにASA/MaxTを適用し,SAと同等の解精度を
SAより少ない探索数で得られた
ASA/MaxTはSAより有効な結果を得た
課題
TSP以外の問題に対しASA/MaxTを適用し性能を検証
補足
Distance
Distance
Distance
加熱探索における解の推移
Steps
eil51
Steps
pr76
Steps
ch150
Simulated Annealing(SA)
物理現象(金属の焼きなまし)
高温
エネルギー大
低温
エネルギー小
この現象をコンピュータ上でシミュレート
最適化問題に利用
重要温度領域
重要温度領域:一定温度で効率の良い探索を行う温度領域
■高温
Max
Temperature
大きな改悪を受理
収束しない
■重要温度領域
適度に改悪を受理
効率の良い探索
■低温
Min
改悪をほとんど認めない
局所解に陥る
Time
適切な温度パラメータを設定するためには
重要温度領域を検証することが必要
重要温度領域の確認
重要温度領域
重要温度領域を確認できた
問題
ch150
eil51
kroA100
重要温度領域
8 ~15
1.8 ~2.8
40 ~70
重要温度を特定することで探索を効率化
高温から低温まで一定温度で探索 → 計算コストがかかる.
重要温度領域の特定
評価値を用いた最高温度の決定方法
局所解
経路長
経路長
重要温度領域
基準値
温度
温度
局所解を基準値とし
基準値と解の差から重要温度を検知
評価値=Σ(基準値 - 解)
一定繰り返し期間ごとに
評価値を計算する
評価値の推移
評価値
重要温度領域
最高温度に設定
評価値を用いて
解推移の傾向を把握
重要温度を検知
探索数
評価値の推移から最高温度を決定するアルゴリズム
Adaptive Simulated Annealing
/Maximum Temperature(ASA/MaxT)
重要温度領域の特定方法
低温から,温度を上げながら探索を行う
重要温度領域
Min
Distance
Distance
温度と解推移の関係
Temperature
Max
Min
局所解
Max
Temperature
重要温度領域で解は局所解を下回る
ASA/MaxT
重要温度を基に最高温度を決定
考察
温度スケジュールの比較
加熱探索中に
重要温度領域を特定
SA
ASA/MaxT
重要温度領域
重要温度領域に近接した
最高温度を設定
探索の効率化