DQNでゼロから学習させたAIと対戦できます。仕組みの解説 →
5×5盤面・重力あり(コネクトフォア型)の3目並べを、DQN(Deep Q-Network) で ゼロから学習させたAIです。人間の棋譜は一切使わず、勝ったか負けたかという結果だけを 手がかりに、20,000回の対戦を通じて自力で戦い方を身につけました。
上のボタンで、学習途中のAIを対戦相手に選べます。 Lv.0 は学習前(ランダムに打つだけ)、Lv.3 は学習完了後のAIです。 同じ設計・同じネットワークのまま、学習量だけが違います。 弱いレベルから順に対戦すると、学習が進むにつれて何ができるようになったのかが分かります。
※ 表示している勝率は、ルールベースAIと400戦させて実測した値です (開幕の数手をランダムにした条件。同じ相手・同じ条件でレベル間を比較しています)。
ネットワーク: 入力 (3,5,5) → Conv(3→32) → Conv(32→64) → 全結合(1600→256) → 出力 (5)
| 手法 | DQN(CNN + 経験再生 + ターゲットネットワーク) |
|---|---|
| パラメータ数 | 430,533 |
| 学習率 | 5e-4(Adam) |
| 割引率 γ | 0.99 |
| ε(開始→終了) | 1.0 → 0.10(減衰率 0.99990) |
| バッファ容量 | 20,000(経験再生のプール) |
| バッチサイズ | 128 |
| ターゲット更新間隔 | 500ステップ |
| 報酬設計 | 勝敗のみ(±1.0、中間報酬なし) |
強化学習の枠組み、Q値とベルマン方程式、DQNの学習の仕組み、 そして実際に学習させて分かったことをブログ記事にまとめています。