第 3 章 最適化アルゴリズムのパラメータ調整のためのメタ最適化 52
3.3 メタヒューリスティクスのパラメータ最適調整問題とメタ最適化
PSO
の改良手法であるIWA-PSO
は,調整パラメータc
として慣性係数c
0のみを選び,その時系列
c
0(k) = c
start− (c
start− c
end) k
K (3.11)
を,最適か否かは別としてある種のメタ最適化問題の解とみなしているものといえる.
3.2
節で定式化したメタ最適化問題においては,パラメータc
を一定としているが,時系列c(·)
が一定の値を取り続けるものとすれば,一定のパラメータの推奨値を決める問題(3.6)
もパラメータ時系列を求めるメタ最適化問題(3.10)
の特殊な場合とみなすことができる.こうして,パラメータを時系列化することで,たとえば,
IWA-PSO
のように大域的な探 索から局所的探索へ移行させるなど,探索過程中に探索点の挙動に変化を与えることで,メタ最適化の機能を高めることが可能である.
また,探索性能を評価する目的関数が,計算終了時のイテレーションの上限での探索点 座標の目的関数値
E(x
∗(K))
ではなく,探索点群の群れとしての挙動特性を示す指標,た とえば探索点群の活性度を指標とし,その変動の目標時系列に追従するようなパラメータ 調整を行う活性度調整型PSO
に対して,その最適調整則を与えるメタ最適化問題を定式 化すると,min
c(·)
∑
K k=1| I (x
∗(k)) − I
R(k) | = J(x
∗( · )) where x
∗( · ) solution to
x(k + 1) = A(χ(k), c(k)), k = 0, 1, . . . , K − 1 χ(0); given, c(0); given
(3.12)
となる.ここで,
J(x
∗( · ))
は探索点時系列x
∗( · )
の挙動を評価する指標であり,パラメー タ時系列c( · )
に対する最適化アルゴリズムによる探索点時系列x
∗( · )
に関する評価指標の 時系列I (x
∗( · ))
とその目標時系列I
R( · )
との偏差を最小にするように,パラメータ時系列c(·)
を求める問題である.一方,
PSO
のNDT-PSO
やES
およびDE
におけるパラメータ調整則は,探索点の挙動状態に応じながらパラメータの値を変動させるものである.この場合もパラメータは時系 列となるが,この場合のパラメータ
c
の引数は,イテレーション回数k
だけでなく,探索 点の挙動状態を表す探索点座標x
も引数とする関数F
を用いて,c = F (k, x) (3.13)
とみなすことができる.イテレーション回数
k
を引数にしない場合でも,探索点座標x
が 時系列であるため,パラメータc
は結果的にc(k) = F (x(k)), k = 0, 1, . . . , K (3.14)
と時系列になる.この場合,最適化アルゴリズムA
を実行して得られる最終イテレーショ ンk = K
での最適解ないしはその近似解x
∗(K)
は,直接パラメータ時系列に依存するの ではなく,関数F (·)
に依存するため,これを引数として,x
∗(K) = A(F (·)) (3.15)
とおくことができる.したがって,メタ最適化問題は目的関数値
E(x
∗(K))
を最小にする ような関数F ( · )
を決定する問題となり,min
F(·)
E (x
∗(K))
where x
∗(K) = A(F ( · ))
(3.16)
または,
min
F(·)
E (A(F ( · ))) (3.17)
と定式化される.これらの定式化において,
F ( · )
の表記をF (x)
と記述しないのは,前者 は変数x
の空間上で定義された関数自体を変数とする関数空間での最適化問題であるのに 対して,後者では変数x
のある値に対する関数F (x)
の値で最小化するという意味と解釈 されるためである.この問題をメタ最適化問題(3.10)
に対応づけて定式化すると,min
F(·)
E (x
∗(K))
where x
∗( · ) solution to {
x(k + 1) = A(χ(k), c(k)) c(k) = F (x(k))
k = 0, 1, . . . , K − 1 χ(0); given, c(0); given
(3.18)
となる.
ところで,関数
F
はすべての探索点座標x
をパラメータの値c
に対応づけるベクトル 関数で,これを改めてc = F (x)
と表現すると,探索点座標x
を入力とし,それに応じて パラメータc
の値が出力として決まる入出力関係である.したがって,パラメータc
の空 間の値を入力とし,x
の空間の値を出力するような入出力関係x = A(c)
とは,その入出 力関係が逆の関係であることがわかる.そこで,このようにパラメータc
をx
の関数と して与える問題を「フィードバック型メタ最適化問題」と称することにする.このような フィードバックの関係を図示すると,Fig. 3.2
のようになる.最適化アルゴリズムの写像A
から生成される変数x
の力学系に対して,関数F
によりx
からc
を生成する逆関数に よってフィードバック系を構成することは,最適化アルゴリズムの写像A( · )
の力学系が有 する動的特性に対して,写像A( · )
と関数F ( · )
の合成写像A(F ( · ))
による新たな力学系を 構成していることになり,本来のアルゴリズムの力学系の特性に対して本質的な変更を与 えることに相当し,より高機能なアルゴリズムパラメータの調整を行っていることになる.このような例としては,
NDT-PSO
における調整則があげられ,たとえば(2.18c)
式におい て,g-best
座標x
(g−best)を定数とみなし,かつ探索点番号の上付き添字(p)
を省略するとF (x) = 1 − d
1+ d
1d
0exp(− ||x − x
(g−best)||
d
2d
0) (3.19)
とみなすことができる.
Fig. 3.2: Relations among algorithm, objective function and parameter tuning rule.
一方,
ES
における正規乱数の標準偏差に相当するパラメータσ(k)
の調整則である(2.24)
,(2.25)
式は,σ(k + 1) = F (σ(k), p
s(k)) (3.20)
と一般化することができる.ここで
p
s(k)
は,現在のイテレーションk
から遡った一定のイテ レーション期間で突然変異が成功した頻度であり,この遡る一定のイテレーション期間をl
と すると,p
s(k)
はx(k)
だけでなく,過去にl
期遡った時系列{ x(k − l), x(k − l+1), . . . , x(k) }
やその目的関数値を関数F
の引数にしていることになり,それを示しているのが破線の部 分である.(
試験点との目的関数値の比較にもよるので試験点の時系列を引数にする関数 ともみなせるが,これについては議論簡略化のため省略する)
.また,関数F
の引数に現 イテレーションのパラメータσ(k)
も含まれていることから,関数F
による関数にも離散 系のダイナミクスをもたせていることがわかる.これらのことを一般化すると,パラメー タの更新則は離散力学系としてc(k + 1) = F (c(k), χ(k)), k = 0, 1, . . . , K − 1 (3.21)
と一般化することができる.このような一般化された調整則の離散力学系を与える関数F
を用いて,計算終了時のイテレーションの上限k = K
での探索点x
∗(K)
に対する目的関数値
E (x
∗(K))
を最小にするようパラメータ調整則を求めるメタ最適化問題は,min
F(·,·)
E(x
∗(K))
where x
∗(·) solution to {
x(k + 1) = A(χ(k), c(k)) c(k + 1) = F (c(k), χ(k)) k = 0, 1, . . . , K − 1 χ(0); given, c(0); given
(3.22)
とさらに一般化して定式化することができる.この問題を「最適化アルゴリズム
A
に対す るパラメータの最適調整則F
を与えるメタ最適化問題」と称することにする.なお,問題(3.12)
に対応する形で,パラメータ時系列c( · )
に対する最適化アルゴリズムによる探索点の時系列
x
∗(·)
に関する評価指標の時系列I(x
∗(·))
とその目標時系列I
R(·)
との偏差を目 的関数として導入すると,これを最小にするようなパラメータ時系列c( · )
を与えるフィー トバック調整則F ( · , · )
を求める,いわば問題(3.22)
に対応するメタ最適化問題は,min
F(·,·)
∑
K k=1| I(x
∗(k)) − I
R(k) | where x
∗( · ) solution to
{
x(k + 1) = A(χ(k), c(k)) c(k + 1) = F (c(k), χ(k)) k = 0, 1, . . . , K − 1 χ(0); given, c(0); given
(3.23)
となる
.
問題
(3.18)
や問題(3.22)
のように,最適パラメータ時系列を与える調節則を与える関数F
を求めるメタ最適化問題を「フィートバック型メタ最適化問題」ということにし,こ れに対して問題(3.10)
のような最適なパラメータ時系列を直接求める「フィードフォワー ド型メタ最適化問題」からは区別する.とくにフィードバック型問題は,関数F
による フィードバック関数が静的な問題(3.18)
のタイプと,パラメータ調整にダイナミクスをも たせて動的にフィードバックを行う問題(3.22)
のタイプを考えることができる.問題(3.18)
を「フィードバック型静的調整則決定メタ最適化問題」,問題(3.22)
を「フィードバック 型動的調整則メタ最適化問題」と称することにする.なお,目的関数
E(x
∗(K))
や∑
Kk=1
| I (x
∗(k)) − I
R(k) |
は,最適化アルゴリズムの時系 列x
∗( · )
が決まるとそれに対応して実数スカラー値が決まる汎関数であるため,以降では 便宜上のこの汎関数をJ (x
∗( · ))
と統一的に表すことが可能である.この汎関数の表記を用 い,以上において定式化したメタ最適化問題をまとめると以下のようになる.パラメータ値メタ最適化問題
: min
cJ (x
∗( · ))
where x
∗( · ) solution to
x(k + 1) = A(χ(k), c), k = 0, 1, . . . , K − 1 χ(0); given
(3.24)
パラメータ時系列メタ最適化問題
min
c(·)
J (x
∗( · ))
where x
∗( · ) solution to
x(k + 1) = A(χ(k), c(k)), k = 0, 1, . . . , K − 1 χ(0); given, c(0); given
(3.25)
フィードバック型静的調整則メタ最適化問題
: min
F(·)
J (x
∗( · ))
where x
∗(·) solution to {
x(k + 1) = A(χ(k), c(k)) c(k) = F (x(k))
k = 0, 1, . . . , K − 1 χ(0); given, c(0); given
(3.26)
フィードバック型動的調整則メタ最適化問題
:
F
min
(·,·)J (x
∗(·))
where x
∗( · ) solution to {
x(k + 1) = A(χ(k), c(k)) c(k + 1) = F (c(k), χ(k)) k = 0, 1, . . . , K − 1 χ(0); given, c(0); given
(3.27)
ドキュメント内
メタヒューリスティクスに対する遺伝的プログラミングによる創発的パラメータ調整則の自動設計(本文)
(ページ 59-64)