囲碁・将棋ソフトにみる、優れたAIを作る条件とは? | SiTest (サイテスト) ブログ

メニューボタン閉じるボタン

囲碁・将棋ソフトにみる、優れたAIを作る条件とは?

前回までの、
将棋ソフトにみるAIのアルゴリズム」「将棋ソフトにみるAI強化の手法」「将棋ソフトにみるAIとの生き方)」の続きです。

AIは人を超えるのか否か。
どういう分野でAIが得意なのかを探っていきたいと思います。

強い将棋ソフトは素人でも簡単に作れるのか?

2006年に世界コンピュータ将棋選手権大会で保木氏が作ったBonanzaが優勝しました。
この事例は将棋を知らない人でもちょっとした工夫で簡単に強いソフトが作れるのかと錯覚しそうですが、これにはカラクリがあります。

Bonanzaはコンピュータチェスの論文を元に将棋流にアレンジを施したソフトだったのです。
全く将棋に関して無知なAI技術者が簡単に作ったかのように思えますが、出発地点からして本質にかなり近い所を突いていたのです。

コンピュータチェスとコンピュータ将棋は本質はかなり似通っており、
強豪将棋ソフトのAperyややねうら王もStockfishという強豪チェスソフトの思考ルーチンを参考にしています。

Bonanzaはソースコードが公開され、様々なエンジニアがそのソースコードに改良を加えましたが、
結果はまず性能の意地が困難で、大抵本家オリジナルより弱くなるとのことです。
この辺はAIの優れた技術者である保木氏の能力が存分に活かされています。

しかし、その後Bonanzaは強豪ソフトの一員ではあるものの、少しずつ順位を落として行きました。
現在最強クラスのAperyややねうら王の開発者は将棋の腕もアマ強豪クラスです。
他の将棋ソフトより更に強い将棋ソフトを作る事を考えた場合、将棋の腕自体も影響してくるようです。

アルファ碁はどうだったのか

アルファ碁はDeepMindに囲碁ソフトをあてがって放置するさぞかし楽な仕事に違いない。
本当でしょうか?調べてみました。

まず、アルファ碁の開発者の発言がWikipediaにありましたので紹介します。
「我々はこの機械をプレーするようにプログラムしたが、それがどんな手を思い付くかは全く分からない。その手は訓練からの創発現象である。我々は単にデータセットと訓練アルゴリズムを作成しただけだ。しかし、それが思い付く手は我々の手を離れており — そして碁打ちとして我々が思い付くものよりもずっと優れている。」
確かにイメージ通りの事を仰ってますね。

しかし、その前には「モンテカルロ木探索を用いる」、「AlphaGoは当初、棋譜に記録された熟練した棋士の手と合致するよう試みることで人間のプレーヤーを模倣するように訓練され…」とあります。

元々コンピュータ囲碁はプロどころか、アマチュアのプレイヤーにも全然勝てないアルゴリズムの構築が難しいゲームでした。
囲碁は多くの状況では多少の手順が前後しても大勢には影響せず、
2000年代後半に入ってモンテカルロ碁という手法により一気に研究が進みます。

上記の事から、実はアルファ碁はDeepMindに囲碁のルールを突っ込んだのではなく、
まずは普通にアマ強豪と打ち合えるほど強い囲碁ソフトを作成して囲碁の遊び方をある程度知った状態でDeepMindで更なる最適化を行っていった事がわかります。

ただのAIだけに詳しい素人集団が寄ってたかって作っても、この最短経路を突っ走る事は不可能です。
開発メンバーはそもそもコンピュータ囲碁の軌跡に詳しく、後はDeepMindをどのように組み合わせて囲碁ソフトとして輝かせるか、までが全て想定済みの天才集団だったようです。

まとめ

以上の事からどのように機械学習させるか、
どんなパラメータを利用するかの取捨選択に於いて、
対象の物事の本質を突くエンジニアである必要があるようです。

DeepMindの開発者であり、アルファ碁のプロジェクトメンバーでもあったデミス・ハサビス氏は4歳の頃から大人を負かすチェスの名人で、ゲームクリエイターを志していました。
29歳に人工知能への脳神経科学へ舵を切り、35歳にDeepMindを立ち上げたそうです。
プロジェクトメンバーには囲碁のアマチュア段位者も居たと聞きます。

物事の本質を突くには、物事の本質をAIのパラメータ化という軸に変換できる人間である必要がありますが、それだけではありません。
その物事を実際に肌で触れて体験して、優れたプレーヤーの考え方を理解出来るエンジニア必要があります。

程度としては単純に他のトッププロと競う能力の有無よりも、その分野に関しての造詣に詳しく、他の人に教えたり、文書化する能力があれば十分のようです。

以上、「囲碁・将棋ソフトにみる優れたAIを作る条件」でした。
最後まで読んでいただきありがとうございました。