第18回世界コンピュータ将棋選手権 1次予選 1回戦

第1戦の相手は「マイムーブ」。いきなりの手ごわい相手。
内心とても勝てる気はしないのですが、「ブログいつも見てます」等とまずは挨拶。
画面も見せて頂きましたが、何やらよく分らない表示がたくさん。
別のパソコンでは、大画面で「過去の対戦成績 ym将棋(初手合い)マイムーブ」と。
思わず「大相撲みたいですね」と口走ってしまいました。。

対局中は、ちょうど向かい合わせの席に座っていたので、時々お互いの評価値を伝えあったりしてました。
30 手目くらいまでは、双方とも 500 点くらい後手(マイムーブ)が有利と判断していたようです。

評価がガクンと落ちたのが、31 手目、ym将棋が▲36歩と指した場面。

後手の持駒:角 歩二
  9 8 7 6 5 4 3 2 1
                                                        • +
v香v桂v銀 ・v玉v金 ・v桂v香
・ ・ ・ ・v金 ・ ・ ・ ・
・ ・ ・v歩v歩v歩v銀 ・v歩
v歩 ・v歩 ・ ・ ・v歩v歩 ・
・ ・ ・ ・ ・v飛 ・ ・ ・
・ 角 歩 ・ ・ ・ 歩 ・ ・
歩 歩 桂 歩 歩 歩 ・ ・ 歩
・ 金 ・ 銀 ・ 金 ・ 飛 ・
香 ・ 玉 ・ ・ ・ 銀 桂 香
                                                        • +
先手の持駒:なし 後手番 先手:ymshogi 後手:MyMove

評価が -1000 以下(マイナスは後手有利)に急落。
85に歩を打たれて、86の角が助からないことを理解したようで、しからばとばかり、37に桂を跳ねて飛車取りを狙っています。
この時の読み筋は、▲36歩△85歩打▲37桂△55飛▲89王△86歩。

実戦ではこの後、△55飛まで予想通りに進みましたが、その後ym将棋が指した手は▲35歩。
画面には、この手は水平線効果であることを示す値が出ていて、思わず頭を抱えてしまいました。
この時、ym将棋は 5 反復目で▲35歩△86歩▲34歩△44銀▲86歩という順を読んでいます。
6 反復目に入って、▲35歩ではその後どう指しても局面が良くならないことに気づいたのですが、次の手を読んでいるうちに制限時間が過ぎ、そのまま▲35歩を指してしまったわけです。

マイムーブの指し手は△35同歩と予想していましたが、惑わされずに△86歩で角を手に。
ym将棋▲34歩に対しては、△87歩成。
ここでym将棋、謎の▲33歩「不成」!
私は、「なぜ成らない!」と叫んでしまいました。
(それ以前に、なぜ87のと金を取らないのか、という話もありますが…)

後手の持駒:角二 歩二
  9 8 7 6 5 4 3 2 1
                                                        • +
v香v桂v銀 ・v玉v金 ・v桂v香
・ ・ ・ ・v金 ・ ・ ・ ・
・ ・ ・v歩v歩v歩 歩 ・v歩
v歩 ・v歩 ・ ・ ・ ・v歩 ・
・ ・ ・ ・v飛 ・ ・ ・ ・
・ ・ 歩 ・ ・ ・ ・ ・ ・
歩vと 桂 歩 歩 歩 桂 ・ 歩
・ 金 ・ 銀 ・ 金 ・ 飛 ・
香 ・ 玉 ・ ・ ・ 銀 ・ 香
                                                        • +
先手の持駒:銀 歩 後手番 先手:ymshogi 後手:MyMove

マイムーブ西村さん、「歩を成らない手も読んでるんですか?」と。
もっともな疑問です。
ym将棋は「れさぴょん for Java」をベースにしていて、
探索ルーチンは完全に自前ですが、指し手生成ルーチンは「れさぴょん」をそのまま使っているので、
歩が成らない手も全部読みます、と説明。
「香、桂、銀はともかく、歩、角、飛の不成は読まない方がいいですよ。反復も速くなります」
と勧めていただき、この後お昼休みにプログラム修正してしまいました。

ちなみに、なぜ「不成」を最善としたかの理由は、よく分りません。評価関数の影響かもしれません。
▲33歩成を読んだ時の最善手順は▲33歩成△88と▲同玉△44角打▲22と、
▲33歩の時の最善手順は▲33歩△88と▲同玉△33桂▲44銀打、となっていました。

この後少し進んで、46手目、マイムーブ△98角打。

後手の持駒:金 歩
  9 8 7 6 5 4 3 2 1
                                                        • +
v香v桂v銀 ・v玉v金 ・v桂v香
・ ・ ・ ・v金 ・ ・ ・ ・
・ ・ ・v歩v歩v歩 歩 ・v歩
v歩 ・v歩 ・ ・ ・ ・v歩 ・
・ ・ ・ ・v飛 ・ ・ ・ ・
・ ・ 歩 ・ ・ ・ ・ ・ ・
歩 玉 桂 歩 歩 歩 桂 ・ 歩
v角 ・ 銀 銀 ・ 金 ・ 飛 ・
香 ・ ・v角 ・ ・ 銀 ・ 香
                                                        • +
先手の持駒:歩三 先手:ymshogi 後手:MyMove

この手は2人とも意味が分からず、首をひねるばかり。
ym将棋は50秒も考えて、▲98同香。角を得したので、評価値が -500 程度に。

ym将棋の敗着はおそらく、△86歩打の王手に対する 49 手目の▲88玉でしょうか。

後手の持駒:金
  9 8 7 6 5 4 3 2 1
                                                        • +
v香v桂v銀 ・v玉v金 ・v桂v香
・ ・ ・ ・v金 ・ ・ ・ ・
・ ・ ・v歩v歩v歩 歩 ・v歩
v歩 ・v歩 ・ ・ ・ ・v歩 ・
・ ・ ・ ・v飛 ・ ・ ・ ・
・v歩 歩 ・ ・ ・ ・ ・ ・
歩 玉 桂 歩 歩 歩 桂 ・ 歩
香 ・ 銀 銀 ・ 金 ・ 飛 ・
・ ・ ・v角 ・ ・ 銀 ・ 香
                                                        • +
先手の持駒:角 歩三 先手:ymshogi 後手:MyMove

玉を引いた時点では、5 手読みで▲88玉△87金打▲同銀△同角成▲99玉、と読んで、まだ行けると思っていたようです。
ところが、実際に△87金を打たれてから、改めて 5 手読みをしてみると、▲99玉の後に△88銀打という手があって、これで詰み。
仕方なく金を取らずに▲99玉としますが、評価値は -4000 に急落。
▲84角打と無駄な抵抗をした後、あっさり詰まされました。


60 手ももたず投了となってしまい、実力の差を痛感しました。
マイムーブ西村さんに 5 手読み(実際は6,7反復目まで行くこともあったが、確実に読めるのは 5 手まで)のことをお話しすると、さすがに浅すぎるとのことで、
「ハッシュの使い方など、まだ無駄があるのではないか」
など、指摘をいただきました。
来年にはもっと深く、速く読めるようにしたいものです。