5本のキュウリAI
##ai.py AI本体。手札と場の数字を元にして手札から1枚抜いた手札と出す数字を出力する。手札のコストを計算し、コストが小さくなるように出力する。
##init.py 手札を配る関数
##alone.py 1人でAIと対戦するためのプログラム
##vs.py AI同士を対戦させて prob.json に各ターン・各数字ごとの勝率を記録するプログラム
##ai2.py AI改良版。ai.py同士を対戦させて得たデータ(prob.json)を元にして手札の評価値を決定する。
##vs12.py AI同士を対戦させて勝率を取得するプログラム。
##結果
(AI.py) vs (AI.py)
先手 55%
後手 45%
(AI2.py) vs (AI.py)
先手 51% (AI2)
後手 63% (AI2)
##考察 改良した結果、先手では勝率が下がる結果となったが、後手では勝率が上昇した。後手に強いAIの開発に成功したと考えられる。総合的に見ても勝率は改良前と比べて上昇しており、人間の手によるチューニングより、データに基づいた意思決定の方が良いことが確かめられた。
##今後の課題 後手に強いAIの作成に成功したが、今後、先手に強いAIも作成し、勝率の向上を図りたい。 また、現在はAIとの対戦であるが、出力に偏りがあり、勝率を図る指標としてふさわしいものではないと考えている。ベースラインとなるAIに過学習したAIとなってしまう懸念があり、より人間に近い対戦相手を探す必要がある。