２分木構造の Actor-Critic による
２自由度ロボットの強化学習○木村 元， 小林 重信
東京工業大学 大学院総合理工学研究科
Reinforcement learning in 2 degree of freedom robots using binary-tree actor-critic algorithms○ Ha jime Kimura,

Shigenobu Kobayashi

Interdisciplinary Graduate School of Science and Eng., Tokyo Institute of Technology
Learning control in real world applications requires dealing with both continuous state andseveral dozens or more of actions. For handling several dozens of actions, not only the techniques of action
value approximation but also exploration strategies are essential. A binary tree action selector using anactor-critic algorithm is promising for such problems. This paper investigates properties of the binary tree
action selector using the actor-critic through learning tasks in real robots that have 2 degree of freedom.
Abstract:

1 はじめに
強化学習は，ロボットの挙動を自ら改善したり知識の欠落を自ら補うための接近法として有望である．実環
境のロボット学習制御において，繊細な制御を行うた
めには連続で膨大な状態空間の扱いが求められると同時に，多数の行動選択の学習も求められる．連続または膨大な状態空間を扱うための方法としてなど の関数近似やな方法を用いて状態空間を汎化する接近法が確立されている．しかし多数の行動を扱うためには，を汎化する技術だけでなく，行動選択や探査戦略について
も特別の工夫が必要である．

(A)

CMAC[8]
instance-based[2]
action value(B)

Figure 1: 学習対象としたロボット機構とその模式図．
A はボデ ィから２節リンクアームが張り出す構造を持ち，B はボディにねじりと曲げを行う構造を持つ．
Q-learning[9] や SARSA アルゴ リズムと共によく 各ロボット後方（ 写真右側）に見えるのは移動距離用いられるε-greedy 戦略やボルツマン選択戦略は仕計測器である．

組みが単純なのでよく用いられ，行動数が少ない場
合は強力である．しかし これらは行動の数が増加す
アルゴ リズム
ると効率が悪くなる．これは，全ての行動を区別な ２分木構造の行動選択器とを組み合わせた方法がある．本論文では上くフラットに行動選択を行っていることに起因する．
記の手法を２自由度ロボットの学習へ適用し，フラッ
われわれは日常生活において，たとえば ハンドル トな行動選択方法との比較を通じて有効性を示す．
を操作する場合「右に回す」あるいは「左に回す」のどちらかを選択した後「少しだけ回す」あるいは「普通に回す」を選択するといった具合に，しばしば階層 2
２自由度ロボット の学習問題
的に行動を選択することで効率良く意思決定を行っている．このとき無意識に「 右に少し回す」と「 右に示すように，モータを２個搭載した２自由度に普通に回す」を「 右に回す」という上位の行動にの機構を持つロボット および に対し，完全に同よってグループ 化していると考えられる．実環境に一のアルゴ リズムを適用し，効率よく前進する動作
おける学習問題の多くはこのように行動空間に位相の獲得を試みる．エージェント コントローラ が獲構造が存在するため，物理量的に近接・類似する行動
得すべき制御規則は，現在の関節の角度を状態入力
をグループ 化することで容易に階層化でき，効率的として与えられたとき，前進するような動きとなるな意志決定が可能である．このように多数の類似しようにモータの目標値とすべき関節の角度を出力すた行動を階層的に効率よく扱う強化学習方式として，

actor-critic[5][1] [8]

Fig.1

A

B
(

)

ることである．ロボットの学習目標は，効率よく前進することなので，各時刻におけるボディの前進速
度をエージェントが報酬として受け取るよう設定する．エージェントとロボット 環境 は以下のやりと
りを行う．

(

Actor

st -

)

at

確率的政策 6reinforcement for at

rt + V^ (st+1 ) V^ (st ) TD-error

1. エージェントはロボットの関節の角度 ;  を
1エージェントst2

環境の状態として観測する．

2. エージェントは行動出力として関節モータの角- Critic V^ (s) 

状態観測度の目標値 a1; a2を出力する．

rt

報酬

行動

環境

?

3. ロボットは目標角度の方向へ各モータを動かす．
Figure 2: 一般的な actor-critic アルゴリズムの枠組．
4. 約 0.2 秒後，ロボットはボディが移動した距離を計測し，その値を報酬とする．

れるので，その行動を選択する確率を減らすというは本論文で用いたアルゴリ
処理を基本とする．
ズム
を示す．

