将棋方程式を発見した!(5)

yaneurao2008-04-25



以前、盤上の駒は手番によって持ち駒に変換出来るということを書いた。
今回は、陣形の差は手番に変換できるということを説明する。


将棋の格言には「二枚替えなら歩ともせよ」などと言うとんでもない格言があって、しばしば初心者を困惑させる。私が将棋の格言のなかで一番役に立つと思っている格言は「四枚の攻めは切れない」と言うものだ。


「攻めは飛車角銀桂」と言うが、これをさらにもう一段階抽象化したのが「四枚の攻めは切れない」である。盤上の敵玉周辺の駒と自駒の金銀を足して四枚あれば、攻めはつながっていると判断する。なかなか使える格言である。


よって、将棋を「敵玉の24近傍(5×5)に盤上の4つの自駒からの利きを利かせた時点で勝ちと言うゲーム」だとモデル化して考えてもさほどピント外れにはならない。


実際、敵玉周辺の駒をある程度はがしたあとは、このような戦いになる。


今日の図は、後手が桂を打ったところである。見ての通り、桂馬は金に当たっている。先手には、金と桂の交換に甘んじる手段もあるが、それを避けるとどうなるだろう?金桂交換を避けるなら、この桂馬をとってしまわなければならない。この桂馬は後ろに歩が居る。よって金が左上に上がっても桂馬をただ取りすることは出来ない。


だから、この桂馬を取ろうと思うと歩で取りに行くしかない。つまり、「金を引いてかわす」+「歩をつく」×2 = 3手かかる。後手は桂馬を打つ1手しかかけていない。要するにこの取引は2手の手番を損したことになる。


このように手番を損したのは、陣形が悪かったからだ。桂馬のバックに歩がいなければ金を左上にあがることで2手で取りにいけただろう。つまり、1手しか手番は損しなかったはずだ。


あるいは、金の左側の自分の歩がもうひとつ前にあれば、こんなところから桂馬は打てなかったはずだ。


つまり、桂馬を打たれる前の陣形が相当の悪形であるとわかる。


要するに、この陣形である場合、桂馬を敵が持つと


・金をバックして歩をついて桂を取りに行く場合→2手の手番を損する。
・金をバックして桂馬はとりに行かない場合→手番の損得なしで敵の駒の利きを自玉の24近傍に一つ追加させられる。
・(図の金には自分の駒が利いていないので銀を上がって金にひもをつけた場合)→手番の損得なしに金桂交換させられる。
・(図の金には自分の駒がどこかから利いていて金を取られたあと、取り返せると仮定すれば)→1手の手番を得するが金桂交換させられる。
・手抜きした場合→2手の手番を得するが金をただ取りされ、敵の駒の利きを自玉の24近傍に一つ追加させられる。


のいずれかの選択を先手は迫られる。先手は盤面全体を大局的に見て、このなかから最善と思われるものを選択することが出来る。


このように陣形の差と手番とは交換できる。


以前、盤上の駒を手番によって手駒に変換できることを示したが、それと同時に陣形の悪さもまた手番と相互に変換出来るのである。


以上により、将棋というゲームは手番を基準に形勢を評価出来ることがわかる。


よって、将棋プログラムの大半が「王の堅さ」「盤上の駒」「手駒」「駒の働き」などを足し合わせて(線形和で)形勢を評価して、それで案外うまくいくのは、それぞれが相互に変換可能であるという将棋ゲームの特性によるものだ。


だから、「形勢判断は線形和ではなくもっと柔軟に(非線形和に)したほうがいいんじゃないか?」と言うのは、あまり将棋というゲームの性質をわかっているとは言い難い。実際のところ、近似的には線形和で十分なのである。