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

実験設定について

ドキュメント内 JAIST Repository https://dspace.jaist.ac.jp/ (ページ 60-65)

第 5 章 リカレントネットワークと

Q- learning

5.4 実験設定について

得されるといった不都合な学習が為される可能性があるが,本実験では用いるマップ の特性を考慮し,深層学習の汎化能力に期待してこのような設定とした.

(a) run 8×8 (b) run 7 ×5 図 5.7: 追跡・逃走マップの例

5.4.2 評価に使用したマップ

本章で使用したマップは駒の挙動や正解を確認しやすくするため,すべて8×8の サイズとし,使用する駒はREDが歩兵一個,BLUEが歩兵一個に限定した.駒の数 を一個に制限することで解析しやすくなるがゲームの持つ複雑性は制限されるので 限定的な条件での解析となる.なお図のマップではすべてRED側が学習側であるが,

REDとBLUEを入れ替えたマップを生成しても学習は成立する.ここでベンチマー ク問題に登録されている逃走・追跡マップと異なって経路が一か所進入禁止ブロック で封鎖されている形になっているのは,追跡のケースにおいて逃げ切りが発生しない ようにして,プログラムが適切に動作するなら,1エピソード中に確実に報酬が入る ようにするためである.進入禁止ブロックの配置により追跡マップと経路探索マップ のテーマ的には類似の動作の確認となっている.

追跡・逃走マップ(run マップ)

追跡・逃走問題は人工知能の研究課題として重要である.ここで用意したマップは 図 5.7のように回転型の経路上を追跡または逃走する設定のマップである.マップの 地形は外周が角1つを除いて全て平地で四角形の経路のみである.ここではrunマッ プと呼び,run 8× 8のようにマップの横と縦のマス目のサイズに応じて数値で名称 を付けている.例えば図 5.7 (a)は横8マス ×縦8マスのマップである.ここで追跡 と逃走としているのはランダムなHPの設定によって,追跡が正しい行動である場合 と逃走するのが正しい行動である場合の二種類が存在し,エージェントはそれを適確 に判断しなくてはならないためである.

(a) pathfind01 (b) pathfind06 図 5.8: 経路探索マップの例

表 5.1: 評価に使用したマップ

学習用(train) 検証用(test)

8× 8, 8 × 7, 8 × 6, 8 × 5, 8 × 4, 8 × 3 7 × 3, 7 × 7, 7 × 6, 7 ×5, 7 × 4, 5 × 4, 6 × 6, 6 × 5, 6 ×4, 6 × 3, pathfind06

5 × 5, 5 ×3, 4 × 4, 4 ×3, pathfind01, pathfind02,

pathfind03, pathfind05 経路探索マップ(pathfind マップ)

経路探索もまた人工知能やロボット研究などでよく扱われる課題である.ここで用 意したマップは図 5.8のように障害物となる壁を避けた経路を探索して相手に到達で きるかどうかを課題としている.ここでは壁の形を変えた種類を用意した.

学習用マップと検証用マップ

用意したマップをまとめたものが表5.1である.ここでは学習用(train)に使用す るマップと検証用(test)に使用するマップを明確に区別して使用する.各グラフ上 で使用したマップは学習用が train,検証用が testを付記したものになる.学習と 検証とも選択されるマップはランダムに選択される.追跡・逃走マップについては経 路長が長いほど出現確率が高くなるよう調整している.

(a) pathfind02 (b) pathfind03 図 5.9: 駒出現確率分配データ

駒の配置について

相手側の駒は左上の隅のマスに固定して配置される.経路探索マップにおいては 学習する側のエージェントの駒は図 5.9のようにマップごとに決められた確率に応じ てランダムに配置される.基本的には近いほど重要度が高いとして高い確率に定め,

さらに重要性の高いマス目に多く駒を出現させることで学習を速めている.追跡・逃 走マップの駒の配置確率はマス目ごとに等確率である.

駒のHPと勝敗について

駒のHPは自分も相手の駒も1から10までのランダムな整数値が選ばれる.つま りHPの組み合わせは10×10の100通りとなる.駒が戦闘した場合はTUBSTAPの ルールに基づいて確定的に勝敗が決定される.

制限ターン数について

各マップにおいては制限ターン数がそれぞれ設定されている.制限ターン数の決め 方は極端にエージェントが冗長な行動を取ることにならないようにするためにターン 数が長くならないようにかつ,短すぎてマップを成功させることができないことがな いように設定する必要がある.この場合は,各陣営の駒の配置が決定した時点で双方 が最善を尽くした場合にマップの課題を成功させるのにかかるターン数を計算して 設定している.ターン数の設定は数ターン程度の余裕が含まれるため冗長な行動をわ ずかに許容している場合もあるが,最善の行動をしている限り成功に至るようになっ ている.

Data Augmentation

マップデータの多様性を確保するため,マップを生成する過程においてData

Aug-mentation(データ拡張) [28]と呼ばれる手法によってデータ量を増加させている.

具体的にはマップを生成時に鏡映および回転をランダムに行ってマップと駒配置を変 化させている.

5.4.3 使用したソフトウェアとハードウェア

今回の研究に使用したソフトウェアとハードウエアは以下である.

ソフトウェア:Python 3.6, Keras 2.2

ハードウェア:CPU Intel i7 3.4GHz, GPU NVIDIA GTX1050Ti

また学習に使用したプログラムはOpenAI Gym[72]におけるDQNプログラムをもと に改変を加えたものである.

5.4.4 学習の進展の評価法について

学習の進捗程度の評価法を考える.

今回の実験設定ではエピソードが規定のターンまで到達するか,相手を全滅させ た段階になって初めてエピソードが成功したか,失敗したかが判明するようになって いる.したがって,出力された行動が正しいかどうかはエピソードの途中では判断す ることができない.また,行動出力が複数ある場合においては正しい行動がただ一つ のみであるとは限らず,複数の行動が同様な正しい結果をもたらすことがあるため,

正解ラベルを用意して学習したり評価することが困難である.

そして対戦相手として設定したAIである最適方策π∗はこのマップにあわせて設 計され,このマップに限ってではあるものの最適化されている.このため対戦結果は 対戦相手の強いか弱いかなどによる影響を受けないことになる.この条件により評価 するAIの性能は対戦相手の性能によらず絶対評価が可能となっている.

このようなことから,学習の進展度合いとしての絶対評価もできるエピソードの成 功率を測定することにした.引分けが最善である設定のマップもあるため勝率とは呼 ばず,成功率とここでは呼んでいる.

成功率による評価

エピソードが成功するためには当然ながら合法手が出力されていることが前提と なる.しかし出力手が合法手であるからといって,それが各局面で正しい勝つための 行動であるとは限らない.

そこで成功率による評価を考える前の評価としてまずは合法手を出力している割

合(合法手出力割合)での評価も行う.

同時にエピソードが成功した割合(エピソード成功割合)でも評価を行うことで複 数の観点からの学習の進展の様子を確認できるようにした.

ドキュメント内 JAIST Repository https://dspace.jaist.ac.jp/ (ページ 60-65)

関連したドキュメント