電王戦トーナメント本戦 2日目 やねうら王特設ページ


今日は第三回電王戦の本戦トーナメント2日目です。やねうら王は度重なる奇跡により現在、本戦4位に残っています。(あと二回勝てば優勝)


今日も実況していきたいと思いますが、今日はインタビューや対局の準備・終了後の移動などで頻繁な更新は難しいかも知れません。ご容赦ください。


・前回記事
電王戦トーナメント本戦 --- やねうら王 特設ページ
http://d.hatena.ne.jp/yaneurao/20131103#p1


■ 2013/11/04 8:50 やねうら王 vs ponanzaについて


予選トーナメントおよび本戦1日目ではやねうら王はponanzaと一度も当たっていません。


ponanzaはここまで無敗。やねうら王は、ここまで予選トーナメント敗退組にしか勝っていません。唯一の例外はApery戦だが、これは、やね裏定跡として登録されていた富岡流が炸裂して一発KOになった。また本戦では相手の思考エンジンが途中で暴走してしまったため、不戦勝に近い形での勝利。


どう見ても、やねうら王には勝ち目がないように見えます。おそらく普通に対局させると10回に1回、勝てるかどうかでしょう。


しかし、この勝率1割未満という低い勝率を、勝率2割、もしくは3割程度に引き上げる方法があります。


これについてはまずはこのあとの電王戦のニコニコ生放送のやねうら王へのインタビューなどで説明したいと思います。ご期待ください。


■ 2013/11/04 9:00 ponanzaチームの下山さん


ちなみに、ponanzaチームとして参加している下山さん(aki.さん)はBlunderの作者です。aki.さんには私はここ数年の間、コンピューター将棋のアルゴリズムについていろいろ相談に乗ってもらっており、いわば、やねうら王の技術アドバイザーでもあると言ってもいいでしょう。


一般的に、コンピューター将棋では、成功するアイデアと失敗するアイデアとがあります。成功するアイデアは5%程度しかないと言われています。(これを最初に言い出したのは激指の開発者だったかな?)


それは、アイデアだけ思いついても実際に実装してみないと成功するか失敗するかがわからないからです。ところが、そういう実験に莫大な時間を費やしている、経験豊富な人がいたら、話は違ってきます。それがaki.さんです。


私が何かアイデアを思いついたら、aki.さんに「このアイデア、成功しそう?」と尋ねます。aki.さんは成功するかしないかを豊富な経験に基づき即答してくれます。これにより、私は無駄な試行をずいぶん省略でき、「やねうら王」の開発期間を劇的に短縮化することができました。aki.さんのアドバイスにどれだけ私が助けられたことか。


なので、ponanzaチームは私にとって敵チームという意識はなく、どちらかと言えば身内対決の様相を呈しています。(手の内もお互い、ある程度知っていますし)


こういう状況において、弱いほうのやねうら王が勝率を最大化するにはどういう戦略を採ればいいでしょうか。(つづく)


■ 2013/11/04 9:40 AWAKEがハング


テスト対局でAWAKEが前日同様にハング。他の開発者が「これこれが原因じゃない?ponder切ったらどう?予選のとき動いていたんだから持ち時間変えたらどう?」など親身になってアドバイスしている。


ドワンゴ側の技術担当の方の協力のもと、AWAKEの設定条件を変えながら何度かテストを繰り返し中。


今回、開発者には敵同士という意識はなく、ほとんどの開発者は共に電王戦を盛り上げ、将棋およびコンピューター将棋の面白さを視聴者に伝えられればという意識で参加しているんだなと思った。


■ 2013/11/04 10:10 このあと西尾先生と藤田綾女流が登場


このあと、西尾先生によるやねうら王のインタビューがあるらしいのですが、遠山先生からの情報では、なんでもお二人は私のこのブログを事前に読んで予習してきたとのこと。


西尾先生はコンピューター将棋の研究家としても有名で、YouTubeにコンピューター将棋分析関係の動画を多数上げてらっしゃいます。(私は以前、すべて拝見させていただきました。)


■ 2013/11/04 12:00 ニコ生でしゃべってきました!


なんかしゃべり終わって戻ってきたら、開発者の人たちから拍手されました。えー。なにこれ、すごく嬉しい。


