HOME | ドキュメント |  ブログ  |  BBS  |  瓦版  | 将棋プロジェクト |  物置小屋   

ドキュメント 象歩 Web瓦版
 BBSボード RDF
こんにちは (23)
おためし板 (321)
質問箱 (94)
テスト (30)
You散歩 (4)
建築 DIY (6)
MTB (32)
(9)
節電対策 (2)
このサイトに関する話 (186)
Linux (396)
PC用ハードウェア (6)
Vine Linux 野良系 (64)
PC 工作 (31)
ドローン (0)
自家製GAFA (0)
BBS の改良 (105)
Vine Seed (520)
Zope とプロダクト (95)
Web の利用技術 (131)
DB とファイルシステム (63)
Python と C/C++ と... (29)
Zopeプロダクト開発メモ (3)
UTF-8 化 (42)
Mail 環境 (8)
COREBlog (109)
Zope3 (51)
Windows 64bit (19)
Mac (2)
Squeak スクイーク (67)
Django ぶらり一人旅 (3)
64bits (52)
Mono 思いにふける (10)
Mint Linux (8)
CentOS (2)
ディスクトップ (4)
象歩将棋 (478)
将棋よもやま (210)
サイトのデザイン (31)
心配な話 (66)
うそ (21)
うそ総集編 (0)
昔のゲストブック (20)
ボート部 (23)
Web 日記 (199)
 スパム
逮捕しる (20)
スパムお溜り (47)
ごみ箱 (6)
 リンク
kiyoさんのサイト
ペンタ郎の漫漕ブログ
端艇部員日記
TIT漕艇部の練習動画 @YouTube
墨堤の雄 @FaceBook
ペンタ(五大学ミドル) @FaceBook
Facebook
Vine Seed パッケージビルド状況
Vine Linux パッケージ情報
VineLinux バグトラッキングセンタ
VineSeed 開発用 Trac
VineSeed Specs
RPMパッケージの作成方法
Linux Standard Base
Planet Vine
Vine Linux ユーザーフォーラム
Vine Users ML アーカイブ
VineSeed ML アーカイブ
twitter#VineLinux
勝手に将棋トピックス
詰将棋おもちゃ箱

象歩将棋

Webと将棋で何か具体的なもの作って行こうとしてます。


このまま記事を入力し[投稿する]ボタンを押せば当サイトに送信されます。 以下の文章は注意書きです。

名前はかならず記入してください。ハンドルネームでも構いません。 またパスワードを入力することをお勧めします。 その場合他人による *なりすまし* と区別出来るかもしれません。 さらにブラウザでクッキーを有効に設定してある場合あなたの記事は後で修正可能になります。

コメントスパム防止のため記事の内容を機械的にモデレート (スパムである確率を計算) する処理を通します。 どのような投稿であれ、たまたま計算誤差によりスパムとみなされ 秘密の場所 に収納される可能性があります。 その場合、管理人が手作業で正規の場所に移動しますのでお待ちください。

名前  パスワード(任意)

全476件 - 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49

446  shu  2008/04/06 21:28 id: 3BVR6NRi4pQ  prob: 0.1%
二歩と打歩詰ルールを追加。
千日手や無駄な合駒は探索中に考えれば良いことだし、
そもそも正解手順には現れない(ように設定できる)。
また持将棋ルールは詰将棋に関係ない。
と云うことで必要なルールはすべて実装できたみたい。
ソースは C++ で 3,840 行。
445  shu  2008/04/05 21:36 id: 3BVR6NRi4pQ  prob: 0.7%

無双第一番が解けない。
カンニングして正解手順を6手進めたところから探索。

▲3三竜 △5二玉 (正解は同玉) ▲5三金 △同桂 ▲同角成 △4一玉
▲3二竜 △同玉 ▲3一飛 △2三玉 ▲2一飛 △3二玉
▲2四桂 △2一玉 ▲3三桂 △1一玉 ▲1二香までの17手詰め (+6手)。

100,147,641局面 / 110秒 (消費メモリは約1MB)

やはり手の優先順位の影響が大きいようです。たとえば攻め方は成る手を優先するとかはあたりまえですね;;
案の定、喜びの次の日には厚い壁が立ちはだかってましたが、これでやっと扉をさがす旅に出られます。

実装として一億手余りまでは馬鹿読みながら可能なことは確認できました (いや驚いたね;;)。
数年後には一秒で一億と四手を読むことが現実になるのだろうなぁー
444  shu  2008/04/04 21:25 id: 3BVR6NRi4pQ  prob: 0.1%
詰将棋パラダイスの作品で試してみた
三月の懸賞詰将棋 (江部健氏作)
http://www005.upp.so-net.ne.jp/tsumepara/
11手詰め: 357,723局面/0.408秒
左に逃して詰めたのはご愛嬌;;

