タイプするサル

2017-01-12

[]「・・・」というヘボな下手の碁の演劇

(タイトルは若干煽りです^^)


点の階という演劇ユニットの公演「・・・」を観劇しました。


劇の舞台は火葬場の控室です。


「点転」という囲碁などの元になったとされる架空の競技を巡って、4人の登場人物が碁界にありがちなチグハグなやり取りを続けます。棋譜は作品なのか事実の記述なのか、碁の起源は、その宗教性、守破離的関係、著作権…いずれも揉めそうなテーマです。


点転の「師匠」と呼ばれる女性の火葬の日に、点転の傍観者、生みの親、熱狂者、意図せず点転に初めて触れた人がそれぞれの想い、疑問、意味を互いに問いかけます。それぞれが意味のわからなさに不条理を感じて。


劇を観て最初は、囲碁関係者の悩みのパロディかと思いました。みんな色々想いの違いを感じてますから。

でも、意味を問い続ける姿に次第に登場人物それぞれが対局しているんじゃないかと観始めます。

生きることも盤上の悩みも似ているよなぁと。


ところがですねぇ。


感想ツイートもして、たまの都会出だからと呑み食いもして、電車に揺られるうち、ふと印象的なラストを思い出しました。

この劇では窓から見えると想定される白煙と、決して強調はされてない喪服がキーだったんじゃないかと感じました。


点転ではどうか全く知りませんが、囲碁では白は上手、黒は下手を意味します。

となると、登場人物は、それぞれの想いをぶつけて対局していたのではなくて、盤上で噛み合わない碁形を互いに非難する黒石を観ていたのではないかと。

互いに存在を問い合うような黒石。それはきっと、達人の碁ではなくヘボな素人の碁に違いありません!


AlphaGo以来、プロ棋士さえ達人と言えるのかどうか問われる世の中になってきましたが、人も盤上の黒石も意味を求めて自らの存在の意味を問いながら日々凌いでいく。


「・・・」とは私にとってそういう物語でした。


リンク点の階公式webサイト

http://floor.d.dooo.jp/ten/images/10.jpg

2016-03-15

[][]観る碁のための囲碁入門25

AlphaGoは布石の天才だった

Google DeepMind チャレンジマッチ」はAlphaGoの4勝1敗で幕を下ろしました。

第4局の感動に2日経った今でもしびれています。皆さんはいかがだったでしょうか?

李世乭さん、DeepMind開発チームの皆さん、関係各位、素晴らしいイベントを見せてくれて本当にありがとうございました。


AlphaGoはモンテカルロ木探索を採用していて、その欠点と言われていた通り、深い読みが苦手でした。複雑な局面を乗り切ることができない一面を第4局で見せました。

それ故に、私は大いなる希望に包まれています。


李世乭選手は、全盛期を若干過ぎつつあるとは言え、今も勝てる人は数人しかいない伝説の棋士です。その棋士を相手にAlphaGoは、3局完勝、最終局も序盤失敗があってもあっという間に布石で抜き去った。


現代の伝説の棋士、李世乭を大局観だけで凌駕できる


誰がこんなことを想像したでしょうか。

では第1局から振り返ってみましょう。


第1局

李世乭選手の先番(黒)、AlphaGo白です。


f:id:yich:20160315201655p:image


プロ棋士の解説で、白10はAlphaGoが間違えたと評判でした。

一間トビを先に打つのが定石だからです。


f:id:yich:20160315201154p:image


実戦は黒15と右辺を大きく囲えています。

ところが、後の進行を見ると黒が芳しくないことから、白10は、白を強くし、黒7の働きを悪くする好手だったのかと評価されるようになったのです。


f:id:yich:20160315201656p:image



黒は周りの白を壊そうと一度は戦おうとしましたが、誤算があったのか黒43と手が戻り、そのまま押し切られた感じです。

(見所はずっと先の右辺にあります。)


第2局

