電王戦見ながら将棋について考えていた

将棋でコンピューターとプロが白熱した戦いをしているので、コンピューター将棋について調べていたら、wikipediaの「コンピューター将棋」の項目にかなり微妙な記述があった。


将棋の局面数についての記述である。


平均着手可能手数は80もあるので、L手先までの局面数は 80^L という膨大な数になる。


これ読んで、即座に「それは違うだろう」と思ったのである。その計算式だと、将棋用語でいうところの「千日手」が大量に含まれることになるのである。


そのことをわかりやすく計算するため、ここでは「王将しかいない架空の将棋の盤面」というものを使ってみよう。マスのひろさは通常の将棋と同じ9×9とする。あくまでもわかりやすくするための架空の将棋盤である。王将しかいなかったら絶対に詰まないしな。


まず、wikipedia式の計算をすると、王様は周囲の8マスに進めるのでL手先は8^Lとなる。4手目で約4000パターン、5手先で約32000パターンとなる。ものすごい勢いで増えていく。


しかしである。81個のマスに2つのコマが置いてあるという風に考えてみよう。その組み合わせは先手が置ける場所が81マス、後手は残りの80マスに置くと考えると 6480パターンしか存在しない。これは固定値である。いや、王様を置くだけでそれだけのパターンがあると考えるとすごいが、最初の「着手数」をもとにした計算式とは全然違う印象を与える。


イラストの説明もつけておく。



で、なんでこんな違いが起こるのかというと、僕が存在するすべての盤面の数を計算しているのに対し、平均着手数での計算方法だと盤面と盤面をつなぐ線を計算しているのである。僕が計算した「王将しか存在しない架空の将棋」の6480パターンは王将の並べ方のすべてを網羅したものであるけれど、さらにこの6480パターンが組み合わさって流れをつくって「棋譜」をつくることになる。まぁ、絶対に終わらない将棋だけどな。

で、この計算に何の意味があるか。


将棋で棋士に勝つ可能性が出てきたので、その次に来るものは何だろうと考えていたのである。僕は別に存在しうるすべての"盤面"(棋譜ではない)を網羅するだけでことが足りると言っているのではない。それらを線で結んで解析するというアプローチを見据えているのである。それはネットワーク構造を解析するような形になる。


僕の問題意識は、現行のルールで行われている「本将棋」に"勝つこと"だけではなく、将棋に類するありとあらゆる種類のボードゲームの特徴を研究することにはどうしたらよいかというところにある。「存在しうる盤面を網羅し、棋譜はそれぞれの盤面を結ぶ線で表現する」というのがそれを可能にするのではないかと思うのだ。一例をあげれば、コマの使いまわしができないチェスは最初の局面から「花開く」ように局面が分岐しているのに対し、コマを使いまわすことのできる将棋は局面同士が「円環」を描く構造が多々存在する、というような視覚的なイメージでそれぞれのボードゲームの特徴をとらえることができるのではないかと思うのである。


まあ、俺は面倒くさいのでやらんけど。将棋なんかやったことがないに等しいレベルだし。