Upgrade to Chess.com Premium!

Does Computer Really Understand Chess? (In JAPANESE)

またまたこんにちは。FMの晋です。

先週木曜日に受けたJohn Searle(サール)教授の授業、Philosophy of Mindでちょこっとだけチェスの話題が出てインスピレーションを受けたのでこの記事を書いてみました。

まずサール教授を少しご紹介しますね。

http://ja.wikipedia.org/wiki/%E3%82%B8%E3%83%A7%E3%83%B3%E3%83%BB%E3%82%B5%E3%83%BC%E3%83%AB

彼はUCバークレーの看板教授として80歳でありながら毎週精力的に授業を行ってくれます。僕が今回書くトピックは「コンピューターは本当にチェスを理解しているのか?」というもので、これはサール教授の有名な思考実験である「中国語の部屋」(Chinese Room Argument)を元にしています。

では「中国語の部屋」とは何か?という人に簡単に説明します。

むかしむかし、チューリングという偉い人が「もし人間がコンピューターとチャットをして、チャットをしている相手が人間なのかコンピューターなのか区別がつかなかったのなら、そのコンピューターは人間と同じくらい知的であり、会話を理解しているということになる」と言いました。

それに対する反論がサール教授の「中国語の部屋」です。サールは「じゃあ俺(中国語がまったく分からない)がある部屋の中に入って外の人間と中国語でやり取りしてやろう。この部屋には一冊の本があってその中にはこの中国語に対してはこう返すというのが全て載っている。俺は中国語をまったく理解していないが、チューリングの定義によると俺は中国語の会話を理解しているらしいww」

ここでのポイントは:

1.コンピューター(中国語の部屋の中にいるサール)にはどのシンボル(ここでは中国語の漢字)の組み合わせに対してどう返せばいいかがプログラムされている。

2.ただし、コンピューター(サール)はそのシンボル(中国語)がどういうことを意味しているのかが分からない。

ということです。英語で言えば"Syntax doesn't equal Semantics"ですね。

それでは、ここはchess.comなので話題をチェスに戻しましょうか。

1997年5月、世界チャンピオンであり史上最も強いプレーヤーと言っても過言ではないカスパロフが、スーパーコンピューターであるディープブルーに敗れました。このニュースを受けて、当時ロンドンにいたサール教授に色々と電話がかかってきたそうです。「おい!チェスの世界チャンピオンがコンピューターに負けたぞ!これはチェスという知的ゲームを、人間よりコンピューターのほうが理解してるということだな。」

これに対してサール教授は授業中にこう言いました。「コンピューターはチェスを指していないし理解もしていない。コンピューターはチェスのポジションというシンボルを内臓されたプログラムに照らし合わせて新たなシンボル(チェスの手)をアウトプットとして出しているに過ぎない。膨大なデータベースを使い前述のことができるのは、コンピューターの力であり強みでもあるが、そこにチェスの理解というものはない。」

これに対して自分で色々と考えてみました。確かに今の時代、コンピューターとサシでやって勝てる人間は恐らく誰もいません。ならコンピューターは人間よりチェスが強いということになりますね。じゃあコンピューターは世界最高のチェスコーチになりえるのでしょうか?

僕はNoだと思います。自分の棋譜をコンピューターで解析したりオープニングのラインをコンピューターに入れて勉強している人もいるかと思いますが、コンピューターが指摘した手を理解するのは(数手のタクティクスじゃない限り)ほぼ不可能だと思います。たとえばコンピューターの判定が0.2になるオープニングと0.35になるオープニングがあったとして、その違いが分かる?なんて聞かれても分かりませんよね。サール教授なら「そもそもコンピューターは理解なんてしていないんだから、君はそれから何を学ぼうとしているんだ?」とでも言うんでしょうね。少なくともチェスが強くなりたいのであれば、コンピューターを使うよりGMなどにレッスンを受けてアイデアを聞いたほうが100倍ためになると思います。

もう一つ印象に残ったのは、2013年のTata Steel Chessでのカールセン-カリャーキンの試合です。

このポジションでカールセンは67.g4!!!と指しました。!がいくつあっても足りないくらいです。しかしライブ中継のサイトで使われてるコンピューター、Houdiniはこの手はそこまで良くないと言っています。コンピューターの判定は67.g4の前は0.56、指した後は0.00とパーペチュアルチェックのドローになると指摘しています。ではコンピューターがカールセンの立場になって指したとしましょう。指し手は一番評価が高かった67.Ra8(0.56)です。0.00まで下がる67.g4なんて指したくないですよね。じゃあこう指したらコンピューターはカリャーキンに勝てたでしょうか?多分無理です。カリャーキンの指し手が難しくないので、これ以上進展が望めずドローになるでしょう。しかしカールセンは67.g4!!!と指して勝ちました。このまま普通にやってもドローになるので、カリャーキンがドローの筋を読みきれないのに賭けて勝負に出たのが正解だったということですね。

