UEC杯,終了

UEC杯が終了した.なぜかテトリスを始めるという状況はさすがに修正できたが,出来はボロボロ.相手プログラムのバグで勝ってしまった対局もあったが,まともに打てるプログラムにはなっていなかった.

それでも,大会に参加してほかのプログラムと対戦させるのは面白かった.期待していないプログラムでも,実際の対局を見ていると「あれを直したい,これを直したい」という気持ちがわいて来た.はっきり言ってだめな所は「全部」だけど,まず手をつけるべきところは

  • 勝敗の判断がおかしい

打つ手を決めるために,その局面から先を終局まで何度もシミュレーションして勝率を計算するという作業をさせている.しかし,どう考えても勝ち目がなくなった終盤でさえ,シミュレーションの勝率が7割近い手を見つけてくる…ということは,終局と勝敗の判断がまともに出来ていないということだ.これではいくらシミュレーションを繰り返しても無駄.

  • シミュレーションが遅い

今回のプログラムは,シミュレーション部分に限らず実行速度を気にしている余裕がなかった.ひとまずテトリスが直った後,ちょっと手を入れたらシミュレーション回数がいきなり倍になったくらい,いい加減なつくりになっている.上位のプログラムとはシミュレーションの速度に100倍近い差があって,これはパターンがどうの,アイデアがどうのとか言う以前に勝負にならない.プログラムの実行時間なんてソートのプログラムを勉強しているときしか考えたこともなかったが,まじめに取り組まないといつまでも良いプログラムには出来ない.

さて,次の大会はおそらく初夏ごろのコンピュータ囲碁フォーラムCGF特別例会だ.どれだけ成長できるかなあ.