【オセロ,将棋】ボードゲーム【囲碁,War】 at GAMEDEV
【オセロ,将棋】ボードゲーム【囲碁,War】 - 暇つぶし2ch36:旧版
03/10/01 05:29 BGyx/9fV.net
>>34
2日古い旧版ですが、
"S0000000000000000"
S:次の手番、先手
00:先手持ち歩
000000:先手その他持ち駒の数
00:後手持ち歩
000000:後手持ち駒
小文字英字:後手盤上駒
大文字英字:先手盤上駒
数字:連続空枡の数
のつもりでしたが、持ち駒については、盤上に足りないものだけを
表示すればよいことにした。
「何手目まで指したか」の情報も入れたほうが良いかな。
チェスプログラマからのアイディアですが、あちらは持ち駒がない。

37:34
03/10/01 20:24 IcaM+bMd.net
>36
なるほどあの文字列はそういう風にゲームの状態を表していたんですね。
当方将棋やチェスのプログラムを組んだことがないのでよくわかりませんが
初期状態としてプログラムを実行するときの引数などに与えれば、テストを
行ったり詰将棋を解かせたりするときに便利そうですね。
ただちょっと人間が読むにはちょっと読みにくい形式なので、例えば次のような
感じにセパレータをいれてみたりして読みやすくしてはどうでしょうか?
先手番:00000000:00000000:ymsgogsmy/1h5k1/fffffffff/9/9/9/FFFFFFFFF/1K5H1/YMSGOGSMY

38:20ふたまた
03/10/01 21:22 BGyx/9fV.net
>>37
人間にもコンピュータにもと「ふたまた」をかけたものです。
気にかけていただき恐れ入ります。
2台のPC間の通信、局面データを保存するときのキーなどを想定しています。
ちなみに>>33
'平手先手番:52:10:y4o1my/1y2gs1g1/f4f1ff/4s1f2/2bm2F2/1F2FS3/F2G1F2F/2S3H2/YMOG3MY'は
後手持ち駒:歩2
y・・・・o・my
・y・・gs・g・
f・・・・f・ff
・・・・s・f・・
・・bm・・歩・・
・歩・・歩銀・・・
歩・・金・歩・・歩
・・銀・・・飛・・
香桂王金・・・桂香
先手持ち駒:角1歩5



39:20うまく出ない
03/10/01 21:49 BGyx/9fV.net
∨香 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄∨王 ̄ ̄∨桂∨香  後手:歩2
 ̄ ̄∨香 ̄ ̄ ̄ ̄∨金∨銀 ̄ ̄∨金 ̄ ̄
∨歩 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄∨歩 ̄ ̄∨歩∨歩
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄∨銀 ̄ ̄∨歩 ̄ ̄ ̄ ̄
 ̄ ̄ ̄ ̄∨馬∨桂 ̄ ̄ ̄ ̄∧歩 ̄ ̄ ̄ ̄
 ̄ ̄∧歩 ̄ ̄ ̄ ̄∧歩∧銀 ̄ ̄ ̄ ̄ ̄ ̄
∧歩 ̄ ̄ ̄ ̄∧金 ̄ ̄∧歩 ̄ ̄ ̄ ̄∧歩
 ̄ ̄ ̄ ̄∧銀 ̄ ̄ ̄ ̄ ̄ ̄∧飛 ̄ ̄ ̄ ̄
∧香∧桂∧王∧金 ̄ ̄ ̄ ̄ ̄ ̄∧桂∧香  先手:角歩2




40:名前は開発中のものです。
03/10/02 20:04 cBMmv4Dp.net
1人頑張ってる奴がいるな

コンピューター将棋スレッド11
スレリンク(bgame板)

おまいら最強の将棋プログラムしてみろよ part2
スレリンク(tech板)


41:向こうはプロ
03/10/02 21:42 ud54yjB9.net
だれか、Cで10億回まわして。

42: ◆R/rLuLKeEI
03/10/03 22:14 6g0/L3Ad.net
>>40
頑張ってますよ。

43:データーベース
03/10/05 23:34 WQ0kK/U9.net
>>1
>c言語で作ったデータベースを使って人間と対戦できる将棋かチェス

データーベースはC,JAVA無関係なので、作りましょう。
まずは先手、機械、19手まで。
1:76歩
3:
14歩:xxx;24歩:xxx;34歩:xxx;44歩:xxx;
54歩:xxx;64歩:xxx;74歩:xxx;84歩:xxx;
94歩:xxx;32銀:xxx;42銀:xxx;32金:xxx;
42金:xxx;52金左:xxx;42玉:xxx;52玉:xxx;
......




44:データーベース
03/10/06 21:37 u0x9oIcm.net
1手目は76歩:77760
3手目は後手指手にかかわらず26歩:27260
13140:27260
23240:27260
33340:27260
...
91920:27260
5手目
13140,14150:26250
...
33340,53540:39480
33340,41320:69780
...


45:データーベース
03/10/07 20:56 ViuviOpc.net
1手目、3手目、コンピュータがいつも同じ手では面白くない。
1手目:30
2手目:30
3手目:8
4手目:26
5手目:4
6手目:16
7手目:2
8手目:12
9手目:2
10手目:8
.....
位が適当か、


46:データーベース
03/10/07 21:19 ViuviOpc.net
30*30*8*26*4*16*2*12*2*8=40,0062,7200 すでに46億か、無理だ。
30*30*4*16*2*8*2*4*1*2=1474,5600 15百万、この程度か。
あと50手を先手1手、後手2手で、32百万、掛けると、
472兆、ちょっと苦しい。
8*30*2*16*1*8*1*4*1*2=491520 、30分の一になった。
16兆。 これで60手までOK
機械でうまくはじき出せるか。


47:無理
03/10/09 03:57 G6zbUIk0.net
相手の手を2手用意したのでは、すぐに定跡から外れて役に立たないか。
4手まで用意で、40手までで、1兆。

48:名前は開発中のものです。
03/10/09 10:04 RyMlJxaL.net
コンピューターの将棋は、終盤はプロ並の寄せをするようになったが
序盤から中盤はイマイチだからねぇ。

49:名前は開発中のものです。
03/10/09 21:34 LCLj7mCa.net
40手目まで先手後手5分の将棋を、コンピュータと強い人間が引き継いで指せば、人間勝利は当然。
では、130手で終局した互角の名勝負を、現在の最強ソフトと最強人間で指し継ぐとすれば、何手目くらいからが、良い勝負になるでしょう。


50:名前は開発中のものです。
03/10/11 01:31 KnVdGg3r.net
>>49
ま、言いたい事は大体分かるけど、もっと分かりやすい日本語使おうな(5分→互角)
ってか文章の最後のほうなんて、とても日本人とは思えんぞ。

あんまり将棋が指せない(棋力が低い)人なんだろうけど、
「40手目まで指し終わり、その状況がほぼ互角」ってのは、そうそうないと思うし、
お互いにプロ並の棋力があっても、なかなか互角だと断言できないだろうから難しいよ。

130手というと終盤の状況だろうし、その時点でもマァマァ長手数の部類になるから
「優劣なし、互角」と断言ができずに無理っぽい。
(矛盾してるっぽいが、もし本当に互角の状況なら手番があるほうが有利になる場合が多いのでは)

51:名前は開発中のものです。
03/10/11 11:00 K9b3BQSh.net
//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 vJq46n+e.net
JavaにBitSetクラスというものがあるのを偶然見つけた。
81枡での駒の存非をビットで表現するのに便利そう。

53:名前は開発中のものです。
03/10/18 00:28 fl0E31RS.net
やさしいチェスプログラムがあった。
これを焼きなおして見よう。

//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 B1JCysav.net
>>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 B1JCysav.net
大文字と小文字を逆にして見た。
'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 X5VuBDRK.net
一兆と一口に言っても1秒で1局面を評価結論出して行って3万年かかる。
10000,0000,0000/60/60/24/365.25=31688.08781


57:名前は開発中のものです。
03/10/27 23:32 94uElLdI.net
まずは盤が必要。
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 X+ZKdv/s.net
発見!! 64JAVA
J2SE Itanium v 1.4.2_02 のダウンロード
でも、ハードとOSの値段は??  あ、OSはRedHatでも良いか。


59:名前は開発中のものです。
03/10/31 20:32 X+ZKdv/s.net
Itanium2はサーバー用か。Athlon64用だと良かった。


60:名前は開発中のものです。
03/12/10 04:37 Sw46xuo+.net
案1:
人間とプログラムが対戦する際、
人間側の選択肢を「2択」データベースで用意する。
例えば人間初手なら:
1:76歩
2:26歩
3:投了
その他の手は選択不可とする。
プログラム側の対応手を1手用意する。
初手より70手までで320億応手。
70手終了時点で、
歩:1点、小駒:2点、大駒:10点で集計。得点多いほうが勝ち。
これなら全ての手をゼロ秒で送り出せる。 遊べると思います?


61:名前は開発中のものです。
03/12/10 10:56 a8St1G3J.net
ストレスが溜まると思う

62:名前は開発中のものです。
03/12/12 19:34 0lTC0Jam.net
中盤以降、どうやって2手に絞り込むのだ?

63:名前は開発中のものです。
03/12/12 21:25 fBTD6+Y3.net
申し訳ない。へぼプログラムの考える最善2手だから、ロクな手では無いとおもわれ、
まずは携帯用ストレス解消用。ナズケテ「ストレス将棋」

64:名前は開発中のものです。
03/12/12 21:58 fBTD6+Y3.net
序盤34手まで、13万通り、は過去局CDROMから頻出手を選ぶ。
以降は1局面あたり、プログラムで1000秒思考した結果最善2手を保存する。
PC1台で1314.9局面/年。1000台のPCにお願いして、131万局面。
約40手先、合計で74手まで用意できる。
コンピュータの考えた次善手をたどると実は人間側の勝ちになったりする?。



65:名前は開発中のものです。
03/12/12 22:09 fBTD6+Y3.net
計算違いだ。34手目までは、過去の名局ただ1局のみをベースにする必要がある。
もしくは、最新の流行1局。こちらだと1年先の保証がない

66:名前は開発中のものです。
03/12/13 04:48 FZIp2nQw.net
計算バグ
PC1台で31557.6局面/年 (24倍を忘れた)
40台程度の協力者でよい


67:名前は開発中のものです。
03/12/13 04:54 FZIp2nQw.net
40手までの「2ちゃんボードゲーム板標準手順」を将棋の強い方に上げてもらおう。
その後の30手をDB作成する。まずは1秒思考版で。


68:名前は開発中のものです。
03/12/20 07:51 cJscYprH.net
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 cJscYprH.net
944422200
....K....
.........
....g....
.........
.........
.........
.........
.........
.........
000010000
1手詰め、持ち駒、金

ランダムに3手指し終了した時点で駒台に敵玉がのっていれば
勝ち、その他は負け。




70:名前は開発中のものです。
03/12/21 01:05 45Mhtaty.net
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 45Mhtaty.net
>>70
61金で41王に逃げる確率は5百数十分の一、
王が移動しなければ、9分の一で、王確保。
52金後、王が移動しないと10分の一で王捕獲される。
「取る」プログラムが「逃げる」よりは簡単そう。
あと何を工夫するか。
王手をチェックすれば、大幅に高速になるのは「見え」てるが、指し将棋の
強化には約に立たないから後回し。

次の1手詰めは50万回では差が出ない、500万回、朝までかかる。


72:名前は開発中のものです。
03/12/21 07:48 45Mhtaty.net
>>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 45Mhtaty.net
500万回で最頻手は92銀:5883回。
お目当ての手は第16位で1739回。 約150の可能手の内。
終盤なので、玉の防御をすれば、もう少し良くなるか。



74:名前は開発中のものです。
03/12/21 13:46 45Mhtaty.net
中盤の問題。 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 HKWQqeik.net
初手48玉、第3手59玉と出た。

76:名前は開発中のものです。
03/12/26 09:45 HKWQqeik.net
中盤問題は本の正解とは異なる66角。それでも某ソフトと同じ。
もっと序盤問題から:

000000000
LN・GKGSNL
・R・S・・・B・
P・PPPP・PP
・P・・・・P・・
・・・・・・・・・
・・歩歩・・・・・
歩歩・・歩歩歩歩歩
・角・・・・・飛・
香桂銀金玉金銀桂香
000000000
先後逆
先生の正解は68飛だが、、、

とりあえず、王の防御だけは入れた。20回に1回防御しない、そのとき駒台に上げられる。つみ判定しなくて良いから省力


77:名前は開発中のものです。
03/12/26 22:57 Wb6uSPOT.net
ほう、なんか面白いことやってる人がいますな。
1手指すのにものすごい時間かかりそうだが。


