強化学習と関数近似 強化学習を用いたバックギャモンプレイヤーの生成 TD-Gammon 状態価値関数と行動価値関数 前回までは 行動価値関数Qを推定 Q(st,at) 状態 st 時刻tで状態stにいるとき行動atをとる価値 行動 at もうひとつの考え方として 状態価値関数Vを推定 時刻tで状態stにいる好ましさ(価値) V(st,at) 本論文では状態価値関数Vを使う 離散型状態価値関数 状態価値V 状態価値V 状態s 0.1 0.5 1.0 1.5 0.0 0.3 0.1 … 状態s 0.2 0.1 関数近似による価値関数 状態価値V 状態s バックギャモン 白の駒の動き方 赤の駒の動き方 バックギャモンの一般的な初期状態 ニューラルネットワークによる 勝利確率推定 入力層 w x1 y1 x2 y2 出力層 TD誤差 w11y Vt 1 Vt 勝利確率の予測値 ….. x198 ….. ….. 盤 面 の 情 報 198 入 力 中間層(40-80) x 11 Vt 入力情報 バックギャモンの各ポイントについて白黒それぞれ4ユニット(入力 層ノード)を使う 4(ユニット)×2(白黒)×24(バックギャモンのポイント)=192(ユニット) 例) ある1ポイントに対する白の数について 白なし : 4入力すべて0 1個 : 最初の1ユニットが1 2個 : 最初から2個のユニットが1 3個 : 最初から3個のユニットが1 4個以上 : (n-3)/2 (n: 駒の数) バー上にある白と黒の駒数をコード化(2入力ユニット) n/2 (n: バー上の駒の数) 盤面から除かれた白と黒の駒数(2入力ユニット) n/15 (n: 取り除かれた駒の数) 白黒いずれの番か(2入力ユニット) 重みの更新 誤差逆伝播法(BP法)を用いる 1 2 Z :ゲームの結果 E z Vt 2 とすれば Vt E z Vt wt wt となり Vt wt z Vt wt zの値がわかるのは1ゲーム終了後であるため、 重みの更新もそれにしたがい、 m w w wt t 1 1: 勝ち 0: 負け (1) ここで m z Vt Vk 1 Vk k t ただし m+1 : 終了時刻 (3) Vm1 z と考えることができるので (2) (1)(2)(3)より、 重みの更新 Vt w w z Vt w t 1 m Vt w Vk 1 Vk w t 1 k t m k Vt w Vk 1 Vk w k 1 t 1 m t Vk w Vt 1 Vt t 1 k 1 w wt m m この式にトレース減衰パラメータλを考慮すれば (0 1) t wt (Vt 1 Vt ) t k k 1 ここで適格度トレースを定義する t 1 t 1k k t 1 k 1 t t 1k k 1 e V w k 1 Vk 1 et w et V w Vk w 以上から wt Vt 1 Vt et Vk w 対戦結果 プログラ 中間層 訓練ゲーム ム 数 対戦相手 結果(点/ ゲーム) TD-0.0 TD-1.0 TD-2.0 TD-2.1 TD-3.0 他のプログラム Robertie 等 グランドマスター Robertie Kazaros Draw -13/5 -7/38 -1/40 +6/20 40 80 40 80 80 300,000 300,000 800,000 1,500,000 1,500,000 定石の変化(第1手) 30年以上使われた定石 : 13→9, 6→5 TD-Gammonによって生み出された新しい定石 : 13→9, 24→23
© Copyright 2024 ExpyDoc