
チェスは究極の知的挑戦と捉えられることが多い。8×8の盤上に32個の駒があり、ほぼ無限の手が考えられる。1秒間に何百万手もの動きを計算するチェスエンジンもあるが、伝統的なアプローチは「総当たり戦」である。総当たり戦とは、ハッキング(そしてどうやらコンピューターチェスのシミュレーション)における手法で、プログラムが最善の解を見つけるまで、あらゆる問題の可能性を試行錯誤することを意味する。
しかし、マシュー・ライはチェスをプレイするコンピューターをより賢くしたいと考えています。インペリアル・カレッジ・ロンドンで修士課程を修了したライは、人工ニューラルネットワークをFIDEインターナショナルマスターのレベルでプレイできるように訓練しました。これは、レーティングされたトーナメントプレイヤーの97.8%を上回るレベルです。彼はこのソフトウェアを「Giraffe(ジラフ)」と呼んでいます。
72時間のトレーニング後、Giraffeは46%の確率で最善の一手を導き出しました。Giraffeが選択した一手は、70%の確率で上位3手に入っていました。チェスにおける機械学習のこれまでの試み、例えばKnightcapのようなケースでは、プログラマーが「パターン認識器」を設計する必要がありました。これは、ポーンでキングを防御する、ビショップの両方の色を持つことの重要性といった一手を学習するための個別の関数です、とライ氏は言います。機械学習アルゴリズムは、既に定義された一手を学習し、その強さを学習します。Giraffeはこれらのパターンを自動的に発見するため、プログラマーでさえ考えつかなかった一手を学習できます。
「キリンのプレイの強さは、はるか先を見通せることからではなく、難しいポジションを正確に評価し、人間にとって直感的な複雑なポジションの概念を理解することから生まれている」とライ氏はキリンの詳細を記した論文に書いている。
ライ氏は、推定解の有効性を継続的に検証することで人間の学習を模倣する人工ニューラルネットワークを、1億7500万のデータポイントで訓練した。人間や他のコンピュータのゲームから500万通りの初期盤面構成を取得し、各盤面に対してランダムな一手を複数回適用した。学習プロセスでは、コンピュータが自身でプレイし、次の一手に基づいて勝敗を計算するという手順を踏んだ。
訓練なしのGiraffeは、標準化されたチェスエンジンテストで15,000点中約6,000点を獲得しました。72時間の訓練後、最高9,700点を獲得しました。学習したのです。
Giraffeに勝るのは、2008年から開発・調整が続けられているStockfish 5というエンジン(当初は2004年のGlaurungチェスエンジンをベースに構築された)だけです。Lai氏は、Giraffeが「数百ものパラメータを持つ、丹念に手作業で設計された巨大なエンジン」に匹敵する能力は、その若さにもかかわらず驚異的であり、テストスイートが彼のプログラムを過小評価する可能性があると述べています。
「テストスイートは有名であるため、少なくとも一部のエンジンはテストスイートに合わせて特別に調整されている可能性が高い」とライ氏は論文に記している。「Giraffeはすべての評価機能を自己対戦を通じて発見したため、人間がまだ研究していないパターン、つまりテストスイートに含まれていないパターンを認識している可能性が高い。」
次のステップは、Giraffeの効率性を高めることです。Lai氏は、Giraffeを用いて小規模なネットワークをトレーニングすることで速度を向上させ、時間管理には別のニューラルネットワークを使用することを提案しています。