コンピュータ将棋基礎情報研究所

コンピュータ将棋に関する基礎的な情報を収集し、分析し、発表する所です。英語名称はLaboratory for Fundamental Information on Computer Shogi (LFICS)。

2016年03月

以前の記事「将棋の局面数 2:分岐の迷宮」のコメント欄において、Ulyemon様に教えていただいたのですが、「10の220乗」という数は、「将棋の局面数」を表すのではなく、「将棋であり得る棋譜の数」を表しているという説があるようです。確かに局面数ではなくて棋譜数を表しているのだとしたら、合流局面を考慮する必要はありません。しかし、本当に将棋の棋譜数は「10の220乗」なのでしょうか? 今回は、将棋の棋譜数について考えてみたいと思います。

本題に入る前に、Ulyemon様にご紹介いただいたWikipediaの「Game complexity」の項目に記してあることについて簡単に紹介します。

「ゲームの複雑性」を測る指標には「state-space complexity(状態空間複雑性)」「game-tree complexity(ゲーム木複雑性)」等があります。前者は、初期局面から到達可能な局面の数(実現可能局面数)のことです。後者は、完全解析で先手勝ち/後手勝ち/引き分けを決める際に、枝狩りや合流局面を考慮せずに全幅でミニマックス探索をする時の終端局面(leaf node)の数のことであり、要するに棋譜数のことです(調べると、棋譜数のことだと明確に示している文章もあるのですが、Wikipediaの書き方だと曖昧で、もしかすると一般的な定義が確定していないのかもしれません)。これらは、あくまでも数学的な定義であり、数理的に解くこと(完全解析等)を考えない場合には意味のない数字になるだろうということは以前の記事に記した通りです。

さらに、上述のWikipediaの「game-tree complexity」の小項目には、一部のゲームに適用できる妥当な下限値の見積もり方法として、平均分岐数の平均手数乗(「10の220乗」の算出式)が書かれています。つまり、「10の220乗」というのは、棋譜数の見積もりではなくて、棋譜数の下限値の見積もりであったというわけです。これなら筆者も納得できます。

結局のところ、「10の220乗」というのは元々は「棋譜数の下限値」の見積もりであったものが、いつの間にか「局面数」や「棋譜数」の見積もりと勘違いされて世に広まってしまったということなのでしょう。

さて、本題の将棋の棋譜数の見積もりに戻ります。

まずは、感覚をつかむために、最大手数を256手に限定した場合(256手ルール)で考えてみましょう。

基本的には各手数ごとに局面数は平均分岐数のべき乗で増えていきます。平均分岐数は80だとします(参照:「ゲームとしての将棋のいくつかの性質について」)。

ただし、各手数ごとに終局する棋譜が出てきますので、その分だけ局面数は減り、棋譜数が増えることになります。最大手数に到達したら、全てが終局となって、その時の局面数は棋譜数に加算され、残った局面数はゼロになります。

各手数における終了/未終了棋譜の割合は、棋士棋譜集(2015年11月版)における手数分布から算出します。手数分布は「手数分布はガンマ分布で近似できるか?」の記事にあるものと同じものです。

計算された未終了棋譜の割合を以下に図示します。手数の大きいところでデータにばらつきがありますが、後に示すように、これから見せる結果には大きな影響はありません。

t-p

さて、計算結果は以下のようになります。黒点がその手数までの棋譜数であり、青点がその手数における局面数です。縦軸は、常用対数になっていますので、10の何乗であるかを示しています。

t-kifusuu

平均手数である116手目を見ると、その手数の局面数は約10の220乗になっており、これが棋譜数「10の220乗」説の数字に対応しているものと思われます。しかしながら、これはあくまでも下限値であり、棋譜数はその後もべき乗的に増えていって、最終的な棋譜数は約10の483乗に達します。

以上の計算を、未終了棋譜割合を定数P(ただし、最大手数でのみ0とする)に簡単化した上で、最大手数をnに一般化してみましょう。