78:名前は開発中のものです。
03/12/27 09:22 7bL+N0Ad.net
将棋ソフトの探索速度、秒速数十万手だそう。
DeepBlue の速度は秒速: 200Million moves だそうです。


79:名前は開発中のものです。
03/12/27 13:03 7bL+N0Ad.net
>>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 Yv24cf1G.net
全然駄目だ。25歩は確率的に取って来ない、24歩、20回に1回逃げない、敵玉捕獲確率が高い。
45銀も同じ、34銀、高確率敵玉捕獲。
相手が悪い手を指してこちらが勝ったとき、相手が良い手を指してこちらが勝ったときで、同じ1勝ではdame.
改善!

81:名前は開発中のものです。
03/12/28 14:04 Yv24cf1G.net
先手第1手目が10000勝10000敗とする。
第2手目が後手側100勝1敗の手で、この対局に先手が勝った場合:
100点与える。
負けた場合:1点引く。 やってみよう。


82:名前は開発中のものです。
03/12/30 10:00 aCmAyHVi.net
うーん、バグフルだ

83:名前は開発中のものです。
04/01/01 14:44 TYfOIMXq.net
正月の休みに虫と戦えり
新年にバグ取れぬ間は目出もせず
新年にバグの取れたるめでたさや

84:名前は開発中のものです。
04/01/04 21:35 03xOK9CB.net
休みは終わり、バグとりまずまず、局面で勝った手を再使用。
秒速約5000手。1000倍速必要。次の課題はキラー手の採用。
特定手の生成、王手、取る手、逃げる手、成る手、を高速に生成したい。

85:名前は開発中のものです。
04/01/06 08:44 IKcYlSoc.net
詰め将棋に限って言えば、詰んだ王将の位置を想定して
その逆順で手を考えるってパターンもありかもしれないと想像。
完全に詰んだ形でしかも持ち駒無しっていうかなり限定された状況だし
自分が詰め将棋考えるときにそうしてるから。


86:名前は開発中のものです。
04/01/06 22:37 wn4SZTXn.net
「想定」はコンピュータの不得意科目だから難しそう。
詰め将棋に関しては、現在ソフトは人間を超えてる模様。後発組はなかなか追いつけない。
序盤はすごく弱いとの評判だから、、、なんとか、、、 序盤で差をつけてそのまま、、、


87:名前は開発中のものです。
04/01/24 12:15 65yd+7L7.net
いまのところ、あまりうまくいってない。バグなのか、、

ある新出局面が与えられる: 可能な指し手は200.そのうち190手以上が凡手。
全手試すと時間が足りない。如何に良い候補手を選ぶか、、  取る成るとか言っているとまた時間がかかる。
局面から何手目かの別に成功(killer)手を集積しようか。
手目別キラー勝率順、、、  どう?

みんな、序盤がだめって言ってる、、、  


88:名前は開発中のものです。
04/01/24 19:03 2SXMZCrl.net
>>87
君は>>1なのか? それとも>>20かな?
とにかくガンガレ

89:20
04/01/25 11:27 4RpPXlNl.net
おーっ援護だー、有り難い。100まで行くのに半年、1000までいけるかな、新スレッドの立て方知らないし、心配ないか。



90:ボドゲー20
04/01/26 05:16 ev0kjgo0.net
負けてるくせに、手を変えないバグ発見。ゆっくりなおそう。
乱数将棋の強さをゼロとして、C将棋の強さ標準を作成することが可能。
2枚落ちで勝率5割なら600点、それにまた2枚落ち5割で1200点、、、、
絶対零度のようなもの、、、ケルビンじゃなく、ボドゲー8000点とかで呼んでください。
うちの特許じゃよ!


【香 落】100点
  【角 落】250点
  【飛 落】350点
  【飛香落】450点
  【二枚落】600点


91:名前は開発中のものです。
04/01/30 10:12 LC61jD25.net
6手まで指し終った段階で一歩でも取られていれば負け。
76、34、26,84、66は66同角で先手負け。


92:名前は開発中のものです。
04/01/30 11:08 LC61jD25.net
n手まで将棋:n手まで指し終わり駒損の方が負け。
n=6:
76,14,56,13角、78銀、
n=8:


93:名前は開発中のものです。
04/01/30 12:35 LC61jD25.net
データベース:
第1手目76歩、第3手目26歩として、第5手目を準備しよう。
約900手くらい。第7手目は3万手以上か。後手の全手に対応。


94:名前は開発中のものです。
04/01/30 22:16 LC61jD25.net
グッドニュース:ひと月ぶりのバグ取りでやっと3手詰めが解けた。
5万局あまりの試行で発見。攻め手は王手に限ってないので、もち駒ありだとどこでも打って試す。29飛車とか

30万手程度だから、高速プログラムなら1秒以内か。とりあえず、というとこか。
30分程度かかった。秒速200手、デバッグ付きだから。

000000000
・・・・・・・・・
・・・・S・・・・
・・・N・銀K・P
・・・飛・・・・・
・・・・・・・・・
・・・・・・・・・
・・・・・・・・・
・・・・・・・・・
・・・・・・・・・
001010000
飛金


95:名前は開発中のものです。
04/01/30 23:24 LC61jD25.net
32金、
43玉、
33飛車、
31桂馬:20分の1の確率で王手を無視して自由に指す。それにしても玉を取り返す気か。
     20分の19はギブアップして決着する。
74飛車:王手を逃げないからと言って直ぐに取るとは限らない。あくまでも自由に。
95歩:玉将健在で後手の勝ち

次の問題
000000000
・・・・・・・・・
・・・・・・・・・
・・・・・・・・・
・・・・・・・・・
・・・・・・・・・
・・・・・・竜歩・
・・・・・歩歩・b    b=後手馬
・・・・・銀K・・
・・・・・・・桂香
001010000
飛金



96:名前は開発中のものです。
04/01/31 00:24 SCQw2gFE.net
>>95
×:玉を取り返す
○:玉を取られて、飛車を取り返す

後手後手言わんで玉方かな。

日本語でもこれだけバグが出る、、、

97:名前は開発中のものです。
04/02/01 20:27 AoEuxQTZ.net
コチコチコッチン、ボドゲーさん
................、動いてる
にーにの角と、はーちはちの角が
こんにちは、さようなら
ちくたくコッチン角交換

「最強」もり上がっているな、、、わが道を行く、、、


98: ◆R/rLuLKeEI
04/02/03 08:20 Oi0TsbpK.net
まずは頑張れー。

あまり盛り上がるとあちらでは板違いなりそう。
まだゲーム関連ではおまいら最強の2スレッドだけなんでいいが…

99:名前は開発中のものです。
04/02/03 21:03 TlBtJ5Aq.net
お、訪問者だ。誰も来ないと思って、のんきに替え歌なぞ歌って失礼しました。
ちらかっていますが、、

100: ◆R/rLuLKeEI
04/02/03 21:57 Oi0TsbpK.net
やっ、どもども、お構いなく。
いつもは読み込み専門でしたが、陽気な替え歌に誘われてつい。
また不意にお邪魔します。

101:名前は開発中のものです。
04/02/06 12:46 Kma2T1Ri.net
表示実験。
MSゴシックでOKだが、MSP(Proportional)だと表示がずれる。
<font color=red/>L
LNSGKGSNL
◇◇◇◇◇◇◇◇◇
PPPPPPPPP
◇◇◇◇◇◇◇◇◇
◇◇◇◇◇◇◇◇◇
◇◇◇◇◇◇◇◇◇
歩歩歩歩歩歩歩歩歩
◇角◇◇◇◇◇飛◇
香桂銀金王金銀桂香

102:名前は開発中のものです。
04/02/06 12:50 Kma2T1Ri.net
やはり英字はうまくいかない。「ツール、インターネットオプション、フォント、MSゴシック」
でお願いします。


103:名前は開発中のものです。
04/02/07 01:39 ye7xTN7i.net
>>95 の5手詰めがまだ解けない。バグを数個直した。このバグありでよく3手詰めが解けたものだ、と再度解かせてみたら7万回試行で解決。
5手を解くには、1,3,5,7手目が正答である必要がある。確率で行けば、1手目正解が160分の一、3手目が100分の一、5手目80、7手目、10として
1280万回に1回正解が出る。 現在、100分、42万局、秒速492手で進行中。
持ち駒のない問題が簡単か。 postが100を超えた。




104:名前は開発中のものです。
04/02/08 00:36 ZAi8NB51.net
相手の手の場合の数もあるので、正解に遭遇する確率はもっと小さい。
持ち駒が多い、飛車角が多いと難問となるので、新問題に変更。
000000000
◇◇◇◇◇角◇◇L
◇◇◇◇飛◇と◇◇
◇◇◇◇◇R◇K◇
◇◇◇B◇◇◇PP
◇◇◇◇◇◇歩◇◇
◇◇◇◇◇◇◇◇◇
◇◇◇◇◇◇◇◇◇
◇◇◇◇◇◇◇◇◇
持ち駒なし


105:名前は開発中のものです。
04/02/08 14:27 BX3nFD2B.net
ふらりと寄ってみた。なんか色々頑張ってますな。

ここを見てふと思った。
詰め将棋って王の側の選択肢をどんどん少なくしていくゲームなんだよな。
最終的に選択肢が0で詰み。

つまり王が動く時に選択肢が少ない手を優先させれば
余計な探索は減るだろうと思った。
でもここのやり方とは違うから参考にはならんね。スマソ。

106:名前は開発中のものです。
04/02/08 14:53 ZAi8NB51.net
お立ちよりありがとうございます。といっても私のスレというわけではないが。
詰め将棋特化ならそれがいいらしい。今のところ、序盤プログラムのデバッグに詰め将棋を利用している。
そろそろ16時間になるが、100万局以上で結論が出ない。今夜半までには何とかなって欲しい。
それとは別に高速化と序盤DBでも考えよう。

107: ◆R/rLuLKeEI
04/02/08 16:14 t2AC4xnx.net
>>105
それは証明数による探索。脊尾詰。

108:名前は開発中のものです。
04/02/08 16:52 ZAi8NB51.net
なんだか「最強」の序盤DB、考えがこちらと似て来た。急がないと。

109:名前は開発中のものです。
04/02/08 16:54 ZAi8NB51.net
以前、七行プログラムで将棋がありましたよね。駒打ちはなかったようですが。今見つからない。


110:名前は開発中のものです。
04/02/08 17:45 ZAi8NB51.net
21と、キタ--,108万局疾走中。まだ勝率5割以下だが、あと11万局勝てば5割超。玉方の手がめまぐるしく変わる、、バタバタしている。
やったね。

111:名前は開発中のものです。
04/02/10 15:17 xmQGU8oL.net
RedHat9に付属の Iagno 2.2.0 なんだけど、レベル3でやると猛烈に時間が
かかる。(5手目辺り)3分くらい待っても打たないから終了させたけど、
せめて時間だけでもカウントして欲しい。PC側も思考中にカウントしてな
いとハングしたと思ってしまう。(もしかしてマジでハングか?) メール
しようと思ったけど英語できねーからここでちょっとグチ。。。

112:名前は開発中のものです。
04/02/10 15:49 TtDOLwre.net
>>111
ソースハック汁

113:名前は開発中のものです。
04/07/28 16:27 r+zgac5E.net
史上初!!!
対局可能な大局将棋ソフトができました。
世界最大の将棋がプレーできます。
今どんどんアップデートされてます。
コンピューター同士の対局も可能。(数分で決着がつくw)

詳しくはここで
大局将棋を指しましょう2《第1局第2譜》
スレリンク(bgame板)



114:名前は開発中のものです。
04/08/19 01:53 7LEsf4i7.net
Linuxで逆さの漢字を表示しようとすると地獄なんですけど、皆さんどうしてますか?
Xlib を使って強引に表示するという手もありますけど・・・・・・。

115:名前は開発中のものです。
04/08/19 02:50 k6q2f/Vl.net
>>114
URLリンク(www.logos.ic.i.u-tokyo.ac.jp)

116:名前は開発中のものです。
04/08/19 03:18 7LEsf4i7.net
>>115
教えて頂いてありがたいのですが、残念ながらアドミンじゃないのでインストール出来ません・・・。

117:名前は開発中のものです。
04/08/19 03:42 k6q2f/Vl.net
>>116
X Serverさえ手元の端末で動かせれば何とかなる。ガンガレ。
Knoppixなりcygwinなり何なりでなんとかならんか。

118:名前は開発中のものです。
04/08/19 04:01 7LEsf4i7.net
>>117
Windowsに移植したいのではなくて、Linux環境(の麻疹)のほうで実行・表示したいのですが・・・。

逆さ文字が駄目ならせめて、画像ファイル(データ)を読み込んで、
その画像をWindow上の任意の場所に表示できるだけでもいいです。
たったこれだけのことですが、表示するだけの方法ならいくらでもあるのですが、
Window領域(グラフィック領域)の任意の場所に表示となると、途端に方法が見つからなくなってしまいます。

