コンピューターによる将棋の検討方法

コラム

初めに

主に棋譜集担当の方のために、コンピューター将棋の利用方法と簡単な説明をします。
自分より強い人の棋譜にコメントするのはきついですからね!

導入方法

以下の記事に全部書いてあります。

この記事はShogiGUIとAperyの組み合わせです。
上の記事に続けて説明を続けてみます。

強さ

Aperyは次のページでR4050、もう人類では勝てません。最強のプロ棋士でもこの表だとR3100程度だろうと言われています。
http://www.uuunuuun.com

上の表の通りAperyより強いソフトもあります。表は2018/9/16時点ですので、これ以後はもっと強いソフトが出て続けています。コンピューター将棋は人間と違って「弱くなりません」。少年漫画の敵と同様に強くなり続けます。
ただ、検討者の立場で見ると「強すぎて参考にならない」場面は多々あります。
http://blog.livedoor.jp/akane_shogi/archives/12447568.html?ref=popular_article&id=7885524-532578

画面表示するソフトと、将棋の手を考えるソフトが必要

コンピューター将棋では、次の二つで分業しています。1.画面表示を担当するソフトと、2.将棋の手を担当するソフトです。分業しているのはプログラムを作っている人々の都合で、詳しく書くときりがないのでざっくりだけ書きますと、分業するとプログラマー”達”がそれぞれ集中して作りやすいためです。

画面表示のソフトの例

ShogiGUI
http://shogigui.siganus.com/

将棋所
http://shogidokoro.starfree.jp/

他にも色々あります。
これらに、将棋の手を考えるソフトを登録して使用します。

将棋の手を考えるソフトの例

肝心の将棋の指し手を考える部分です。「思考エンジン」「将棋エンジン」「エンジン」等とも呼ばれます。こちらも山程あります。

Apery
http://hiraokatakuya.github.io/apery/

その他色々
https://migigyoku.com/?cat=15

将棋の手を考える部分も分業されています。大きく次に分業しています。

  • 評価関数
  • 探索
  • 定跡

それぞれ、次の作業分担をしています。
評価関数:評価値を出す。将棋の局面を「先手が300点優勢」のように、数値の点数に変換する。
探索:評価結果の管理、先読みの指示等を出す。膨大な局面を管理するので、これも大事。
定跡:事前に考えおいた結果をファイルに保存しておき利用できる。これにより、序盤の思考時間を減らせる。

例えば、探索にやねうら王、評価関数に Kristallweizenを使用する等と組み合わせて使用します。

コンピューターの性能で強くなる

同じ将棋ソフトでも、コンピューターの性能が上がるとそれだけで強くなります。関係あるのは、主にCPUとメモリです。
CPU:考える場所で、コンピューター将棋に最重要です。CPUが速ければ速い程、考えるスピードが上がります。速い程、同じ時間でも多数の局面を調べて深く読みます。ですので強くなります。一般的に、速いCPU程価格も高いです。
メモリ:考えた結果を一時的に記憶しておく場所です。少ないと記憶できる量が減るので弱くなります。思考エンジンの設定で、使用するメモリの大きさを指定したりできます。

それでも最強を追いかけたい

次等から、色々追いかけてみて下さいませ。

https://www.qhapaq.org/shogi/
https://migigyoku.com/?cat=15


ここまで、星野が記述しました。