720 views
この記事は最終更新から 372日 が経過しています。
前回、前々回の投稿の続きです。
前回 : (46)【Othello AI】オセロAIにも相性がある。
前々回: (45)【Othello AI】強化学習でオセロAIを作る。
勝手に作った指標 CvR
CvR 10000 : COM vs Random 10000回対戦時の勝利数 を表す。
個人的にはこれを Level と呼んでいる。
Lv.8000 は、Random指し手のコンピュータを相手に 10000戦して 8000勝の実績 ということだ。
A. 作り手の気分として、大きな数字が出ると嬉しいからです。8000とか 9000とか…
今回ようやく Lv.9000 に到達したので記念に記録しておく。
CvR 9000 達成の場面
安定して 9000前後の値が出る!
最高値は 9006 だった。
$ python main_CvR.py --p $P --n 10000 対戦数: 10000 AI 勝利数 : 9006 ランダム 勝利数: 734 引き分け : 260 AI(A) 勝率 : 92.46% $ python main_CvR.py --p $P --n 10000 対戦数: 10000 AI 勝利数 : 8965 ランダム 勝利数: 726 引き分け : 309 AI(A) 勝率 : 92.51% $ python main_CvR.py --p $P --n 10000 対戦数: 10000 AI 勝利数 : 9003 ランダム 勝利数: 701 引き分け : 296 AI(A) 勝率 : 92.78% $ python main_CvR.py --p $P --n 10000 対戦数: 10000 AI 勝利数 : 8994 ランダム 勝利数: 714 引き分け : 292 AI(A) 勝率 : 92.65%
目標の CvR 9500 まであと 494!
4日前の初版の記録が CvR 8109 だから、短期間で随分と進化したと喜びたい。
でも…
ランダム指し手を相手に引き分け数が多いのが気になるなぁ。
兄弟モデルたちとの対戦結果
今日時点で残っている全 157モデルの総当たり戦を行った。
CvR 7500未満のモデルはすべて倉庫行きで姿を消し、残ったどれもが高 CvR値の強者ぞろい(?)だ。
157モデルの総当たり戦の試合数は、
(157 x 156 / 2) x 2(先攻,後攻) = 24,492試合
何時間かかるんだろうか・・・
と心配していたが、NVIDIA GeForce RTX 5070ti のパワーを使ったら 4分ほど で全試合が完了した。
入力データ数が多く、複雑な逆伝播を走らせる training には時間がかかるが、
たったの 1個のデータに対して順伝播しか走らせない推論には、それほどマシンパワーを要しない。

今回 Lv.9006 を達成した model #188 は、157モデルの総当たり戦ランキング 第3位 だ。
193勝 108敗 11引分 勝率64.1%
勝利数 3位、CvR 1位 と安定の強者だ。
前回のチャンピオンは?
前回投稿: (46)【Othello AI】オセロAIにも相性がある。
4日前の 74モデル総当たり戦の 前回チャンピオン Lv.8314 model #37 は、旧モデルながら 第14位 と健闘した。
186勝 114敗 12引分 勝率62.0%
結果だけを見ると、Lv.9006 のモデルとあまり差が無いな・・・
今回のチャンピオンである model #102 との直接対決の結果も 18△18 17●19 と接戦だった。

いざ!人間(私)と対戦!
こいつ強えぇぇぇ😰
と言わせてくれることを期待して対戦すると・・・

またもや
なんじゃこりゃ~
と声が出てしまう結果になりました・・・
弱い、弱すぎる・・・
どうやったら強くなるんだろう・・・
今は Deep QNet + Min-Max法実装を αβ法で高速化している作業中だが、全然強くならない・・・
しかも、探索深度を上げると RTX 5070ti では使い物にならないくらいに学習時間が膨大になる・・・
所感
それよりも手を動かしてプログラムを作りたい気持ちが勝り、
全然記録していません。。。
いつか
こいつ強いぞ!
って思えるモデルが出来上がった日には、ゆっくりと振り返って
戦術の試行錯誤・紆余曲折などなど、制作の過程を記録しておきたい…