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

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

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

作成方法:AI部分をプログラムしコンパイルしたものをファイルコピーすればOK
ソフトダウンロード:http://irensei.com/
0027東陶基2006/08/27(日) 17:32:29ID:gQI+UjIN
どうも会長です。
もし完成した場合には送ってもらえればダウンロードするファイルに
入れちゃうので宜しくお願いします。
0028名前は開発中のものです。2006/08/28(月) 23:03:01ID:ey7+/+F9
>>26
まず自分に7連を確実に作れる手がなければ
相手の5(もしくはどちらかが止まってる6)を防ぐというのが最優先では。

自分の7連の詰めろ状態と相手の5を比べて
両方FALSEなら布石となる手を、
両方TRUEならどちらが先に勝つかを検討
どちらか片方がTERUの時はそっちを優先でOK?
0029名前は開発中のものです。2006/08/29(火) 06:21:05ID:NUVELzk7
>>28 >>26じゃないけど
相手の両方開いた5よりも自分の片方開いた6があれば
自分の方が早いってことじゃないかな?

まぁでも俺はああいう風に分岐の多いロジックでやるよりも
7連のみを考慮して探索を深くた方がいいと思うんだけど。

あと >>14 >>19 で上がってる好形も同様に手が遅いんだよね。
だから評価関数的には割り引いて判断してあげないといけないと思う。
0030名前は開発中のものです。2006/08/29(火) 12:42:32ID:P7sn32OK
┠┼┼┼┼┼┼○○○┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼○┼┼┼○┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨

┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼○○○○○┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
そりゃ、相手の打つ手を考えないなら、同じ5でも下の方が早い。
下はあと2手だけど、上はあと5手もかかる。


でも、相手の5や6をちゃんと止めるという基本ができてれば、ひとつだけ5があったって勝ちにはつながらない。
両てんびんをかけなきゃだめなのよ。
5目並べの33や43は結構できるけど、55や56は縦横斜めの組み合わせじゃそうそうできない。
じゃ、どういう形ならできやすいかっつーと、

┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼○○┼┼○┼┼┼┼┼┼┨
┠┼┼┼┼┼○┼┼☆○┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
例えばこんなのになる。(ちょっと人工的な例だが)

