・botの思考アルゴリズムの着手。
...
・その中で、相手の手札一枚一枚に対して考えられる数字の候補を探索する部分を実装。
・検証用のテストプログラム
思考アルゴリズムに関して、公開情報から明らかにあり得ないような候補を出さないようにできた。
実装の例:
・Botは、Botが把握している数字を候補に含めない
・左から小さい順に、「x,6,y,z」と並んでいた場合、Botはxの候補に6以上の数を含めないこと
ただし、例のような、踏み込んだ思考まで実装はできていない。
例:左から小さい順に、「x,6,y,z」と並んでいた場合、Botはyの候補に「ゲームで扱う最大の数字」を含めないこと。
これから
・テストプログラムに関してはまだまだ荒削りな部分もあるので、余裕があれば直していきたい。
・より踏み込んだ思考パターンについては、実装難易度が高いことと、未実装による影響がそこまで大きくないことから、後回しにする。
現状、Botの思考アルゴリズムはIAttackのAPIに依存しているため、Botの思考を動かす時点でStepSchedulerのisATurnがfalseになっていないと計算結果に不具合が出るおそれあり。
Shinji
committed
on 6 Jul 2022