The text written in English is here.
みなさん!将棋人工知能(AI)がゼロから学習し、強くなっていく過程を一緒に観察しませんか?
世界中から計算資源を獲得するために、ユーザ参加型のコンテンツを作成しました。
皆さま、オラたちに力をわけてくれっ!
集めた棋譜はAobaZeroのウェブページなどで公開しています。
GPUがあれば、より高速に棋譜を生成できます。
CPUだと10倍から100倍遅くなりますが、将棋をプレイして楽しむことは可能です。
AobaZeroは、AlphaZeroの将棋の実験の追試を行うことを最終目的とした将棋AIプロジェクトです。 AlphaZeroは、Silverら(2017b, 2018)が発表した強化学習のアルゴリズムの一種であり、 AIプレイヤの名前でもあります。 彼らが報告した将棋での実験結果は、ゲームルール以外の知識をほとんど持たないプレイヤが自己と対局し続けて、AIプレイヤelmoよりも強くなるというものでした。 これは非常に規模の大きな実験であり、追試を行うことは容易ではありません。 高性能なデスクトップゲーミングマシン1台で100年近い計算時間を要します。
Silverら(2017a, 2018)は囲碁やチェスでの実験結果も報告しています。 ユーザ参加型の追試実験は、囲碁のLeela Zero やチェスのLCZeroによって行われていて、 既に人間を超える棋力を獲得するということが再現されています。
Windows用の実行ファイル(現在は64bit版のみです)
CPUだけのマシンは
aobazero-1.5-w64-cpu-only.zip
GPUがついたマシンは
aobazero-1.5-w64-opencl.zip
をダウンロード、展開して、中のclick_me.batを実行してください。
Linuxの方は
aobazero-1.5.tar.gz
を展開してmakeしてから
./bin/autousi
を実行してください。詳しくは同梱のreadme.txtをご覧ください。
CPU版をダウンロードして、click_me.batを実行します。しばらくすると最新のネットワークの重みファイルをダウンロードして「self-play start」が表示されて棋譜の生成を開始します。すかさずCtrl + Cで停止させます。(signal 1 caught)が表示されて、しばらく待つと止まります。
weight_save/の下にw000000002184.txt という230MBほどのファイルが作られます。
(2184、の数値は異なります)
aobazero-1.5-w64-cpu-only.zipに同梱されているaobaz.batを編集します。最後の1行が以下のようになっています。
bin\aobaz -q -i -p 100 -w weight-save\w000000002184.txt
この2184の部分を実際にダウンロードしてきたファイル名に合わせて書き直し、保存します。
将棋所にaobaz.batをエンジンとして登録します。
"-p 100"の100を増やすと強くなりますが、思考時間が長くなります。
CPU版は100で5秒ほどかかります。GPU版は4000で3秒ほどかかります(GPUの性能に依存します)。
将棋所はusiエンジンを動作させる将棋用のGUIです。こちらで入手できます。 将棋所のページ https://shogidokoro.starfree.jp/
AobaZeroはShogiGUIでも動作しますがengineに送られてくる局面が初期局面からの手順(position startpos moves ...)ではなく、 現在局面のみ(position sfen ...)なので、過去7局面をNNの入力に必要とするAobaZeroの本来の実力は出せません。
ShogiGUIのページ https://shogigui.siganus.com/
こちらをご覧ください。
今までに作成した棋譜や重み、棋譜のサンプルなどを公開しています。
https://www.yss-aya.com/aobazero/
usiエンジンであるaobazはGPL v3です。それ以外はpublic domainです。
詳しくはaobazero-1.0.tar.gz内のlicensesをご覧ください。
- D. Silver, et al. (2017a). Mastering the game of Go without human knowledge, Nature, 550, 354-359.
- D. Silver, et al. (2017b). Mastering Chess and Shogi by Self-Play with a General Reinforcement Learning Algorithm, arXiv:1712.01815.
- D. Silver, et al. (2018). A general reinforcement learning algorithm that masters chess, shogi, and Go through self-play, Science, 362, 1140-1144 (a preprint version is avairable online).