高速化と勝率の変化

いまBonanzaを2倍に高速化するとします。
元のBonanzaと自己対戦させます。

このとき当然、勝率は5割を超えます。

さて、持ち時間は短いときと長いときとでどちらのほうが勝率が良いでしょうか?


例えばプロ棋士であっても100面指しで1手1秒とかですと結構負けます。ときどきプロ棋士が、小学生相手に100面指し(体育館をぐるぐる歩きながら)をやったりしますが、たいてい10局ぐらいは負けます。

要するに実力差がどれだけあろうと考慮時間が0に近づけば近づくほど勝率は5割に近くなります。ポカをしたり、読みが足りなかったり、いろいろ理由はありますが。


コンピューター将棋同士の対戦でも同じことが言えて、実力差があっても短い持ち時間で勝負させるとそれがあまり反映しません。

例えば、2倍速BonanzaBonanzaとを3分切れ負けで勝負させても6割弱ぐらいしか勝ち越しません。しかし10分切れ負けですとおそらく7,8割勝ち越します。(私は簡単にしかテストしていないのでこの数字は不正確かも知れません。ご注意ください。)


要するに、実力差があるなら長い持ち時間のほうが有利というのは言えます。おそらく時間が無限大に近づけば近づくほど、実力が上であるほうの勝率が100%に近づきます。


そう考えますと、3分切れ負けで勝ち越すようにチューンするのと、15分切れ負けで勝ち越すようにチューンするのとでは少し話が違ってきます。

3分切れ負けですとどうせ序盤の立ち上がりは短い持ち時間ではそう簡単に咎められないので、勝ち越すようにチューンするためには終盤力を強化するべきです。読みの量を増やしたり、詰将棋探索をしたり、終盤の手筋を重点的に読むようにしたりです。

一方、15分切れ負けならば、序盤の立ち上がりを咎められたりするので、序盤にもそこそこ時間を使う必要があって、かつ、中盤で挽回不可能なほど押さえこまれたりするので、序・中盤の評価関数の強化・枝刈りの性能upなどに力を注ぐべきです。


しかし15分切れ負けですと1局に20分程度時間がかかるため、何百局も自己対戦させようと思うと非常に時間がかかり、なかなか自己対戦でのチューンが出来ません。ですのでたいていは1手1秒だとかで勝率が下がっていないかを確認することになるのですが、これは大変危険です。そうやってチューンすると知らず知らずのうちに終盤のほうをチューンしていることになって、いざ15分切れ負けで対戦させてみると弱くなっていることが多々あります。

ひよこカルロ将棋は、それでずいぶん痛い目を見ました。しばらく原因がわからずに悩んでいたのですが、大雑把に言うと以上のような原因で弱体化しておりました。