ちなみにponanza vs やねうら王のほうはまだ中盤で、やねうら王側の作戦が奏功して、一応は善戦していますね。詳しい解説は、局後に改めて書きます。


■ 2013/11/04 14:55 ponanza vs やねうら王  その1


ニコ生で私が説明したように、同系のソフトでは実力差が勝率に色濃く反映されてしまう。わずかな実力差しかなくとも、同じような変化を読み、片側がわずかにもう片側を上回るので勝率としては大差になってしまう。


一つのソフトの自己対戦などで、わずかな改善により勝率が大きく変化するのはこの理由である。


まず、やねうら王の実力のほうをここでハッキリさせておこう。


私の実家のPCでこの電王戦トーナメント中に15分持ち時間10秒でBonanza 6とやねうら王とをずっと対戦させていたのだが、勝率はやねうら王の57%程度。Bonanza 6には有意に勝ち越すと言っていいだろう。ちなみにこの結果は、今朝知った。


短い時間でしか対戦させてなかったし、短い時間だとやねうら王は3手詰みルーチンをわざと使わない設定にしているので結構頓死を食らって、やねうら王側が負け越しているのを見て、これはあまり正当な比較ではないなと思い、あまり参考にはならないから気にしていなかった。


今回のやねうら王の出場は、ソフトを調整する時間がほとんどなく、その強さが心配であったが、一応、Bonanza 6よりは一回り強いと言えそうで一安心している。


今回の出場バージョンのBonanzaのほうは、保木さんはBonanza 6との自己対戦などはされておらず、もしかしたらあまり改良されていないような話ぶりであったので、素の実力的には、もしかすると、 YSS ≒ やねうら王 > Bonanza 6 ぐらいではないかと思う。


だとすれば、ponanzaとやねうら王との実力差はR200程度である。PCスペックにして、2倍〜2.5倍差である。これだけ負けていると、ponanzaとやねうら王とは同系のソフト(互いに三駒関係という意味で)に近いので、9回やって1回勝てるかどうかぐらいの話になってしまう。


このようなときに、弱小ソフト側の勝率を上げるためのベストの時間配分は、相手の3倍の時間を考えることである。


そうすれば、じわっと力で押されて、勝ちの目が一切ないまま終局するような、ワンサイドゲームだけは避けられる。中盤で優勢になればどれほど力の差があろうとR2800クラス以上のもの同士が指しているのであれば逆転できない流れというものはありうる。


これが、私が対ponanza戦のために考えた時間配分の戦略である。事前にBonanza6相手に何度か短い時間でシミュレートし、時間配分を相手とのレート差よりわずかに上回るぐらいの時間を序中盤で使うのが勝率が最大になるっぽいことを確認していた。ただし、それは本大会(双方持ち時間2時間)よりは、はるかに短い持ち時間でのテストだったので、その結果を鵜呑みには出来ない状況ではあったが、そこに賭けるほかなかった。


■ 2013/11/04 15:20 ponanza vs やねうら王  その2


ponanza側の序盤が少し杜撰な出だし。早めに角道を止めてしまうので守勢に立たされる。これは、ずいぶんやねうら王側が得な出だしであった。


その後、三倍考える作戦(通称「三倍頑張るファーファ」作戦)が奏功し、やねうら王が2筋を詰めて早くも作戦勝ち。ところが、ponanzaはこの2筋を詰められたことをあまり悪いと思っていないのか評価値がそれほどマイナスにはならない。プロ棋士の先生的には、やねうら王、やや有利。


ただし、私はこの時点で少し悪い予感がしていた。それは、序盤の早い段階でponanzaが8五歩と飛車先を伸ばしたときに、そこでやね裏定跡から離脱していたのだ。おそらくponanzaのfloodgateの実戦棋譜で、ここを8五歩としないものがあるのだと思うが、こんな早い段階で定跡DBから抜けてしまうと、中盤で時間を3倍使うはずが、序盤で時間を使いきってしまう可能性も出てくる。この時点で、局面的には優位になっても手放しでは喜べない状況だった。


そのあと、しばらくやねうら王が有利の局面が続く。しかしやねうら王の持ち時間が減ってきたころからponanzaが追い上げてきた。もともとR200程度の差があるのに、ponanzaのほうが思考に使えるのが多い状況では、勝てる見込みがない。これは駄目だと思った。