思考ルーチンをCPUの速度で実行したいので、出来ればC言語でやりたいです。
こうなると、やはりX Windowを使うしかないのでしょうか・・・。
出来ないことはないですが・・・。

119:名前は開発中のものです。
04/08/19 04:16 k6q2f/Vl.net
>>118
移植とは関係ないよ。
LinuxとかXとかの理解に誤解があるんだろうけど、
勉強していけばそのうちわかるだろうからいいや。

画像なら画像で、Javaとパイプでつなぐもよし、Tcl/Tkを呼ぶもよし、
QtかwxWidgetsで少し本気にGUIプログラミングするもよし、好きにしたら。

120:名前は開発中のものです。
04/08/19 05:20 /5OBYfND.net
>>118
SDLじゃダメなの?

121:名前は開発中のものです。
04/08/21 17:37 +7pTN+59.net
URLリンク(up.isp.2ch.net)
オセロゲームを作ってみました。C言語です。
テキストベースなので、どの環境でもコンパイル出来ると思います。
Windows環境のコマンドプロンプトで開発したので、漢字コードはS-JISになっています。
unixなどだと文字化けするかも知れません。

結構強いです。

122:名前は開発中のものです。
04/08/22 01:01 5qCfTtge.net
そのアップローダーは流れが速いからもう落ちてるぽい。

123:名前は開発中のものです。
04/09/24 16:30:21 Wb26arGV.net
皆さん世界で一番強いチェスのAIを作り上げましょう。
typedef enum {B_KING  = -6,B_QUEEN = -5,B_ROOK = -4,B_BISHOP = -3,
B_KNIGHT = -2,B_PAWN = -1,NONE=0,
PAWN=1, KNIGHT=2, BISHOP=3, ROOK=4, QUEEN=5, KING=6} PieceT;

typedef enum {A1=0, A2, A3, A4, A5, A6, A7, A8,
B1, B2, B3, B4, B5, B6, B7, B8,
C1, C2, C3, C4, C5, C6, C7, C8,
D1, D2, D3, D4, D5, D6, D7, D8,
E1, E2, E3, E4, E5, E6, E7, E8,
F1, F2, F3, F4, F5, F6, F7, F8,
G1, G2, G3, G4, G5, G6, G7, G8,
H1, H2, H3, H4, H5, H6, H7, H8} SquareT;

皆様どうな手法・探索方法でも構いません。
ありとあらゆるやり方でレスポンスの早くて弱いAIからレスポンスが早くて強い
AI。ありとあらゆるやり方でAIの部分だけ考えていきましょう。
とりあえず上のに基礎的な部分をつけるんでそこからは皆さんの力をお借りしながら
地道に強くて早いAIから弱くて遅いAIも作ル予定です。
皆様の案やアルゴリズムの知識をお借りして作り上げていく所存でございます。
では失礼します。

124:名前は開発中のものです。
04/09/26 00:22:15 uMKqZE6G.net
これ使ってリバーシ作って誰か対戦してみない?
URLリンク(www.vector.co.jp)

GUI部分は作る必要ないらしい。C#みたい。
.NET Framework SDK(無料)で作れると書いてある。



125:名前は開発中のものです。
04/09/26 16:21:00 QXyfGRQz.net
DLLで作った思考ルーチンを対戦させるリバーシ
URLリンク(lily.xrea.jp)

126:124
04/09/26 19:13:56 uMKqZE6G.net
対戦きぼんぬ!

127:名前は開発中のものです。
04/09/28 21:45:55 SANJ/ziE.net
将棋・オセロ・囲碁・チェス・その他ボードゲームでソースが公開されている
サイトなど知っておられる方おりましたら教えて頂けますか。
よろしくお願いします。

128:名前は開発中のものです。
04/09/29 00:22:22 pXLmLT1B.net
>>127
こことかは?
URLリンク(www.cv.its.hiroshima-cu.ac.jp)

129:124
04/10/02 15:29:45 vOgyK91B.net
思考ルーチン作りました。対戦きぼんぬ!
URLリンク(www.geocities.jp)
EasyAI

AIリバーシ
リバーシ(オセロ)のフレームワーク。
UI等やルール等のプログラミングを必要なくして、
オセロの人工知能の作成ができます。作成した人工知能で
コンピュータ同士の対戦や人間との対戦ができます。
URLリンク(www.geocities.jp)


130:124
04/10/18 00:05:09 6lxdirBj.net
age

131:名前は開発中のものです。
04/10/26 01:24:57 NJ6dRo97.net
>>129
昔作ったオセロを移植中。


評価関数が正しく機能してなくて、
あからさまに変な手を打つ・・・。

勝てるかどうかだけでも確かめたいんだけど、
これってコンピュータ対人間ってできないのかな?

132:sage
04/10/30 20:37:51 /7gGlUhq.net
>>>>>>123
なんでチェスなん、しょうぎにしなはれ、てつだうよ

133:名前は開発中のものです。
04/10/30 20:43:19 CPBb4xe5.net
>>124
.NET系しか無理なの?ネイティブな言語を使えるならちょっと興味あるんだけど。

134:124
04/11/22 20:25:43 0ypaIRpp.net
>>131
人間用のDLLをロードすればコンピュータ対人間ができるよ。
ダウンロードしたアーカイブに含まれる「man.dll」

>>124
.NET系のみです。
そういわずに.NETで興味持ってください。

EasyAI 対戦希望中!
URLリンク(www.geocities.jp)


135:131
04/11/23 18:55:07 U7/P+cw3.net
>>134
お、ありがとん。

バグは直ったけど、勝てないw
Sample2が妙に強いような・・・

136:124
04/11/23 19:23:01 JiDSQ1Zx.net
>>131
完成したら対戦みてみたいので公開きぼんぬ。



137:名前は開発中のものです。
04/11/23 21:21:50 0Xmb1bTq.net
>>134
対戦ログ吐かないの?
リーグ戦とかできないしAI作るのに向いてなさげ

138:131
04/11/23 23:49:20 U7/P+cw3.net
>>136
URLリンク(up.isp.2ch.net)

弱いよw

パラメータを適当に調整してたまたま勝つ時も
あったけど、アルゴリズム的には確実に負けてるぽ。

139:名前は開発中のものです。
04/11/24 12:17:58 jlHl4NEJ.net
>>138
パスワードは?

140:名前は開発中のものです。
04/11/24 13:13:46 LYnq6hZ4.net
とりあえずwiki作ってきた
URLリンク(gamdev.org)

パスのメッセージボックスが出た後放置すると不具合が出るので
作者さん見てたら修正お願いします。

141:名前は開発中のものです。
04/11/24 17:18:44 jlHl4NEJ.net
初期配置が変
正式には左上が白

これはダメ
●○
○●

これが正解
○●
●○

142:名前は開発中のものです。
04/11/25 04:29:24 hR6jlIJZ.net
URLリンク(gamdev.org)

ランダムに打つ・・・・だけです。
やっと作り方がわかってきた。
やっぱ説明よむよりソース嫁だな。

143:131
04/11/26 01:36:53 CO1qZ58U.net
>>139
すまーん、昔パスワード設定してたのがそのまま
残ってた。パスワードも忘れちゃった。。。

というわけで、再あっぷ。パスワードはありません。
URLリンク(up.isp.2ch.net)


144:名前は開発中のものです。
04/11/26 19:28:22 nwd/oqGi.net
AIリバーシの開発者です。
いろいろ修正箇所があるみたいなので、
近いうちに修正します。
リーグ戦モードとかもほしいですね。
選択した、複数のdllを対戦させて結果を集計する。

145:124
04/12/04 14:49:42 gQgEz/b/.net
保守あげ

146:名前は開発中のものです。
04/12/04 16:32:58 ufQlLsO/.net
>>141
アメリカ式だと逆じゃなかったか?
Yahoo USAに行けば分かる

147:名前は開発中のものです。
04/12/05 01:49:20 hcIz+0Iu.net
>>146
各国(アメリカ,オランダ,ドイツ,イタリア,フランス,イギリス)のオセロサイト@日本オセロ連盟
URLリンク(www.othello.gr.jp)
ここからリンクされてる解説では左下が黒

Y!USA以外にも左下が白になってるゲームをいくつか見つけたけど
Y!USAですらロゴは左下が黒
URLリンク(us.i1.yimg.com) 

ロジステロ、WZebraなど有名ソフトは左下が黒
(オプションで逆にできるソフトもあった)

などから考えてY!USAがあまり深く考えて無かっただけだと思った

148:名前は開発中のものです。
04/12/05 11:38:36 dP98iOtv.net
観戦する人が真横から見た状態と考えてみる

149:124
04/12/05 19:25:57 WZALd2Lv.net
これって順位はどうやって決まるの?
エロい人おしえて。

URLリンク(gamdev.org)


150:名前は開発中のものです。
04/12/08 16:54:42 Gi0qtPED.net
>>149
ただの総当りで順位とかは考えてないです。
わかりやすいようにwikiに勝敗数を書き加えておきました。

先手後手を入れ替えて同じ相手と二度戦います。
基本的には一発勝負ですが時間切れなどは再試合となります。

強さの目安とAI作成のやる気に繋がればと思い表を作成しました。
このスレでアップされたAIは全て戦わせていこうと思っています。

>>左下に白or黒?
他のソフトにあわせていただけると対戦させるときに楽ができていいなぁ・・・なんて。

151:名前は開発中のものです。
04/12/09 05:28:48 xa3u+hyT.net
AIリバーシ1.4キタ━━━(゚∀゚)━━━ !!
URLリンク(www.geocities.jp)

152:124
04/12/15 20:48:32 JZjqhTry.net
新しいAI来ないね。

>>150
勝敗数同じ場合は、全対戦で取得した
こまの数の多いほうが勝ちですか?

153:名前は開発中のものです。
04/12/18 21:05:52 NINQi9jk.net
漏れもオセロ作り始めました。まだ思考ルーチン書いてない&Javaだけどよろ。
URLリンク(f57.aaa.livedoor.jp)

154:名前は開発中のものです。
04/12/25 14:40:20 jC/sMZiw.net
もしよかったら皆さんで作りませんか?
【開発】いただきストリート?オンライン【似てる】
スレリンク(netgame板)


155:名前は開発中のものです。
05/02/20 21:45:02 zGNXUfDk.net
簡単な盤面評価のみでCPUの手を決定するリバーシ作ってみました。

URLリンク(www.sm.rim.or.jp)