平均分岐数をBとすると、棋譜数Kは\[K = B^{n} P^{n - 1} + (1 - P) B \frac{(B P)^{n - 1} - 1}{B P - 1}\]となります。さらに、\[n \gg 1,~~ B P \gg 1,~~ P \sim 1\]の時、棋譜数は\[K \approx B^{n} P^{n - 1} \approx (B P)^{n}\]となり、最後の局面数で近似できることになります。実際に、n = 256、B = 80、P = 0.97(平均手数における未終了棋譜割合)とすると、約10の483乗となって、上記の結果と一致します。

棋譜数の常用対数を取ると、\[\log_{10}{K} \approx n \log_{10}{(B P)} = A~ n\]となるため、棋譜数が10の何乗であるかは最大手数nに比例しています。ここで、平均分岐数Bと平均未終了棋譜割合Pの値については様々に議論の余地があるものと思われますが、それは基本的に比例係数Aの値の集約されることになります。Pが1に近いことを鑑みると、比例係数Aの値は1.8~2.0程度であると推測できます。

以上のことから、最大手数が分かれば、棋譜数が見積もれることが分かりました。

さて、将棋の最大手数はどれくらいなのでしょうか?

勝負としての将棋であるのならば、自然と決着の方に進むものなのですが、ここで考えているのは対局者が互いに協力して最大手数を目指した場合にどれくらいの手数まで進めるのかということです。

将棋には千日手があり、同一局面は3回までしか許されませんので、手数は有限です。しかし、他に手数を制限するルール(256手ルール等)がないとすると、将棋の局面数の3倍、すなわち10の69乗程度までは手数を伸ばせる余地があります。

仮に最大手数を10の69乗とすると、棋譜数は10の“10の69乗”乗程度ということになります。文字だと分かりにくいですが、数式表記だと、\[10^{10^{69}}\]であり、矢印表記を使うと、10↑10↑69ということです。普通に紙に書こうとすると、ゼロが10の69乗、すなわち銀河の原子数分だけ必要になりますので、まあ無理でしょう。

ちなみに、局面数を最大に活かす手数であるのならば、局面の手数配置の数によって上限を見積もることもできます。この場合は、10の69乗の階乗ですので、スターリングの公式により、約10の“10の71乗”乗(10↑10↑71)程度ということになり、上記の推測と矛盾しない結果になります。

以上、今回は将棋の棋譜数について考えました。将棋の棋譜数の常用対数は最大手数に比例しており、256手ルールの場合には棋譜数は約10の483乗、特に上限手数の縛りがない場合には、最大で10の“10の69乗”乗程度まで増える可能性があることが分かりました。

-------------------

追記(2016年4月2日)

将棋の局面数 2:分岐の迷宮」の記事のコメント欄において、mak様が指摘されたことを少し敷衍して記します。

局面の合流を無視する時、t手目の次の局面数n(t + 1)は、t手目の全て局面からの分岐数の和になりますので、\[n(t + 1) = \sum_{k(t) = 1}^{n(t)} b(t, k(t))\]と書き表せます。ここで、k(t)は手数tにおける局面を指定する数(1からn(t)まで)、b(t, k(t))はk(t)で指定される局面の合法手の数です。

この式は、\[n(t + 1) = n(t) M(t) = \prod_{s = 0}^{t} M(s)\]のように書き直せます。ここで、\[M(t) = \sum_{k(t) = 1}^{n(t)} \frac{b(t, k(t))}{n(t)}\]は、その手数における平均分岐数を表しています。

「相加平均は相乗平均以上である」という数学の定理を使うと、\[n(t + 1) = \prod_{s = 0}^{t} M(s) \leq [ \sum_{s = 0}^{t} \frac{M(s)}{t + 1} ]^{(t + 1)} = [ L(t) ]^{(t + 1)}\]となります。ここで、L(t)はt手までの各手数における平均分岐数の平均であり、全局面の分岐数の平均である本文中のBとは別のものなのですが、tが十分に大きければ、\[L(t) \approx B P\]となると予想されます。

つまり、本文中の見積もりは少し大き目に出ている可能性があるということです。

ただし、式中の全てのMが、Lや(B P)に近い値であるのならば、上記の不等式は等号で近似することができます。各手数には膨大な数の局面が存在しているため、序盤を除けば、ほぼ等号成立に近い状態になっている可能性が高いと思われます。

