将棋検討ソフト

将棋所 Mac (opens new window)

Mac 版の将棋所は ShogiGUI とは違うのでちょっと操作になれが必要でした。

不満点

何故か駒の解像度が異常に低いです。解像度が高い画像に差し替えてもこれなのでつらいところです。

これなら MyShogi とか将棋 GUI を使ったほうが良いのではないかとも思えてきました。

エンジン導入方法

どこかに適当にshogiというフォルダを作成し、以下のようなディレクトリ構造になるようにします。

nn.bin, user_book1.db, Yaneuraou-by-arm64の三つのファイルはこれからダウンロードしてくるのでeval, book, engineの三つのフォルダだけ作成しておきましょう。

shogi
└ engine
  ├ eval
  │ └ nn.bin
  ├ book
  │ └ user_book1.db
  └ Yaneuraou-by-arm64
1
2
3
4
5
6
7

やねうら王のダウンロード

やねうら王の M1 用ビルドが公開されていたのでそれを利用します。

ここにMac OSX版 M1チップ対応やねうら王があるのでそれをダウンロードしてきます。ソースコードが公開されていないのが気になるのですが、まあそれはおいておきましょう。

ダウンロードしたらYaneuraou-by-arm64みたいな名前に変えておきます。変えなくても別に困らないので変えたくない人はそのままでいいです。

評価関数のダウンロード

無償で公開されている評価関数はいろいろあるのですが、自分はコンピュータ将棋データベース (opens new window)を愛用しています。

少し古いですがorqha1018を使うことにしました。

ダウンロードして展開するとnn.binという評価関数ファイルがあります。

定跡ファイル

やねうら王さんが作成した100 テラショック定跡 (opens new window)を利用します。

もちろん、自身で学習させた定跡でも構いません。

エンジン設定

エンジン管理から利用したいYaneuraou-by-arm64を指定します。

メモリが何故か 16MB しか使用してくれない設定になっているので 2048MB くらいを指定します。今回利用しているやねうら王のビルドは 32 ビット扱いなのでメモリは 2048MB までしか使えないようになっているぽいです。まあそれでもめちゃくちゃ早いのでいいとしましょう。

M1 vs SSE42

今回の記事ではネイティブの M1 で動かしていますが Rosetta2 と呼ばれるシステムを利用して SSE42 として動作させることもできます。

他のブログや記事などで書かれている方法はほとんどがその方法です。ネイティブの方が速いに決まっているのですが、どのくらい速いか調べてみました。

設定は完全に同じにできればよかったのですが、全く同じにはできなかったことをご了承ください。

相横歩取りの指定局面をどちらも 60 秒間読ませてみることにしました。

SSE42

こちらはメモリ上限がないので 4096MB、スレッド数は 8 を指定しました。

60秒間で探索した局面は約2150万局面でした。

M1

メモリが 2048MB までしか使えないという制約がありました。スレッド数は 8 を指定。

60秒間で探索した局面は約3570万局面でした。なんとM1仕様の方が1.5倍くらい速いという結果になりました。

これはM1版やねうら王を使う価値が十分にあるといえるでしょう。