そういう意味で
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼○○○┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
より
┠┼┼┼┼┼┼○○┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼○┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
の方が好形
0031名前は開発中のものです。2006/08/29(火) 18:26:10ID:ZEQLAiEv
ちなみに、勝負が決まった場面集(対局スレより)
┏┯┯┯┯┯┯┯┯┯┯┯┯┯┯┯┯┯┓
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼+┼┼┼┼┼+┼┼┼┼┼+┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼●┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼○┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼○●●┼○┼┼┼┼┼┼┨
┠┼┼+┼┼┼┼○●○○┼┼┼+┼┼┨
┠┼┼┼┼┼┼┼○○●○●┼┼┼┼┼┨
┠┼┼┼┼┼┼☆●┼●●┼┼┼┼┼┼┨
┠┼┼┼┼┼┼○┼┼┼┼●┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼●○┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼●┼┼┼┨
┠┼┼+┼┼┼┼┼+┼┼┼┼┼+┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┗┷┷┷┷┷┷┷┷┷┷┷┷┷┷┷┷┷┛
0032名前は開発中のものです。2006/08/29(火) 18:26:41ID:ZEQLAiEv
┏┯┯┯┯┯┯┯┯┯┯┯┯┯┯┯┯┯┓
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼+┼┼┼┼┼+┼┼┼┼┼+┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼○┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼●┼┼┼┼●┼┼┼┼┼┼┼┨
┠┼┼┼┼●○○○○●┼┼┼┼┼┼┼┨
┠┼┼○┼●●○●●●┼┼┼┼┼┼┼┨
┠┼┼+○┼●●○●┼●┼┼┼+┼┼┨
┠┼┼┼┼○●┼○┼★┼┼┼┼┼┼┼┨
┠┼┼┼●●○○○○┼●┼┼┼┼┼┼┨
┠┼┼┼●○┼○●┼○┼┼┼┼┼┼┼┨
┠┼┼┼○┼○┼●┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼○┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼+┼┼┼┼┼+┼┼┼┼┼+┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┗┷┷┷┷┷┷┷┷┷┷┷┷┷┷┷┷┷┛
0033名前は開発中のものです。2006/08/29(火) 18:27:16ID:ZEQLAiEv
┏┯┯┯┯┯┯┯┯┯┯┯┯┯┯┯┯┯┓
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼+┼┼┼┼┼+┼┼┼┼┼+┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼○┼┼┼●○┼┼┼┼┨
┠┼┼+┼┼┼┼┼○○○●┼┼+┼┼┨
┠┼┼┼┼┼┼┼●●○●●┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼●●○┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼●○○○┼┼┼┼┨
┠┼┼┼┼┼┼┼●┼┼○┼●┼┼┼┼┨
┠┼┼┼┼┼┼●┼┼┼┼┼┼┼┼┼┼┨
┠┼┼+┼┼○┼★+┼┼┼┼┼+┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┗┷┷┷┷┷┷┷┷┷┷┷┷┷┷┷┷┷┛
0034名前は開発中のものです。2006/08/29(火) 18:28:05ID:ZEQLAiEv
┏┯┯┯┯┯┯┯┯┯┯┯┯┯┯┯┯┯┓
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼+┼┼┼┼┼+┼┼┼┼┼+┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼○┼┼┼┨
┠┼┼┼┼┼┼┼☆○┼┼┼┼┼●○┼┨
┠┼┼┼┼┼┼┼●●○○○┼┼●┼┼┨
┠┼┼┼┼┼┼┼○●●○●●●┼┼┼┨
┠┼┼┼┼┼┼┼○●●○○●●○┼┼┨
┠┼┼+┼┼┼┼○●○○●●●●○┼┨
┠┼┼┼┼┼┼┼┼●○●○┼┼○┼┼┨
┠┼┼┼┼┼┼┼○○●●○┼○┼┼┼┨
┠┼┼┼┼┼┼●●○●○○○●┼●┼┨
┠┼┼┼┼┼┼┼┼○●┼●○○○●┼┨
┠┼┼┼┼┼┼┼┼○●┼●●┼○┼┼┨
┠┼┼+┼┼┼┼┼+●○●┼●+○┼┨
┠┼┼┼┼┼┼┼┼┼┼○┼┼┼●┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┗┷┷┷┷┷┷┷┷┷┷┷┷┷┷┷┷┷┛
0035名前は開発中のものです。2006/08/29(火) 18:28:40ID:ZEQLAiEv
┏┯┯┯┯┯┯┯┯┯┯┯┯┯┯┯┯┯┓
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼+┼┼┼┼┼+┼┼┼┼┼+┼┼┨白が壱
┠┼┼┼┼┼┼┼┼┼┼参┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼壱┼┼┼┼┼┨
┠┼┼┼┼┼┼○●┼┼○●弐┼┼┼┼┨
┠┼┼┼┼┼┼┼●○┼●○┼┼┼┼┼┨
┠┼┼┼┼┼┼┼●┼○●○┼┼┼┼┼┨
┠┼┼+┼┼┼┼●●●○┼┼┼+┼┼┨
┠┼┼┼┼┼┼●○●○○○┼┼┼┼┼┨
┠┼┼┼┼┼┼●○○●●┼┼┼┼┼┼┨
┠┼┼┼┼┼┼○●○┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼●┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼+┼┼┼┼┼+┼┼┼┼┼+┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┗┷┷┷┷┷┷┷┷┷┷┷┷┷┷┷┷┷┛

0036名前は開発中のものです。2006/08/29(火) 22:00:54ID:NUVELzk7
>>30
言ってることは分かるけど、評価関数は、
もっとシンプルに実装すべきだと思うよ。

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

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

の五の部分に関して、下を高く評価するべきだろうということ。

たとえば下の五が2つあるのと上の五が2つあるのでは、下を選ぶでしょ?

上が好形なのは、五の部分だけではなくて、三が1つ、二が2つある
ということだから、五の部分に関しては割り引くべきだという話。
0037名前は開発中のものです。2006/08/30(水) 00:21:32ID:HDX1nRgM
下の五が2つと上の五が2つだったら下を選ぶけど
下の五が1つと上の五が1つだったら上を選ぶ
0038名前は開発中のものです。2006/08/30(水) 01:23:57ID:T9B8gXQB
そうだね。フリーの
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼○○○┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼○┼┼┼○┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨

┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼C┼○○○┼AB┼┼┼┼┼┨
┠┼┼┼┼┼○┼┼┼○@┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨

┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼○┼○○○┼○●┼┼┼┼┼┨
┠┼┼┼┼┼○┼┼┼○●┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
となり必勝だけど
0039名前は開発中のものです。2006/08/30(水) 01:26:01ID:T9B8gXQB

上のは
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼○○○○○┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨

┠┼┼┼┼┼B┼┼┼┼A┼┼┼┼┼┼┨
┠┼┼┼┼┼○○○○○@┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨

┠┼┼┼┼┼●┼┼┼┼○┼┼┼┼┼┼┨
┠┼┼┼┼┼○○○○○●┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
ってなって優勢ではあるが決定的ではない。白が柳沢ならまだ可能性を残している
ってとこかな。

ただしフリーでこういうのが出来るってことはまずなさそうだけど。
0040名前は開発中のものです。2006/08/30(水) 01:28:10ID:T9B8gXQB
って思ったけど
┠┼┼┼┼┼●┼┼┼┼○┼┼┼┼┼┼┨
┠┼┼┼┼┼○○○○○●A┼┼┼┼┼┨
┠┼┼┼┼B┼┼┼┼┼@┼┼┼┼┼┼┨

┠┼┼┼┼┼●┼┼┼┼○┼┼┼┼┼┼┨
┠┼┼┼┼┼○○○○○●●┼┼┼┼┼┨
┠┼┼┼┼☆┼┼┼┼┼○┼┼┼┼┼┼┨
でやはり必勝。ってことでフリーで5が出来てたら
どっちにしろ防ぎようがないって事だね

0041名前は開発中のものです。2006/08/30(水) 13:45:56ID:HDX1nRgM
評価関数難しいなあ

勝ちは決まってないけどどっちかが優勢って局面のサンプルきぼんぬ
0042名前は開発中のものです。2006/08/30(水) 16:07:42ID:7ZVmpLFf
実際に自分で(人と)打ってみるといいと思うよ。
たまにKGS http://kgs.kiseido.com/ja_JP/ で囲連星部屋を立ててるので、
遊びに来てみて。

今日も19:00ころから立てる予定。
0043東陶基2006/08/31(木) 12:41:23ID:9XPaLR5/
世界コンピューター囲碁大会岐阜チャレンジ2006から
参加しませんか?ってメール来た。
いくらなんでも囲連星のAIで参加したら秒殺なんだけど。
0044名前は開発中のものです。2006/09/02(土) 01:08:18ID:8iwuITDD
作ってみたいけどC++やったことない。
HSPで作ったら意味無いかな。C++勉強した方がいい?
0045名前は開発中のものです。2006/09/02(土) 14:27:34ID:FQ3PQJ6k
HSPの事はよく分からないですが、
>>10-12 辺りの対処法はあるかも。
0046東陶基2006/09/02(土) 18:59:42ID:3UBPfJpb
どうも会長です。

一応、DLL化出来ればそのファイルをexeと同階層に入れれば動くという
仕様でゲームを作ってもらったので多言語でも動くはずなのですが
ただHSPがどんな言語使用なのかが不明なのでなんとも・・・。
これもとりあえずゲームを作ってもらったプログラマの人に確認してみますね。
あと、簡単なサンプルAIを作って見てそれで動けばOKって判断も可ですけどね。

ただ囲連星協会としては製作してくれる人には出来る限り
協力していきますのでわからないことありましたら質問はどんどんしてください。
0047東陶基2006/09/02(土) 20:03:47ID:rm7AAbnt
ちょっと誤字訂正
多言語→他言語
言語使用→言語仕様
0048名前は開発中のものです。2006/09/03(日) 09:12:20ID:3AwZNIT+
>>43
囲連星AI的には、7作って勝手に勝利だと思っちゃうってやつですなwww
ちょっとかわいい
0049東陶基2006/09/03(日) 15:08:01ID:pz5g/Og+
>>44
HSPでも出来るという回答を貰いました。
ただある程度Cのソースも取り込む時に必要らしく
サンプルっぽいのを貰ったのですが
自分自身が理解出来ないので後日公式HPの方にでも
アップしときます。
0050名前は開発中のものです。2006/09/03(日) 20:11:32ID:Wk08AQgv
すいません。わざわざ有難うございます。
0051東陶基2006/09/04(月) 02:55:04ID:AKin8IS7
※プログラマーさんからの回答を勝手にまるまる引用

>・HSPとか多言語でもOK?
ですが、絶対に作れないということはありません。
HSP とのやりとりのために、いくらかの C のプログラムを書く必要が
ありますが、可能です。
例えば、HSP はファイルアクセスが可能なようですので、
1)C で書いた AL DLL から、必要な情報を特定のファイル名で保存
2)C で書いた AL DLL から、HSP のプログラムを起動
3)C で書いた AL DLL は HSP のプログラム終了待ちに入る
4)HSP で書いたプログラムは 1) のファイルを読み込む
5)HSP で書いたプログラムは思考処理をして、結果を特定のファイル名で保存
6)HSP で書いたプログラムは終了する
7)C で書いた AL DLL は 5) のファイルを読み込む
8)7) を囲連星の形に直す
のような形で HSP で AI を作成することができます。
この場合、HSP のプログラムは、一手ごとに起動と終了を繰り返すこと
になります。

