GA将?開発日記~王理のその先へ~

ネタ勢最強を目指して絶賛開発中。

対稲庭スペシャル

 http://wdoor.c.u-tokyo.ac.jp/shogi/tools/LATEST/html/current/2012-04-Gasyou5_Core2Duo-P8600_2c-InaniwaShogi_Atom-D510_1c.html

 少しは勝てる様になって来ました。今日の14:00の回からだったと思うんですが、思考時間制御をいじったバージョンを投入したら、多少マシになった感じです。

 今までは「残り時間の40分の1を1手に使う」っていう単純なルーチンだったんですが、今日は進行度ベースで制御しています。

 まず、制御の前提として進行度は0.0〜1.0の値で、初期局面で0.0、終局時に1.0でその間が一直線になる様に学習してあります。

 んで、実際の思考時間制御の流れはこんな感じ。

  1. 残り時間が2分以下なら1手1秒を上限とする。
  2. ルートノードの進行度を求める。
  3. <初期局面からルートノードまでの手数>/<進行度> を計算し、初期局面から終局までの手数の予測値を出す。
  4. 上の値を元に自分があと何手指すか計算する。この時、残り手数には多少マージン*1をとっておく。
  5. 残り思考時間を残り手数で等分した時間だけ思考する(延長・短縮は無し)。

 ものすごいイイカンゲンですが、floodgateを見る限りではそこそこちゃんと動いているみたいです。

*1:現在は2倍