序盤の駒組みが一晩でできてくれました(予定
まず、昨日のバグは直すた、
下記のような局面で、
差し手生成部が平然と4七歩打を生成してたorz*1
これはもう後手の王の周りは先手の利きで取り囲まれており絶体絶命だがまだ詰めろであり、4七歩打でそれが必至になってしまうから打ち歩詰めに該当する(ハズ、
-: vFU(2), vKY(1), vGI(1), vHI(1) 9 8 7 6 5 4 3 2 1 +---------------------------+ |vKYvGI + + + + + + vKY|一 | + + + + + + + + + |二 | + + と 圭vFU と + + + |三 |vFU + + vFUvKE 銀 + + 歩|四 | + + + vGI + + + + vFU|五 | 桂 金 + + + vOU + 歩 + |六 | 歩 歩vFU 歩 + + 歩 + 香|七 | + + 金 + 金 + 角 王 角|八 |vRY + 金 + + + + 桂 + |九 +---------------------------+ +: 歩(3) To_Move:+
今回はデバッグのためにテストベクターとしてそこそこ大量の棋譜を集めるというGMA0BNにしてはかなり殊勝な働きぶりをしたが、疲れたので序盤の駒組みはDBを使わない方法で解決する
序盤から中盤への遷移点(駒のぶつかり合いの始まり)はある種の準備の下で妥当な論理的定義が可能であり、そこに至るまでの手数を極力引き伸ばしつつ自陣を固める探索を実装汁、
*1:Killer move用の合法手判定ロジックの方はきちんと打ち歩詰めと認識していた