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

315  shu  2005/11/19 01:39 id: 3BVR6NRi4pQ  prob: 1.9%
>>314 インデクスとはオブジェクトにおけるシリアライズのことでは
そうそう、最近の言語で実装されてる。
ただ一般的なシリアライズだと無駄が多いのも事実。
たとえば C++ クラスのデータ部がそのままインデクスになれば良いと思うし、
python あたりならお好みでシリアライズメソッドを実装できるかもしれない(試してません)。

>>かなり制約された世界でしか通用しない
既存のソフトは条件分岐の化け物のような気がするし、
ボナンザはその反対に大きなインデクス空間で勝負してるらしい。
僕はそれらとは違うものを作りたい。

>>明日は観光
どうぞ光を観て来てください。観音様拝めると良いですね^^
314  pon  2005/11/18 23:26 id: 480oHczCgMM  prob: 5.0%
>>312 補足です
恐らくインデクスとはオブジェクトにおけるシリアライズのことではないですか?
シリアライズされた結果もしくはシリアライズ処理そのものにあるアルゴリズムで変換することを指していると思います。もしそうだとすれば仮に局面の数が有限としても2のN乗で収まるかどうかがポイントになるわけですが、ということはかなり制約された世界で
しか通用しない処理(性能はだせるでしょう)になりますか。
(全然的外れのときはm(__)m)
連続王手の話だけに限れば、今の仕様でも少しだけいじればオブジェクト比較できると思いますので、兎に角やってみます。
明日は観光ですので近いうちに・・・
313  pon  2005/11/18 21:51 id: 480oHczCgMM  prob: 13.6%
>>312
ところでこのページ(一般になんて呼ぶのかいまだによくわかりません)も雰囲気がでてきましたね。

修ちゃんのいうDBとは概念的な話ですね。それをメモリで実装しようがディスクでやろうがかまわないという。また、そういうツールもあるのでしょうね。
考えてみると将棋ではその局面-実際はコンポーネントで構成される-がどのような経緯で出現したものであろうとお構いなく、最短手順で玉を詰ませればお役ゴメン。つまり対局とは"局面の集合である"という定義は、現在の(コンピュータ)リソースを無視すれ
ば面白い考え方かもしれません。
そして局面間でベクトル的に近いとか遠いとかのメトリクスを持たせることができればさらに面白い。
ていうかそんなことばかり考えていては日が暮れますので^^;
312  shu  2005/11/17 23:06 id: 3BVR6NRi4pQ  prob: 0.2%
>>311
突き詰めれば局面データベースの話だと思います。
既存のDBから類推すれば検索やソートなどが必要な機能になると思われます。
このとき必要なのがインデクスですが、オブジェクトに対して可逆的なキーを作ればいろいろ使い回しできます。
局面を可逆的でかつ有意なインデクスにマッピングすることは、実装において一つの胆だと考えてます。

ただし *同一局面で無い* ことを判定するには少し冗長です。
インデクスをハッシュ値に変換すれば、(ヒットしない == 同一局面で無い)ことが光速&高確率で得られます。
千日手の判定で少し得するんでは無いかい、とか云う話。それだけです。

