TadaoYamaokaの開発日記

個人開発しているスマホアプリや将棋AIの開発ネタを中心に書いていきます。

【書籍】強い将棋ソフトの創りかた

先月、このブログでお知らせしていた書籍「強い将棋ソフトの創りかた」が12/20に発売されました。

book.mynavi.jp


応援Tweetしてもらいました。

本を買わずにデータだけダウンロードしたら😡です。

書籍の内容(再掲)

ディープラーニング系将棋AIのアルゴリズムの解説と、ディープラーニング系将棋AIの仕組みを実装して理解するためpythonで将棋AIを実装するという内容と、dlshogiライブラリを使用してGCT電竜を超える将棋AIモデルを学習する方法を解説しています。

Pythonで実装する将棋AIは、時間制御やPonderという大会にでるソフトが備えている機能も実装した本格的なものになっています。
第2回世界将棋AI電竜戦C級で優勝したコードです。

GCT電竜を超える将棋AIの創り方は、dlshogiライブラリの使い方の解説をしていて、書籍向けに用意したデータセットを使って、Colab(V100)で1日程度の学習でGCTと同等のモデルが学習できます。
Colabの無料は最近はK80しか引けないので、その場合、さすがに1日では無理なので学習済みモデルも用意しています。
発展内容として、強化学習や定跡作成の方法も紹介しています。

書籍のモデルの強さ

書籍に付属している学習済みモデルの強さは、以下の通りです。たややん互角局面集使用。持ち時間1分、1手1秒加算。

   # PLAYER                          :  RATING  ERROR  POINTS  PLAYED   (%)  CFS(%)    W    D    L  D(%)
   1 model_resnet10_swish_v10-072    :    28.0   21.8   264.5     474    56      98  248   33  193     7
   2 suisho4-8th                     :   -11.3   21.5   224.5     471    48      61  212   25  234     5
   3 model-0000167                   :   -16.7   21.6   222.0     477    47     ---  209   26  242     5

model_resnet10_swish_v10-072が書籍のモデル(GPU V100x2、GPUごと3スレッド)、
suisho4-8thは、水匠4(8スレッド)、
model-0000167は、第1回電竜戦のGCT(GPU V100x2、GPUごと3スレッド)です。

サポート情報(非公式)

書籍の内容にいくつか誤りがありましたので、正誤表をWikiに記載しています。
公式には出版社のサポートページに掲載いただく予定です。
Home · TadaoYamaoka/ShogiAIBook2 Wiki · GitHub


ということで、書籍の方よろしくお願いいたします。
https://www.amazon.co.jp/gp/product/B09KNGV1QT/ref=as_li_qf_asin_il_tl?ie=UTF8&tag=87etg84cev00-22&creative=1211&linkCode=as2&creativeASIN=B09KNGV1QT&linkId=e5e2cbf4aa4e1c0d8220fcbec6a0f4ecwww.amazon.co.jp