また、未終了棋譜割合についても、序盤を除けば、本来はほとんど手数には依らないと考えられますので、棋譜データを使うよりも、定数Pでおいた見積もりの方がいいのかもしれません。

前回の記事「将棋の局面数 1:局面数は無量大数」では、「駒の配置から将棋の局面数を見積もる」ということを考えました。今回は、「一手ごとの分岐から考えると局面数はどうなるのか」ということを考えてみたいと思います。

実は、前回の記事の冒頭で触れた「将棋の局面数は10の220乗」という説は、分岐に基づく推測に由来します。すなわち、将棋の一局面における合法手の平均は約80手であり、将棋の平均手数は約115手であるから、\[80^{115} \approx 10^{219}\]となり、約220乗だというわけです。

この計算方法はとても不可解であり、筆者にはよく理解できません。合法手の平均が約80手だというのはいいとして(参照:「ゲームとしての将棋のいくつかの性質について」)、なぜ平均手数が出てくるのでしょうか。この計算式の依って立つ仮定に基づくと、局面数はべき乗で増えていくことになるわけですから、平均手数ではなくて最大手数にしないと局面数を見積もることはできないはずです。また、最大手数ならば、平均手数とは異なり、棋譜集には依存せずに下限値も分かります。さらに、最大手数を使うと、とてつもない数字が出てきてしまうことになり、仮定の問題点が明確になるという利点もあります。

実際に、前回の記事で示した通り、駒の配置から見積もられた将棋の局面数は10の68~69乗程度であり、この分岐による見積もりは、最大手数を平均手数まで落としたとしても、明らかな過大評価になってしまっています。

それでは、どこが間違っていたのでしょうか?

この仮定の最大の問題は、合流局面の存在を考えずに、ずっと局面数がべき乗で増えていくと考えたところにあります。一度数えた局面は、次に出てきた時には、二重に数えてしまうことになるため、本来は消してしまわないとなりません。既出局面の数が局面数よりもずっと少なければ、合流局面は無視できるかもしれませんが、既出局面の数が局面数に近くなると、合流局面の割合が大きくなって、新規局面がべき乗で増えるという事はなくなるわけです。

実際、将棋の局面数を10の68乗として、一局面の合法手を80手とすると、大体35手で将棋の局面数に達して、新規局面が出なくなるという計算になります。もちろん、実際には、初期局面から35手でたどり着けない局面も沢山ありますので、手数に対する新規局面数の分布は、初期局面から最短の手数で作れる局面の数の分布になるわけです。この分布は、合法手の平均とも、最大手数とも、平均手数とも、何の関係もありません。

さて、以上のことから、分岐から局面数を見積もるのが難しいということが分かります。分岐から局面数を見積もるには、合流局面の数を考えなければならず、合流局面の数を考えることは局面数を見積もることよりもずっと大変だからです。

しかしながら、このことは逆に考えると、局面数が分かっているのならば、分岐を考えることで合流局面数についての推測ができるということを示唆しています。

実際にやってましょう。

前回の記事に記したように、10の68~69乗の局面数というのは「ありえない」ような局面を大量に含んだものでした。成り駒を禁止すると約10の54~55乗となりますが、ここでは、さらに数を絞って、10の50乗の「ありえそうな」局面を考えることにしましょう。ここで、50乗という数字に深い意味はありません。以下の議論は、局面数を変えても、数値が変わるだけで同じように進めることができます。

最初の30手は合流局面も多いので、合流局面を除いた時の平均分岐数を2に設定しておくとすると、30手終了時には約10の9乗個の局面が現れます。多くの将棋ソフトの定跡ファイルの登録局面数は10の5~6乗個程度ですが、定跡を外れた後の変化の局面まで考えると、ここでの30手目までに約10の9乗個の局面というのは特に多いとは言えないでしょう。

その後の平均分岐の数を3に設定してみます。これは、各局面で平均的に3手くらいの指し手を候補として考える時の将棋の可能性の世界に該当します。将棋ソフトの平均分岐数が3くらい(ソフトにより2~5)という話もありますので、将棋ソフトが見ている将棋の世界と考えてもいいかもしれません。