魔法の杖は探してますが、残念ながらまだ見付かりません。
311  pon  2005/11/17 00:09 id: 480oHczCgMM  prob: 0.5%
>310
全然勘違いでした。
局面のハッシュ値を生成するのも、オブジェクト比較と処理的に変わりがありません。
Javaではうまく設計すればオブジェクト比較だけで済みそうなので、コードが楽です。
ハッシュ値だと計算時に多分回さないとだめではないですか?
処理時間は少し上がるかもしれませんね。
魔法の杖かと一瞬喜んだのですが・・・;;
それともパイソンでは魔法の杖があるのでしょうか?
その局面が同一であるかの判断は、どうしてもその中身を見るしか方法はないはずでしょう。
等しいかどうかの判断に事前に処理済みの結果(ハッシュ値)を使うかだけの違いしか
ないように思うのですが・・・
310  pon  2005/11/16 20:51 id: 480oHczCgMM  prob: 1.0%
>309局面のハッシュ値を保存して無いってことですか?
あっ、知らない内に必要性があってやってました。^^;
その方がもっと簡単ですね。
ラベルひくーい、シェシェm(__)m
309  shu  2005/11/16 01:14 id: 3BVR6NRi4pQ  prob: 0.1%
>>308 ルールは全部教えたつもり
すんごいね^^
負けそうです_(.".)_

>>単純なオブジェクト比較でできない
局面のハッシュ値を保存して無いってことですか?
# うちもしてないけど;;

JAVA なら適当にでっちあげれば良さそうな気もする。。。
リファクタリングする前に一応の形を作った方が楽かも。
# 釈迦になんとか;;
308  pon  2005/11/16 00:15 id: 480oHczCgMM  prob: 1.2%
>307
"同一局面連続王手4回"は仕様は簡単ですが、今の仕様では単純なオブジェクト比較で
できないので手間がかかることがわかりました。全体のコードが乱れそうなので、また
どこかでリファクタかけてからやることにします。
これでルールは全部教えたつもりです。(もっとスリムにした~い)
307  anonymous  2005/11/16 00:03 id: ulI1lBqN6AQ  prob: 16.7%
5.合駒利かず

第009手目: 手番=先手, X=2,Y=2,駒=馬, (王手!)X=3,Y=2,駒=王
第017手目: 手番=先手, X=2,Y=4,駒=飛, (王手!)X=2,Y=2,駒=王
第031手目: 手番=先手, X=1,Y=4,駒=飛, (王手!)X=1,Y=2,駒=王
★★★★★★★★★★★★★★★★★
★ 詰み!!:X=1,Y=2,駒=王
★★★★★★★★★★★★★★★★★

処理時間:131ミリ秒

手合割:平手
第031手目: 手番=先手, X=1,Y=4,駒=飛

   9    8    7    6    5    4    3    2    1
+----+----+----+----+----+----+----+----+----+
|香↓|桂↓|銀↓|    |    |    |    |銀↓|香↓| 一
+----+----+----+----+----+----+----+----+----+
|    |    |    |金↓|    |    |金↓|飛↓|王↓| 二
+----+----+----+----+----+----+----+----+----+
|歩↓|歩↓|歩↓|歩↓|歩↓|歩↓|桂↓|歩↓|    | 三
+----+----+----+----+----+----+----+----+----+
|    |    |    |    |    |    |    |    |飛↑| 四
+----+----+----+----+----+----+----+----+----+
|    |    |    |    |    |    |    |桂↑|歩↓| 五
+----+----+----+----+----+----+----+----+----+
|    |    |歩↑|    |    |    |    |    |    | 六
+----+----+----+----+----+----+----+----+----+
|歩↑|歩↑|銀↑|歩↑|歩↑|歩↑|歩↑|    |    | 七
+----+----+----+----+----+----+----+----+----+
|    |    |金↑|    |    |    |金↑|    |    | 八
+----+----+----+----+----+----+----+----+----+
|香↑|桂↑|    |    |王↑|    |銀↑|    |香↑| 九
+----+----+----+----+----+----+----+----+----+

----------- 駒台:先手 () ----------
 角 歩x2
----------- 駒台:後手 () ----------
 角 歩
306  shu  2005/11/14 23:29 id: 3BVR6NRi4pQ  prob: 1.8%
>>305 Windows系はやはりだめですか
でしょうね;;
>>304 性能を見ます
面白くなって来ました^^

ポンちゃんは双玉で試してるみたいなので期待してます。
こちらも詰将棋専科じゃなくて実戦向きにしたいと考えてます。
終盤をうまく作れれば、半ばできあがりなのかもしれませんね。