以前話題にしたfloodgateに関して、金子さんに、先手勝率と千日手率が調べられないかどうかお尋ねしたところ、さっそくfloodgateの統計ページを作っていただきました。floodgateの過去から最新までのすべての累積データが見られるようになったようで、これはありがたい。将棋はチェスほどではないものの先手がわずかに有利な競技といわれており、現にプロの将棋では先手勝率が約53%程度というのが近年の傾向のようです。これがコンピュータ将棋にもあてはまるかどうか、恐らく初めて信頼できる量の集計が得られるようになりました。
そのデータが早くも6,000局を超え、先手が3,000勝に到達しました。通信トラブルなど終局に至らなかった対局を除くと、戦績は先手の3,000勝2987敗50引分。先手勝ち越し…と思いきやその差はわずか13。ここまでほとんど先後互角、という結果になっています。
よく知られているように、終局に近づけば近づくほど強くなるのが現在のコンピュータ将棋の棋風です。裏を返せば、コンピュータ将棋の序盤はまだまだ物足りないのです。先手の得を最大限に生かすには、高度な序盤の構想力や定跡の深い知識が必要ですが、現在のコンピュータ将棋がそれを備えているとは考えがたいところです。その意味では、先手の得がないかのように見えるこの統計結果は、ある意味で予想通りといえます。
単に勝ち越しが少ない、というだけでは曖昧すぎて、計算機の専門分野であるコンピュータ将棋のブログとしてはふさわしくないと思われますので、先手の利を示すためにはどの程度勝ち越せばよいか、仮説検定を使って述べておきます。仮に危険率5%で片側検定する場合、6,000局時点で120勝は優に勝ち越していないと、先手有利を証明したとはいえません(プロ並の53%の勝率までは求めておらず、あくまでほんのわずかでも有利であることを示すために、です)。同じ条件で10,000局の場合は160、100,000局の場合は500を超える勝ち越しが必要になります(ただし、仮にチェス並に引分が多くなった場合はもっと少なくなります)。もしも将来、floodgate統計で先手がこの数字を超えてきたら、コンピュータ将棋が序盤も確実に強くなったことを認めてよいでしょう。
仮説検定というと、教科書で読んだ覚えはあるが意味が思い出せない、という人が多いと思いますので、コンピュータ将棋とは直接関係ありませんがごく簡単に説明しておきます。この問題の場合、先手有利に見える傾向が偶然でないと言い切れるか、を確かめるのが仮説検定です。危険率5%で片側検定するということは、仮に先後互角とみなした場合に5%以下の確率でしか起こりえないほど勝ち越している、といえるかどうかを計算で確かめることにあたります。つまり、5%以上なら偶然起こりうるとみなすわけで、現在のfloodgate統計は充分すぎるほど偶然の範囲内です。先述した数値はこの基準をクリアするかどうかの境界を指します。危険率には一般に5%や1%などの小さな値が用いられます。
なお、プロの先手勝率53%という数字は、月刊将棋世界の連載「イメージと読みの将棋観」でトッププロの議論の前提としてよく出てくる数字が出典です。すでにバックナンバーではありますが、将棋世界2008年3月号の同連載では、千日手ルールを巡る興味深い議論が行われていますので、この件についても近いうちに当ブログで採り上げたいと思っています。
小宮 said
misakiに関しては、自己対戦させるとやや先手が勝ち越すので、
どこかにバグがあって先手有利になってるかもしれません(^^;
上位のソフトはそういうのは無いでしょうが(汗
受け棋風だと後手有利とか、攻め棋風は先手有利とか、そういうのは無いもんですか?
統計を見るとYSSは若干先手有利な感じがしますね
山田 剛 said
試しに、先手の初手をパスに限定してその後を正常に指す、という小細工をして、自己対戦テストでやっぱり先手が有意に勝ち越したら、バグかもしれませんね。
棋風や得意戦法によって先手の有利さが変わることはありうると思います。特に、先手でしかできない戦法が得意、という場合は大きくなるでしょうね。他にあるとすれば、後手が先に長考に入ってしまうことが多くてその後延々と先手が予測読みで得をするとか。ただ、今のコンピュータは序盤であっさり手損をしてしまうことも多いですし、全体として1手の差が大きく出ている感じは正直しないですね。
山田 剛 said
ちなみにfloodgate戦績からは、misaki900の先手と後手の戦績に有意差は見られません。バグの可能性は低い?
小宮 said
調べて頂きありがとうございます。
誤差の範囲ってことですね。自己対戦も数が少ないと偏るでしょうし……
>序盤であっさり手損
手損しない良い手法があればいいんですけどねえ……
山田 剛 said
この記事を書いた後、半月が経過し、総対局数も8,000局を超えました。そしてこの間の約2,000局、先手が100局近く勝ち越し、総勝ち越し数が100を超えています。これは近いうちに先手の有利が示されることになるかもしれません。そうなれば画期的ですね。
Inhworm said
>仮説検定を使って述べておきます。仮に危険率5%で片側検定する場合、
>6,000局時点で120勝は優に勝ち越していないと、先手有利を証明したとはいえません
仕事で仮説検定を使うのですが、ちょっと根拠がわかりません。
勝ちと負けという2つの値しかないもの(分散値ではない)に仮説検定を使うのが適当かどうか
という話はありますが
勝ちを1、負を2として3000勝3000敗に比べて有意差があるとするには、
EXCELのF検定を利用して
6000局で危険率5%の場合 3612勝2388敗 勝ち越し数は1224でした。
Inhworm said
この場合先手勝率は.602です。
仮にプロの公式戦2年分強で先手勝率6割を超えたら先手有利と言い切れることになります。
Inhworm said
F-検定 : 2 標本を使った分散の検定
変数 1 変数 2
平均 1.5 1.398
分散 0.250041674 0.239635939
観測数 6000 6000
自由度 5999 5999
観測された分散比 1.043423096
P(F
Inhworm said
変数 1 変数 2
平均 1.5 1.398
分散 0.250041674 0.239635939
観測数 6000 6000
自由度 5999 5999
観測された分散比 1.043423096
P(F
Inhworm said
P(F
山田 剛 said
>Inhworm様
勝敗の分布は2項分布、すなわち大数的には正規分布に従うので、単純な正規分布もしくはχ^2分布で検定可能のはずです。巨大な自由度を使う必要はないのでは?
勝率が6割を超えないと有利かどうかわからない、ということはさすがにないはずです。
Inhworm said
失礼しました。2項分布ですか。
確かにそうですね。分散値のみ扱っているので気がつきませんでした。
山田 剛 said
現在、通算12,000局を目前にしています。5. のコメントの後、後手が盛り返し、現在先手の勝ち越しが40前後にまで減少しています。現時点での結論は、やはりコンピュータ将棋は先後互角、ということになりますね。
kaneko said
参加プログラムが増えてきたので、レーティング差200以内を別に計算するようにしてみました。
5/17現在、先手の199勝174敗です。先手有利となるかどうか今後が気になりますね。
山田 剛 said
>kanekoさん
レーティング差200以内の先手勝ち越し数が、全対局のそれを上回っていますね。
通算600局を越えてなお同じくらいのペースで先手が勝ち越しているようなら、互角の仮説が棄却されるレベルに入ってきますね。
全対局では、先後差が広がったかと思ったらまた接近…という展開が続いているようですが、実力伯仲ではどうなることやら。
山田 剛 said
…と思って日付が変わる直前に見たら急に対局数が増えて後手勝ち越し?
kaneko said
すみません、不整合なデータを参照していました。
現在、108勝113敗ですね。長い目でみる必要がありそうです。
(後手が若干勝っているのは、ある時半日ほど組み合わせアルゴリズムに偏りがあったため、レーティングが高い方が後手になる組み合わせが多かった影響の可能性があります。)
誤った速報をお伝えしてしまいましてすみません。
山田 剛 said
>kanekoさん
200局超えて5勝差なら、誤差の範囲と思います。
組み合わせの有利・不利を反映した先後成績を分析できればそれが一番よいのですが、「実力差があると先手の有利さが相対的に小さくなる」かどうかはゲーム性に依存するので、仮説モデルを確立するのはあまり簡単ではなさそうですね。