31手目以降、3の累乗で合計10の50乗の局面数に到達するには116手までかかります。途中での投了局面の影響を考慮しても、この116手というのはあまり変わりません(実際に補正計算もやってみたのですが、説明が煩雑になる割に結果があまり変わらないので省略します)。ちなみに、平均分岐数3の代わりに、2の場合には166手、4の場合には98手になります。

ここで重要なことは、116手目以降には新規局面はほとんど現れないということです。つまり、それ以降の局面は、分岐による可能性の世界のどこかにすでに存在していて、手数をかけて遠回りをして合流したという解釈になります。

この結果は、かなり意外だと感じられる方が多いのではないでしょうか。例えば、「持久戦になっても局面が複雑になるわけではなく、両者手損の遠回りをして急戦の局面に合流するだけ」と書くと、「そんなわけないだろ」という感じられる方がほとんどでしょう。実際、多くの手数をかけないとたどり着けない局面も存在するため、その点でこの話には検討の余地があるのですが(特に分岐数が多い場合)、簡易的な見積もりとしては、このような結果になるということです。

以上、今回は将棋の局面数について分岐の観点から考えてみました。

10の68~69乗という局面数は膨大に感じられますが、そんな数でも分岐の累乗は意外と簡単に食い尽くしてしまいます。将棋の“樹”は、ただ枝が広がっていくような単純な構造にはなっておらず、各枝が複雑に合流しあった迷宮のような構造になっており、その構造は、平均分岐数3といった大胆な枝狩りを行った場合でさえ、消えることはありません。今回の見積もりは、そのようなことを示唆していると言えます。

将棋の局面数は10の220乗だと言われることがあります。実は、この見積もりは正しくないとされており、実際の局面数はもっと小さいと推定されています。この「220乗」説の検討は次回にまわすとして、今回は将棋の局面数をざっくりと見積もってみたいと思います。

将棋の局面数については、篠田正人先生の見積もりが有名であり、「将棋における実現可能局面数について」(pdfファイル)という論文において、10の60乗以上70乗未満と下限・上限を厳密に算出し、さらに68~69乗程度ではないかという推測を述べておられます。篠田先生は数学者らしく“はさみうち”の方法を用いて慎重に見積もっておられるのですが、ここでは、物理学的な近似計算を用いて大胆に見積もりたいと思います。

まずは、以下の仮定で局面数を計算します。

  1. 王手については考慮しない。
  2. 持ち駒、成り/生駒、先手/後手駒は全ての数の組み合わせの場合に分けて積算する。
  3. 持ち駒以外は、歩、と、桂、成桂、香、成香、銀、成銀、飛、龍、角、馬、金、玉の順にそれぞれ先手駒、後手駒の順で盤に配置する。
  4. 最初の歩を配置する時の空きマスは、全空きマスの8/9で近似する。2枚目以降は全空きマスの8/81ずつ減らしていく(二歩のため)。
  5. 最初の桂を配置する時の空きマスは、全空きマスの7/9で近似する。2枚目以降は空きマスが1ずつ減る。
  6. 最初の香を配置する時の空きマスは、全空きマスの8/9で近似する。2枚目以降は空きマスが1ずつ減る。

ここで、仮定4~6において、歩・桂・香の配置の数を算出する際に近似を使っていることに注意してください。これらは本来は、既に置かれている駒の配置が詳細に分かっていないと正確な計算ができないのですが、ここでは、配置の情報は使わずに、平均値を用いて近似しています。この計算は、手でやろうとすると大変ですが、コンピュータにやらせると簡単です。

結果として、\[6.15 \times 10^{69}\]という数値が得られます。この数字は、篠田先生の上限の見積もりに近い値です。

この計算では、王手を考慮に入れていないため、王手放置の違法局面が含まれてしまっています。王手放置局面を取り除くには、最後に後手玉を配置する際に先手駒の利きのないマスに限定する必要があります。空きマスの中に先手駒の利きのない配置可能マスがどれくらいあるのかは局面の駒の配置に依ってきてしまうのですが、簡単に平均を見積もるとおおよそ3割程度になります(盤上に全駒の半数の20枚の先手駒が配置されている時の平均的な利きの割合)。

結果的に、王手放置局面を取り除くと、大体10の69乗という見積もりになります。

さらに、篠田先生は「初期局面から到達可能であるか」という点も考えておられるのですが、ここではそこには深入りしません。

