成っても良さそうな局面で不成が指される場合
- 取らない手である
- 指した直後に取り返されるので成でも不成でも同じ評価値
- 成る手のうちSEE<0の手は Non captures/Non promote の後にオーダリングされる (Bad captures)
上記の処理を仮定すると… 成りは Bad captures 扱いなので順序が後ろになり、不成は Non captures なので、成りよりも早く処理されることになりますね。
もしこれを成り優先にしようとすると、ルートで不成が指されそうなときに成る手が未検索なら成る手を検索して両者の評価値を比べるのかな? 取り返し以降はハッシュが利くからそんなに時間はかからないかもしれないし、null windowでもいいか。
GA将!!!!!さんのように(探索ルーチンをちょっといじってみようかな)、取る手・成る手を別扱いしない方法でもいいのかな?