さすがに「先」のこと何も考えないプログラムだとCPUに負ける方が難しい(^^;。
CPU同士の対戦は爆笑物w


156:名前は開発中のものです。
05/02/28 20:23:06 IrM267L5.net
nage

157:名前は開発中のものです。
05/02/28 20:37:12 Q8GR8m6a.net
角周りは取らないぐらいしとけよ・・・


158:名前は開発中のものです。
05/03/13 20:07:31 7O+hOcCJ.net
とりあえずRPGツクール製オセロに負けるな
URLリンク(suppy1632.hp.infoseek.co.jp)

159:名前は開発中のものです。
05/03/13 20:45:59 CKuTZdWW.net
AIはLispが開発効率が良いと聞いた

160:名前は開発中のものです。
05/03/13 20:51:47 DBlp8sdp.net
>>159
迷信
同じ関数型言語ならライブラリの量が決め手。

161:名前は開発中のものです。
05/03/13 20:53:17 DBlp8sdp.net
あと、リストを効率良く扱える言語。

162:名前は開発中のものです。
05/03/26 16:30:53 6d63TAHh.net
最近の型推論のある関数型言語に触っちゃうとLispは不便に感じる

163:名前は開発中のものです。
05/03/27 18:24:39 e0q37bi0.net
将棋,チェスでの詰みの判定ってどうやるんだ?
俺にはまったくわからん(;´Д`)

164:名前は開発中のものです。
05/03/27 21:48:57 4lT2WEWr.net
王を取る手の評価を評価できる値の最大値として
王を取られる手の評価を最小値とする。

指すことができる手がどれも最小値なら詰み。

165:名前は開発中のものです。
05/03/29 12:08:43 iomZmKZn.net
手番側に御飯がなかったら詰み

166:名前は開発中のものです。
05/03/29 12:09:56 iomZmKZn.net
間違えた、
手番側に合法手がなかったら詰み

167:名無し名人
05/04/03 02:08:06 NgV9szJO.net
ゲ製技板のみなさん、こんばんわ
現在囲碁将棋板では百人組み手なるイベントを開催してます
開発したアルゴリズムを人間相手に試してみませんか?
興味あるかたは是非遊びにきてください

  ∧_∧ パチ!
  ( ´∀`) < 王手!  2次でもやります
  (_⊃__)__  ∧_∧
  (_|\キキキ(∀`; )   【 百 人 組 み 手 】
   “ヾ | ̄ ̄゛と  __)
     “ ̄ ̄ (__)_)   目指せ全板交流!
プレ開催 2日(土) 3日(日)
本開催  8日(金) 9日(土)


4/2(土)から Yahoo!GAMESにて開催!
囲碁・将棋・チェス・オセロに腕の覚えのある奴、ない奴、
今すぐ URLリンク(igoshogi2.hp.infoseek.co.jp) に来たれ!!!

詳しい時間、受け手の有無などは当日下記のスレをご覧ください。
第2回2ch人気トーナメント特別対局【百人組み手】
スレリンク(bgame板)

168:名前は開発中のものです。
05/06/09 22:13:50 ZSMa8wY6.net
Bonanza?

169:名前は開発中のものです。
05/06/10 18:51:50 Qn2POV14.net
URLリンク(www2.odn.ne.jp)
そこに打つのでおじゃる。

170:名前は開発中のものです。
05/10/12 15:15:38 WI1zqV2M.net
四通八達図式を自動的に導き出すプログラムをC言語を使って作りたいんです
が、参考になるサイト、または本があったら教えてください。

171:名前は開発中のものです。
05/10/15 22:23:30 1G3vaMgQ.net
ここの「囲碁プログラムの作り方[基本編]~[上級編]」は参考になるよ
URLリンク(homepage1.nifty.com)

172:名前は開発中のものです。
05/10/16 10:19:01 4Acp8/ip.net
【人間】対局禁止令【ソフト】
スレリンク(bgame板)l50

173:名前は開発中のものです。
05/11/16 09:57:51 f06QVQmN.net
489 :デフォルトの名無しさん [age] :2005/11/16(水) 09:16:51
「コンピュータ囲碁の入門」出た
URLリンク(www.kyoritsu-pub.co.jp)

174:名前は開発中のものです。
06/03/16 00:41:18 yzRgxseK.net


175:名前は開発中のものです。
06/03/22 23:42:04 vkTXhv7l.net
六角形オセロ
URLリンク(www.forest.impress.co.jp)

つまらん。('A`)
というか、普通のオセロの方が奥深い気がする…

176:名前は開発中のものです。
06/04/19 23:08:29 DffBqyLp.net
円形オセロ

177:名前は開発中のものです。
06/05/17 16:17:21 zNRWs9Vk.net
誰か囲連星の強いプログラムを作ってくれ。
URLリンク(irensei.com)

178:名前は開発中のものです。
06/05/24 02:42:18 uUkE2Sm7.net
>>177
たしかに弱い

179:名前は開発中のものです。
06/08/24 00:30:07 KoWjUKap.net
保守

180:名前は開発中のものです。
06/09/11 07:47:50 53++tl6w.net
オセロの簡単な裏返し判定の仕方がわからん!
思いつくのはめんどくさいものばかり・・・。
5行ぐらいで書けんものかね

181:名前は開発中のものです。
06/09/11 08:28:06 Z0AEurxf.net
普通に書いても5行くらいじゃないかね。
}だけの行とかを省けば。

182:名前は開発中のものです。
06/09/11 17:01:08 53++tl6w.net
それをぜひ教えてもらいたい

183:王
06/10/03 19:48:14 ssSQFQDH.net
皆さん:
私はc言語を勉強し始めたばかりなので、何方が教えて欲しいんですが、”typedef”って何ですか。分かっている方に説明して頂く、もしくは適当なホームページを教えてください。
メールアドレス:ou-gain@hotmail.co.jp

184:名前は開発中のものです。
06/10/06 08:32:50 H6NBItu/.net
型名の定義

185:名前は開発中のものです。
06/10/06 15:20:30 BZAZHA4r.net
構造体をつくるのに typedef struct 型名{~} って書く以外に使った事がないな。
他に使い方あるの?

186:名前は開発中のものです。
06/10/09 15:22:36 t31lpLSa.net
関数ポインタ

187:名前は開発中のものです。
06/10/19 22:25:50 JdYr9qe3.net
ボイーンた

188:名前は開発中のものです。
06/12/23 12:04:02 Hiyjpqfb.net
関連スレ
スレリンク(tech板)

189:名前は開発中のものです。
06/12/23 15:06:44 uBKqEo7O.net
>>188
昨日からいろんなスレageてる阿呆か
いい加減にしろ

190:名前は開発中のものです。
07/08/15 14:23:59 eTu4t7jm.net
最近囲碁にハマってるからなんか作ってよ

191:名前は開発中のものです。
07/10/11 18:25:21 WcPq61Rp.net
盲人がキーボードだけで出来る将棋ソフトなんてないでしょうか
URLリンク(siva.cc.hirosaki-u.ac.jp)
今これを使ってみているんだけど、不具合が多くてなかなか進まない

192:名前は開発中のものです。
07/10/12 13:14:09 PIfwULpF.net
>>191
ここは、作る人の板なので、板違いですよ

193:名前は開発中のものです。
07/11/12 15:20:03 FN67Ysmj.net
URLリンク(e.x0.com)

194:名前は開発中のものです。
08/02/16 09:58:58 KtZWjP5k.net
CUDAなどを使ってGPUで計算させると面白そうだ。

195:名前は開発中のものです。
08/04/30 15:20:28 4Fbo/hMM.net
コンピューターの読みを出力させるにはどうすればいいの?

196:名前は開発中のものです。
08/05/10 23:17:40 UE0xWEqz.net
実際の音声で単語を録音して、組み合わせるしかない

197:名前は開発中のものです。
08/05/12 14:49:54 mBwB2m7O.net
やはり女性の声がいいですよね、探してみます

198:名前は開発中のものです。
08/05/25 12:52:24 v7y4T+jh.net
>>180

オープンソースでいくらでもあるからわからないってことはないだろ

おれが難しく感じるのは評価関数のほう、膨大な棋譜から学習しないと
パターンの重み付けができない・・・

199:名前は開発中のものです。
08/06/03 17:09:36 bT9imSji.net
オセロはとりあえず、全検索で獲得枚数で重み付け出来れば形にはなる。
環境によって5~6手読めればそこそこ強いんじゃないか?オレはその時点で勝てない。
定跡は難しいね。そもそも定跡あるかも知らん

200:名前は開発中のものです。
08/06/04 14:37:57 FeKBeHI/.net
200

201:名前は開発中のものです。
08/06/04 14:45:10 FeKBeHI/.net
201

202:名前は開発中のものです。
08/06/08 10:45:03 37N7/8Py.net
URLリンク(www.meby.net)
URLリンク(www.meby.net)

203:名前は開発中のものです。
08/06/11 11:49:01 vU6TibJg.net
関連スレ
スレリンク(tech板)
スレリンク(tech板)


204:名前は開発中のものです。
08/08/11 16:47:59 LInsAIev.net
室内ゲームのオリンピックとかあったら面白そうだよね(´・ω・`)下は主な種目
バックギャモン等の勝敗が運という不確定要素で変わるものは除外

囲碁
将棋
麻雀
チェス
チェッカー
ダイヤモンドゲーム
オセロ

205:名前は開発中のものです。
08/08/11 18:44:31 ke9AzWI1.net
>>204
Mind Sports Olympiadってのがあるよ
URLリンク(www.msoworld.com)

206:名前は開発中のものです。
08/08/12 00:01:54 SwJzMxYu.net
>>204
バックギャモンより麻雀のほうが運の要素が高い気がする

207:名前は開発中のものです。
08/08/13 23:24:32 K0IzuDEe.net
麻雀は非公開の不確定でしかも通常4人だろ

208:206
08/08/14 04:14:09 pnoBoDTH.net
確かに不確定要素除外なら
二人零和有限確定完全情報ゲーム限定になってしまうね。

バックギャモンは上手い人には勝てないし
覚えたての人には絶対負けなさそうだけど

麻雀は半荘だとルールを知っただけのその日に
トップを取れることもあるから

麻雀のほうが運の要素が高いと考えてるんだけど。

確かに麻雀は研究が進んでないから
勝負になるのかもしれないけどね。

209:名前は開発中のものです。
08/08/14 04:30:00 oqQ4XHlW.net
伏せてある要素を知らない限り運だろ

210:名前は開発中のものです。
08/08/14 09:45:11 3T//7uKC.net
配牌要素のある麻雀がありなら、UNOもありになるな。
不確定要素もありにして、数回勝負にするほうがよくね?

あと、個人的にはジェンガなんかの手先系も欲しい。

211:名前は開発中のものです。
08/08/14 22:31:56 G3UBgpZ/.net
>208
207だが、だから運の要素が強いんだよな?

212:名前は開発中のものです。
08/08/14 22:57:48 B7Wd7jtf.net
うん
伏せられてる要素を知っちゃったらプレイしてるとは言えないから

213:名前は開発中のものです。
08/08/22 11:28:16 xIm9fthD.net
麻雀って研究進んでない?
最善手の検索自体は頭打ちのようなキガスルが。

214:名前は開発中のものです。
08/09/18 02:41:51 WM6ksVHC.net
今将棋ソフトをC#で作ってます

ベースの将棋プログラムがあって
AI部分はそれぞれのプログラマがdllで書いて、みんなでdllファイルをうpし合って対戦
みたいなのがあればなと思っています

.

215:名前は開発中のものです。
08/09/18 23:14:01 FjpYuFhq.net
つ 将棋所

216:名前は開発中のものです。
08/09/19 00:06:28 vSliV0Hi.net
>>215
わかってねーな
他にソフトが有ろうと無かろうと関係ねーんだよ

217:名前は開発中のものです。
08/09/19 01:57:06 oNQY3VeL.net
これから何かを学ぼうとする人間の態度じゃないな、この雑魚

218:名前は開発中のものです。
08/09/19 03:02:49 jhprjtul.net
>>215
ほーこういうのが既にあるんですね
ちょっと作ってみるかな

219:名前は開発中のものです。
08/10/02 14:32:26 BqcJEAH9.net
思考エンジンを>>218がうpしてくれるのwktkしてまってる

220:名前は開発中のものです。
08/10/03 00:40:55 1JgFthiv.net
まず将棋の駒なんだがダサい。
もっとチェスみたいにセンス良いのに変えて。

それと動かし方も特殊なの作って。


221:名前は開発中のものです。
08/10/03 11:29:32 w2DAyZcd.net
そう思うなら自分が作れば良いのに

222:名前は開発中のものです。
08/10/04 04:35:51 TRmXkKzz.net
チェスの駒なんて幼稚でダサイ

223:名前は開発中のものです。
08/10/04 13:01:40 VpyxnnCf.net
古いチェスソフトだがBattleChess
コマが甲冑着た兵士で、動かすとそのマスまで歩いていって敵のコマを斬りつけて倒すのが衝撃的だった

224:218
08/10/06 03:50:43 1QX8X5Nt.net
>>219
ありがとう
ようやく合法手が打てるようになって、
駒はまだランダムに動いているだけ
完成まで何年かかるのかしらw

225:名前は開発中のものです。
08/10/06 16:53:13 swcT6QuF.net
>>223

衝撃的でもなんでもない。
元が兵士だの王様だのの戦いだろが。
そういうのをゲームにしたのがチェスだろ。

226:名前は開発中のものです。
08/10/06 19:18:36 BsYoDmVL.net
>>225
ビジュアル的に衝撃的という意味だ、馬鹿がw

227:名前は開発中のものです。
08/10/07 22:15:10 myhHSj3x.net
衝撃的でもなんでもない。
元が兵士だの王様だのの戦いだろが。
そういうのをゲームにしたのがチェスだろ。

228:名前は開発中のものです。
08/10/14 11:55:17 8vvv4eB8.net
ビジュアル的とか一切言ってない>>223が悪い

229:名前は開発中のものです。
08/10/14 15:31:10 Av4ni/WQ.net
将棋もチェスも元が兵士だの王様だのの戦いなのは今さら口に出して言うことが恥ずかしいほどの常識
明言してないからと言ってそれを汲み取れない>>223が馬鹿

230:名前は開発中のものです。
08/10/14 20:15:57 OYNkgCVY.net
これだからチェス厨は┐(´~`;)┌

231:名前は開発中のものです。
08/10/15 22:56:17 GHJkid7K.net
ん、斬新な解釈じゃなくて、アニメーション効果に衝撃を受けたんじゃないのかと思ったんだが、
なんで古代の戦争を模したという常識を知らないという前提で叩いてるの?

232:名前は開発中のものです。
09/02/11 10:31:05 s/ghzSCn.net
どぞ。

デジタルゲームの最先端に立つ人々が集合した,「第4回ボードゲーム交流会」レポート
URLリンク(www.4gamer.net)


233:名前は開発中のものです。
09/03/13 03:22:31 B9n5WX1A.net
ハゲタカのえじきとかなら、さっくりさくさく作れないかなあ

234:名前は開発中のものです。
09/06/13 07:41:09 2+1LYKG9.net
あげ

235:名前は開発中のものです。
09/06/16 02:11:21 1CAlzcIC.net
習作のため、一番簡単なゲームってなんだろ?

236:名前は開発中のものです。
09/06/16 10:40:56 f0RK5lBp.net
┌─┬─┬─┐
│  │  │  │
├─┼─┼─┤
│  │○│  │
├─┼─┼─┤
│  │  │×│
└─┴─┴─┘

237:名前は開発中のものです。
09/06/16 10:46:24 1CAlzcIC.net
言われてみれば確かにッ!

238:名前は開発中のものです。
09/06/25 22:18:37 5GUe6Bd4.net
オセロ完全解析してゲ製作板大勝利しようぜ

239:名前は開発中のものです。
09/06/25 22:47:31 DQSdZSpu.net
うむ

240:名前は開発中のものです。
09/08/03 22:14:14 f4vLj/hM.net
例えばポーカーなんかで、
1枚ドローするところを、内部的に2枚引いておいて強い方を採用する…
っていうのは、プレイヤーにバレちゃうものだろうか。

241:名前は開発中のものです。
09/08/03 23:35:10 2X7HBGWU.net
採用しなかったほうを引く山に戻すならばれにくい。
捨て札にしたら、最後に山の数が合わなくなってばれる。

242:名前は開発中のものです。
09/08/07 18:27:28 R45zmvwz.net
山札に戻すのは、当然として。
戻すときに一番上/下に戻すのと、ランダムな位置に戻すのとでは、また変わってきそうね。

対戦相手となるキャラ(コンピュータ)ごとに特殊能力が設定してあって、
ドロー運がとんでもなく高いキャラとかなら、十分に使える方法かなとは思ってるけれど。


243:242
09/08/07 18:30:04 R45zmvwz.net
失礼。
>242の1段落目は>241へのレス、2段落目は2枚ドローの話題全体へのレス。


んー、確率計算をちゃんとするプレイヤーには評判悪そうだなあ。

244:名前は開発中のものです。
09/10/17 17:43:31 71MZbNWZ.net
別所でコピペされてたヤツだけど、面白そうではあるな。
URLリンク(uecda.nishino-lab.jp)


245:名前は開発中のものです。
11/10/31 17:57:13.54 pGv+tMRb.net

URLリンク(jbbs.livedoor.jp)

246:名前は開発中のものです。
11/11/01 08:52:13.81 GguZlPOT.net
将棋モドキなら昔から誰もがいくつも考えて出してる。
そのどれもが将棋を超えられなかった。
なぜなら新しくルールを覚えるのが面倒だから。

なので将棋型対戦ゲームは、面白くてプレイ人口が多いものに収束していってしまう。
新作側がそれを乗り越えるには、作り手がよほど苦労して広めるしかない。

ドラクエは実は構想時にはすでにドラクエ3の要素まで考えられていた。
ただ、いきなり3を出してしまうとプレイヤーがルールについていけない。
なので、ポートピア殺人事件というコマンド選択型ゲームをまず出し
次にドラクエ1でRPGの基本的要素を広め
続いて2で仲間を一人づつ増やしてパーティープレイ型を定着させ
それが出来てからやっとドラクエ3を出した。

どんなに面白いものでも、段階的に簡単なものから広めないとうまくいかない。
斬新ルールだが基本的な要素のみに特化した簡易バージョンが必要だ。

247:名前は開発中のものです。
11/11/02 12:02:01.50 w8/vJaN3.net
>>246
駒二種類減らした4面体(占領、武士、巫女、怨霊)ではどうです?
実際に作ったら、とても手が出せない見積もりを頂きましたので、
没にして6面体に戻しましたけど。
パソコン上で動かすだけなら、負担は減るはずです。

あと駒数を減らすのはOKです。
2個づつから試して慣れるごとに駒数を増やしていってください。
盤面を「5×5」にして試してもいいと思います。

あと「段階的に簡単なもの」があれば、お願いします。
ただ、以上のことを段階的に教えるのはともかく、
各段階のをつくれとかいわれるのは無意味だし経費的にも無理ですね。

248:名前は開発中のものです。
11/11/04 11:16:01.70 2Ept5nIz.net
そういう問題じゃねぇって。遊ぶ側に苦労を押しつけんなって言ってんの。

テキストでルールとだいたいの遊び方が説明してあるだけの
面白さがわからないゲームで、しかも二人必要だから相手にもルールを覚えさせて
なおかつコマやらボードやらも用意しないといけない、なんて今じゃ誰も手を出さない。

面白さの中心部のみを抽出してすぐに覚えられるゲームにして
フラッシュですぐに遊べるようにして、しかもそこそこ強いCPUが相手してくれる
ぐらいじゃないと、今は客が寄り付かないの。

本気で遊んで欲しいなら、あちこちコピペ貼り付ける苦労をするんじゃなくて
プログラム覚えて自分で完成させるぐらいの苦労をしろ。
俺は自分が遊びたいゲームを作るためにプログラムを覚えた。

249:名前は開発中のものです。
11/11/05 10:41:52.88 cjBsr1SG.net
>>248
そうですね。
例えは悪いけど勇者の手を引いて代わりにモンスター倒して
魔王のところにつれてってて言うくらいの親切さがないと
ダメかもしれませんね。
でもそれで面白いのって感じはしますが。

250:名前は開発中のものです。
11/11/07 19:51:57.88 zjfEWUd+.net
だからそういう問題じゃねぇって。

>面白さの中心部のみを抽出してすぐに覚えられるゲームにして
>フラッシュですぐに遊べるようにして、しかもそこそこ強いCPUが相手してくれる

のは、やってるゲームはあるけど

>例えは悪いけど勇者の手を引いて代わりにモンスター倒して
>魔王のところにつれてってて言うくらいの親切さがないと

なんてゲームはないだろうが。例えが悪すぎる。

251:名前は開発中のものです。
11/11/07 19:59:20.54 zjfEWUd+.net
ゲーム中の楽しい苦労と、ゲーム始めるまでの煩わしい準備の苦労を
同一視するから変な例えになるんだよ。

例えるならハイキングのちょっとした山登りだ。
山のふもとに行くまでに普通の市街地や住宅地を何十キロも歩くのは苦痛。
だから山のふもとまで行くバスが必要だ。ってのが俺の言いたいこと。

お前はそれを「だったら頂上までバスで行けないとダメかもしれませんね」
って言うから話がおかしくなる。
山登りの途中は景色楽しみながらの苦労だからいいんだよ。

252:名前は開発中のものです。
11/11/09 18:31:40.10 Gt0xi7Pn.net
コネクト6(六目並べ)
URLリンク(www.connect6.org)

253:名前は開発中のものです。
11/11/10 22:08:34.35 lXNjDaXU.net
>>248
ご指摘ありがとう。

俺はおもちゃ屋で将棋やオセロの隣に並べるのが目標だったから、
プログラム組むとかそういうのは考えてなかった。
ていうか、そんな技術持ってないし。
でも、おっしゃることはごもっともです。
どこかプログラムを替わりにつくってくれるところを検索して探してみます。


254:名前は開発中のものです。
11/11/14 19:50:52.02 SMI23/ZQ.net
ああ、そっちの方で目指してるのか。なるほど。
でも、それもかなりの茨の道だぞ。

おもちゃ屋で定番になって対戦思考ボードゲームなんて
ホントその将棋やオセロか囲碁ぐらいしかないし。
その他のゲームは出ては消えていくだけの存在だ。

目指すとしたら、ドイツボードゲームの系統かな。
基本的にはサイコロやシャッフルカードを使うものだけど
まれに運要素無しのガチ思考ゲーもあったりするし。
でもその場合、最初に覚える要素が凄く単純なものしか残れないし、ウケない。

255:名前は開発中のものです。
11/11/14 20:00:08.65 SMI23/ZQ.net
あと、プログラムを替わりにってのは、金出さないとまず無理だと思う。
ゲームを本気で広めたいなら、プログラムしてでも自分で作るべき。
それが出来ないなら、その程度の本気度でその程度のゲームだったって事だ。

256:名前は開発中のものです。
12/07/10 15:38:41.19 tT32jGKh.net
将棋プログラムできるサイトない?

257:名前は開発中のものです。
12/07/10 15:40:08.27 tT32jGKh.net
過疎ってるし質問とりやめます

258:通りすがりの妖術僧
12/07/27 16:18:03.62 GFEdOn68.net

以下のような本もあるしサイトも結構ありますね。

アマゾンで取扱い
「コンピュータ将棋のアルゴリズム―最強アルゴリズムの探求とプログラミング-I・O-BOOKS-池-泰弘」


259:名前は開発中のものです。
12/10/17 06:16:37.40 uzozAJ35.net
将棋

260:名前は開発中のものです。
12/10/17 07:42:20.83 9gtPUv5X.net
>>258
かなり古いが森田和郎が書いたコンピュータ将棋の本もあるな
「もしかしたら世界初のコンピュータ将棋の本」らしいから、今からしたらかなり初歩的なことしか書かれてないが

261:難しいね
13/01/24 19:30:18.98 Kycj3XA0.net
最近覚えたけど、ぜんぜん勝てない

262:名前は開発中のものです。
13/02/06 18:16:09.27 wjeuu1Tw.net
将棋は頭が良くないと強くなれないのか
URLリンク(gogono.net)

263:名前は開発中のものです。
13/03/06 12:40:47.06 W+jOiTz2.net
URLリンク(www.geocities.jp)
スルー・ジ・エイジ
剣と魔法の国

264:名前は開発中のものです。
13/04/23 07:05:31.51 6N0ZI5Zs.net
>>255
>あと、プログラムを替わりにってのは、金出さないとまず無理だと思う。

金を出さないなら、企画ごとプログラム担当に乗っ取られても文句言えないよな

265: ◆taka1B7CEQ
13/04/26 18:31:25.31 CXgUOPi8.net
▽持ち駒:
┌─┐
│▽王│一 最終手
├─┤   には
│▽歩│二 ★☆を
├─┤   付けて
│▲歩│三 下さい
├─┤
│▲王│四
└─┘
▲持ち駒:

266:名前は開発中のものです。
13/05/11 22:28:05.03 5yfnRn37.net
友達と将棋盤に、自分は将棋、相手はチェスを並べて戦っている
(チェスは1列足りないので、キングを中央にくるように、端列は開ける)

取った駒は再利用不可で、昇格は昇格する駒に応じて、チェスは相手の最前線、将棋は相手の3段目で昇格

チェス側が強くて勝てないよ・・・

267:名前は開発中のものです。
13/05/12 13:24:34.46 9mOVMO8z.net
将棋側は、あまり動かずに、金・銀を密に連携させて防御陣形をとるべし

チェス側は、ポーン以外はすべて大駒だから、機動力が大きいが、多方向に利くのはクイーンとキングのみだから、そこを狙うべし
クイーンもキングも取られるわけにはいかないから、玉と金2枚で支援して銀2枚を捨てられる将棋側は有利

チェス側はポーンで斜めスクラムを組んで防御前線を張れるが、正面の駒を取れないのが痛い

268:名前は開発中のものです。
13/05/13 17:58:19.66 be264q5E.net
Zillions of Gamesをインストールすれば、自作ゲームがすぐに作れるよ
URLリンク(www.zillions-of-games.com)

Zillions Rules File (ZRF)というルールファイルを、テキストエディタで構文に従って書き換えるだけ
URLリンク(www.nakajim.net)

もとのゲームファイルの修正で済むようなもの(駒数変更,駒の移動範囲の変更,盤の升目数の変更など)はとても簡単
他の人がアレンジしたボードゲームのZRFも、ダウンロードして参照すると使用可能
URLリンク(www.zillions-of-games.com)

269:名前は開発中のものです。
13/05/18 09:32:23.57 CiGW0TGT.net
将棋対チェスのゲームって売ってるのかな?

270:名前は開発中のものです。
13/05/18 23:16:41.04 3YHAJpG/.net
わざわざそれだけのために買うやつなんていないだろ

271:名前は開発中のものです。
13/05/20 20:20:47.74 Jmw0rbja.net
ZoGの中将棋AIは最強らしいから、やってみたいな
有料だから残念か

将棋対チェスは、ggると調整されたルールが出てくる

272:名前は開発中のものです。
13/05/24 18:09:30.06 35JPsAxI.net
>>271
調整ルールの詳細希望!

273: ◆SHOGI//OTA
13/05/24 18:48:56.85 o/L4nan1.net
チェス側も6枚以上になると駒打てるってルールだったかな
将棋が日本、チェスがアメリカか

274:名前は開発中のものです。
13/05/24 22:15:10.72 kIYPN4Ka.net
>>265
▲ニ歩
△同玉
▲三歩打
△一玉
▲ニ歩
△同玉
▲三王
まで

275:名前は開発中のものです。
13/05/24 23:20:25.94 o/L4nan1.net
6手にて変化の余地なくスティールメイト負け。

276:名前は開発中のものです。
13/05/26 02:43:56.90 Px4RuB9Z.net
>>273
サンクスです

確かに大駒中心のチェス側は、高い機動力を生かして序盤は優勢だけど、
終盤は取り合いになると、守備範囲が狭いチェス側は守りきれなくて死ぬ

ある程度、駒をとってから打てるようになるわけね・・・
将棋側はチェス駒を打つわけだけど、チェス駒はナイト以外は向きが分かりにくいから、相手に使用されると嫌だな

277: ◆SHOGI//OTA
13/05/26 07:32:03.70 eRYu9esk.net
リアでやる時は色反転させるからおk
これでもチェス側が勝つとなれば、一気に決める必要があったりして。(w
将棋が金銀で固めてしまうと手がでないヨ。。。

将棋対シャンチーもあるかな

278:名前は開発中のものです。
13/05/26 12:06:35.03 KdBMZZS6.net
米韓戦:チャンギ(韓国将棋) VS チェスなら、あるよ
URLリンク(www.zillions-of-games.com)

日中戦:シャンチー VS 将棋とか、誰か作ってくれないかな・・・

4人プレイで、チェス VS 将棋 VS シャンチー VS チャンギのバトルロワイヤルとか面白そう

279:名前は開発中のものです。
13/05/26 12:11:22.32 KdBMZZS6.net
日米戦:チェス VS 将棋は、すでにHSPで専用ソフトが存在していてビックリ!
URLリンク(hsp.tv)

ルールをもっと可変式にして欲しいな・・・
昇格線の位置、駒の再利用の有無、チェス側が空ける列の変更とか・・・

280:名前は開発中のものです。
13/05/26 20:14:44.85 eRYu9esk.net
>>278は、ソフト購入しないと無理?

シャンチーとかはちょい特殊なので、
同じ盤でやるのはムズイか

281:名前は開発中のものです。
13/05/27 19:39:26.72 9pbfjPhK.net
まずはHPでソフト(体験版:無料)をダウンロード
これで、デフォルトの48種類のゲームが可能(将棋,チェス,チャンギ,シャンチー,マックルックなど)
使用期限はないけど、機能制限(自作ルールが使用不能)あり

次に、Help>Unlock Full Versionを開いて、NameとCodeに数字を入力すると、機能制限が解除されるよ
これで、OpenRuleGamesから参照することで、ダウンロードサイトの亜種ゲームや変則ゲームも使用可能になる

間違っても、「Zillions of Games」,「keycode」,「serial number」,「passward」などでググってはいかん!
(倫理的にね・・・)

282:名前は開発中のものです。
13/05/27 19:44:10.89 9pbfjPhK.net
>277
そうか、将棋側は、使っていない相手(チェス側と逆の色)のチェス駒を使えば良いのか・・・

チェスの駒は、打ち詰めたり、合い駒を打ったりするのに向いていない・・・
でも、チェス側が手に入れるのは将棋側の駒だから良いのか

相手に取られたチェス駒を、さらに取り返して打てるとなると、チェス側はチェス駒を打てるわけで、新感覚だな

283:名前は開発中のものです。
13/05/28 18:33:34.08 E62L+nG5.net
>>278
チェス側はナイトが1個足りなくないかい?
ナイトとルークの位置が逆なのも意味があるのかな

チャンギとシャンチーは似てるから、シャンチー VS チェスなら、すぐにできそう

284:名前は開発中のものです。
13/05/31 23:01:31.34 /iCd6FrU.net
3Dチェスのソフトを作るスレに乗っ取り!

285:名前は開発中のものです。
13/06/07 06:49:37.26 22I90z1d.net
>>281
ありが糖

中将棋やってみるよ^^
調べてみると、摩訶大将棋まであるな

286:名前は開発中のものです。
13/06/08 19:23:27.40 NBTDQ+RS.net
立体チェスとか、円形チェスとか、六角形チェスとか、チェス系はバリエーションがスゴイ!

287: ◆ZSCoFl63NY
13/06/09 17:15:43.33 R+TCfNWQ.net
他スレでなかなかレスがつかずにこちらにカキコしました。

ループオセロを作りました。exeファイルなどはトラブル防止のため、あえて添付していません。
動作環境はWindowsです。Cコンパイラがない方は、同梱のreadme.txtを参照してください。
コンパイル方法はreadme.txtに全て記述してあります。
↓にうpしてあります。
URLリンク(soft186.e-whs.jp)

少々強引なコーディングですが、何とか形になりました。
率直な感想を聞きたいので、どうかダウンロード&コンパイル&プレイしてやって下さい。

私のスペックですが、C/C++がそこそこ使えて、フリーソフトを公開した実績がありますが
プログラマとしての実務経験はほぼゼロです。

288:名前は開発中のものです。
13/06/13 18:55:25.55 8V7u006/.net
なんかドラクエの世界地図みたいですね
東西ループ+南北ループ
もはや角や端は意味を持たない
最後までどんでん返しがあり得るが、盤のマスは有限と
なかなか面白いのでは?
メール希望者には、exeで送っても良いのでは?

できれば、その技術で、「チェスVS将棋」のインターフェイスを作って欲しい
AIなしの対人対戦専用ソフトで

289:名前は開発中のものです。
13/06/13 19:04:52.78 3uTeAlkg.net
ドーナツオセロか

290:名前は開発中のものです。
13/06/14 17:56:33.48 4WX+Y1yW.net
正確には、平坦トーラス(曲率0の円環円筒)です

291:名前は開発中のものです。
13/06/15 21:26:29.87 Yvu65IEz.net
>>287
がんばれ!!

292:名前は開発中のものです。
13/06/16 12:19:37.51 THgmSpSn.net
縦列が一周ごとに下にずれたり
横列が一周ごとに右にずれたりすると
更にややこしくなる。

ていうか残り1枚から大逆転が可能になる

293:名前は開発中のものです。
13/06/16 12:26:37.95 HJz6eymc.net
赤・白・黒の3色オセロは既出?

294:名前は開発中のものです。
13/06/19 00:32:19.46 KWgkgQFb.net
4色でやってるTV番組があるぜ

295:名前は開発中のものです。
13/06/20 19:25:37.41 utbSzndH.net
>>294
何色?
赤・青・白・黒??

296:名前は開発中のものです。
13/06/25 20:10:45.63 8VH9PpPP.net


297:名前は開発中のものです。
13/06/30 12:35:57.68 epiVBrxw.net
リアルタイムストラテジー型のチェスとか、HP制の将棋とか、おもしろいかも?

298:名前は開発中のものです。
13/06/30 20:09:35.38 CusNUCHO.net
その昔、バトルチェスってのがあってな・・・

299:名前は開発中のものです。
13/07/01 NY:AN:NY.AN lOCkd1Ri.net
Battle chessでggると、駒を1手で1回ずつ全部動かせるらしい

300:名前は開発中のものです。
13/07/02 NY:AN:NY.AN bfbryvu1.net
FFみたいなアクティブタイムバトル(ATB)制とか、
タクティクス・オウガみたいなウエイトターン(WT)制は?

301:名前は開発中のものです。
13/07/03 NY:AN:NY.AN wkoZZDOw.net
ハンターハンターの軍棋をゲーム化するとかね。
つうか軍棋って同じ名前で実在するんだな。日本にも軍人将棋ってのがあるが。
ここで色々案も挙がってるが、すでにPCもない時代からこういう考えはあったわけだ。

302:名前は開発中のものです。
13/07/07 NY:AN:NY.AN 1jzG+TM2.net
軍蟻は良いかも!
著作権が難しいが・・・

軍人将棋はバリエーションとローカルルールがありすぎて対応が大変
ZoGにも欲しいな
西洋軍人将棋(ストラテゴ)は、PCでも割と見かけるが

303:名前は開発中のものです。
13/07/07 NY:AN:NY.AN 0lzHS3C/.net
ハンターのあれってちゃっとルール公開されてたの?
コマが3つまで重ねられるって事しか解んないわw

304:名前は開発中のものです。
13/07/07 NY:AN:NY.AN lXyODQZR.net
ルールなんて自分でこさえちゃえばいいよ。
コマを重ねるってのは、要するに馬にのせたり方天画戟といった装備だったり
名声や決意・覚悟といった精神的なものの加点要素なんじゃないのか?
あるいは倒れた仲間を回収して回復ポイントまで運べるとか。逆に補給物資を運んでいるか。

将棋やチェスなら、味方のコマと重なると2倍の能力になり、一回とられても相打ちで敵も倒せて、自分はそこに残れる、的なシステム。

305:名前は開発中のものです。
13/07/07 NY:AN:NY.AN tapz/Poj.net
作りたい奴はすでに作り始めてたりする

ハンターハンターに出てきた架空のゲーム「軍儀」
スレリンク(cgame板)l50

306:名前は開発中のものです。
13/07/08 NY:AN:NY.AN VxgBNd3t.net
なるほど、高さ=三次元的なゲームだったのか。
二段や三段のコマは一段のコマには抜けれず壁の役割になれる。
壁構築で地形みたいな要素にもなる感じかな?

307:名前は開発中のものです。
13/07/09 NY:AN:NY.AN PWW1vFJn.net
高さを考慮したSLGといえば、タクティクスオウガ系のゲーム画面(盤面)になりそう・・・

308:名前は開発中のものです。
13/08/03 NY:AN:NY.AN gVJOFEFN.net
age

309:名前は開発中のものです。
14/09/08 16:59:53.68 67y2qr+m.net
教京サーバアビエ無戸籍交際薬剤消毒介護職利権ローション羽田帝国上層部24時間パトロール義務上野飲み会マックさむらいニューヨーク森林火災チェック問題ヤーフォー確定申告不足ラーメンスーパーポイントdビデオデッキ破壊タイピングGTX860MIGOZ

教京サーバアビエ無戸籍交際薬剤消毒介護職利権ローション羽田帝国上層部24時間パトロール義務上野飲み会マックさむらいニューヨーク森林火災グリーにんにく牡丹黒家宝ラーメン

教京サーバアビエ無戸籍交際薬剤消毒介護職利権ローション羽田帝国上昇部24時間パトロール義務セコム強盗マックさむらいニューヨーク森林火災グリーにんにく牡丹黒家宝ラーメン
築地TPP偏食中国人勧誘マナー憤怒北京オリンピックパブ立橋フロアWHO経済制裁代協議会飲み食い代官僚日テレ漏洩ボーリングITC問題調査福岡駐車近代道廃人画税幕張銀行ググール無断決裁広告料寒孫ゼリー失調栄養士指的フィルム不毛ハンバーグースラーメン

糞箱弐個弐個沖縄ランド近年ペット原発難民船頭100万円コミックコラムシフト廃品鉄工業プラチナ小スモ再販問題WHO光金アナ雪エネルギーソーシャル決裁ニッカン奮闘鬼記者サービスカ米ラマン露店捜査キセルストアアイダホ会長農家不動産工場感激息子

310:名前は開発中のものです。
15/08/18 16:59:55.72 QcCJSSMl.net
どなたか教えていただけますか?
最近、オセロAIのプログラミングをCで行っています。
今は、探索ロジックの勉強のため、終盤の完全読みを作っています。
置換表付negaMax、置換表付PVSは通常の探索ではきちんと動作しています。
現在MTD(f)にとりかかりました。MTD(f)では、ドライバは擬似コードそのまま。
テスト関数は置換表付negaMaxを流用していますが、そのままだとFail-LowとminMax値
の区別がつかずに、Fail-Lowの指し手を返してしまうので、初段のみαを-1する事で、
内部的に区別できるようにしています。
動作確認にいくつかテストケースでテストしましたが、FFO#40の時におかしな事がおきます。
(FFO:URLリンク(www.radagast.se)
問題)本来の評価値は+38(A2B1C1…)なのに、+30が返る。
以下、判明している状況です。
1)置換表を使用せずにMTD(f)を動作させる。 ->正解
2)単体でNull Window Searchを行う。      ->正解
3)置換表を使用してMTD(f)を動作させる。   ->少なくともFFO#40では誤答する
4)FFO#40で失敗する条件は、fにminMAX値より幾分小さい値(黒+30未満)を設定したとき。
5)negaMax初段でαを-1するロジックを入れなくても、同じ事になります。
デバッグで確認したところ、Fail-Highになるべき条件(黒+30や黒+36の時)で、下限値を
返しています。同一条件で、下限をさらに-1してテストしたところ、α<g<βである事が確認
できましたので、minMax値として間違った値が返っていることになります。
どうも原因は置換表にあり、Null Window Searchの中で、何回も再利用していることに
あるように思います。とはいえ、MTD(f)といえば置換法を再利用する事が前提です。
どこかに誤りがあるのではないかと思います。
同じような問題に遭遇した人はいますか?

