Bonanzaは何故入玉模様の将棋が弱いのか?

Bonanzaの評価関数はプロ棋士棋譜から学習させていて、入玉模様の棋譜は絶対数が少ないため、入玉模様の将棋は正しく学習できていないというのが定説であります。


しかし、単に教示データが少ないという理由だけであれば、手でドーピングするなり、制約条件をいろいろつければ(例えば、先手玉が95にいる場合、先手の金は88より87、87よりは86…のように玉に近いほうが価値が高いetc…)もう少し強くなっても良さそうに思えます。


なので、Bonanza入玉模様の将棋が弱いのは、「パラメーターが正しく学習できていない」というだけではないと私は考えています。


例えば次の局面を見てみましょう。これは今年の選手権でのponanza(先手)と習甦(後手)との一戦です。


第21回世界コンピュータ将棋選手権:ボンクラーズ優勝(将棋の神様 〜0ト1ノセカイ〜)
http://d.hatena.ne.jp/Fireworks/20110506


ponanzaはBonanzaと同じ評価関数(fv.bin)を用いているらしいので、実質的にBonanzaでも同じような判断を下すと思うのですが、この先手玉の上部に居座っている96香、86銀、7六金は入玉する上で邪魔駒でしかなく、しかも95の歩は96香の蓋をしているだけの駒になっているので、96香を移動させるのに2手かかる計算になります。75の歩も95の歩と同様で入玉するときにはマイナスにしかなりません。


つまり、これらの駒は一つ一つの駒を単独で見れば厚みに貢献する駒のように見えるのですが、一目散に入玉しようとするときは、これらの駒が壁となって立ちはだかり、かなりの邪魔駒なのです。


これをBonanza型の評価関数で評価しようと思うとKP(玉と駒の位置による評価),KPP(玉と2駒の位置による評価)では厚みにしか見えないので、これらの駒はプラスにしか評価されません。


玉は広いほうが逃げやすい ←→ 穴熊のように狭いけど王手がかからないので囲いとして優秀


というように将棋には相反する要素のどちらも良しという場合がありますが、入玉しやすさというのを評価しようとしたとき、上部に自駒があることも大切ですが(敵にべたっと入玉の進路に金などを置かれると入玉できなくなる)、上部に玉が移動していくための適切な経路があることもまた同時に大切なのです。


つまり、「入玉しやすさ」とは「上部に自駒があること」と「上部に自駒がないこと」という一見すると相反しているように思えるどちらの要素も重要なのです。


後者を適切に評価しようと思うと、上図では88玉×95歩×96香×86銀×75歩×76金という形がよろしくないという認識が必要で、つまりKPPPPP(王と5駒関係 = 6駒評価)が必要になります。こんな多くの組み合わせについてテーブルなどを持つのはあまり現実的ではありませんが。


そこで、何らかの形で入玉ルートが自駒や敵駒で塞がれているなら減点するような評価方式を採る必要があります。


ともかく、2回に渡り、Bonanzaが玉頭戦と入玉模様の将棋について何故弱いのかを見てきましたが、3駒関係ではなく、歩が切れているかの情報を考慮した3駒〜6駒関係を導入すれば(導入できれば)これらの問題は解消しそうだなぁということだけまずは書いておきます。