進化ロボティクスにおける人工神経回路網の設定法に関する考察

Initialization Methods for Neural Networks in Evolutionary Robotics
片田 喜章（摂南大）
Yoshiaki Katada, Setsunan University, katada @ ele.setsunan.ac.jp
This paper investigates the methods for setting initial values to the weights of neural networks in evolutionary robotics. Three types of initialization methods are employed, one is the standard random
initialization method and the others are based on the feature of output for a node of neural networks
according to the input dimensions. Goal reaching problem is employed for a robotics control problem.
The results ran contrary to expectations.
Key Words: evolutionary computation, artificial neural networks, evolutionary robotics

1

はじめに身体性認知科学の 1 領域として，進化計算の高い探索能力を利用し人工神経回路網 (ANN) をコントローラとして形成していく進化ロボティクス (ER) がある [1]．ER では，ANN の種類・設計対象の分類やそれに対して有効な進化計算法の提案 [4] など理論的な研究がなされている．しかし，ANN の一般的な設定法に関しては，統一的な知見は得られていない．それらには，例えば，結合荷重値の定義域・中間層のノード数などがある．
一方，パターン分類や関数近似などのいわゆる教師あり学習に適用される ANN では中間層のノード数や結合荷重の初期値など誤差逆伝播法の使用を背景に多くの理論的研究がなされている．
そこで本研究では，結合荷重の初期値設定に着目する．
進化計算による ANN 設計では，初期結合荷重値をランダムに生成し，その後は進化計算の探索能力に託すというアプローチが一般的である．しかし，なんらかの初期設定によって，進化速度が向上したり，より良い性能を示す ANNが得られたりする可能性がある．本稿では，教師あり学習用に提案されている下平の初期値設定法 [2] と山田の方法[3] を ER に適用し，初期値をランダムに生成する場合とそれぞれ比較を行う．

2ANN の初期設定法

2.1

ノードにおける関係式

入出力関数としてシグモイド関数を考える．ANN のあるノードが I 個の入力をもつときシグモイド関数はつぎのように記述される．

yζ

activeregionsaturatedregion=f (ζ) ==IX

1
1 + exp(−ζ)

wi xi + w0

(1-a)
(1-b)

1-ε
sigmoid functiony0.5

ζε-1f (ε)

0-1f (1-ε)

Fig. 1: Sigmoid function

シグモイド関数は，図 1 のように ζ = 0 の近傍で線形に近く，|ζ| が大きくなると 1 または 0 に漸近する．本稿では，ζ = 0 の近傍の範囲を活性領域，出力が 1 または 0 に漸近する範囲を飽和領域と呼ぶこととする．
あるノードに対する入力空間は I 次元ユークリッド空間となり，その入力値の組は必ず入力空間内の超立方体内に存在する．入力範囲を 0 から 1 とすると超立方体の対角線の長さは次式で与えられる．
√D= I
(2)
式 (1) において y の値が σ のとき，y = f (ζ) = σ とPIなり， i=1 wi xi + w0 − f −1 (σ) = 0 と記述できる．これは結合荷重によって決定される入力空間における超平面（Lp (σ) と表す）となる．超平面 Lp (1 − ǫ) と Lp (ǫ) の間の距離 d および単位超立方体の中心 C と活性領域中央の超平面 Lp (0.5) との距離 rc (図 2) は，それぞれ次式で表される．

d =i=1

ただし，xi はノードへの入力，wi は結合荷重，w0 はバイアスであり，y ∈ [0, 1] となる．

saturatedregionrc=f −1 (1 − ǫ) − f −1 (ǫ)
PI( i=1 wi2 )1/2
PI−1(σ)i=1 wi xi + w0 − fPI( i=1 wi2 )1/2

(3-a)

(3-b)

x2

GOAL
1CrcdD
Ox1

1
Lp(1-ε)Lp(0.5)

Fig. 4: Experimental setup for a simulated environ-Lp(ε)

ment
たすようにバイアス w00 を以下のように求める．

Fig. 2: Two-dimentional input space

w00 = −0.510.5d << Dd>Dd >> D00Fig. 3: Gradients of sigmoid function

2.2

結合荷重の初期値と中間ノード数の設定

d ≪ D の場合，入力範囲の超立方体に対し活性領域の幅は非常に狭くなる (図 3)．このとき，ほとんどの入力に対し出力は 0 または 1 付近となる．一方，d ≫ D の場合，入力範囲の超立方体に対し活性領域の幅は非常に広くなるものの，超立方体の上下界付近で出力は 0.5 となる．
以上を考慮して，下平 [2] は ANN のノードが情報伝達機構として有効に機能するために，誤差逆伝播法を用いる場
合の結合荷重の初期値は，(i) 活性領域の幅 d が入力空間の対角線の長さ D よりも大きく (d > D)，(ii) 超平面 Lp (0.5)
が入力空間の中心を通る (rc = 0) ように設定することを提案している．まず，(2)(3-a) 式より d = µD (µ ≥ 1.0) とおき，w̄ を以下のように定義する．
w̄ =f −1 (1 − ǫ) − f −1 (ǫ)µI(4)

