やねうら王公式からクリスマスプレゼントに詰将棋500万問を謹呈

開発者の皆さん。詰将棋ルーチンをせっかく作っても、そのベンチマークの方法に悩んでいませんか?詰将棋問題集を手打ち入力なんていまどきナンセンスです。

やねうら王公式が、詰将棋問題にお困りの開発者さんたちに、ドドーンっと500万問プレゼントしちゃいます!

アンケートの結果は?

クリスマスプレゼントにやねうら王公式から欲しいもののアンケートを取ったところ、半数ぐらいの人から、「そんなに解けねぇよ!ヽ(`Д´)ノウワァァン!!」でしたが、逆に言えば残り半数の人は欲しいということですよね?

3手詰め、5手詰め、7手詰めに加えて、さらに、9手詰め、11手詰めがそれぞれ100万問ずつSFEN形式で収録されています。

https://drive.google.com/file/d/1nJbFFaQeOx3gFafiVIR_oDIcG8iCOHf4/view?usp=sharing

ここに収録されている5手詰めは3手では詰まないことが保証されています。
// 以下同様に7手詰めは5手では詰まない、9手詰めは7手では詰まない…。

どうやって作ったの?

この局面図は、やねうら王同士を自己対局させて、対局中にN手詰めルーチンで解けて、N-2手では解けないことが判明した時にその局面をSFEN形式で出力したものです。

3,5,7手はともかく、9手11手詰めは生成するのにすこぶる計算時間を要したので、わりとお金かかってます。やねうら王公式へのクリスマスプレゼントは年中受け付けております。

// 年中受けつけているクリスマスプレゼントは、もはやクリスマスプレゼントではない。

SFEN形式とは?

SFENってなんだよ、そんなの知らねーよという開発者ではない人たちのために、これをやねうら王に読み込ませて局面を表示させ、そして解かせてみましょう。

まず局面図は、テキストファイルになっていますのでメモ帳なり何なりで開きます。

そうすると以下のように書かれています。1行が1局面(問題一つ)に対応していますので、1行コピーしてきます。以下のは、mate9.sfen (9手詰め局面集)から1行コピーしました。

次にやねうら王の実行ファイル(YaneuraOu-NNUE-XXXX.exe など)をエクスプローラーからダブルクリックして起動します。いつも将棋所やShogiGUIから使っているエンジンの実行ファイル本体ですね。

評価関数などはきちんと配置されていて読み込めるものとします。

起動したら”isready”とタイプしてEnterキー(⏎)を押しましょう。

そうすると評価関数を読み込んで、”readyok”と表示されるはずです。評価関数が読み込めない場合は、ここでエラーになります。

これでやねうら王エンジンを使う準備ができました。

さきほどの問題図を貼り付けるのですが、sfen形式であることを示すために先頭に”sfen “とつけてそのあとに貼り付けてEnterキー(⏎)を押しましょう。
そのあと、”d”⏎とするとこれを人間にわかりやすい文字で表示してくれます。

“^角”のように”^”記号がついているのは後手の駒という意味です。まあ、なんとなくわかりますよね。

それでは、これをやねうら王に解かせてみましょう。詰将棋用のエンジンではなくとも、11手ぐらいまでのものなら、通常探索用のエンジンでも解けるはずです。

“go infinite”⏎
とすると無制限に思考します。

読み筋が出たあと、メッセージが出てこなくなったら、おそらくそれで解けてます。

そのあと
“stop”⏎

とすると思考を終了します。

画面には”score mate 9″ のように出てますね。9手で詰んだよ、という意味です。

そのあと”pv 6e5g+ 5h6i 5g6h”…のように出力されています。これが読み筋です。チェス方式で段は1段目がa,2段目がb,…のようになっています。6e5gは、65の升にある駒を57に移動させるという意味です。”+”は成るということです。本局面では、65には後手の桂がありますからこれは57桂成を意味します。

まとめ

やねうら王公式からのクリスマスプレゼントはいかがだったでしょうか。楽しんでもらえてたら嬉しいです。

「クリスマスプレゼントに詰将棋100万問プレゼント!」とか言うと「やねさん、またネタツイートしてる…」みたいな反応も多かったですが、マジです。マジで100万問(トータル500万問)プレゼントしていきます。

なお、今回のファイルはいずれ削除するのでダウンロードはお早めに。
著作権は主張しませんのでご自由にお使いください。

22 thoughts on “やねうら王公式からクリスマスプレゼントに詰将棋500万問を謹呈

  1. 生成時間のデータ。詰将棋を解くのに要する時間もありますが、長い手数の詰将棋はそもそも実戦でそんなに出現しないというのもありそうです。13手詰めは超レアっぽいですね。

    3手詰め 100万局面 , 35分 / 80HT
    5手詰め 100万局面 , 60分 / 80HT
    7手詰め 100万局面 ,100分 / 80HT
    9手詰め 100万局面 ,200分 / 80HT
    11手詰め 100万局面 ,21時間 / 80HT
    13手詰め 100万局面 ,171時間 / 80HT

    • go mateは詰将棋エンジンでしか使えないので、(皆さんインスコされてないでしょうし)あまりお手軽感はないかと思いまして…。

      // 詰将棋 df-pnだと最短性が保証されてなくて、13手詰めぐらいまでなら通常探索部のほうがそういう意味で良かったり。

  2. そういえば、某空きマスに数字を書き入れるパズル向けで、問題にカメラを向けると空きマスに書き入れるべき数字が浮かび上がるようなスマホアプリがいくつかあったりするけど、局面図にカメラを向けるとクリップボードあたりにsfenがドーンみたいなソフトって、実は無かったりするんですか?

      • いや、リアル人間な棋士な方々がPCソフトを使っての研究とやらで、紙媒体で得た局面図をPCに入れるときに、手を使うデバイスで入力するのとカメラでスキャンしてある程度一気に駒を配置できるのと、どっちが速いかな?とか思ったもんで。

        • んでも、紙媒体の駒の文字の形をディープラーニングで云々とかよりも、紙媒体側で局面図の横にsfenとかの入ったQRコードをドーンの方が簡単そうw

          • 局面図は256bitで表現できることは証明されているので、点で良ければ16*16のdotで済むけど、これのリーダーがないのでQRコードのようにはいかないでござるな…。

  3. 詰将棋500万問の3,5,7,9,11手詰めをサクラエディタに取り込んで行の頭に「sfen 」を埋め込んで1行コピーして将棋GUIにペーストすると詰将棋の局面が表示されます。それを検討で正解を確認するわけですがやってみた感想です。
    3手詰め:あまりにも易しい問題ばかりで・・・初心者から5級ぐらいまでの方なら意味あるかもです。
    5手詰め:3級ぐらいまでなら意味あるかも
    7手詰め:1級ぐらいまでなら意味あるかも
    9手詰め:初段ぐらいまでなら意味あるかも
    11手詰め:3段ぐらいまでの人でも一応意味あると感じました。
    詰将棋独特の捨て駒によって玉の位置を詰ま誌やすい位置に変える手筋を使った問題はまれにしかないですね。普通に寄せて詰ます問題ばかりでしたが11手詰めとなるとそれなりに変化を読む必要があるので意味あるかもしれないと思いました。
    この局面図をネタに検討モードで詰め手順を入手して捨て駒の手筋で玉の位置を変える詰将棋問題をピックアップするツールを作成出来たら最高なんですが、そこまでのプログラミング力がありません・・・

    • ・攻め方の指し手の移動先の駒を同Xと取ると詰まないなら +1点
      ・攻め方、味方の利きのないところへの駒打ちなら +1点
      みたいに詰将棋っぽい指し手に加点していき、この点数が大きなものを抽出すると、面白い詰将棋があるかもですね。

  4. >> やねうら王公式へのクリスマスプレゼントは年中受け付けております。

    ウィッシュリストにガムしか無いのですが
    ガム大好きなのですか?

  5. 将棋盤の写真をとって文字起こししてくれるのはありますね。sfen(USI)じゃなくてkif(BOD)形式ですけど
    https://shogi.nkkuma.tokyo/
    Ta(ryさんのツリーになぜかぶら下げられなかったのでここにコメント

    あと詰将棋界では複数解があるものは詰将棋というのは抵抗がありそうなので、実践詰将棋集とかにしたほうが無難な名前な気がします。

    • > あと詰将棋界では複数解があるものは詰将棋というのは抵抗がありそう

      この件、他の人からもご指摘がありました。次から気をつけます。(´ω`)

gyokusen へ返信する コメントをキャンセル

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です