【囲碁?】囲連星のAIを作ってみよう【連珠?】
■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
2006/08/03(木) 16:13:45ID:jCmv785lデフォルトのAIが弱いので今なら囲連星AIの第一人者になれる。
もし名人より強いAIを作成すればそのAIが名人位に。
詳しいことはソフトダウンロード後、ヘルプメニューを参考に。
作成方法:AI部分をプログラムしコンパイルしたものをファイルコピーすればOK
ソフトダウンロード:http://irensei.com/
0152東陶基
2006/12/01(金) 00:32:53ID:aHfRZra/あれで決定でもいいのですが、多分最優秀AI+対人初級ということで
公開するとなるとダウンロードされることになると思うのですが
もうちょっと手を入れたバージョンにしますか?
「待った」のところとかもありましたのでダウンロードするに当たって
もうちょっと改善したところで公表にしてという事であれば
全然待ちますけど。多分あのままダウンロードすると
「待った」が効かないよという書き込みとかも出ると思うので。
0153名前は開発中のものです。
2006/12/01(金) 00:54:34ID:c9tBg3iCなるほど。レスありがとうございました。
>>151
> そのパターンを1つ1つチェックしていくというのはプログラムとして
> 違和感はあるのですがそれしかないのかなと思ったりも。
確かにやりたくないことではありますね。
どうしても探索深さが限られて先読みできないので苦労することは多いです。
>>152
もう12月なんですね。
もう少し改良したいので、土日まで待っていただけるとありがたいです。
0154東陶基
2006/12/01(金) 15:35:54ID:mqhncX4tはい、のんびり待ってますので急がずゆっくりでいいですよ。
今月半ばくらいまでなら全然平気ですので
岐阜チャレンジとかに囲連星部門とか出来ないかな。
今度問い合わせてみよう
0155名前は開発中のものです。
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 ){}
0156名前は開発中のものです。
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)
とした方がいい気がします。
以上、通りすがりのお節介でした。
ガイシュツだったらごめんなさい
0157名前は開発中のものです。
2006/12/02(土) 10:50:23ID:9bHh1U4HGame::rule() の中で、すでにnew Boardしているので、
コピーコンストラクタの中で再びnew Boardはしなくていいですね
0158東陶基
2006/12/02(土) 17:51:03ID:YSYCWbvz自分だと完全には理解出来てないので
今度バージョンアップする時に見てもらうようにします。
そういえば前もそんな指摘があったのでそれもまとめて修正しよう
それと今日20時iGoにて対局です。奮ってご参加を
0159名前は開発中のものです。
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がリストアップされません。
検索パスは実行ファイルのパスで行うべきだと思います。
以上、小さなバグですが報告しておきます。
0160東陶基
2006/12/04(月) 00:36:05ID:NCJ8uVrU昨日はお疲れ様でした。
多分いつか1勝を挙げる日が来ますよ・・・きっと。
というより序盤を研究してる人とかはいなそうなので
逆に勝てるかもしれないですね。
バグの件了解しました。
もし可能でしたらバグを何かにまとめておいて
いつかメールで送ってもらえますでしょうか?
今度本体を作り直すときにまとめてやってもらうので。
0161名前は開発中のものです。
2006/12/05(火) 01:33:23ID:lMp+K4vd> バグの件了解しました。
> もし可能でしたらバグを何かにまとめておいて
> いつかメールで送ってもらえますでしょうか?
了解です。
0162東陶基
2006/12/05(火) 14:35:59ID:MFe0ONSTもしかしたらこれで必勝形さえ取り込めれば初心者では
なかなか勝てないレベルになるのかも。
気付いた点を上げておきますと
@コンピュータ同士で対戦させると中盤は考慮時間が長くなるのだが後半はまた一気に
早くなる。
A7連の防御に関しては既存のAIの方が良い点がある
B斜めが多用されているが、縦横の方が強そう
C既にほぼ自分のエリアの場所に石を打って5とかを作りに行く
D自分が石を取れる状態と相手が取れる状態が重なった時に逃げてしまう
参考までにここから先行ダウンロードできます。解凍してirensei.exeと同じフォルダにコピーしてね
ttp://irensei.com/program/ai-lv1.zip
皆さんのご意見もどしどし待ってます。
0163名前は開発中のものです。
2006/12/05(火) 14:43:21ID:MFe0ONSTAについては組込のAIだと
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼○○┼┼┼┼┼┼┼┼┨
┠┼┼┼☆┼┼┼┼┼○●┼┼┼┼┼┼┨
┠┼┼┼┼┼○┼┼┼┼┼┼┼┼┼┼┼┨
と打つと
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼○○┼┼┼┼┼┼┼┼┨
┠┼┼┼○★┼┼┼┼○●┼┼┼┼┼┼┨
┠┼┼┼┼┼○┼┼┼┼┼┼┼┼┼┼┼┨
このように止めてきます。
多分必勝形を認識してるのでなく
打たれた白と他の白との間で7連が出来る可能性があって
なおかつその間に黒が無い場合には止めるとかって感じではないのかと
思っているのですがこれはこれで優れている防御法だと思いますので
参考までに。
※ただ不思議なことに既存のAIだとその★を取りに行こうとした場合に
黒が逃げに行かないと言う欠点があるのでなんですが。
その点は今回のAIはアタリは逃げるので良いです。
ちなみに今回のAIだと☆に打った場合、黒はほぼ自分の攻めの手を打ってます。
0164東陶基
2006/12/05(火) 14:47:13ID:MFe0ONST┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼○┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼○○┼○┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
などのばあい
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼○┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼○○☆○┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
と打ってしまうことが多いので
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼○┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼○○┼○☆┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
と打ったほうが良いのではないかと思います。
ただ打ってないけどほぼ自分のエリアというのを
判別が難しいと言われてたのでそのあたりの問題だと思いますが
0165東陶基
2006/12/05(火) 14:54:56ID:MFe0ONST┠┼┼┼┼┼┼┼●┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼○●○┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼●○●┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼●○○┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼●●┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
上のシチュエーションで白が打つ場合
黒の一子を取れば問題ないのですが
┠┼┼┼┼┼┼┼●┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼○●○┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼●○●┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼●○○☆┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼●●┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
と打って逃げることが多いです。
多分優先順位がアタリから逃げるほうが石を取るより
優先されてるのだと思いますが石を取ることでアタリから逃げれる場合は
その方がいい手だと思います。
細かい点ですが打っていると「うん?」と思ってしまう個所なので。
色々すいませんが参考にしてもらえると嬉しいです。
0166名前は開発中のものです。
2006/12/05(火) 17:58:15ID:xyJhtqbAどういう分岐なのかは知らんが取ることもあるみたいだよ
0167東陶基
2006/12/06(水) 00:26:22ID:79l8fvrP取らない時と取る時はなにか違いがあるのかな・・・。
0168名前は開発中のものです。
2006/12/06(水) 01:26:14ID:MutEDf0j@
通常三手読みですが思考時間が10秒を超えた次の手から二手読みに切り替えるのが原因です。
予定では、10秒まで思考し、超えた場合は探索を打ち切る方式に変更するつもりです。
(実際は最長思考秒数をユーザが変更できるようにする予定)
A
今のところ間に空きのある連候補は考慮していません。
これについては必勝形の判定を含めて策を練っているところです。
B
アタリ関連の処理(特に石を取る方)が影響してそうです。
この辺はパラメータ調整のバランスが難しいかも。
C
実装するのはもう少し先になりそうです。
D
>>165の状況なら通常は石を取りに行くと思います。
取りに行かないときは他に何か(AIにとって)優先すべき事項があったのだと思います。
0169名前は開発中のものです。
2006/12/06(水) 01:31:01ID:MutEDf0jこのバグと@に関してはすぐに実装できると思います。
A〜Cを解決するのはもう少し先、というか今月の目標といったところになると思います。
0170東陶基
2006/12/07(木) 00:29:38ID:NnfRj7Qmただ出来ればLv1状態でのソースを取っておいてもらいたいです。
Lv1を公開したのでそれに何かあったときにその場合のソースがなくなってると
困るので。
0171東陶基
2006/12/07(木) 00:33:36ID:NnfRj7Qm囲碁の形勢の計算をする処理が参考になるかもしれません。
囲碁のソフトで現在の状況を判断するボタンとかがあるのですが
それを押すと既に死んでいる石や地になっているエリアなどを計算して
現在の形勢を判断するのですが、その処理のルーチンが分かれば
同様に既に打てないエリアや逆に自分が打つ必要の無いエリアを判断できるのでは
と思ったりします。
あくまで参考までですが
0172東陶基
2006/12/07(木) 00:36:21ID:NnfRj7Qm組込のAIでは単に敵の石の間に自分の石が無い場合は危険と判断して
敵の石の端が5以内なら両端を止めに、逆に敵の石の端が6,7なら
その敵石の間に自石を打って防御となってるだけみたいです。
ただそれでもかなり防御としては効果ありそうです。
0173名前は開発中のものです。
2006/12/07(木) 07:14:47ID:Q7E4yn2Iソースについては了解です。
>>171-172
情報ありがとうございます。
0174名前は開発中のものです。
2006/12/08(金) 18:50:18ID:rltTfv0G0175東陶基
2006/12/10(日) 00:17:01ID:Bdq+mZaGもし可能でしたら最終着手表示の画像の変更とかって簡単かみてもらえますか?
現在だと青の縁取りみたいになるのですが
KGSみたいな○に小さな□が入るやつの方が見た目がいいかなと。
アタリ表示とかは今のままでもカッコイイのですが最終着手と七連の★の
画像とかがなんか個人的にはイマイチな気が。
0176名前は開発中のものです。
2006/12/10(日) 09:14:16ID:s5ETcGroDDSフォーマットの画像ファイルさえ用意していただければできるかと思います
0177東陶基
2006/12/11(月) 00:30:13ID:WtFzJmLsリコンパイルすればOKなんだろうか・・・。
でもソースのイメージフォルダにその画像のbmpないね。
bmpからDDSに変換するツールは見つけたんですけどね。
まぁこれは別に急がないからいいか・・・。
0178東陶基
2006/12/11(月) 00:51:32ID:WtFzJmLsどこまでがコンパイルの対象なんですかね?
online_helpとかsampleaiのフォルダはゲームの配布のところにも入ってるから
コンパイルの対象にはなってない感じですけどね
他のは全部コンパイルされてexeに組み込まれてるんですかね。
0179名前は開発中のものです。
2006/12/11(月) 01:36:58ID:YOXVYonjDDSフォーマットの画像を
mkstoneimg.bat
を実行してCのソースに変換してからコンパイルするようです。
コンパイル対象はsounds, aiapiですかね。
imagesはたぶん対象外です。
imagesのBMP画像はmainform.dfmあたりに取り込まれている感じがします。
0180東陶基
2006/12/12(火) 01:59:52ID:A5X5tSr9表示したところでメニューバーにAI paramsが出るのは何が原因かわかりますか?
本体の方なのかAIの方なのか見当つかなかったので
0181名前は開発中のものです。
2006/12/13(水) 00:42:32ID:VmtMvYp/デバッグ用の関数をエクスポートしているせいかな。
リリース版では表示されない方が良さそうですね。今度直しておきます。
囲連星本体のバグを修正しました。
画像の差し替えはどうしますか?
今回は見送るということであれば、本体とソースをメールで送ります。
0182東陶基
2006/12/13(水) 01:05:54ID:TEqoTvZjありがとうございました。
画像はいつでもいいので今回は見送りで大丈夫です。
そうですねリリース版ではAI paramsはでない方がいいですね。
デバッグ用の関数をエクスポートすると出るって言うのは
ある意味理にかなってるといえばかなってるのかも。
では本体送っていただいてAI paramsの問題が直ったところで
Ver1.01ってことで差し替えるようにします。
差し替えると言っても今Vectorでダウンロードするようにしているので
Vectorに送らないと差し変わらないんですけどね。
本当に色々ありがとうございます。
0183名前は開発中のものです。
2006/12/17(日) 23:32:44ID:NEYvFAOR0184名前は開発中のものです。
2006/12/19(火) 14:51:49ID:gCC1Bc8N人が増えるのが一番難しそうだ。
やはりプログラムそれもAIを作るってのは特殊技術だからな
0185名前は開発中のものです。
2006/12/31(日) 01:54:24ID:y+z8JF120186名前は開発中のものです。
2007/01/09(火) 18:36:21ID:fenFh3IOC++環境が無料って
0187東陶基
2007/01/28(日) 02:31:31ID:KFFkAiB+mkrさんたまぁ〜に見れたら見てください。
ぽかぼっととちょっと対局してみて気になった点。
・ぼっとと2人の時に退室すると部屋も閉じる(ぼっと一人きりの時は無い)
・置き碁に対応できる?それとも拒否?
0188東陶基
2007/02/06(火) 02:06:22ID:Gl6kRZ6Wその管理人さんもプログラマさんなのでAI強いですねが単にプレイヤーとしてなのか
AI開発目線なのかはわからないですが結構嬉しかったですね。
意外と囲碁知らない初めての人に対してはLv1のAIはそこそこ頑張ると見た。
0189名前は開発中のものです。
2007/03/01(木) 02:37:08ID:B3hh8zKE0190名前は開発中のものです。
2007/03/08(木) 15:58:31ID:JTAiDBk2どうやらこのレベルの強さと五分五分で勝負してた。
なんかこういうゲームに慣れてない人は逆に楽しみが多いんだなと思ったよ。
囲碁とかもそうなんだろうね。俺はある程度のソフトで楽しめるけど
強い奴は売ってる最強のソフトでも弱すぎて楽しめなさそう。
将棋だと強いんだっけ今?オセロはソフトの方が最強らしいし。
0191名前は開発中のものです。
2007/03/12(月) 00:54:34ID:smfe87kQ0192メガ ◆p4a1U4MTk2
2007/03/12(月) 10:29:06ID:4HeKA22R囲碁も石を取られると不利になるので、石を取られない方法が研究されているので、囲碁を参考にすれば強くなるかと。
突然すいませんでしたm(_ _)m
0193名前は開発中のものです。
2007/03/12(月) 16:42:19ID:TDaOvg//攻撃するのが効果的。
ただ今のLv1もそれほど簡単には石は取られないけど
かと言って強いってほどでもない。他にも何か要素があるんだろう
0194名前は開発中のものです。
2007/03/14(水) 01:07:09ID:wmdp9Ju3本気で勝てなかったらかなりやりこみそうなんだが
0195名前は開発中のものです。
2007/03/16(金) 23:00:52ID:mnACo+45無理かなー。
0196名前は開発中のものです。
2007/03/18(日) 00:24:22ID:PGi8I9bF0197名前は開発中のものです。
2007/03/27(火) 09:06:59ID:4kraVJMz0198名前は開発中のものです。
2007/04/10(火) 11:17:04ID:xwg89iKEエラー E2209 airandom.cpp 2: インクルードファイル 'irensei_rule_description.h'をオープンできない
エラー E2209 airandom.cpp 3: インクルードファイル 'irensei_ai_descripter.h' をオープンできない
こんなエラーが出る。サンプルすらコンパイルできない俺って・・・
誰か詳しい人教えて。
0199名前は開発中のものです。
2007/04/10(火) 12:38:10ID:XS2ARZeYインクルードを知らない訳ではあるまいな?
0200名前は開発中のものです。
2007/04/12(木) 08:04:49ID:m+MtJESVサンプルのフォルダを移動したとか?
0201名前は開発中のものです。
2007/04/12(木) 08:34:53ID:Mn2tGKGj>>200
ありがとう。出来た。
ただしAIの中身が作れそうにないw
何手先を読む場合でも本体格納のAIみたいに評価関数を使うのだろうか
0202名前は開発中のものです。
2007/04/15(日) 21:37:29ID:NWW7HJ9Oみんなが必ずつかうものを標準ライブラリとして公開すると、
参入障壁が下がってAIのレベルが上がるはず。
このスレで囲連星標準ライブラリの仕様を議論しないか。
0203名前は開発中のものです。
2007/04/16(月) 17:19:39ID:FMVsqkn9攻守共に
0204名前は開発中のものです。
2007/04/16(月) 19:56:20ID:y9kOs6gu┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼○○○┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼@┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼★★★┼┼┼┼┼┼┼┼┨
このように白に3が存在して@に既に白があった場合(★の位置に黒が無かった場合などは
0205名前は開発中のものです。
2007/04/16(月) 20:00:41ID:y9kOs6gu┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼○○○┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼@┼┼┼☆☆┼┼┼┼┼┼┨
┠┼┼┼┼┼┼★★★┼┼┼┼┼┼┼┼┨
その場合☆のどちらかに打てば必至の状態になります。
もちろんかなりの確率で黒が今白の打たなかったほうの☆の位置に
打って防御するとは思いますがとりあえず攻撃を続けていったほうが
有利だと思うので3以上の連がある場合にこのようにするロジックだと強そうです。
もちろんそれまでに出来るだけ3とか4を作りにいくロジックにしておくべきかも
(止められるのを承知でも)
0206名前は開発中のものです。
2007/05/15(火) 00:05:08ID:GyppPyuC0207名前は開発中のものです。
2007/05/18(金) 22:41:10ID:cMqB+vxh0208名前は開発中のものです。
2007/06/18(月) 22:30:24ID:3uIkUN7Eそれだけでもだいぶみんな助かると思うんだが。
0209名前は開発中のものです。
2007/06/21(木) 13:44:19ID:L62dXkJDttp://ja.wikipedia.org/wiki/%CE%91-%CE%B2%E6%B3%95
0210名前は開発中のものです。
2007/06/24(日) 05:33:23ID:k9lJbede俺普通のビジネスアプリケーション作ってるSEだけど
AIのプログラムなんてイメージがわかないよ。
0211名前は開発中のものです。
2007/06/26(火) 23:05:58ID:dm4ykP1Bまずはminmaxとかαβをググルべし。
AIの基本。
0212名前は開発中のものです。
2007/07/01(日) 03:03:50ID:WCFCy8zwちょっとしたら余程の人でないかぎりは楽勝になってしまうのが痛いと言えば痛いかも。
せめて人によっては一番強いAIには勝てないとかなら面白いんだが
0213名前は開発中のものです。
2007/07/03(火) 21:17:53ID:LcBu8VkP関数型言語使いに興味を持ってもらえるように
ハスケルとかでAI製作できるようにしたらあるいはいいものできるかも?
でも関数型言語使いってマイナーそうだし、あんま意味無いかな。
0214雑用係
2007/07/14(土) 23:09:33ID:MHO5sza7是非感想お願いします。
http://gamdev.org/up/img/9771.zip
0215名前は開発中のものです。
2007/07/15(日) 08:12:58ID:tJRaVpSpすげぇ、なんか人間っぽい打ち方するw。
0216名前は開発中のものです。
2007/07/15(日) 14:35:41ID:ZNSBoQKD0217名前は開発中のものです。
2007/07/15(日) 15:04:45ID:5EDRj9LHそれでも強いけど。
0218名前は開発中のものです。
2007/07/15(日) 15:17:33ID:ffYCagEX正確には後手が人間の場合の初手に01-01でバグるね
0219東陶基
2007/07/15(日) 16:14:19ID:YhfeHHOJAIありがとうございました。
問題なく強いのでAIコンテスト参加後にフリーソフトに組み込んでもいいですか?
一応AIコンテスト優勝時(多分優勝ですけどw)には賞金も出ますので
是非宜しくお願いします。
ちなみに前回賞金獲得プログラムが現在のソフトのLv1で組み込まれている
AIです。
0220東陶基
2007/07/15(日) 16:24:42ID:YhfeHHOJhttp://irensei.com/html/ai.html
正直ここまでのAIが出てくるとはちょっと驚きの感じではありますね。
多分初心者が勝てるようになるまでにそれなりに時間がかかりそうなくらい
強いですね。
AIコンテストなどで質問ありましたらHPから協会宛にメールを
送ってください。
http://irensei.com/html/kyokai.html
0221名前は開発中のものです。
2007/07/15(日) 16:28:43ID:YhfeHHOJまだ「おっ、打った」「6なのになぜ止めない?」とか
そんなレベルだったのである意味自分自身でのAI開発の
引退のきっかけになりそうなAIでした。
多分自分の開発でこれを超えるには年単位の時間がかかりそうなので。
0222雑用係
2007/07/15(日) 17:50:01ID:sodpv5Jgまずは修正版AIを。
http://gamdev.org/up/img/9774.zip
修正前のAIは削除パスを思い出し次第削除します。
修正点
・人間が先手の時1手目3手目を1・2線に、
人間が後手の時に2手目を1・2線に打つとバグるのを修正。
・クラスをソートする方法をなんとなく覚えたのでαβ法に組み込む。
(これで少し思考時間が短くなるはず……)
>>219
まだβ版ですがそれでもよろしければ
フリーソフトに組み込んで貰っても構わないです。
人間相手にはまだまだ弱いと思っていたので予想以上の評価に驚いています。
それでもまだまだ問題点があるので少しずつ改良していこうと考えています。
他にも意見・感想・バグ報告等ありましたらどんどんお願いします。
0223東陶基
2007/07/15(日) 18:06:12ID:YhfeHHOJありがとうございます。
組み込む場合に1つお願いなのですが
ファイル名はこちらで変更するので問題ないのですが
新規対局の時に表示されるAIの名称を統一しないといけないので
今「Z_beta・・・」となっているところを他のAIと同様に
「コンピュータ Lv.2」として貰えると助かります。
お手数ですが宜しくお願いできますでしょうか。
ちなみに強さでの改良の余地ってまだ残ってますか?
もし短期間でさらに強くなりそうな場合でも出来れば
今のAIの強さくらいをLv2にしたいので一旦ある程度の修正版を
頂けると組み込むのにありがたいです。
0224東陶基
2007/07/15(日) 18:10:22ID:YhfeHHOJ必勝形の5みたいなのの片方を止めてもさらに隣りの筋でまた必勝形みたいのが
いいですね。
ちなみに開発者さん本人は自分の開発したAIには勝てますか?
もし楽勝でしたらプレイヤーとしてもそれなりに強いレベルですね。
0225雑用係
2007/07/15(日) 20:19:37ID:sodpv5Jg>「コンピュータ Lv.2」として貰えると助かります。
>お手数ですが宜しくお願いできますでしょうか。
了解です。
ですが、まだバグが残ってるかもしれないので
2週間様子を見て問題がなければ
名称変更をしたものをUPするという形でよろしいでしょうか?
>ちなみに強さでの改良の余地ってまだ残ってますか?
死活に弱い、守りが弱い、時々意味不明な手を打つ
黒の長連対策をしていない、シチョウ対策をしていない、
評価関数のパラメータがいい加減でまともに調整していない、などなど。
>ちなみに開発者さん本人は自分の開発したAIには勝てますか?
9割以上は勝てます。弱点が分かってれば勝つのは結構簡単ですよ。
0226現名人
2007/07/15(日) 21:31:30ID:AKSKnK24ぼーっと打ってると結構負ける。
黒の初手を真ん中に打つようにするだけで、もっと強くなりそう。
0227東陶基
2007/07/16(月) 11:08:44ID:F3GaTppfただ現名人が226で書いてるように今の段階でそれなりに強いので
とりあえず現段階の強さのバグ取り+様子見で名称変更してUPしてもらえますでしょうか?
そういう意味では一応2週間と考えておきますがもし雑用係さんが
1週間位で「これくらいでもうバグはないかな」と思ったらUPして貰えると
嬉しいです。
死活、守り、意味不明・・・などの改良は現段階のAIでなくLv.3用として
別AIで改良して貰えるとありがたいです。
※要するにLv.0,Lv.1とLv.2の強さのバランスを調整したいので
Lv.0<<<Lv.1<<<<<<<<<<Lv.2 となるのを防ぐための目的だと思ってください。
色々勝手なことを言ってすいませんがご検討お願いします。
0228東陶基
2007/07/16(月) 11:16:57ID:F3GaTppf打ってるとわかるのが序盤からどんどんAIの得意な勝ちパターンを作りにいくから
ぼーっと打ってると5,6手目くらいでAIがリーチかけてくるからねぇ。
序盤からちゃんと打たないと防戦一方になっちゃうね。
>雑用係さん
もし良かったらプレイヤーとしても大会とか名人戦予選とか出てみてください。
それほど人数はいないですが長く打ってる人も多いので意外と優勝とかは
難しいと思いますよ。
0229名前は開発中のものです。
2007/07/16(月) 22:52:20ID:01h/7xii人間の方が7が近い時は防御にいくと良いかも
0230名前は開発中のものです。
2007/07/17(火) 14:08:55ID:NUJHob/f勝ちが確定してても時間かける。
慎重なAIだなw
0231名前は開発中のものです。
2007/07/19(木) 00:23:22ID:lKh2ipe7理解して無いような打ち方をするときもあるな。
AIが白番。
(;SZ[19]
;B[jj];W[jk];B[ij];W[kj];B[gj];W[kl];B[ej];W[li]
;B[fk];W[kh];B[dj];W[kg];B[hj];W[cj];B[fj])
これが完璧に判断できるようになったらマジでやっても勝てなくなるかも。
あんまりコンピュータに強くなってほしくない俺がいるw
0232東陶基
2007/07/19(木) 01:39:34ID:D0jHo7Sz229の意見と似てるのかもしれないけど
コンピュータは自分の必勝形を相手の必勝形の防御より優先するってことなのかも。
で、その結果両方とも必勝にはなるんだけど7連までの手数が短い方が
結果的に勝ちになるけどそれを考慮して自分の必勝形の完成と
相手の必勝形の防御を判断した方がってことかもしれない。
確かにこれよりあっさり強くなると賞金の出費もw
とりあえずテスト版は中級くらいってことで上級からは実際に
トーナメントとか名人戦予選にAIを参加させてみようかなと。
そこで良い成績を上げるようならこれはまぁ上級だと認めざるをw
さらに名人位についた日には名人レベルの賞金を潔く支払いますw
0233東陶基
2007/07/19(木) 01:46:52ID:D0jHo7Sz雑用係さんが言うように弱点を見つけて対策を練ったら
さすがに対人だときついのかなぁと思ったりしますね。
リリース後すぐの対局や圧倒的な力の差がある時以外はやはり人間有利なのかなと。
まぁこれは実際にやってみればわかるのでその時が来たら考えましょう。
0234名前は開発中のものです。
2007/07/19(木) 08:47:01ID:rgrqKhIb五目とかは今の段階で人間よりコンピュータが強いの?
0235テルミン
2007/07/19(木) 15:47:43ID:+k2yoi74新しく追加されたAIをDLして遊んでみたんですけど
いきなり石を挟んできますね〜
コンピュータの手番の時、右下の履歴表示をクリックすると
タイトルバーに「応答なし」がでてきます
これは長考ゆえのバグなのでしょうか?
osはWindowsXPです
0236名前は開発中のものです。
2007/07/19(木) 16:34:57ID:q4Q1qN7Lそれはバグではないような
0237名前は開発中のものです。
2007/07/20(金) 16:44:48ID:yr9HDSiy;B[nk];W[lk];B[mj];W[lj];B[ni];W[li];B[ll];W[ml]
;B[mk];W[nl];B[mh];W[mi];B[oj];W[ok];B[pk];W[nj]
;B[ol])
comが黒でこうなるパターン多し。
ていうか人間が手を変えないと必ずこうなる。
黒15は継いでくれないと困るなあ。
0238名前は開発中のものです。
2007/07/21(土) 12:20:28ID:QFiZSTal0239雑用係
2007/07/22(日) 13:59:44ID:gnXph5gbhttp://gamdev.org/up/img/9823.zip
AIの名前変更バージョンです。
名前以外はほとんどスピードアップの為の変更しかしていないので強くなっていないです。
AIについて一言二言
・必勝形は理解してません。というより必勝形の概念すらありません。
ただ長い連を作ったほうがポイントが高いと判断してるだけです。
・石が取られるかの判断がおかしいのはパラメータがデタラメな点が大きいです。
>>237でいうと
3子が取られると-15000点(=-5000x3)なのに対し
連を伸ばす手は35640点になるので3子を見捨てます。
(もちろん今バージョンでは修正してません)
0240雑用係
2007/07/22(日) 14:10:10ID:gnXph5gb右下の棋譜リストで
普段は1,2,3…と表示されているが
待ったをすると0,1,2…と表示される。
AIを追加するついでに修正してもらえるといいかも。
0241東陶基
2007/07/22(日) 18:37:37ID:rG656nw5名前の変更だけして頂けただけでたすかります。
もしかしたら一子とられるのを一律で-5000点という判断だと
厳しいかも。と言っても具体的にどの石がポイントが高いかと聞かれても
漠然としかこたえられないですが。
あとバグですがすでにフリーソフト状態なので致命的なバグ以外は
誰かが直してくれるまで放置状態なんですよね。
ただまたどこかでソースに手を加える時にはお願いしておきます。
気づいて頂きありがとうございました。
0242東陶基
2007/07/22(日) 18:49:25ID:rG656nw5今動かしてみたらMSVCP80.dllのDLLがないって出てくるみたいです。
一応DLLをDLして入れたら動きましたけど
多分入れなくても動くはずなので前の時のようにDLLのインストールなしで
動くバージョンにして頂けるとありがたいです。
多分DLL作成時のオプションの問題だと思いますので。
0243東陶基
2007/07/22(日) 18:55:53ID:rG656nw5それにしても速度速くなりましたね。長考もあんまりしなくなった。
名人もこのAIはレベルが違うと絶賛でした。
0244名前は開発中のものです。
2007/07/22(日) 19:06:51ID:T5X3deEW0245名前は開発中のものです。
2007/07/22(日) 21:14:48ID:62GRiMzm0246名前は開発中のものです。
2007/07/22(日) 21:20:03ID:sHupEsnj痛くない一子もあればとてつもなく痛い一子もある
とられた一子の縦横が止められてて七が作れない場合は
痛さも軽減
0247雑用係
2007/07/22(日) 21:33:03ID:gnXph5gbこれで大丈夫だと思います。
http://gamdev.org/up/img/9829.zip
>>239のファイルは削除しました。
0248東陶基
2007/07/23(月) 00:37:35ID:US+unJBe正常に作動しました。
これで特に大きな問題が出ないようでしたら
AIコンテスト参加可能です。
と言っても既にそれなりに打っているので
ほとんど対人中級レベルになると思います。
賞金の支払の問題もあるので参加意思のある場合は
メールでお願いします。
賞金振込みの場合は銀行の口座情報も必要なので
ここに書き込むのは問題あると思うのでメールで。
0249東陶基
2007/07/23(月) 00:44:01ID:US+unJBe┏┯┯┯┯┯┯┯┯┯┯┯┯┯┯┯┯┯┓
┠┼┼┼┼┼┼┼┼○┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼●┼┼┼┼┼┼┼┼┨
┠┼┼+┼┼┼┼┼●┼┼┼┼┼+┼┼┨
┠┼┼┼┼┼○●●○●●○┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼★┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼●┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼○┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼+┼┼┼┼┼+┼┼┼┼┼+┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼●┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼●┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼●●○●●┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼★┼┼┼┼┼┼┼┼┨
┠┼┼+┼┼┼┼┼●┼┼┼┼┼+┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┠┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┨
┗┷┷┷┷┷┷┷┷┷┷┷┷┷┷┷┷┷┛
上と下では白が一子抜かれても影響がかなり違うということですね。
(1.2線のルールはここでは省略)
ただこれを評価するとなるとやはり大変そうかも
0250名前は開発中のものです。
2007/07/25(水) 12:55:44ID:9EofohJOもしかして一番効率的なのか?
0251東陶基
2007/08/06(月) 20:11:21ID:FVubfdviAIコンテスト出ないのかな。
■ このスレッドは過去ログ倉庫に格納されています