Comments
Description
Transcript
適応的に集団サイズが変動する遺伝的アルゴリズムと
適応的に集団サイズが変動する遺伝的アルゴリズムと パラメータフリー遺伝的アルゴリズムの性能比較と改良 Comparison of Genetic Algorithm with Adaptively Varying Population Size with Parameter-free Genetic Algorithm and Improvement 感性情報学講座 0312000153 本間 大介 指導教員:石亀 昌明 伊藤 慶明 小嶋 和徳 1. はじめに 3. GAAP2 の概要 遺 伝 的 ア ル ゴ リ ズ ム (Genetic Algorithm; GA)は,生物の進化の過程をモデル化した最適 化手法の 1 つである.多くの問題に対して優れ た性能を示す GA であるが,集団サイズや交叉 率,突然変異率などのパラメータにより性能が 大きく変動してしまう.そのため,GA のパラ メ ー タ 設 定 が 不 要 な GA (Parameter-free Genetic Algorithm;PfGA)が提案されている.ま た,昨年度提案された解の探索が停滞した場合 でも集団サイズの増減を自動的に行い,探索効 率の向上を図るパラメータフリーの GA(Genetic Algorithm with Adaptively Varying Population Size;GAAP),現在,GAAP を改良し た GAAP2 がある.本研究では,これらの GA の性能比較と探索効率の向上を目的とする. GAAP では,PfGA とは逆に探索が進むと集団サ イズは減少し,停滞すると増加させ探索範囲を広げ て進化が促される. アルゴリズムは下記の通りである. (1) 2 個体を生成し,初期集団 P とする (2) ルーレット選択を行い,親個体を選択 (3) 交叉を行い,P に追加.2 つの子が,どちらも 親より良かった回数(good2),どちらかが良か っ た 回 数 (good1) , ど ち ら も 悪 か っ た 回 数 (bad2)を記録する (4) 次の世代の集団サイズを計算する(後述) (5) 計算された集団サイズ分,適合度の高い方から 次の世代に残す (6) エリート保存による突然変異 (7) (2)に戻り,繰り返す 次世代の集団サイズ(Psize)は下記の式により決 定される ・ (good2≧1,bad≧1)の時 Psize(t+1)=Psize(t)+2-good2-√good1 ・ (good2≧1,bad=0)の時 Psize(t+1)=Psize(t)+1-good2-√good1 ・ (good2=1,bad≧1)の時 Psize(t+1)=Psize(t)+2-good1/2 ・ (good2=0,bad=0)の時 Psize(t+1)=Psize(t)+1-good1/2 本年度の研究では,GAAP2 の探索効率向上のた めに次世代の集団サイズを決定する式を変更し,集 団サイズの上昇をおさえ, 局所探索の傾向を強めて いる.これにより,1 世代ごとの評価回数が減り, 従来の GAAP2 よりも世代数を多くこなせる. 変更後の式は下記の通りである. ・ (good2≧1,bad≧1)の時 Psize(t+1)=Psize(t)+2-good2-√good1 ・ (good2≧1,bad=0)の時 Psize(t+1)=Psize(t)+1-good2-√good1 ・ (good2=1,bad≧1)の時 Psize(t+1)=Psize(t)+2-(good1+good1/2) ・ (good2=0,bad=0)の時 Psize(t+1)=Psize(t)+1-(good1+good1/2) 2. PfGA の概要 PfGA では,探索が進むと集団サイズが増加 し,停滞すると減少する. アルゴリズムは以下の通りである. (1) 1 個体を作成し,初期集団 P とする (2) 1 個体を作成し,P に追加する (3) P から 2 個体(P1,P2)をランダムに選択 (4) 多点交叉を行い,子個体 C1,C2 を作成 (5) C1,C2 のうち,1 個体に突然変異 (6) 以下の条件式により,1 個体ないし 3 個体を P に戻す(後述) (7) 集団数が 2 以上なら(3)に戻り,1 なら(2) に戻って繰り返す 次世代に残す個体の選択は次のように行う ・ C1>P1,P2 かつ C2>P1,P2 の時 C1,C2 と,親のいい方を集団 P へ (集団サイズ増加) ・ P1>C1,C2 かつ P2>C1,C2 の時 親のいい方を集団 P へ(集団サイズ減少) ・ P1>C1,C2 もしくは P2>C1,C2 の時 子の大きい方と親の大きい方を集団 P へ ・ C1≧P1,P2 もしくは C2≧P1,P2 の時 子のいい方を集団 P へ.さらに,1 個体作 成し,集団 P へ追加 4. 実験 実験には単峰性,多峰性の 2 種類の関数を使 用し,PfGA,GAAP2,改良 GAAP2 の 3 つに ついて各関数毎に 10000 回を評価基準として 最適解の探索を行い,100 回の試行を行った. 以下に使用した関数を示す. 単峰性の関数 f ( x) = n=5 1 n πx sin i ∑ n i =1 1024 (1) 0≦xi≦1023,max=1 Chromlen=10*n 多峰性の関数 f (x ) = 1 n πx 20πxi 0.5 sin i cos ∑ n i =1 1024 1024 n=5 (2) 0≦xi≦1023,max=1 Chromlen=10*n 5. 比較結果 表 1 および表 2 に各アルゴリズムの比較結果 を示す.評価項目は最大適応度,最低適応度, 最大適応度の 100 回の試行の平均値である.こ の問題の最適解は 1 である. 表 1 単峰性の関数の実験結果 GAAP2 改良 GAAP2 PfGA 7. おわりに 最大値 0.999987 0.99999 1 最小値 0.996375 0.999278 0.999724 平均値 0.999313 0.999872 0.999981 表 2 多峰性の関数の実験結果 GAAP2 改良 GAAP2 よい探索をめざしたが PfGA を超えるにはいたら なかった.たとえば,PfGA では特定の条件下で新 しい個体を集団に加えるという処理があるが, GAAP2 にはない.そこで,GAAP2 に様々な条件 下で新しい個体を加えるという処理を加えてみた が,探索性能が悪化する結果となった.今後の課題 として,GAAP2 において特定の条件下で新しい個 体を加えるという処理で探索性能が上がる可能性 の有無を確認していきたい. PfGA の特性を確認するため,アルゴリズムを見 直して,交叉方法を多点交叉から変数ごとの 1 点 交叉に変更した.また,突然変異も削除した.結果 は両方とも以前の PfGA よりも探索性能が上がっ ていた.多点交叉の場合,1 個体毎の交叉点の平均 は 25 個に対し,変数ごとの 1 点交叉は 9 個であっ た.このことから,交叉点が多すぎた場合は個体を 壊していたということがわかる.完全に 1 点交叉 の場合,個体を壊すということは無いが,探索効率 が変数ごとの 1 点交叉よりも悪いということがわ かった.このことから,交叉点の数は多すぎても少 なすぎても探索効率は悪いと言える.突然変異につ いても同様に子個体を壊していることがわかった. 結果として PfGA は,変数ごとの 1 点交叉を使用 し,突然変異を行わないものが最も探索性能がすぐ れているといえる. PfGA 最大値 0.990785 0.993364 0.996409 最小値 0.876203 0.907777 0.993074 平均値 0.941534 0.963092 0.995115 本研究では,PfGA,GAAP2,改良 GAAP2 の性 能比較を行った.その結果,PfGA がもっとも良い 性能となった.これは,少ない集団サイズの中に大 域的探索と局所的探索がバランスよく使われてい る為である.このことから,PfGA の優れている部 分を見直し, さらに性能を高めることにした. 結果, 交叉方法の変更や突然変異の消去により,従来の PfGA よりも性能が高まったといえる. 参考文献 6. 考察 実験結果の表 1 からわかるように,PfGA が 最も良い結果とり,昨年度までの結果とは異な った.昨年度までの実験では GAAP2 が最も優 れていたが,これは 1 世代ごとの評価回数を各 世代の最後に集団サイズ分数えるという計算 だった.今年度は,評価回数の数え方を関数問 題を通った回数として実験を行った.この結果 から,PfGA が GAAP2 に比べ,無駄の無い探 索を効率よく行っていると考えられる.本研究 では,GAAP2 の集団サイズを減らし,効率の 1) 澤井秀文,木津左千夫,遠藤哲郎:「パラメータフリ ー遺伝的アルゴリズムと定常状態遺伝的アルゴリズム との性能比較」電子情報通信学会論文誌 D-ⅡVol.J81-D-ⅡNo.6 pp.1455-1459(1998 年 6 月) 2) 木津左千夫,澤井秀文,足立進:「可変な局所集団の 適応的探索を用いた PfGA とその並列分散処理への拡 張」電子情報通信学会論文誌 D-ⅡVol.J82-D-ⅡNo.8 pp.512-521(1999 年 3 月) 3) 白澤 敦:「適応的に集団サイズが変動する遺伝的ア ルゴリズムの改良」岩手県立大学ソフトウェア情報学 部創業論文(2003 年 3 月)