他にも、HSP でもプラグインでソケット通信が可能なようですので、
C で書いた AI DLL と、自身で決めた約束事に沿ってソケット通信
することで、囲連星のゲームと HSP のプログラムとのやりとりを
することができます。
この場合、HSP のプログラムは起動しっぱなしになります。

※引用終了
0052東陶基2006/09/04(月) 02:58:57ID:AKin8IS7
と言うことらしいです。このサンプルソースを頂いたので(かなりお手数掛けてるかも)
いつかまとめて(まとめられるかな・・・)UPします。
ただ個人的には普通にDLL作れる言語で作ったほうが簡単そうな気がする・・・。

あと思うに言語を使ってプログラムを実際書けるというのと
AIの理論的な部分のアイデアとはまったく別のものなので
こことかでAIのコア部分のアイデアが出れば、それをもとに
コーディングをするってのも有りかなと、かなり希望的観測だけど。
0053名前は開発中のものです。2006/09/04(月) 22:38:33ID:rb/d93oY
むふ。それはDLL作れるので作った方が楽でしょうね。

AIって評価関数のウェイトのおき方が最重要だから、
沢山テストしてパラメータを調整するのが肝なんですよねー。
将棋のbonanzaとかは自律学習させてチューニングしてたとか。
0054名前は開発中のものです。2006/09/05(火) 01:11:40ID:dKGuIFbW
CだとDLLとやらを作れるのでしょうか。
CならC++よかいくぶん簡単ですかね?
0055名前は開発中のものです。2006/09/05(火) 09:23:04ID:yCGCI2FQ
>>54
AI部分だけならCでもC++でもそんなにかわんなさそう。
0056名前は開発中のものです。2006/09/05(火) 20:41:17ID:O2M+R7/w
>>54
C++を使うにしても、継承とかややこしいの抜きで“構造体(orクラス)の一部に関数を含める”だけなら楽で便利ですよ。
0057名前は開発中のものです。2006/09/05(火) 22:32:21ID:dKGuIFbW
なるほど。ではまあ必要そうなとこだけ勉強するような形で
C++で作るのに挑戦してみようかなあ。
アドバイスありがとうございました。
hspで作れるようにする方のUPも一応待ってます。
0058名前は開発中のものです。2006/09/06(水) 01:11:35ID:VYLMn2t9
HSP で作っても構わないと思うくらいスピード無視なら、
ソースに入ってるユーティリティ使ってるうちに C++ に慣れるんじゃない?
まあ、その程度にはってことだけど。
0059東陶基2006/09/06(水) 14:45:21ID:i9L86bQE
http://irensei.com/html/game.html
の一番下にHSPでやり取りするサンプル上げときました。
0060名前は開発中のものです。2006/09/06(水) 23:39:52ID:wf2IkZaF
キター!ありがとうございます。
でもtest01.hspをコンパイル&実行してみたのですが
aiboard.binが見つからないというエラーになってしまいました。
どうしたらいいんでしょう。すいません。
0061名前は開発中のものです。2006/09/07(木) 11:24:34ID:bzBAb7h1
直接実行するんじゃなくて、囲連星から実行されるってのは分かってるのかな?
0062東陶基2006/09/07(木) 18:03:00ID:ygyuxNyD
>>60
あのサンプルはメールで問い合わせたときに
囲連星開発プログラマさんのご好意で作ってくれた
やつなのでサポート、苦情は無しでねと言われているので
ソース読んで理解出来る人は参考にって感じでお願いします。
0063東陶基2006/09/08(金) 00:24:36ID:ZQBpfvMv
関連スレにも書きましたが
先ほどとある出版社からメールが来ました。
とりあえずまだ確定ではないので名前は伏せておきますが
囲連星のゲームが雑誌に掲載されるかもしれません。
もし確定しましたら皆さんにもご案内しますので待っててください。
0064名前は開発中のものです。2006/09/10(日) 17:50:13ID:x4ykpAWB
>>63
新手のオレオレ詐欺じゃないことを祈る
0065東陶基2006/09/11(月) 14:41:09ID:OgCC47Qz
今のところ振込依頼とかは来てないです
ただ逆にその後音沙汰もないです。
なんだったんだろ・・・。
0066名前は開発中のものです。2006/09/12(火) 10:59:18ID:QMre7o8W
決まったら教えてくれ。立ち読みするから
0067名前は開発中のものです。2006/09/21(木) 15:27:32ID:WUtFsLdD
早く誰か作ってくれないかな、既存のじゃ弱いんだが
0068東陶基2006/10/01(日) 01:36:30ID:lAtwv5bM
Windows100%11月号に掲載されることになりました。
今月中旬くらいに本屋に並ぶと思うので立ち読みしてください。
0069名前は開発中のものです。2006/10/06(金) 23:00:34ID:hSbnFtwz
http://game10.2ch.net/test/read.cgi/gameama/1144035039/966-969
0070名前は開発中のものです。2006/10/11(水) 17:48:00ID:umMEQC+8
岐阜チャレンジ出てみるのも手だったかも。
対戦相手のAIが普通に7手打った所で囲連星のAIが7連作ってお終い。
で棄権。
ちょっとは話題になったかもね。
0071東陶基2006/10/12(木) 20:03:20ID:XZbj72S6
今日Windows100%が送られてきました。
意外と大きく紹介されててちょっと驚きでした。
11月号91ページです。
0072名前は開発中のものです。2006/10/13(金) 14:23:53ID:2iEbrh0+
俺のゲームも載ってたwwww
雑誌?
送られてこねぇよwwwwwwwwww
0073東陶基2006/10/13(金) 22:32:55ID:T4cl09Oa
>>72
載せる時に許可取るメールみたいなの来なかった?
そこに雑誌いる?見たいなことが書いてあったので
「要る」って返信したら送られてきた。
なんか無許可では掲載しないような感じだったけどどうなんだろね
0074名前は開発中のものです。2006/10/13(金) 23:07:22ID:qI74t+57
つか、sageを覚えようぜ
メール欄にsageと記入すればOK
0075名前は開発中のものです。2006/10/14(土) 12:24:04ID:MhfoAXz4
こうですか?わかりません(><)

