象歩将棋
Webと将棋で何か具体的なもの作って行こうとしてます。
↪ 新規投稿する
294 shu #f0c10dc 2005/10/31 23:56 prob:0.0%
これが七手しか読めない詰将棋ソフト PyZume (パイ詰め) です。 操作系は少しだけいじったけど、ロジック部分は何も進んでません;; http://owa.as.wakwak.ne.jp/zope/labs/bbs/300/258 ソースはロジックが千行、GUIが千行くらいなので、書き換えるのは容易です。 単純ツリー探索で、合い駒の処理は無視してます。 そして合い駒のためだけにロジックを追加するつもりもありません。 特別な場合分けがいらないアルゴリズムにするつもりです。 そんなアイディアをこの前ふと思い付いたのだけど残念ながら忘れてしまいました。 我ながら良い思い付きだった気がするけど、いつか思い出すまで保留です。 今はロジックより GUI をまともにすることを優先してます。ソフト開発はまずテスト環境優先ということ。 いつまでたっても麓をうろついてると非難されようとも。 まあ、とりあえず棋譜の保存と、任意局面での「詰みの探索」は実装済みです。 しばらくロジックを改良する時間は無いので、ポンちゃん、あせらず自由に楽しみながら作ってくださいませ。>>293
293 pon #d00b615 2005/10/31 13:29 prob:0.0%
謙虚なご発言痛み入ります。 >辿り着くまでにバグでこけたなんて嫌 同感です。それもあって今プロトをスクラッチにするか迷ってます。 WindowsのVMでどの程度の性能があるかも見たかったものですから まずはプロトレベルで試してみました。(とはいっても将棋のルール 程度はできていますが。) ある程度のクラス分けは整理しているつもりですが、エンジンの部分 はやはり時間をかけて設計しなければと思ってます。 ところで、今7手詰めまで解けるんでしたっけ? であれば9手詰めまでは急がねばなりませんので。 ※理屈的には何手詰めであろうと関係ないはずですが、性能やバグで  ある程度の制約がありますよね。
292 shu #f0c10dc 2005/10/30 23:58 prob:0.0%
もともと[288]の意味が解かってません。しくしく。。。 >>291 面白いと思われるソフトを目指したい これがテーマなのかな? >>290 創造的な話のみにしましょう そうですね。[289]には続きがあります。 「手番での効果的な手の発見」がテーマです。 ソフトで表現するには、裾野までたどり着くためのおきまり作業があるわけです。 辿り着くまでにバグでこけたなんて嫌ですから、[289] はあらかじめ確定して置こうと云う趣旨表明です。
291 shu #f0c10dc 2005/10/30 23:20 prob:0.0%
あれ、[289] は [288] に対する返事になってませんか?; その前に追加説明 「有効」は「無効の反対」と言う意味で使ってます。単純に「規則に違反しない」と言う意味です。 1) 局面が規則に違反しないなら開始する。 2) 手番の側は規則に違反しない手を選択し、手番を相手に渡す。 判り易い記述をしようとして、裏目に出たようです。それはいけない。 「手番での有効な手の発見」これは含みを持たせた表現ですね。 日本語の表現ちゃんと勉強して来ます。再ジェン。
290 pon #d00b615 2005/10/30 22:55 prob:0.0%
どうも歯車が合いそうにありませんね。 実装の話は意味がないですが、説明の上で必要な場合もあるような気がします。 287の例では、”局面が有効”と”有効な手を選択”の有効という概念が共通の観点か 私には少しわかりずらいです。 ただ、気持ちは理解できますので、では150歩譲って創造的な話のみにしましょう。 もちろん有効性をデジタル化することだけがソフトの存在価値ですし、その有効性自体 どのようなものでもかまわない訳ですが、私の場合も通常の感性で強いと感じるよりも できれば面白いと思われるソフトを目指したいです。
289 shu #f0c10dc 2005/10/30 22:20 prob:0.0%
>>288 詰め将棋専用に作っているからですか? なぜ? そんなつもりはありません。 人の首をとらないのが日本将棋の良いところです。 本将棋のルールを、もう少し正確に解釈すれば下記になります。 0) 局面と手番を決める 1) 局面が有効なら開始する。 2) 手番の側は有効な手を選択し、手番を相手に渡す。 3) 上記が成立しなければ終局。 1)2)のきまりで、開始から終局までの棋譜の正当性が保証されます。各局面の正当性を検証する必要はありません。 つまり、メリットは「手番での有効な手の発見」だけに専念できると云うことです。
288 pon #d00b615 2005/10/30 11:40 prob:0.0%
>285 2.指す手が無い場合は負け 私の場合は次のように定義しています。  2.王様を取られたら負け(非手番側の王が駒台に移動したら終局)   ※尚、終局についてはこの他にもいくつか定義してます。 修ちゃんの定義だと、これの一歩手前の判断となりますね。 これは詰め将棋専用に作っているからですか?
287 pon #d00b615 2005/10/29 20:06 prob:0.0%
なるほど、では[283 図] は修ちゃんの負けですね。^^ ※これはいわゆる全駒という形です。 表示の件タンクスです。試してみましたが、かなり横長で残念ながら あきらめました。ブログで使用してますので・・・ クイズについてですが、じっくり考えて見ます。 また、千日手はまだしも持将棋の場合は人が適当に判断しているはず ですよね。ソフトでは恐らく持将棋が一番問題となるテーマのはずで その世界に入ることが目標でもあります。 たぶん千日手になって終局してしまうような悪寒がします。拡散して 行くようだと面白いのですが。
286 shu #f0c10dc 2005/10/28 22:56 prob:0.0%
サンプル作った。IE6 はだいじょうぶみたい。Netscape7.1/Win だとめちゃくちゃだぁ〜 やっぱりお薦めは Mozilla/Firefox ですねと言ってみる。 http://www.mozilla-japan.org/products/firefox/  9  8  7  6  5  4  3  2  1 ┌──┬──┬──┬──┬──┬──┬──┬──┬──┐ │玉▽│飛▽│角▽│金▽│銀▽│桂▽│香▽│歩▽│と▽│ 一 ├──┼──┼──┼──┼──┼──┼──┼──┼──┤ │  │  │  │  │  │  │  │  │  │ 二 ├──┼──┼──┼──┼──┼──┼──┼──┼──┤ │  │  │  │  │  │  │  │  │  │ 三 ├──┼──┼──┼──┼──┼──┼──┼──┼──┤ │  │  │  │  │  │  │  │  │  │ 四 ├──┼──┼──┼──┼──┼──┼──┼──┼──┤ │  │  │  │  │  │  │  │  │  │ 五 ├──┼──┼──┼──┼──┼──┼──┼──┼──┤ │  │  │  │  │  │  │  │  │  │ 六 ├──┼──┼──┼──┼──┼──┼──┼──┼──┤ │  │  │  │  │  │  │  │  │  │ 七 ├──┼──┼──┼──┼──┼──┼──┼──┼──┤ │  │  │  │  │  │  │  │  │  │ 八 ├──┼──┼──┼──┼──┼──┼──┼──┼──┤ │王▲│飛▲│角▲│金▲│銀▲│桂▲│香▲│歩▲│と▲│ 九 └──┴──┴──┴──┴──┴──┴──┴──┴──┘
285 shu #f0c10dc 2005/10/28 22:10 prob:0.0%
>>284 終局の定義 将棋の二大ルールは 1.交互に指す 2.指す手が無い場合は負け だと考えてます。そういう意味では [283 図] は後手の負けですね。 将棋連盟のサイト見てもはっきり書いてませんけど。(-.-;) http://www.shogi.or.jp/nyuumon/main.html http://www.shogi.or.jp/osirase/qa.html 僕の将棋プログラムも上記二大原則を基にしてます。 もちろん暗黙のルールとして初期局面と先手が決定してると云うことを前提にしてます。 基督教の神様はサイコロや振り駒が嫌いらしいけど、 将棋の神様の場合は違うかもしれません、初期局面の前提は将来変わる可能性がありますね^^ 現行のルールは、千日手や持将棋において曖昧さが残ってる気はします。 そこで問題です →「現行ルールで解決できない局面またはなりゆきを一つ示せ」 まあ急ぎませんし、僕も答えを知りません。 >> MSゴシックにならないですよね~ 一応スタイルシートで font-family: "MS ゴシック", "Osaka-等幅", "Courier New", monospace; font-size: 10.5pt; と指定してるのですけど、Win2000 等でうまく表示できないのは、いわゆる *仕様* らしいです。 http://www.microsoft.com/japan/msdn/windows/windowsxp/FixedPitchFont.asp 半角文字をすべて全角にすればましになるかもしれません。