ここでパラドックスが生じます。コンピューターは人間の誰よりも強いのに、カールセンが勝てた局面には勝てない。この局面に対しては、コンピューターは人間より劣っているのは事実です。

じゃあ僕が言った「コンピューターは人間よりチェスが強い」という前提が間違っているんでしょうか?

これは完全に僕の主観ですが、チェスが最終的に行き着く場所は「ラウンドロビンやスイス式などのトーナメントでは人間のほうが強く、マッチ制ではコンピューターの方が強い」ではないでしょうか。たとえばTata Steel Chessのようなラウンドロビン制のトーナメントにコンピューターを放り込んでも、チェスの盤面だけでなく相手プレーヤーの特徴、どんな局面でミスをしやすいかなどを把握できる人間のほうが前述のカールセン対カリャーキンのように勝ち星を重ねることができて優勝しやすいと思います。しかしマッチ制になるとミスをせず、相手が疲れてミスが出た際に付け込めるコンピューターの方が圧倒的に有利に見えます。

コンピューターの進化により、チェスがつまらなくなったという意見も出ていますが、ちょっと見方を変えてもいいんじゃないでしょうか?少なくともカールセンの例を見てみると、チェスで人間がコンピューターに完全に遅れを取っているとは言えません。

**************2013/2/11追記***************

大学の知り合いなどに昔チェスをやっていた等の話をすると「チェスって世界チャンピオンがコンピューターに負けたゲームだよね」などと返してくる人がいますが、それはコンピューターが有利な土俵(マッチ戦)で戦ったからこその結果に過ぎないと思います。なのでこう返された場合、上記のカールセン-カリャーキンのことを出してみても面白いのでは!?

Comments


  • 18 months ago

    FM Shin_Uesugi

    中川君、コメントありがとう。

    僕も昔何度かコンピューターにオープニングを入れてその通りに指そうとした経験がありますがそういう試合はオープニングのアイデアを理解できてなかったので大抵負けてます。

    最近のチェスエンジンは駒得以外の要素も入れて(十分な時間さえ与えれば)サクリファイスなどの計算はできるようになっています。たとえばTata Steel Chess 2013のAnand vs AronianではアナンドのBc5!!(ビショップサクリファイス)はコンピューターも読んでいました。ただコンピューターは最善手を計算して指すことはできますが、必ずしも最善ではないけれど(例えばコンピューターの評価の1番目ではないが2、3番目の手など)人間の相手に対してミスを誘う手を指すことは苦手としてるんじゃないかなと思えます。最前手を常に指し続けることができるのがコンピューターの最大の強みなので、それ以外の手を指してしまったら自分の強みを自ら放棄してしまうように感じます。

    後、ここ数年でコンピューターはすごい進化を遂げていますが、チェスに関して言えばここから本当に伸びていくのはコンピューターではなく人間なのではないかと思います。コンピューターは既にほぼ完成形に近づいているのに対し、人間にはカールセンを筆頭に高いレベルで心理戦や実践的応手などを全て含めた「チェス」を理解している人たちがどんどん出てくるのではないでしょうか。

  • 18 months ago

    Oraoradeki

    上杉さん、

    時間がやっとできたので読みました。

    確かにopeningはコンピューターチェスエンジンにぶち込まないほうがいいと思います。どのOpeningが一番強いかRybka 2.3.2に入れてみたら1.Nc3が一番強いって出されました。でも実際1.Nc3とプレイする人は少ないです。コンピューターチェスエンジンは駒得のこと意外考えないからサクリファイスなどは計算しないですね。

    IM Pfrenさんに言われました:Do NOT plug any opening, to any engine. Engines mishandle the opening and the endgame quite a lot, and in any case they do not offer substantial info.

    コンピューターチェスエンジンは人間と違って”気持ち”がないと思います。だからコンピューターはいつまでもComputer Movesしか考えることができないとおもいます。コンピュータはどんなに強くて明確でも一度引き分けって見たら他は考えないと思います。

    ありがとうございます。チェスプレイヤーである僕たちは授業で先生がチェスの話をすると心がワクワクしますね。

    中川晟志

  • 18 months ago

    FM Shin_Uesugi

  • 18 months ago

    stellarf3

    I am studying chinese! Maybe someday I will be studying japanese, too!

  • 18 months ago

    FM Shin_Uesugi

    Sure. I'll do it within few days (or maybe later today) :D

  • 18 months ago

    verygoodman918

    seriusly can this be translated cuz it seems interesting

Back to Top

Post your reply: