ここにはProblem Setting,Population Setting,GPRunの3つのシートがあります。以下それぞれの内容を見ていきましょう。
|
◆Problem
Configuration |
プログラムに解かせる問題の設定を行います。
- Field size……
- 餌を撒くフィールドのサイズの設定です。8から20までの値をとることが出来ます。
- Initial energy……
- アリの初めに持っているエネルギー値です。
- Training Data……
- 訓練データです。フィールドのマスをクリックすることで餌を撒くことが出来ます。アリのス タート地点は赤で、あなたの撒いた餌は緑で示されます。
- Validation Data……
- テストデータです。このデータを使って発生した個体の評価をします。
- Functions/Non terminals……
- GPで使う非終端記号を選択します。次の3つの関数が選べます。
if food is ahead then A else B …もし餌が目の前にあればAを無ければBを実行する。
prog2 A B …Aを実行した後にBを実行する。
prog3 A B C …Aを実行した後にBを実行し、その後Cを実行する。
- Terminals……
- GPで使う終端記号を選択します。アリには、前進(Move forward)右に曲がる(Turn right)左に曲がる(Turn
left)の最大3つの動きが許されています。
|
◆Population
Setting |
GPに使うパラメータの設定をします。
- Number of Population……
- 集団の数を設定します。以下のパラメータは各集団ごとに設定することが出来ます。
- Population Size……
- 個体数を設定します。
- Generation……
- 何世代進化させるかを決めます。
- Selection Method……
- 戦略を決定します。戦略にはルーレット方式(Proportional) トーナメント方式(Tournament)ランダムの3つがあり、オプションとしてエリート戦略をとるかどうかを選択することが出来ます。
- Restriction on Genes……
- 遺伝子の制限を設定します。遺伝子の最大長を決めます。
- Rate of GP Operations……
- 交叉(Crossover)や突然変異(Mutation)の起こる確率を決めます。
- Initial Ratio of the Nodes……
- 初期状態の各ノードに関数が入る確率と終端記号が入る確率を決めます。
- Break Point……
- 設定した値世代ごとに計算を止めることが出来ます。
|
◆Result |
各集団を進化させた結果を示すシートです。
左側にはその世代で最も優秀な個体の適合度や遺伝子長、全個体の平均遺伝子長などがリアルタイムに示されます。右上は最も適合度が高い個体の遺伝子コードで、右下はその世代で最も効率よく全ての餌にたどり着いたアリの動きを示しています。
|