ただし、「王手放置を経由しないと作れない」というような明らかに無理がある局面が少数ながらも存在することを考慮すると、少し下方修正が必要で、最終的には10の68~69乗程度という見積もりになります。この結果は、偶然にも篠田先生の推測とピッタリと一致しています。

江戸時代の算術書である「塵劫記」によると、10の68乗は「無量大数」と呼ばれます(※写本によっては88乗という説もあります)。これは「塵劫記」に記された数の最大の位であり、これより上の位は日本には存在しません。日本の数の最大位が将棋の局面数と同じだというのは、中々によくできた話です。

ちなみに、平均的な銀河にある原子の数はおおよそ10の69乗個くらいです。将棋の局面数は銀河にある原子の数と同程度ということもできるでしょう。ちなみに、宇宙には少なくとも10の11乗個の銀河があるとされていますので、残念ながら宇宙には及びません。

さて、ここで見積もった局面の中には「絶対にありえないだろ」というような局面が大量に含まれています。初期局面から原理的に到達できないものもあるでしょうし、到達可能であっても、どう考えてもありえないような手筋を経ないと作れない局面も沢山あります。むしろ、人間的に「ありえそう」に感じる局面の方が圧倒的に少ないというのが実情でしょう。

人が「ありえない」と感じる局面で最も数が多いのが「成り駒が多くある」局面だと思います。成り駒は作るのが大変であり、通常は大量にできることはありませんので、成り駒がウヨウヨしている局面を見ると「ありえない」と感じるわけです。

そこで、思い切って、成り駒を全て禁止した上で同じ手法で局面数を見積もってみると、約10の54~55乗という結果になります。この辺りが「ありえそうな」局面の数の下限になっているのではないでしょうか。

最後に、これらの数字を元にして、完全解析にかかる時間を見積もってみましょう。

ここでの完全解析は、全ての局面を調べ上げるのではなく、ミニマックス原理に基づいて「両者最善が先手勝ち/後手勝ち/引き分けのどれになるのか」を判定するだけに留めることにします。この場合、探索(合法手生成)が必要な局面数は、理想的に上手くやれば、10の30乗程度で済むと推測されます。

一秒間の探索局面数(NPS)を10の14乗とすると(※2016年の現時点では高性能機一台で10の7~8乗程度)、10の30乗の局面を探索するには、約3億年かかることになります。これが完全解析が現実的ではないと言われる所以です。ただし、現時点では予測できない根本的な技術革新があれば、もっと短時間で済むようになる可能性も否定はできません。

「局面数はゲームの複雑性を測る指標である」と言われることがありますが、これは完全解析を念頭においての考え方だと思われます。完全解析がほぼ不可能だとみなされる局面数であるのならば、もはや「局面数の多寡はゲームの複雑性とは関係しない」と言えるのではないでしょうか。この場合、ゲームの複雑性というのは、数理を離れて、工学的な領域の話題となり、局面評価の技術的な難易度の話に帰着されるのだと思います。特に、機械と人とを比較する場合には、両者の間の相対的な能力差の話になりますので、純粋に技術の問題になります。

以上、今回は将棋の局面数について駒の配置の数から考えました。ざっくりとした見積もりでは、将棋の局面数は10の68~69乗程度であり、成り駒を禁止しても10の54~55乗程度になります。

次回は、「一手ごとの分岐から考えると局面数はどうなるのか」ということについて考えてみたいと思います。

-------------------

追記(2016年4月1日、ただし、エイプリルフールにあらず)

本文に記した完全解析の見積もりについて、補足します。

必要な局面数が「理想的に上手くやれば、10の30乗程度で済む」というのは、こういう見積もりでした。

  1. 実現可能局面数は篠田先生の下限値の10の60乗を採用。
  2. アルファベータ法で理想的順序なら実現可能局面数の平方根となり、10の30乗。

しかし、今になって考えると、この見積もりはさすがに甘すぎたのではないかと感じています。理由は以下の2点です。

  1. 合流局面について全て記憶して利用できると暗黙に仮定しているが、10の30乗の局面ですら、現実的には不可能である。
  2. 一つの局面が、ある枝では評価が不要であっても、別の枝では評価が必要であることがあるため、合流局面を省いた後にさらにアルファベータ法の平方根を適用するのは、あまりにも非現実的である。

