Problem Setting

spiral問題の設定を行います。


Training Data
訓練用のデータを入力します。Loadボタンを押してファイルから入力することもできます。サンプルがダウンロードファイルの中に添付されています。
Validation Data
確認用のデータはspiralでは使いません。
Draw Graph
Training DataとValidation Dataをグラフプロットします。
Functions
GPにおいて用いることができる関数を指定します。
Constants
GPの終端記号として使う定数値の設定です。値の範囲と刻みを入力してください。
Variable
変数の名前を入力します。

 

Population
進化の方法を設定します。



Population Size
一世代における人口の数を設定します。
Generation
実行終了する世代数を指定します。
Selection Method
次世代に生き残る遺伝子の、選択方法を指定します。ルーレット、トーナメント、ランダムの3つの方法があります。また、エリート戦略をとる場合は、次世代に残す個体数を指定します。
Restriction of Genes
遺伝子の長さの制限と、はじめの遺伝子の深さを指定します。
Rate of GP Operations
交叉と突然変異の起こる確率を設定します。
Initial Ratio of the Nodes
初期状態の各ノードに関数が入る確率と終端記号(定数・変数)が入る確率を決めます。
Results
結果を表示します。



左上の2つのグラフは、最も適合度の高い個体の適合度とその個体の遺伝子長、またその世代の平均の遺伝子長を表示します。左下には最も適合度が高い個体の遺伝子コードが表示されます。また右のグラフではTraining Dataと得られた遺伝子の表現型を示しています。はTraining Data、はTraining Dataの反転領域、は得られた関数の値(表現型)を表します。
実行結果の例


すべての関数を使用可能にして、Population Sizeを3000、Generationを2000、Tounament方式でエリート数を20%、交叉0.5突然変異0.5のように設定した実行結果です。実行にはふつうのパソコンで1日程度かかります。初期条件によりますが、Best Individualが22というのはかなりよい値です。環境が変わらないので、進化は200程で定常状態に達し、進化のスピードは指数関数的に鈍くなっているのが分かります。


ソフトウェア紹介のページに戻る
 ▼トップページに戻る