近況

先週末は電通大に講演を聞きに行ってきました.囲碁はルールすらあやしいのですが手を出してみたくなりました.夏休み余裕があったら少しやってみようかな.

GPWの締め切りが近くなってきているので研究(モンテカルロ法の将棋)の方に力を入れています.最近のいくつかの改良は(たぶん)有効に働いているようで,かなりきれいな読み筋を示すようになりました.

sinpo2 - 11
後手の持駒:歩 
9 8 7 6 5 4 3 2 1
+---------------------------+
|v香v桂 ・v金v角 ・ ・v桂v香|一
| ・v玉v銀 ・ ・ ・ ・v飛 ・|二
| ・v歩 ・v金 ・ ・ ・ ・v歩|三
|v歩 ・v歩v歩v歩v銀v歩 角 ・|四
| ・ ・ ・ ・ ・v歩 ・ ・ ・|五
| 歩 歩 歩 歩 歩 ・ 歩 ・ ・|六
| ・ 玉 桂 金 ・ 歩 銀 ・ 歩|七
| ・ ・ 銀 ・ ・ ・ ・ 飛 ・|八
| 香 ・ ・ 金 ・ ・ ・ 桂 香|九
+---------------------------+
先手の持駒:歩 

[0.599] ▲5一角成 △2八飛成 ▲6一馬 △7八龍 ▲同玉 △6一銀 ▲5一飛 △6二銀 ▲2一飛成 ...

モンテカルロは将棋は勿論,囲碁でもまだ手法が完全に確立したとは言い難いので,やればやるほど強くなって面白いですね.山下さんが最近囲碁の方に力を入れている(ように見える)のがなんか分かる気がします.
ちなみに一応並列化もしています(先週は少し勘違いしていて,おかしなことを話してしまったような感じですが).あと,乱数を生成する関数を複数スレッドで呼び出すと速度が遅くなるという話があったのですが,特にそういう現象は起きていないみたいです.これは環境によっても結構違うのかもしれませんね.囲碁は実装したことがないのでよく分らないですが,将棋の場合利きの更新や指し手の生成などが結構重い処理になるので乱数生成にかかる割合が小さいとかも考えられるのかな?