特に記憶容量の問題は深刻であり(※記憶を利用しない手法を取ると計算量はさらに膨大に増えます)、探索時間以上にそちらの方が問題なのではないかと今は考えています。

コンピュータと棋士とを比較する際に「消費エネルギーを同等に揃えて比較するべきではないか」という意見を見かけることがあります。その意見の是非はさておき、「人が将棋を指す時のエネルギー消費はどれくらいなのか」を今回は簡単にまとめておきます。

人間には生きていく上で必要不可欠な「基礎代謝」というものがあり、これは人によるのですが、成人男性で一日あたり約1500kcal、成人女性で約1200kcalくらいです(参照:ウィキペディア)。また、安静時に消費するエネルギーは「安静時代謝」と呼ばれ、おおよそ基礎代謝の1.2倍とされています。さらに、人間の様々な活動におけるエネルギー消費を安静時代謝の何倍かという数字で表したものをMETs(メッツ)と言います。

国立健康・栄養研究所の「身体活動のメッツ表」(pdfファイル)によると、将棋などの座って行うボードゲームのMETsは1.5になっています。ただし、これは縁台将棋などで気楽に行われる対局のことであり、緊張して必死に考える競技対局においては最大で2くらいまでは上昇するのではないかと考えられます。ここでは、1.5~2.0と幅をもって見ておきましょう。

以上の数値から計算すると、基礎代謝の分は除いて、成人男性が将棋を指す時のエネルギー消費は、1時間あたり約50~88kcalということになります(成人女性の場合は約8割)。食物で換算すると、炭水化物や糖分は、1gあたり4kcalですので、1時間あたり約13~22gとなり、脂質の場合には、1gあたり9kcalですので、1時間あたり約6~10gとなります。これらの数字は、座って静かに行う活動としては大き目のものですが、体を動かす活動と比較すると小さなものです。

カロリーをワットに換算すると、1kcal/時 = 約1.163Wなので、約58~102Wということになります。これらの数字には生存を維持するための基礎代謝(約73W)の分は含まれておりませんので、ご注意ください。

さらに、値段で言うと、50Wを1時間使用する時のエネルギー価格は、石油で約0.1円(1バレルあたり3000円の時)、電気で約1円(1kWhあたり20円の時)、食料で約10円(500kcalあたり100円の時)ということになります。ここで、物や形態によって値段が変わっているのは、価格の妥当性や税金の話はさておくと、基本的にはそれを作って提供するコストを反映しています。つまり、同じエネルギーの電気を提供するには約10倍の石油が必要であり、同じエネルギーの食料を提供するには約100倍の石油が必要であるというわけです。

コンピュータの場合は電気で動きますが、人間の場合には食料が必要ですので、価格に直すと約10倍の差が生じます。食料も安価な穀物ではなく、うな重などの高価な食品ということになると、100倍以上もの差になります。贅沢品はさておいても、それだけ人間の体はエネルギー効率が悪いということです。

以上、今回は人が将棋を指す時のエネルギー消費について簡単にまとめました。

エネルギーというのは現代科学で最も重要な概念の一つであり、工学においてもエネルギー消費を考えることはとても大切なことです。同じことをより少ないエネルギーで実現できるのであれば、価格も下がりますし、余ったエネルギーを他に回すことも可能になります。ただ、人が将棋を指す事とコンピュータが将棋を指す事とを同じ活動とみなせるのかというと、根本的に別の事なのではないかと筆者は感じます。その違いにこそ、人が将棋を指す意味があるのではないでしょうか。

2016年5月に開催される第26回世界コンピュータ将棋選手権において、フィッシャークロックルール(10分+一手ごとに10秒加算)が採用されるとのことです。これまでの持ち時間は、第25回が10分+秒読み10秒、それより前は25分切れ負けでした。ここ数年は、おそらくは電王トーナメントの影響等もあって、最適なルールを模索している状態のようです。