二月の懸賞詰将棋 (岡部雄二氏作)
http://www005.upp.so-net.ne.jp/tsumepara/contents/3problem/p...
11手詰め: 3,697,597局面/4.412秒

サンプルコード:
...
    GShogiApp g("P43P31G33p35K12P14~RBS3N4L4Pd/R42S32P23~BG3");
    const CDiagram& d = g.getDiag();
    GPuzzle z(d);
    z.solve(11);
...
出力結果:
P2223+ K2212 G12 K1222 B34 R23 G22 K2212 S2332+ K1122 G12
合駒の優先順序が高いので;;

処理の不備は今のところ多いけど、基本的に使えると思う。
いろんな作品で試したくてワクワクしてきました。こらえ切れずに \(^o^)/ヤッター
http://toybox.tea-nifty.com/memo/2005/05/post_3535.html#nank...
http://www.ne.jp/asahi/tetsu/toybox/kenkyu/cho1999-9.htm
443  shu  2008/04/03 23:10 id: 3BVR6NRi4pQ  prob: 4.4%
ツリー探索を試してみた。
題材はいつもの「流鏑馬一番」七手詰めです。
局面生成、{局面コピー、ツリー探索} を繰り返して、約 1,000 回 / 秒。

一回の探索で 1,600 局面くらい現れるので、推定 160 万局面 / 秒。
詰将棋なのでやや不満な数値ですが、初回としてはまずまずですかね;;
消費メモリ 1〜2MB、ソースコード 3,789 行。
パラレルワールドに少し期待してる。
442  shu  2008/03/30 23:29 id: 3BVR6NRi4pQ  prob: 4.4%
リファクタリング
今は一局面をいろいろ静的に400ビットくらいで持ってます。
それとは別にツリー探索処理の途中、動的に200ビット/局面くらい消費しています。

無駄をはぶいて、なんとか100ビット以下にしてみたのだけど、なぜか不安な気がします。
別に余計なことしてるとは思わないけど、
ほんとうの私は、実はプログラマに向いて無いんじゃないかと思う?;;
441  shu  2008/03/29 22:59 id: 3BVR6NRi4pQ  prob: 1.7%
空き王手

手の抽出はビット演算を利用するとロジックがとても簡単になる。
実装したところパラレルワールドなのでループ制御文がほとんど無い。
今夜あたりツリー探索を作れば、うんと速い詰将棋マシンができるだろう^^
と思ったところで、また悪魔の囁きが聞こえてきた。

やはり抽象的なモデルが必要なのではないのかな。
心の中で誰かがそう叫んでる。でんでん;;
いろんな見方を得たい時にはなるべくシンプルなモデルの方が便利。
それはまたクロスでデバッグやテストするにも都合が良いのだ。
440  shu  2008/03/28 22:41 id: 3BVR6NRi4pQ  prob: 0.1%
後手番

まだツリー探索すら考えて無くて、今は地道に手の抽出処理をしてます。

図は▲6四角の局面
後手番で△4二歩打、△5三歩打、または△4二金を抽出できました。

盤面以下むりやり △4二金、▲4一銀成と進め、
その局面で探索すると無事に △4一銀のみ抽出できました。
もしかして空き王手関連はうまく処理できてるのかもしれません。

後手番の処理は以前 (PyZumeのころ) は先手の処理より一桁多くなっていましたが、
今回は先手の倍くらいですみそうな気がしてます。
439  shu  2008/03/24 23:49 id: 3BVR6NRi4pQ  prob: 6.0%
空き王手の処理完了
現在2500行、次は後手番。
葛湯溶いてるみたい。始め粘って、あとはさらさら。
438  shu  2008/03/22 22:13 id: 3BVR6NRi4pQ  prob: 6.3%
脳内実験は終了
空き王手の目途はついたと思う。単純木探査でたぶん3800行、100万手/秒くらい。
不思議と云うか自然なのか解らんけど、副作用で後手番の問題も解けたみたい。
二歩、打ち歩詰、無駄な合駒、千日手などは後付け。
メモもとって無いので明日が怖い。
437  shu  2008/03/20 21:30 id: 3BVR6NRi4pQ  prob: 19.1%
> 答えがでていると
もう答えは出ているかもしれませんね。
今回は単純なプログラミング技術のみ追求しています。

仕様は決まっているのに、うまいコードが描けない。
そこにこだわりたくなるのがプログラマだと思います。
まあドンキーなのはバレているのでしょうが;;