トップページgamedev
727コメント356KB

【囲碁?】囲連星のAIを作ってみよう【連珠?】

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。2006/08/03(木) 16:13:45ID:jCmv785l
フリーソフト囲連星のAIを自作してみませんか?(囲碁+連珠)
デフォルトのAIが弱いので今なら囲連星AIの第一人者になれる。
もし名人より強いAIを作成すればそのAIが名人位に。
詳しいことはソフトダウンロード後、ヘルプメニューを参考に。

作成方法:AI部分をプログラムしコンパイルしたものをファイルコピーすればOK
ソフトダウンロード:http://irensei.com/
0002名前は開発中のものです。2006/08/03(木) 21:56:17ID:xFYbUm5w
[暑さのせいで?]
0003名前は開発中のものです。2006/08/03(木) 21:58:57ID:xFYbUm5w
ごめん。誤爆
0004名前は開発中のものです。2006/08/12(土) 03:47:35ID:eRtRKm13
ダウンロードしてみたが弱いwwかなり。
これより強いのを作るのは簡単そうだが
そう一筋縄ではいかないのかもね
0005名前は開発中のものです。2006/08/12(土) 12:09:45ID:Wtbh4gtF
自作CPU同士で戦わせられないのか?
それが出来たら、スレ内で最強決めたり、おもろいかも
0006名前は開発中のものです。2006/08/12(土) 18:52:24ID:0eGNrfZt
面白いな。
なんか、アレだな。

ロボットのAI書いて、戦わすみたいなノリだな。
0007名前は開発中のものです。2006/08/13(日) 22:00:20ID:v9c1Vwk6
>>5
自作同士で戦えるよ。
いまでもCPU同士で対戦できる。
でも今だと両方とも同じAIだからどんぐりの背比べになっちゃうけど。
誰か今のより強いの作ったらどっかに上げてみてよ
0008名前は開発中のものです。2006/08/19(土) 13:19:23ID:+BoZDsCV
フリーのC++のツールで開発してOK?AIだけなら
0009名前は開発中のものです。2006/08/20(日) 23:28:57ID:tcnpee8d
>>8
VC++とBorlandC++のサンプルがGUIに同梱されてるよ。
0010名前は開発中のものです。2006/08/22(火) 19:46:39ID:Hquguqqe
>>9
サンクス。C++かぁやったことないんだよな
0011名前は開発中のものです。2006/08/22(火) 19:56:12ID:iCo826Xt
>>10
C++から他の言語へのゲートウェイを作るってのはどう?
0012名前は開発中のものです。2006/08/23(水) 00:59:08ID:CqNVUnKw
多言語でもいけるんじゃない?DLL化出来てれば
0013名前は開発中のものです。2006/08/23(水) 20:19:13ID:M0hCP3PA
こういうのは詰みと中盤を分けて作るのが普通なんだろうけど、
5連、6連の連打で勝負をつける本当の詰めを読む部分のほかに
石の取り合いになる攻め合いを読む部分を別に作った方がいいのかな?

連続のアタリで取れるの取れないのぐらい読めた方がいいのかなと
思ったり。

あとは評価関数だよなー。
0014名前は開発中のものです。2006/08/24(木) 02:32:37ID:s0cWYqSO
俺何回か打ったことあるんだけど
5連6連の連打で詰めるというよりは
いかに必勝形を作るかにかかってるみたい。

┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼○○○○○┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨

ってのよりは

┠┼┼┼┼┼┼○┼○┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼○┼○┼○┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨

の方が有効な5になる。逆に相手のこれを確実に止める
ロジックも必須になるかな守りとしては。
多分相手の必勝形を防ぐことにウェイトを置いたほうが強くなりそう
0015名前は開発中のものです。2006/08/24(木) 06:31:33ID:ioVHmuR2
>>14
必勝形のデータベースを持たせてマッチングさせるのかな?
上より下を高く評価するのにどんな関数を定義する?
0016名前は開発中のものです。2006/08/24(木) 10:55:32ID:EL56UG7q
白地になりそうな点は
白石が置かれているものとしてカウントする、って感じで
0017名前は開発中のものです。2006/08/24(木) 13:21:58ID:ev8Ef8+s
>>16
だね。すでにあたりになってる場所は既に自分の地(?)って計算にすればいいのかもね
0018名前は開発中のものです。2006/08/24(木) 19:58:13ID:ioVHmuR2
>>16
なるほど。中盤の評価関数としては優秀かも。

でも必勝かどうかはわからんし、>>14の上は先手を取れるけれども、
下は相手に5連があれば受けに回らないといけない。

つーわけで、5連6連の連打で詰める探索は必須だと思うよ?
0019名前は開発中のものです。2006/08/25(金) 00:15:07ID:Qv5WM+Vw
えー、現囲連星名人です。

他によくあるのが

┠┼┼┼┼┼┼○○┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼○┼┼○┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
これで4

┠┼┼┼┼┼┼○○○┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼○┼┼┼○┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
これで5
こういうのが作りやすい。

だから単純にアタリになるところだけでは不十分だと思います。
まあ先に進んでからの話だと思いますが。

┠┼┼┼┼┼┼○○┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼○┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
こういうのはいい形、というのを評価関数にいれるといいんじゃないかと思います。
0020名前は開発中のものです。2006/08/25(金) 05:13:14ID:HSkjh6sV
アルゴリズム的に、形をマッチングさせるよりも、
探索の結果として好形に高評価が下るようにする方が
個人的には好みかな。

もちろん、パターン認識するのも全然ありだけど、
歴史が浅いゲームだから、手筋自体があまり揃ってない
ような気がする。
0021名前は開発中のものです。2006/08/25(金) 23:01:11ID:WlvILivf
マッチングはどっちかって言うと
候補手の生成のためのものって気がするが。

てことで、みんな候補手はどうしてる?
0022名前は開発中のものです。2006/08/25(金) 23:14:00ID:RsiJgsmx
棋譜から良いパターン・悪いパターンを検出して、良いパターンほど優先的に生成。

って事をしたいけど、実現出来そうに無いから合法手全部生成する。
0023名前は開発中のものです。2006/08/26(土) 00:58:27ID:rYAFjXGI
そうすると3手読むだけでだいたい(15*15)^3=11 390 625
になっちゃうんですけど。
αβ法とかでカットするにしてもこれは多すぎだべ。
■ このスレッドは過去ログ倉庫に格納されています