なんかHPの掲示板に載せるから許可クレって書き込みがあったから
イイヨーって返信した。それ以後連絡なし。アレ?まあいいや立ち読みで確認したし
0076東陶基2006/10/15(日) 00:21:13ID:eMu4LwVs
>>75
そうそう。イイヨーって返信する時に雑誌欲しかったら住所と名前
教えてねってあったからそれを書いてイイヨーって返信した。
それ以降連絡なしは同じかな。
0077名前は開発中のものです。2006/10/17(火) 18:10:54ID:SklP/wQ3
囲連星のAI作ったら20万もらえるのか
ttp://irensei.com/html/ai.html
小銭稼ぎになるか
0078名前は開発中のものです。2006/10/17(火) 23:51:09ID:46k9HZL6
GNUGOをポートすりゃいいのでは?
0079名前は開発中のものです。2006/10/18(水) 12:11:44ID:ppAnqnR2
DLLはcdeclか
stdcallの方がアンダースコア絡みで悩まなくて済むのに
0080名前は開発中のものです。2006/10/18(水) 13:14:05ID:ppAnqnR2
stdcallだとVC系の方が_hoge@numになるんだったっけ…

cdeclにしろstdcallにしろdefで対応すれば問題ないのかな
あとで試してみよう
0081名前は開発中のものです。2006/10/19(木) 14:27:19ID:c5b0vBbb
でも20万はでかいよな
0082名前は開発中のものです。2006/10/19(木) 16:57:09ID:XPb2M8y8
ageるな、何度いったら分かるんだ
0083名前は開発中のものです。2006/10/19(木) 18:34:10ID:nCDUd7JO
sage進行なのかここ?不明だからsageとくけど
0084名前は開発中のものです。2006/10/21(土) 12:00:46ID:T+3nZLEY
AI作る以前に思考が追いつかない。
>>31>>40が必勝ってのがわからん。
0085名前は開発中のものです。2006/10/21(土) 12:59:39ID:q26QhuGB
囲碁の死活がわからないとどうしようもないのでは
囲碁板へどうぞ
0086名前は開発中のものです。2006/10/21(土) 19:42:05ID:ptZ8MB0J
>>84
>>31は、このあと白が壱、二、三or四に打って
7を作るのを黒は阻止できない
(黒が壱に打っても白五で取られてしまう)
白より早く7を作れる箇所もないので黒の負け。
┏┯┯┯┯┯┯┯┯┯┯┯┯┯┯┯┯┯┓
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼+┼┼┼┼┼+┼┼┼┼┼+┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼三┼●┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼○┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼○●●┼○┼┼┼┼┼┼┨
┠┼┼+┼┼五壱○●○○┼┼┼+┼┼┨
┠┼┼┼┼┼┼二○○●○●┼┼┼┼┼┨
┠┼┼┼┼┼┼☆●┼●●┼┼┼┼┼┼┨
┠┼┼┼┼┼┼○┼┼┼┼●┼┼┼┼┼┨
┠┼┼┼┼┼┼四┼┼┼┼●○┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼●┼┼┼┨
┠┼┼+┼┼┼┼┼+┼┼┼┼┼+┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┗┷┷┷┷┷┷┷┷┷┷┷┷┷┷┷┷┷┛
0087名前は開発中のものです。2006/10/21(土) 19:47:42ID:ptZ8MB0J
>>40は☆の行に白が7を作るのを
黒は阻止できない(黒が壱に打てば白二、
黒三なら白四で結局取られる)
黒が他に白より早く7を作れる箇所がないなら白の勝ち