■ 2013/11/04 16:00 ponanza vs やねうら王  その3


ponanzaの1回の思考時間がやねうら王のそれを上回る。こうなったら、もうワンサイドでやられるだけである。私の3倍頑張る戦略では統計的には(事前シミュレーションでは)こうなってから復活したことは皆無である。これは万策尽きたと思った。


ところが、ponanzaがそのあと少考を繰り返すが、ponanza良しにならない。そして、ついにまたponanzaの評価値上もやねうら王有利の数値となる。


私はシミュレーションのときにこんなことになったことは一度もなかった。1回の思考時間がponanza側のほうが数倍あり、そして、もともとのレーティング差がR200程度あるので、実質的にはR400以上の差があるのに、この差が詰まらないどころかやねうら王側有利に両ソフトの評価値が戻ること自体が奇跡であった。


解説の西尾先生は「やねうら王、強いですねー」とのこと。


結果論的になるかも知れないが、この局面はきっと2筋を詰められているのがponanzaが思っている以上に大きく、これがせいでどういう変化を読んだところでponanza良しの変化が出てこなかったのではないかと思う。


つまり、杜撰なponanzaの序盤に対して、3倍思考時間を使う作戦で2筋を詰め優位を確立したやねうら王。その優位をかなり長い中盤の間ずっと保っていられたのは、ponanzaが2筋の傷を楽観していたことによるものであり、それらはいくつかの偶然の産物であった。


このあと、おそらくやねうら王側に思考時間が短いゆえのミスが出たようなのであるが、いま棋譜を再現できないので、よくわからない。ともかく、このミスを境に、形勢はponanza側に傾き始め、そのあと一気にponanzaが寄せてしまう。


これが、やねうら王とponanzaとの対局のすべてあるが、ponanza相手に本大会でここまで中盤の長い局面まで形勢互角以上を保った局は存在せず、そういう意味では弱かろうと思考時間を調整することにより勝率を最大化することが出来るという私の考えを実証した形となったと言えるのではないだろうか。


この将棋については私(やねうら王側)として何かを反省しようだとか、何かをこの局から学ぼうとは思わない。この局におけるやねうら王は、私の期待以上の働きだった。やねうら王の善戦ぶりに拍手を送りたい。


■ 2013/11/05 01:13 YSS vs やねうら王戦


3位決定戦。予選のときに続き二度目のYSS戦だが、YSSの作者の山下さん5手目までしか定跡入れない作戦に出て、定跡が5手で終わってしまった。おまけに、先手のYSSの作戦が角交換四間飛車なので千日手模様になって、やねうら王側は詰み以外なら千日手を無理やり打開するように作ってあるので(引き分け時だと0.5点しか入らないので)、千日手含みにされて、無理な打開を迫られた。


ちなみにYSSは千日手を打開するようには作られていないらしい。プロ棋士の遠山先生に確認したら、「一般論として(プロ棋士であっても)千日手にならない手順のみを選択するとなると、指し手が制限されるのでハンデを背負うことになる」という趣旨のことを言われたので、千日手を無理やり回避するのは仮に引き分け0.5点だとしてももう少し考えたほうがいいだろう。


あと事前にYSSがハマりそうな定跡集に切り替えた私は、対ponanzaで使った「(序中盤で)3倍頑張る」作戦を本YSS戦でも採用したのだが(YSSの苦手な定跡にハメて速攻で倒すの意味)、これが完全に裏目に出て、千日手模様で駒組みと手数が長引いている間にこちらの持ち時間がYSSの1/3ぐらいになってしまい、終盤で時間が足りず泥仕合になり、YSSが勝ち切ってしまった。


やねうら王には三つの不幸が重なった。つまり、私の想定が外れ序中盤に時間を使いすぎたこと、YSSの山下さんの5手目まで定跡作戦、そして千日手を回避するように事前にプログラムしていたこと。これらがすべて合わさって事故が起きたわけである。これでは勝てるものも勝てない。


■ 2013/11/05 1:30 電王戦の3日間が終わって


本戦2日目など、私は完全に集中力を欠いていたと思う。


原因を考えてみるに、
・私の場合、ソースコードの修正で予選トーナメント前日がほぼ徹夜。
・三連休なのに早めにホテルの予約をしなかったためにカプセルホテルしか安い宿がなく、カプセルホテルにしたら1日目の夜がニ時ぐらいまで眠れなかった。
・寝てないためか、脱水症状ぎみになり水分が足りなくなるのだが、無料で提供されるお茶の類をがぶ飲みしたところ、目がさえて2日目の夜は5時まで寝れなかった。
・対局自体はコンピューターが自動やるとは言え対局中も結構忙しい。試合中にいま対局中のコンピューター将棋の作者とノウハウの交換などをし、対局の前にコンパイルしなおしたり、設定を変更したりして、ときおりニコ生のほうに呼ばれたり、盤上解説を見たり、新聞・雑誌のインタビューに応じたり。
・昼食休憩があるようでほとんどない。合間に取材があったり、対局が続いていたり。(すべての開発者は、思考時間をめいいっぱい使おうとするのでなかなか時間が余らない)


私の場合、上の状況に加えて、ニコ生の視聴者のために良かれと思い、リアルタイムにこのブログを更新していたので、さらに集中力に欠け、ブログの文章はおかしい文章になり、テンションはおかしくなり、話し方もおかしかったと思う。ともかくろれつがまわらない。普段の私はあんなにどもったり、つまったりしない。ずっと自分のしゃべってる声が数秒遅れて耳鳴りしていた。ともかく、私のおかしなしゃべり方を不快に思った人がいたならお詫び致します。


電王戦に来年以降参加される方は、ホテルは早めに予約するというのと、お茶のがぶ飲みはやめましょう。あと、思考ルーチンの開発は事前にfloodgateに長時間流して動作が安定していることを確認するだとか、会場でブログをリアルタイム更新するのはやめるだとか。そのへんに気をつけておくと幸せになれると思います。


今回、私は睡眠不足で肉体的には大変辛い状況でしたが、この3日間はいままで味わったことのないような知的興奮で満たされ、脳内はとても活性化したので当面の間、いい仕事が出来そうです。開発者の皆様、ドワンゴのスタッフの皆様、視聴者の皆様。本当にありがとうございました。


■ 2013/11/05 10:30 ponanzaに追いつくまでに


今回、やねうら王 vs ponanzaでは序盤でやねうら王側がやや有利になり、ほぼ形勢互角のまま長い中盤があったのでponanzaの強さが私はよくわかっていなかったが、私が思っていたよりさらに一回り強いと思う。(特に終盤)


当初、やねうら王からR200ぐらい伸ばせば互角ぐらいなのかなと思っていたので、新聞・雑誌等のインタビューで「やねうら王はponanzaに負けましたが、ponanzaの強さについてはどうですか?」という質問に対して「(私は)ponanzaにはすぐに追いつける」という返答をしてしまったものがある。(それはまだponanzaが優勝することが確定する前のインタビューだった)


ところが、ponanzaが優勝したことで、私の上記の返答が「優勝したトップソフトであるponanzaに俺(やねうらお)ならすぐに追いつける」と再解釈され、新聞等に掲載される可能性がある。その掲載内容を見て、「やねうらお、また生意気なこと言ってやがる」と思われる方がいらっしゃるかも知れないが、このような事情なので、御賢察いただきたい。(そして、同時に、ponanzaの山本さん、下山さん。気を悪くしたらごめん)


■ 2013/11/05 10:40 新聞・雑誌などの取材について


新聞・雑誌の取材に対しては私は自分の名刺を必ずお渡しして、「掲載前に下原稿をメールで送っていただければ内容をチェックして間違っているところがあればすぐに修正内容を返信させてもらいます」だとか、(今回の場合のように)私のブログのほうに情報が豊富に掲載されている場合、一次ソースとしてこのブログの記事を読むようにお伝えしている。


ところが、新聞は速報性が重視されるせいか、そのようにお伝えしても、ほとんどのケースにおいて私に確認なしに掲載されてしまう。それも、ブログを一次ソースとすることをお伝えしているのに、ブログの内容は全く読まずに書いたとしか思えない不正確な記事をだ。(これは今回のことではなく、いままでの経験上そうだという話。しかし、たぶん今回もそうなりそう…。)


報道機関の使命として、正しい内容を正しいまま伝えようという意識が少しでもあるなら、一次ソースを参照し、そして(私が下原稿の内容チェックに協力すると言っているのだから)本人にチェックを依頼して、技術的に誤っている部分を正して然りだと思うのだが、彼らはそういう意識に欠けているのか、新聞社の社内が昔からそういう体制になっているのかは私は知らない。


もちろん、稀に、ITリテラシーに優れ、下原稿の段階で私にメールをしてくる殊勝な新聞社の編集担当者もいる。私はそういう担当者の方とは長年、いいお付き合いをさせていただいている。


ともかく、新聞のほうは速報性を重視するというメディアの性格上、不正確なインタビューになりやすいということをお伝えしておく次第である。


■ 2013/11/05 10:50 続・やねうら王は強いのか?


今回の大会の終わり際、やねうら王の対Bonanza6.0の勝率が57%であったことをニコ生等でお伝えした。これは、やねうら王は3年前に(それ以前のBonanza風のソースコードからの脱却と)大改造を決意し、一から書き直したソースコードをだったので、バグが取りきれていなかったことに起因する。


おそらく探索に何らかのバグがあって、以前のものより弱くなっているということをこのブログでずっとお伝えしており、これを心配してくださっている読者の方々がいて、そして「そんな弱いソフトでプロ棋士と戦ったら失礼だろ(出場を辞退しろ)」という2chでの批判の声が強かったということを話の前提として、「やねうら王はそこまで弱くはないようなので良かったです」という意味なのだが、この話の前提を知らない人には「勝率57%なんてたいした改良でもないくせに、なんでそんなこと自慢するんだよ。自慢ばっかすんな。」と思っている人がいるようだ。(別にどう思われようとそこはいいんだけど…)


Bonanza6.0を本大会のマシンで将棋倶楽部24で対局させるとR3000程度であろう。そこに勝率57%であるなら、まあそれより高いわけで、プロ棋士の平均的なレーティング(2800前後?)から推察するに、レーティング上はそこまで弱いとは言えず、そういう意味では「弱いソフトすぎてプロ棋士に対して失礼だろ」と、とりわけ騒ぎ立てるほどではないだろうという意味だったのだが…。


ちなみに、勝率57%というのは、Bonanza側(Bonanza 6.0)と同じ定跡を選択し、Bonanza側と同じような思考時間の配分にしたときの(フェアな比較での)勝率である。


Bonanzaに搭載されている定跡は結構おかしいものがあり、Bonanzaに搭載されている定跡に対して有利な定跡を用意すると、Bonanza同士であっても(有利な定跡を選択しているほうの)勝率は7〜8割になる。またBonanzaを改造し、思考時間配分を、対局の持ち時間設定に合わせてうまく調整するだけで対Bonanzaの勝率が7〜8割になる。このように簡単な対局条件の変更だけで勝率はがらっと変わるものなのである。(それに対して、素での棋力は探索を少し改良したぐらいではなかなか伸びない…。勝ち越すようにするだけでも大変だ…。)


ともかく、やねうら王は電王戦でプロ棋士と対局するまでにもう少し調整します。


■ 2013/11/05 11:35 PV(プロモーションビデオ)の撮影


昨日の大会後、電王戦のPVの撮影とか、電王戦カレンダーの撮影(誰得なんだろう…)の撮影があった。


中には開発者による(プロ棋士に対する)挑戦的な発言ととられかねないものもあると思うが(長いインタビューをして、その内容を断片的に取り出せばそういう編集をすることは十分可能なので)、そのへんは興行的な意味もあるので、視聴者の方々は、そのへん御賢察いただけると幸いである。


第四回電王戦の開催もほぼ決まったと伝え聞く。将棋文化とコンピューター将棋文化の裾を広げるためにこういうイベントは必要不可欠なのだ。その意図に賛同するコンピューター将棋開発者の一人として、私はそのための協力は惜しむ気はない。


開発者のなかには自分の発言が興行的な意図から改竄されてPVとかに流れるのを嫌う人もいるだろうけど、ドワンゴ側にはこれだけの舞台を用意してもらっているのだから、そのへんは寛容さと歩み寄りが必要なのではないかと私は思う。