TD学習による ゲームの進行度ごとの 評価関数の調整 卒業論文 近山・田浦研究室 60407 三木理斗 背景 ゲームは進行度によって評価の仕方が違う オセロ:序盤は角重視 将棋:序盤は駒の損得、終盤は玉の危険度 進行度ごとに評価関数を変える手法が定番 進行度の判定、各重み付けは人手によるもの 機械学習によるコンピュータプレイヤの台頭 目的 進行度ごとに特化した評価関数を強化学習 (TD学習)によって学習する 進行度ごとの重み付けを自動化できる 序盤用評価関数 強化学習 棋譜不要 中盤用評価関数 終盤用評価関数 発表の流れ 関連研究 本研究の手法 実験・評価 まとめ・今後の課題 関連研究 本研究で扱うゲーム 局面評価関数のTD(λ)学習 ブロックスデュオ 14×14マスの正方形の盤面に21種類の ピースを置いていく。 自分のピースと角同士が接し、辺同士が接し ない位置にしか置けない。 OK 置くピース 角が接して いればOK NG 辺が接している 角が接していない 置いたピースの合計面積が大きい方の勝ち。 局面評価関数 良い手を打つには何か指標が必要 局面の有利不利を見積もりたい V ( s) s : 評価する局面 局面評価関数の機械学習 教師あり学習 ex. ボナンザ(保木, 2006) 棋譜の指し方に近づける 教師なし学習 強化学習 ex. TD学習(R. Sutton, 1988) 強化学習 新しいゲームでも適用可能 なぜ? 棋譜(教師信号)が不要 なぜ? 報酬をもとに評価関数を調整 ゲームでの報酬は勝敗結果 つまり評価関数は勝敗を推定する TD学習 1ステップだけ修正 1ステップだけ修正 報酬r 評価値 局面 s1 s2 s3 s4 s5(終局) TD(λ)学習 いっきに修正 報酬r 評価値 局面 s1 s2 s3 s4 s5(終局) 評価関数のパラメータ表現 V(s)はパラメータによる近似表現をする :評価要素ベクトル ゲームの特徴要素(盤面配置、持ち駒などから選択) :重みベクトル 学習による調整の対象 線形関数近似+シグモイド正規化 V ( s) 1 1 e ( s ) 本研究の手法 ゲームの進行度を考慮したTD(λ)学習 進行度によって評価関数を切り替える 進行度に応じた評価関数の切り替え V1(s)で評価する V2(s)で評価する 評価値 局面 s1 修正する誤差 s2 s3 s4 V12(s3524)) VV1211((ss2341) s5 手法の細かい設定 報酬は勝ち1、負け0、引き分け0.5 自己対戦形式 終局面では双方を修正 手の選択はε-greedy方策 序盤ランダムやUCTも試したが、あまり変わらず 実験と評価 評価要素 学習パラメータ 実験結果 考察 評価要素 番号 評価要素 1 自分のピースの総面積 2 相手のピースの総面積 3 自分の置ける可能性のある空白マス数 4 相手の置ける可能性のある空白マス数 5 自分の次のピースを置ける角の数 6 相手の次のピースを置ける角の数 7 相手の置けないところでの自分の影響領域の値 8 自分の置けないところでの相手の影響領域の値 9 自分の影響領域の値 10 相手の影響領域の値 影響領域 学習パラメータ 学習係数α N0 1 0 N 0 Episode#1.1 割引率γ=1 トレース減衰パラメータλ=0.8 ランダム方策率ε=0.03 1試合に1回程度ランダムな手 実験 3種類の進行度の分け方 A:進行度の区別なし B:中盤以前(1~30手)・終盤(31手~) C:序盤(1~10手)・中盤(11~30手)・終盤(31手~) それぞれ200000試合の自己対戦 学習後、二つの基準プレイヤと評価対戦 simpleプレイヤ:面積差のみ評価 strongプレイヤ:大会2位、人手での重み付け 先手後手500試合ずつ、探索なし、序盤4手ランダム 結果1:simpleプレイヤに対する勝率 結果2:strongプレイヤに対する勝率 考察 終盤とそれ以外に分けると強くなったが、 序盤を分けると弱くなった。 序盤を個別に学習するのは難しいため 調整時に推定値の比重が高くなる 良い局面と悪い局面の差が見えにくい ε-greedyによるランダム局面が後ろに偏る 重みの検討 終盤 自分の面積(1)が正 相手の面積(2)が負 なるべく大きい駒を置く 自分の置ける可能性の ある空き(3)が負 相手の置ける可能性の ある空き(4)が正 無駄な空きを残さない 重みの検討 中盤 自分の面積(1)が負 影響領域(9,10)が比重大 小さくても影響領域を 広げられる駒を置く 重みの検討 序盤 影響領域(9,10)が比重大 影響領域は重要だが あとはよくわからない →そもそも精度が低いので 信頼できない おわりに まとめ 今後の課題 まとめ 終盤を分けるのは有効 学習がかなり正確 一方で序盤は学習が難しい 定石などで対応するほうが良いかも 異なる重みを学習できることは確認 今後の課題 進行度の分け方の検討 さまざまな分け方を分析して傾向変化を見る 「終盤らしさ」などの進行度判定を行う 評価要素を増やす 評価関数としての表現力を高める より応用的な学習法の適用 LSTD法、TDLeaf法、共進化法など
© Copyright 2024 ExpyDoc