利かずの駒並べ|実践編

プログラミング,将棋C/C++,利かずの駒並べ

「利かずの駒並べ|理論編」で解説したプログラムを用いて、双方向駒並べの探索を行った。

ソースコード|https://github.com/komori-n/shogi-piece-placement

  1. 利かずの駒並べ|理論編
  2. 利かずの駒並べ|実践編(ここ)

概要

駒追加は40枚の駒に何枚まで駒を足せるか、駒成は何枚まで成駒に交換できるかを表す。

以前から広く知られていた配置法は以下である。1

  • 歩4枚追加
  • 桂5枚追加
  • 歩3枚成
  • 角1枚成
  • 飛1枚成

それに対し、今回のプログラムで得られた駒配置は以下の通りである。いずれも限界まで駒追加または駒成をした結果である。結果図を眺めたらまだ駒を置けそうだったので、追加で桂馬も置けるだけ置いた。

駒種駒追加駒成
+歩4歩成8+桂1
+桂6桂成4+桂1
+銀3桂1銀成4+桂4
+金2桂3
+玉2桂2
飛成1+桂2
+角2角成2+桂3
得られた駒配置のまとめ。すべて上限値。

歩成が予想外にたくさん成らせることができて驚いた。と金の左右には駒が置けないので、歩成は4枚程度が限界だと予想していたからだ。

逆に、飛成が1枚までしかできないのも面白い。直感的には歩成8より飛成2の方が簡単そうに見えるからだ。実際のところ、飛車の斜め4マスに金が置ける事がわりと重要だったのだろう。

双方向駒並べ 結果

プログラムで得られた図から、以下の点を手で修正している。
(簡略化した駒を元に戻すプログラムを書くのが面倒だったので)

  • 歩 → 香
  • 金 → と、成桂、成銀

駒追加

+歩4

+桂6

+銀3桂1

+金2桂3

+玉2桂2

+飛

飛車は1枚も足せない。

+角2

成り駒に置き換え

歩成8+桂1

桂成4+桂1

銀成4+桂4

飛成1+桂2

角成2+桂3

notes

  1. https://mozuyama.hatenadiary.org/entry/20050710/P20050710KIKI