Sunday 31 March 2013

コンピュータ将棋

電王戦で佐藤四段が ponanza に敗れたのが話題ですね。でも、予想の範囲内か?

この辺りの流れの元は、

Bonanza
http://ja.wikipedia.org/wiki/Bonanza

ですね。これのソースコードが公開されたせいで、いきなりレベルが上がったと感じます。評価関数を人が打った棋譜で学習するというのが斬新。あと、その時点での可能な手を全部探すというのが現代的だと思う。ponanza と名前が似ているのは偶然ではないわけ。

松原さんは、オセロのコンピュータ対戦が人間のボロ負けで始まった例を出して、早いうちにプロとの対戦をしないと旬を逃すみたいな心配をしてました。

初期の頃は大ゴマの点数が低くて飛車角交換とかすぐやるので「ボナる」とか言われていたようです。これは人間臭い感じ。人は複雑なアルゴリズムと出会うと、そこに人格を見ることがあると思う。チェスの対戦の時にもコンピュータの思考を擬人化していた。特に、プロの人の棋譜を学習しているので、人が好む手を指すというところがあるだろうと思います。人っぽく指すというところは、チューリングテストと似通っているかも知れないな。

人の棋譜を学習しているというのは、コンピュータ自身で将棋の勝ち方を発見しているというのとは少し違う。それが悪いというわけではないんだけど。人が新しい手法を発見すると、それまでの学習では対応できない感じ。こういう学習だと計算よりは学習が問題だから、台数を増やして計算力を上げても強くなるわけでもない。

囲碁の方がはるかに難しいらしいのですが、こちらは

モンテカルロ木探索
http://entcog.c.ooco.jp/entcog/contents/lecture/date/5-yoshizoe.pdf

がブレークスルーだった。こちらは、人間の棋譜を学ぶというよりは「とりあえず、ざっと試してみて方向を見る」みたいな感じで、人間臭くない感じ。こっちは計算力がものをいうので、そういう意味でも計算機っぽいかな。

囲碁でも人の打ち方を学習するという手法が可能だと思うけど、まだ難しいみたいですね。

No comments: