• 検索結果がありません。

シミュレーション条件

第 4 章 最適なノード内容の選択を行う学習進化型 GNP 47

4.6 シミュレーション

4.6.1 シミュレーション条件

シミュレーションの条件をTable 4.1に示す。本章では,比較のため,学習進化型GNP,

進化型GNP,GP,ADF付きGPおよびEPを用いてシミュレーションを行う。

4章 最適なノード内容の選択を行う学習進化型GNP 53

t t+1 time

node i

IDi1

IDip1

......

......

state st

IDimi

......

Qip1

at

node j (=Cip1)

IDj1

IDjp2

......

......

state st+1

IDjmj

......

Qjp2

at+1

reward rt reward rt+1

Cip1

A

A

Fig. 4.4 An example of node transition

4章 最適なノード内容の選択を行う学習進化型GNP 54

Table 4.1 Simulation conditions

GNP-LE GNP-E GP EP

GP-ADFs

the number crossover 120 120 120 ——

of individuals mutation 179 [175] 179 [175] 119 [115] 299 [295]

inversion —— —— 60 ——

elite 1 [5] 1 [5] 1 [5] 1 [5]

program size 61 61 GP: 3,4,5 state 60,30,5

GP-ADFs: main 3,4 input 1,2,3,4 ADF 2,3

Crossover rate Pc 0.1 0.1 —— ——

Mutation rate Pm 0.01 0.01 0.1 [0.01] 0.1

Inversion ratePi —— —— 0.1 [0.01] ——

Tournament size 6

Other parameters α = 0.9 γ = 0.9 ε= 0.1 M = 4 [3] (used in GNP-LE)

[ ]: conditions in Simulation II

Program size: the number of nodes (GNP), max depth (GP), max number of states and the number of inputs at each state (EP).

4章 最適なノード内容の選択を行う学習進化型GNP 55 GNPの構成

Table 4.1に示すように,各個体が持つノード数は61個である。進化型GNPは開始ノー

ド1個と,判定ノードおよび処理ノードの各内容について5個ずつ用意するが,学習進化 型GNPは開始ノード1個,判定ノード40個,処理ノード20個と設定するのみである。

それらの内容IDiは,初期個体生成時にTable 3.1(p. 38)からランダムに選択された値 に設定され,その後,進化によって適切な値に変更される(4.4.2節)。初期個体生成時,

接続遺伝子Cipは,ランダムに選ばれたノード番号(開始ノードと自分自身を除く)に設 定され,Qipはすべて0に設定される。学習フェーズで用いるパラメータは以下のように 設定した。学習率αは,学習を迅速に行うために0.9とし,割引率γは将来の報酬を十分 に考慮するために0.9とし,εは探査と知識利用のバランスを保つ値として0.1を採用し た。M(各ノード内の内容候補の最大数)はM = 2,3,4と変更してシミュレーション を行い,最も良い結果を示したものを採用した。

遅れ時間と1ステップは,第3章と同様に設定した。すなわち,判定ノードの遅れ時間 dipを1,処理ノードの遅れ時間dipを5,ノード遷移の遅れ時間dAip, dBip, . . . を0とし,1 ステップは5以上の時間を費やした時点で終了するものとした。

GPの構成

GPは前章と同じく,ルートノードから終端ノードへ向けて条件分岐を行って行動を決 定する木を用いる。ルートノードと非終端ノードにはGNPの判定ノードを用い,終端 ノードには処理ノードを用いる。ADF付きGPは,GPと同じ終端ノードに加え,{ADF1,

. . ., ADF102}という終端ノードを持つ。また,ADFはGPと同じノードを使う。1ス

テップは,ルートノードから条件分岐を始め,たどり着いた終端ノードの内容が実行さ れるまでとする。遺伝的操作には,交叉,突然変異,逆位を用い,それぞれの操作で生 成される個体数をTable 4.1に示している。各操作の手順は3.6.4節と同様であり,木の 初期化には“full method”と “ramped half-and-half method” [9]を用いた。

2ADF(sub-tree)の数は各個体あたり10個であり,main-treeの終端ノードから呼び出される。

4章 最適なノード内容の選択を行う学習進化型GNP 56 EPの構成

EPは入力として,GNPが判定ノードで得られる情報(前に何があるか等,8種類)を 用い,GNPの処理ノードの内容のうちいずれかを出力するものとした(前進する等,4 種類)。一般的に,EPは全ての状態と入力の組み合わせに対して,出力とノード遷移を 定義する必要がある。そこで,EPとGNPのプログラムの複雑さが,問題に依存してど のように変化するかを議論する。Table 4.2はEPとGNPの各個体が持つノード遷移の数 を表しており,Fig. 4.5は各状態から延びるノード遷移の数を表している。

Case 1は,2個の物体を識別できる1個のセンサを使い,状態数を60とした場合を仮

定している。このとき,EPは120本,進化型GNPは100本,学習進化型GNPは100本 から400本の間で変化する数のノード遷移を持つ。しかし,センサの数および各センサが 判別できる物体の数が増えると,EPのノード遷移の数は指数関数的に増大する(Case2

– Case 4)。一方,GNPの各判定ノードは1種類のセンサしか扱わないため,EPと異な

り,全ての入力の組み合わせを考慮する必要がない。したがってGNPのノード遷移の数 は極端に増大することがない。実際,Case 4はタイルワールド問題に各手法を適用した 場合を示しており,EPの総ノード遷移数は23,437,500個 (= 60 ×58)である。これは非 実用的であるため,本章では,各状態で用いる入力(センサ)の数を予め設定した値に 制限することにし(Table 4.1参照),どの種類のセンサを用いれば良いかを決める突然 変異オペレータを導入した。Fig. 4.6は,状態数を2とし,各状態で1種類のセンサを扱 う場合のEPプログラムの例を表している。状態1への入力は「前に何があるか(JF)」

の情報であり,状態2へは「一番近いタイルの方向(TD)」の情報が入力されている。し たがって,各状態からの出力とノード遷移は,入力の内容に対応してそれぞれ5個設定 される。もし,各状態の入力数が1ではなく2だとすると,出力とノード遷移の数はそれ ぞれ25個となる。

シミュレーションでは,初期個体生成時に,決められた数のセンサをランダムに各状 態へ割り当て,その種類を突然変異操作で変更していく。Table 4.1に示すように,入力 数(センサの数)と状態の最大数は様々な値に設定して,良い結果を示すものを実験的に

4章 最適なノード内容の選択を行う学習進化型GNP 57 求めた。EPは交叉を用いず,突然変異のみで進化を行うが,その内容は以下の通りであ る。{ADD STATE, REMOVE STATE, CHANGE TRANSITION, CHANGE OUTPUT, CHANGE INITIAL STATE, CHANGE INPUT}。最後の操作が本章で導入したもので あり,残りの操作は文献 [41]で使われているものと同じである。