311:310
15/08/18 17:06:51.32 QcCJSSMl.net
ちなみに、置換表のキーは、盤面と手番です。
ハッシュ値を使用し、衝突した場合は、チェーンで下につなげています。
今のところ、メモリーの上限等は設定しておらず、領域も足りています。

312:名前は開発中のものです。
15/08/18 21:27:38.25 ZHAQ4NnD.net
正気か?

313:310
15/08/18 23:21:46.36 5wjtKO2B.net
何がですか?

314:名前は開発中のものです。
15/08/18 23:27:30.51 ZHAQ4NnD.net
その質問に答えられる人間が2chにいると?

315:310
15/08/19 09:33:45.34 DdofkXsp.net
いなければ仕方ないですね。
テスト関数を置換表付negascoutにしたら、ちゃんと答えが返ってくるようになりました。
けど、なんか気持ち悪い。置換表の扱い方は一緒なので、たまたま上手く行ってるだけ
ではないかと思います。むむむ。
MTD(f)にこだわり続けてもあんまり意味が無いので、評価関数づくりに入ります。
3層パーセプトロン型にするか、普通の線形回帰にするか。
パーセプトロンタイプは、パターン学習のタイプを作ってみましたが、学習データ340万
棋譜に対して、1回回すのに3日がかりという状態で、検証サイクルが回しづらい状況な
ので、簡略化をするか、線形回帰を試すか思案中です。最終的には、両方作って対戦
させてみるかと思っています。いつになる事やら。

