最新

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|

2010/09/11

評価関数の自動学習の結果(その2)

前回の結果は過学習の気配あり。学習率と収束判定を変えた。

アマチュア竜王戦(全156局)

12842553566470484994766657765166711961309

学習率を1.0に、学習終了は駒割の和の差が±1以内となったときとする。

後は前回と変わらず。学習開始時の評価誤差のsigmoid値(=J)0.2623、学習終了時はJ=0.2506で、そもそも学習開始時の評価値が適切で、その上学習が進んでいるといえよう。

2010/09/04

定跡データの設計

自動対戦をさせている間に定跡データの設計をする。

#define	BOOK_MOVES  5   // 最大分岐数

 struct BOOK_TAG {  // 24bytes
   uint64  key;               // ハッシュキー
   WORD    move[BOOK_MOVES];  // 手
                              // .PTTTTTT TFFFFFFF  T:移動先(11〜99) F:移動元(11〜99) 打つ駒(1〜8) P:成り
   BYTE    freq[BOOK_MOVES];  // 頻度
};

インデックスサイズは64kBでハッシュキーの下位16bitをインデックスとする。、エントリーサイズは16(=1block)。データはディスク上に持ち、メモリー上では持たない。インデックスキーでディスクをseekさせて1block読み込む。戦法によっては最大分岐数がもう少しあったほうがよさそうだが、ここは妥協。

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

ダウンロードのページ

Lighttpd

DreamPlug