歩の不成や香の敵陣2段目での不成、そして大駒の不成は打ち歩詰めが絡まない限り読む必要がない。なので、本来は読みの末端で打ち歩詰めが出現してから、その手前の局面でだけ不成の指し手を生成すればすれば良い。
「コンピューター将棋全般」カテゴリーアーカイブ
【ポエム】人間の知性を推定するAIについて
将棋ソフトで、対局後に自分の将棋の棋力を判定して表示してくれるものがある。あれは自分の弱点がわかってなかなか面白いと思うが、プレイヤーの棋力判定というのは、そういう自分が参考になるというだけではなく、オンラインゲームのマッチングにおいても重要である。
【決定版】コンピュータ将棋のHASHの概念について詳しく
いまどきの将棋ソフトを使っていると、「HASH 50%」などと表示されている。これはHASH利用率と呼ばれる。この数字が大きくなってくると探索の効率が悪くなる。要するに潤沢にメモリがある場合に比べると弱くなる。これは、どれくらいの値までであるなら適切なのか?HASH利用率が99%にならない限りHASHには余裕があるものなのか?HASHはどういう仕組みになっているのか?HASH利用率が50%の状況で、ハッシュ衝突はしているのか?など、わりとソフトを長年使っていても知らない人が多いのでここに原理から詳しく説明した決定版的な記事を書く。
AIから人間が学ぶ方法について考えてみた
ゲームAIに関しては、オセロ、チェス、将棋、囲碁とすでにトッププロでも敵わないレベルに到達した。これらのゲームAIから人間が学ぶにはどうすれば良いのかということについて考えてみる。
『将棋神やねうら王』で書き出したKIFファイルが『柿木将棋』で読み込めない件
結論から言うと、『柿木将棋』の棋譜読み込みがUnicodeに対応していないためです。
NodesLimit固定で、Threadsを増やしても弱くならない件
uuunuuunさんにお願いして、思考エンジンがどれくらいの探索局面数(やねうら王であれば、この値はNodesLimitオプションで制限できる)で、どれくらいの棋力になるのかを調査していたときに、スレッド数によってこの強さが変わることに気づきました。
やねうら王にNNUE評価関数をマージしました
WCSC28に出場したたぬき(the end of genesis T.N.K.evolution turbo type D)のNNUE評価関数をやねうら王にマージしました。このNNUE評価関数は、ニューラルネットワークを用いたもので、やねうら王のevaluate()のみの差し換えたもので、探索部は従来のやねうら王のままです。
置換表の128GB制限を取っ払う冴えない方法
何故いままで置換表は2のべき乗サイズでしか確保できなかったのか?
以下では、プログラマー向けに説明を書きます。
その昔、CPUの演算で、掛け算が異様に遅い時代があった。割り算はいまでも足し算なんかに比べるとずいぶん遅いけども、掛け算はいまや足し算の数倍程度の時間しかかからない。