そして，初期結合荷重 wi0 (i = 1, · · ·) を以下の範囲で一様乱数として生成することにより (i) を満たす1 ．

p1−γ
p−w̄ 1 + γw̄

p1+γp0≤ wi ≤ −w̄ 1 − γ≤ wi0 ≤ w̄

(5-a)
(5-b)

w の右肩の添え字 0 は初期値であることを示す．

wi0(6)

i=1

中間層のノード数は任意であり，各ノードに関して上述の設定を行うことを推奨している．以下，下平手法とよぶ．
山田 [3] は，下平の考え方 (i)(ii) に加えて，(iii) 超平面
Lp (0.5) の向きが入力空間の対角ベクトルの向きと一致するように設定することを提案している．入力空間が I 次元のとき，入力空間の対角ベクトルは 2I 組存在することか
ら，中間層のノード数を 2I 個用意し，各ノードで Lp (0.5)の向きを対角ベクトルの向きに一致させ，その要素の大きさを w̄ とする．また，初期設定として各モータ出力の選択確率は等しいことが望ましいと考え，出力層においては，結合荷重の初期値を 0 に設定している．以下，山田手法とよぶ．

3

計算機実験

3.1

タスクとシミュレーションモデル

本稿ではロボット制御問題の 1 つであるゴール到達問題において 2 節で示した初期設定法それぞれについての性能を検証する．図 4 にゴール到達問題の概略を示す．ロボットに搭載する距離センサは図に示す距離まで測定が可能であり，物体までの距離と反比例する値を出力するように設定する．ロボットの移動機構を左右二輪独立駆動型と仮定し，その中心位置と姿勢は両車輪の周速度から幾何学モデルを用いて計算する．モータ出力 (周速度) は ANN の出力値に車輪の最大周速度をかけることによって求める．
ロボットは，より早くゴールに到達することを目的とする．ロボットの初期位置を図 4 の環境における左下，ゴールの位置を右上にする．試行はロボットがゴールに到達するか，到達せずに 200 ステップ経過したときに終了する．
ロボットの初期姿勢を変えた試行を 3 回行い，次の適応度関数を用いて適応度を計算する．

ただし，γ は 0 < γ < 1 の定数である．また，(ii) を満1

IX

F itness =1
N umT rials

N umTXrials
k=1(1 −Step) (7)M axStepここで，N umT rials は試行回数 (3) であり，M axStep は200 とする．

3.2

実験設定

ロボットの制御器として，フィードフォワード型 ANN を用いる．入力ノード数は Ns = {3, 4, 5, 7} (距離センサ数，図 5)，中間ノード数は Nh = {1, 2, 3, 2Ns } と変化させる2．
出力ノード数は No = 2(モータ数) とする．
進化計算として拡張型 GA の 1 つであり ANN の設計に対し有効性が確かめられている Operon GA(OGA)[4] を用いる．ANN の結合荷重 w を変数とし，−6 ≤ w ≤ 6 の範囲で 10 ビット・バイナリコーディングを行う．したがって，(5)(6) 式を満たす初期結合荷重を設定する際にはバイナリコーディングによる量子化誤差を若干含むことになる．
OGA の遺伝的操作・設定の詳細については文献 [4] を参照
されたい．選択法としてトーナメント選択を用い，エリート戦略を適用する．個体数を 50，世代数を 2000 とし，各計算回数を 10 回とする．
本研究では，2 節で述べた初期結合荷重値を初期世代の個体群に対してのみ適用する．初期結合荷重値に関するパラメータは文献 [2][3] の推奨値をもとに γ = 0.4, ǫ =0.01, µ = 2.0 と設定する．また，各手法の性能を比較するために，初期結合荷重値 w0 を上述の定義域内 [−6, 6] でランダムに生成する方法（以下，ランダム手法とよぶ）も実施する．ここで，3 手法の違いは初期個体群の構成のみである．また，各結合荷重値は初期世代ののち，遺伝的操作により −6 ≤ w ≤ 6 の範囲で変化する．そして，適応度の改善の速度（以下，進化速度とよぶ）および最終世代で示される最大適応度 (以下，最大適応度とよぶ) の 2 つの観点から結果を検証する．

3.3

実験結果