316:310
15/08/24 09:51:00.08 Y8Lk5h3w.net
BITBOARDで確定石をそこそこ正確に求める方法を考えました。
思いっきり脱線中w
ただ、斜め方向に「列すべてに石が置かれている」状態を検出する方法と、
その時に、斜め方向の列すべてに確定ビット(仮)を建てる良い方法が見つ
からずに、斜め方向のAND用の定数配列を用意してループを15回回してる。
縦横は、分割統治でそこそこなロジックになったんだけど。
45度回転を使っても、そんなに高速化できそうにないなぁ。
もちろん、完璧な確定石ではありません。
拾った石は確実に確定石ですが、確定石なのに拾えない石が若干あります。

317:310
15/09/02 11:43:34.50 s0BtWfox.net
ぬぬぬ。パターンによる線形回帰の石差予想。
最急降下法は収束してるんだけど平均2乗誤差が480とかになる。
1σでいうと1局面あたり22石(黒石の数では11石)もの誤差。
これでは使い物にならない。
ステージ分割しているんだけど、ステージが進んでも誤差はほぼ一緒。
ウェイトがオールゼロでも似たような数字になるレベル。
テストデータで局面評価させると、それなりに石差は計算しているっぽいが、
最善手で終局まで打ったデータ入れるとステージによって評価値が全く違う。
初期値をゼロからスタートすると、この辺なんだけど、1とかからスタートすると
もっと誤差が大きいところで収束してしまう。初期値を乱数にしたら、更に大きな
誤差で収束してしまう。
ローカルミニマムに捕まってるのかなぁ。
いくつかミスは見つけたけど、本質的な場所じゃないので、結果も変わらず。
むむむむ。

