KFEndの思考ルーチンを解説していきます。
このサイトで使用する思考ゲームプログラミングに関する用語で、意味が曖昧になりそうな語を明確にしておきます。
将棋の局面をプログラム内部でどう表現するかは、探索や静的評価関数の高速化と密接に関係しています。ここでは、基本となる盤、駒、指し手のデータ構造を紹介します。
KFEndが採用している探索アルゴリズムです。ABC探索の紹介とKFEndへの適用を述べます。
2つの探索アルゴリズム(深さをしきい値とした反復深化、証明数をしきい値とした多重反復深化)について述べます。
通常探索の中で詰めろをどのようにして効率的に利用するかを述べます。
なるべく悪形にしないための仕組みです。
静止探索の中で「脅威」を考慮しています。