チェス・プログラミングの進化
ディープ・ブルーは、人間らしい創造力と直感を備え、人間らしく考えてプレイするコンピューターではなく、1秒あたり最大2億手を体系的に評価し、大量の計算と力技で勝つ機械だった。
コンピューターはどのようにチェスを指すのか。基本的な方法は1949年から変わっていない。米国人数学者クロード・シャノンは論文に、未来のチェス・マシンが利用するはずの探索手法を記述した。ミニマックス・アルゴリズムと呼ばれるもので、ゲーム理論から生まれ、多くの分野で論理的意思決定に応用されている。様々な可能性を評価し、最善から最悪の順に並べ替える方法のことである。
チェスのようなゲームでは、プログラムは1つの局面でできる限り多くの変化を評価し、認識した各局面に値を割り当てる。最も値の高い手がリストの最上位に来て、指し手が決まる。このプログラムは双方のプレイヤーの指す手を、時間の許す限り深く探索して評価するものでなければならない。
シャノンは探索手法を「タイプA(力づくの探索)」と「タイプB(知的な探索)」に分けた。タイプAは網羅的な探索手法で、あらゆる可能な指し手と変化を評価し、それぞれの道筋をさらに深く掘り下げていく。タイプBは効率重視のアルゴリズムで、人間のプレイヤーの思考に近い形で機能する。つまり、すべての手をチェックするのではなく、限られた好手にのみ注目し、深く掘り下げる。
チェス・プログラミング最大の問題は、考えられる手順が膨大な数にのぼることである。最初の4手だけで指しうる手順が3000億以上ある。そのため、シャノンは、的を絞って効率的に思考するタイプB戦略に期待をかけた。人間のプレイヤーは、意味のある手がごくわずかしかないことをすぐに学習する。強いプレイヤーほど、最初のふるい分けが素早く、正確である。
プログラムは弱い手を素早く除外し、さらに先を速く見通せるようになった。タイプAの進化だ。プログラムは、現在選択されている手よりも低い戻り値の指し手を無視する。この基本的な改善とその他の最適化によって、タイプAがタイプBを凌駕した。非常に強いチェスを指すためには、十分に速い探索を行う力づく型だけで十分であることが明白になったのだ。
さらなる進化
囲碁は、力づくで攻略するにはマトリクスが大きすぎ、複雑なゲームである。ディープ・ブルーに敗北してから19年後の2016年、ディープ・マインドが開発した「アルファ碁」が世界のトッププレイヤーを破った。アルファ碁では、機械学習やニューラルネットワークを用いて、プログラムがプレイの上達法を自ら学習する仕組みを導入している他、アルファ・ベータ法以外の高度な探索手法も取り入れている。ディープ・ブルーで1つの時代が終わり、アルファ碁で新たな時代が始まった。