最新

Miyako Shogi System

コツコツ改良、へこたれない
2014| 1|
2013| 12|
2012| 01| 02| 04| 05| 06| 07| 08| 09| 10|
2011| 01| 02| 03| 04| 05| 07| 08| 10| 11| 12|
2010| 02| 03| 06| 07| 08| 09| 10| 12|

2012/04/30

本日発送

連休中なので、5/2必着なら、4/30発送が確実だそうなので、本日、調布に向けてコンピュータを発送。

2012/04/28

今頃になって...

現在、時間管理をスレッドにしていて、思考開始でスレッド開始、思考中止でスレッド停止していたため、相手の指し手がすぐに返ってきたときなど、スレッド停止が間に合わず、二つの時間管理スレッドが走ったりと、問題が多いので、スレッドをやめ、ノードの最初に時間管理の関数を呼ぶタイプに書き換える。

まだ間に合うか。

2012/04/22

コンパイラ比較(バグ発見)

次の一手問題を解かすと、VC、MinGW、gccではノード数が同じなのだが、iccでは違うノード数となり、違う環境、違うコンパイラで、同じ結果にならないときは、難儀なバグがあるとみた。

探索のダンプを取り、静止探索が違う値を返すところまで追い詰めた。結局、静止探索内で使う差分計算用の変数を初期化するところで、配列の添え字越えを発見、それを直したところ、ノード数はピタリ同じとなった。

コンピューター将棋の進歩2より次の一手問題第1問。反復数=6終了時の値。今のバージョンでは反復数=5で正解(▲7四歩)を返す。

CPU:AMD PhenomII X2 BE555 (3.8GHz)

コンパイラ総思考時間[ミリ秒]NPS
VC++2008 (WindowsXP32bit)2312445538
MinGW4.6.2 (WindowsXP32bit)2109486266
icc 12.1 (Ubuntu64bit)2101482015
icc 12.1 (Ubuntu32bit)2201470998
gcc 4.6.1 (Ubuntu64bit)2002502079
gcc 4.6.1 (Ubuntu32bit)2102480610

open64はやめました。gcc4.6の最適化はすばらしい。

ノード数

PV非PV静止探索
508232486266

昔のバージョンと比べると大幅に高速化している。手生成、オーダリング、探索、ハッシュテーブルをコツコツ、チューニングしていった結果だ。

惜しいことに、このバグは評価関数の学習データに影響があるはずで、今から学習をやり直していては選手権に間に合わない。うーん、どうするか。

追記:gcc4.7が出ているので測定。

コンパイラ総思考時間[ミリ秒]NPS
gcc 4.7.0 (Debian64bit)2035493068

さらに追記:ついでにclangも測定。

コンパイラ総思考時間[ミリ秒]NPS
clang 2.9 (Ubuntu64bit)2202469210

2012/04/14

第18回コンピュータ将棋オープン戦

人事異動で会社の部署が変わったため慌しく、少しずつしか改良できなかったが、これを逃すとテストの機会が無いため何とか出場した。

結果はこちら

対局時の構成はAMD PhenomII X2 BE555 3.8GHz OS:Windows XP コンパイラ:MinGWin4.6.2

1回戦:玉形が薄いのに飛車交換は無謀。中盤以降ほとんど評価が悪い展開になった。さすが今泉さん、すばらしい寄せですね。

2回戦:痛恨のプログラム落ち。残り時間から1手にかける時間を計算しているが、それを上回る時間の予測読みをしたときの処理にバグがあり、Iteration1回目中に思考中断をしてしまい、手が返せなくなった。

3回戦:当ソフトは力将棋大好きの棋風だが、特徴が良く出た一局。

4回戦:攻め好きで攻めが切れたときの特徴が良く出た一局。

リンクはご自由に (Miyako Shogi System Kyoto Japan)

ダウンロードのページ

Lighttpd

DreamPlug