┠┼┼┼┼┼●┼┼┼┼○┼┼┼┼┼┼┨
┠┼┼┼┼┼○○○○○●●┼┼┼┼┼┨
┠┼┼┼┼☆┼┼壱三┼○┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼二四┼┼┼┼┼┼┼┼┨
0088名前は開発中のものです。2006/10/21(土) 22:32:41ID:T+3nZLEY
>>86
>>87
わかりやすい解説ありがとうございます。
慣れるまでは、勝てるかどうか判断するのに時間がかかりそうです
0089名前は開発中のものです。2006/10/23(月) 16:02:27ID:A+bm/Bdd
ageるよ。

俺が思うにもし完成した場合には中途半端な強さじゃなくて
すごい強いか無茶苦茶弱いかのどっちかだと思うんだけど
そういうもんじゃないの?プログラマの人教えて
0090名前は開発中のものです。2006/10/23(月) 16:12:08ID:i3ypDPVH
そんな簡単にむちゃくちゃ強いのなんか出来んよ
0091名前は開発中のものです。2006/10/26(木) 01:17:11ID:6a5rv06/
だろうな。ただ五目並べとオセロは必勝法があるんだよな。
先手必勝だったと

そう考えるとその必勝法さえ見つければそれをプログラムすれば
おっけーってわけだ
0092名前は開発中のものです。2006/10/30(月) 20:35:43ID:A1MZzaxg
>>91
その必勝法がなかなか見つからないけどな
0093名前は開発中のものです。2006/11/02(木) 16:34:35ID:DCEi4urc
> プログラムソースの公開は、囲連星プログラムの改良を目的としています。
> そのため、第三者がこのソースを利用し作成したプログラムもまた
> オープンソースとして公開することを義務づけます。

AI作るときにAI用に提供されているAPI使った場合もソース公開しないといけないのかな?
0094名前は開発中のものです。2006/11/03(金) 06:38:49ID:7OpYRECr
どうだろうな。
DLL との通信に必要な部分は、さすがに問題ないだろう。
ユーティリティーは、あれ使ってる間は、別に公開して困るレベルじゃないんじゃない?

まあでも、内蔵 AI のソースを流用するならともかく、API つーてるのを使ってライセンス汚染はキツい気がするな。
GUI 部分のソースはどーでもいいし。


>>91
オセロ解明されたの?!!
しかも後手じゃないんだ!
俺が知ってるのは、十数手以内にどっちが勝つか分かるって話だったけど。
ソースあったらくれ。
0095名前は開発中のものです。2006/11/03(金) 22:55:47ID:cKq9ONfq
>>94
APIの使用は問題ないと思いたいですね

> ユーティリティーは、あれ使ってる間は、別に公開して困るレベルじゃないんじゃない?
確かにそうかも


練習として棋譜再生DLLを作ってみました
(AIではありませんが…)
囲連星上で棋譜の確認が出来ると以外何もありませんが、
興味があったら使ってみてください

http://gamdev.org/up/img/8017.zip
0096名前は開発中のものです。2006/11/03(金) 22:56:51ID:cKq9ONfq
×出来ると以外
○出来るという以外
0097東陶基2006/11/04(土) 16:16:41ID:U3iplasK
>>95
ツール作成ありがとうございました。
公式HPにアップしてもよいですか?

あとライセンスや著作権についてですが
一応ライセンス云々と書いていますが
基本的に作成者のご希望を優先しますのでとりあえず
気にせずガンガン開発してもらえるとうれしいです。
0098名前は開発中のものです。2006/11/04(土) 19:56:57ID:+xsCqS1d
>>97
> 公式HPにアップしてもよいですか?

