計測自動制御学会東北支部 第 229 回研究集会 (2006.6.9)
資料番号 229-11

連続状態空間における強化学習
Reinforcement Learning in Continuous State Spaces○釜谷博行 ∗ ，北山数行 ∗∗ ，藤村敦子 ∗ ，阿部健一 ∗∗∗○ Hiroyuki Kamaya∗ , Kazuyuki Kitayama∗∗ , Atsuko Fujimura∗ , Kenichi Abe∗∗∗*八戸工業高等専門学校, **豊橋技術科学大学, ***日本大学* Hachinohe National College of Technology,** Toyohashi University of Technology,*** Nihon University
キーワード : 連続状態空間 (Continuous State Spaces), 強化学習 (Reinforcement Learning),
RBF ネット ワーク (Radial Basis Function Network)

連絡先 : 〒 039-1192 八戸市田面木字上野平 16–1 八戸工業高等専門学校 電気情報工学科
釜谷博行，Tel.: (0178)27-7283，Fax.: (0178)27-9379，E-mail: kamaya-e@hachinohe-ct.ac.jp

1.

はじめに

Agent
State(Observation)

数理心理学の分野で動物の学習行動を記述する

RewardActionEnvironment

数学モデルが 種々提案され ，そのモデルが 学習機
能をもつ工学システムの構築に応用されるように

Fig. 1

強化学習モデルなった。強化学習 1) もそのモデルのひとつである。
すなわち，強化学習は報酬(あるいは罰)という特別し ，細分化し すぎ ると状態数が 多くなり，学習がな情報を手掛かりに ，エージェントが 環境との相遅くなる。一方，荒く量子化すると部分観測環境

互作用を通し てあらかじ め定められた明確なゴ ーとなり，環境にマルコフ性を仮定し ている Q-学習

ルを達成するための行動決定戦略を自律的に獲得など は，その学習性能が 悪化するなど の問題が 生する学習シ ステムと捉えることができる (Fig. 1)。

じ る。そこで本研究では ，関数近似を用いる方法強化学習では ，一般的に 環境モデ ルが 未知で ，として RBF(Radial Basis Function)ネットワーク2)

しかも正解を教えてくれるような教師は存在し なに着目し ，シミュレ ーション 実験を通し てその有い。また，不確実性のある環境，報酬に遅れが存在効性を確認する。

する環境にも適用可能であるという特徴をもつ。
強化学習を実問題へ適用する場合，連続状態を2.

扱う必要がある。これには ，連続状態を離散化しテーブル形式で表現する方法が 考えられる。しか強化学習

強化学習では ，行動する毎に得られ る報酬の合計を最大化するための方策を学習する。各時間ス–1–

φ1

1
0.9

x1

0.8
0.7

w1

0.6

φ2x2

0.50.4

w2

0.3x3

Σ0.2

y0.1
00.2

wk0.4

xn0.6

φκ0.8
1 0Fig. 3
Fig. 20.4

0.20.610.8

単一ユニット の出力例（ガ ウス関数 ）RBF ネット ワーク
置，σk：k 番目のユニットの広がり，ρ：広がり係数

テップでエージェントは状態 sを観測し ，これに基を 表す。Fig.3に 入力が 2 次元の時の単一ユニットづいて行動 aを選択する。その結果とし て報酬 r をの出力例（ガ ウス関数 ）を示す。

受け 取り，新し い状態 s を観測する。強化学習では ，エージェントがある状態においてある行動を学習初期のユニット数K = 0である。初期ユニット の生成は次のように行う。

行うと，将来的に報酬がど れだけ期待できるかを価値関数 Q(s, a)とし て表現する。

Q値の大きさに応じて，エージェントは状態s において実行すべき行動aを決定する。環境と対峙したエージェントは試行錯誤を繰り返し ながら ，割∞
引期待利得 E{ t=0 γ t rt } の最大化を目的とし て，µK ← x, σK ← κdmax ,(3)wK ← ηδ, b ← ηδ, K ← K + 1(4)

