AI竜星戦2017予選- K-blo

[2017/12/10(Sun) 02:30:44]

コンピュータ囲碁大会のAI竜星戦2017予選 に参加してきました.

コンピュータ囲碁ソフト開発は2015年に始め,DeepEsperとのプログラムを作っていました.小さな会社として働いているもので,取引先を含めて囲碁部と名乗って囲碁ソフト開発をしていたものの,人的時間的資金的リソースも限られていることから停滞していました.DeepLearning技術の習得がモチベーションのひとつであったのですが,独自でのDeepLearningの実装にこだわり,DeepLearningを使った囲碁プログラムはできたものの,従来の手法であるモンテカルロ囲碁と対戦しても勝率が2〜3割と,前バージョンのプログラムよりも弱くなっていました.今年3月のUEC杯コンピュータ囲碁大会にそのプログラムで参加し,最下位に沈んだことから,もうコンピュータ囲碁の開発は終えるつもりでいました.お金も時間も足りませんし,私の心が折れてしまったのです.

ですが,大会後に別のコンピュータ囲碁ソフトArgoCorse_Ichigoの開発者の市村さんから,合同チームとして開発をしないかとの誘いを受けました.話を聞いてみると,ともにコンピュータ囲碁講習会のソースコードをベースにしていて,かつ同じくらいの成績であり,共同開発が進めやすいとの意図があったとのこと.せっかくのお申し出なので,共同開発を行うことにして,続けることにしました.

ソフト名を『エスアル碁』と決めましたが,私としてはなかなか開発に着手できず,いざ着手したのは大会の1週間前でした.着手し始めて,市村さんの開発されたプログラムを読んでみると,同じサンプルプログラムをベースとしていたのに,『ディープラーニングで囲碁』 にあるDetlefさんが提供しているポリシーネットの利用を実装していましたし,また日本ルールへの対応も行われていました.なによりソースコードの行間から伝わってくる探究心と試行錯誤に,棋力向上へのPASSIONを感じました.私に足りないものがPASSIONであると気づかされたのです.そこから大会までの実働にして17時間程度,実行環境を整え,幾つかのバグを取り,なんとか動作はできるようになりました.いくつかの不具合は残っていたものの,CGoSに動かしてみるとGNU Goと良い勝負をすることがあるまでにはなっていて,手応えを感じていました.

そうして今日の大会を迎えます.家を出るときに娘からはパパ頑張ってねと言われます(頑張るのは私では無くプログラムですが).

予選については,市村さんのブログ利口系無重力blog/市村技研工業(ArgonLab)コンピュータ囲碁の大会「AI竜星戦2017」に参加してきました,「エスアル碁(EsArgo)」は3勝4敗で18チーム中予選10位でした が詳しいために詳細を省きますが,7戦して3勝4敗,18チーム中10位との結果でした.帰宅後に娘に順位を聞かれて10位と伝えると,10位を予想していたとのことで驚かれました.

エスアル碁自体はまだ不具合は残っていますし,基本的な機能も足りていません.そのため運営や対戦相手に迷惑を掛けてしてしまい,申し訳なく感じております.しかしながら,3勝4敗との成績に,従来からの数値目標としていたソルコフも大きくなり,充実感も感じております.昼休み時間中にメンバー3人でデバッグし,結果3戦目のTianrang戦の金星につながったことも嬉しい思い出となりました.

ただその一方で,機械学習データを自作せずに他者が作ったものを使ったことで強くなったことは,素直に喜べません.幾つかのプログラムがDeepLearningを利用していることで,設計とは具体的になにか,実装とは具体的になにか,独自性とはなにかと考えるところもありますが,他人が学習させたデータをそのままに利用するのは,ライセンス的にも著作権的にも,私自身で違和感はあります(今回はDetlefさんから許可を得ています).

私が囲碁プログラム開発をする目的のひとつにAI技術の習得がありますが,それを果たすためには機械学習の精度向上に挑むべきは自明です.その観点でも今後は自前での機械学習を行おうとの思いはあります.しかしながら,打倒Googleを掲げるも,単純な強さの追求には自分なり自社なりの限界も感じており,GUIや音声による入出力インタフェイスの改善,盤面の画像認識やロボットアームでの操作といったハードウェアの制御,コンピュータ囲碁の日本語ドキュメントの充実など,別ベクトルへの展開も興味を抱いています.


Top page