11月2日から4日にかけて、「将棋電王トーナメント」が東京・中央区の歌舞伎座タワーにて開催される。将棋の強さを競う大会なのだが、普通の大会ではない。というのも、戦うのは人間ではなくコンピュータなのだ。優勝ソフトは「電王」の称号を手にし、上位5ソフトは来春に行われるプロ棋士とコンピュータとの団体戦、「第3回 電王戦」への出場権を得る。さらに贈られる賞金も大きな魅力。当日は3日間、大会の模様がニコニコ生放送で中継される。

「将棋電王トーナメント」公式サイトより

昨年大きな話題になった電王戦、そのコンピュータ側の布陣を決める重要な大会だ。将棋ファンなら「プロ棋士の対戦相手はどんなやつなのか」と興味を覚えるだろうし、よりコアなコンピュータ将棋ファンは「どんな将棋が見られるのか楽しみ!」と当日までの日数を指折り数えていることだろう。もちろん、「最近よく『将棋』と『コンピュータ』が話題になるけれど、実はよくわからない」といった方も多いはず。そこで今回は、将棋電王トーナメントをより楽しむために、知っておくと得をする知識などを紹介していきたい。

コンピュータ将棋のしくみ

人間が将棋を指すときの基本的な要素には、「大局観」と「読み」の2つがある。大局観は全体の情勢を把握する能力のこと。読みは「自分がこうする、すると相手はこうする、そうしたら自分はこうする……」と頭の中で展開を進めていくことである。

かの有名なマルバツゲーム(三目並べ)でいえば、「最初は真ん中に置くとよさそう」と考える時には大局観が働いている。「相手のマークが2つ並んでいる。防がないと負けてしまう」では読みが働いている、ということになる。

「電王戦タッグマッチ」より。ニコ生観戦者にはおなじみの評価関数

この大局観と読みに相当するものがコンピュータ将棋にもあり、それが「評価関数」と「探索」だ。評価関数は、ある局面でどちらがどれくらいよいのかを点数化するもの。「第2回 将棋電王戦」「電王戦タッグマッチ」を思い出していただけるなら、スコアボードよろしく画面上に表示されていた数字が頭に浮かんでくるだろう。この数字をはじき出す評価関数には、駒の価値(歩は低い、飛車は高い、など)といった基本的なものから、どの駒がどこに動けるか、駒がそれぞれどう配置されているかなど、実にさまざまな評価が重ねあわされている。見る側のポイントとしては、ソフトごとの違いが比較的大きく、それぞれの個性が出る分野と覚えておくといいだろう。

次に探索だが、こちらは局面に現れる選択肢を効率よく探っていくことがテーマになる。先ほど出した例のマルバツゲームではごく小さな範囲を考えればよく、「後攻になって真ん中を制されたら、斜めを取るべし」という鉄則も、何通りか試せば納得できるくらいだ。ところが将棋では選択肢の数の多さが膨大すぎるため、しらみつぶしではとても先に進めない。そこで、無駄になる(と思われる)選択肢へは進まない工夫が施されている。

以上、ざっとではあるが評価関数と探索について触れてみた。とにかく、人間でいうところの大局観と読みに相当するものと覚えておけば、こうした言葉が出てきたときにも必要以上に身構えることはなくなるはずだ。……続きを読む