【囲碁?】囲連星のAIを作ってみよう【連珠?】
■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
2006/08/03(木) 16:13:45ID:jCmv785lデフォルトのAIが弱いので今なら囲連星AIの第一人者になれる。
もし名人より強いAIを作成すればそのAIが名人位に。
詳しいことはソフトダウンロード後、ヘルプメニューを参考に。
作成方法:AI部分をプログラムしコンパイルしたものをファイルコピーすればOK
ソフトダウンロード:http://irensei.com/
0002名前は開発中のものです。
2006/08/03(木) 21:56:17ID:xFYbUm5w0003名前は開発中のものです。
2006/08/03(木) 21:58:57ID:xFYbUm5w0004名前は開発中のものです。
2006/08/12(土) 03:47:35ID:eRtRKm13これより強いのを作るのは簡単そうだが
そう一筋縄ではいかないのかもね
0005名前は開発中のものです。
2006/08/12(土) 12:09:45ID:Wtbh4gtFそれが出来たら、スレ内で最強決めたり、おもろいかも
0006名前は開発中のものです。
2006/08/12(土) 18:52:24ID:0eGNrfZtなんか、アレだな。
ロボットのAI書いて、戦わすみたいなノリだな。
0007名前は開発中のものです。
2006/08/13(日) 22:00:20ID:v9c1Vwk6自作同士で戦えるよ。
いまでもCPU同士で対戦できる。
でも今だと両方とも同じAIだからどんぐりの背比べになっちゃうけど。
誰か今のより強いの作ったらどっかに上げてみてよ
0008名前は開発中のものです。
2006/08/19(土) 13:19:23ID:+BoZDsCV0009名前は開発中のものです。
2006/08/20(日) 23:28:57ID:tcnpee8dVC++とBorlandC++のサンプルがGUIに同梱されてるよ。
0010名前は開発中のものです。
2006/08/22(火) 19:46:39ID:Hquguqqeサンクス。C++かぁやったことないんだよな
0011名前は開発中のものです。
2006/08/22(火) 19:56:12ID:iCo826XtC++から他の言語へのゲートウェイを作るってのはどう?
0012名前は開発中のものです。
2006/08/23(水) 00:59:08ID:CqNVUnKw0013名前は開発中のものです。
2006/08/23(水) 20:19:13ID:M0hCP3PA5連、6連の連打で勝負をつける本当の詰めを読む部分のほかに
石の取り合いになる攻め合いを読む部分を別に作った方がいいのかな?
連続のアタリで取れるの取れないのぐらい読めた方がいいのかなと
思ったり。
あとは評価関数だよなー。
0014名前は開発中のものです。
2006/08/24(木) 02:32:37ID:s0cWYqSO5連6連の連打で詰めるというよりは
いかに必勝形を作るかにかかってるみたい。
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼○○○○○┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
ってのよりは
┠┼┼┼┼┼┼○┼○┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼○┼○┼○┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
の方が有効な5になる。逆に相手のこれを確実に止める
ロジックも必須になるかな守りとしては。
多分相手の必勝形を防ぐことにウェイトを置いたほうが強くなりそう
0015名前は開発中のものです。
2006/08/24(木) 06:31:33ID:ioVHmuR2必勝形のデータベースを持たせてマッチングさせるのかな?
上より下を高く評価するのにどんな関数を定義する?
0016名前は開発中のものです。
2006/08/24(木) 10:55:32ID:EL56UG7q白石が置かれているものとしてカウントする、って感じで
0017名前は開発中のものです。
2006/08/24(木) 13:21:58ID:ev8Ef8+sだね。すでにあたりになってる場所は既に自分の地(?)って計算にすればいいのかもね
0018名前は開発中のものです。
2006/08/24(木) 19:58:13ID:ioVHmuR2なるほど。中盤の評価関数としては優秀かも。
でも必勝かどうかはわからんし、>>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になっちゃうんですけど。
αβ法とかでカットするにしてもこれは多すぎだべ。
0024名前は開発中のものです。
2006/08/26(土) 03:37:13ID:IupHD68wそれでまずは最強AIなわけだし。
囲碁とか将棋もそうやって徐々に進化したわけで。
0025名前は開発中のものです。
2006/08/26(土) 13:03:58ID:Iyz7Kglwたしかに多いね。
石に隣り合わない手を読まないとかどう?
0026名前は開発中のものです。
2006/08/27(日) 01:37:14ID:hewMfiMA┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼○○┼┼┼○○┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
のとき真ん中に打ってくれなくなるなー。
まあでもこんなのは例外的だから
除外しちゃってもよさそうだけど。
7連を作る手
ないときは相手の7連を防ぐ手
ないときは六を作る手
ないときは相手の六を防ぐ手
…
プラス、石を取る手、助ける手は常に候補手
って感じはどうかなあ。
0027東陶基
2006/08/27(日) 17:32:29ID:gQI+UjINもし完成した場合には送ってもらえればダウンロードするファイルに
入れちゃうので宜しくお願いします。
0028名前は開発中のものです。
2006/08/28(月) 23:03:01ID:ey7+/+F9まず自分に7連を確実に作れる手がなければ
相手の5(もしくはどちらかが止まってる6)を防ぐというのが最優先では。
自分の7連の詰めろ状態と相手の5を比べて
両方FALSEなら布石となる手を、
両方TRUEならどちらが先に勝つかを検討
どちらか片方がTERUの時はそっちを優先でOK?
0029名前は開発中のものです。
2006/08/29(火) 06:21:05ID:NUVELzk7相手の両方開いた5よりも自分の片方開いた6があれば
自分の方が早いってことじゃないかな?
まぁでも俺はああいう風に分岐の多いロジックでやるよりも
7連のみを考慮して探索を深くた方がいいと思うんだけど。
あと >>14 >>19 で上がってる好形も同様に手が遅いんだよね。
だから評価関数的には割り引いて判断してあげないといけないと思う。
0030名前は開発中のものです。
2006/08/29(火) 12:42:32ID:P7sn32OK┠┼┼┼┼┼○┼┼┼○┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼○○○○○┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
そりゃ、相手の打つ手を考えないなら、同じ5でも下の方が早い。
下はあと2手だけど、上はあと5手もかかる。
でも、相手の5や6をちゃんと止めるという基本ができてれば、ひとつだけ5があったって勝ちにはつながらない。
両てんびんをかけなきゃだめなのよ。
5目並べの33や43は結構できるけど、55や56は縦横斜めの組み合わせじゃそうそうできない。
じゃ、どういう形ならできやすいかっつーと、
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼○○┼┼○┼┼┼┼┼┼┨
┠┼┼┼┼┼○┼┼☆○┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
例えばこんなのになる。(ちょっと人工的な例だが)
そういう意味で
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼○○○┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
より
┠┼┼┼┼┼┼○○┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼○┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
の方が好形
■ このスレッドは過去ログ倉庫に格納されています