Fig.3
[4]
状態観測である関節の角度 ;  および行動出力であCritic における処理手順は Fig.3のステップ 3 からる関節モータの角度の目標値 a ; a は，それぞれ 0 か 5 までに示されている．パラメータv は TD( = v )ら 7 (または 0 から 15) までの整数値をとる．報酬の の適正度の履歴を特徴づける．vが 1 に近い場合，環値は 128〜127 の整数値をとり，ボデ ィが移動しな 境の非マルコフ性に対して頑健になる．v を適切ない場合は 0 である．
値にすると学習を早める効果もある．
関節の駆動モータとし て模型用サーボモータを用
政策は actor において関数として明示的に表現さいたため，本実験における状態観測 ;  は，直前の れ，政策パラメータを value 関数の勾配によって更ステップにおいてエージェントが出力した行動 a ; a
新する．観測 s においてエージェントが行動 a を選択に等しい値とした．よって，エージェントが直前の する確率を政策と呼び，関数 (a; ; s) で表す．エー
ステップで出力した値とは大きく異なる値 (値の差が ジェントは内部変数を調節することにより確率的政
おおむね 3 以上) を出力した場合，モータの応答が追 策を変える．
い付かないため，エージェントが観測する角度状態
Fig.3のステップ 4,5 は actor の処理手続きである．
とロボットの真の角度とが 食い違う隠れ状態問題を
適正度 eは政策パラメータが実行した行動 atに関与生じやすい．
したインパクトを表している．パラメータは actorの適正度の履歴の性質を定めるが，その性質は TD()の場合とほぼ同等である (詳しくは文献 [4] 参照)．
3 強化学習アルゴリズム
5. ステップ 1 に戻って繰り返す．
1

2

1

2

1

2

1

3.1

2

3.2

Actor-Critic アルゴリズム

２分木構造の確率的行動選択

Actor-critic 学習システムは，政策反復法 (policy iter- まず２行動の場合に用いられる Bernoulli semilination) の一種であると言われている．政策反復法は状 ear unit について紹介する．Fig.4の確率変数 y 2
態評価と政策改善を交互に繰り返す．Actor は，状態 f0, or 1g は分布 f に従い，Pr(y = 1) = f またはPr(y = 0) = 1 f のように振舞う．エージェントはから行動への確率分布である確率的政策 () に従って行動を実行する．Critic は，actor 現在の状態を特徴ベクトル (x ; x ;    ; xi;    ; xn) にの政策のもとでのそれぞれの状態の評価値 (value) を よって観測する．分布関数 f は以下に与えられる：推定する．Actor は，環境から直接受け取る報酬と，
1P
f=
(2)
critic で推定する評価値から計算される TD エラーを
1 + exp ( i i xi) ,手がかりに政策を改善する (Fig.2)．TD エラーが正
stochastic

policy1の場合，行動を実行した結果，より評価値の高い状態へ遷移したと考えられるので，その行動を選択する確率を増やす．逆にエラーが負の場合，行動を実行した結果，より悪い状態へ遷移したと考えら

TD

2

ただし xiは状態入力の特徴ベクトルの要素，iは政策パラメータの要素を表す．エージェントは政策パ
ラメータの調節により挙動を改善する．エージェン
トは行動 または を選択し，報酬 rを受け取る．そ

1

0

 1.

(

)

状態 stを観測し，確率分布 at; ; st に従って行動 atを選択／実行する．

2. 報酬 rtを受け取り，遷移後の状態 st を観測して以下の TD-error を計算する．
(TD-error) = rt + V^ (st ) V^ (st) , (1)(0   1) は割引率，V^ (s) は critic が+1+1推定した割引報酬の期待値を表す．

3. TD 法を用いて critic のV^ (s) を更新する．
@ ^ev (t) =V (s ) ,@w t
ev (t)
ev (t) + ev (t) ,w(t) = (TD-error) ev (t) ,w
w + v w(t) ,ただし ev はV^ (s) のパラメータ wの適正度，ev はその適正度の履歴， vは学習率を表す．

=1 
:X XX=X0 XXzfe (t)e (t)
(t)


=
=



Figure 3: Actor と critic の両方に適正度の履歴を用
actor-critic アルゴリズム．

いる

行動 a1を実行y

行動 a0を実行のとき政策パラメータの適正度の式で計算される．

