改良案

さらなる高速化は、SEEが毎回手を生成してるのではじめに全部生成するようにすれば速くなるはず。
呼ばれる頻度を考えるとかなり向上するはずなんで、ぜひやりたい。
ただ、bitboardならではの速くするアルゴリズムはとくに思いつきませんねえ。
保木さんがSEEも速くなると言われていたようですが……


あとは、手生成時にpin情報を作ってないので、動かして王手にならないか確認しています。
かといってpin情報を作るべくkikiを更新するとそれが遅くなりますので(bitboardなのでkikiは差分更新してない)
王手されてるか?関数は呼ばれる頻度が高いので、なんとか高速化したい。
craftyのソースを見るとpinを求める部分は、そのマスと自王を結ぶ線を延長して、飛び利きを調べて、そこに該当する敵の大駒がいるかを確認してるみたい。飛び利きを求めるのはbitboardは一瞬なので、その方向で考えみたいと思います。



受ける青春((訂正)受け気味な将棋ソフトの棋風に対して、うさぴょん育ての親さんが言い出した言葉らしい)

bonanzaは受けるソフトの弱いようだが、斬り合いになると強いという裏返しと思う。
それは全幅でシンプルな手生成なので、相手の最善手を予測して、それを防ぐ手を生成みたいなことをしてないからと思う。


あやまり将棋さんはSEEをまだ実装してなかったようですね(^^;
それであの強さは凄い。yowaiGPSにも1秒思考で勝ち越されてるようですし。