ここで ，κは重なり度合いを調整するパラ メータ，

dmax は距離に関するし きい値パラメータの最大値である。

各時点 tで得られる報酬 rt に基づいて Q 値を更新し新たなユニット 追加の条件は ，次式で与える。ていく。ここで ，γ(0 ≤ γ ≤ 1)は割引率を表わす。

|δ| > th and l > dth3.

RBF ネット ワーク

ただし ，δは TD(temporal-diﬀerence)誤差，th は推各状態および 行動に対する Q 値を推定するために，関数近似器として Fig. 2に示すRBF(Radial Ba-定誤差に関するし きい値，lは入力パターン xと最近傍ユニット 間の距離で次式を用いて求める。

l ← min x − µk sis Function) ネット ワークを用いる。

k

入力パターン x ∈ {x1 , x2 , · · · , xn }が 与えられ ると，ネットワークの出力y(x)は次式で計算される。

y(x) =

wk φk (x) + b(6)また，dth は距離に関するし きい値を表す。ユニット追加時の各パラメータ値は次のように設定する。

(1)µK ← x, σK ← κl,(7)wK ← ηδ, b ← b + ηδ, K ← K + 1(8)k

ただし ，wk：k 番目のユニットの重み，φk (x)：k 番目のユニット の出力

x − µk 
φk (x) = exp(−),
ρσk2

(5)

一方，ネット ワーク内のパラ メータの調整は次(2)式で与える。

b：ベースライン ，µk： k 番目のユニットの中心位–2–

wk ← wk + ηδφk (x)

(9)

1.4

f1(x)
f2(x)
f3(x)
f1(x)+f2(x)+f3(x)

1.2

10.8

0.6

0.4

0.2

Fig. 5000.2

Fig. 4

0.4

0.6

0.8x1

RBF ネット ワークによる関数近似の例
xi − µkiµki ← µki + ηµ δφk (x)wkσk(10)b ← b + ηδ(11)

ただし ，η：学習率，ηµ：ユニット 中心の学習率をmountain-car 問題

3)

状態 s を観測する

4)

Repeat (for each step of trial)

5)

RBF ネット ワークを用いて Q(s, u)を推定する

6)

-greedy法を用いて行動aを選択する(a ← Q(s, u))7)

行動 aを実行，報酬 r を取得し ，新たな状態 s を観測する
新し い状態 s において，RBFネット ワークを用8)表す。

いて Q(s , u)を推定する

距離に関するし きい値 dth = [dmin , dmax ]を学習9)

TD 誤差 δ を 用いて ，RBF ネット ワー クを 更新
する

ステップ とともに減少させるためにつぎ の更新式を用いる。

1d ← d exp(− ), if d > dminτ10)s ← s11)

until s is the terminal(12)学習初期において，RBF ネット ワークにユニットが存在しない場合の出力は 0である。エージェン

ただし ，τ は時定数を表す。
ネット ワーク内に生成できる最大ユニット 数をKmax とする。RBFネットワークによる関数近似のトの経験組 < s, a, r, s >に対する TD 誤差の計算式を以下に示す。

例を Fig.4に示す。

δ = r + γ max Q(s , b) − Q(s, a)b

今回，RBF ネット ワークを Q 値の推定に利用するにあたり，入力パターンは x = [s, u]T とし ，各(13)

ここで ，γ (0 ≤ γ ≤ 1)は割引率を表す。

要素は [0, 1]に正規化するものとし た。ただし ，s：

本実験では，行動選択に -greedy 法を用いる。-状態ベクトル，u ∈ {a1 , a2 , · · · , am }：行動を表す。

greedy法は，確率 でランダ ムな行動を，確率 1−
で最大の Q 値をもつ greedy

4.

な行動を選択するものである。なお，学習終了時に決定的な方策を得る

学習アルゴリズムために，を初期値 0 から 0 まで徐々に減少させる。
ここでは，政策オフ型のアルゴ リズムである Q学習に基づいて学習システムを構築する。以下にRBFネットワークを用いた強化学習アルゴ リズム