一般論として言えば、切れ負けは、対局時間の管理がしやすく、大会運営に有利である反面、長手数の対局になると極端に棋譜の質が落ちるという問題点もあります。一方で、秒読みやフィッシャークロックルールでは、対局時間の見通しが難しくなる反面、長手数の将棋になっても指し手の品質を保つことができます。結果的に、大会の運営と対局の品質とが秤にかけられる関係になっているわけです。

また、第25回の選手権においては、会場のネット環境の影響もあって、秒読みにおける時間切れのトラブルが問題となりました。開発者としては、できるだけ長く考えさせて思考時間を増やしたいわけですが、指し手の伝達遅延が発生しうる不安定なネット環境においては、ギリギリまで考えさせると時間切れのリスクが大きくなるため、調整が困難になって、現場で頭を抱えることになってしまうというわけです。今回のフィッシャークロックルール採用の背景には、常に一定時間を残しておくことを可能にして、そうした問題への対処を図ろうという意図もあるものと思われます。

さて、今回は、フィッシャークロックルールについて、簡単に紹介してみたいと思います。

フィッシャークロックルールは、アメリカのチェス世界王者ボビー・フィッシャーが1988年に考案したものです。現在では、ほとんどの主要なチェスの大会で標準的に用いられています。

ここで重要なのは、考案者が「ボビー・フィッシャー」であるという点です。この人は、ただのチェス世界王者ではありません。非常に個性的で、伝説的な業績を残し、波乱の人生を歩んだ人物です。晩年には日本とも深い関わりを持ち、2004年に成田で拘留された際にはニュースにもなりました。彼の人生については、友人であったフランク・ブレイディーが「完全なるチェス 天才ボビー・フィッシャーの生涯」という著書に記しています。当時のチェスの世界が垣間見れたり、フィッシャーの奇行に思わず頭を抱えたり、腹を抱えたり、それでいて、彼の奇妙な言動も何となく分からなくもないような感じがして、とても興味深い本です。

年表的には、ウィキペディアの「ボビー・フィッシャー」の項目にある通りであり、フィッシャークロックルールは、1992年のフィッシャー対スパスキーの自称「世界選手権マッチ」で最初に使われ、世に広まりました。この試合は、フィッシャーにとって20年ぶりの表舞台であり、17歳の女性への片思い(?)が背景となっていたり、対ユーゴスラビア経済制裁に反する反米的な活動としてアメリカを追われ、成田で拘留されるきっかけになったりと、とても劇的なものです。もし、この試合がなければ、フィッシャークロックルールが普及することはなかったでしょうし、世界コンピュータ将棋選手権に採用されることもなかったと考えると、少し不思議な感じがします。

上記のブレイディーによる評伝には、考案理由について、以下のように記してあります(同書427ページ)。

この新しいシステムなら、持ち時間がなくなったときに数秒以内で慌ててつぎの手を指すということがなくなり、そうなれば時間の切迫による凡ミスが減らせる、というのがフィッシャーの考えだった。対局で自慢すべきなのは読みの奥深さであって、機械的手段による勝利ではない、というわけである。

フィッシャーは非常にルールにこだわる人でした。そのルールへのこだわりは、自分の納得できる条件でなければ試合を拒否するというまでに徹底していました。フィッシャークロックルールも、そうした彼の姿勢から生まれたものであるのは間違いないでしょう。

ブレイディーによる評伝を読む限り、彼のルールへのこだわりは、彼自身が試合で最善を尽くせるようにというのが最大の目的であったように感じます。ただ、もし仮にフィッシャークロックルールが彼自身が有利になることだけを目的としたものだったとしたら、こんなに世に広まることはなかったでしょう。これだけ広く普及したのは、このルールが普遍的に優秀だと認められたためだと思われます。

それでは、ここで言うルールの「優秀さ」とは何でしょうか?

上記の評伝の引用を一般化すると、このようなことになるかと思います。

  1. そのゲーム固有の面白さを促進させる/損なわないものであること。
  2. ゲーム運用上の制限内で、各人がより最善を尽くせるものであること。

チェスの場合、ゲーム固有の面白さは「読みの奥深さ」にあって、持ち時間の管理のような「機械的手段」にはないというのが、フィッシャーの主張だったようです。もしその主張が正しいとするならば、フィッシャークロックルールは上記の1の条件を満たすことになります。また一方で、例えば、チェスボクシング(チェスとボクシングが融合したもの)やショットグラス・チェス(駒を取ったら酒を飲むというもの)等は、それはそれで面白いのでしょうが、チェス固有の面白さを損なってしまうという解釈になるかと思います。