(eligibility) は以下= @@ i ln Pr(実行された行動)( @= @@ lnln(1f f ) ifif yy == 10@= (y f ) xi
(3)
Fig.5は Fig.4を多段に拡張し，４行動の場合の２分木
行動選択方法の例を示す．葉ノードはそれぞれ行動に対応する．それ以外のノードは Bernoulli semilinear
unit (Fig.4) によって構成される．理論上，Fig.5のeii

確率的政策関数は以下のように記述される．

8
>
f1 f2
>
>
< f (1 f ) (a; ; s) = > (11 f ) f2
1
3>>
: (1 f ) (11a = a1a = a2a = a3a = a4

f3 )(4)

このとき f1の適正度は以下の式で与えられる：@ln (a; ; s) =@f1

ただし e は政策パラメータの適正度，e はその適正度の履歴，  は学習率を表す．

5. 適正度の履歴を以下のように割り引く．
ev (t + 1)
v ev (t) ,e (t + 1)
 e (t) ,ただし v および  (0  v ;   1) はそれぞれ critic と actor の割引率である．
6. 時刻を t t + 1 に進めてステップ 1 へ

yFigure 4: Bernoulli semilinear ユニット．確率変数
y 2 f0; 1g は分布 Pr(y = 1) = f に従う．

4. TD-error で actor の行動選択確率を更新@ ln (at; ; st) ,@e (t) + e (t) ,(TD-error) e (t) , +  (t) ,



8
>
1=f1
>
>
< 1=f
1
>
1
=
(1
>
>
: 1=(1= f y(1 ff ) ,1

2 f0 1g

f1 )
f1 )

1

a = a1a = a2a = a3a = a4

1

1(5)

ただし y1; はユニット f1が選択した値を表;を式 のシグ
す．ここで分布関数 fj j
モイド 関数で与えるもととする．式 と式 より，f1の政策パラメータの適正度は以下のようになる．

( = 1 2 or 3) 2
3 5

@f @
@
 (a; ; s) = 1
ln (a; ; s) = (y1 f1)xi .
@i@i @f1
同様に f2や f3の適正度は以下のようになる．
8>1=f2
a = a1>>< 1=(1 f ) a = a@22ln (a; ; s) = > 0
a
=
a
@f2
3
>
>
: 0
a = a4( y f
2
2f2 (1 f2 ) if f2 is active



=

0

otherwise.

 
64 (
* Pr( ) =
1 
256)

H
1
H

j
H
 0 Pr( ) = (1 )@@0 

1 * Pr( ) = (1 )
@ 
HHH

)
0 j Pr(= (1 )(1 )
f2

f1

f3

a1

a1

f1 f2

a2

a2

f1

a3

a3

a4

a4

f2

f1 f3

f1

f3

1. 最上位ノードにおいて f の確率で 1 を選択(または 1 f の確率で 0 を選択)．選択し1

1

2. 次のノードにおいても同様に f または fの確率で 1 を選択，さもなければ 0 を選択
3

j



(

j)

Figure 5: 行動が 4 個の２分木行動選択の処理例と確率的政策表現．fiは確率分布関数を表す．この処理の項目 1, 2, 3 を Fig.3 の項目 1 へ適用し，項目 4 をFig.3 の項目 4 における適正度の計算に適用する．
(

(y
0

2

f2 )xi2

以上より，各ノードの計算処理はローカルな情報だけで実行できる．２分木のルートノードより葉ノード までの選択されたパス上の適正度は単純に yj fj xiで与えられ，それ以外のノード では になる．この性質は木のサイズが変わっても全く同じである．必
要なメモリ容量 ノード 数 は 行動数
に等しい．

(

(

4

実験

4.1

実験設定

)

)

1

=1

=1

8

(

16

)
88 =

=1

(6)

(

[7]

Pr(aj js) xi if aj 6= ak ,(1 Pr(aj js)) xi if aj = ak .
これらの処理を Fig.3中の actor の部分と置き換えるだけでフラットな行動選択の actor-critic になる．
e (t) =
ji

実験結果

200

移動距離を計測するため１回転
パルスのロータ
リーエンコーダに直径の車輪を付け，パルス個数を報酬の絶対値，回転方向を報酬の符号とし て計測した．報酬
パルスは約の距離になる．
ステップの学習を行った．実時間で約実験は分である．本実験では割引率: に設定した．

5cm

3000

1000

80cm
=09

8.5

学習によってエージェントが得た報酬の累積，すな
わち初期位置からロボットが移動するようすをに示す．ここで注目すべき点は，状態空間が，行動空間がより全状態 行動
ペアが組あるにもかかわらず，２分木行動選択
ではその半分以下のステップ数でほぼ 行動を獲得している点である．フラット行動選択の場合には，学習アルゴ リズムやパラメータが同じであるにもかかわ

7, 8, 98  8 = 644092

エージェントは各関節毎に 種類 または
種類 の目標値のうち１つを選択するため，２関節で

行動 ak を実行した場合の政策パラメータの適正度は
以下のように計算する ：if f is active 4.2
otherwise.
0

2

[8]
actor

= 1 )Pn
exp(
Pr(ak js) = Pm exp (i Pnxixkii)ji )ji



よって f2の政策パラメータについての適正度は@f2 @ln (a; ; s) =@i @f2

CMAC[8]125

Actor-critic
Boltzmann

j

j (1

[0 1]
5

提案手法を既存のフラットな行動選択方法と比較するため，における代表的な離散的行動
選択方法である
選択を用いた，提案
手法で用いるのと同じ n 次元状態観測ベクトルが与えられ，m 個の行動がある場合，では n m
個の政策パラメータ変数ji ただし jm およびその適正度の履歴を保持する n m 個の変数e jiを用意する．ある行動 ak を以下の確率で選択する：

し，選択した数字のリンクの方向へ進む処
理を葉ノードにたど り着くまで繰り返す．

3. たど り付いた葉ノード の行動 a を実行
4. 全てのノードについて以下の適正度を計算：( y f@
fj is activeln (a; ; s) = 0f f ifotherwise,@fj
yj 2 f0; 1g はノード fj の出力を表す．

64 (

1

55

た数字のリンクの方向へ進む．

2

16  16 = 256)

コ またはの行動を扱うことにな
コ またはる．フラットな行動選択では，これらの行動を区別なく選択する．２分木の行動選択を行うアルゴ リズムでは，ルートノード において関節１について上半分または下半分の行動集合ど ちらかを選択し，第２層では関節２について上半分または下半分の行動集合を選択する．第３層では再び関節１について第 層で選択した集合のうち上半分または下半分を選択し ，第４層では関節２について同様に選択するといった具合に２分木の深さに対して行動の次元を交互に対応させる．状態入力は 次元の連続値として ; に正規化し，によっのタイルを 枚重ねた個の基底によってて特徴ベクトルを生成した．

8  8 = 64

Fig.6,
-

6000
5000
5000

Accumulated Reward

Accumulated Reward

4000
4000
CmacTree8x8A2
3000

CmacTree8x8B2
2000

3000
CmacFlat8x8A3_TD0
CmacFlat8x8B3_TD0

2000

CmacTree8x8B3_TD0
1000

1000

CmacFlat8x8A2
0
CmacFlat8x8B2

0
0

500

1000

1500
Learning Steps

2000

2500

CmacTree8x8A3_TD0

3000
-1000
0

500

1000

1500
Learning Steps

2000

2500

3000

Figure 6: 学習によるロボット A，B の移動距離の変化．行動数 8  8, 学習率 v = 0:1， p = 0:1, 割引率 Figure 8: 全手法において actor と critic 共に適正度= 0:9, v = 0:9, p = 0:9．CmacFlat8x8A2 はフラ の履歴を使わない場合の学習によるロボット A，B
ット行動選択をロボット A に適用，CmacFlat8x8B2 の移動距離の変化．行動数 8  8, 学習率 v = 0:1，
はフラット 行動選択をロボット B に適用，Cmacp = 0:2, 割引率 = 0:9, v = 0, p = 0
Tree8x8A2 は２分木行動選択をロボット A に適用，
CmacTree8x8B2 は２分木行動選択をロボット B に適用した結果である．

6000
6000

CmacTree16x16A3
CmacTree8x8A3

5000

Accumulated Reward

Accumulated Reward

5000

CmacTree8x8B3

4000

3000

CmacTree16x16B3

4000

3000

2000
CmacFlat16x16A3
2000
CmacFlat8x8A3
1000
1000
CmacFlat16x16B3

CmacFlat8x8B3
0
0

0
0

500

1000

1500
Learning Steps

2000

2500

500

1000

1500
Learning Steps

2000

2500

3000

3000

Figure 9: 行動数 16  16 に増加した場合における学
Figure 7: 学習によるロボット A，B の移動距離の変 習によるロボット A，B の移動距離の変化．学習率
化．行動数 8  8, 学習率 v = 0:1， p = 0:2, 割引率
v = 0:1， p = 0:2, 割引率 = 0:9, v = 0:9, p == 0:9, v = 0:9, p = 0:9．CmacFlat8x8A3 はフラ 0:9．CmacFlat16x16A3 はフラット行動選択をロボッ
ット行動選択をロボット A に適用，CmacFlat8x8B3 ト A に適用，CmacFlat16x16B3 はフラット行動選択
はフラット 行動選択をロボット B に適用，Cmac- をロボット B に適用，CmacTree16x16A3 は２分木
Tree8x8A3 は２分木行動選択をロボット A に適用， 行動選択をロボット A に適用，CmacTree16x16B3 はCmacTree8x8B3 は２分木行動選択をロボット B に ２分木行動選択をロボット B に適用した結果である．
適用した結果である．

らず，学習が半分程度しか進まないか，途中で局所解に捕まってし まい，前進しなくなるかのど ちらかである．
と では学習率が異なるだけだが，２
分木行動選択ではど ちらでも安定して学習しているのに対し，フラット行動選択の場合には，のように学習に失敗するなどパラメータに敏感である．

Fig.6 7Fig.7はさらに高次元の行動出力を行う場合の実装方法についてこれらとの比較検討を行う．

References

Barto, A.G., Sutton, R.S. & Anderson,
Fig.8は，２分木行動選択だが，actor と critic 共に [1] C.W.:
Neuronlike adaptive elements that can
適正度の履歴を用いない場合である．グラフより，ほsolve diÆcult learning control problems,
とんど 前進できない局所解に陥っていることが 分かる．Fig.7との設定の差異は適正度の履歴の有無だけ, vol. SMC{13, no.5, pp. 834{846 (1983).
であることより，環境の非マルコフ性が影響していると考えられる．特に全手法がロボット A において
[2] 深尾 隆則，稲山 典克，足立 紀彦：正則化理論を著しく性能劣化している．よって Q-learning 等の非用いた連続的状態と行動を扱う強化学習，システ
マルコフ性に弱いアルゴ リズムでは学習できないと
ム制御情報学会論文誌，Vol.11, No.11, pp.593{
考えられる．
599 (1998).
行動が Fig.7の 8  8 から Fig.9の 16  16 へ増加[3] 堀内 匡，藤野 昭典，片井 修，椹木 哲夫：連した場合，木構造の actor-critic では性能があまり変続値入出力を扱うファジィ内挿型 Q-learning の化しないのに対し，フラットな actor-critic では，ロ
提案，計測自動制御学会論文集, Vol.35, No.2,
ボットのタイプや試行によって性能に大きなばらつ
pp.271{279 (1999).
きが生じ，場合によってはほとんど 学習が進まなくなる様子が観察できる．
[4] 木村 元，小林 重信：Actor に適正度の履歴を用いた Actor-Critic アルゴ リズム{ 不完全な ValueFunction のもとでの強化学習，人工知能学会誌,
4.3 実験結果のまとめ
Vol.15, No.2, pp.267{275 (2000).
 Actor-Critic アルゴリズムにおいて，２分木構 [5] 木村 元，小林 重信: 確率的２分木の行動選択を造の行動選択は，フラットな行動選択よりも学用いた強化学習による多数の行動の扱いについ習率や行動の個数などのパラメータ変化に対して，計測自動制御学会 第 27 回知能システムシて頑健である．
ンポジウム，pp.111{116 (2000).
 適正度の履歴を用いない場合は，２分木とフ [6] Morimoto, J. & Doya, K.: Acquisition of
ラットのど ちらの行動選択方法でも学習が進まStand-up Behavior by a Real Robot using Hierない，または局所解へ陥った．問題の非マルコ
archical Reinforcement Learning,
フ性が影響していると考えられる．
, pp.623{630 (2000).
5 おわりに[7] Peshkin, L. & Meuleau, N. & Kaelbling, L. P.:
Learning Policies with External Memory,
本論文では数十種類の多数の行動の扱いが必要な２, pp.307{314 (1999).
自由度ロボットの強化学習問題をとり上げた．２分
木構造の行動選択を行う actor-critic アルゴリズムを[8] Sutton, R. S. & Barto, A.: Reinforcement
適用し ，フラットな行動選択を行った場合との比較
Learning: An Introduction,,を行った．２分木構造の行動選択では，eligibility のThe MIT Press (1998).
計算は各ノードでローカルに極めて簡単に行ことができ，BP のような面倒な情報の伝搬が不要なので， [9] Watkins, C. J. C. H. & Dayan, P.: Techni簡単に規模の拡大を行える．また，フラットな行動
cal Note: -Learning,,
選択よりも，学習率や行動の個数などのパラメータ
pp.279{292 (1992).

IEEE

Transactions on Systems, Man, and Cybernetics

Proceedingsof the 17th International Conference on Machine LearningPro-

ceedings of the 16th International Conference
on Machine Learning

A Bradford Book

Q

変化に対して頑健であることを示した．

actor-critic[6]を関連研究として連続値の行動を扱う
用いる階層的な強化学習として文献 がある．今後

Machine Learning 8