泥沼流コンピューター将棋

米長先生の将棋は昔、「泥沼流」と呼ばれていたことがあります。


厚みを重視し、劣勢になると自陣に駒を打ち付け複雑にして逆転を狙う棋風からそう呼ばれていたようなのですが、局面を複雑化したり、定跡を外したりするのはコンピューターのみならず、人間相手でも有効です。


特に近年、どうやってコンピューター将棋が人間相手に手加減をするかという部分に注目が集まっており、私は「泥沼流」コンピューター将棋を作れないかと考えておりました。


そこで、見かたを変えまして「前例のないような局面」に誘導することを思いつきました。


「前例のない」というのをどう定義するかですが、盤面全体と比較してしまいますと定跡から外れた時点で「前例のない」局面ということになってしまい、これでは意味をなしません。


Bonanzaであれば3駒相対で評価しますが、これらのパラメーターに対して学習棋譜にその特徴が出現した回数もカウントしておきます。これが少ないものには加点します。さすがに評価値がマイナスのものに加点してプラスにするのは気持ちわるいので、評価値がプラスのものにのみ加点します。


例えば次のような計算式はどうでしょう。


評価値 = c1 × 元の評価値 / log(出現回数 + c2)
c1,c2は適当な係数。棋譜の量などで調整する。


こうしておけば出現回数が多いほど評価値が減少します。


実戦ではあまり現れない形を好んで指すようになり、それでもそこまで悪くはない形(少なくとも元の評価値はプラスなので)を目指すはずです。


米長先生の「泥沼流」とはまた違うかも知れませんが、人間の棋譜ではあまり見られない形が出てくるこのようなコンピューター将棋というのもまた面白いのではないでしょうか。