5.

本稿では ，学習問題とし て mountain-car タスクの概略を示す。
1) RBFネットワークの初期化(K = 0, dth = dmax , b = 0)
2) Repeat (for each trial)

問題設定1) を 取り上げ る 。これは Fig. 5 に 示すよ うに ，急な坂道をパワー不足の車が 登ってゴ ールに辿り着–3–

も重力の方が 大きく，急な坂道ではフル スロット

1000steps

く問題である。ここでは ，車のエンジン 出力よりKmax=200
Kmax=1000

800

ルでも加速できない。急な坂道を登りきるための600

唯一の解決策は，一度ゴ ールとは逆方向に加速し ，その後ゴ ールへ向かって加速し 続けることである。

400

報酬として 1 ステップ 毎に −1が与えられ，車が坂200

道の頂上のゴ ール位置を通過するか ，最大ステッ00

プ 数に 達し たときに 1 回の試行が 終了する。エー

100 200 300 400 500 600 700 800 900 1000
trialsジェントはフル スロット ル 前進 (+1)，ゼロスロットル (0)，フルスロットル後退 (−1)の 3つの行動 aから 1つを選択する。エージェントが観測できる車のFig. 6

ユニット 中心固定時の平均学習性能

Table 1

ユニット 中心固定時の学習後の性能状態は ，位置 xと速度 v の 2 種類で ，次式で 更新され る。

最大平ユニット 数v ← v + 0.001a − 0.0025cos(3x),

(14)

x←x+v

(15)

均標準偏差

成功率

(%)

ステップ 数

100423.1—80200300

126.3
136.2

20.0
36.1

100
100

1000

130.2

40.8100

ただし ，−1.2 <= 0.5，−0.07 <= 0.07であ=x<=v <
1000

steps

る。なお，この問題の最適ステップ 数は 103である。

Kmax=200
Kmax=1000

800

6.

実験結果

600

RBF ネット ワークのパラ メータは ，学習率 η =4000.1，ユニット 中心の学習率 ηµ = 10−4 ，距離に 関するしきい値dth = [dmin , dmax ] = [0.07, 0.7]，時定数 τ = 50，推定誤差し きい値 th = 0.2，ρ = 2.67，20000κ = 0.87とし た 。また，強化学習のパラ メータは
0 = 0.1，γ = 1とし ，最大ステップ数tmax = 3, 000，

100 200 300 400 500 600 700 800 900 1000
trialsFig. 7ユニット 中心可変時の平均学習性能

Table 2ユニット 中心可変時の学習後の性能

試行回数 Tmax = 1, 000とし た。

6.1

最大ユニット 中心の更新

ユニット 数
ユニット中心を固定した場合(ηµ = 0.0)と可変にし た場合 (ηµ = 10−4 ) の学習性能について比較する。実験は，乱数のシード 値を変えた独立な 20シミュレーションにより行った。ユニット 中心を固定し た場合の結果を ，Fig. 6と Table 1に ，ユニット中心を可変にし た場合の結果を，Fig. 7と Table 2に示す。

–4–平均

標準偏差

成功率(%)

ステップ 数

50100200

156.0114.9
105.4

58.1
18.9
3.2

100100100300
1000

106.5
118.2

3.3
20.8

100100学習性能曲線において，横軸は試行回数を，縦center point(a=-1)

trajectoryv 0.08

軸はゴ ールまでのステップ 数を表わす。グ ラフを0.06

見ると，試行回数とともにステップ 数が減少し ，学0.04

習性能が 向上し ていることがわかる。

0.020

ユ ニット 中 心 固 定 時に は ，Kmax = 1000 の 収-0.02

束特性が 良い 。し かし ，学習後の 性能を 見ると ，-0.04

Kmax = 200の結果が良い。これに対して，ユニット-0.06

中心可変時には，収束特性が非常に良く，Kmax =-0.08-1.2-1-0.8-0.6-0.4-0.2

