メインで動かすやつ
GUIとかはこれで扱う
グリッドマップ上の情報を管理するクラス
エージェントの情報を管理するクラス
盤面上の状態を計算するクラス
盤面上のゲーム進行を制御するクラス
各学習アルゴリズムによるQ値テーブル管理や行動を決定するクラス
1.グリッドマップを読み込む
2.グリッドマップ情報をbool型のリストに変換
3.グリッドマップを縦横幅を自動計算してGUI上に表示
4.鬼エージェントの静的アルゴリズム実装
5.GUIが動く
6.モンテカルロ法の学習アルゴリズム実装
7.ProfitSharingの学習アルゴリズム実装
8.Q学習実装
9.SARSA実装
10.それぞれの学習効率を移動平均をとってグラフ表示
11.終わり!w