こんなものでよろしければ、好きなようにして下さって構いません

> 基本的に作成者のご希望を優先しますのでとりあえず
> 気にせずガンガン開発してもらえるとうれしいです。

どこまで出来るかわかりませんが頑張ります
コンテストに応募できるくらいになればいいのですが…自信はありません
0099東陶基2006/11/05(日) 00:35:33ID:UPGgSUH6
>>98
もしわからない事がありましたら何でも聞いてください。
戦術、ルールなど答えられる限り対応させてもらいます。
0100名前は開発中のものです。2006/11/08(水) 17:37:12ID:Ue8x1mm1
そこそこ強いのが携帯とかで遊べたら通勤時間とかいいんだが
碁だと時間かかるし、五目並べはなんだしな
オセロでもいいっちゃいいがコンピュータにどうやっても勝てないし
0101名前は開発中のものです。2006/11/10(金) 20:12:35ID:VfSwV1Gq
弱い石をまず一子なり二子取ってそこを中心に七連を作るプログラムが
手っ取り早く強そうなんだがどうだろう
0102名前は開発中のものです。2006/11/10(金) 22:36:28ID:oXuF47/H
序盤での石を取る手の価値を大きくするのはよさそう。
0103名前は開発中のものです。2006/11/11(土) 03:23:04ID:bcV8zHef
ただ手っ取り早いかどうかはちょっと疑問
0104名前は開発中のものです。2006/11/12(日) 06:28:33ID:rd6nlJ+0
弱い石を無理矢理取りに行って取れるくらい囲碁に明るいプログラムなら、そりゃだいぶ強いだろ。
0105名前は開発中のものです。2006/11/14(火) 14:46:12ID:wFJY+aZV
ところでサンプル通りに作れば動くことは動くのかな?
だれか少しでも動かせた人教えて
0106名前は開発中のものです。2006/11/14(火) 16:35:24ID:joH2PqKq
>>104
囲碁のプログラムって序盤で一子(取れることも少ないんだろうけど囲碁の序盤だと)
を取りにいけても無理に取りに行かないんじゃない?
なんか囲碁のプログラムの難しいのは石を取りに行くより地とか厚みの方が
有効だったりするからだろうなと思ったり。
なので結構取れる石ってある気もするんだけどね。
0107名前は開発中のものです。2006/11/14(火) 18:50:27ID:FoxSdXbp
ルールわからないから作れない。

詳しいルールブックないの?
そもそも囲碁なの?
0108名前は開発中のものです。2006/11/14(火) 19:28:21ID:x04N9JY7
囲碁+連珠で囲連星です。
ルールは公式HPに載ってます。
http://irensei.com/html/try.html
http://irensei.com/html/rule.html
0109名前は開発中のものです。2006/11/14(火) 22:31:06ID:FoxSdXbp
ルールみたけど、分かりづらい。
囲碁のベース知ってる前提みたいだから無理だな。
0110名前は開発中のものです。2006/11/14(火) 22:57:52ID:hYN84tI7
コウのところ以外は読んだらすぐ打てそうだけどね
コウなんて囲連星じゃあんまり出ないだろうし
囲まれたら取られる7目並べでルールはOKだと思う
0111名前は開発中のものです。2006/11/15(水) 00:17:59ID:6bXh1lvr
>>110
ためしに明日からここで作ってみるわ。
誰かルールに詳しい人サポートお願いします。
0112名前は開発中のものです。2006/11/15(水) 03:04:49ID:q3dN8+3M
>>111
おぉ〜。応援してるよ。
俺も作りかけたんだけど挫折しちまったから
代わりに賞金20万狙って
0113名前は開発中のものです。2006/11/16(木) 17:34:21ID:v1XiV2pE
今、ためしに作ってみたんだけどイマイチ自信がもてない。
この盤ゲームは一番長い連続した碁の長さを競うものなの?

で、どんなAIというか
19x19マスに情報を19x19階層分持っておく。
ターンで敵の打ったx,y,nに保存して内部に(1)もしくは(周りの数)を足す。
x,y,nの周辺に合計1~以上を検索してなかったら1以上になる位置に打つ。(ここは適当)
ターンを増すごとに階層情報が増えるので何処が重要なのかわかってくるハズ。

連続性がこの勝敗を分けるみたいだから
数の多いところを抑えて、自分はもっとも数の小さな位置からもっとも多い位置の中間を狙わせる。

