連載「人間VSコンピュータ 10番勝負!」

2013/11/28

囲碁対決・第1回 逆転の発想、モンテカルロ法

「Bonanza」がコンピュータ将棋界隈の話題をさらっていた同じ頃、コンピュータ囲碁でも似たようなことが起こっていた。

 人間とコンピュータのゲームバトル、今回からは囲碁に目を移していきたい。初回は、囲碁ソフト開発に一石を投じた「モンテカルロ法」だ。

なかなか目が出なかった囲碁ソフト


 囲碁人口が「将棋よりも絶対数が少ない」(囲碁ソフト「Zen」開発者・加藤英樹氏)のは、地道な陣取りゲームであるためだ。将棋のような「相手の王様を取れば勝ち」といったわかりやすさがないところにある。


 「黒と白が交互に1つずつ石を置いていき、自分の石で四方を囲んだところが自分の陣地となる。最後に陣地が多い方が勝ち」というのが基本的なルールだが、当然ながらこれだけではない。


 交互に石を取りあって同じ状態が続いてしまう「コウ」と呼ばれる状態。将棋で言うところの「千日手」を避けるルールや、置いた方が必ず不利になるため、お互いに石を置けない場所である「セキ」がある、というのは序の口だ。加えて、どのような手を打っても確実に死んでいる石は、完全に囲んで取り上げることもなく終局となってしまう。これは「死活」に対する対局者同士間の暗黙の了解が存在することが理由だが、「石をすべて完全に囲んでいないのに終局となってしまう」ことが理解しにくい。


 「盤面の割に白黒が付きにくい」複雑なルールが存在するのも、初心者にとって囲碁が取っつきにくい理由の1つだろう。コンピュータにとっても、囲碁はわかりにくいものであった。


 10の360乗もある空間の処理もさることながら、碁石の強さを数値化する難しさもある。駒の強さをある程度数値化することが可能な将棋に比べて、囲碁の場合、石の重要性は、つながりによって変わってくるからだ。相手が囲っている陣地の中へ石を置き、相手の石を死に石にする「中手(なかて)」をどのように判断するのか。これらが、手数の多さに輪をかけてコンピュータ囲碁ソフト開発の難易度を高くしていた。

コンピュータによる囲碁・4路盤の完全解析   コンピュータによる囲碁・5路盤の完全解析
4路盤は黒を2、2に置いたときのみ引き分け、それ以外は後手の白が勝つ   5路盤は黒を天元(中央の場所)に置くと、全ての場所を取る「25目勝ち」になる

 1968年に最初の囲碁ソフト「Zobrist」が発表された。強さはアマチュア38級。強さがどうの、というより、なんとか囲碁が成立する、というものである。1979年に正式な碁盤の広さである19路盤を指すことができるソフトが誕生したものの、棋力はアマ15級程度。プロと同じ土俵に立つには程遠いレベルだった。


 一方、広大な19路盤ではなく「3路盤」などの非常に小さな盤面での「完全解析」の研究も始まった。19路盤で手間取るよりも、小さな盤面で必勝法を見つける完全解析に手が付けられるようになったのである。現在、コンピュータによる完全解析では、2、3、4、そして5路盤がそれぞれ解析されている。


モンテカルロ法でブレークスルー


 さて、小路盤の完全解析研究とは別に、囲碁ソフトの開発は行き詰まりを見せていた。棋譜を真似たり、評価関数を使ったりするソフトが現れるものの、なかなか強くならない。1997年に10代前半のアマ2段に対して、11子の置き碁(11個の石を先に置くハンデ、11級差のハンデに相当する)で勝利する程度の強さだった。


 この足踏み状態に一石を投じたアルゴリズムが「モンテカルロ法」である。乱数シミュレーションを使って、似たような値を求めるこの手法は、第2次大戦後間もなく考案されたもの。これをコンピュータ囲碁に当てはめたのである。簡単に言えば「石をランダムに置いて、最終局面で勝つ確率が高いものを打つ」方法だ。


 モンテカルロ法をコンピュータ囲碁のアルゴリズムに使い始めたのは1993年。だが、別の研究のために作られたプログラムだったせいで、しばらく注目を集めていなかった。


 モンテカルロ法を使った囲碁ソフトでブレイクしたのが「Crazy Stone」である。このソフトは2006年のコンピュータオリンピックの9路盤で優勝を果たしている。奇しくも、将棋ソフト「Bonanza」が世界コンピュータ将棋選手権で初出場、初優勝を飾った年である。


囲碁ソフト、海外勢の強さの秘密


 レミ・クローン氏が開発した「Crazy Stone」のデビュー以降は、他の囲碁ソフトも続々とモンテカルロ法を組み込んだ。フリープログラマーの尾島陽児氏が開発した「Zen」もその1つ。


 東洋のゲームである囲碁であるが、人工知能研究という側面もあるため、コンピュータ囲碁開発は海外が先行している。特にフランス発のソフトが多いのだが、その理由は開発環境を国ぐるみで整えているからだという。


 「フランスは、国のスパコンを使えるプロジェクトがあるんです。プログラムを修正した囲碁ソフトの強さを調べるためのテスト対局を、2000回程度なら一気に終わらせることができるんです」(Zen開発者・加藤氏)。


 一般的なコンピュータで2000局程度のテスト対局を行うと、どうしても1週間程度の「テスト待ち」に時間が割かれてしまう。それでも、尾島氏と加藤氏のチーム「Team DeepZen」はレベルアップを重ね続ける。そして、2013年の第1回電聖戦では二十四世本因坊の石田芳夫氏に、4子置き碁で惜敗するというレベルに達したのだった。

(中西 啓)

>>コンピュータ囲碁の近未来は?


【関連カテゴリ】

その他