「詰将棋もどきを自動生成してみる(2)」の見出し画像

詰将棋もどきを自動生成してみる(2)

=fziwhcglei
9分で読めます 2026/02/03
90
0

概要


=fkvrd-yxusの続きです。
 
ランダム生成した局面から詰みがある局面を抽出し、
不要な駒を取り除くシステムで詰将棋素材を生成した結果の分析。
 
生成量が10000と20000の比較など。

前回は1000局面生成時の分析でしたが、
その後生成局面が増えて20000局面まで行ったので、そのデータ分析です。
 
#####ここからGemini3-flash
ご提示いただいた2枚の統計データ(10,000件および20,000件の詰将棋素材)を比較・分析しました。
 
このデータからは、生成システムが**「短手数ほど生成されやすく、長手数になるほど指数関数的に難易度が上がる」**という、詰将棋のアルゴリズムにおいて極めて自然かつ健全な挙動を示していることが読み取れます。
 
---
 
## 1. データの全体比較
 
まず、データボリュームが増えたことによる変化を確認します。
 
| 項目 | データ① (10,000件) | データ② (20,000件) | 変化・傾向 |
| --- | --- | --- | --- |
| **平均手数 (mean)** | 約 3.69 手 | 約 4.76 手 | **約1手増加** |
| **標準偏差 (std)** | 3.51 | 4.22 | バラツキが拡大(多様性の増加) |
| **中央値 (50%)** | 3.0 手 | 3.0 手 | 中心層は安定 |
| **最大手数 (max)** | 31 手 | **37 手** | より長手数の問題が生成された |
| **75%タイル** | 5.0 手 | 7.0 手 | 上位25%の難易度が底上げされた |
 
---
 
## 2. 特徴的な分析ポイント
 
### 💡 指数関数的な減少
 
両データとも、手数が長くなるにつれて頻度が急激に減少する**「ロングテール」**型の分布です。
 
* **1手詰・3手詰の圧倒的シェア:** データ②でも1手詰と3手詰だけで全体の約55%を占めています。
* **奇数手数の優位:** グラフを見ると、偶数手(2, 4, 6...)のデータが存在しないか、極端に少ないように見受けられます。これは「攻め方から始まり、玉方の応対を経て、攻め方が詰める」という詰将棋の定義(奇数手完結)に基づいた生成ロジックが正確に機能している証拠です。
 
### 💡 試行回数増による「長手数」の獲得
 
データ量が2倍になったことで、最大手数が **31手 → 37手** へと更新されています。
30手を超えるような超長手数の問題は、生成確率が極めて低い(1/10,000〜1/20,000レベル)「レア個体」であり、計算リソースを投入すればするほど、より高度な(手数の長い)素材が見つかる可能性を示唆しています。
 
### 💡 難易度バランスの変化
 
データ②では、7手詰以上の割合が明確に増えています。
 
* 10,000件時:75%ラインが5手
* 20,000件時:75%ラインが7手
これは、システムが単に同じような問題を量産しているのではなく、探索範囲を広げることで**中〜上級者向けの素材(7手〜15手前後)も着実に蓄積できている**ことを意味します。
 
#####ここまでGemini3-flash
 
前回は右上3×3でしたが、それからもっと広い範囲や多い持ち駒などでランダムに生成していったので、
10000から20000に移行する中で平均手数が伸びていたりします。
また成駒の初期配置はなしで生成しています。
 
20000局面の最大は37手で、1局面しか出ませんでした。
 
参考図面(余詰あり)
?
盤面
 
現在のシステムだと初心者向けの1手詰などは高精度で生成しますが、
捨て駒など詰将棋っぽい手順が出る確率は体感的には相当低そうです。
 
機械学習で詰将棋っぽい配置を作るシステムだと、どんな結果が出るか気になりますね。
 
---
#実行結果のテキストデータ
(Geminiに画像データをテキスト化させたもの)
 
1. 10,000件の実行結果
基本統計量:
 
件数 (count): 10,000
 
平均手数 (mean): 3.6878
 
標準偏差 (std): 3.513028
 
最小手数 (min): 1.0
 
25パーセンタイル: 1.0
 
50パーセンタイル (中央値): 3.0
 
75パーセンタイル: 5.0
 
最大手数 (max): 31.0
 
最頻値: 1手詰
 
手数ごとの問題数 (Frequency):
 
1手: 4,044
 
3手: 2,693
 
5手: 1,512
 
7手: 759
 
9手: 386
 
11手: 251
 
13手: 152
 
15手: 72
 
17手: 53
 
19手: 29
 
21手: 22
 
23手: 11
 
25手: 9
 
27手: 3
 
29手: 3
 
31手: 1
 
2. 20,000件の実行結果
基本統計量:
 
件数 (count): 20,000
 
平均手数 (mean): 4.7598
 
標準偏差 (std): 4.222605
 
最小手数 (min): 1.0
 
25パーセンタイル: 1.0
 
50パーセンタイル (中央値): 3.0
 
75パーセンタイル: 7.0
 
最大手数 (max): 37.0
 
最頻値: 1手詰
 
手数ごとの問題数 (Frequency):
 
1手: 6,060
 
3手: 5,008
 
5手: 3,388
 
7手: 2,036
 
9手: 1,246
 
11手: 857
 
13手: 556
 
15手: 332
 
17手: 217
 
19手: 131
 
21手: 75
 
23手: 51
 
25手: 25
 
27手: 9
 
29手: 4
 
31手: 4
 
37手: 1

コメント(0)

コメントの投稿