2012-02-20から1日間の記事一覧

KPP評価部分

以下のようにして、listを作成した後、例のlist加算で評価できます。 (ボナンザのソースを見たことがある方はピンとくると思います) for(pos = 0;pos < 81;pos++) { koma = in.kifu[pos];// 駒種 switch(koma) { case KOMA_FU:// 先手 歩 // KKP加算 ret =…

三角テーブルから正方テーブルに変換

#define PcPcOnSq2(k,i,j) pc_on_sq2[k][i * fe_end + j] // KPPテーブルを三角テーブルから正方テーブルに変換 for(k = 0;k < 81;k++) { for(i = 0;i < fe_end;i++) { for(j = 0;j < fe_end;j++) { if(j <= i) { PcPcOnSq2(k, i, j) = PcPcOnSq(k, i, j); }…

【将棋】配列版でKPPを使う方法

ボナンザの3駒関係(KPP)を配列版で使う方法です。ビットボードで使う場合はボナンザのコードをそのまま使えば良かったのですが、 れさぴょんやsimkのような盤面を配列で管理している場合は、コードがそのまま使えないので苦労します。 というのは、オ…