ボナンザVS勝負脳―最強将棋ソフトは人間を超えるか (角川oneテーマ21)
- 作者: 保木邦仁,渡辺明
- 出版社/メーカー: 角川書店
- 発売日: 2007/08
- メディア: 新書
- 購入: 16人 クリック: 2,027回
- この商品を含むブログ (72件) を見る
日販MARC
若きタイトルホルダーとコンピュータの歴史的一戦。多くの人の予想を裏切り、あと一歩というところまで攻め込んだ最強将棋ソフト・ボナンザは、どのように生まれたのか。人間らしくさえ見えるボナンザの秘密に迫る。
2007年3月に行われた、渡辺明竜王とコンピュータ将棋ソフト「ボナンザ」との平手での大局は、「コンピュータは将棋でも人間の名人(クラス)を超えられるか?」ということで、大きな話題を呼びました。
<当時の渡辺明竜王のブログより>
大和証券杯特別対局ボナンザ戦。その1(対局準備)(by 渡辺明ブログ(2007/3/22))
大和証券杯特別対局ボナンザ戦。その2(当日編)(by 渡辺明ブログ(2007/3/22))
僕もひとりの将棋ファンとして、そしてコンピュータ好きとして、この勝負のゆくえには、大きな興味を持っていたのです。
僕が小学生の頃、「ものすごく強いコンピューターオセロがある」というのが話題になっていたのですが(ちなみに、今は最強クラスのコンピューターオセロには、人間は全くかなわないそうです)、当時のマイコンでは「コンピューター相手に将棋を指す」ということそのものが、ひとつの夢だったんですよね。当時将棋好きだった僕は、ひとり二役で将棋を指しながら、「コンピューターが相手になってくれればいいのになあ」なんて考えていたものです。
しかしながら、かの有名な「森田将棋」をはじめとする対局型将棋ソフト(っていうか、昔は「コンピュータが盤と駒の代わりをしてくれるだけの将棋ソフトっていうのもあったんですよ)の登場で、「コンピュータと将棋が指せる」というのは、けっして夢物語ではなくなってきました。「強いコンピュータ将棋をつくる」というのは、「コンピュータの優れた思考ルーチンの開発」の象徴とみなされていて、コンピュータ将棋は少しずつ強くなっていったのです。僕も『月刊マイコン』で年1回くらい開催されていた「コンピュータ将棋トーナメント」を、ワクワクしながら読んでいたものです。もっとも、当時こういう大会に参加しているソフトの多くはPC9801+フロッピーディスクというような(当時の)ハイスペックを要求するものばかりだったので、僕が実際にやっていたのは、ファミコンの将棋ソフトくらいのものだったんですけど。しかしながら、あれほど昔は「コンピュータと将棋が指せたらいいなあ」なんて思っていたにもかかわらず、実際に指せるようになっても、全然悔しがらない相手と何局も続けて指すのはあんまり面白くもなかったような気もします。
まあ、こんな雑談はさておき、「将棋」と「コンピュータ」「人工知能」、これらの言葉に全く興味が湧かない人には、この本はオススメしがたいのは間違いありません。
内容も、けっして「わかりやすく書かれている」わけではないんですよね、とくに保木邦仁さんが書かれている項は。
熟練した人間の棋譜との指し手一致の度合いを測る目的関数を設計し、これに停留値を与える静的評価関数の特徴ベクトルを求める。そしてこの特徴ベクトルがゼロとなる自明な解を除去し、棋譜サンプル数の不足に起因するオーバーフィッティングを回避するために、ラグランジュ未定乗数法というものを用いて、目的関数に拘束条件を課した。目的関数の停留値であるが、これは静的評価関数の勾配を用いて探索される。これは、古くから知られている最適制御理論の枠組みに沿った手法なのである。
これにより、駒割りに加え、序盤の駒組み、中盤の駒の動き、終盤の速度計算など、複雑な盤面特徴の把握が必要とされる将棋において、有効に働く局面評価関数が生成された。チェスやその変種の静的評価関数の自動学習法として、実用に堪える初めてのものであると自負している。
まあ、とくに「難しそうなところ」を引用したものではあるのですが、僕はこの文章を一度流し読みして、とりあえず理解することはあきらめて先に進むことにしました。このあたりは、「理系」の面目躍如というか、「読み手はそんなに賢い人ばかりじゃないだろ……」と、ちょっと驚いてしまったところではあります。その一方で、こういうのって、あんまり噛み砕きすぎてしまうと、「カッコよくない」のも事実なのですけど。
僕にわかった部分でいうと、「ボナンザ」が異質だったのは、「しらみつぶし」によって次の手を決めていくという「全幅検索」を用いていた、というところだった、という点でした。
それまでの「強いコンピュータ将棋」というのは、「ゲームの戦略性を考慮して、指し手を絞って読んでいく」(かわりに、その絞られた指し手に対しては、より先の先まで読む)という、「選択的検索」によるものがほとんどだったそうなのですが、保木さん自身が、「あまり将棋は強くない」ために、「将棋らしい将棋を指すことよりも、ゲームのルールに基づいて、『とにかく勝ちに近づくための手を指す』ためのプログラムが、「ボナンザ」だったというのです。
しかし、この「全幅検索」を極めていけば、最終的には、「1手指す前から絶対に勝つコンピュータ将棋」がいつか誕生する可能性は十分にありますよね。そして、その「最強コンピュータ将棋」同士が対決すれば、「必ず先手が勝つ」か「必ず後手が勝つ」か、「必ず引き分け」ということになるのでしょう。
ただ、そうなったときは、たぶん、「人間の競技としての将棋」は終わりを迎えます。
この本のなかで、渡辺竜王は、「まだまだそう簡単には負けない」と仰っておられますが、その一方で、「この先も絶対に負けることはない」とは一度も仰っておられません。結局それは、「早いか遅いか」の問題でしかないのかもしれません。
正直、保木邦仁さんの記述は僕には難しすぎたという印象なのですが、それでも、あの「世紀の対局」の舞台裏、そして、人間と「コンピュータを操る人間」との対決の雰囲気を感じ取れるというのは、なかなか興味深い体験でした。渡辺竜王も、「コンピュータ将棋はまだまだ」なんて言いながらも、ちゃんとあらかじめ「ボナンザ対策」をされていましたし。
僕たちが「名人と接戦!」と驚いているにもかかわらず、当事者たちは、「まだまだ差はかなりある」と考えておられているみたいなのですけどね。
最後に、保木さんが書かれていた、こんな文章を。
おもしろいのは、当初、コンピュータチェスの指し手は、チェスプレイヤーたちからすれば、揶揄すべきような手であった。「あんな手を指すなんて、やっぱり機械だな」「美しくない、ただ力ずくの手だ」というわけである。ところがそんな中傷に対して文字どおり聞く耳を持たないコンピュータはどんどん強くなっていった。そしてディープブルーが世界チャンピオンを負かすにいたって、「コンピュータチェスの指し手には知性を感じる」という印象に変わってきたのだ。これは意外なことだが人間というのはそんなものなのかもしれない。コンピュータにしてみれば、単なる計算結果なのだが、その一手、たとえばポーンを一つ前に進めた手に、人間は奥深さを感じた。「渋い!」というわけである。
たしかに「人間というのはそんなもの」のような気がします。日本の「国技」相撲とかもこんな感じだよなあ、と。