(cache) SGAプログラムでの測定 SGAプログラムでの測定
No. 06, 2001年 7月 16日
片浦 哲平

1  先週からの課題

先週からの課題として があった.期間内に取り組めたものについて解説をする.

2  SGAプログラムでのベンチマーク

作成したSGAプログラムを使ってRastrigin関数の測定を行った. バイナリーコードを用い,選択はルーレット方式,エリート保存はなしで実行した. パラメータを以下に示す.

Table 1: パラメータ
パラメータ12345678
世代数10501001000105010010
個体数1001001001005005005001000
交叉率0.80.80.80.80.80.80.80.8
遺伝子長2020202020202020
突然変異率0.050.050.050.050.050.050.050.05
設計変数22222222

Figure 1: パラメータ1での実行結果

Figure 2: パラメータ2での実行結果

Figure 3: パラメータ3での実行結果

Figure 4: パラメータ4での実行結果

Figure 5: パラメータ5での実行結果

Figure 6: パラメータ6での実行結果

Figure 7: パラメータ7での実行結果

Figure 8: パラメータ8での実行結果

Figure 9: まとめてみました

3  考察

今回の実行結果から,Rastrigin関数では個体数は100よりは500の方が最適解を求めるのに 有効であることが分かった.しかし,世代数においては10世代よりも100,1000世代の方が よいが,100世代,1000世代だけの比較では計算時間の大きな違いがあるのにも関わらず, 精度がまったくよくならなかった.今後はグレイコード,エリート保存等を導入しさらに 実験を行う必要があると思われる. また,実行時間がとてもかかるので,処理効率を考えたプログラムに修正する必要もあるだろう.

4  今後の課題

SGAプログラムの改良と大学院入試の勉強を並行する. SGAプログラムは,DGAプログラムに改良し,MPIを用いて並列化が可能となるようにする.


File translated from TEX by TTH, version 2.92.
On 14 Jul 2001, 11:22.