318:名前は開発中のものです。
15/09/02 16:33:21.80 6FNrQBf/.net
正規化をミスってる

319:310
15/09/02 21:57:59.44 5gNGVEfH.net
正規化というと、thellさんのlearning.pdfで言うところの、αの設定ですか?
当初はmin(β/100,β/Nj)の正規化型で作ってましたが、上手くいかないので
収束を早めるのは後回にして、今は単純にステージ毎の局面データ件数α=β/Nの
形にしてます。
が、発散を避けようとすると、βをあまりに小さくしなければならないのが、なんか変な
気がしています。今は10の-7~-8乗くらいの値です。やっぱり変ですよね。
最急降下法のコードどこか間違えてるんだろうなぁ。

320:名前は開発中のものです。
15/09/03 04:25:48.28 CNXgxM7O.net
でもオセロだったら最終数手で11石くらいひっくり返ってぶれるのは普通じゃない?

321:名前は開発中のものです。
15/09/03 04:36:35.33 CNXgxM7O.net
あ、オセロのAIにはぜんぜん詳しくないんだけど
対局を見てたらクルクル石差が入れ替わるので
読み切らずに局面から石差を判断すると
どうなるんかなと思って

322:310
15/09/03 10:19:29.05 Fd8XT4rV.net
色々と失礼しました。
もう一度、よーく上記pdfを読み返していたところ、原因らしきものが見つかりました。
記載にあいまいというか、ちょっとおかしいところがあって、式の変形をしっかり追って
確認すれば良かったのですが、思い込みで解釈をして変な計算をしていました。
そこをとりあえずざっと修正したところ、遅々としつつも収束に向かっている模様ですが、
まだまだ完全ではないようです。ある程度二乗誤差が減ったところで、また増え始めたり
しています。正規化も試したけど、やはり同じ。
もう少し、検討してみます。

323:310
15/09/03 10:38:17.33 Fd8XT4rV.net
>>320
もともとひっくり返しあった後の終局を予測するのが目的なので、教師データは最終局面
の石差です。盤面の特徴(パターン)から、最終石差を予想するための重回帰計算なので、
その時点の石数は、説明変数に入れてません。なので、パターンの選択が適切なら、
最善手の応酬において1手毎にどれだけ石数が入れ替わろうと、影響を受けずに、
二乗誤差が終局に近づくほど減っていくと予想されます。
というか、そうなるように説明変数であるところのパターンを模索していくと理解しています。
手元にあるwzebraなんかは、評価値と称して最終石差予想が表示されているのですが、
やはり、ある程度の誤差を含みつつも、大きくぶれているようには見えません。

評価関数の使い道を考えると、実は絶対値はそれほど重要ではありません。
中盤探索のn手読みの時の盤面評価と、ムーブオーダリングに使うので、ある局面から
派生したn手先の局面における相対的な関係が保たれていればOKです。
また、MTD(f)法などを使う時の、fの初期値設定にも使います。この時は絶対値で正確な
方が良いはずですが、外れはすぐにカットされて次に行くので、トータルの時間に対する
影響は小さいように感じます。
とはいえ、相対的な関係が保たれているのかをチェックするのは難しいですから、
結局のところ出来上がった評価関数の評価は、教師データとの二乗誤差の小ささに
するしかないかなと。

324:310
15/09/07 01:11:39.28 OHPpdG+6.net
収束しかかった二乗誤差がまた増え始める原因はまだわかりません。
増え始めるまでは収束方向には向かっているのは確かなのでβの初期設定を
いって誤魔化す方向で。最急降下法ってこんなものなのかなぁ。
一通り納得したので、パターンをLogistelloと同一のものにまで拡充してスムージングも
入れてみましたが、新たなバグを仕込んでしまった模様で、一部計算がぐちゃぐちゃorz
バグ探しの旅に出ます。
裏で、Solverの速度アップを検討。
CountBitとPOPCountを組み込み関数にしてみました。FFO#40で30%ほど改善。
続いてFlip関数を64個のポインタ関数にしてみましたが、時間はほぼ変わらず。
ポインタ関数内の処理が非効率なのか。
Flipのデバッグ中に確定石計算でバグっぽいものを見つけましたが、回帰が落ち着く
まで見なかった事にします。

325:名前は開発中のものです。
15/09/10 17:45:51.81 R9JX9LJx.net
将棋の全駒にユニークなIDを振り、局面を将棋盤に見立てたkoma[9,9]にIDを入れることで表現しようと思っています
その場合、駒のIDから座標を取得するいい方法ってないんでしょうか?
IF文、Case文のオンパレードになってしまうのは仕方ないのでしょうか・・・・
言語C#

326:名前は開発中のものです。
15/09/13 16:22:10.24 5eWB08IT.net
駒側にも座標を持っちゃえば?

327:310
15/09/14 09:33:29.38 Rx5y2/Cc.net
線形回帰で相変わらず時間食ってます。
一応、バグらしきものはそれなりに解消されましたが、やはりいかんせん収束が遅い。
一晩かけて50~100試行して、途中で止めてやり直しなんてのやってる間に1週間は
あっという間に経ってしまうものです。まだ誤差が大きい。1000回程度回して、どこまで
収束するか見てみようかなと。またぞろ3層パーセプトロンが気になる今日この頃。
確定石計算もバグ取りはできたと思いますが、その分計算が1.5倍ほどに膨れてしまい
ました。しばらく思考実験していたら、確定石なのに確定していると評価できない確実な
パターンも思いついてしまって、どうせその程度のものなら重い確定石計算しないで普通
に準確定石程度にしとくのが良いかと悩み中。
Solverの速度アップですが、前からやろうと思っていた事を少しづつやっていますが、
統計とってきちんとやっていないので10%くらいの差だと良くわからない状況です。
コードのメンテナンス性が下がるのがネック。negaMAXが思いの他高速化してしまい
ましたが、MTD(f)が低速化しているかも(謎)。
それなりに評価関数が動きだしたので、置換表2枚にして反復深化も試してますが、
信じられないくらい劇遅状態です。これ本当にコストに見合うのかなぁ。評価関数の
計算が、というか、その中の確定石計算が重いんだと思うけど・・・。

