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

意する.各Q値表で利用するセンサ集合をm と考える.Q値表Qmの優先度を pref(m)とする(行2).この優先度に,softmax手法[35]を適用して行動を決定する Q値表を選択し(行8–11),²–greedy手法[35]でロボットが実際にとる行動を決定 する(行13–20).行動後,各Q値表を更新するが,更新式は通常のoff-policy型R 学習と同一である(行23–26,28).さらに,ロボットが実際にとった行動が,各Q値 表でQ値最大であった場合のみ,このQ値表の優先度を更新する(行23,25,27,28).

行27の式では,ロボットの実際の行動と同じ行動がグリーディであるQ値表の 優先度について,そのQ値表の平均報酬の近似であるρが累積されていく.この 処理によって,ρの値の大きい,すなわち期待報酬の大きいQ値表はより選択さ れやすくなる.一方,グリーディに選択した行動の報酬が良くなかったQ値表や,

これまでの行動の結果が良くないQ値表の優先度には,負ないし小さい正の値が 加算されるため,徐々に選択される確率が減っていく.結果として,適切な行動 を決定可能な(すなわち適切な行動が,そのQ値表上でグリーディとなっていた) 回数の多いQ値表が,実際の行動を決定することになると考えられる.

1: Nnumber of actions avairable to the robot 2: pref(m)0, mM

3: Qm(s, a)initial value, mM, s, a 4: t, total, r,¯ r¯0 0

5: sinitial state

6: while t < planned transision timesdo 7: tt+ 1

8: formM

9: π(m)

e

pref(m)

P

m0M

e

pref(m0)

10: end for

11: according toπ(·), select Q-tableQmˆ

which will decide the action

12: nnumber of a, a= argmaxaQmˆ(s, a) 13: foraA

14: if a= argmaxaQmˆ(s, a) then 15: πmˆ(a)1n²+N²

16: else

17: πmˆ(a)N² 18: end if 19: end for

20: choose action ˆaaccording toπmˆ(·), and execute ˆa 21: get reward r, and observe states0

22: totaltotal+r 23: formM

24: Qm(s,ˆa)Qm(s,ˆa) +α[r+γmaxa0Qm(s0, a0)Qm(s,ˆa)]

25: end for

26: if Qmˆ(s,ˆa) = maxaQmˆ(s, a) then 27: pref( ˆm)pref( ˆm) +ψ[rr]¯ 28: end if

29: r¯0 r¯0+κ[rr¯0] 30: r¯00total / t 31: r¯ max(¯r0, ¯r00) 32: ss0

33: end while

34: return argmaxmpref(m)

図 3.1: 最適センサ集合選択のための提案手法の処理.詳細は第3.2.2節本文参照.

1: Nnumber of actions avairable to the robot 2: pref(m), ρ(m)0, mM

3: Qm(s, a)initial value, mM, s, a 4: t, total0

5: sinitial state

6: while t < planned transision timesdo 7: tt+ 1

8: formM

9: π(m)

e

pref(m)

P

M

e

pref(M)

10: end for

11: according toπ(·), select R-tableRmˆ which will decide the action

12: nnumber of a, a= argmaxaRmˆ(s, a) 13: foraA

14: if a= argmaxaQmˆ(s, a) then 15: πmˆ(a)1n²+N²

16: else

17: πmˆ(a)N² 18: end if 19: end for

20: choose action ˆaaccording toπmˆ(·), and execute ˆa 21: get reward r, and observe states0

22: totaltotal+r 23: formM

24: Qm(s,ˆa) Qm(s,a) +ˆ α[rρ(m) + maxa0Qm(s0, a0)Qm(s,ˆa)]

25: if Qm(s,ˆa) = maxaQm(s, a) then

26: ρ(m) ρ(m) +β[rρ(m) + maxa0Qm(s0, a0)Qm(s,ˆa)]

27: pref(m)pref(m) +ξ ρ(m) 28: end if

29: end for 31: ss0 33: end while

34: return argmaxmpref(m)

図 3.2: R学習高速化のための提案手法の処理.詳細は,第3.3.2節本文参照.

4

グリッドワールド実験

提案手法の適用によって,前章で期待した効果が得られることを確認するため,

グリッドワールドを用いた,比較的簡単な設定の実験を実施した.ロボットに与 えた課題は,障害物回避行動の獲得である.この課題は,自律移動型ロボットに とって最も基本的なものの1つである.とくに人工生命系の研究では,学習によっ てロボットに望ましい行動を獲得させる際に,第1に採用されている例がある(例 えば,[27, 26]参照).

4.1 実験設定

4.1.1 行動環境,行動目標及び報酬

設定したロボットの行動環境を図4.1に示す.

ロボットは,図4.1左のSから出発し,図4.1右の4行動のうち1つを選択し,

実行する.したがって,選択し得る行動の集合Aは,

A ={前,右,左,後} となる.

実線は壁を示し,この壁に向かって行動した場合,元の場所に止まるものとし た.ゴールは図4.1左のGであり,到達した場合,報酬1が与えられる.それ以外 の行動の報酬は0とし,すなわち遅延報酬が与えられる環境となる.したがって,

G 8 7

3 4 5 6

2 1 S

⇐ 4¤ ¡£ ¢

図 4.1: グリッドワールド実験における実験環境(左)及びロボットの行動(右). 

得られる報酬の集合Rは,

R ={0,1}

である.ゴール到達後はSに戻って,規定行動回数まで行動を続けるものとした.

また,ロボットには前後左右に4つの近接センサが搭載され,それぞれの方向 に衝突なしに移動可能であれば0,移動すれば壁に衝突する場合1と観測するもの とした.したがって,全センサを用いた場合の観測の集合Oは,

O ={Of, Or, Ol, Ob}, Of,r,l,b={0,1} となる.

この実験は,簡単な内容ではあるが,ロボットはいずれのセンサ(の組合せ)を 用いても,複数の状態において同一の観測しか得ることができない(例えば状態1 と2)ため,部分観測課題となっている.

仮に状態3にいて,後進によって状態2に移動した場合,状態8 と同一の観測 を得ることになり,ロボットはゴールに近付いたのか否かをQ値から判断するこ とが難しい.