黒色ワナビーの住処

フリーゲーム・ブラウザゲームをやりながら筋トレで体を鍛えるブログ

ポナンザの評価関数をぶっ壊す!

      2015/04/18

注意:やや過激なタイトルですが、所詮はへっぽこ級位者のお遊びです。

さて、コンピュータは定跡外の展開に弱い、なんて話はもはや過去のものとなりつつありますが、それでもヘンテコな手が全く無いかというと話は別なわけで。

コンピュータの読み筋を追いかけてみると、最初の方は話にならないような手を読んでたりするんですよね。ただ、コンピュータの場合は計算能力が圧倒的なので、そういった論外な手も含めてすべて読みきって正解を導き出してしまう部分が恐ろしいんですが。

逆に言うと検討時間を極端に短くする、スレッド数を少なくするなどして正解を導き出す前に指させるように仕向ければ、あり得ないような悪手を連発することもあるわけです。

将棋ウォーズでは対人戦とは別にコンピュータであるポナンザと当たることもあるのですが、結構な割合でヘンテコな手を指してきます。

自分が現在3級のため当たるポナンザも1~5級くらいのレベルなのですが、恐らく上位ポナとの差別化として探索の深さやスレッド数が相当絞られているのでしょう。

おまけに弾丸モード(3分切れ負け)という持ち時間の短さ。コンピュータの弱点が出やすい要素が揃っているわけです。

というわけで、どうにかコンピュータの弱点を引き出せないかとアレコレ試していたのですが以下の3点を意識しながら指せば、結構な高確率でコンピュータ側の悪手を引き出せるようです。

1.定跡から外れた手を指す
2.急戦を避ける(持久戦で相手のミスを待つ)
3.駒同士の紐付けは超重要

初段以上のポナと当たったことがないので、どの程度の段位まで通用する方法なのかは分かりませんが、とりあえず級位者レベルのポナ相手なら有用です。

ぶっちゃけ序盤は相手の戦型を見ずに自陣の駒の紐付けだけ意識しながら同じ箇所を行ったりきたりしてるだけでOK。

気がついたら自陣も相手陣もめちゃくちゃになっている(笑)ので、そこから相手陣の一番脆そうなところを攻めてあげれば、まず負けません。

サンプルとして棋譜アップ。

しかしこのポナ、最初から壊れ気味だったのでちょっと参考にはし辛いかも。

他にも成功例はあるのですが、イベント報酬のために弾丸モード指しまくってたら、それらのログの中に埋もれて見つけられなくなってしまいました。ご容赦を。

後で調べてみて分かったんだが、このやり方は稲庭戦法というものに近いようだ。

稲庭戦法に関しては詳しく知らない(100万円を掛けたGPSとの対局イベントで、この戦法を使った挑戦者がいいところまでいったみたいなニュースは見た記憶がある)が、歩を突かずに持久戦を仕掛けコンピュータのミスないし時間切れを狙うというコンセプトは全く同じ。

どうやら稲庭戦法にも定跡のようなものがあるみたいなので、その辺を参考に体系化出来れば、より効率よくポナンザの評価関数を崩壊させることが出来そうだ。上手くすれば初段、二段あたりのポナまでは通用するコンセプトかもしれない。

いずれにしてもこんなやり方では、勝とうが負けようが一切棋力向上には結びつきませんのでその点はご了承の上でお試しください(笑)

 - 将棋 ,