AlphaGoの先番(黒)、李世乭選手白です。


f:id:yich:20160315203029p:image


黒13まで、見たことがない布石で斬新です。後の対局でもわかりますが、AlphaGoは右下の黒のカケツギの石をとても軽く(場合によって捨ててもいいと)考えているのですね。感動しました。

もし今のプロ棋士が打つなら(勝手な想像ですが)


f:id:yich:20160315203408p:image


カケツがずに黒1だと思います。そうせずにカケツギと一間を交わしたところに布石の天才性がある。正しいかどうかなんてわかりません。今のプロの棋譜とは違う明確な問題提起をしている。


そして話題になったカタツキ。


f:id:yich:20160315204119p:image


この手の専門的な意味は私はわかりません。でも、私には「この碁の布石は私が成功しました。右辺の白が大きくならず、下辺の黒が攻められなければ私の勝ちです」とAlphaGoが言っているように見えました。


第3局

李世乭選手の先番(黒)、AlphaGo白です。


f:id:yich:20160315204651p:image


黒15が敗着だったというのは酷じゃないでしょうか。でも白32の妙手でその後黒に勝ち目はなかったという評判です。

李世乭選手に32手で勝てる棋士なんて存在しませんでした。


第4局

AlphaGoの先番(黒)、李世乭選手白です。


f:id:yich:20160315205132p:image


白は黒23の奇手を悪手にし、その後耐える展開です。ですが白52には驚きました。



正直な気持ちでした。でも違いました。李世乭さんは虎視眈々と勝負の時を迎えるべく耐えていたんですね。


f:id:yich:20160317170853p:image


白64の動き出しから手順を尽くして、白78!


この手は成立しなかったという解説があります。AlphaGoが正しく打っていたら白は潰れていた。そうだったのかもしれません。でもそう簡単に済ませることもできません。トッププロの対局もそういうものですから。


勝負手を放つ。

勝負手を全力で受け止める。


間違いが起これば、起こした方が力が及ばなかったというのが勝負の世界です。この局面での間違いをコンピュータのバグ、不具合なんて言うことは絶対できません。

白78の後、AlphaGoは数手を1分ほどの考慮時間で打ち続けました。まるで読み切っているかのように。実際には黒79が間違いだった。

李世乭選手は局後の会見で白78について聞かれ、答えています。

「そこしか打つところがなかった」

思えば一人、成立しないことを読み切っていたのかもしれません。


こうしてAlphaGoは、李世乭という天性の勝負師から公式戦初めての敗北を味わいました。

白78はAlphaGoにとって1万分の1以下の確率の予想手だったそうです。文字通り「万一」の手で深く読んでいかなったのです。


その後のAlphaGoの乱れっぷりは級位者レベルで、形勢が悪くなった時のモンテカルロ木探索の欠点をさらけ出しました。そう、人が極限状態で弱さをさらけ出すかのように、コンピュータとは思えないほどに弱さをさらけ出したのです。


それにしても、それにしても、無敵のAlphaGoを間違えさせるような鬼手白78。

今回の5番勝負チャレンジマッチは当然3勝した方が勝ち。ですが、通常の5番勝負とは異なり、勝敗が決着した後も5番最後まで打つというルールでした。

本当に、本当にこのルールでよかった。李世乭選手の3連敗で終わっていたらと思うとぞっとします。

第4局こそ、AlphaGoの弱さ、李世乭選手の精神力、そして何より、碁の深さを示してくれたんじゃないかと思います。

私はこうも思います。伝説の棋士李世乭とか、その棋士に3連勝したAlphaGoとかも、何も囲碁をわかっていないんじゃないかと。

失礼な奴だと思われるかもしれませんが、棋譜をしっかり並べた人は同意してもらえると思っています。


第5局

李世乭選手の先番(黒)、AlphaGo白です。


f:id:yich:20160315211931p:image


