dlshogiのビルドや自己対局の実行方法について今まで文章化していなかったので、解説用のJupyter Notebookを作成した。
Google Colabで実行できる。
dlshogiは学習に初期局面集や評価局面集を使っていたり、メモリを大量に消費するため、Google Colabで実行するために制限を加えている。
制限を加えた個所は注釈で説明を入れている。
ということで、dlshogiを開発に使用する際の参考にしてください。
VC++とg++の違いについて
Linuxでビルドする際に、Visual Studioではビルドできていたコードがエラーになるコードがあった。
以下のようなテンプレートメソッドを呼び出す処理で、
entry.hand.exists<HPawn>();
g++でコンパイルすると、
expected primary-expression before '>' token
というエラーが発生する。
このページを参考に、
entry.hand.template exists<HPawn>();
に書き換えるとコンパイルが通るのだが、別の箇所では上記のコードでもコンパイルが通るので、template周りの仕組みがいまいち理解しきれていない。