フリーソフト囲連星のAIを自作してみませんか?(囲碁+連珠)
デフォルトのAIが弱いので今なら囲連星AIの第一人者になれる。
もし名人より強いAIを作成すればそのAIが名人位に。
詳しいことはソフトダウンロード後、ヘルプメニューを参考に。
作成方法:AI部分をプログラムしコンパイルしたものをファイルコピーすればOK
ソフトダウンロード:http://irensei.com/
探検
【囲碁?】囲連星のAIを作ってみよう【連珠?】
■ このスレッドは過去ログ倉庫に格納されています
2006/08/03(木) 16:13:45ID:jCmv785l
70名前は開発中のものです。
2006/10/11(水) 17:48:00ID:umMEQC+8 岐阜チャレンジ出てみるのも手だったかも。
対戦相手のAIが普通に7手打った所で囲連星のAIが7連作ってお終い。
で棄権。
ちょっとは話題になったかもね。
対戦相手のAIが普通に7手打った所で囲連星のAIが7連作ってお終い。
で棄権。
ちょっとは話題になったかもね。
71東陶基
2006/10/12(木) 20:03:20ID:XZbj72S6 今日Windows100%が送られてきました。
意外と大きく紹介されててちょっと驚きでした。
11月号91ページです。
意外と大きく紹介されててちょっと驚きでした。
11月号91ページです。
72名前は開発中のものです。
2006/10/13(金) 14:23:53ID:2iEbrh0+ 俺のゲームも載ってたwwww
雑誌?
送られてこねぇよwwwwwwwwww
雑誌?
送られてこねぇよwwwwwwwwww
73東陶基
2006/10/13(金) 22:32:55ID:T4cl09Oa >>72
載せる時に許可取るメールみたいなの来なかった?
そこに雑誌いる?見たいなことが書いてあったので
「要る」って返信したら送られてきた。
なんか無許可では掲載しないような感じだったけどどうなんだろね
載せる時に許可取るメールみたいなの来なかった?
そこに雑誌いる?見たいなことが書いてあったので
「要る」って返信したら送られてきた。
なんか無許可では掲載しないような感じだったけどどうなんだろね
2006/10/13(金) 23:07:22ID:qI74t+57
つか、sageを覚えようぜ
メール欄にsageと記入すればOK
メール欄にsageと記入すればOK
2006/10/14(土) 12:24:04ID:MhfoAXz4
こうですか?わかりません(><)
なんかHPの掲示板に載せるから許可クレって書き込みがあったから
イイヨーって返信した。それ以後連絡なし。アレ?まあいいや立ち読みで確認したし
なんかHPの掲示板に載せるから許可クレって書き込みがあったから
イイヨーって返信した。それ以後連絡なし。アレ?まあいいや立ち読みで確認したし
76東陶基
2006/10/15(日) 00:21:13ID:eMu4LwVs77名前は開発中のものです。
2006/10/17(火) 18:10:54ID:SklP/wQ3 囲連星のAI作ったら20万もらえるのか
ttp://irensei.com/html/ai.html
小銭稼ぎになるか
ttp://irensei.com/html/ai.html
小銭稼ぎになるか
78名前は開発中のものです。
2006/10/17(火) 23:51:09ID:46k9HZL6 GNUGOをポートすりゃいいのでは?
2006/10/18(水) 12:11:44ID:ppAnqnR2
DLLはcdeclか
stdcallの方がアンダースコア絡みで悩まなくて済むのに
stdcallの方がアンダースコア絡みで悩まなくて済むのに
2006/10/18(水) 13:14:05ID:ppAnqnR2
stdcallだとVC系の方が_hoge@numになるんだったっけ…
cdeclにしろstdcallにしろdefで対応すれば問題ないのかな
あとで試してみよう
cdeclにしろstdcallにしろdefで対応すれば問題ないのかな
あとで試してみよう
81名前は開発中のものです。
2006/10/19(木) 14:27:19ID:c5b0vBbb でも20万はでかいよな
2006/10/19(木) 16:57:09ID:XPb2M8y8
ageるな、何度いったら分かるんだ
2006/10/19(木) 18:34:10ID:nCDUd7JO
sage進行なのかここ?不明だからsageとくけど
2006/10/21(土) 12:00:46ID:T+3nZLEY
2006/10/21(土) 12:59:39ID:q26QhuGB
囲碁の死活がわからないとどうしようもないのでは
囲碁板へどうぞ
囲碁板へどうぞ
2006/10/21(土) 19:42:05ID:ptZ8MB0J
>>84
>>31は、このあと白が壱、二、三or四に打って
7を作るのを黒は阻止できない
(黒が壱に打っても白五で取られてしまう)
白より早く7を作れる箇所もないので黒の負け。
┏┯┯┯┯┯┯┯┯┯┯┯┯┯┯┯┯┯┓
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼+┼┼┼┼┼+┼┼┼┼┼+┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼三┼●┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼○┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼○●●┼○┼┼┼┼┼┼┨
┠┼┼+┼┼五壱○●○○┼┼┼+┼┼┨
┠┼┼┼┼┼┼二○○●○●┼┼┼┼┼┨
┠┼┼┼┼┼┼☆●┼●●┼┼┼┼┼┼┨
┠┼┼┼┼┼┼○┼┼┼┼●┼┼┼┼┼┨
┠┼┼┼┼┼┼四┼┼┼┼●○┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼●┼┼┼┨
┠┼┼+┼┼┼┼┼+┼┼┼┼┼+┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┗┷┷┷┷┷┷┷┷┷┷┷┷┷┷┷┷┷┛
>>31は、このあと白が壱、二、三or四に打って
7を作るのを黒は阻止できない
(黒が壱に打っても白五で取られてしまう)
白より早く7を作れる箇所もないので黒の負け。
┏┯┯┯┯┯┯┯┯┯┯┯┯┯┯┯┯┯┓
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼+┼┼┼┼┼+┼┼┼┼┼+┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼三┼●┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼○┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼○●●┼○┼┼┼┼┼┼┨
┠┼┼+┼┼五壱○●○○┼┼┼+┼┼┨
┠┼┼┼┼┼┼二○○●○●┼┼┼┼┼┨
┠┼┼┼┼┼┼☆●┼●●┼┼┼┼┼┼┨
┠┼┼┼┼┼┼○┼┼┼┼●┼┼┼┼┼┨
┠┼┼┼┼┼┼四┼┼┼┼●○┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼●┼┼┼┨
┠┼┼+┼┼┼┼┼+┼┼┼┼┼+┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┗┷┷┷┷┷┷┷┷┷┷┷┷┷┷┷┷┷┛
2006/10/21(土) 19:47:42ID:ptZ8MB0J
>>40は☆の行に白が7を作るのを
黒は阻止できない(黒が壱に打てば白二、
黒三なら白四で結局取られる)
黒が他に白より早く7を作れる箇所がないなら白の勝ち
┠┼┼┼┼┼●┼┼┼┼○┼┼┼┼┼┼┨
┠┼┼┼┼┼○○○○○●●┼┼┼┼┼┨
┠┼┼┼┼☆┼┼壱三┼○┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼二四┼┼┼┼┼┼┼┼┨
黒は阻止できない(黒が壱に打てば白二、
黒三なら白四で結局取られる)
黒が他に白より早く7を作れる箇所がないなら白の勝ち
┠┼┼┼┼┼●┼┼┼┼○┼┼┼┼┼┼┨
┠┼┼┼┼┼○○○○○●●┼┼┼┼┼┨
┠┼┼┼┼☆┼┼壱三┼○┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼二四┼┼┼┼┼┼┼┼┨
2006/10/21(土) 22:32:41ID:T+3nZLEY
89名前は開発中のものです。
2006/10/23(月) 16:02:27ID:A+bm/Bdd ageるよ。
俺が思うにもし完成した場合には中途半端な強さじゃなくて
すごい強いか無茶苦茶弱いかのどっちかだと思うんだけど
そういうもんじゃないの?プログラマの人教えて
俺が思うにもし完成した場合には中途半端な強さじゃなくて
すごい強いか無茶苦茶弱いかのどっちかだと思うんだけど
そういうもんじゃないの?プログラマの人教えて
2006/10/23(月) 16:12:08ID:i3ypDPVH
そんな簡単にむちゃくちゃ強いのなんか出来んよ
91名前は開発中のものです。
2006/10/26(木) 01:17:11ID:6a5rv06/ だろうな。ただ五目並べとオセロは必勝法があるんだよな。
先手必勝だったと
そう考えるとその必勝法さえ見つければそれをプログラムすれば
おっけーってわけだ
先手必勝だったと
そう考えるとその必勝法さえ見つければそれをプログラムすれば
おっけーってわけだ
92名前は開発中のものです。
2006/10/30(月) 20:35:43ID:A1MZzaxg >>91
その必勝法がなかなか見つからないけどな
その必勝法がなかなか見つからないけどな
93名前は開発中のものです。
2006/11/02(木) 16:34:35ID:DCEi4urc > プログラムソースの公開は、囲連星プログラムの改良を目的としています。
> そのため、第三者がこのソースを利用し作成したプログラムもまた
> オープンソースとして公開することを義務づけます。
AI作るときにAI用に提供されているAPI使った場合もソース公開しないといけないのかな?
> そのため、第三者がこのソースを利用し作成したプログラムもまた
> オープンソースとして公開することを義務づけます。
AI作るときにAI用に提供されているAPI使った場合もソース公開しないといけないのかな?
2006/11/03(金) 06:38:49ID:7OpYRECr
どうだろうな。
DLL との通信に必要な部分は、さすがに問題ないだろう。
ユーティリティーは、あれ使ってる間は、別に公開して困るレベルじゃないんじゃない?
まあでも、内蔵 AI のソースを流用するならともかく、API つーてるのを使ってライセンス汚染はキツい気がするな。
GUI 部分のソースはどーでもいいし。
>>91
オセロ解明されたの?!!
しかも後手じゃないんだ!
俺が知ってるのは、十数手以内にどっちが勝つか分かるって話だったけど。
ソースあったらくれ。
DLL との通信に必要な部分は、さすがに問題ないだろう。
ユーティリティーは、あれ使ってる間は、別に公開して困るレベルじゃないんじゃない?
まあでも、内蔵 AI のソースを流用するならともかく、API つーてるのを使ってライセンス汚染はキツい気がするな。
GUI 部分のソースはどーでもいいし。
>>91
オセロ解明されたの?!!
しかも後手じゃないんだ!
俺が知ってるのは、十数手以内にどっちが勝つか分かるって話だったけど。
ソースあったらくれ。
2006/11/03(金) 22:55:47ID:cKq9ONfq
>>94
APIの使用は問題ないと思いたいですね
> ユーティリティーは、あれ使ってる間は、別に公開して困るレベルじゃないんじゃない?
確かにそうかも
練習として棋譜再生DLLを作ってみました
(AIではありませんが…)
囲連星上で棋譜の確認が出来ると以外何もありませんが、
興味があったら使ってみてください
http://gamdev.org/up/img/8017.zip
APIの使用は問題ないと思いたいですね
> ユーティリティーは、あれ使ってる間は、別に公開して困るレベルじゃないんじゃない?
確かにそうかも
練習として棋譜再生DLLを作ってみました
(AIではありませんが…)
囲連星上で棋譜の確認が出来ると以外何もありませんが、
興味があったら使ってみてください
http://gamdev.org/up/img/8017.zip
2006/11/03(金) 22:56:51ID:cKq9ONfq
×出来ると以外
○出来るという以外
○出来るという以外
97東陶基
2006/11/04(土) 16:16:41ID:U3iplasK >>95
ツール作成ありがとうございました。
公式HPにアップしてもよいですか?
あとライセンスや著作権についてですが
一応ライセンス云々と書いていますが
基本的に作成者のご希望を優先しますのでとりあえず
気にせずガンガン開発してもらえるとうれしいです。
ツール作成ありがとうございました。
公式HPにアップしてもよいですか?
あとライセンスや著作権についてですが
一応ライセンス云々と書いていますが
基本的に作成者のご希望を優先しますのでとりあえず
気にせずガンガン開発してもらえるとうれしいです。
2006/11/04(土) 19:56:57ID:+xsCqS1d
>>97
> 公式HPにアップしてもよいですか?
こんなものでよろしければ、好きなようにして下さって構いません
> 基本的に作成者のご希望を優先しますのでとりあえず
> 気にせずガンガン開発してもらえるとうれしいです。
どこまで出来るかわかりませんが頑張ります
コンテストに応募できるくらいになればいいのですが…自信はありません
> 公式HPにアップしてもよいですか?
こんなものでよろしければ、好きなようにして下さって構いません
> 基本的に作成者のご希望を優先しますのでとりあえず
> 気にせずガンガン開発してもらえるとうれしいです。
どこまで出来るかわかりませんが頑張ります
コンテストに応募できるくらいになればいいのですが…自信はありません
100名前は開発中のものです。
2006/11/08(水) 17:37:12ID:Ue8x1mm1 そこそこ強いのが携帯とかで遊べたら通勤時間とかいいんだが
碁だと時間かかるし、五目並べはなんだしな
オセロでもいいっちゃいいがコンピュータにどうやっても勝てないし
碁だと時間かかるし、五目並べはなんだしな
オセロでもいいっちゃいいがコンピュータにどうやっても勝てないし
101名前は開発中のものです。
2006/11/10(金) 20:12:35ID:VfSwV1Gq 弱い石をまず一子なり二子取ってそこを中心に七連を作るプログラムが
手っ取り早く強そうなんだがどうだろう
手っ取り早く強そうなんだがどうだろう
102名前は開発中のものです。
2006/11/10(金) 22:36:28ID:oXuF47/H 序盤での石を取る手の価値を大きくするのはよさそう。
103名前は開発中のものです。
2006/11/11(土) 03:23:04ID:bcV8zHef ただ手っ取り早いかどうかはちょっと疑問
104名前は開発中のものです。
2006/11/12(日) 06:28:33ID:rd6nlJ+0 弱い石を無理矢理取りに行って取れるくらい囲碁に明るいプログラムなら、そりゃだいぶ強いだろ。
105名前は開発中のものです。
2006/11/14(火) 14:46:12ID:wFJY+aZV ところでサンプル通りに作れば動くことは動くのかな?
だれか少しでも動かせた人教えて
だれか少しでも動かせた人教えて
106名前は開発中のものです。
2006/11/14(火) 16:35:24ID:joH2PqKq >>104
囲碁のプログラムって序盤で一子(取れることも少ないんだろうけど囲碁の序盤だと)
を取りにいけても無理に取りに行かないんじゃない?
なんか囲碁のプログラムの難しいのは石を取りに行くより地とか厚みの方が
有効だったりするからだろうなと思ったり。
なので結構取れる石ってある気もするんだけどね。
囲碁のプログラムって序盤で一子(取れることも少ないんだろうけど囲碁の序盤だと)
を取りにいけても無理に取りに行かないんじゃない?
なんか囲碁のプログラムの難しいのは石を取りに行くより地とか厚みの方が
有効だったりするからだろうなと思ったり。
なので結構取れる石ってある気もするんだけどね。
107名前は開発中のものです。
2006/11/14(火) 18:50:27ID:FoxSdXbp ルールわからないから作れない。
詳しいルールブックないの?
そもそも囲碁なの?
詳しいルールブックないの?
そもそも囲碁なの?
108名前は開発中のものです。
2006/11/14(火) 19:28:21ID:x04N9JY7109名前は開発中のものです。
2006/11/14(火) 22:31:06ID:FoxSdXbp ルールみたけど、分かりづらい。
囲碁のベース知ってる前提みたいだから無理だな。
囲碁のベース知ってる前提みたいだから無理だな。
110名前は開発中のものです。
2006/11/14(火) 22:57:52ID:hYN84tI7 コウのところ以外は読んだらすぐ打てそうだけどね
コウなんて囲連星じゃあんまり出ないだろうし
囲まれたら取られる7目並べでルールはOKだと思う
コウなんて囲連星じゃあんまり出ないだろうし
囲まれたら取られる7目並べでルールはOKだと思う
111名前は開発中のものです。
2006/11/15(水) 00:17:59ID:6bXh1lvr112名前は開発中のものです。
2006/11/15(水) 03:04:49ID:q3dN8+3M113名前は開発中のものです。
2006/11/16(木) 17:34:21ID:v1XiV2pE 今、ためしに作ってみたんだけどイマイチ自信がもてない。
この盤ゲームは一番長い連続した碁の長さを競うものなの?
で、どんなAIというか
19x19マスに情報を19x19階層分持っておく。
ターンで敵の打ったx,y,nに保存して内部に(1)もしくは(周りの数)を足す。
x,y,nの周辺に合計1~以上を検索してなかったら1以上になる位置に打つ。(ここは適当)
ターンを増すごとに階層情報が増えるので何処が重要なのかわかってくるハズ。
連続性がこの勝敗を分けるみたいだから
数の多いところを抑えて、自分はもっとも数の小さな位置からもっとも多い位置の中間を狙わせる。
考え方としてはその位置にどれだけ投資されたかっていう考え方。
このゲームではどこを狙っているのかが問題になっているし、連続性とう位置関係も解決されるハズ。
と長いけど、サンプルあとでうぷしますね。
締め切りっていつ?
この盤ゲームは一番長い連続した碁の長さを競うものなの?
で、どんなAIというか
19x19マスに情報を19x19階層分持っておく。
ターンで敵の打ったx,y,nに保存して内部に(1)もしくは(周りの数)を足す。
x,y,nの周辺に合計1~以上を検索してなかったら1以上になる位置に打つ。(ここは適当)
ターンを増すごとに階層情報が増えるので何処が重要なのかわかってくるハズ。
連続性がこの勝敗を分けるみたいだから
数の多いところを抑えて、自分はもっとも数の小さな位置からもっとも多い位置の中間を狙わせる。
考え方としてはその位置にどれだけ投資されたかっていう考え方。
このゲームではどこを狙っているのかが問題になっているし、連続性とう位置関係も解決されるハズ。
と長いけど、サンプルあとでうぷしますね。
締め切りっていつ?
114名前は開発中のものです。
2006/11/16(木) 20:36:31ID:WEY5fEp7 >>113
>この盤ゲームは一番長い連続した碁の長さを競うものなの?
違う。
ルールをしっかり読んだ方がいい。
ルールの記述は厳密さが足りないところも多々あるが、
そんな風に誤解されるほど酷いものではないと思う。
>この盤ゲームは一番長い連続した碁の長さを競うものなの?
違う。
ルールをしっかり読んだ方がいい。
ルールの記述は厳密さが足りないところも多々あるが、
そんな風に誤解されるほど酷いものではないと思う。
115名前は開発中のものです。
2006/11/16(木) 20:41:02ID:WEY5fEp7 ちなみに勝敗条件は
>先に七連を規定本数作った対局者を勝ちとする。
>白は長連でも七連と認める。
公式で落とせるソフトでは規定本数=1になってるね。
>先に七連を規定本数作った対局者を勝ちとする。
>白は長連でも七連と認める。
公式で落とせるソフトでは規定本数=1になってるね。
116名前は開発中のものです。
2006/11/16(木) 22:32:55ID:dl29CCgp 囲めば石を取れる7目並べって考えれば
そんな遠くは外れないと思う
締め切りはないんじゃないかな。随時募集みたいだよ
そんな遠くは外れないと思う
締め切りはないんじゃないかな。随時募集みたいだよ
117名前は開発中のものです。
2006/11/16(木) 23:10:27ID:v1XiV2pE118名前は開発中のものです。
2006/11/18(土) 01:58:05ID:01Ho7F5J119名前は開発中のものです。
2006/11/18(土) 03:18:55ID:cWdJzjpe >>118
強い弱い別にしたら if 分でルールどおりに書いてみただけでも一応は動くよ。
ただし、その if を自動化するからこそ可能性があるのね。
ネックはやっぱりルールでしょう。
この場合は7連続がどうたらとか、囲むとか、それさえなんとかなれば強弱もなんとかなりそう。
オセロのAIなんか見てみると面白いかも。(HSP系なら落ちてるよ
強い弱い別にしたら if 分でルールどおりに書いてみただけでも一応は動くよ。
ただし、その if を自動化するからこそ可能性があるのね。
ネックはやっぱりルールでしょう。
この場合は7連続がどうたらとか、囲むとか、それさえなんとかなれば強弱もなんとかなりそう。
オセロのAIなんか見てみると面白いかも。(HSP系なら落ちてるよ
120名前は開発中のものです。
2006/11/18(土) 07:10:34ID:YJI7iwNn121名前は開発中のものです。
2006/11/18(土) 15:04:13ID:WRa/ptj8 >>119
なんか着手がルールにのっとってるかどうかのチェックするAPIが
あったような気がした。ソース読んだときに。
ただ着手候補数が多いってことが逆にオセロと違ってコンピュータより
人間が強いって言う砦を守りそうな気がする
なんか着手がルールにのっとってるかどうかのチェックするAPIが
あったような気がした。ソース読んだときに。
ただ着手候補数が多いってことが逆にオセロと違ってコンピュータより
人間が強いって言う砦を守りそうな気がする
122名前は開発中のものです。
2006/11/19(日) 21:42:03ID:Kr+CveHk これってそんなに数日とかで出来るもんなのかな?
ただGUIとかのコーディングがないからソース自体はたいした量にはならない?
ただGUIとかのコーディングがないからソース自体はたいした量にはならない?
123名前は開発中のものです。
2006/11/20(月) 07:15:31ID:qhaK6RTn うん、たぶん。
124名前は開発中のものです。
2006/11/20(月) 17:42:52ID:Od7Qf+aa 出来れば作り始めた人はコテハンでカキコしてくれたらわかりいいな。
123とかがその人なら「期待して待ってるよ」ってなるけど
通りすがりのカキコだと一般論になっちゃうもんね
123とかがその人なら「期待して待ってるよ」ってなるけど
通りすがりのカキコだと一般論になっちゃうもんね
125名前は開発中のものです。
2006/11/23(木) 22:41:23ID:qFGim67R 囲連星のバグ報告
・対局中にメニューの「待った」と「降参」を押しても反応がない
・AIのIrenseiFinalize() が呼ばれない
前者はそれほど大きな問題でもないけど、
後者に関してはリソースの解放などにも関わる可能性があるので重要かもしれません。
ソースを調べたところ、mainform.cppの以下の箇所が原因のよう。
ASSERT( (*ai.finalize)(ai.param, ai.iout) );
関数呼び出し自体をASSERTで括ってるので、おそらくデバッグ版の囲連星でしかfinalizeが呼び出されません。
・対局中にメニューの「待った」と「降参」を押しても反応がない
・AIのIrenseiFinalize() が呼ばれない
前者はそれほど大きな問題でもないけど、
後者に関してはリソースの解放などにも関わる可能性があるので重要かもしれません。
ソースを調べたところ、mainform.cppの以下の箇所が原因のよう。
ASSERT( (*ai.finalize)(ai.param, ai.iout) );
関数呼び出し自体をASSERTで括ってるので、おそらくデバッグ版の囲連星でしかfinalizeが呼び出されません。
126名前は開発中のものです。
2006/11/23(木) 23:18:44ID:gK089LrS >>125
そうなの?俺のマシンの囲連星は待ったも降参も反応してるけど
そうなの?俺のマシンの囲連星は待ったも降参も反応してるけど
127名前は開発中のものです。
2006/11/24(金) 07:04:57ID:BHZl7FE+128名前は開発中のものです。
2006/11/24(金) 16:19:03ID:c9qtHXRI メニューバーの方ね。それは確かに反応してない。
単純に関数の呼び忘れなのかな?
単純に関数の呼び忘れなのかな?
129東陶基
2006/11/25(土) 14:15:44ID:gMQX1G4F >>先日対局したAI開発者さんへ
この前はAIありがとうございました。
AIと対局してみたのですが、多分石が当たられたときに逃げないのが
弱い一因かなと。
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼+┼┼┼┼┼○┼┼┼┼┼+┼┼┨
┠┼┼┼┼┼┼┼☆●○┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
の時に
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼+┼┼┼┼┼○┼┼┼┼┼+┼┼┨
┠┼┼┼┼┼┼┼○●○┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼★┼┼┼┼┼┼┼┼┨
と単純に逃げるだけでも強さが改善されるのではないかと。
もちろん7を作れるとか6を止めるとかの方が優先順位は高いと思いますが、
石を取られるのを避けるというのもかなり優先順位が高いと思うので
参考までに。また強くなったらテストさせて下さい。
>>125
そうですね。機会があれば直してもらいます
この前はAIありがとうございました。
AIと対局してみたのですが、多分石が当たられたときに逃げないのが
弱い一因かなと。
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼+┼┼┼┼┼○┼┼┼┼┼+┼┼┨
┠┼┼┼┼┼┼┼☆●○┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
の時に
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼+┼┼┼┼┼○┼┼┼┼┼+┼┼┨
┠┼┼┼┼┼┼┼○●○┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼★┼┼┼┼┼┼┼┼┨
と単純に逃げるだけでも強さが改善されるのではないかと。
もちろん7を作れるとか6を止めるとかの方が優先順位は高いと思いますが、
石を取られるのを避けるというのもかなり優先順位が高いと思うので
参考までに。また強くなったらテストさせて下さい。
>>125
そうですね。機会があれば直してもらいます
130名前は開発中のものです。
2006/11/25(土) 19:29:40ID:38GyqH59 >>129
アドバイスありがとうございます。
この前のAIは何手先まで読めるかを試す程度で、
特に五六七以外のチェックはしていないので、アタリなどの判定はこれから実装予定です。
現状では、この前より少しばかり高速化してさらに一手先を読むことができるようになったので、
今のAIには七割くらいは勝てるようになりました。
が、人間が打っても強くなったとは実感できない程度だと思います。
幾つかあるアイディアを実装すればもう少し強くなるとは思いますが、
大幅に強くなるようなブレイクスルーの見込みはないですね。
アドバイスありがとうございます。
この前のAIは何手先まで読めるかを試す程度で、
特に五六七以外のチェックはしていないので、アタリなどの判定はこれから実装予定です。
現状では、この前より少しばかり高速化してさらに一手先を読むことができるようになったので、
今のAIには七割くらいは勝てるようになりました。
が、人間が打っても強くなったとは実感できない程度だと思います。
幾つかあるアイディアを実装すればもう少し強くなるとは思いますが、
大幅に強くなるようなブレイクスルーの見込みはないですね。
131名前は開発中のものです。
2006/11/26(日) 02:59:30ID:uJ6SHQyd 機械対機械で7割とかって人間みたいなバランスになるんだな。
なんか強い方が99パーセント勝ちみたいなのかと思ってた
なんか強い方が99パーセント勝ちみたいなのかと思ってた
132名前は開発中のものです。
2006/11/26(日) 20:12:53ID:mBIvFjNh >>131
明らかに強ければ99%勝ちになるとおもうのですが、
現段階ではそれだけ微妙な差しかないレベルってことだと思います。
公式サイト以外で囲連星の棋譜が手に入るところってありませんか?
まだ囲連星に不慣れなので、いろいろな棋譜を見て調べてみたいと思っています。
明らかに強ければ99%勝ちになるとおもうのですが、
現段階ではそれだけ微妙な差しかないレベルってことだと思います。
公式サイト以外で囲連星の棋譜が手に入るところってありませんか?
まだ囲連星に不慣れなので、いろいろな棋譜を見て調べてみたいと思っています。
133東陶基
2006/11/26(日) 22:01:10ID:Lzr5AN0a >>130
今のAIより強くなったんですか?
凄いですね。もし良かったら適当なところで一旦メールで
送ってもらえると嬉しいです。もしくはUPしたURLを書き込んでおいて
もらってもいいのですが。
そうすればまた何か気になるところがあれば報告出来るかなと。
ただAI同士でなく人間との対戦の場合は必勝形を作る、防ぐと言うのが
かなり効率的です。
今のAIより強くなったんですか?
凄いですね。もし良かったら適当なところで一旦メールで
送ってもらえると嬉しいです。もしくはUPしたURLを書き込んでおいて
もらってもいいのですが。
そうすればまた何か気になるところがあれば報告出来るかなと。
ただAI同士でなく人間との対戦の場合は必勝形を作る、防ぐと言うのが
かなり効率的です。
134東陶基
2006/11/26(日) 22:04:01ID:Lzr5AN0a 詳しくはこのスレの前半にあるのですが
┠┼┼┼┼┼┼○○○○┼┼┼┼┼┼┼┨
┠┼┼┼┼┼○┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
もしこの状況の場合、白なら
┠┼┼┼┼┼┼○○○○┼┼┼┼┼┼┼┨
┠┼┼┼┼┼○┼┼┼┼☆┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
黒なら下の二箇所のいずれかに打つのが有効です。
┠┼┼┼┼┼┼○○○○┼┼┼┼┼┼┼┨
┠┼┼┼┼┼○┼┼┼★★┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼○○○○┼┼┼┼┼┼┼┨
┠┼┼┼┼┼○┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
もしこの状況の場合、白なら
┠┼┼┼┼┼┼○○○○┼┼┼┼┼┼┼┨
┠┼┼┼┼┼○┼┼┼┼☆┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
黒なら下の二箇所のいずれかに打つのが有効です。
┠┼┼┼┼┼┼○○○○┼┼┼┼┼┼┼┨
┠┼┼┼┼┼○┼┼┼★★┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
135東陶基
2006/11/26(日) 22:07:44ID:Lzr5AN0a 白の場合は上の状況から黒止め、白伸ばして
┠┼┼┼┼┼┼○○○○┼┼┼┼┼┼┼┨
┠┼┼┼┼☆○┼┼┼┼○●┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
となりあとは白の4連の下の部分を埋めていけば7が作れます。
黒がそこに打ってきた場合はその下から白で抑えていけば
石が取れるようになります。
人間との対戦の時はこの勝ち方(負け方)が多くなるので
その形の一手前を認識できれば相当強いはずですが
今のAIを作る時にそれは難しいと言うことで出来ませんでした。
┠┼┼┼┼┼┼○○○○┼┼┼┼┼┼┼┨
┠┼┼┼┼☆○┼┼┼┼○●┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
となりあとは白の4連の下の部分を埋めていけば7が作れます。
黒がそこに打ってきた場合はその下から白で抑えていけば
石が取れるようになります。
人間との対戦の時はこの勝ち方(負け方)が多くなるので
その形の一手前を認識できれば相当強いはずですが
今のAIを作る時にそれは難しいと言うことで出来ませんでした。
136東陶基
2006/11/26(日) 22:09:16ID:Lzr5AN0a あと棋譜ですがiGoの方に対局そのものはあるのですが
いつまで保存してるのか不明なので今から検索してきます。
もしあったら、何かの方法でお知らせ出来るようにしてみます。
いつまで保存してるのか不明なので今から検索してきます。
もしあったら、何かの方法でお知らせ出来るようにしてみます。
137東陶基
2006/11/27(月) 14:05:33ID:G4X+XEGU 棋譜発見しました。
iGo棋院にログインして棋譜検索ボタンがありますので
そこで東陶基で検索してください。日付は2005年からあります。
まだそこで検索された対局者で再度検索すると東陶基以外との
対局もたくさん出てきますので棋譜の量はある程度そろうと思います。
iGo棋院にログインして棋譜検索ボタンがありますので
そこで東陶基で検索してください。日付は2005年からあります。
まだそこで検索された対局者で再度検索すると東陶基以外との
対局もたくさん出てきますので棋譜の量はある程度そろうと思います。
138名前は開発中のものです。
2006/11/27(月) 18:51:19ID:Iv5AIjKv 棋譜ここにもあります。
http://www.gokgs.com/gameArchives.jsp?user=mosa
対局形式が自由碁の奴はだいたいそう。
(公式戦は碁の棋譜です。)
7月は結構ある。他の月もちらほら。
http://www.gokgs.com/gameArchives.jsp?user=mosa
対局形式が自由碁の奴はだいたいそう。
(公式戦は碁の棋譜です。)
7月は結構ある。他の月もちらほら。
139名前は開発中のものです。
2006/11/28(火) 00:09:55ID:5UFQP7BS140名前は開発中のものです。
2006/11/30(木) 00:08:17ID:T3nR+v4P このまま行くと俺がゲームにお手上げの日も近いか?
141名前は開発中のものです。
2006/11/30(木) 01:31:47ID:yzWH9DL2 iGoの棋譜をUPしました。
http://gamdev.org/up/img/8252.zip
iGoは検索結果の棋譜の一括ダウンロード機能などはないんですね。
最初は手作業で一つ一つsgfファイルを作っていたのですが、
量が多くて大変そうだったので、機械的に処理してsgfを生成しました。
中身をチェックしていないので囲碁の棋譜があったりするかもしれませんが、
それでも良ければ参考にどうぞ。
http://gamdev.org/up/img/8252.zip
iGoは検索結果の棋譜の一括ダウンロード機能などはないんですね。
最初は手作業で一つ一つsgfファイルを作っていたのですが、
量が多くて大変そうだったので、機械的に処理してsgfを生成しました。
中身をチェックしていないので囲碁の棋譜があったりするかもしれませんが、
それでも良ければ参考にどうぞ。
142名前は開発中のものです。
2006/11/30(木) 07:33:34ID:6qb4PAvZ 上の棋譜を用いて何らかの統計情報を得たいと考えています。
例えば>>129のような状況で逃げる手を打つ確率などです。
人間が特定の状況で打ちやすい手というのは他にもあると思うのですが、
なかなか思いつかないので、何か知っていることや気づくことがあったら教えてください。
極端な例を挙げると、六がある状況で七を作る確率などもそうですね。
これは統計を取らずに100%とした方が良いかと思いますが。
例えば>>129のような状況で逃げる手を打つ確率などです。
人間が特定の状況で打ちやすい手というのは他にもあると思うのですが、
なかなか思いつかないので、何か知っていることや気づくことがあったら教えてください。
極端な例を挙げると、六がある状況で七を作る確率などもそうですね。
これは統計を取らずに100%とした方が良いかと思いますが。
143東陶基
2006/11/30(木) 15:00:14ID:B1P802zQ そうですね。あるとしたら
1.5を作るより取れる石があった場合は取る
2.必勝形を作られてほぼ負けの状態でも自分に4,5がある場合は
それを5,6にして糸口を見つける
3.シチョウを見つけた場合、追っていってもし相手の7が先に出来てしまう
場合は追わない、それ以外は追って取りにいく
1.5を作るより取れる石があった場合は取る
2.必勝形を作られてほぼ負けの状態でも自分に4,5がある場合は
それを5,6にして糸口を見つける
3.シチョウを見つけた場合、追っていってもし相手の7が先に出来てしまう
場合は追わない、それ以外は追って取りにいく
144名前は開発中のものです。
2006/11/30(木) 18:00:47ID:bXPAMEFd 5を止める時にどっちに止めると有利かも考えて止めてくれるといいね
145名前は開発中のものです。
2006/11/30(木) 18:50:06ID:tFGdXUOn >>143
1に関しては統計とって見たほうが良さそうですね。
2, 3に関しては統計を取るまでもなく、ほぼ100%そうするべきという感じでしょうか?
必勝形やシチョウの判定ができればの話ですが。
ちなみに確率は探索の深さに影響させる予定です。
今現在は探索深さを固定しているのですが、
候補手が多いこともあって全然深読みできません。
これを解決するために確率を用います。
より人間が打つ可能性の高い手に関しては深く読み、
可能性の低い手は早めに探索を打ち切るという風に考えています。
1に関しては統計とって見たほうが良さそうですね。
2, 3に関しては統計を取るまでもなく、ほぼ100%そうするべきという感じでしょうか?
必勝形やシチョウの判定ができればの話ですが。
ちなみに確率は探索の深さに影響させる予定です。
今現在は探索深さを固定しているのですが、
候補手が多いこともあって全然深読みできません。
これを解決するために確率を用います。
より人間が打つ可能性の高い手に関しては深く読み、
可能性の低い手は早めに探索を打ち切るという風に考えています。
146名前は開発中のものです。
2006/11/30(木) 18:51:04ID:tFGdXUOn 確率を用いるにあたって問題点もあります。
今、確率の対象として挙げている事象は排反事象ではありません。
棋譜からある事象の確率を統計的に算出しても、他の事象の影響を受けているため、
当てにならないかもしれません。
算出した確率を無理矢理用いるにしても>>143の1は、
A. 5を作れる場合に5を作る事象
B. 取れる石があった場合に取る事象
の2つを合わせたものです。
それぞれの確率をP(A), P(B)と仮定したときに、
5を作る確率と石を取る確率はそれぞれどのような求めれば良いのやら。
確率に関してそれ程あかるいわけではないので、
根本的に間違っているところがあるかもしれませんが、
今考えているのはだいたいこんなところです。
今、確率の対象として挙げている事象は排反事象ではありません。
棋譜からある事象の確率を統計的に算出しても、他の事象の影響を受けているため、
当てにならないかもしれません。
算出した確率を無理矢理用いるにしても>>143の1は、
A. 5を作れる場合に5を作る事象
B. 取れる石があった場合に取る事象
の2つを合わせたものです。
それぞれの確率をP(A), P(B)と仮定したときに、
5を作る確率と石を取る確率はそれぞれどのような求めれば良いのやら。
確率に関してそれ程あかるいわけではないので、
根本的に間違っているところがあるかもしれませんが、
今考えているのはだいたいこんなところです。
147名前は開発中のものです。
2006/11/30(木) 20:19:38ID:bXPAMEFd148名前は開発中のものです。
2006/11/30(木) 21:49:23ID:hC6zGV8H 当然解析ずみのはず。
囲碁のなかでは一番計算機が得意な分野でしょ。
みたことないけど、GnuGoの中にも当然そういうルーチンは入っていると思う。
囲碁のなかでは一番計算機が得意な分野でしょ。
みたことないけど、GnuGoの中にも当然そういうルーチンは入っていると思う。
149名前は開発中のものです。
2006/11/30(木) 23:23:29ID:tFGdXUOn 囲碁に関しては無知で、シチョウについても最近知ったばかりなのですが、
階段状に斜めに進んでいくものだけしかないって解釈でいいのかな?
最悪、着手範囲を限定して探索すれば判断できそう
階段状に斜めに進んでいくものだけしかないって解釈でいいのかな?
最悪、着手範囲を限定して探索すれば判断できそう
150名前は開発中のものです。
2006/11/30(木) 23:52:54ID:hC6zGV8H それで十分だと思う
碁だと途中で折り曲がったりするのも考えられるんだけど、
囲連星ではそんなの出てこないでしょ。
追ってく先に既に石があることはあんまりないから。
碁だと途中で折り曲がったりするのも考えられるんだけど、
囲連星ではそんなの出てこないでしょ。
追ってく先に既に石があることはあんまりないから。
151東陶基
2006/12/01(金) 00:26:41ID:aHfRZra/ 5を作るより石を取ったほうがいいと感じるのは
どうせ止められる5を作るよりは石を取っといたほうが
勝つ確率が高いような気がしたので書いただけなので
もちろん状況によってはそうじゃない場合も多いと思います。
あとシチョウもそうなのですが石を取れる手筋というのが
定石化してるようです。
ただそれをプログラムに取り込むときはどうするのかはわからないです。
そのパターンを1つ1つチェックしていくというのはプログラムとして
違和感はあるのですがそれしかないのかなと思ったりも。
必勝形も多分同様な気がします。
どうせ止められる5を作るよりは石を取っといたほうが
勝つ確率が高いような気がしたので書いただけなので
もちろん状況によってはそうじゃない場合も多いと思います。
あとシチョウもそうなのですが石を取れる手筋というのが
定石化してるようです。
ただそれをプログラムに取り込むときはどうするのかはわからないです。
そのパターンを1つ1つチェックしていくというのはプログラムとして
違和感はあるのですがそれしかないのかなと思ったりも。
必勝形も多分同様な気がします。
152東陶基
2006/12/01(金) 00:32:53ID:aHfRZra/ 追記ですがこの前応募してもらった11月分のAIですが
あれで決定でもいいのですが、多分最優秀AI+対人初級ということで
公開するとなるとダウンロードされることになると思うのですが
もうちょっと手を入れたバージョンにしますか?
「待った」のところとかもありましたのでダウンロードするに当たって
もうちょっと改善したところで公表にしてという事であれば
全然待ちますけど。多分あのままダウンロードすると
「待った」が効かないよという書き込みとかも出ると思うので。
あれで決定でもいいのですが、多分最優秀AI+対人初級ということで
公開するとなるとダウンロードされることになると思うのですが
もうちょっと手を入れたバージョンにしますか?
「待った」のところとかもありましたのでダウンロードするに当たって
もうちょっと改善したところで公表にしてという事であれば
全然待ちますけど。多分あのままダウンロードすると
「待った」が効かないよという書き込みとかも出ると思うので。
153名前は開発中のものです。
2006/12/01(金) 00:54:34ID:c9tBg3iC154東陶基
2006/12/01(金) 15:35:54ID:mqhncX4t155名前は開発中のものです。
2006/12/02(土) 10:43:59ID:9bHh1U4H ガイシュツかもしれませんが、一応つっこんでおきます
以下はirensei-aii.zipのaiapiフォルダのgame.cppの一部ですが、
Game::Game() : rule( *MakeDefaultIrenseiRuleDescriptionVer100(static_cast<void*>(&IRENSEI_RULE_DESCRIPTION())) )
{board = new Board; //注1
Reset();}
Game::Game( const Game & other ):
rule( other.rule ),
nextOrder( other.nextOrder ),
board( other.board ), //注2
cntNuki( other.cntNuki ),
moves( other.moves ){}
以下はirensei-aii.zipのaiapiフォルダのgame.cppの一部ですが、
Game::Game() : rule( *MakeDefaultIrenseiRuleDescriptionVer100(static_cast<void*>(&IRENSEI_RULE_DESCRIPTION())) )
{board = new Board; //注1
Reset();}
Game::Game( const Game & other ):
rule( other.rule ),
nextOrder( other.nextOrder ),
board( other.board ), //注2
cntNuki( other.cntNuki ),
moves( other.moves ){}
156名前は開発中のものです。
2006/12/02(土) 10:44:50ID:9bHh1U4H これはまずいんじゃないでしょうか?
(注1)newしたものをdeleteしていない。
Javaとかと違って、newで確保した変数は自動的には破棄されなかったと
思います。メモリリークの原因になるので、
デストラクタとかでdelete boardした方がいいと思います。
(注2)ポインタをコピーしている
このままだとGame hoge1 = new Game(hoge2);
としたときにhoge1.board == hoge2.boardになってしまいます。
これは多分意図した仕様ではないと思うので、
board = new Board;
*board = *(other.board)
とした方がいい気がします。
以上、通りすがりのお節介でした。
ガイシュツだったらごめんなさい
(注1)newしたものをdeleteしていない。
Javaとかと違って、newで確保した変数は自動的には破棄されなかったと
思います。メモリリークの原因になるので、
デストラクタとかでdelete boardした方がいいと思います。
(注2)ポインタをコピーしている
このままだとGame hoge1 = new Game(hoge2);
としたときにhoge1.board == hoge2.boardになってしまいます。
これは多分意図した仕様ではないと思うので、
board = new Board;
*board = *(other.board)
とした方がいい気がします。
以上、通りすがりのお節介でした。
ガイシュツだったらごめんなさい
157名前は開発中のものです。
2006/12/02(土) 10:50:23ID:9bHh1U4H おっと間違い
Game::rule() の中で、すでにnew Boardしているので、
コピーコンストラクタの中で再びnew Boardはしなくていいですね
Game::rule() の中で、すでにnew Boardしているので、
コピーコンストラクタの中で再びnew Boardはしなくていいですね
158東陶基
2006/12/02(土) 17:51:03ID:YSYCWbvz ご指摘ありがとうございます。
自分だと完全には理解出来てないので
今度バージョンアップする時に見てもらうようにします。
そういえば前もそんな指摘があったのでそれもまとめて修正しよう
それと今日20時iGoにて対局です。奮ってご参加を
自分だと完全には理解出来てないので
今度バージョンアップする時に見てもらうようにします。
そういえば前もそんな指摘があったのでそれもまとめて修正しよう
それと今日20時iGoにて対局です。奮ってご参加を
159名前は開発中のものです。
2006/12/03(日) 10:08:07ID:u9MJAUlc 昨日はお疲れさまでした。
今度参加する機会があったら一勝はしたいです。
さて、昨日話した今までに見つけたバグですが
mainform.cppのListPlayerTypes()の中の
HMODULE hmod = LoadLibrary( itor->c_str() );
if ( hmod && MakeIrenseiAiDesc( &player, hmod ) ) {
playerTypes.push_back( player );
aiModules.push_back( hmod );
}
この部分。
LoadLibrary()が成功(hmod != NULL)して、必須関数がDLL中にない(MakeIrenseiAiDesc()が0を返す)場合に、
FreeLibrary()で解放すべきですが、呼び出していません。
もう一つ。
DLLの検索パスがカレントディレクトリになっているので、
プログラム実行中にカレントディレクトリが変更されると「新規対局」でAIがリストアップされません。
検索パスは実行ファイルのパスで行うべきだと思います。
以上、小さなバグですが報告しておきます。
今度参加する機会があったら一勝はしたいです。
さて、昨日話した今までに見つけたバグですが
mainform.cppのListPlayerTypes()の中の
HMODULE hmod = LoadLibrary( itor->c_str() );
if ( hmod && MakeIrenseiAiDesc( &player, hmod ) ) {
playerTypes.push_back( player );
aiModules.push_back( hmod );
}
この部分。
LoadLibrary()が成功(hmod != NULL)して、必須関数がDLL中にない(MakeIrenseiAiDesc()が0を返す)場合に、
FreeLibrary()で解放すべきですが、呼び出していません。
もう一つ。
DLLの検索パスがカレントディレクトリになっているので、
プログラム実行中にカレントディレクトリが変更されると「新規対局」でAIがリストアップされません。
検索パスは実行ファイルのパスで行うべきだと思います。
以上、小さなバグですが報告しておきます。
160東陶基
2006/12/04(月) 00:36:05ID:NCJ8uVrU >>159
昨日はお疲れ様でした。
多分いつか1勝を挙げる日が来ますよ・・・きっと。
というより序盤を研究してる人とかはいなそうなので
逆に勝てるかもしれないですね。
バグの件了解しました。
もし可能でしたらバグを何かにまとめておいて
いつかメールで送ってもらえますでしょうか?
今度本体を作り直すときにまとめてやってもらうので。
昨日はお疲れ様でした。
多分いつか1勝を挙げる日が来ますよ・・・きっと。
というより序盤を研究してる人とかはいなそうなので
逆に勝てるかもしれないですね。
バグの件了解しました。
もし可能でしたらバグを何かにまとめておいて
いつかメールで送ってもらえますでしょうか?
今度本体を作り直すときにまとめてやってもらうので。
161名前は開発中のものです。
2006/12/05(火) 01:33:23ID:lMp+K4vd162東陶基
2006/12/05(火) 14:35:59ID:MFe0ONST 新しいAI試してみました。
もしかしたらこれで必勝形さえ取り込めれば初心者では
なかなか勝てないレベルになるのかも。
気付いた点を上げておきますと
@コンピュータ同士で対戦させると中盤は考慮時間が長くなるのだが後半はまた一気に
早くなる。
A7連の防御に関しては既存のAIの方が良い点がある
B斜めが多用されているが、縦横の方が強そう
C既にほぼ自分のエリアの場所に石を打って5とかを作りに行く
D自分が石を取れる状態と相手が取れる状態が重なった時に逃げてしまう
参考までにここから先行ダウンロードできます。解凍してirensei.exeと同じフォルダにコピーしてね
ttp://irensei.com/program/ai-lv1.zip
皆さんのご意見もどしどし待ってます。
もしかしたらこれで必勝形さえ取り込めれば初心者では
なかなか勝てないレベルになるのかも。
気付いた点を上げておきますと
@コンピュータ同士で対戦させると中盤は考慮時間が長くなるのだが後半はまた一気に
早くなる。
A7連の防御に関しては既存のAIの方が良い点がある
B斜めが多用されているが、縦横の方が強そう
C既にほぼ自分のエリアの場所に石を打って5とかを作りに行く
D自分が石を取れる状態と相手が取れる状態が重なった時に逃げてしまう
参考までにここから先行ダウンロードできます。解凍してirensei.exeと同じフォルダにコピーしてね
ttp://irensei.com/program/ai-lv1.zip
皆さんのご意見もどしどし待ってます。
163名前は開発中のものです。
2006/12/05(火) 14:43:21ID:MFe0ONST ちょっと詳細に解説しますと
Aについては組込のAIだと
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼○○┼┼┼┼┼┼┼┼┨
┠┼┼┼☆┼┼┼┼┼○●┼┼┼┼┼┼┨
┠┼┼┼┼┼○┼┼┼┼┼┼┼┼┼┼┼┨
と打つと
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼○○┼┼┼┼┼┼┼┼┨
┠┼┼┼○★┼┼┼┼○●┼┼┼┼┼┼┨
┠┼┼┼┼┼○┼┼┼┼┼┼┼┼┼┼┼┨
このように止めてきます。
多分必勝形を認識してるのでなく
打たれた白と他の白との間で7連が出来る可能性があって
なおかつその間に黒が無い場合には止めるとかって感じではないのかと
思っているのですがこれはこれで優れている防御法だと思いますので
参考までに。
※ただ不思議なことに既存のAIだとその★を取りに行こうとした場合に
黒が逃げに行かないと言う欠点があるのでなんですが。
その点は今回のAIはアタリは逃げるので良いです。
ちなみに今回のAIだと☆に打った場合、黒はほぼ自分の攻めの手を打ってます。
Aについては組込のAIだと
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼○○┼┼┼┼┼┼┼┼┨
┠┼┼┼☆┼┼┼┼┼○●┼┼┼┼┼┼┨
┠┼┼┼┼┼○┼┼┼┼┼┼┼┼┼┼┼┨
と打つと
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼○○┼┼┼┼┼┼┼┼┨
┠┼┼┼○★┼┼┼┼○●┼┼┼┼┼┼┨
┠┼┼┼┼┼○┼┼┼┼┼┼┼┼┼┼┼┨
このように止めてきます。
多分必勝形を認識してるのでなく
打たれた白と他の白との間で7連が出来る可能性があって
なおかつその間に黒が無い場合には止めるとかって感じではないのかと
思っているのですがこれはこれで優れている防御法だと思いますので
参考までに。
※ただ不思議なことに既存のAIだとその★を取りに行こうとした場合に
黒が逃げに行かないと言う欠点があるのでなんですが。
その点は今回のAIはアタリは逃げるので良いです。
ちなみに今回のAIだと☆に打った場合、黒はほぼ自分の攻めの手を打ってます。
164東陶基
2006/12/05(火) 14:47:13ID:MFe0ONST あとCですが
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼○┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼○○┼○┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
などのばあい
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼○┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼○○☆○┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
と打ってしまうことが多いので
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼○┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼○○┼○☆┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
と打ったほうが良いのではないかと思います。
ただ打ってないけどほぼ自分のエリアというのを
判別が難しいと言われてたのでそのあたりの問題だと思いますが
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼○┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼○○┼○┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
などのばあい
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼○┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼○○☆○┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
と打ってしまうことが多いので
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼○┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼○○┼○☆┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
と打ったほうが良いのではないかと思います。
ただ打ってないけどほぼ自分のエリアというのを
判別が難しいと言われてたのでそのあたりの問題だと思いますが
165東陶基
2006/12/05(火) 14:54:56ID:MFe0ONST 最後にDですが
┠┼┼┼┼┼┼┼●┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼○●○┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼●○●┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼●○○┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼●●┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
上のシチュエーションで白が打つ場合
黒の一子を取れば問題ないのですが
┠┼┼┼┼┼┼┼●┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼○●○┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼●○●┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼●○○☆┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼●●┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
と打って逃げることが多いです。
多分優先順位がアタリから逃げるほうが石を取るより
優先されてるのだと思いますが石を取ることでアタリから逃げれる場合は
その方がいい手だと思います。
細かい点ですが打っていると「うん?」と思ってしまう個所なので。
色々すいませんが参考にしてもらえると嬉しいです。
┠┼┼┼┼┼┼┼●┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼○●○┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼●○●┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼●○○┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼●●┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
上のシチュエーションで白が打つ場合
黒の一子を取れば問題ないのですが
┠┼┼┼┼┼┼┼●┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼○●○┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼●○●┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼●○○☆┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼●●┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
と打って逃げることが多いです。
多分優先順位がアタリから逃げるほうが石を取るより
優先されてるのだと思いますが石を取ることでアタリから逃げれる場合は
その方がいい手だと思います。
細かい点ですが打っていると「うん?」と思ってしまう個所なので。
色々すいませんが参考にしてもらえると嬉しいです。
166名前は開発中のものです。
2006/12/05(火) 17:58:15ID:xyJhtqbA 自分のとこではDは石を取った。
どういう分岐なのかは知らんが取ることもあるみたいだよ
どういう分岐なのかは知らんが取ることもあるみたいだよ
167東陶基
2006/12/06(水) 00:26:22ID:79l8fvrP 確かにこっちでも石取りに行ってました。すいません。
取らない時と取る時はなにか違いがあるのかな・・・。
取らない時と取る時はなにか違いがあるのかな・・・。
168名前は開発中のものです。
2006/12/06(水) 01:26:14ID:MutEDf0j >>162-167
@
通常三手読みですが思考時間が10秒を超えた次の手から二手読みに切り替えるのが原因です。
予定では、10秒まで思考し、超えた場合は探索を打ち切る方式に変更するつもりです。
(実際は最長思考秒数をユーザが変更できるようにする予定)
A
今のところ間に空きのある連候補は考慮していません。
これについては必勝形の判定を含めて策を練っているところです。
B
アタリ関連の処理(特に石を取る方)が影響してそうです。
この辺はパラメータ調整のバランスが難しいかも。
C
実装するのはもう少し先になりそうです。
D
>>165の状況なら通常は石を取りに行くと思います。
取りに行かないときは他に何か(AIにとって)優先すべき事項があったのだと思います。
@
通常三手読みですが思考時間が10秒を超えた次の手から二手読みに切り替えるのが原因です。
予定では、10秒まで思考し、超えた場合は探索を打ち切る方式に変更するつもりです。
(実際は最長思考秒数をユーザが変更できるようにする予定)
A
今のところ間に空きのある連候補は考慮していません。
これについては必勝形の判定を含めて策を練っているところです。
B
アタリ関連の処理(特に石を取る方)が影響してそうです。
この辺はパラメータ調整のバランスが難しいかも。
C
実装するのはもう少し先になりそうです。
D
>>165の状況なら通常は石を取りに行くと思います。
取りに行かないときは他に何か(AIにとって)優先すべき事項があったのだと思います。
169名前は開発中のものです。
2006/12/06(水) 01:31:01ID:MutEDf0j あと「特定条件下で五や六を止めにいかない」という致命的なバグがあります。
このバグと@に関してはすぐに実装できると思います。
A〜Cを解決するのはもう少し先、というか今月の目標といったところになると思います。
このバグと@に関してはすぐに実装できると思います。
A〜Cを解決するのはもう少し先、というか今月の目標といったところになると思います。
170東陶基
2006/12/07(木) 00:29:38ID:NnfRj7Qm 空いた時間でOKですけどね。
ただ出来ればLv1状態でのソースを取っておいてもらいたいです。
Lv1を公開したのでそれに何かあったときにその場合のソースがなくなってると
困るので。
ただ出来ればLv1状態でのソースを取っておいてもらいたいです。
Lv1を公開したのでそれに何かあったときにその場合のソースがなくなってると
困るので。
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【速報】トランプ大統領、中国の習近平国家主席を「国賓」として招待することに ★3 [ニョキニョキ★]
- 日本と中国を結ぶ12航空路線で全便欠航 中国人に最も人気の海外旅行先は日本から韓国に ★2 [ぐれ★]
- 【速報】トランプ大統領、中国の習近平国家主席を「国賓」として招待することに ★4 [ニョキニョキ★]
- 【東京・足立の車暴走】赤信号無視か 危険運転致死傷疑いも視野に捜査 逮捕された職業不詳の男性(37)は精神疾患で通院歴も ★3 [ぐれ★]
- 首相就任1か月、目立つ高市流「スピード」「独自性」…発言の率直さで危うさも [蚤の市★]
- 防衛費増額「賛成」62・8% 「反対」32・2%を大きく上回る 賛成「18~29歳で8割」世代差あらわ 産経FNN合同世論調査 ★3 [尺アジ★]
- 【実況】博衣こよりのえちえち朝こよ🧪★2
- 【実況】博衣こよりのえちえち朝こよ🧪
- 【悲報】小野田紀美さん、宇宙人みたいな服を着てしまう…また、そのことを突っ込まれブチ切れ中www [856698234]
- お前らっていつもここにいるよな
- 🏡
- ホロライブ、上場企業なのに故人を悪質ネタにして炎上 [329329848]