また、対局時間を増やすことなく、「時間の切迫による凡ミスが減らせる」という主張は、上記の2の条件に該当します。ゲームの運用に支障をきたすことなく、品質が向上できるのであれば、選手各人の充実感も増しますし、また、見ている観衆にとっても喜ばしいことになります。

一方で、フィッシャーが同様にこだわっていたことでフィッシャークロックルールほど普及しなかったものに、対局数制限無しの10勝先勝方式があります。チェスは引き分けが多い競技ですが、引き分けをポイントに数えずに、勝敗のみで決着をつけようというルールです。フィッシャーの主張によると、

自分の方式なら実際には引き分けの数が減るはずだ、引き分けるよりも勝とうとして、プレイヤー同士がもっと大胆な手を指す対局になるはずだ

ということであり(同書379ページ)、もしもチェスの本来の面白さが、引き分けでポイントを稼ぐことにあるのではなく、勝敗を巡って「血を流して」戦うことにあるのだとすれば、このルールは上記の条件を満たし、「優秀」であると言えます。

では、何故こちらの方のルールは普及しなかったのでしょうか? これについては、上記の評伝の解説で、羽生善治名人がこのように記しています(同書615ページ)。

フィッシャーが望んでいたのは真のチャンピオンを決める理想的なルールであった訳ですが、同時に、運営する、設営する側にとっては現実的には困難なオファーであった訳です。

つまり、いくら「優秀」なルールであっても、現実的には運営者側の都合も無視するわけにはいかないというわけです。この点は、ルールについて考察する際には、忘れずに注意しておく必要があります。

さて、コンピュータ将棋ということに絞って考えると、フィッシャークロックルールは「優秀」だと言えるのでしょうか?

冒頭に記した秒読みの時間調整の問題は、アイデアや技術を競うコンピュータ将棋固有の面白さとは違ったものでしょうから、フィッシャークロックルールは上記の条件1を満たしていると言えるでしょう。また、条件2については、時間切れ負けが減るというだけでも満たしていると言えるかもしれませんが、さらに、同じ思考時間であるならば、秒読みよりもフィッシャークロックルールの方が持ち時間を有効に活かせるという可能性もあるのではないかと思います。

特に最後の時間の有効活用の可能性については、コンピュータ将棋の場合には実際に実験を行って検証することも可能です。例えば、片方を秒読みに、もう片方をフィッシャークロックルールにして、平均思考時間が同等になるように設定(もしくは補正調整)し、自己対局で勝率を測定してみればよいわけです(※持ち時間を有効活用することは、プログラムの効率化と同じ効果がありますので、勝率に影響するはずです)。現時点ではフィッシャークロックルール用に調整されたソフトが公開されていないため、実験は簡単ではありませんが、選手権後には調整済みソフトの公開も期待できるため、簡単に実験できるようになると予想されます。

実験結果にもよりますが、現時点での推測としては、コンピュータ将棋にとってもフィッシャークロックルールは「優秀」である可能性が高いのではないかと思います。それ故に、世界コンピュータ将棋選手権でも採用されることになったのでしょう。

以上、今回はフィッシャークロックルールについて簡単に紹介しました。このルールについて論じる際には、考案者であるボビー・フィッシャーの存在を頭の片隅に入れておくと、議論が少し豊かになるかもしれません。

----------------------------------------

追記(2016年3月16日)

チェスソフト(RybkaとCrafty)を用いて歴代王者の棋譜を解析し、時代を超えて棋力を比較しようというプロジェクトがあります(Truechess.com)。棋譜選びの際の抽出期間(1、2、3、5、10、15年間)によって結果は異なりますが、なんとフィッシャーは1~10年間の全てで歴代1位となっています。15年間の場合だけ順位が下がるのは、彼が隠匿生活に入るのが早かったため、未熟な頃の棋譜が数多く含まれてしまうからです。この結果はフィッシャーの天才性を客観的に示す一つの証拠であると言えるでしょう。

このページのトップヘ