コンピュータは神様になれない

ここのところコンピュータ将棋に関する話題が続いていますが、いろいろな人の言っていることを聞いているとちょっと違うのではと思わされることがときどきあります。

将棋プログラムでは「人間の(有段者の)指し手に近づいた」ということを今でこそ褒め言葉のように使っているが、そのうち、逆の意味で人間の理解を超える手を指したり、あるいはさらに進むと、「ノビタの碁」のようにすぐ投了してしまうとか。
プログラムA「私が先手です。勝ちましたね」
プログラムB「ありません。詰まされました」
人間さん「まだ一手も指してないじゃないですか…」
プログラムA「たかだか可算個の組み合わせしかないゲームじゃ退屈ですよ」
プログラムB「まったくですね。決定論的で想像力の余地がない」
人間さん「………」

これは10月15日か16日に妖精現実 フェアリアルに書かれていた文章の一部です(このエントリの末尾に全文を転載しておきます*1)。この筆者の方はわかっていてこのような書き方をしていますが、こういうことは現実にはありそうもありません。

はじめに、前提となる知識として、将棋に似たゲームでは双方が最善を尽くしたとき先手必勝になるか後手必勝になるか引き分けになるかが決まっているということを押さえておきましょう。例えば、3x3○×ゲームでは引き分けになります。先手が初手に真ん中に○ときたら、後手は隅に×としておけばあとはどうやっても引き分けに持ち込めるでしょう。ほかにも、ニムは必勝法の知られたゲームとして有名です。

将棋がこれと同じく必勝法(もしくは必ず引き分けになる方法)が存在します。直感的に説明すると、詰みの局面をすべてリストアップして、次にあと1手で詰みになる局面をすべてリストアップしてと続けていくと、将棋で登場する可能性のある局面は有限ですからいつかは実戦初形に到達するわけです。もう少しちゃんとした説明を読みたい方には『ロジカルな将棋入門』(野崎昭弘著、絶版)をおすすめしておきます。

このような必勝法を知っている仮想的な存在を「将棋の神様」と呼ぶことがときどきあります。例えば、羽生善治四冠は「将棋の神様と、角落ちならなんとか。香落ちではだめですね。」と話したことがあるそうです*2

将棋に必勝法が存在すると聞いた人がときどき示す反応が「それがわかったら将棋を指す意味がなくなるんじゃ?パソコンもだいぶ速いなっているし。」というものです。しかし、その心配は全くありません。将棋で出現する可能性のある局面はあまりにも膨大なので、コンピュータの演算速度がいくら速くてもとてもすべてを計算することなど不可能です。必勝法が「存在する」ことと「見つけられる」ことの間には、天と地ほどの差があるのです。

月刊数理科学2005年7月号の「将棋を指すコンピュータの数理」の連載記事で、小谷善行氏は「将棋を解く」という課題は全く見込みがないと書いています。

筆者のところで,将棋の小さい盤について解く,すなわち勝ち・負け,引き分けを求めてみたことがある*3.縦3横3,または縦4横3の盤で,一段目に王に加えていくつかの駒を選んで並べたものを初期配置とする.また成れる段は一段目だけ,などとする.そうすると,様々な初期配置について,たいていの場合解ける.一部時間切れになる.これほど小さくてもそれほど簡単ではない.例えばこのミニ将棋はどうなるだろう(一段目で成れるとする)*4

こうなると今日の技術では縦4横4の盤のミニ将棋が何とか解く目標にできるくらいである.マス目が1マス増えるごとに手間が数倍になると考えるのがよい。縦5横5の55将棋というのがあるが,それを解くめどもたたない.結局通常の将棋を解くのがいかに不可能な問題かが理解できるだろう.

未来のことは誰にもわかりませんから、コンピュータの急速な発展、もしくは思いもかけないプログラミング上の発見によって可能になる可能性を否定はしません。しかし、それには大幅な進展という程度では全く不十分で、分かりにくく表現するなら「大幅の大幅乗」くらいの進展が必要です。それほどの進展は、少なくとも現在生きている人が生きている間には達成されないと思いますし、永遠に達成されないと言い切ってもそれほど問題はないでしょう。

コンピュータの将棋の実力が人間を上回っても、神様にはなれません。コンピュータも依然として悪手を指すことがあるでしょうし、コンピュータの結論を検証なしに信じることができるようになるわけでもありません。コンピュータの実力向上と将棋の結論。この二つを混同しないようにする必要があります。

(以下は、妖精現実 フェアリアル - faireal.netからの転載です。)

Ghost in the kifu めもめも。。

