新刊ピックアップ

人間に勝つコンピュータ将棋の作り方

この記事を読むのに必要な時間:およそ 1 分

コンピュータは人間に勝てるのか?

人間のほうがコンピュータより上の存在だ,と皆さん思っていますよね。当然ですね,比べる定規が違いますから。でも「将棋」というゲームに限定して考えると,もうコンピュータのほうが人間よりもずっと強くなっています。

将棋やチェス,オセロといったゲームを舞台に人間とコンピュータ同士で競いあうことは,コンピュータの歴史の一面でもあります。世界的によく知られているのは,チェスです。IBMのスーパーコンピュータDeep Blueがチェス名人のカスパロフ氏と戦い,勝利しています。オセロのソフトウェアはルールがシンプルなこともあり,人間はほぼ勝てなくなっています。一方,将棋はチェスと違い,対戦相手からとった駒を再利用できるというルールがあるため,プログラムが複雑になります。このルールをコンピュータでソフトウェアとして再現し,人間と勝負するところにくるまで――本書でもその歴史を振り返っていますが――およそ35年かかりました。

激指,YSS,GPS将棋,Bonanzaの誕生

パソコン普及の黎明期からコンピュータ将棋のプログラムがあったのは皆さんご存じでしょう。いろいろな試行錯誤がされ,将棋アルゴリズムの研究がされてきました。その中で生まれてきたがのが,激指(げきさし⁠⁠,YSS(商品名AI将棋⁠⁠,GPS将棋です。本書でとりあげている人間に勝ったプログラムである「あから2010」はこれらのプログラムと後述するBonanzaから構成されています。激指は実現確率による探索アルゴリズムに特徴があり,YSSは,0.5手延長アルゴリズムが有名です。GPS将棋は近年,Bonanzaを上回る実力があると高評価を得ています。本書ではこれらのプログラムの開発者が自ら誕生秘話を書き下ろしました。保木邦仁さんが開発したBonanzaは,ソースコードを公開しています。このプログラムの特徴は,力わざで可能な限り指し手を計算し,良い手・悪い手に点数を付けて調整し,ベストな指し手を決める方法にあります(詳細は本書を参照ください⁠⁠。

あから2010の誕生そして対戦

2010年に清水市代女流王将(当時)とあから2010との対局が実現しました。あから2010は,Bonanza,激指,GPS将棋,YSSの合議システム(多数決)により次の1手を導き出します。この仕組みは,コンピュータのクラスタ化など,先端技術が投入されました。このシステムの舞台裏については本書の11章を参照ください。清水女流王将と戦い,勝利を得ましたが,これはコンピュータ将棋協会の会員の飽くなき挑戦の成果といえます。コンピュータのハードウェアの進歩が,将棋プログラムを圧倒的に強くしたという背景もありますが,最終的には「人間を超える大局観を実現したい」という大きな目標が勝利の先にあるのです。はじめのほうでチェスの話をしましたが,実はバグのおかげで人間に勝利できたという話もあり,⁠人間対コンピュータ」は将来にわたって研究者たちのテーマになっています。