書籍サポート / Support

Excelで学ぶ遺伝的アルゴリズム

What's ART with IEC?(注1)

これは、SBART(注2)と同じような動作をLGPCによって実現したものです。

ARTといってもある種デザインのようなもので、「何か(具体的な物)を描いた絵」というわけではありません。20個のウィンドウに表示された絵の中から自分の好きなものを選ぶと、それを元にした色々な絵が出てきます。それを繰り返すことで、自分の手では描くことの出来ないイメージを表現できるというものです。

これによって、「個人個人の好み」も抽出できます。自分の作った遺伝子をSaveしておくことで、再び同じものを親として使うことが出来るので、自分の好みのタイプを保存しておくことが出来るというわけです。

注1:IECとは、InteractiveEvolutionaryCalcurationの略で、対話型進化計算法と呼ばれています。人が評価を与えることで、計算を進めるので、対話型というわけです。

注2:SBARTとは、創価大学教授の畝見先生が作られたもので、詳しくはこちらに紹介されています。

How to use?

  1. Viewタブの20個のWindowに表示されたものの中で、気に入ったものがなければ、Clearを押します。これによって初期化されます。
  2. 表示されたものの中で気に入ったものがあれば、それをクリックします。クリックすると周りの枠が赤くなり選択されていることが分かります。選択は幾つでも出来ます。
  3. 2の次に、OKボタンを押します。これによって、選択したものを親にして出来た次世代の遺伝子集団が表示されます。
  4. 1〜3を繰り返し行います。

途中で気に入った遺伝子は、SaveやLoadして、表示されたものと交換することが出来ます。

Save&Load

Viewタブ(下のView解説参照)に表示された20個のWindowの一番左上をNO1とし、左から右にNO1〜5、次の段をNO6〜10・・・という順に番号がついています。

保存したい遺伝子の番号(1,2,3,....)を選び、遺伝子の保存をします。

Loadの際には、不要な遺伝子の枠の番号(1,2,3,....)を選び、そこへ必要な遺伝子をLoadします。

ここで、保存されたファイルには、遺伝子の中身が保存されています。

View

ここには、20個のウィンドウがあります。これは、遺伝子の表現型です。

表示の際に、関数に対して、描く座標の原点を決めます。

原点を、枠の左上にします。

原点を、枠の中心にします。(上下左右対称な形が多く見られます。)

一つ以上のWindowを選択している場合のみ押せます。このボタンを押すと、選択されたWindowの遺伝子を親にして、世代交代が行われ、次世代が表示されます。

Windowが選択されていない場合にのみ押せます。このボタンを押すと、遺伝子集団が初期化され、新たな集団が表示されます。

GP Parameters

個体数を設定します。これはwindowの数を同じなので、集団数は20個と決めてあり、変更は出来ません。

何世代進化させるかを決めます。何世代か…と言われても、良いものが出来るまでなので、無限≒10000と設定してあります。これ以上行う場合には、もっと大きい数に変更してください。

戦略を決定します。戦略にはルーレット方式(Proportional) トーナメント 方式(Tournament)ランダムの3つがあり、オプションとしてエリート戦略をとる かどうかを選択することが出来ます。

遺伝子に許される最大長を決めます。

交叉 (Crossover)や突然変異(Mutation)一点交叉(One-pointCrossover)の起こる確率を決めます。

初期状態の各ノードに関数が入る確率と終端記号(定数・変数)が入る確率を決めます。

Results

GPの終端記号としてどんな関数を用いるかを決めます。

GPの終端記号として使う定数値の設定です。値の範囲と刻みを入力してください。

それぞれの個体の遺伝子型を、私たちが普段用いる関数の書き方で表現したものです。