中合い問題の解説 その2

私の中合い問題(→ http://d.hatena.ne.jp/LS3600/20100101 )の昨日の記事の続きです。


もずやまさんに昨日の記事にコメントとして解答をいただきました。

mozuyama 2010/01/04 23:38
問題1についてですが、
攻方:11角、88飛、99角
玉方:21玉、31香、32歩
持駒:香
で、初手29香とすると、2手目28合以外の応手はすべて3手で詰みます。
例えば、11玉には18飛(両王手)、12玉には22角成(直接王手)です。
しかし、28歩合に対しては、5手かかります。(3手目28同飛と取るのは無駄合扱いにならないという理解で正しいでしょうか。)

これを見た瞬間、「おおお!!」と感動しました。それで、確認のためこの局面を本家Bonanzaで判定させてみたところ、3手詰めルーチン(mate3.c)では、これは不詰みの判定をしました。中合いして不詰みなのではないのです。2手目、11玉にて不詰みなのです。


よくよく考えてみると、3手目の両王手は近接王手ではないためBonanza的な1手詰みには属さないのです。ああ、なんということでしょう。私も気づきませんでした。(汗)


そんなわけで、1手詰め定義の両王手を「両王手(ただしそのどちらかの駒は近接王手している)」と修正しておきます。もし、この新しい両王手の定義で、問題1)の解答がわかった方は、是非コメント欄に書き込み or トラックバックをお願いします。


それで、Bonanzaの1手詰みルーチンが、両王手の詰みを詰ませることが出来ないだとか、3手詰みルーチンが普通の詰め将棋で言うところの3手詰みを詰みだと詰ませることが出来ないだとか、逆王手がかかる場合は常に不詰み扱いだとか、そこそこいい加減なものであることが皆さんに伝わっているころかと思います。


もずやまさんからは次のようにコメントされています。

ただ、「かなり限られた状況」という理由で逆王手のチェックを省略するのであれば、玉から4マス以上離れた地点に中合をしないと逃れないという状況を無視してしまうという選択もできるかもしれません。

それがですね、詰みを「まだ現在の探索深さでは詰まない」と錯覚してもそれほどダメージはないのです。なぜならそこはまだ探索されるので、探索していくうちに詰みが読み切れることがあるからです。ところが、この逆はよろしくないのです。


すなわち、「不詰みなのに詰みだと錯覚」するのは、致命的なのです。なぜなら、「詰み」というのは確定的な勝ち扱いなので、その局面についてはそれ以上深く調べないので、一直線にその変化に飛び込んできて、直前になって詰まない→負け なんてことになるのです。(人間でもそういう錯覚はよくありますが)


さて、ながとさんから再度解答が寄せられました。こちらについても見ていきます。


中合いについて2
http://d.hatena.ne.jp/mclh46/20100105/1262675087



面白いですね。飛車を駒を移動させることで、玉周辺の勢力関係が変わるので詰まなくなる例ですね。これはこれで非常にためになる手筋で、「利きのある場所への駒移動で詰みが回避できるパターン」のひとつなのです。この図を見て、おお!と思い、別の発見をしました。これについては、後日書きます。これもながとさんのおかげです。


ただですね、問題1は、「打ち中合で3手詰めを逃れることはあるか」でして、上の図は、97飛成が「移動中合い」になっています。


もうおわかりかと思いますが、間接王手に対する応手を考える上で、次の4つが問題なのです。
1) 利きのない場所への打ち中合いの応手生成が省略できる条件
2) 利きのない場所への移動中合い応手生成が省略できる条件
3) 利きのある場所への打ち合い応手生成が省略できる条件
4) 利きのある場所への移動合い応手生成が省略できる条件


ここで言う「応手生成が省略できる」とは、それらの応手は生成して調べるまでもなくそのあとの変化が「詰み」あるいは「不詰み」のどちらであるか、その結果がわかっていることを言います。


今回は、上の1)〜4)のうち1)のみを考えています。2)〜4)についてもいずれ書いていこうと思いますが、1)が一番簡単なので1)をまず終わらせたいと考えています。


あと5手詰み以上は非常に難しいということがわかってきましたので3手詰みのほうをもう少し専念して考えることにしたいと思います。