sakurapyon’s blog

sakurapyon’s blog

2012-05-01から1ヶ月間の記事一覧

pishogiさんが5月一杯で参戦停止らしい

twitterにて教えていただきました。「現在floodgateに参戦しているpishogiとpinaniwaですが、当方のサーバー移転に伴い、2012年5月末で参戦を終了」とのことです。 floodgateのpishogi|道路上将棋!のブログ 道路上将棋さんのマシンだったのですね、pishogi…

プロファイリング

現バージョン(2012.010)のプロファイリング結果。Evaluate(評価関数)はKPP+差分評価無しなのでたぶんこんなもん。 Search(探索部)、isAttackAll(利きの算出、SEEで使う)、GenNext(1手持ってくる)あたりが遅い。GenNextが遅いのはsortのせい?ただ、このあたり…

綺麗な棋譜作りってどうすればできるんだろう?

sakurapyonは歩・飛・角の不成は生成しないんだけど、香桂銀の不成は生成する。成っても成らなくても取られる一手のときなどは、成らないこともあるんだけど、人間から見ると妙に見えることもある。もし、角不成も生成するとしたら、7六歩3四歩2二角不成…

静止探索内部で詰みが見つかった場合

以前から悩んでいる静止探索の問題。かずさんも悩まれているようだ (かずの心の贅肉 SEEのバグ)。これは静止探索に限った話じゃなくて 全指し手を生成していない(前向き枝刈りをしている)場合に問題になって、静止探索の手生成は前向き探索の最たるものなの…

将棋プログラムを理解するために1

書籍を読むとなんとなくわかった気になるんだけど、実際に実装しようとするとさっぱりわからなくなる過去の私へ。わかりやすい・短いソースコードを読もうbonanzaのソースは膨大なマクロや背景の考え方が理解できてしまえば簡単なんだろうけど、そこまで到達…

メモリ喰い

bitboardで何かやろうとすると、大抵の場合 位置情報*ビットボードサイズ分のメモリを喰う。下手すると位置情報^2*ビットボードサイズとか。前者の場合、81*32bit*3=972bytes、後者なら78,732bytes。今のところ最大なのは飛車や角の利きを求める配列で、81*1…

Kindergarten Bitboards マジ素晴らしい

Kindergarten Bitboardsの将棋への応用 - コンピュータ将棋開発中 ツツカナのkindergerten bitboardの飛車の縦利き - ながとダイアリー chessprogramming - Kindergarten Bitboards chessprogramming - Congruent Modulo Bitboards 苦心して作った rotated b…

bitboard版(0.003) 手法

とりあえず、落ちずにfloodgateで対戦できるようになったようだ(まだ非合法手が残ってるな…) 探索速度が20倍ぐらい遅いのと、sakurapyon-44の機能を全部もってこれてないのでヨワヨワである。 (まだ駒得バージョンにすら追いついていない(R200差)。フルバー…

将棋プログラムの作り方

2009-02-19 - お手軽に強い将棋プログラムを作る10の方法 - aki.の月記 ヘナチョコプログラマが一人でお手軽に強い将棋プログラムを作る10の方法 - 毎日がEveryDay! 将棋プログラムの作り方 いまさらながら先人は良いことを言っているのだなあ、と しみじみ…

難航中

全部作り直そうとしたのがハードル高かったかな。みなさん簡単に?作り換えされててすごいなーと思う。ようやく落ちない・非合法手を指さない状態で一局指せるようになったけど、NPSが激減してる(5Knpsとか@_@;) ここからどうやったら100倍ぐらい高速化でき…

打歩詰とか

ニコ生のコメント見てると、打歩詰とか反則にやけに厳しいこと言う人が何人かいたけど。 (何にでも文句言う人はいるんです。文句ばかり言ってる人はNGして見てました)打歩詰の対処って意外に難しいと思うんだよねえ。 手生成、特に打つ手は数が多いんでなる…

WCSC22

通過された Selene、なのは、技巧、GA将!!!!!、AWAKE、Apery、クマ将棋、きのあ将棋、おめでとうございます。 クマ将棋は定跡選択のせいか面白い序盤が多くて、観戦中楽しませていただきました。それで落とした対局もあるような気はしますが(^_^; 矢倉特化な…