右下隅、ツケヒキ定石のカケツギは軽く、捨てて打てるんですね。感動しました。AlphaGoは、今まで見たことない布石の天才だと思います。


f:id:yich:20160315211932p:image


右下は白が取られていて、AlphaGoは手が読めていないと評判でした。でも、白60と上辺を止めてきっと布石は白悪くないんだと思います。


多くの棋士は強くなろうとする過程で、感覚を排除して読みだけを頼りにしようとします。感覚は誤差が大きく、読みだけが信頼できると。人は正確無比なコンピュータになりたがっていた。

当のコンピュータのAlphaGoは違いました。直感こそが囲碁攻略のための最大の武器であり、3000万局面の学習で直感を磨き上げました。


第4局を見てわかる通り、AlphaGoは複雑な局面を読めていません。にもかかわらず、(おそらく)全局とも最強の棋士を相手に大局でリードできる。

私は、神秘がなくなった現代において奇跡を見たような気がしました。


皆さんも是非、囲碁を覚えて、この5局の棋譜を並べて、奇跡を味わってください。

2016-03-08

[][]観る碁のための囲碁入門24

李世乭vs.AlphaGoの対決があと1日と迫りました。

今回は番外編として、AlphaGoをご紹介します。


AlphaGoとは

Google DeepMind社が開発した、コンピュータ囲碁システムです。

Google DeepMind社は元々はイギリスのDeepMind Technologiesという人工知能のベンチャでした。

TVゲームをプレイしながら学習していく人工知能を発表して一躍有名となり、Facebookも買収に乗り出していたようですが、2014年頭にGoogleが買収に成功しました。

Googleの一員となってから、上記の人工知能をDQNという名前で発表しニュースになっています。

Google Deepmind、人工知能『DQN』を開発。レトロゲームを自力で学習、人間に勝利


このGoogle DeepMind社が、2016年1月27日、科学論文誌Natureに中国のプロ棋士でヨーロッパチャンピオンの樊麾二段に5戦5勝したという実績を合わせてコンピュータ囲碁システムを発表し、同時に李世乭九段と番勝負を行うことを発表しました。


このニュースは、多少なりともコンピュータ囲碁の現状について知っている者には衝撃でした。どのくらいの衝撃かというと、おそらく、アポロ計画を知らず、地球を回る人工衛星打ち上げロケットしか知らない人が、突然、「人類が月面に降りて帰ってきました」と言われるぐらいの衝撃です。

AlphaGoが発表される前、つまり1月26日までは、コンピュータ囲碁はプロ棋士に対して石を先に3つ置いても勝てないぐらい決定的な差がありました。たいていのアマチュアには勝つぐらい強くなっていたのですが、プロに勝つにはまだ10年以上かかるだろうというのが開発関係者の印象だったのです。


AlphaGoがそもそもハードウェアの仕様が桁違いだったことは、観る碁のための囲碁入門1で触れました。

詳しい内容を知るには、Natureに載った論文のプレプリントを見ることができます。

”Mastering the Game of Go with Deep Neural Networks and Tree Search”

ちょっと論文を覗いてみましょう。


盤面(19x19の黒白空点情報)からニューラルネットワークを使って局面の特徴を抽出するのですが、「方針ネットワーク」と「価値ネットワーク」との2つを使って、読みの深さや広さを軽減しているようです。

ニューラルネットワークというのは人の脳の仕組みを荒っぽく真似たものです。層構造のものがよく使われていて、AlphaGoが使っているものもそれです。ニューラルネットワークはニューロン(あちこち繋がっている点)のつながり具合を学習することで、入力に対して役立つ出力をするようになります。


方針ネットワークは局面から次の一手を予想するニューラルネットワークです。KGSというインターネット碁会所で高段者が打った碁の3000万局面を学習し、次の一手の57%を当てることができるようになったそうです。

さらに方針ネットワーク同士で自己対戦してより勝ちやすい手を選ぶように学習します。

