コンピュータ将棋など…。
× [PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
ちょっとだけソースを見てみましたが、これはっ・・・。
参考になりますね!! コレは積極的に取り入れないと…。 難点は C# がわからない(爆)。 まぁ、少しずつ読んでいこうと思います。 PR
獅子の特殊ルールは未実装ですが、利きの持ち方を変えて高速化したのでspacemanの中将棋定跡研究というページの「自作詰め中将棋」をやらせてみました。
特に効率の悪いところは ・王手生成・・・合法手を作成し、1手進めた状態で王手になっているものを抽出 ・応手生成・・・可能な手を作成し、そのまま攻め側の処理に渡している ですが、第1問はちょっと時間がかかりすぎ…。 13手詰の11手目を読み始めるときは9秒弱なんですが・・・。 で、王手生成はおいおい考えるとして、応手生成はこれがないと共謀数探索もdf-pnも出来ないのでちゃんと生成したいところ。 コレを踏まえての利き情報の持ち方を変えたので実装すればいいはずなんですが、難しい。 玉と太子がいたときの応手は ・玉が逃げる ・太子が逃げる ・王手している駒を取る ・合駒をする だけ? 玉と太子が1手で取られないように動かす手もあるはずだから単純に逃げるだけじゃないのか? うーん・・・。
現実逃避的に中将棋ソフト開発中です。
なのはの詰ルーチンは実戦向けに指定局面での詰む手がわかればいいという方針で詰手順はわからなかったけど、進歩本3の「5.4.3 正解手順探索アルゴリズム」をじっそうしなくっちゃかなぁ~。
あまり影響はないと思いますが、今floodgateに投入している版のバグを2つ見つけました。
・詰ルーチンでハッシュに登録した情報を引き出せない場合がある。 ・入玉宣言勝ちを間違う。 詰ルーチンのバグは詰部分の開発では直していましたが、本流にマージしていませんでした。orz 入玉宣言は次の(d)の部分をミスしてて玉を含めて10枚以上あるという判定をしています。 なので、間違った宣言をして負ける可能性があります。本番で出なくてよかった…。 「入玉宣言勝ち」の条件: 次の条件が成立する場合、勝ちを宣言できる(以下「入玉宣言勝ち」と云う)。 条件: (a) 宣言側の手番である。 (b) 宣言側の玉が敵陣三段目以内に入っている。 (c) 宣言側が(大駒5点小駒1点の計算で) ・先手の場合28点以上の持点がある。 ・後手の場合27点以上の持点がある。 ・点数の対象となるのは、宣言側の持駒と敵陣三段目 以内に存在する玉を除く宣言側の駒のみである。 (d) 宣言側の敵陣三段目以内の駒は、玉を除いて10枚以上存在する。 (e) 宣言側の玉に王手がかかっていない。 (詰めろや必死であることは関係ない) (f) 宣言側の持ち時間が残っている。(切れ負けの場合) 以上1つでも条件を満たしていない場合、宣言した方が負けとなる。 GPS将棋の影響でtemplateの勉強。 class TEST { template <Player player> int main() |
カレンダー
フリーエリア
なのはの応援をしていただき、かつ協力いただける方は、アマゾンでの買い物は下のリンクからお願いします
最新CM
[04/27 とおりすがり]
[10/21 おてだま]
[10/20 おてだま]
[01/24 なのはminiふぁん]
[01/08 sakura]
最新記事
(06/12)
(04/17)
(08/13)
(06/08)
(06/06)
最新TB
プロフィール
HN:
かず
性別:
非公開
ブログ内検索
カウンター
アクセス解析
|