[過去ログ] 【オセロ,将棋】ボードゲーム【囲碁,War】 (1002レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
51: 03/10/11 11:00 ID:K9b3BQSh(1) AAS
//www.colina.demon.co.uk/chu.html.
中将棋のソースがあった。
if timeRemaining == 60000 then do -- byo yomi
basicTime=sp.getByoYomiTime() -- 13 seconds - cautious
maximumTime=55 -- leaves 5 seconds in which to actually make the move
end
if abbrev.equals(String "P") then return "Pawn"
else if abbrev.equals("+P") then return "Tokin"
else if abbrev.equals(String "K") then return "King"
else if abbrev.equals(String "L") then return "Lance"
else if abbrev.equals(String "S") then return "Silver General"
else if abbrev.equals(String "G") then return "Gold General"
else if abbrev.equals(String "B") then return "Bishop"
else if abbrev.equals(String "R") then return "Rook"
52: BitSet 03/10/12 16:55 ID:vJq46n+e(1) AAS
JavaにBitSetクラスというものがあるのを偶然見つけた。
81枡での駒の存非をビットで表現するのに便利そう。
53: 03/10/18 00:28 ID:fl0E31RS(1) AAS
やさしいチェスプログラムがあった。
これを焼きなおして見よう。
//build start position
int [] org = {
99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
99,124, 22, 23, 25,126, 23, 22,124, 99,
99, 21, 21, 21, 21, 21, 21, 21, 21, 99,
99, 00, 00, 00, 00, 00, 00, 00, 00, 99,
99, 00, 00, 00, 00, 00, 00, 00, 00, 99,
99, 00, 00, 00, 00, 00, 00, 00, 00, 99,
99, 00, 00, 00, 00, 00, 00, 00, 00, 99,
99, 11, 11, 11, 11, 11, 11, 11, 11, 99,
99,114, 12, 13, 15,116, 13, 12,114, 99,
99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
99, 99, 99, 99, 99, 99, 99, 99, 99, 99 };
for (int i=0; i < 120; i++)
board [i] = org [i];
//update screen
repaint ();
54: 03/10/24 13:59 ID:B1JCysav(1/2) AAS
>>36
後手盤上駒、先手盤上駒の順に分けると:
'0S:lnsgkgsnl/1r5b1/ppppppppp/108/ppppppppp/1b5r1/lnsgkgsnl'
'0S5210:l4k1nl/1r2gs1g1/p4p1pp4s1p/4Bn/83/p3p2ps3/p2g1p2p/2s3r2/lnkg3nl'
左上隅から順に81枡で後手駒終わり、次先手駒。大文字は成り。
文字の種類が少なくなってすっきりした。
>>38、39 8二香は誤り、8二飛
>>30 banmen[7][2]=17;は誤り、banmen[5][2]=17;
55: 03/10/24 14:22 ID:B1JCysav(2/2) AAS
大文字と小文字を逆にして見た。
'0S5210:L4K1Nl/1R2GS1G1/F4F1FF/4S1F4bN/83/F3F2FS3/F2G1F2F/2S3R2/LNKG3NL'
「0S5210:香4王1桂香/1飛2金銀1金1/歩4歩1歩歩/4銀1歩2/2馬桂
/83/歩2/1歩2歩銀3/歩2金1歩2歩/2銀3飛2/香桂王金3桂香」
56: 03/10/25 21:28 ID:X5VuBDRK(1) AAS
一兆と一口に言っても1秒で1局面を評価結論出して行って3万年かかる。
10000,0000,0000/60/60/24/365.25=31688.08781
57: 03/10/27 23:32 ID:94uElLdI(1) AAS
まずは盤が必要。
9x9
11x11
16x16
どれが良いか。9x10を延長して13x10+1にしよう。
なぜプラス1か?
99,99,99,99,99,99,99,99,99,99,
99,99,99,99,99,99,99,99,99,99,
99,18,19,20,21,24,21,20,19,18,
99,00,23,00,00,00,00,00,22,00,
99,17,17,17,17,17,17,17,17,17,
....
....
99,99,99,99,99,99,99,99,99,99,
99,99,99,99,99,99,99,99,99,99,99
のような感じ。99より48が良いか。
11x11の採用者は1列無駄だよね。チェスじゃないから
桂馬は横に飛ばないのに。
58: 03/10/31 15:46 ID:X+ZKdv/s(1/2) AAS
発見!! 64JAVA
J2SE Itanium v 1.4.2_02 のダウンロード
でも、ハードとOSの値段は?? あ、OSはRedHatでも良いか。
59: 03/10/31 20:32 ID:X+ZKdv/s(2/2) AAS
Itanium2はサーバー用か。Athlon64用だと良かった。
60: 03/12/10 04:37 ID:Sw46xuo+(1) AAS
案1:
人間とプログラムが対戦する際、
人間側の選択肢を「2択」データベースで用意する。
例えば人間初手なら:
1:76歩
2:26歩
3:投了
その他の手は選択不可とする。
プログラム側の対応手を1手用意する。
初手より70手までで320億応手。
70手終了時点で、
歩:1点、小駒:2点、大駒:10点で集計。得点多いほうが勝ち。
これなら全ての手をゼロ秒で送り出せる。 遊べると思います?
61: 03/12/10 10:56 ID:a8St1G3J(1) AAS
ストレスが溜まると思う
62: 03/12/12 19:34 ID:0lTC0Jam(1) AAS
中盤以降、どうやって2手に絞り込むのだ?
63: 03/12/12 21:25 ID:fBTD6+Y3(1/3) AAS
申し訳ない。へぼプログラムの考える最善2手だから、ロクな手では無いとおもわれ、
まずは携帯用ストレス解消用。ナズケテ「ストレス将棋」
64: 03/12/12 21:58 ID:fBTD6+Y3(2/3) AAS
序盤34手まで、13万通り、は過去局CDROMから頻出手を選ぶ。
以降は1局面あたり、プログラムで1000秒思考した結果最善2手を保存する。
PC1台で1314.9局面/年。1000台のPCにお願いして、131万局面。
約40手先、合計で74手まで用意できる。
コンピュータの考えた次善手をたどると実は人間側の勝ちになったりする?。
65: 03/12/12 22:09 ID:fBTD6+Y3(3/3) AAS
計算違いだ。34手目までは、過去の名局ただ1局のみをベースにする必要がある。
もしくは、最新の流行1局。こちらだと1年先の保証がない
66: 03/12/13 04:48 ID:FZIp2nQw(1/2) AAS
計算バグ
PC1台で31557.6局面/年 (24倍を忘れた)
40台程度の協力者でよい
67: 03/12/13 04:54 ID:FZIp2nQw(2/2) AAS
40手までの「2ちゃんボードゲーム板標準手順」を将棋の強い方に上げてもらおう。
その後の30手をDB作成する。まずは1秒思考版で。
68: 03/12/20 07:51 ID:cJscYprH(1/2) AAS
1. 盤、Bang、 は取りあえず 9x9=81の一次元配列にしよう。
あとで変更するかも知れない。
2. 駒、 こちらも適当に、
先手歩:16、先手香車:17、後手歩:32、、
3. generateArandomMove()
乱数で合法手を1手作成して返す。
4.何局か指して、勝率の良いもの選ぶ。
計画
1.詰め将棋、1手詰め
2.詰め将棋、3手詰め
3.詰め将棋、5手詰め
4、次の一手問題
5、2日制将棋1日目終了後指し継ぎ
6、序盤データベース
69: 03/12/20 13:55 ID:cJscYprH(2/2) AAS
944422200
....K....
.........
....g....
.........
.........
.........
.........
.........
.........
000010000
1手詰め、持ち駒、金
ランダムに3手指し終了した時点で駒台に敵玉がのっていれば
勝ち、その他は負け。
70(2): 03/12/21 01:05 ID:45Mhtaty(1/5) AAS
50万回試行した。結果は、、、、、、
41金:702
61金:727
42金:540
52金:663
62金:588
ちょっと予想と違う結果になった。
61金、62王、のあと9分の2の確率で王を取る。
52金、61王、のあと10分の1の確率で王が駒台にのる。
とりあえず理屈には合って居そう。
「逃げる」「取る」手を覚えさせれば、なんとかなりそう。
次の1手詰めをやってみよう
844322100
.........
......G..
.........
......dsK
........G
.........
.........
.........
.........
000000000
持ち駒無し
71: 03/12/21 05:05 ID:45Mhtaty(2/5) AAS
>>70
61金で41王に逃げる確率は5百数十分の一、
王が移動しなければ、9分の一で、王確保。
52金後、王が移動しないと10分の一で王捕獲される。
「取る」プログラムが「逃げる」よりは簡単そう。
あと何を工夫するか。
王手をチェックすれば、大幅に高速になるのは「見え」てるが、指し将棋の
強化には約に立たないから後回し。
次の1手詰めは50万回では差が出ない、500万回、朝までかかる。
72: 03/12/21 07:48 ID:45Mhtaty(3/5) AAS
>>70
10万回で
23銀不成り:468
23銀成り:341
35銀:245
少しはずしているが、まあ、近い。敵玉が逃げない場合も含めての敵玉捕獲確率のようなもの。
一気に次の1手問題。
601000000
LKS.....L
..S.r....
....B..PP
.PpG.....
P.P....p.
p.Nng.p.p
kpn..p.r.
..g......
l....B..l
000012000 持ち駒金銀2、(95歩まで) 500万回
先手生駒:plnsgbrk 先手成り駒:tycagmd
英語圏でも将棋プログラムを開発しているから、あまり外れないほうが良いか。(少なくとも生駒)
桂馬の「桂」は何の意味があるのだろう。金銀さんご、、、、、、などの言葉があるから、「珊瑚」に関係ないのかなーー。それで、 coral にしてみた。大外れかもしれない。
73: 03/12/21 13:28 ID:45Mhtaty(4/5) AAS
500万回で最頻手は92銀:5883回。
お目当ての手は第16位で1739回。 約150の可能手の内。
終盤なので、玉の防御をすれば、もう少し良くなるか。
74: 03/12/21 13:46 ID:45Mhtaty(5/5) AAS
中盤の問題。 100万回。
400100000
LN...G.NL
......SK.
P........
..PBPR.P.
.P.P..P.P
p.pN.p...
.pb.pg.rp
......s..
ln...g.kl
000011000
75: 03/12/26 09:11 ID:HKWQqeik(1/2) AAS
初手48玉、第3手59玉と出た。
76(1): 03/12/26 09:45 ID:HKWQqeik(2/2) AAS
中盤問題は本の正解とは異なる66角。それでも某ソフトと同じ。
もっと序盤問題から:
000000000
LN・GKGSNL
・R・S・・・B・
P・PPPP・PP
・P・・・・P・・
・・・・・・・・・
・・歩歩・・・・・
歩歩・・歩歩歩歩歩
・角・・・・・飛・
香桂銀金玉金銀桂香
000000000
先後逆
先生の正解は68飛だが、、、
とりあえず、王の防御だけは入れた。20回に1回防御しない、そのとき駒台に上げられる。つみ判定しなくて良いから省力
77: 03/12/26 22:57 ID:Wb6uSPOT(1) AAS
ほう、なんか面白いことやってる人がいますな。
1手指すのにものすごい時間かかりそうだが。
78: 03/12/27 09:22 ID:7bL+N0Ad(1/2) AAS
将棋ソフトの探索速度、秒速数十万手だそう。
DeepBlue の速度は秒速: 200Million moves だそうです。
79: 03/12/27 13:03 ID:7bL+N0Ad(2/2) AAS
>>76
あまり序盤すぎて、どうにもならない。65歩と68飛が嫌われた手。
王が動くのが好まれて居る、が、
可能な局面の数と、乱数そのものの数に圧倒的な差があるので、乱数の偏りを見ているのかもしれない。
もう少し局面を進めて見よう。
000000000
LN・・・GBNL
・R・・G・S・・
P・・P・・SK・
・・P・PPPP・
・P・歩・・・・P
歩・歩・銀歩歩歩・
・歩角・歩・桂・歩
・・・飛金・銀玉・
香桂・・・金・・香
000000000
200万回、嫌われた手:75歩:−236点
推奨手:25歩:1189点、45銀:637点、29玉:532点
どうなんでしょうか。先生推薦手は別の手。
80: 03/12/28 08:37 ID:Yv24cf1G(1/2) AAS
全然駄目だ。25歩は確率的に取って来ない、24歩、20回に1回逃げない、敵玉捕獲確率が高い。
45銀も同じ、34銀、高確率敵玉捕獲。
相手が悪い手を指してこちらが勝ったとき、相手が良い手を指してこちらが勝ったときで、同じ1勝ではdame.
改善!
上下前次1-新書関写板覧索設栞歴
あと 922 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ
ぬこの手 ぬこTOP 0.011s