PR

 将棋ソフトが米長邦雄永世棋聖を下す─。2012年1月に開催された「第1回電王戦」での出来事である。勝ったのは、富士通研究所に籍を置く伊藤英紀氏が開発した将棋ソフト「ボンクラーズ」。ハードウエア業務の経験を生かし、10年以上試行錯誤を繰り返して、プロの棋士に負けない将棋ソフトを作り上げた。

将棋ソフトの開発をいつ始めたのですか。

 1998年8月のことです。当時は米国にある富士通の関連会社に出向しており、仕事の谷間の時期に、以前から興味を持っていた将棋ソフトを開発しようと思い立ちました。書籍などを参考にして、独力でソフトを開発しました。

 コンピュータ将棋の世界では、毎年開催される「世界コンピュータ将棋選手権」という大会で、将棋ソフトの強さを競います。私が初めて出場したのは、99年3月の第9回選手権です。このときは1次予選を通過できませんでした。

 2次予選に初めて進出したのは、2008年です。11年5月の第21回でようやく優勝できました。

取り組みは10年以上に及ぶのですね。

 将棋ソフトが強くなっていくのが面白いんですよ。将棋の問題集を解かせてみて、正解を出せるようプログラムを修正したり、将棋ソフト同士を対局させて改良したりします。そうやって徐々にソフトを強くしていきました。

「評価関数」と「探索量」が鍵

将棋ソフトを強くするポイントは何ですか。

 「評価関数」と「探索量」です。評価関数は、将棋の局面がどれだけ有利あるいは不利な状況かを数値で表すものです。0なら互角、プラスなら有利、マイナスなら不利などと評価します。評価関数の精度を高めれば、局面をより的確に捉えられるようになります。

 精度を高めるには、評価関数を構成するパラメーターを調整する必要があります。駒の重要度や位置などです。パラメーターの種類や重み付けは、将棋ソフトによって異なります。

 もう一つの探索量は、どれだけ多くの手をどのくらい先まで予測できるかを表します。ここは処理能力の高さが効いてきます。短時間で多くの処理が可能になればなるほど、より効果的な手を選択できるからです。

 電王戦で米長永世棋聖に勝利したボンクラーズは、6台のブレードサーバーをクラスター構成にして処理能力を高めました。評価関数については、オープンソースの将棋ソフト「Bonanza」を独自に改良しました。Bonanzaは過去の棋譜を基に、評価関数のパラメーターを自動的に調整します。ただ、相手の王将が味方陣地内に侵入する「入玉」に弱いので、この部分には対策を講じました。

ハードが将棋ソフトを強くする

(写真:山田 愼二)
[画像のクリックで拡大表示]

元々ハードウエアの技術者だったことは、将棋ソフトの開発に役立っていますか。

 前職では富士通セミコンダクターでマーケティングに近い業務に携わっており、純粋な技術者ではありません。ただ仕事で得られた知識や経験は、実際に将棋ソフトの開発に役立ちました。

 例えば08 年に、「FPGA(フィールド・プログラマブル・ゲート・アレイ)」と呼ぶチップを搭載したマシンで、将棋ソフトを動かしました。これは世界初だったと思います。FPGAは動作をプログラミングできるチップで、ASIC(特定用途向け集積回路)よりも安価に入手できます。FPGAを使うことで、汎用的なPCよりも高い処理能力を得られたわけです。

 ただし、FPGAは「Verilog」と呼ぶ言語でハードウエアの動作を記述する必要があります。当時の将棋ソフト開発者で、こういった知識やスキルを持っていた人は私以外にはあまりいませんでした。

 クラスター化したハードを採用したのも、私が初めてです。10年の第20回選手権でPCをクラスター化して出場して4位になり、第21回では優勝しました。

 この当時は、クラスター化したハードウエアで処理能力を高めることが可能だと分かっていても、実践した人はいなかった。そのような技術やノウハウを持っている人も少なかったわけです。

12年5月の第22回選手権では準優勝でした。

 1年たって、クラスター技術を導入した将棋ソフトが増えました。私が開発した「Puella α(ボンクラーズを改名)」を含め、出場した42のソフトのうち、五つがクラスター化したハードで動くものでした。

 今回優勝したのは、東京大学が開発した「GPS将棋」です。797台のマシンをクラスター構成にしていました。ハードを増やせばそのぶん処理能力が高まるという単純計算ではありませんが、GPS将棋と同等の処理能力を実現するのは正直、困難です。

将棋ソフトは毎年強くなる

ハードの処理能力を高めていけば、将棋ソフトは人間よりも強くなるのでしょうか。

 いろんな見方がありますが、私は現時点で、将棋ソフトは名人よりも強いのではないかと考えています。新しいプロセッサが毎年のように登場しており、PCなどの処理性能は急速に高まっています。将棋ソフトが年々強くなっていくのは間違いありません。

 電王戦は13年も開催されます。プロ棋士5人と、第22回選手権で上位に入った将棋ソフトが対局する団体戦です。私が開発したPuella αも出場します。どの程度の棋力の棋士が出場するのかは未定ですが、将棋ソフトが名人に勝つ日はそう遠くないでしょう。

今後は何に取り組んでいくのですか。

 将棋ソフトの技術をほかの分野に応用できないかと考えています。たくさんの選択肢を評価して選ぶという仕組みは、様々な分野に応用できるはずです。詳細は明かせませんが、ゲーム以外の分野を想定しています。

 将棋だけでなく、この3月にはハンディ付きながら、囲碁ソフトがプロ棋士に勝利しました。こういったコンピュータの進化は、将棋や囲碁にとって必ずしもマイナスになるわけではありません。私自身、将棋を指すのは大好きで、アマ1級くらいの棋力です。棋士対棋士の対局は、やはり見応えがあります。

 電王戦はネット配信もありますし、メディアの注目度も高い。将棋ソフトや囲碁ソフトをうまく利用して、将棋や囲碁の分野を盛り上げてほしいですね。

(写真:山田 愼二)
将棋ソフトをクラスター化し「最強」へ

 伊藤氏が開発したボンクラーズは、「最強の将棋ソフト」といわれる。ベースとなっているのは、保木邦仁氏が開発したオープンソースの将棋ソフト「Bonanza」である。これをクラスター化したマシンで動作させ、並列処理による性能向上に成功した。

 当初は仕事の傍ら、個人の趣味として将棋ソフトの開発に取り組んでいた。帰宅後や休日にプログラムを書き、それを印刷したものを通勤電車の中で読むのが習慣だったという。

 電王戦で米長永世棋聖(2003年に現役を引退)と対局することが決まってからは富士通研究所に転籍し、業務として将棋ソフトの研究・開発に取り組んだ。

伊藤 英紀
富士通研究所 ITシステム研究所
伊藤英紀氏は1962年生まれ。1988年東京大学大学院修士課程了。同年富士通に入社。ハードウエアの設計や、ファウンドリー、ASICのマーケティングに従事。2011年5月から富士通研究所。同年、将棋ソフト「ボンクラーズ」が第22回世界コンピュータ将棋選手権で優勝。2012年1月14日、第1回電王戦で米長邦雄永世棋聖に勝利する。