・botの思考アルゴリズムの着手。
・その中で、相手の手札一枚一枚に対して考えられる数字の候補を探索する部分を実装。
・検証用のテストプログラム

思考アルゴリズムに関して、公開情報から明らかにあり得ないような候補を出さないようにできた。
実装の例:
・Botは、Botが把握している数字を候補に含めない
・左から小さい順に、「x,6,y,z」と並んでいた場合、Botはxの候補に6以上の数を含めないこと
ただし、例のような、踏み込んだ思考まで実装はできていない。
例:左から小さい順に、「x,6,y,z」と並んでいた場合、Botはyの候補に「ゲームで扱う最大の数字」を含めないこと。

これから
・テストプログラムに関してはまだまだ荒削りな部分もあるので、余裕があれば直していきたい。
・より踏み込んだ思考パターンについては、実装難易度が高いことと、未実装による影響がそこまで大きくないことから、後回しにする。

現状、Botの思考アルゴリズムはIAttackのAPIに依存しているため、Botの思考を動かす時点でStepSchedulerのisATurnがfalseになっていないと計算結果に不具合が出るおそれあり。
1 parent 1cde99e commit 2a8d7329c60c168b89ed658d5356c05dfc727bdd
Shinji authored on 6 Jul 2022
Showing 5 changed files
View
src/main/java/controls/BotIntelligence.java 0 → 100644
View
src/main/java/controls/ConstantMethods.java 0 → 100644
View
src/main/java/interfaces/IBotBehavior.java 0 → 100644
View
src/test/java/AlgoTest.java
View
src/test/java/controls/BotIntelligenceTest.java 0 → 100644