00.20.40.6x50の場合でも学習することができた。特に，Kmax =(a) action = -1 (ユニット 数 81)

200〜300 付近の結果が ，ゴ ールまでの平均ステッ

center point(a=0)

プ 数が 105〜107ぐ らいで良好であった。

trajectoryv 0.080.06

6.20.04

学習後の RBF ネット ワークの評価

0.02

各行動毎にユニットの中心位置を示したのが Fig. 80である。状態遷移の軌道に沿ってユニットが 分布-0.02-0.04

し ていることがわかる。

-0.06

価値関数を 3 次元表示し たのが ，Fig. 9である。

-0.08-1.2-1-0.8-0.6-0.4-0.200.20.4

状態価値の低い初期状態から状態価値の高いゴ ー

0.6x(b) action = 0 (ユニット 数 39)

ルに向かって，状態遷移し ている様子がわかる。

center point(a=1)

各ステップにおける位置x，速度v ，行動a，状態価

trajectoryv 0.08

値を表したのが Fig. 10〜 13である。特に，Fig. 13

0.06

では，車(エージェント )が状態価値の山を登ってい0.04
0.02

く様子が 読みとれ る。

0-0.02

6.3

入力次元の追加

-0.04
-0.06

RBF ネット ワーク (Kmax = 1000)に おいて ，状

-0.08
-1.2

態とは無関係な入力次元を 1 次元〜3 次元まで追加-1-0.8-0.6-0.4

-0.2

00.2

0.4

0.6x

し て実験を行った。実験結果を Fig. 14，Table 3に(c) action = 1 (ユニット 数 80)示す。これらは ，10 回のシ ミュレ ーション の平均Fig. 8

ユニット の分布値である。
ノイズ次元が 2までは，うまく学習していること7.

がわかる。3次元になると，学習が不安定になることが確認された。これは，ユニット 数不足のため，価値関数をうまく近似できていないことによるものと考えられ る。

おわりに

本稿では ，RBF ネット ワークを用いた関数近似による強化学習アルゴ リズムの有効性を確認した。
今後は ，高次元状態空間を扱う問題への適用，他の関数近似手法 3) 4) との比較など が 必要である。

–5–

trajectory

a20Q2010-200-40-20-60-40-80-100-60-1200-80-100-1200.06 0.040.02v

0-0.02-0.04 -0.06-1.2-1-0.8-0.6-0.4-0.2

00.2 0.4
x0.6-1Fig. 9価値関数と状態遷移

020406080

100120
steps

x 0.6

Fig. 120.4

各ステップ で選択し た行動 a0.2
Q00-20-0.2-0.4-40-0.6-60-0.8

-80

-1
020

Fig. 10406080100120steps-100-120

各ステップにおける位置 xの変化

020

4060

80

100120steps

v 0.05

Fig. 13

0.04
0.03

steps

1000

0.02
0.01

各ステップにおける状態価値
1dim.
2dim.
3dim.

800

0600

-0.01
-0.02

400

-0.03
020406080

100120steps

Fig. 11

各ステップにおける速度 v の変化

Table 3ノイズ次元追加時の学習後の性能

追加次元

1 次元2 次元3 次元

平均ステップ 数

標準偏差 (%)

121.0
139.6
223.3

16.9
15.4
197.5

20000100 200 300 400 500 600 700 800 900 1000
trialsFig. 14

ノイズ次元追加時の平均学習性能

2) Platt, J.: “A Resource-Allocating Network for
Function Interpolation,” Neural Computation,
vol.3, no.2, pp. 213–225, 1991.
3) C. G. Atkeson, A. W. Moore, and S. Schall, “Locally Weighted Learning,” Artiﬁcial Intelligence
Review, vol.11, 1997.

参考文献
1) Sutton, R. S. and Barto, A. G.: Reinforcement
Learning : An Introduction., MIT Press, 1998.

–6–4) 釜谷博行, 山火和也, 阿部健一: “関数近似を用いた強化学習,” 平成 17 年度電気関係学会東北支部連合
大会講演論文集, p. 325, 2005