忍者ブログ
コンピュータ将棋など…。
[163] [162] [161] [160] [159] [158] [157] [156] [155] [154] [153]

王手がかかっているときの合法手生成のテストをしてて見つけたバグ…。

1. _BitScanForward()の使い方のミス

離れた位置からの王手に対する移動合がおかしな位置にされ、どうも立っているbitの位置を間違っているようなのでよく見たら、_BitScanForward()の使い方を間違っていました。

なぜか

Index = _BitScanForward(&Index, Mask);

としていました。
他の箇所はちゃんとやってたのに何でだろう…。

2. 紐のついた駒を玉で取ってしまう

玉を動かす関数とは別に、指定場所に駒を動かす関数があり、その中で玉を区別していなかった。


・・・。
うーん、完成するんだろうか・・・?

 

PR

コメント
いや、行けるのでは?
局面クラスさえできれば、探索とか評価関数って意外と速く書けるものかと。
【2009/12/22 23:15】 NAME[森岡@GA将!!!!] WEBLINK[] EDIT[]
Re:いや、行けるのでは?
そういうもんなんですかねぇ~。
今までその辺りはれさぴょんですっ飛ばしてますから…。
コンピュータ将棋のアルゴリズムでいうとまだ2章の辺りをうろついていますね。
手を進める/戻す処理ではピンの更新がまだ出来ていません。
その後は、
・ハッシュ
・王手生成
・反復深化の詰ルーチン
・df-pnの詰ルーチン
とやってから探索とか評価関数ですかねw
【2009/12/25 01:02】


コメントフォーム
お名前
タイトル
文字色
メールアドレス
URL
コメント
パスワード
  Vodafone絵文字 i-mode絵文字 Ezweb絵文字


トラックバック
この記事にトラックバックする:


忍者ブログ [PR]
カレンダー
07 2017/08 09
S M T W T F S
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
フリーエリア
なのはの応援をしていただき、かつ協力いただける方は、アマゾンでの買い物は下のリンクからお願いします
プロフィール
HN:
かず
性別:
非公開
バーコード
ブログ内検索
最古記事
カウンター
アクセス解析