正確には、不要駒がほぼなくて、詰むことが確定している局面(厳密な詰将棋ではない)を生成するシステム。
現在はあくまで詰将棋の原石を探す"ふるい"くらいの完成度です。
まずは、軽く調べた範囲での詰将棋生成に関するwebページを紹介。
#1.指定範囲にランダム配置して詰んだ局面
#2.実戦から詰み局面を作り、不要駒を消して逆算
私は#1のアプローチで、手数的には脊尾詰で0.3秒で解ける範囲(少なくとも31手まではいける模様)。
また#1は不要駒があるので、それをバリデーションする工程も入れています。
初期条件:(ランダム)
- 右上 3×3以内
- 双玉あり
- 初形 3枚以内
- 先手持ち駒 0~2枚
上記を生成したデータの分析結果。
--- 以下はデータをgemini3-flashに丸投げ
1. 基本統計量 (Descriptive Statistics)データセット全体の傾向を示す数値です。
データ数 (count): 1,000 件
平均値 (mean): 2.506
手標準偏差 (std): 2.695
最小値 (min): 1 手
最大値 (max): 31 手
最頻値 (Mode): 1 手
2. 手数ごとの分布詳細 (Histogram Data)グラフから読み取れる、各手数ごとの問題数内訳です。
手数 (Steps)問題数 (Count)
1手詰563件 (全体の半分以上)
3手詰277件
5手詰100件
7手詰33件
9手詰9件
11手詰3件
13手詰7件
15, 17, 19手詰各 1件
21手詰2件
23, 29, 31手詰各 1件
3. データの傾向分析
極端な右裾引き分布: 1手詰が圧倒的に多く(563件)、
手数が長くなるほど急激に件数が減少しています。
外れ値: 最大31手という非常に長い問題も1件含まれていますが、全体の75%は3手以内に収まっています。
---
とのことです。
想像通りですが、ランダム生成した局面が詰む場合、短い手数ほど多いということになりました。
今回の初期条件だと13手と15手の間に壁があるように見えますね。
参考:
コンピュータによる詰将棋創作(詰将棋メモ)