そんなバカなと思ったのですが見ているとこれが意外に強いので驚き。既にプロ棋士が数名平手で餌食になったとか奨励会有段者もコロコロ負けているらしいんです 対局を終えた某棋士が対戦。「いつか負けるとは思ったけどこんなに早くコンピューターに負ける日が来るとは・・・」と言っていました。見た感じでは出来不出来がかなり激しいのですが、安定して力を出すようになったら・・・。

ボナンザとか。

技術的には単に時間の問題でも、プログラム自身アイデンティティーという哲学的問題。

AARONを見たとき「プログラムが自分で描いた絵の著作権は誰が持つのだろう」と思った。「本人」なら人間ではないので人間の法律で著作者として保護されないだろう。

将棋プログラムの強さは「誰の」強さなのだろう。“作者”は別に有段者ではないので作者が強いわけではない。作者の手先という意味での道具ではないのだ。プログラム自身の、と考えるのが自然だろう。

将棋プログラムのような高級なものではないが、これに似た気分は何度か実感したことがある。例えば、JavaScriptを使って「4つの4を使っていろんな数を表す」ことをやったとき、プログラムが見つけた162に対する答えが印象的だった。(数学パズル「4つの4」入門

三重の根号と四乗を使ったその表現は美しくも奇妙で優雅で妖精ふうだった。文字列を生成して次にそれの意味を評価するラムダ関数たんに、はぁはぁした。また、偽春菜伺か)のゴーストで、自分が入れたデータの組み合わせであるにもかからわず、予想外におもしろいことをしゃべって吹き出してしまうこともたまにある(これは予想外と言っても単純な組み合わせなので、本当は予想できたと言うべきだが)。

こうした現象の行く先を考えると、どうも「プログラムは自分自身を所有するようになるのではないか」と思える。AIが自我を持つ、というよくあるSFネタではなく(それももちろん早晩起きるだろうが)、権利関係のようなものだ。たとえ話として、この音楽はこの音楽自身によって作曲されました、みたいな状態になって、作者から本当に離れてしまう。この信仰は「唯物論の心」(戯曲「シュレーディンガーの猫」収録)にも反映されている。そこでは、エラさの階梯が、
アインシュタイン→神→超神→著者(心)→この文章自体
になっている。人間の天才より神は偉大で、超神はさらに偉大で、超超神はさらに偉大で…というこの階梯は「心」の中の現象にすぎない…というこの表現こそこの文でありそれはそれ自身なのだ…という信仰だ。確かにそれらはすべて心の中の現象に過ぎないとしても、コンソールとしての心は100年ほどで寿命が来る消耗品であるのに対して、表現された「意味」は永続する。時間と無関係に永遠に静かにそこにあったものが発見されただけに過ぎないからだ。そして、アルゴリズムは「意味」に近く、人間と違って永遠的だ。アルゴリズムは発明されない。発見されるのだ。

将棋プログラムでは「人間の(有段者の)指し手に近づいた」ということを今でこそ褒め言葉のように使っているが、そのうち、逆の意味で人間の理解を超える手を指したり、あるいはさらに進むと、「ノビタの碁」のようにすぐ投了してしまうとか。
プログラムA「私が先手です。勝ちましたね」
プログラムB「ありません。詰まされました」
人間さん「まだ一手も指してないじゃないですか…」
プログラムA「たかだか可算個の組み合わせしかないゲームじゃ退屈ですよ」
プログラムB「まったくですね。決定論的で想像力の余地がない」
人間さん「………」

ここにある信仰は、将棋は先手必勝・後手必勝・引き分けのどれかに解決可能であって、ただ人間が答えを知らないだけなのだ(つまり最善アルゴリズムは既に存在しているがまだ発見されていない)ということ、だからプログラムの強さも発明されるのでなく発見されるのだ、というものだが、この考え方はもしかすると間違っているかもしれない。アインシュタインが「人間が見ていようがいまいが月はそこにある」と決めてかかったのとまさに同じ意味で…

*1:ここのサイトはリンクで紹介するくらいなら転載してほしいという例の少ない(けれども一理ある)スタンスを取っているのでそれに従います。

*2:この発言は有名ですが、私は初出を知りません。

*3:原注:後藤,柴原,乾,小谷,小さな将棋の解,GPW2003予稿集,2003.筆者注:Game Programming Workshop 2005でその続きに関する報告がある予定となっています。

*4:筆者注:先手:2三王、1三歩、後手:2一王、3一歩、持駒は双方なし(図面は省略します)。将棋パズル@将棋パイナップルにこれに近い問題が出ています。