方針ネットワークは、形や筋、大局観を担当しているようです。


価値ネットワークは局面を見てどちらが勝つか予想するニューラルネットワークです。

価値ネットワークは形勢判断担当ですね。


ところで、AlphaGoより前のコンピュータ囲碁プログラムはどんなことをしていたのでしょう?

実はこの部分がとても面白いのです。

2008年までコンピュータ囲碁プログラムはプロ棋士に先に9手のハンデをもらってもなかなか勝てませんでした。

ところが、2008年にCrazyStoneというコンピュータ囲碁プログラムが登場して、プロ棋士に8手のハンデで勝ったのです。これはブレイクスルーでした。

このCrazyStone、従来のコンピュータ囲碁プログラムとは全く違った方法を取りました。

従来は、次の一手をデータの中から選択して手を進め、形勢判断をして、手を選ぶという一見人にとっては当たり前の方法を取っていましたが、形勢判断の部分をプログラムにするのが非常に難しかったのです。確かに将来フリカワリをした後どっちがいいかとか人間でもかなりの棋力を要します。

CrazyStoneは形勢判断をやめて、何局もランダムに最後まで打つことにしたのです。そして勝ちやすい方が優勢だと。

「局面に差があれば、同じ棋力の人が打てば局面がいい方が勝ちやすい」という常に正しいわけではないですが、もっともらしい原理が根底にあります。


ちょっと脱線しますが、皆さんはスロットマシンをされたことがありますか?

コインの出やすさが色々違うスロットマシンがたくさんあって、出やすさはわからない時、どう賭け続けるのがいいか理論的に解明した人がいます。

全部のスロットマシンに何度も賭けてみて、一番確率のいいマシンを探し出して、残りのコインをそこに賭けるという方法が思い浮かびますが、これは確率の悪いマシンにも相当数のコインを賭けていて効率が悪いです。

とりあえず一度は賭けてみますが、次はコインが出たマシンに賭けやすくします。出やすいマシンには多めに、出にくいマシンには少なめにという戦略でできるだけ損を抑えて一番出やすいマシンを見つける賭け方が理論的にわかってしまったのです。


CrazyStoneは次の一手候補をスロットマシンのように見て、賭けていきます。そして、勝率の良さそうな手を見つけたら、その局面については一手先、つまり相手の次の一手候補についてスロットマシンのように見て賭け始めます。良さげな手ほど先へ進めるようにしたのです。

これはモンテカルロ木探索と呼ばれています。モンテカルロはカジノで有名な町ですね。「木」というのはコンピュータの専門用語で、先が別れていくようなデータ構造のことをいいます。


このようにCrazyStoneは、局面がどのくらいいいかをランダムに最後まで打った勝率で考え、手の選び方については出やすいスロットマシンを選ぶようにして選び、有力な手については先を進めて同じことをするようにして、従来のコンピュータ囲碁プログラムにはない強さを発揮したのでした。

ただし、本当にランダムに打つと候補手が多すぎて一通りやってみることができなくなるので、候補手をいかに絞るかが強さの磨くためのキーの技術となります。


AlphaGoはこのモンテカルロ木探索と方針ネットワーク、価値ネットワークを混ぜて使っています。候補手を絞るのに方針ネットワークを使い、勝率でその局面を先に進めるか決める代わりに勝率と価値ネットワークの出力で決めます。


そして大規模なハードウェアを投入することで、かつてない強さに到達しました。

下のグラフは論文に掲載されたコンピュータ囲碁のレーティングです。



AlphaGoは3100ぐらいですか。

一方の李世乭選手のレーティングは3532と推定されています。


Go Ratings


この論文はおそらく去年の10月ぐらいに書かれました。それから4ヶ月以上AlphaGoは学習し続けているはずです。

一体どのくらい強くなっているのか、見当もつきません。でも、明日午後1時からの対戦ですべては明らかに!