328:310
15/09/14 17:35:45.53 Rx5y2/Cc.net
反復深化が劇遅なのは、使い方を誤っていました。
リーフのところまで使うとコストアップなのは考えれば当然でした。
まあ、おバカなバグもありましたが。
negaMaxに対して反復深化を試すと、1割程度の高速化となりましたが、
negaScoutに対してやると多少低速化して、negaMaxの反復深化と変わらない速度に。
scout missが3倍近く増えているので、評価関数の精度があまり良くないためかなと。
move orderには、通常はmobilityとコーナー着手を使用しているのですが、これ、
何故か(少なくともFFO#40に対しては)scout missが恐ろしく少ないのです・・・。
MTD(f)が遅いのも、最初に設定するfを評価関数の値にして、それが結構外れで、
探索範囲が広がったのが原因です。scout missと同様に、結局のところ、途中で評価関数
を求めるタイプの高速化は、評価関数の精度次第という当たり前の結果に。
評価関数入れるとノード探索時間が1/10になるので、やはり評価関数用の確定石計算は
準確定石にレベルダウンしようかと思います。中盤AIでの話ですが。
今FFO#40が9秒台なので、あと3~5倍高速化したい。

329:名前は開発中のものです。
15/09/14 21:42:06.86 1S1dymvg.net
その情熱がうらやましい

330:310
15/09/15 20:18:36.71 egtjjW0V.net
準確定石の計算って実は思ったよりコストフルかもと気づいてしまい、
急きょコーディングして比較してみる事にしました。
releaseモードだと、自分の計算方法では跡形も残らないため、時間計測不可能。
debugモードでも、数十倍速いと言う結果になりましたので、今の確定石計算ロジック
は、悪いモノではないと自分に言い聞かせる事にしました。
それより、回帰の学習で、少しずつ少しずつ250回くらいまで学習進めていたのですが、
バグを見つけてしまい、またやり直しです。むむむ。しかも、なおした事で計算時間が
2~3倍になってしまうという。

331:名前は開発中のものです。
15/09/19 00:46:12.58 OgvQcqwn.net
回帰がやっとまともっぽいところまで収束するようになりました。
今、250回学習で、最終ステージが1σ=7.5程度です。
このペースだと、もっと学習させても、たいして変わらない気もしますが、
もう少し学習を進めてみようかと思います。
この評価関数を元に、反復深化+MTDF+negaScoutなsolverを動かして
FFO#40で8秒程度になります。インライン関数化とか、最終2手展開とか
やるべき事はある程度やっちゃったので、自分の力だとこの辺が限度かも。

332:310
15/09/22 22:15:30.40 70n8Fwqa.net
回帰は地道に学習中。もう少しやってみるって感じだけど、収束状態の誤差が大きいのは
ステージ分割でオリジナルな変な事をしているからじゃないかと気になりだした。
あと数百回学習を回したら、通常のステージ分割版も作ってみるかなと。
色々いじってるうちに、FFO#40が6.2秒まで来た。何が良かったのか良くわからない。
反復深化をターゲットに改良しているんだけど、negaScoutも同じ時間。
FFO#41を試したら、反復深化で45秒弱、negaScoutで30秒弱という結果に。
探索ノード数がすごい事になってるので、反復深化のmoveorderのどこかがおかしい
気がしている。

333:310
15/09/25 16:54:56.15 9OkLc3+M.net
回帰のステージ分割というかスムージングを、ネット上でノウハウ公開されてるみなさん
と同じようにしたら、1σで6を切ってきた。やっぱ、スムージングやり過ぎて、精度が
落ちていたのね。同一ステージ内でも値がばらついているので本当に必要なのか、
気になるので、落ち着いたら両方試そうかと。先に方向性見ちゃったから本来とは
逆順になっちゃうけど。
色々頑張ったら、FFO#40が5.1秒、#41が20秒、#42が18秒となりました。
ソースとにらめっこしてれば、ネタはそれなりに出てくるものだなぁと。
しかし、10年前のCPU使ってるThellにようやく勝てた程度。
Zebraの速さは何なんだと。こちらはcore i7だというのに。
目下の悩みは、_mm_popcnt_u64とBitScanFoward64が使えずに、それぞれ32ビット版を
使っている事。外部依存のところで関数の存在は確認しているんだけど、「そんな名前ない」
と出てくる。Cは趣味のAVRで小さいプログラムしか作った事がなかったけど、VC++くらい
巨大になると、どーもよーわからん。

334:310
15/10/04 01:12:59.97 +bDErzEp.net
色々やって、FFO#40でnegaScoutで3.4秒まで来ました。
反復深化は異なる方法で2種類作ってみたけど、FFO#40程度の深さだとnegaScoutとの
差が出てこない。22手とか24手とかまで行くと、差が出てくるように感じるけど、後回し。
どうしても気になって、Zebraのソース解説(日本語)を見つけて、そこに出てるソースを
見ました。自分なりにロジック面で工夫した事はほぼ同じ事をやっている。流石。
あとマクロを多用してる。僕はインライン指定でコンパイラ任せ。
マクロにするとデバッグが極端に大変になるので、マクロ化するのは最後。
そしてaspiration windowと称しているWindowの取り方が独特で、ここに高速化の
秘密があるとみた。早速真似してみると、また>>310のような問題が・・・
今回は前より理解が進んでいたため、2点修正して解消。
副次的に>>310の問題も、直ったと思う。
が、もう一つ答えを間違うケースを見つけてしまった。
今まではルートノードに問題があったけど、こちらはもっと下位ノードで戻り値がコンタミ
してる感じ。デバッグが難しく、重症っぽい。むむむ。

335:310
15/10/07 17:10:37.74 i7/9rua6.net
デバッグで試しに変えた箇所を戻し忘れたりして、二次災害三次災害を出して、
相当混乱したけど、やっぱり境界問題だった。これmoveorderの順によって出ない
可能性もあるので厄介。自分は開き直って、探索の幅に-1つけてるけど、皆さんは
どう回避しているのかなぁ。
zebraのwindowの取り方は、基本的にMTD(f)みたいに置換表利用を前提とした、
固定分割サーチだけど、negaScout(MTD(f)やzebra方式の中で使用している)と
速度的には同等な感じ。最初の探索で勝敗がわかるという点がメリットなのか。
MTD(f)は評価関数が正しくないと、検索時間が伸びる可能性があって、以前から
negaScout単体でも十分な気がしてる。
FFO#40は後述の静的評価関数を判明しているパラメータで最適化すると、
negaMaxで5秒台。negaScoutで3.4秒前後。MTD(f)で2.6秒前後。
ThellさんのHP記載よりは高速化したけど、zebraにはまだ勝てないというか、テストした
FFO#41~#43ではzebraの高速度合(ノード数の少なさ)が突出している。
ノード削減はmvorder用の静的評価関数に掛かっている。静的評価関数のパラメーター
をいじってるけど、FFO#40最速のパラメータとFFO#43最速のパラメータが違い、#43用は
#43ではノード数を半減できるのに、#40では増えて遅くなってしまう。negaMaxで初段の
評価順見てると、まだまだなので、何か別の発想で並び替えが必要な感じ。
評価関数は1000回くらい回してようやく良い感じになってきたけど、まだ収束しては
いない感じ。学習係数はもっと大胆に大きくしても良かったかな。ここまでやると、
スムージング無しを試すのが億劫になってくる。
反復深化は、ソースのメンテが追い付いていないので、一回破棄。

336:310
15/10/12 23:43:49.17 ZTwsIi7y.net
色々やってるけど、FFO#40では速度向上はほとんどなし。
置換表のサイズが見えて来たので、1件ごとにmallocしていたのを、配列にして一括で
領域確保するように変更(当初の形)したら、速度のバラツキがだいぶ減ったように思う。
NPSが変動すると、何か悪いことしかたと悩んでしまい、修正して二次災害を起こすので
地味に大事かな。
FFO#43は多少高速化してて、パラメータ最適化するとMTD(f)で12秒台くらい。置換表
適用範囲の指定を下(葉)からしていたのを、上(ルート)からに変えた。あと、MTD(f)
などでは何回も置換表を読むので、2回目からはmoveorderに置換表の評価を使うよう
にした。
BITBOARDだと開放度の計算が簡単だという事に気づいて、静的評価関数に使ってみた
けど、現在使用中の次手mobility+αの順序より劣る感じ。+αが角とか×とかなので、
序盤から中盤用なのかなぁ。
negaScoutに加えた修正をnegaMaxに適用していたら、negaMaxがおかしくなった。
直して計測したらFFO#40が40秒程度に。冷静に考えると、これが常識的な速度だと思う。
前回の5秒台がどこから出て来たのか、今となってはわからない。前段の+α箇所も
結構変えていて、negaMaxはmoveorderで露骨にノードが増減するので、奇跡的な順序
が実現できていたのか。それともバグやオペミス勘違いかも。
そろそろ本格的にネタ切れ。この辺が限界かなぁ。
後回しにしていた修正箇所を直して綺麗になったら、中盤に行くかな。

337:310
15/10/14 23:51:46.51 V3YF/mde.net
negaMaxはmoveorderの修正漏れでバグってて、直したらやはりFFO#40で5.4秒でした。
MTD(f)は2.4秒でzebra並になったけど、#41以後は3~4倍時間がかかる。
その差は探索ノード数に比例してる。前向き枝刈使うわけにはいかないし、#41以降の
差を詰めるにはmoveorderしかないと思う。
とはいえ主だった事は一通り試してしまった。むむむ。
偶数理論で思いついた方法が純粋に面白そうなので組んでみる。
想定では、速度が結構遅くなるはずなんだけど、まあ面白そうという事で。

338:310
15/10/16 10:24:07.38 Q2afyb0d.net
偶数理論の関数は思いのほか軽くできて、オーバーヘッドの心配が少ないです。
BITBOARDの空マスを、囲まれて独立している塊ごとに分離してBITBOARD配列にして
返す関数を作りました。これをPOPCountで数えて着手した場所が偶数空エリアなのか
奇数空エリアなのかを判定します。
最初にテストしたFFO#43のMTD(f)でいきなり30%近く高速化して「やった!」と思った
のもつかの間。実はミスで判定を逆にしてまして、偶数マスに打って奇数を相手に渡すと
加点になってました。で、いろいろテストした結果、最初にやったケースではたまたま
良かっただけみたい。例えばnegaScoutやnegaMaxでテストすると、係数変えたり判定
方法に工夫を加えたりいろいろしてみても、何をやっても探索ノードが増えてしまう。
自分はオセロ弱いので、必勝法みたいに言われているものが、アバウト的に最善手に
近い手を選んでくれるんなら、並び順の優先順位計算に、あるウェイトで入れてみようか
的に考えるだけでした。意味とか深く考えるよりやってみるという感じでした。が、最後に
残った2つの空所が偶数と奇数とかの例ならわかりやすいけど、空所が4~5か所ある
ような状況で偶数理論を当てはめようというのが間違いなのかなぁと。
あと、薄々思っているんだけど、テストケースとしてFFOは良くないんじゃないかと(汗
FFOに最適化してると、もっと出現頻度が高い例題でより高速化できる可能性を放棄
しちゃっている事にならないかと。

339:310
15/10/17 09:29:41.90 uZH1KzRS.net
最終2手高速化したあたりから、ノード数が過小になっていたので、それを直しました。
自分のと比較すればよいかと思って放置していましたが、そろそろちゃんと比較しようかなと。
結果、探索ノードが思っていた以上に多かった事、そしてNPSは9~11K出てるので、
NPSを落としてノード削減する余地があるという結果に。
あまりテストしていなかったFFO#41と42ではzebra方式と呼んでいた(後述)方法が、自分の
中では最速で、MTD(f)の結果があまり思わしくない事も。MTD(f)の#40は初期条件が良か
ったからの模様。
ここらへんでもう一度、zebraサイトのFFOテストページにあるcomplete logなるものを見て
みると、全然違う。バージョン違いなのか、やってる事が全く違う。
浅い探索をしてfを決めてNull window search(正確には幅3なので正解が判別できる)
を繰り返しているように見える。けど、ログ上に%が出てきて、98%、99%、%無しみたい
になっているので、何らかの方法で前向き枝刈しながら、評価値を求めていき、最後まで
幅3の探索しかしていないのかな。こういうのをPVSって言うのかな。
浅い読みとか、前向き枝刈とか絡んでくるんなら、中盤探索をやってから戻ってきた方が
よいのかな。。

340:名前は開発中のものです。
15/10/19 09:50:52.09 BMJ9Bhec.net
とりあえず、ざっくり中盤探索のnegaScoutを組んでみた。
素の状態で10手読みくらいなら1手10秒以内に終わりそうな感じ。
だけど、いろいろと気になる点が。
とり同一局面から着手可能な手の評価値の順番は、あまりくるっては
いないように見える。ただ、評価値事態は結構ずれている。
そして、黒番白番で精度が全く違うように見える。
言われてみれば、同一局面でも手番が逆転すると評価は全く変わるからなぁ。
今は、手番も一つのパラメータにしちゃってるから、その差異は埋められない。
パラメーターとか評価関数の区分とか再考の余地があるんじゃないかと。
前向き枝刈するにしても、評価関数がフィックスしないとダメじゃないかと。
というわけで、しばらく評価関数方面で時間つぶしかなぁ。

341:名前は開発中のものです。
15/10/26 09:44:35.41 uWG/Yjb0.net
中盤探索に入るにあたって、評価関数の計算の試作をいろいろしているんだけど、
いまいちぱっとしない。100回学習で1晩かかるし、300回試行くらいしないと傾向が
見えてこないので、時間がかかる。
で、仕方ないので、裏で序盤定石を作り始めてしまった。
こちらも棋譜ベースで作ろうと考えている。
そこまで来た時に、データベースのどういうデータが使いたいのかが、逆にはっきりして
来て、今使ってる360万件棋譜の中のデータを選別しようかという方向に傾きつつあります。
が、やっつけで作って中身が思い出せないフォーマット変換のプログラムから直さなきゃならん。
開き直って、もう1度、データ変換から作り直そうかなと・・・

342:310
15/10/30 17:31:41.23 uxyAnbEX.net
棋譜ベースで序盤20手の定石DB作った。
定石DBは置換表をベースに作ったので、検索は速いけど、容量が大きい・・・。
簡単にαβで20手探索してみた。
ネットで調べた定石集に載っていない手筋が出てきてしまった。むむむ。
5手目までエビ系で、しかも石差+2で黒勝ち。棋譜が偏っているのかな。
棋譜は例の50万棋譜計画の奴で10手目、20手目以降を訂正したというデータ。
明らかに壊れたデータが入っていたりと、何かと使いにくい箇所があるデータだけど、
定石DB作るにはこの量でも足りないのかも。
定石探索用の簡易版minMaxを作りながらつらつら考えていたら、終盤探索の
moveorderをもっと良くする方法を思いついた。評価関数の精度次第だけど。
新評価関数は、途中でうっかり仕込んだバグで遅延。ようやく原因が見つかって、300回
試行まで来た。もうちょい収束させたいけど、テストに使える程度にはなってると思う。

343:310
15/11/08 00:32:40.41 LMw8+3qF.net
moveorderを早くする方法というのは、事前に軽く探索した手順を保存し、その手順から
優先して探索するというもの。理論的にはscout missがゼロになる。
探索した手順を取り出す仕組みが必要になるので、その辺を改造しようと思ったところで、
悪い癖が出てしまいました。Cベースのソースを一旦棚上げして、C++ベースのクラスを
利用した形で一から作り直してしまいました。
moveorderの配列をvectorに変えたり、unordered_mapを見つけたので置換表に使って
みたり。置換表は、システム任せにして動的にメモリ確保に行かすと、探索ノードの減少
以上に速度低下して使えない。最初からある程度メモリ確保させようとしているんだけど、
いまいち設定がわからない。動的にメモリ確保するので、速度のバラツキも大きい。
そもそもC++は初めてなので、目的がオセロからC++というかunordered_mapの習得に
なりかかっていたので、一旦棚上げして、配列ベースの自作ハッシュの置換表に戻る
方向にしました。
とはいえ置換表を外してもnode/secが5kくらいしか出ていないので、実装が悪いところもありそう。
というわけで完全に寄り道しちゃってます。


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch