fmzaのバッチモードを使ってみよう

 fmza のバッチモードを使用すれば、大量のフェアリー詰将棋を効率よく検討することができます。この記事は、バッチモードのクイック・スタート・ガイドを目指したものです。詳細は fmza のマニュアルをご確認ください。

fmzaとは

fmzaはfmに柔軟な拡張性を持たせるため、リニューアルされたfmです。
一つのプロセッサで、多種のフェアリー駒、新しいルール、新しい組み合わせが使えるようになりました。
※fm(Fairy Mate)は神無次郎氏によるフェアリー詰将棋の検討/創作支援ツール

では実際に、fmza のバッチモードを使ってみましょう。

0. fmza をダウンロードする

 もし fmza を入手していなければ、上のリンク(統合型fm:fmza)にアクセスしてダウンロードしましょう。

1. 問題ファイルを作成する

 検討したいフェアリー詰将棋を記載した問題ファイル(fmoファイル)を準備します。一つの問題ファイルに複数の問題を記載できます。問題の書式は下記の通りです。

<ルール> <盤上の先手の駒> +<先手の持駒>, <盤上の後手の駒> +<後手の持駒> #<手数>

説明用に下記の問題ファイル(input.fmo)を作りました。

協力詰 32銀 +歩, 52玉 +飛2角2金4銀3桂4香4歩17 #5
協力詰 32金 +歩, 52玉 +飛2角2金3銀4桂4香4歩17 #5
協力詰 +歩2, 45飛53玉72金 +飛角2金3銀4桂4香4歩16 #7

ちなみに3番目の問題を図示すると下記の通りです。

画像2

作った問題ファイルを fmza64.exe (or fmza.exe)と同じフォルダに置きます。

画像1

補足
(1) 後手の持駒が残り全部の場合は記載を省略できます
    協力詰 +歩2, 45飛53玉72金 #7
(2) fmoファイルの編集方法として下記が挙げられます
   ・テキストエディタで(手動で or 機械的に)編集する
   ・fmza の問題編集モードで図面を作成しファイルに出力する
(3) オプションなど fmoファイルの詳細は下記に記載があります

2. コマンドプロンプトからバッチモードで fmza を実行する

(最低限の)書式は下記の通りです。必要があればオプションを追加してください。

fmza64.exe /I<問題ファイル名> /O<出力ファイル名> /EBATCH
※32bit版の場合、fmza.exe

では、先程作成した問題ファイルを対象に実行してみます。下記のコマンドを実行すれば、input.fmo の検討結果が output.fmo に出力されます。

fmza64.exe /Iinput.fmo /Ooutput.fmo /EBATCH

実行前

画像3

実行後

画像4

output.fmo が作成されました。

3. 出力ファイルを確認する

output.fmo はこんな感じです。

画像5

今回は3図のみの検討なので1個1個結果を確認してもそこまで大変ではないですが、数百、数千の図を対象とした場合は目で確認するのはとても大変です。そこで、例えばテキストエディタの検索機能で
 「検出解数:1  全検完了」
と検索すると完全作だけがヒットします。

画像6

output.fmo を確認したところ、下記の3番目だけ完全作でした。

 協力詰 32銀 +歩, 52玉 +飛2角2金4銀3桂4香4歩17 #5
 協力詰 32金 +歩, 52玉 +飛2角2金3銀4桂4香4歩17 #5
 協力詰 +歩2, 45飛53玉72金 +飛角2金3銀4桂4香4歩16 #7

この記事が気に入ったらサポートをしてみませんか?