考え方としてはその位置にどれだけ投資されたかっていう考え方。
このゲームではどこを狙っているのかが問題になっているし、連続性とう位置関係も解決されるハズ。

と長いけど、サンプルあとでうぷしますね。

締め切りっていつ?
0114名前は開発中のものです。2006/11/16(木) 20:36:31ID:WEY5fEp7
>>113
>この盤ゲームは一番長い連続した碁の長さを競うものなの?

違う。
ルールをしっかり読んだ方がいい。
ルールの記述は厳密さが足りないところも多々あるが、
そんな風に誤解されるほど酷いものではないと思う。
0115名前は開発中のものです。2006/11/16(木) 20:41:02ID:WEY5fEp7
ちなみに勝敗条件は

>先に七連を規定本数作った対局者を勝ちとする。
>白は長連でも七連と認める。

公式で落とせるソフトでは規定本数=1になってるね。
0116名前は開発中のものです。2006/11/16(木) 22:32:55ID:dl29CCgp
囲めば石を取れる7目並べって考えれば
そんな遠くは外れないと思う

締め切りはないんじゃないかな。随時募集みたいだよ
0117名前は開発中のものです。2006/11/16(木) 23:10:27ID:v1XiV2pE
>>114,115,116
ありがとう
もうちょっとがんばって改良するわ
0118名前は開発中のものです。2006/11/18(土) 01:58:05ID:01Ho7F5J
>>117
ところでこういうのを作る時って、どのあたりがネックになるの?
躓かないで一応打てるとこまでは直ぐ出来るのかな?
強い弱いを別としたら
0119名前は開発中のものです。2006/11/18(土) 03:18:55ID:cWdJzjpe
>>118
強い弱い別にしたら if 分でルールどおりに書いてみただけでも一応は動くよ。
ただし、その if を自動化するからこそ可能性があるのね。

ネックはやっぱりルールでしょう。
この場合は7連続がどうたらとか、囲むとか、それさえなんとかなれば強弱もなんとかなりそう。
オセロのAIなんか見てみると面白いかも。(HSP系なら落ちてるよ
0120名前は開発中のものです。2006/11/18(土) 07:10:34ID:YJI7iwNn
>>118
>>119

C++なら盤面の更新や着手可能個所の列挙などを手軽にできるAPIがあるので楽
自分で実装するのも難しいことではないね

>オセロのAIなんか見てみると面白いかも。(HSP系なら落ちてるよ

なぜHSP?というのは置いておくとして、
オセロは定番だから取っ掛かりにはなるかもしれないね
ただオセロと比べると盤面が広いのと、
着手候補数が多い(既に置かれている石の周辺だけを候補としても)のが辛いところかな。
0121名前は開発中のものです。2006/11/18(土) 15:04:13ID:WRa/ptj8
>>119
なんか着手がルールにのっとってるかどうかのチェックするAPIが
あったような気がした。ソース読んだときに。

ただ着手候補数が多いってことが逆にオセロと違ってコンピュータより
人間が強いって言う砦を守りそうな気がする
0122名前は開発中のものです。2006/11/19(日) 21:42:03ID:Kr+CveHk
これってそんなに数日とかで出来るもんなのかな?
ただGUIとかのコーディングがないからソース自体はたいした量にはならない?
0123名前は開発中のものです。2006/11/20(月) 07:15:31ID:qhaK6RTn
うん、たぶん。
0124名前は開発中のものです。2006/11/20(月) 17:42:52ID:Od7Qf+aa
出来れば作り始めた人はコテハンでカキコしてくれたらわかりいいな。

123とかがその人なら「期待して待ってるよ」ってなるけど
通りすがりのカキコだと一般論になっちゃうもんね
0125名前は開発中のものです。2006/11/23(木) 22:41:23ID:qFGim67R
囲連星のバグ報告

・対局中にメニューの「待った」と「降参」を押しても反応がない
・AIのIrenseiFinalize() が呼ばれない

前者はそれほど大きな問題でもないけど、
後者に関してはリソースの解放などにも関わる可能性があるので重要かもしれません。
ソースを調べたところ、mainform.cppの以下の箇所が原因のよう。

ASSERT( (*ai.finalize)(ai.param, ai.iout) );

関数呼び出し自体をASSERTで括ってるので、おそらくデバッグ版の囲連星でしかfinalizeが呼び出されません。
0126名前は開発中のものです。2006/11/23(木) 23:18:44ID:gK089LrS
>>125
そうなの?俺のマシンの囲連星は待ったも降参も反応してるけど
■ このスレッドは過去ログ倉庫に格納されています