修論発表「温度並列SAの連続最適化問題への拡張」
Download
Report
Transcript 修論発表「温度並列SAの連続最適化問題への拡張」
修士論文公聴会 [2000/02/02]
温度並列SAの
連続最適化問題への拡張
知的システムデザイン研究室
学籍番号:36-98-0710
笠井 誠之
同志社大学大学院
工学研究科
知識工学専攻
Intelligent Systems Design Laboratory
研究背景
並列処理の応用
これまで
これから
数値解析
最適化
ヒューリスティック探索手法の並列化
–
シミュレーテッドアニーリング(SA),遺伝的アルゴリズム
(GA),セルオートマトン(CA),ニューラルネット(NN),etc
–
高い計算負荷で並列化は必須
原理的に自然な並列化が可能
–
Intelligent Systems Design Laboratory
Simulated Annealing (SA)
物理現象のモデル化
–
金属の焼きなまし(アニーリング)を計算機上でシミュレート
温度 高
温度 低
ゆっくり冷やす
エネルギー 高
エネルギー 低
最適化に利用
Intelligent Systems Design Laboratory
シミュレーテッドアニーリング (SA)
金属の焼きなまし(annealing)を模擬した最適化法
アルゴリズム
1.解の摂動
Metropolis基準
エネルギーEが
2.受理判定
確率1.0で摂動を受理
減少
3.クーリング
3.クーリング
3.クーリング
-(Enext-Ecurrent)
3.クーリング
増加
3.クーリング
確率 exp
T
3.クーリング
3.クーリング
3.クーリング
で摂動を受理
3.クーリング
温度
3.クーリング
3.クーリング
E高
長所
–
複雑な問題が解ける
短所
–
–
E低
計算時間が長い.
クーリングスケジュール決定困難
局所解
最適解
Intelligent Systems Design Laboratory
SAの並列化
目的
–
計算の高速化
同期
従来手法
独立型並列SA
定期同期型並列SA
受理時同期型並列SA
新しい手法
–
温度並列シミュレーテッドアニーリング(TPSA)
SA
SA
SA
SA
Intelligent Systems Design Laboratory
温度並列SA (TPSA)
アルゴリズム
確率的に良質な解が低温PEに移動
最高温
解摂動
受理判定
解交換
解交換
高温
低温
解摂動
受理判定
解摂動
受理判定
解交換
最低温
解摂動
受理判定
並列処理との親和性
温度スケジュールの自動化
Temperature
Initial
Solution
T1
T2
T3
T4
T5
0
Temperature
Initial
Solution
Time
T1
T2
T3
T4
T5
T6
Parallelize in Temperature
t on Proc1
t on Proc2
t on Proc3
t on Proc4
t on Proc5
t on Proc6
Time
Intelligent Systems Design Laboratory
本研究の目的
Extensions
SA
Parallelizations
SA over
continuous spaces
SA
TPSA over
continuous spaces
TPSA
TPSA/AN
Intelligent Systems Design Laboratory
連続最適化問題のためのSA
摂動近傍
–
TSP
組合せ最適化問題の場合
解を変化させる最小の操作
定義可能
–
連続最適化問題の場合
解を変化させる最小の操作
定義困難
x1
22 dimensional
dimensional
problem space
problem space
x2
Solution
Intelligent Systems Design Laboratory
従来の連続最適化問題のためのSA
ランダム性を重視
–
–
–
–
一様分布の近傍のSA
Boltzmannアニーリング
Fast SA
その他
ルールを使用
–
–
–
–
–
(関数のランドスケープを考慮)
TPSAによる並列化
CoranaのSA
VFSR
Dekkers & AartsのSA
Press & TeukolskyのSA
その他
Intelligent Systems Design Laboratory
提案手法 TPSA/AN
TPSA
+
Corana’s method
–
各温度で関数のランドスケープを考慮
–
受理と却下の割合が1:1に保たれるように,解
摂動のための近傍の大きさを調節する.
適応的近傍 (Adaptive Neighborhood)
Intelligent Systems Design Laboratory
受理率に関する近傍の調節
却下過多
近傍レンジ
近傍を
小さくする
x1
-Coranaの手法-
無駄
受理過多
近傍を
大きくする
受理と却下の割合を1:1に保つように
Solution
近傍を調節する
2 dimensional
problem space
x2
無駄
Intelligent Systems Design Laboratory
温度に対する近傍の調節 -Coranaの手法-
高温時には,近傍
低温時には,近傍
が大きくなる.
が小さくなる.
Solution
高温
x1
2 dimensional
problem space
低温
x2
Intelligent Systems Design Laboratory
近傍調節の定式化
1
0.4 p
g ( p) 1 c
,
0.4
p 0.6
g ( p) 1 c
,
0.4
g ( p) 1,
if p 0.4
c+1
if p 0.6
otherwise
g (p )
m' m g( p)
1
m, m’: 近傍レンジ.
g(p) : 近傍レンジ調節のため
p:
の係数.
摂動の受理率.
1/(c+1)
0
0.5
p
0.4
1
0.6
p=n/N
n:
N:
受理された摂動回数.
近傍レンジ調節間隔.
本研究では,経験的に
c=2,N = 8.
Intelligent Systems Design Laboratory
対象問題
Rastrigin関数
N 2
f R (x) ( N 10) xi 10cos(2xi )
i1
Griewank関数
xi2 N xi
cos
fG (x) 1
i
i 1 4000
i 1
N
Shekel関数
m
f (x) (x a ) (x a ) c
1
T
S
j 1
Rastrigin
j
j
設計変数の数:2
局所解の数:
fR:121
fG:約50000
fS:5
j
Griewank
Global view
Local view
Shekel
Intelligent Systems Design Laboratory
実験に使用したパラメータ
問題
アルゴリズム
温度数
ステップ数
R astrigin
SA
TPSA
1
32
G riew ank
SA
TPSA
1
32
10240 ×32 10240 30720×32 30720
Shekel
SA
TPSA
1
16
80×16
80
最高(
初期)
温度
10
20
0.8
最低(
最終)
温度
0.01
0.001
0.001
マルコフ連鎖長
10240
クーリング率
0.8
解交換周期
-
-
30720
-
0.72
32
-
80
-
0.64
32
-
4
Intelligent Systems Design Laboratory
並列計算機への実装
PC-cluster
CPU: Pentium II 233MHz× 8
Memory: 128MB×8
OS: Linux
Parallel library: PVM
Network: 100Base-T (Fast Ethernet)
実装方法
1つの温度を1つのプロセスに割り当てる.
Intelligent Systems Design Laboratory
実験
TPSA/AN: 適応的近傍レンジ
SA/AN: 適応的近傍レンジ
SA/FN: 固定近傍レンジ
要 設定
TPSA/FN: 固定近傍レンジ
Intelligent Systems Design Laboratory
実験結果 [Rastrigin]
Energy [10 trials, Median]
1.0E+03
1.0E+01
SA/FN
TPSA/FN
SA/AN
TPSA/AN
1.0E-01
1.0E-03
1.0E-05
1.0E-07
0.01 0.05
0.1
0.5
1
Neighborhood range
5
Intelligent Systems Design Laboratory
実験結果 [Griewank]
Energy [10 trials, Median]
1.0E+02
1.0E+00
SA/FN
TPSA/FN
SA/AN
TPSA/AN
1.0E-02
1.0E-04
1.0E-06
1.0E-08
0.1 0.5
1 5 10 50 100 500
Neighborhood range
Intelligent Systems Design Laboratory
実験結果 [Shekel]
Energy [10 trials, Median]
0.0
-2.0
-4.0
SA/FN
TPSA/FN
SA/AN
TPSA/AN
-6.0
-8.0
-10.0
-12.0
0.005 0.01 0.05
0.1
0.5
Neighborhood range
1.0
5.0
Intelligent Systems Design Laboratory
温度と近傍レンジの履歴
Neighborhood range
Temperature
1.00E+01
(Max. T)
1.00E+00
1.00E+00
1.00E-01
1.00E-01
Temperature
Neighborhood range
1.00E+01
1.00E-02
1.00E-03
0
2000
4000
6000
8000
Annealing steps
10000
1.00E-02
(Min. T)
12000
Intelligent Systems Design Laboratory
最終的に最低温度に到達した解の
エネルギー履歴 [Rastrigin]
1.0E+02
0.1
1.0E+01
Energy
1.0E+00
1.0E-01
0.5
1
1.0E-02
1.0E-03
5
1.0E-04
AN
1.0E-05
1.0E-06
0
2000
4000
6000
8000
Annealing steps
10000
12000
Intelligent Systems Design Laboratory
解探索の履歴
0.5
Global
optimum
0
-2
-1.5
-1
-0.5
0
-0.5
x2
-1
-1.5
-2
Initial
solution
x1
-2.5
0.5
Intelligent Systems Design Laboratory
適応的近傍の効果
SA = 逐次的な探索
・・・
Parallelization in temperature
TPSA
SAの探索回数:L回
TPSAにおける
・・・
ある一つの解の探索回数: L n 回
要
各温度における効率の良い摂動
適応的近傍により実現
Intelligent Systems Design Laboratory
並列処理による速度向上
エネルギー計算の負荷
100倍
TPSA/AN(case1) < TPSA/AN(case2)
7
6
Speedup
5
4
3
2
1
0
SA/AN
TPSA/AN(case1) TPSA/AN(case2)
Methods
Intelligent Systems Design Laboratory
まとめ
温度並列SAの応用範囲の拡張
連続最適化問題への応用
適応的近傍を持つ温度並列SA(TPSA/AN)の提案
関数のランドスケープを考慮して,近傍を調節する
メカニズムは温度並列SAにのみ有効に機能する.
Intelligent Systems Design Laboratory
まとめと今後の課題
<
Fast SA
TPSA/FN
ランドスケープ依存
Corana
Corana
SA = SA
SA/AN
VFSR
Dekkers & Aarts
TPSA/AN
Press
& Teukoslky
<
ランダム摂動
一様分布
一様分布
= SA/FN
Boltzmann SA
TPSA化すべき手法
連続最適化問題のためのより実用的な温度並列
SAの提案と検証
–
–
より局所探索の効率が良い摂動(傾斜法,シンプレックス
法)の導入
並列計算機への実装の工夫
Intelligent Systems Design Laboratory
研究発表リスト
論文
1. 三木光範,笠井誠之:PVMによる仮想並列計算機の構築とオブジェクト指向型計算モデルにおける性能評価,同志社大
学理工学研究報告,Vol. 40,No. 1,pp. 1-10 (1999)
2. (投稿中,採録決定) 三木光範,廣安知之,笠井誠之:連続最適化問題への温度並列シミュレーテッドアニーリングの応
用,情報処理学会論文誌 並列処理特集 (2000)
講演
1. 三木光範,廣安知之,笠井誠之,谷村勇輔,池内智悟,中野 猛:PCクラスタによるいくつかの計算事例,第13回計算力
学講演会,同志社大学,1998/9/11
2. 三木光範,笠井誠之:PVMを用いたPCクラスタによる並列計算,フロンティア事業研究発表会 ,京都リサーチパーク,
1998/11/14
3. 三木光範,笠井誠之:温度並列シミュレーテッドアニーリングのトラス構造物最適化への応用,日本機械学会第11回計算
力学講演会,関西大学100周年記念会館,1998/11/18
4. 三木光範,廣安知之,笠井誠之:連続変数を持つ最適化問題への温度並列シミュレーテッドアニーリングの応用,第14回
超並列計算研究会,北陸先端科学技術大学院大学,1998/11/27
5. 三木光範,廣安知之,笠井誠之:連続最適化問題への温度並列シミュレーテッドアニーリングの応用,情報処理学会 並
列処理シンポジウム99,pp.135-142 ,1999/6/20
6. 笠井誠之,三木光範,廣安知之:適応的温度並列シミュレーテッドアニーリング,日本機械学会1999年度年次大会,慶應
義塾大学 三田キャンパス,1999/7/29
7. Mitsunori MIKI, Tomoyuki HIROYASU, Masayuki KASAI and Motonori IKEUCHI: Temperature Parallel
Simulated Annealing with Adaptive Neighborhood for Continuous Optimization Problem, IASTED International
Conference on Parallel and Distributed Computing and Systems (PDCS’99) , MIT, Cambridge, Massachusetts,
U.S.A., 1999/11/4
8. 笠井誠之,三木光範,廣安知之:問題に適応する摂動近傍を持つ温度並列シミュレーテッドアニーリング,第27回数理モ
デル化と問題解決研究会,奈良女子大学,1999/11/25
9. (投稿中,査読結果待ち) 三木光範,廣安知之,笠井誠之:適応的近傍を持つ温度並列シミュレーテッドアニーリング,
2000年記念並列処理シンポジウム JSPP2000 (2000)
Intelligent Systems Design Laboratory
Appendix
Intelligent Systems Design Laboratory
目次
1.研究背景
2.シミュレーテッドアニーリング (SA)
3.従来の並列SA
4.温度並列SA (TPSA)
5.研究目的
6.連続最適化問題のためのSA
7.拡張アルゴリズムTPSA/ANの提案
8.実験結果
9.まとめ
10.今後の課題
Intelligent Systems Design Laboratory
研究背景
ヒューリスティック探索手法
–
シミュレーテッドアニーリング (SA), 遺伝的アルゴリズム (GA),
セルオートマトン (CA), ニューラルネット (NN)
長所
–
複雑な問題を解くことができる.
短所
–
–
高い計算負荷
パラメータ設定が困難
(e.g. SAではクーリングスケジュールの決定が困難)
Intelligent Systems Design Laboratory
Simulated Annealing (SA)
GA
–
–
生物の進化をモデル化
最適化に応用
初期解
弱い
進化
微生物
最適解
強い
人間
SA
–
–
物理現象をモデル化
最適化に応用
初期解
高エネルギー
焼きなまし
(アニーリング)
非結晶
最適解
低エネルギー
結晶
Intelligent Systems Design Laboratory
Feature of SA
長所
–
–
–
複雑な問題を解くことができる.
実装・コード化が容易である.
真の最適解が統計的に得られる保証がある.
短所
–
–
最適解を得るまでの計算時間が長い.
クーリングスケジュールを決定するのが困難
温度並列シミュレーテッドアニーリング
(TPSA)
Intelligent Systems Design Laboratory
確率的に良質な解が低温PEに移動
解交換
最高温
解摂動
受理判定
高温
解摂動
受理判定
解交換
低温
解摂動
受理判定
解交換
最低温
解摂動
受理判定
Intelligent Systems Design Laboratory
連続最適化問題のためのSA
Coranaの手法 : 適応的な近傍
Dekkers & Aartsの手法 : 傾斜法を解摂処理に組み込む
Very Fast Simulated Re-annealing : 感度を用いる
(Adaptive Simulated Annealing)
Fast Annealing
: コーシー分布を用いる
Boltzmann Annealing : 正規分布を用いる
miscellaneous
– これらの連続空間のためのSAの特徴は解摂動時に
以下の手法を取り入れることである.
エネルギー関数のランドスケープの情報を利用する.
処理の進行とともに近傍レンジを小さくしていく.
Intelligent Systems Design Laboratory
連続最適化問題の解摂動
一様分布近傍のSA
CoranaのSA
Boltzmann
VFSR
Fast
SA
SA
2 dimensional
problem space
x1
x2
ランダムに生成
Solution
Intelligent Systems Design Laboratory
連続最適化問題の解摂動
Dekkers
–
–
& AartsのSA
近傍は単純な確率分布ではない
関数の傾斜を評価する
ランダム
x1
2 dimensional
problem space
傾斜法
x2
Intelligent Systems Design Laboratory
連続最適化問題の解摂動
Press
–
& TeukolskyのSA
Simplex(単体)として
解を表現
優
x1
2 dimensional
problem space
x2
劣
優
Intelligent Systems Design Laboratory
本研究の目的
従来のTPSAの応用
–
= 組合せ最適化問題
SAの応用 = 組合せ最適化問題
TPSAの応用範囲の拡張
連続最適化問題のためのTPSAの新しいアプロー
チの提案
–
適応的近傍を持つ温度並列SA
(TPSA/AN: Temperature Parallel Simulated
Annealing with Adaptive Neighborhood)
Intelligent Systems Design Laboratory
温度に対する近傍レンジの調節 -Coranaの手法-
高温時の近傍レンジ
x2
連続空間では,近傍レンジ(探
索領域)の設定が解の精度に
影響を与える.
高温時には,大域探索が行
われるように,近傍レンジが
大きくなくてはならない.
低温時には,局所的な探索に
より精度が向上するように,
近傍レンジが小さくなくてはな
らない.
低温時の近傍レンジ
x1
Intelligent Systems Design Laboratory
受理率に関する近傍レンジの調節
x2
大きすぎる近傍
小さすぎる近傍
x1
-Coranaの手法-
各温度での摂動の受理率
と却下率を元に近傍レンジ
を調節する.
却下が多ければ
受理が多ければ
近傍レンジを
小さくする
近傍レンジを
大きくする
受理率を50%に保つ
Intelligent Systems Design Laboratory
大域探索能力の指標 -最大温度決定時における-
問題空間領域の各境界線に最も
接近した解と境界線との距離の
平均値
C
A
x1
e.g. 2次元では,
(A+B+C+D) / 4
D
1.00E+01
Unsearched area
x2
B
1.00E+00
1.00E-01
1.00E-02
1.00E-03
1.00E-04
5
10
15
16
Max Temperature
17
18
Problem
space
Intelligent Systems Design Laboratory
制御パラメータの決定 -最大温度ー
最大温度は計算時間と大域探索能力のトレードオフから決定する.
Calculation time(sec)
1.00E+03
Unsearched area
1.00E+01
1.00E+00
1.00E-01
1.00E+02
1.00E+01
1.00E+00
1.00E-01
5
1.00E-02
10
15
16
17
Max.temperature
1.00E-03
1.00E-04
5
10
15
16
17
18
Max.Temperature
予備実験
1. 最大温度の候補となる温度で一定温度の逐次SAを実行.
2. 探索されない領域の大きさと計算時間を計測.
3. 大域探索能力と計算時間のトレードオフを考える.
18
Intelligent Systems Design Laboratory
制御パラメータの決定 -最小温度ー
最小温度は,近傍レンジの大きさが求めようとする解の精度と等しくな
るような温度に決定する.
Neighborhood range
1.00E-01
Required accuracy
1.00E-02
1.00E-03
0.005
0.01
0.05
0.1
0.5
Min.temperature
予備実験
1.最小温度の候補となる温度で一定温度の逐次SAを実行.
2.それぞれの温度のときの,近傍レンジの平均値を計測.
3.解の精度を考える.
Intelligent Systems Design Laboratory
実験に使用したパラメータ
Algorithm s
SA
TPSA
Num ber of Processes
1
32
M ax.(Initial) tem perature
10
M in.(Final) tem perature
0.01
Num ber of iterations 10240×32 10240
M arkov Length
10240
C ooling rate
0.8
Exchange interval
32
Intelligent Systems Design Laboratory
実験結果
10 trials
SA_Ave.
TPSA_Ave.
1.00E+02
Energy
1.00E+00
1.00E-02
SA/AN
1.00E-04
TPSA/AN
1.00E-06
0.01
0.05
0.1
0.5
1
5
Neighborhood range configurations
Intelligent Systems Design Laboratory
T0におけるエネルギー履歴
1.0E+02
1.0E+01
Energy
1.0E+00
1.0E-01
1.0E-02
1.0E-03
AN
0.1
0.5
1.0
5.0
1.0E-04
1.0E-05
1.0E-06
0
2000
4000
6000
Annealing steps
8000
10000
12000
Intelligent Systems Design Laboratory
Griewangk関数における結果
f ( xi i1,N ) 1 (
i 1
2
i
N
x
x
) (cos( i )
4000
i
i
Algorithm s
SA
Num ber of Processes
1
M ax.(Initial) tem perature
20
M in.(final) tem perature
0.001
Num ber of iterations 10240×32
M arkov Length
10240
C ooling rate
0.726
Exchange interval
TPSA
32
20
0.001
10240
32
1.0E+04
SA/AN
1.0E+02
Energy
N
SA_AVE.
TPSA_AVE.
1.0E+00
1.0E-02
1.0E-04
TPSA/AN
1.0E-06
0.1
0.5
1
5
10 50 100 500
Neighborhood range
Intelligent Systems Design Laboratory
TPSA/ANの効果
Markov chain of sequential SA
・・・
Parallelization in temperature
逐次SAで1つの解がL回の摂動を行う.
nプロセッサでTPSAによる並列化
→ ある1つの解は,L/n回の摂動を行う.
TPSAでは,解1つあたりの摂動回数が短い.
→各温度において効率の良い摂動
が要求される.
TPSA/ANの良好な結果は,各温度における効率
の良い摂動が実現できていることを示している.
・・・
Intelligent Systems Design Laboratory
総計算量と解の精度の関係
常にTPSAが
良好
Energy [10 trials, Median]
1.0E+00
1.0E-01
Energy [10 trials, Median]
1.0E+00
Rastrigin
1.0E-01
SA/FN(range = 1.0)
TPSA/AN
1.0E-02
1.0E-03
1.0E-04
1.0E-05
1.0E-06
最適化の実行前にどれだけの計算量が
1.0E-08
1.0E+04
1.0E+05
1.0E+06
1.0E+07
Griewank
必要かは,わからない
Total annealing steps
1.0E-07
SA/FN(range = 5.0)
TPSA/AN
1.0E-02
1.0E-03
1.0E-04
1.0E-05
計算量が多い時に
TPSAが良好
1.0E-06
1.0E-07
1.0E-08
1.0E-09
1.0E+04
1.0E+05
1.0E+06
Total annealing steps
1.0E+07
Intelligent Systems Design Laboratory
まとめと今後の課題
ランドスケープ依存
Corana’s SA
VFSR
Dekkers & Aarts
Fast SA ランダム摂動 Press & Teukoslky
ランダム摂動
一様分布
Boltzmann SA
連続最適化問題のためのより実用的な温度並列
SAの提案と検証
–
–
より局所探索の効率が良い摂動(傾斜法,シンプレックス
法)の導入
並列計算機への実装の工夫