激指の 評価値 -99998 の謎 / 激指11への期待

2011/12/14PCソフト, コンピュータ将棋, 棋譜解析, 激指の使い方

以前にも、「激指」の評価値はマニュアルのどこにも説明が無いという話を書いたのですが(最近の棋譜を激指を使って解析してみる)、また面白い事例に当たったので、それの紹介。

左下図の局面は、「教えて、羽生先生!~iPhone/iPadで楽しむ将棋の色々~」(日本将棋連盟ライブ中継&i羽生将棋 | 着手予想の棋譜解説⑧)の羽生・木村戦の最終盤の局面です。i羽生将棋という初心者向け棋力向上ソフトのイベントでの解説です。

(このソフト、初心者・初級者にはおすすめです。私も日夜詰将棋と逃げ将棋解いています)。



左図の局面では、後手の1五馬を5九馬と移動させれば、5八地点が合駒効かずのため詰みとなります。実際にこの局面を「激指定跡道場2」で検討させてみると…



2番目の候補の△5九馬▲6八桂△同馬はわかります。激指の検討は無駄合いを判定しないので、合駒して取られて詰みと。3手かかりますので、100000-3=99997が評価値です。

1番目の8五桂は何でしょう? 詰みであれば、奇数手になりますから(詰将棋も1,3,5…手ですよね)、どうも変です。素直に8五桂を指してみると…


何ですかこれは? 先手は同歩しかないので、同歩して以下△5九馬から詰みと。評価値が-99997に戻っています。

無駄な1手を使って手数が伸びている方の評価値が良くなってるのは変です。

また、詰みチェックにかけると、高速の場合は「△8五桂▲同歩△5九馬」最短手順だと「△5九馬」になります。


前の版の激指定跡道場も持っているので、そちらで検討してみると、「8五桂同歩5九馬」「-99997」だけが候補として表示されました。5九馬が出てこないですね。この点は激指定跡道場2になって、少しは改善されているようです。

銀星将棋東大将棋6にてチェックすると両方とも5九馬が先に出てきますので、激指は何か変な感じがします。しかも、商品としては激指の方がかなり新しいのに。


(もっと言うと、候補手を10手表示する意味何も無いですよね、これ。最新版もこうですし、なんというか、細かな使いやすさとかに気を使ってないんですよねえ、激指銀星将棋の方がこの点だけは良いんですが、銀星将棋は他の部分がなあ…)



さて、この謎の挙動ですが、よくある将棋ソフトの探索アルゴリズムを念頭に推測すると、最初の1手だけ読んだときに △8五桂の方が△5九馬よりも良い手だと判断しているんでしょうね。そこで応手が同歩の1手しかないので探索延長をかけて詰みを見つけてる…のだと思います。応手が少ないときに深く読むのは、よくある手法ですし。

問題は、深く読んだときに評価値が-99996になるならともかく、-99998になっちゃうことですね。これは今の私には原因はわかりません。前バージョンの激指定跡道場では-99997になりますが、これはわかるような気がする。応手が一手しかない手を探索延長するときには、評価値上は手数0と見なしているのでしょう。


妙に思えるかもしれませんが「勝てば官軍。細かい手数はいいんだよ」の方が強さを求める上では効率的ですから…なので、終盤必ずしも最短手数では詰ませないですし、激指の詰みチェックも「高速」「最短」がありますね。


さて、この対局全体を棋譜解析をした結果が左図です。解析時間を短くするために、棋力四段を使っています。

ぱっと見て赤線を引いてある部分が変です。93手目以降、激指の読み筋通りにを指しているのに評価値が変動していませんし、99手目時点では5九馬推奨なのに100手目になると8五桂になってしまう。96手目も-99994じゃ無いのかなあ?



95手目を検討してみます。激指の評価値は「その手を指す局面での評価値」ですので、-99995になっている局面は6六同歩を指した左図の局面です。
ここで△6七角▲7七玉△8八銀▲同金△5九馬あるいは△8七銀▲7七玉△8八角▲同金△5九馬の5手詰ですから、100000-5=99995で問題ありません。6七角・8七銀の両方とも評価値は-99995です。さて、実際の手順に沿って8七銀と進めると…


先の8五桂が出てきました。推測するに、3手目以降に8五桂を打たないのは「すぐに只で取られる駒は読みの深いところでは指さない」ということなのだと思います。ただし、これでは捨駒からの好手がまったく読めなくなるので、初手だけは捨駒を許す…と。 本当にそうなっているのか、激指の論文を探したけど見つかりませんでした。「YSS 7.0の技術解説」には「以下の手は深さ1手目(初手)でのみ読む (中略) ・駒の損得を無視した王手」とあり、当たらずと言えども遠からずでしょうか。



今度は93手目7九同金の局面を見てみます。評価値は-99991で、ここから激指の読み筋通り指しても評価値が変わらないのが謎です。


7九同金の局面を検討すると…あれ? -99989 になってる。何じゃこれ?

この局面を最短手順の詰みチェックにかけると11手詰みと言われます。手順は「△6六桂▲7七玉△5九馬▲6八銀△同馬▲同金△8八角▲7六玉△8七銀▲8五玉△8四銀」。これが正しいっぽいです。


再度、検討にかけてよーく見てみると…四段のときに瞬間的に99991の局面の評価値が上になってますね。どうも先手が最長の手数で逃げなくて詰む場合を最善だと評価してしまっていて、棋譜解析四段ではそのまま表示されてしまっている、ということでしょう (これは最強設定の六段+++でも局面によっては発生すると思われます)。


左は六段+++の棋譜解析結果。93手目の同金のところは直りましたが、その前の7九とのところの評価値が-99985→-99989に飛んでいます。
この辺りが読みの深さの限界ということでしょう。利用者に検討結果を提示する前に、一度詰み探索を走らせれば不自然な表示はチェックできると思う (時間かかるかな?)。そうすれば一般人にも優しくできそうですが、激指ってそういうところは弱いんですよね。F1レース用の車をそのまま一般向けに売ってるような感じです。



弱点は開発元でも把握しているとみえて、激指11売り文句によると『本作はロボットのように強いだけではなく、「ユーザーが強くなる」、あるいは「棋力アップの軌跡が見える」ということに重点をおいたメニューを新設』ということなのですが、このへんは改善されているのでしょうか。

評価(レビュー)してみたいけど、マイナビさんがプレゼントしてくれたりしないかなあ(^_^; さすがに定跡道場定跡道場2と連続で買ってるので3本目はきつい(^_^;


リンク: