あから一致候補手
例の対局、こちらに各ソフトの候補手一覧が出ていた。
http://www.geocities.jp/problem_extra/ShimizuvsAkara.html
特にチェックはせずに機械的カウントする。
条件として、事前作戦の3三角まではノーカンとする。
手番の一致度のみカウントする(予測読みは気が向いたら別途)
下の表が、各ソフトから見た他ソフトとの一致候補手数。
- | 激単 | 激ク | ボ単 | ボク | G単 | Gク | Y単 | Yク |
---|---|---|---|---|---|---|---|---|
激指単独 | - | 24 | 24 | 26 | 23 | 21 | 23 | 18 |
激指クラ | - | 20 | 22 | 21 | 20 | 17 | 13 | |
ボナ単独 | - | 36 | 27 | 27 | 22 | 21 | ||
ボンクラ | - | 29 | 29 | 25 | 18 | |||
GPS単独 | - | 31 | 24 | 18 | ||||
GPSクラ | - | 20 | 16 | |||||
YSS単独 | - | 24 | ||||||
YSSクラ | - |
第20回世界コンピュータ将棋選手権
コンピュータ将棋選手権決勝ラウンドを会場で見学してきた。
今回は幸運にも選手権会場内に直接入ることが出来たので、その感想。
1.会場の雰囲気
理系空間とかアカデミックとか独特の雰囲気などと評される事が多いようだ。
確かに将棋を指してるような気には全くならないので、異空間には違いないだろうけどこの表現はどうもしっくりこない。学会だって口頭発表中は大人しく拝聴しているし、ザワザワとしていてサロン的な雰囲気ともまた違う様な気がする。色々考えた末に、あえて皆が知っている近いものを挙げると技術家庭の時間にラジオを作っていたあんな感じじゃないだろうか。
まあ、ソフトウェア演習の時間を理系空間というならそうなのかもしれない。
2.ネット中継との差異
盤面を見るだけならネットの方が良い。全対局表示が素晴らしい。
会場でも、部屋前方にスクリーンで四局同時表示&サイドの解説用スクリーンがあるが、部屋の後ろからだと四分割は厳しい。(目が悪いのがいかんのだろうけど)
例えばボンクラvs大槻戦では、先手の銀が7六から上がってなんだか狙われてるなぁと思っていたら、いきなり右に動いて???となった。銀じゃなくて金なのか?そんな手あるのか?とスクリーンに寄ったらなぜか玉が六段目に(笑)。その後の勝又解説では「こんな玉上がりをやる棋士は一人しかいない」と言われていたり。対策としては、現地でもネット環境を持参して、見たい対局を手元の端末に表示したほうが良いかもしれない。
勝星計算は公式アナウンスに関しては会場の方が情報早い。ネット中継ページは遅れて更新(手作業?)しているが、現場では素早く表が回ってくる。2chやTwitterでも速報は出るが、表形式での貼り付けに難があるので、webページベースで素早く更新されるのが望ましい。人出が足りないのだろうか?
3.読み筋
GPSがTwitterで読み筋を呟いている訳だが、もちろん選手権参加者の端末には(普通)自分のコンピュータの読み筋、評価値が表示されている。それでどうなるかというと、会場では対戦相手と自分のマシンとをお互いに行ったり来たりすることになる。右往左往しつつ対戦マシン同士の読みを比べながら、一体どう指すのかを話し合うのは結構楽しい。対戦用サーバはfloodgateのように読み筋を受け付けて棋譜コメントで表示するようにしたらどうだろうか。
4.質問
せっかくの機会なので、いくつか質問もしてきた。
保木氏に「null move pruning」について質問した。大会2日目のネット中継で激指の鶴岡氏とパス手について何やら語っていたので、その確認。ボナンザの「null move pruning」は(ネットで調べて出てくる)普通の手法。「パスしてやったのに自分が良くなる」=「相手が悪手を指した」という考え方に基づいて悪そうな手をカットする。これに対して、激指やGPSの実現確率探索では(読みが深くなると)良さそうな手のみを生成する。この際に良さそうな手の一つとしてほどほどに良い、穏やかな手としてパス手を候補に入れる。「パス=最善手じゃないから」(後ろ向き)と、「パス=そんなに悪くない」(前向き)ではずいぶん考え方が違う気がするが。いずれにせよ将棋世界の連載で抱いた違和感は解消した。あの連載は紙面の都合もあるだろうが、色々と思う所はある。
GPSの300台構成に関しては通常クラスタ+合議でどうかと聞いて回った。300台のうち1台がコケたらアウトというのは厳しいので、冗長構成にするというアイデアが出ていたのだが、それなら単に多重化するより合議にしたほうが得じゃないかと思ったので。
通常クラスタ化で性能が頭打ちになるところまで台数を増やして、飽和したら合議にすればよい。例えば50台クラスタ×6合議とか。これならば、特別難しいシステムを考えずに構築可能だろう。保木氏は「直交する技術だから、当然組み合わせは有効」との見解。
勝又先生にも質問できた。過去、「最新戦法の話」を読んでいて、相振りの低い矢倉がボナンザ囲いの鏡像反転じゃないかと気づき、気になっていたので。相振りの章末にあるように、結局角の居場所の問題であるとのこと。「相振りだからおk」ということになる。最近は減ったが、ボナンザ系は鏡像局面を同一視するはずで、相振り矢倉の棋譜が増えたらまた囲うようになるのか……?
以上、まとまりのない感想である。
最後に、今回見学の機会を用意して頂いた伊藤さん、ありがとうございました。
「コンピュータ将棋・囲碁の最新動向」
電子情報通信学会東京支部講演会「コンピュータ将棋・囲碁の最新動向」を聴講した。
講演は将棋、囲碁が各2で、両方とも概説と実装にもとづくやや詳細な話に分かれていた。参加者の質問など覚えていないモノもあり。
以下、技術屋でコンピュータ将棋は概要を知っているが自分では作っていない、という立場で聴いた講演内容の概要と感想。
1.最新!かんたんレシピ:強い将棋プログラムの作り方 (保木 邦仁)
1本目は保木氏の講演で、ゲーム理論の話からコンピュータチェスの歴史、将棋との差異とBonanzaの概要という内容。中盤のスライドは技術的な内容(既発表のもの)だが、ここらへんは駆け足。
後半はボナ登場後のコンピュータ将棋についてで、評価関数機械学習組の台頭と、文殊についても言及。登場直後は全幅探索+機械学習のうちむしろ全幅探索に対する注目があったようだが、結局「良い評価関数」が重要であってボナが業界に与えた影響の中核は機械学習ということだろう。
時間が押していて質問タイムが取れず。誰かなんか質問したっけ……?
2.世界コンピュータ将棋選手権初制覇までの歴史 (金子 知適)
2本目、GPS将棋の解説だが機械学習についてやや詳しく解説。保木氏の原著論文だけだと大まかな理屈しか解らないが(使っている理論は解ってもコン将棋にどう適用しているのか解りにくい)、こちらは結構丁寧に説明されていて良い解説。
次にボナとの違いとして各部分で実装している技術の表が。評価関数は学習型だが、探索は実現確率(激指)、静止探索はYSSライクに、詰探索はdf-pnと各部分で良さそうな技術を片っ端から採用しており、行数でボナ3万行に対してGPSは10万行とメタボな合体怪獣タイラントである。(template多用とあいまって個人が片手間ではやっていられない)
後半はプロや将棋24の棋譜解析。探索無しor浅い探索のみを行った際の幾つかのグラフを示して、GPS将棋から見た人間の棋譜解析結果は
- .プロの対局はアマと比べて互角な状況が多い(アマは大差になりやすい)。
- 、プロの対局では、(GPSから見て)差がついているように見えても逆転することが多い
1はある意味普通の結果。高いレベルで均衡している人たち同士の戦い=プロの対局ということだろう。2は、評価関数が対プロでは全然当てにならないレベルということ。ただし深く読めば結構一致するということで、やはり現状は人間に遠く及ばない評価関数+大量読みでカバーしているという結果を追認している。
最後はコン将棋の課題で、もう少しでなんとかなりそうな終盤の寄せ合いと、どうしたらいいか解らない序盤について。
質問は変な爺さんがモガモガとイミフな事を言い出して貴重な時間を食いつぶされた(怒)。序中終盤別評価関数の学習で、どうやって進行度を決めているのかとか、序盤の課題に対するアイデアなど聞きたかったが適わず。
3.囲碁から生まれたアルゴリズム:モンテカルロ木探索 (美添 一樹)
3本目は囲碁。これまで停滞していたコンピュータ囲碁が確率的アルゴリズムで一気に強くなったと言う話。
原始モンテカルロ(ひたすらデタラメに打って確率を計算)から、モンテカルロ木探索(途中で良さそうな手を優遇する)、UCT(優遇の仕方に理論的なバックグラウンドを与えて尚且つ棋力うp)と発展する手法の説明と現状の説明。
現状では更に改良が進んで、プレイアウト中全部ランダムじゃなくて、シチョウみたいに一本道の時は別処理で正解手を指すようにすると強くなる。当たり前と言うかこれは話が逆で、盤上この一手というのが解っていれば最初からそれを選べば勝ちなのである。それが解らないから「適当に打ってみよう」と言ってるんだから、正解が明らかなのになんでランダムにこだわるんだよという印象。どうも、ランダム打ちがまずあって、そこにどうやって囲碁の知識を付け加えていくかという実装ベースの頭で物を考えているような。ただまあ、これは外野からの勝手な言い分であって、当事者達にはそれだけインパクトの強い事件だったんだろうなと思う。
それから乱数の初期値鋭敏性についても話があったが、UCTは最初の種次第で何処かの局所最適解に捕まってしまうと、そこから出られなくなってしまうようなアルゴリズムであるのだろう。クラスタ化で別の乱数を使えば解決しそうとの事である。単体のPCで何とかしたければ途中で集計を打ち切って探索をやり直し、各探索ごとの有力候補から選ぶ等が考えられる。
4.強豪囲碁ソフト「彩」について (山下 宏)
ラストはYSSの山下氏。前のが基本編ならこちらはやや応用編。プレイアウト時の情報として目数差ではなく勝率を使うと良いという結果について。「目数差の方が情報量が多いが、実際に対戦させると勝率の方が強い」という実績にイマイチ納得がいかない様子であった。情報量は確かに多いが、その示すものを考える必要がある。これは例えば「大差で勝っているというのは相手がヘボな手を打ったということで、要するに勝手読みをしている」とも解釈できる訳で、大差で勝った手を選んだからいいという考えは短絡的に過ぎるのではないか。勝率の他に目数の分散を調べて見ると、何か見えてくるかもしれない。
質疑応答の時間は製品ユーザーの開発者に対する苦情と要望で終わった。
全体を通しての感想。
保木さんはリラックスした感じで場慣れしていた。海外流の講演中でも笑い声を上げたり質問したり、質疑応答の時は「素晴らしい発表ありがとうございました。質問なんですが〜」派。
会場は年配の男性が目立っていた。最初何処かの教授かと思ったら普通の碁打ちっぽいことが判明。しかも技術的なことはよく解っておらず、解ろうともしていない?感じだったが何がしたかったのだろうか。一名は製品に文句付けに来ただけというのがハッキリしているが……(その文句自体は至極尤もだったけど)
講演を聴いて改めて思った事は、一般人への説明のための努力が足りていない(今回は多少専門的でも問題ないが)。選手権でGPSの人が※会長に説明しているのを見てちょっと……と思ったが、なんとか新しい技術を「将棋の言葉」に翻訳して説明しないと素人にはちんぷんかんぷんだと思う。未だに「6万局の棋譜から一致する局面を検索して同じ手を指してるだけ」と機械学習を勘違いしている人がポロポロ出てくるような状況で、コンピュータ用語を100万語並べても絶対に理解してくれない。
例えば「評価関数は人間でいう大局観」みたいな比喩を、必ずしも正確でなくともいいから工夫しないとねぇ。従来のソフトは開発者=師匠が付きっ切りで教えるタイプなら、ボナ型は棋譜並べをして自分で感覚を磨くロボットだ。みたいなね。
エンドレスエイトの続き。
なにやら公式でやっている。まだ終らせてくれないのだろうか。
笹の葉ラプソディ
久々に短冊を。