図 6, 7 に各初期設定を用いた場合の最大適応度の推移を示す．図中，r8, s8, y8 はそれぞれ初期値をランダム手法，下平手法，山田手法により生成したことを表し，数値は中間層のノード数 Nh を表す．また，山田手法は Nh が固定であるため，この結果を比較の基準として用いる．Nh が2Ns でない場合は進化速度・最大適応度とも良い結果を示していない．Nh が 2Ns である場合，ランダム手法と山田手法は進化速度・最大適応度ともほぼ同じ結果を示す．一方，下平手法と山田手法を比較した場合（図 7），Ns = 3, 4のときはほぼ同じ結果を示し， Ns = 5, 7 と少し大きくなると進化速度・最大適応度とも下平手法が良い結果を示さない．同じ Nh では，ランダム手法は下平手法と比べて進化速度ではより早く，最大適応度は同程度となっている．
以上の結果より，本実験では中間層のノード数の設定が結果に大きな影響を与えており，初期結合荷重値の設定はあまり影響を及ぼしていないことがわかる．中間層のノード数の影響はフィードフォワード型によるところが大きいように思われる．初期結合荷重値に関する結果は，教師あり学習で得られている結果 [2][3] と異なるものとなった．
下平と山田の方法は誤差逆伝播法，つまり，最急降下法の使用を前提としており，探索的には局所解を通過すれば必ずそこに収束する．したがって，局所性のないところから探索を始めることが望ましく初期値を丁寧に設定することが重要となる．本研究のバイナリーコーディングを採用した GA では遺伝子型空間での近傍が表現型空間 (結合荷重値) での近傍になるとは限らないこと，および，GA(正確には OGA) の探索が局所探索のみではなく，随時大域探索といえるような特徴 [4] をもつことから本実験で得られたような結果になったのではないかと推測する．

4

おわりに

本稿では，ANN を用いた教師あり学習用に提案されている下平 [2] および山田 [3] の初期値設定法を ER に適用し，初期値をランダムに生成する場合とそれぞれ比較を行った．各手法とも中間層のノード数が非常に大きい場合にパフォーマンスが良く，ランダムに生成する手法は下平手法よりも良く，山田手法と同程度であることがわかった．
本稿ではフィードフォワード型 ANN について考察した．
リカレント型についても今後，同様の調査を行いたい．

文献[1] Nolfi, S., and Floreano, D.: Evolutionary Robotics:
The Biology, Intelligence, and Technology of SelfOrganizing Machines, MIT Press, 2000.
[2] 下平, ”ニューラルネットワークにおける誤差逆伝播法の学習性能向上のための重み初期値の設定方法”, 情報処理学会論文誌, Vol.35, No.10, pp.2046-2053, 1994.

(a) 3(b) 4(c) 5(d) 7Fig. 5: Number of the proximity sensors equippedwith a mobile robot

山田手法では Nh = 2Ns と固定して実験を行うため，その他の手法でも 2Ns を Nh の候補として含める．
2[3] Yamada, K. ”Reinforcement Learning using Sigmoid Networks and Griddy-Gibbs Sampler for Mobile Robots”, Proceedings of Joint 5th International
Conference on Soft Computing and Intelligent Systems and 11th International Symposium on Advanced Intelligent Systems, pp.716–721, 2010.
[4] 片田，大倉, ”ニュートラルネットワークを含む適応度景観における遺伝的アルゴリズムの進化ダイナミ
クス –進化ロボティクスでの検証”，システム制御情報学会論文誌, Vol. 21，No. 2，pp. 31–39, 2008.

0.7

0.6

0.6

0.5

0.5

0.4Fitness

Fitness

0.7

y8
r1
r2
r3
r8

0.3
0.2
0500

1000
1500
Generation

0.4

y16
r1
r2
r3
r16

0.3
0.2
2000

00.7

0.7

0.6

0.6

0.5

0.5

0.4

y32
r1
r2
r3
r32

0.3
0.2
0500

1000
1500
Generation

2000(b) Ns = 4

Fitness

Fitness(a) Ns = 3500

1000
1500
Generation

0.4

y128
r1
r2
r3
r128

0.3
0.2
20000(c) Ns = 550010001500
Generation

2000(d) Ns = 7

0.7

0.7

0.6

0.6

0.5

0.5

0.4

Fitness

FitnessFig. 6: Maximum Fitness for each generation with the random method and Yamada’s method

y8
s1
s2
s3
s8

0.3
0.2
0500

1000
1500
Generation

0.4

y16
s1
s2
s3
s16

0.3
0.2
2000

00.7

0.7

0.6

0.6

0.5

0.5

0.4

y32
s1
s2
s3
s32

0.3
0.2
0500

1000
1500
Generation(c) Ns = 51000
1500
Generation

2000(b) Ns = 4

Fitness

Fitness(a) Ns = 3

500

0.4

y128
s1s2
s3
s128

0.3
0.2
2000

050010001500
Generation

2000(d) Ns = 7

Fig. 7: Maximum fitness for each generation with Shimodaira’s method and Yamada’s method