フリーソフト囲連星のAIを自作してみませんか?(囲碁+連珠)
デフォルトのAIが弱いので今なら囲連星AIの第一人者になれる。
もし名人より強いAIを作成すればそのAIが名人位に。
詳しいことはソフトダウンロード後、ヘルプメニューを参考に。
作成方法:AI部分をプログラムしコンパイルしたものをファイルコピーすればOK
ソフトダウンロード:http://irensei.com/
【囲碁?】囲連星のAIを作ってみよう【連珠?】
■ このスレッドは過去ログ倉庫に格納されています
2006/08/03(木) 16:13:45ID:jCmv785l
402名前は開発中のものです。
2007/12/16(日) 13:16:46ID:ogsZGdsp403名前は開発中のものです。
2007/12/16(日) 13:20:37ID:Kur0Wr75404名前は開発中のものです。
2007/12/16(日) 13:21:03ID:ogsZGdsp しかし重要なのは、言語に依存しない計算量だろう
N*Nの計算量がlog(N)になっとしたら、10000秒かかる計算が10秒で済むことになる
10倍鈍い言語を使っても100秒で済む
ということで一番重要なのはアルゴリズム
N*Nの計算量がlog(N)になっとしたら、10000秒かかる計算が10秒で済むことになる
10倍鈍い言語を使っても100秒で済む
ということで一番重要なのはアルゴリズム
405名前は開発中のものです。
2007/12/16(日) 13:21:37ID:tvhAhM9O >>399
>基本的にAIでもオブジェクト指向を採用していますか?
オブジェクト指向といっても範囲が広すぎるし、人によると思うが、
俺の場合、C++をbetter Cとして使っている。
C++の便利なところは利用するが、Cで書いたものに比べてほとんど遅くならない程度の範囲内でという感じ。
>(オブジェクトを生成したらメソッドなどの領域も確保しますよね?)
C++に関して言えば、それは間違いだと思う。
メンバ関数は通常の関数にthisポインタが引数に加わっただけだし。
>構造体すらも使うと遅くなる気がします。
先にも書いたけど、まだ速度を気にする必要のない(気にしても仕方のない)実力だと思うよ。
あと、速度に関しては実測が全てという面が大きいし、
>>400の通り、そんなに気にするならアセンブラでCPU固有の命令使えという話になる。
結局は開発効率やコードの可読性との兼ね合いで言語を選ばないといけない。
個人的な意見としては、小手先の最適化は後回しにして、とりあえず手を動かすことをお勧めする。
>基本的にAIでもオブジェクト指向を採用していますか?
オブジェクト指向といっても範囲が広すぎるし、人によると思うが、
俺の場合、C++をbetter Cとして使っている。
C++の便利なところは利用するが、Cで書いたものに比べてほとんど遅くならない程度の範囲内でという感じ。
>(オブジェクトを生成したらメソッドなどの領域も確保しますよね?)
C++に関して言えば、それは間違いだと思う。
メンバ関数は通常の関数にthisポインタが引数に加わっただけだし。
>構造体すらも使うと遅くなる気がします。
先にも書いたけど、まだ速度を気にする必要のない(気にしても仕方のない)実力だと思うよ。
あと、速度に関しては実測が全てという面が大きいし、
>>400の通り、そんなに気にするならアセンブラでCPU固有の命令使えという話になる。
結局は開発効率やコードの可読性との兼ね合いで言語を選ばないといけない。
個人的な意見としては、小手先の最適化は後回しにして、とりあえず手を動かすことをお勧めする。
406名前は開発中のものです。
2007/12/16(日) 13:23:22ID:ogsZGdsp >>403
囲碁 モンテカルロ法で検索する
2007年07月30日
古きよき時代の囲碁プログラムの終焉
とうとう、19路でもモンテカルロ法の毒牙にかかってしまいました。
岐阜チャレンジで破竹の4連覇を成し遂げてきた銀星囲碁7が
モンテカルロ法ベースのCrazy Stoneに5勝14敗と完敗。
はっきり今までのクラシックな作り方の囲碁プログラムは終焉を迎えました。
もう、今後10年、いや名人が敗れるその日まで、今までやり方のプログラムが
世に出る日はないと思います。
http://blog.livedoor.jp/yss_fpga/ FPGAで将棋プログラムを作ってみるブログ - livedoor Blog(ブログ)
囲碁 モンテカルロ法で検索する
2007年07月30日
古きよき時代の囲碁プログラムの終焉
とうとう、19路でもモンテカルロ法の毒牙にかかってしまいました。
岐阜チャレンジで破竹の4連覇を成し遂げてきた銀星囲碁7が
モンテカルロ法ベースのCrazy Stoneに5勝14敗と完敗。
はっきり今までのクラシックな作り方の囲碁プログラムは終焉を迎えました。
もう、今後10年、いや名人が敗れるその日まで、今までやり方のプログラムが
世に出る日はないと思います。
http://blog.livedoor.jp/yss_fpga/ FPGAで将棋プログラムを作ってみるブログ - livedoor Blog(ブログ)
407名前は開発中のものです。
2007/12/16(日) 14:47:18ID:ogsZGdsp 戦略としては、相手の駒を取れる手、
2つ、3つ・・・と駒が一列上に並ぶ手(複合する方を優先する)
を生成して、モンテカルロ法やMTD法を使うので決まりだと思うな
指し手と勝ち負けさえ判定できれば、モンテカルロ法は
将棋でも囲碁でもオセロでも同じアルゴリズムで済むので簡単だ
2つ、3つ・・・と駒が一列上に並ぶ手(複合する方を優先する)
を生成して、モンテカルロ法やMTD法を使うので決まりだと思うな
指し手と勝ち負けさえ判定できれば、モンテカルロ法は
将棋でも囲碁でもオセロでも同じアルゴリズムで済むので簡単だ
408名前は開発中のものです。
2007/12/16(日) 15:47:05ID:TljEEkEH 構造体すら使いたくない、真の最速を目指してみたい、というのは一種の熱病みたいなものだけど、
その道は一度通ってみるといいと思う。その体験から得られるものは意外と大きい。
がんばれ!
その道は一度通ってみるといいと思う。その体験から得られるものは意外と大きい。
がんばれ!
409名前は開発中のものです。
2007/12/16(日) 18:10:07ID:i9IYq0C/ >>397
> C++はCより若干遅いそうです。
そこまで速度を追い求めるなら、コンパイル結果のアセンブリを検証することになる。
ターゲット CPU 上で、どういうコードが出力すべきかを考えて、コーディングしたりアセンブラで書き下ろしたりすることになる。
そこまで行ったら、C や Fortran を選ぶ必要はなくなるから C++ ということになるでしょう。
> おれはRuby厨なので、オブジェクト指向で書けないとめちゃくちゃな事になりそうですが、
オブジェクト指向は、分析や設計の概念だから、アセンブラや C でも実践できる。
>>399
> オブジェクト指向はメモリの使用量が大きくなりそうなのですが。
やりかたによる。
> (オブジェクトを生成したらメソッドなどの領域も確保しますよね?)
メソッドのアドレスは、クラスごとに静的なテーブル(vtable とか呼ばれる)になっているので、インスタンスごとのサイズはポインタ1つ分増加するだけ。
Ruby などと違って、クラスの数はコンパイル時に決定できるので、インスタンスが増えてもメソッドの領域でメモリを消費することはない。
> 構造体すらも使うと遅くなる気がします。
動的に生成したら遅くなる。AoS, SoA の話なら、アルゴリズムによるので、構造体だから遅いということにはならない。
>>403
T はテンプレート。
重要なのはそこに列挙されているようなものよりも <algorithm> とか <functional>。
インライン展開されがちだし、書き下ろすより速いことも割とあるよ。
冬休みの課題頑張ってね。
ところで、囲連星の話じゃないような気がするけど?
> C++はCより若干遅いそうです。
そこまで速度を追い求めるなら、コンパイル結果のアセンブリを検証することになる。
ターゲット CPU 上で、どういうコードが出力すべきかを考えて、コーディングしたりアセンブラで書き下ろしたりすることになる。
そこまで行ったら、C や Fortran を選ぶ必要はなくなるから C++ ということになるでしょう。
> おれはRuby厨なので、オブジェクト指向で書けないとめちゃくちゃな事になりそうですが、
オブジェクト指向は、分析や設計の概念だから、アセンブラや C でも実践できる。
>>399
> オブジェクト指向はメモリの使用量が大きくなりそうなのですが。
やりかたによる。
> (オブジェクトを生成したらメソッドなどの領域も確保しますよね?)
メソッドのアドレスは、クラスごとに静的なテーブル(vtable とか呼ばれる)になっているので、インスタンスごとのサイズはポインタ1つ分増加するだけ。
Ruby などと違って、クラスの数はコンパイル時に決定できるので、インスタンスが増えてもメソッドの領域でメモリを消費することはない。
> 構造体すらも使うと遅くなる気がします。
動的に生成したら遅くなる。AoS, SoA の話なら、アルゴリズムによるので、構造体だから遅いということにはならない。
>>403
T はテンプレート。
重要なのはそこに列挙されているようなものよりも <algorithm> とか <functional>。
インライン展開されがちだし、書き下ろすより速いことも割とあるよ。
冬休みの課題頑張ってね。
ところで、囲連星の話じゃないような気がするけど?
410名前は開発中のものです。
2007/12/16(日) 18:11:25ID:ogsZGdsp ちょっとしたことだけど、2バイトで値がおさまったしても、よほどメモリー食わない限りは4バイト使った方が良い
整数演算はint型に変換されるからだ
あと19マスだけど、32マスにして左上に寄せて使うと良い 座標の計算がビットシフトで行える為だ
整数演算はint型に変換されるからだ
あと19マスだけど、32マスにして左上に寄せて使うと良い 座標の計算がビットシフトで行える為だ
411名前は開発中のものです。
2007/12/16(日) 18:30:28ID:tvhAhM9O >>410
>あと19マスだけど、32マスにして左上に寄せて使うと良い 座標の計算がビットシフトで行える為だ
これはどういう意味か教えてください。
19->32はメモリロスのほうが大きそうな気がするのだけど。
>あと19マスだけど、32マスにして左上に寄せて使うと良い 座標の計算がビットシフトで行える為だ
これはどういう意味か教えてください。
19->32はメモリロスのほうが大きそうな気がするのだけど。
412名前は開発中のものです。
2007/12/16(日) 18:49:07ID:ogsZGdsp たとえば普通に19*19マスにしたとする このとき
z = x + 19y の変換は、19の剰余が必要になるが、z = x + 32yとすれば剰余はいらずにビット演算で済む
あと、19を基数にした場合、上下左右の移動はそれぞれ-19,19,-1,1で移動できるが、端の場合は判定が必要になる
(x,y)に対して判定すれば4方向別々に書かなければならない
32を基数にした場合は 上下左右何処へ移動しても、盤面上である事はz>=0 かつ z<=594 かつ z%32<=18の判定で済む
z = x + 19y の変換は、19の剰余が必要になるが、z = x + 32yとすれば剰余はいらずにビット演算で済む
あと、19を基数にした場合、上下左右の移動はそれぞれ-19,19,-1,1で移動できるが、端の場合は判定が必要になる
(x,y)に対して判定すれば4方向別々に書かなければならない
32を基数にした場合は 上下左右何処へ移動しても、盤面上である事はz>=0 かつ z<=594 かつ z%32<=18の判定で済む
413名前は開発中のものです。
2007/12/16(日) 19:15:30ID:Kur0Wr75 囲連星とか聞いた事もない。
414名前は開発中のものです。
2007/12/16(日) 19:16:25ID:tvhAhM9O >>412
なるほど。
横方向に一つマージンとって19*20マスでも同じようなことができそうだけど、
結局ビットシフトやANDで済む32と比べると差が大きいのかな(定数除算や剰余の最適化を期待しても)。
上下左右にマージンをとる方法はどうなんだろう。
有効座標かどうかの判定無しで参照できるという利点はあるよね。
なるほど。
横方向に一つマージンとって19*20マスでも同じようなことができそうだけど、
結局ビットシフトやANDで済む32と比べると差が大きいのかな(定数除算や剰余の最適化を期待しても)。
上下左右にマージンをとる方法はどうなんだろう。
有効座標かどうかの判定無しで参照できるという利点はあるよね。
415名前は開発中のものです。
2007/12/16(日) 20:06:12ID:ogsZGdsp 今も賞金20万もらえるの? 今日、初めて作り始めたんだけど・・
なんかSTLはコンパイル環境によってエラーが出るし、使わずにやることにしたよ
多分グローバルにbitsetやvector使っているせいだとおもうけど
なんかSTLはコンパイル環境によってエラーが出るし、使わずにやることにしたよ
多分グローバルにbitsetやvector使っているせいだとおもうけど
416名前は開発中のものです。
2007/12/16(日) 22:33:38ID:ogsZGdsp 思考ルーチンを考えたので概要を書き込む
次の種類の手を生成して、モンテカルロ法で最善手を選ぶ
・一手、二手で敵の駒が取れる手
・一手で駒が捕られるマス
・縦横斜めに敵の駒が無く7マスが揃いやすいマス
最後の部分は、例えば (端)□□□●●● (□は空白) とすると
一番、右の●を今置いたとすると、端二つは無視する為、右●を含んで7個そろう可能性があるのは
□●●●□□□、 ●●●□□□□、 ●●□□□□□、 ●□□□□□□のパターンがある
これらの黒石の個数の合計を、今置いた石の7が揃いやすい得点として用いる 加えて縦斜めの得点を加算する
この得点が高い手順に生成する
次の種類の手を生成して、モンテカルロ法で最善手を選ぶ
・一手、二手で敵の駒が取れる手
・一手で駒が捕られるマス
・縦横斜めに敵の駒が無く7マスが揃いやすいマス
最後の部分は、例えば (端)□□□●●● (□は空白) とすると
一番、右の●を今置いたとすると、端二つは無視する為、右●を含んで7個そろう可能性があるのは
□●●●□□□、 ●●●□□□□、 ●●□□□□□、 ●□□□□□□のパターンがある
これらの黒石の個数の合計を、今置いた石の7が揃いやすい得点として用いる 加えて縦斜めの得点を加算する
この得点が高い手順に生成する
417東陶基
2007/12/17(月) 06:21:02ID:Tjg1n58r >>415
来年から定期的なオンライン対局を休止する予定なので名人レベルのAIの認定はちょっと微妙かも
しれません。
ただ上級レベルまでは判断できますので上級レベルまでの賞金は今まで通りです。
もし上級レベルが出た後にさらに強いのが出た場合にはその時に考えたいと思います。
HPに残してると紛らわしいのでHPも名人レベルは削除しておきます。
ちなみに中級レベルはほぼ内定してます。YさんのLv3(現在の追加AI)をソースを整理してもらった後
フリーソフトに組み込んだ段階で中級レベルとなる予定ですので、Lv3より明らかに強いAIでかつ
対人でもそれに見合った強さを出した段階で上級レベルとなると思います。
来年から定期的なオンライン対局を休止する予定なので名人レベルのAIの認定はちょっと微妙かも
しれません。
ただ上級レベルまでは判断できますので上級レベルまでの賞金は今まで通りです。
もし上級レベルが出た後にさらに強いのが出た場合にはその時に考えたいと思います。
HPに残してると紛らわしいのでHPも名人レベルは削除しておきます。
ちなみに中級レベルはほぼ内定してます。YさんのLv3(現在の追加AI)をソースを整理してもらった後
フリーソフトに組み込んだ段階で中級レベルとなる予定ですので、Lv3より明らかに強いAIでかつ
対人でもそれに見合った強さを出した段階で上級レベルとなると思います。
418東陶基
2007/12/17(月) 06:25:41ID:Tjg1n58r 一応今の開発者さんにも来年からはオンライン対局の問題もあるので名人レベルの認定は
厳しいかもしれませんが上級レベルまでは自分自身でも判断できると思うので・・・と伝えています。
上級レベルというのは対人レベルでは東陶基がまず勝てないというレベルです。
ちなみに東陶基の棋力は現在最強のLv3に対して勝率はイーブン位だと思います。
厳しいかもしれませんが上級レベルまでは自分自身でも判断できると思うので・・・と伝えています。
上級レベルというのは対人レベルでは東陶基がまず勝てないというレベルです。
ちなみに東陶基の棋力は現在最強のLv3に対して勝率はイーブン位だと思います。
419名前は開発中のものです。
2007/12/17(月) 09:41:51ID:0p5aBMAr 強いかどうか知る前にuctは時間かかりすぎ 今から抜くからまだ決定しないで
420東陶基
2007/12/17(月) 09:55:08ID:Tjg1n58r 別に中級が2人とかでも構わないと思ってますのでいつでもプログラムはお待ちしてます。
他のAI開発者さんも強いのが出来れば目標(ライバル?)になると思うので大変良いことなので。
確かに現時点でのuctは思考時間はPCによってまちまちですね。
最新デスクトップだと2,3秒らしいですが古いマシンだと20秒とかにもなるらしいです。
ただ5年後とかにはハードの進化でどのマシンでも2,3秒以内になってると思うのでそれは
それでいいかなと思ってます。
他のAI開発者さんも強いのが出来れば目標(ライバル?)になると思うので大変良いことなので。
確かに現時点でのuctは思考時間はPCによってまちまちですね。
最新デスクトップだと2,3秒らしいですが古いマシンだと20秒とかにもなるらしいです。
ただ5年後とかにはハードの進化でどのマシンでも2,3秒以内になってると思うのでそれは
それでいいかなと思ってます。
421東陶基
2007/12/17(月) 09:57:14ID:Tjg1n58r あと開発の注意としてはある程度のランダム性もある方が望ましいです。
もちろんある程度でOKです。
同じ様に打てば全く同じ局を再現できるとかだとさすがにまずいので。
もちろんある程度でOKです。
同じ様に打てば全く同じ局を再現できるとかだとさすがにまずいので。
422名前は開発中のものです。
2007/12/17(月) 13:01:02ID:T0APh+4f 必勝形のパターンと解説があると便利なのですが・・・どなたか整理してもらえないですか?
○ ○
○ ○ ○
という形は、へこみに石置けないのでかなり有利だと思うのですが・・・
ひとつ石を追加するごとに相手が置けないマスが一つ増えます
○ ○
○ ○ ○
●
ならへこみに置けますが、そうでない限りほぼ必勝でしょうか
○ ○
○ ○ ○
という形は、へこみに石置けないのでかなり有利だと思うのですが・・・
ひとつ石を追加するごとに相手が置けないマスが一つ増えます
○ ○
○ ○ ○
●
ならへこみに置けますが、そうでない限りほぼ必勝でしょうか
423名前は開発中のものです。
2007/12/17(月) 14:53:05ID:T0APh+4f この打ち方は、コンピュータには非常に有効なんですが・・・
ジグザグ打ち戦法 全てのレベルに対してほぼ勝てます
Lv2です アプロダにのってたやつです 内蔵のやつと同じかも?
(;SZ[19]
;B[jj];W[ki];B[ik];W[lj];B[ii];W[mi];B[jl];W[mk]
;B[im];W[hj];B[ij];W[in];B[jn];W[ih];B[io];W[hn]
;B[jp];W[kk])
(;SZ[19]
;B[jj];W[ik];B[ki];W[jl];B[lj];W[im];B[mi];W[km]
;B[nj];W[hj];B[oi];W[oj])
(;SZ[19]
;B[jj];W[ik];B[ki];W[jl];B[lj];W[im];B[mi];W[km]
;B[nj];W[kk];B[oi];W[nh];B[ni];W[ji];B[ii];W[lh]
;B[li];W[jh];B[pj];W[pi];B[kj];W[ok])
ジグザグ打ち戦法 全てのレベルに対してほぼ勝てます
Lv2です アプロダにのってたやつです 内蔵のやつと同じかも?
(;SZ[19]
;B[jj];W[ki];B[ik];W[lj];B[ii];W[mi];B[jl];W[mk]
;B[im];W[hj];B[ij];W[in];B[jn];W[ih];B[io];W[hn]
;B[jp];W[kk])
(;SZ[19]
;B[jj];W[ik];B[ki];W[jl];B[lj];W[im];B[mi];W[km]
;B[nj];W[hj];B[oi];W[oj])
(;SZ[19]
;B[jj];W[ik];B[ki];W[jl];B[lj];W[im];B[mi];W[km]
;B[nj];W[kk];B[oi];W[nh];B[ni];W[ji];B[ii];W[lh]
;B[li];W[jh];B[pj];W[pi];B[kj];W[ok])
424名前は開発中のものです。
2007/12/17(月) 19:39:27ID:Qu3RH+12425名前は開発中のものです。
2007/12/17(月) 19:59:45ID:T0APh+4f426名前は開発中のものです。
2007/12/17(月) 20:09:07ID:ioAsOlbe Lv2もジグザグ打ちで攻めるよね。
機械的なジグザグ打ちが良いのか
それとも人間的なLv3の様な打ち方が強いのか
まだなんとも言えないね。
機械的なジグザグ打ちが良いのか
それとも人間的なLv3の様な打ち方が強いのか
まだなんとも言えないね。
427名前は開発中のものです。
2007/12/17(月) 20:12:22ID:ioAsOlbe あとジグザグの斜めの位置を先に取る(先回りして守る)と言うのは
有効な守りの手筋なのかもしれない。
有効な守りの手筋なのかもしれない。
428名前は開発中のものです。
2007/12/17(月) 20:16:31ID:T0APh+4f Lv0にはジグザグ通じないなあ 弱いと思って相手にしていなかったがこれが一番苦戦するんだが・・・
429名前は開発中のものです。
2007/12/17(月) 21:42:45ID:T0APh+4f AI開発で、深読みや、モンテカルロ法は重要で無い気がしてきた
囲連星の場合、読み無しで有効手が選びやすいと思う (囲碁は多くの場面で有効手が見つかりにくいが・・)
将棋は、駒交換で評価値が変化するから読みは大事だ
囲連星も取られるが、読み無しでの有効手が、ほんとの有効手である割合が高そうだ
囲連星の場合、読み無しで有効手が選びやすいと思う (囲碁は多くの場面で有効手が見つかりにくいが・・)
将棋は、駒交換で評価値が変化するから読みは大事だ
囲連星も取られるが、読み無しでの有効手が、ほんとの有効手である割合が高そうだ
430名前は開発中のものです。
2007/12/17(月) 22:31:49ID:Qu3RH+12 必勝形に関しては読み無しでも結構いけるし、必勝形を完璧にするだけでもかなり強くはなるだろうが
読み無しで果たしてその先にいけるかどうか…
読み無しで果たしてその先にいけるかどうか…
431名前は開発中のものです。
2007/12/17(月) 22:42:11ID:T0APh+4f 読みが全く無しではなく、指し手生成に重点を置くって事です
せいぜい10手も読めれば十分だと思います
指し手が精密で3、4つに絞れていたら全数読みしてもたいした時間はかかりません
せいぜい10手も読めれば十分だと思います
指し手が精密で3、4つに絞れていたら全数読みしてもたいした時間はかかりません
432東陶基
2007/12/18(火) 22:37:42ID:U8wBaXjp 参考までに言うと今までの開発してくれた方の情報では自分の手を3手(相手も入れると5手)
くらいで時間が10秒とか掛かると言ってました。
もちろん読む場所がある程度あったので本当に3,4箇所に絞れるのであれば10手でも
いけるかもしれないとは思います。
あと囲連星はかなり直感で打つ手が良い手の事が多いと思います。
ただ終盤やお互いが既に必至状態で手数の問題になってくる場合は
一気に読みが大事になってきます。
くらいで時間が10秒とか掛かると言ってました。
もちろん読む場所がある程度あったので本当に3,4箇所に絞れるのであれば10手でも
いけるかもしれないとは思います。
あと囲連星はかなり直感で打つ手が良い手の事が多いと思います。
ただ終盤やお互いが既に必至状態で手数の問題になってくる場合は
一気に読みが大事になってきます。
433名前は開発中のものです。
2007/12/18(火) 22:42:18ID:o/djuCBy 囲連星AI作成は意外と手間暇かかるので>>431には粘り強くがんばってほしい。
俺はもう諦め気味。
俺はもう諦め気味。
434名前は開発中のものです。
2007/12/18(火) 23:19:54ID:HMfOAOUz 2手なら全数読みしても1024局面、4手なら100万局面
将棋のボナンザというソフトは1秒間に約30万局面生成して、数秒で12手以上は読める
モンテカルロ法ならば勝ち負けしかないので評価関数はいらないけれど、手数の限度あると評価関数作らないといけない
将棋のボナンザというソフトは1秒間に約30万局面生成して、数秒で12手以上は読める
モンテカルロ法ならば勝ち負けしかないので評価関数はいらないけれど、手数の限度あると評価関数作らないといけない
435名前は開発中のものです。
2007/12/19(水) 13:05:28ID:3zpiAOw0 相手の手によらずに勝てる方法が判ったよ
1手で7揃うか、必勝形になる
2手続けて指したとき異なる7が2つ揃うか、異なる必勝形が2つ出来る
3手続けて指したとき異なる7が3つ揃うか、異なる必勝形が3つ出来る
今言う必勝形は特に、6個揃って両端が空白のときか、6個の途中がデコボコしていて相手にうたれない状態のとき
1手で7揃うか、必勝形になる
2手続けて指したとき異なる7が2つ揃うか、異なる必勝形が2つ出来る
3手続けて指したとき異なる7が3つ揃うか、異なる必勝形が3つ出来る
今言う必勝形は特に、6個揃って両端が空白のときか、6個の途中がデコボコしていて相手にうたれない状態のとき
436名前は開発中のものです。
2007/12/19(水) 13:10:26ID:3zpiAOw0 ○ ○ ○ は上の判定では勝ち判定ではないが
○ ○
○ ○ ○
○ ○ ○
2手続けて指したとき異なる必勝形が出来るから勝ち
○ ○
○ ○ ○
○ ○ ○
2手続けて指したとき異なる必勝形が出来るから勝ち
437名前は開発中のものです。
2007/12/19(水) 13:11:51ID:3zpiAOw0 >>435の条件は見直す必要があることが判った
438名前は開発中のものです。
2007/12/19(水) 15:44:06ID:KbE0nHU8 開発者の人は、頭で考えてるだけじゃなくて、
人と打ってみた方がいいと思うよ。
人と打ってみた方がいいと思うよ。
439名前は開発中のものです。
2007/12/19(水) 18:27:15ID:SKYB1Ff5 >>435
相手の状態も考えないといけないな。
自分があと4手で7連ができる必勝形をつくっても、相手が3手で7連を作れるなら負けてしまう。
自分と相手、どっちが7連までもって行くのが早いかを常に考慮する必要がある。
多分ほかにも考慮することは沢山あるはず。
相手の状態も考えないといけないな。
自分があと4手で7連ができる必勝形をつくっても、相手が3手で7連を作れるなら負けてしまう。
自分と相手、どっちが7連までもって行くのが早いかを常に考慮する必要がある。
多分ほかにも考慮することは沢山あるはず。
440名前は開発中のものです。
2007/12/19(水) 22:39:55ID:3zpiAOw0 結局、盤面は32を基数にするのは止めました
実際に19で割るのは時間がかかりますけど
あらかじめ計算しておけば(対応表を作っておけば)済むからです
それよりも周囲を1マス多めに取っておくことが高速化、簡略化に繋がると思うので20か21マスにします
盤面の更新は盤面全体をコピーして戻すことにします なるべくコピー速度を上げる為も少ないビット数の方が良いです
あと乱数生成に時間がかかっている場合、これを使ってみて下さい 貼り付けておきます
unsigned int rnd(){
static unsigned int x=3,y=11,z=13,w=17;
unsigned int t=(x^(x<<13));
x=y; y=z; z=w;
return ( w=(w^(w>>7))^(t^(t>>5)) ); }
void srnd(unsigned int n){
for(unsigned int i=0;i<=1000+(n&0xFFFF);i++)rnd();}
実際に19で割るのは時間がかかりますけど
あらかじめ計算しておけば(対応表を作っておけば)済むからです
それよりも周囲を1マス多めに取っておくことが高速化、簡略化に繋がると思うので20か21マスにします
盤面の更新は盤面全体をコピーして戻すことにします なるべくコピー速度を上げる為も少ないビット数の方が良いです
あと乱数生成に時間がかかっている場合、これを使ってみて下さい 貼り付けておきます
unsigned int rnd(){
static unsigned int x=3,y=11,z=13,w=17;
unsigned int t=(x^(x<<13));
x=y; y=z; z=w;
return ( w=(w^(w>>7))^(t^(t>>5)) ); }
void srnd(unsigned int n){
for(unsigned int i=0;i<=1000+(n&0xFFFF);i++)rnd();}
441名前は開発中のものです。
2007/12/19(水) 23:01:46ID:SKYB1Ff5 Yさんはメルセンヌツイスタとかいう乱数生成方法でライセンスがどうとか言ってたけど
これはその辺大丈夫なの?
これはその辺大丈夫なの?
442名前は開発中のものです。
2007/12/19(水) 23:15:03ID:3zpiAOw0 Xorshift RNGs
G. Marsaglia. Xorshift RNGs. Journal of Statistical Software,
8(14) :1 6, 2003
http://www.jstatsoft.org/v08/i14/xorshift.pdf
George Marsaglia 氏により 2003 年に考案された、xor
とシフトを使うだけの超高速な擬似乱数生成器(Random Number Generator, RNG)です。
http://lucille.atso-net.jp/blog/?p=9
G. Marsaglia. Xorshift RNGs. Journal of Statistical Software,
8(14) :1 6, 2003
http://www.jstatsoft.org/v08/i14/xorshift.pdf
George Marsaglia 氏により 2003 年に考案された、xor
とシフトを使うだけの超高速な擬似乱数生成器(Random Number Generator, RNG)です。
http://lucille.atso-net.jp/blog/?p=9
443名前は開発中のものです。
2007/12/19(水) 23:32:32ID:rFn9reOW >>440
どこかで見たことあると思ったらxorshiftか
srandが少し適当な気がするが、モンテカルロなら問題ないだろうね
>盤面の更新は盤面全体をコピーして戻すことにします なるべくコピー速度を上げる為も少ないビット数の方が良いです
囲碁のbitboardはまだないと思うから挑戦してみてはどうだろう?
オセロのは簡単だけど、将棋と囲碁は難しくて見当もつかないのでアドバイスできないけど
どこかで見たことあると思ったらxorshiftか
srandが少し適当な気がするが、モンテカルロなら問題ないだろうね
>盤面の更新は盤面全体をコピーして戻すことにします なるべくコピー速度を上げる為も少ないビット数の方が良いです
囲碁のbitboardはまだないと思うから挑戦してみてはどうだろう?
オセロのは簡単だけど、将棋と囲碁は難しくて見当もつかないのでアドバイスできないけど
444名前は開発中のものです。
2007/12/27(木) 00:18:43ID:ycRoV4dg 9路のAI作ろうと思ったら本体から作らないと駄目?
445東陶基
2007/12/27(木) 14:20:00ID:nFT7zy5G >>444
そうですね9路は本体はないですね。
19路の方のソースは公開してるのである程度流用で簡単にいくところもありますが
逆にGUIなどはどうでしょうねぇ。
個人的には本当に簡易なものでもいいと思うんですけどね。
それであれば本体を作るのもそれほど負担にならないかもと思ったりもします。
色々不便をおかけしますが検討してみてください。
そうですね9路は本体はないですね。
19路の方のソースは公開してるのである程度流用で簡単にいくところもありますが
逆にGUIなどはどうでしょうねぇ。
個人的には本当に簡易なものでもいいと思うんですけどね。
それであれば本体を作るのもそれほど負担にならないかもと思ったりもします。
色々不便をおかけしますが検討してみてください。
446名前は開発中のものです。
2008/01/05(土) 04:49:17ID:t/bMff4b このスレでRuby/tk詳しい人います?
447名前は開発中のものです。
2008/01/05(土) 11:18:40ID:t/bMff4b Ruby/tkで9路の本体作ってみました。
http://www.uploda.net/cgi/uploader4/index.php?file_id=0000024536.zip
とりあえず、IrenseiGUI.rbを実行してみてください。
コメントやドキュメントは全然書いて無いですが需要がありそうだったらぼちぼち書いて見ます。
rubyとtkl/tkのインストールはこの辺
http://www4.ocn.ne.jp/~holmes17/html/rubytk.html
http://www.uploda.net/cgi/uploader4/index.php?file_id=0000024536.zip
とりあえず、IrenseiGUI.rbを実行してみてください。
コメントやドキュメントは全然書いて無いですが需要がありそうだったらぼちぼち書いて見ます。
rubyとtkl/tkのインストールはこの辺
http://www4.ocn.ne.jp/~holmes17/html/rubytk.html
448名前は開発中のものです。
2008/01/05(土) 12:57:46ID:i0mhi2vp なぜか上手く動かない。出来ればexeみたいな状態にしてもらえると・・・
449名前は開発中のものです。
2008/01/05(土) 19:15:25ID:t/bMff4b >>448
exeにしようとexerbやRubyscript2exeを試してみたのですが、なかなか上手くいきません。
とりあえず、Cygwinのrubyで試してみてください。
あとIrenseiCUI.rbのほうにはバグがありました。
もし使う人がいたら修正します。
exeにしようとexerbやRubyscript2exeを試してみたのですが、なかなか上手くいきません。
とりあえず、Cygwinのrubyで試してみてください。
あとIrenseiCUI.rbのほうにはバグがありました。
もし使う人がいたら修正します。
450名前は開発中のものです。
2008/01/05(土) 21:07:10ID:t/bMff4b 9路の本体ダウンロードしていただいた方、何かレスしていただけると助かります。
動いたとか、動かなかったとか。
動いたとか、動かなかったとか。
451名前は開発中のものです。
2008/01/05(土) 22:53:12ID:+41VOTzo exeでないと無理です
452名前は開発中のものです。
2008/01/05(土) 22:54:09ID:WFjXXdLC 囲碁板にも書き込んだらどうだろう。
でもそっちだとexeとかじゃないと見てくれないかもね。
HPに載せれば意見も聞けるだろうけど
ゲームできる状態になってないと厳しそうだしね
でもそっちだとexeとかじゃないと見てくれないかもね。
HPに載せれば意見も聞けるだろうけど
ゲームできる状態になってないと厳しそうだしね
453名前は開発中のものです。
2008/01/05(土) 22:56:35ID:WFjXXdLC 俺も動かなかったくちだがもう後でCygwinで試してみるから
447も頑張って作ってみてくれ、楽しみに待ってるよ。
9路のコンピュータと対戦してみたいから
447も頑張って作ってみてくれ、楽しみに待ってるよ。
9路のコンピュータと対戦してみたいから
454Y
2008/01/05(土) 23:34:10ID:Y297lJT3 exeに変換することが出来たのですが、アップロードしましょうか?
もちろん、作者の方から許可して下されば、という話ですが。
もちろん、作者の方から許可して下されば、という話ですが。
455東陶基
2008/01/06(日) 01:49:14ID:LO0BYfd6 >>454
Yさんありがとうございます。作者の方が良いということになったら上げてみてください。
exeにしといた方がみなさん気軽に試せると思うので。
あと作者の方がexeにする方法でどのあたりが上手くいかなそうかも教えてあげれたら
作者の方としても助かるかもしれませんね。
Yさんありがとうございます。作者の方が良いということになったら上げてみてください。
exeにしといた方がみなさん気軽に試せると思うので。
あと作者の方がexeにする方法でどのあたりが上手くいかなそうかも教えてあげれたら
作者の方としても助かるかもしれませんね。
456447
2008/01/06(日) 09:00:17ID:xl70frxU 447です。
Yさん、exe化ありがとうございます。
ぜひアップしてください。
よろしくお願いします。
Yさん、exe化ありがとうございます。
ぜひアップしてください。
よろしくお願いします。
457Y
2008/01/06(日) 10:04:10ID:V5rG8ep3 ↓にアップロードしました。
http://www.uploda.net/cgi/uploader4/index.php?file_id=0000024589.zip
・ActiveTclをインストール
・環境変数の設定
・tcl8.4.dllとtk8.4.dllがないとエラーが出たので、tcl8.3.dllとtk8.3.dllを
それぞれtcl8.4.dllとtk8.4.dllにファイル名を変更
後は↓を参考にRubyScript2Exeを使ってexeに変換。
http://jitte.net/index.php?%E6%97%A5%E8%A8%98%2F2005-12-17
という手順だったと思います。
http://www.uploda.net/cgi/uploader4/index.php?file_id=0000024589.zip
・ActiveTclをインストール
・環境変数の設定
・tcl8.4.dllとtk8.4.dllがないとエラーが出たので、tcl8.3.dllとtk8.3.dllを
それぞれtcl8.4.dllとtk8.4.dllにファイル名を変更
後は↓を参考にRubyScript2Exeを使ってexeに変換。
http://jitte.net/index.php?%E6%97%A5%E8%A8%98%2F2005-12-17
という手順だったと思います。
458Y
2008/01/06(日) 11:23:08ID:V5rG8ep3459名前は開発中のものです。
2008/01/06(日) 13:00:26ID:N90zFTn1 動作見てみたけど七連の範囲もコウも問題なく動いてるみたい。
後はAIだけだねw
後はAIだけだねw
460名前は開発中のものです。
2008/01/06(日) 13:01:41ID:N90zFTn1 これも19路のようにAI外付けにできると良さそうだけど
461名前は開発中のものです。
2008/01/06(日) 13:03:16ID:N90zFTn1 ごめん、良く見たら外付けできるんだ。これはすごい。ルビー以外でもOKなんだよね?
462名前は開発中のものです。
2008/01/06(日) 13:52:16ID:B1WaK7CG もしかして画面の意見を求めてるのであれば
・最終着手がわかるようにしてほしい
・操作をわかりやすくしてほしい
でしょうかね
具体的に言えば、リストボックスの上に先手:後手と言った表示があって
その下にstartなりnewgameがあればわかりやすい
あとリストボックスが二つ有るけど片方しか選択状態にならないのは
わかりづらいかも知れません。選択したのが上のテキストに表示されるより
リストが選択状態に2つともなってるほうが良いかも
最後に碁盤の画面はこういうのでOKだと思う変に凝っても見づらいし
・最終着手がわかるようにしてほしい
・操作をわかりやすくしてほしい
でしょうかね
具体的に言えば、リストボックスの上に先手:後手と言った表示があって
その下にstartなりnewgameがあればわかりやすい
あとリストボックスが二つ有るけど片方しか選択状態にならないのは
わかりづらいかも知れません。選択したのが上のテキストに表示されるより
リストが選択状態に2つともなってるほうが良いかも
最後に碁盤の画面はこういうのでOKだと思う変に凝っても見づらいし
463447
2008/01/06(日) 19:20:11ID:xl70frxU464東陶基
2008/01/07(月) 01:03:11ID:904GEeEI 9路の場合はすぐにAIが強くなりそうですね。
今ソースをみたらポインタもなかったので自分にもつくれるかもしれない。
って思ったけどYさんの作ってくれたexeはもうその中にAI入ってるのかな。
でも同じディレクトリから.rbファイル消すとAI選択から消えますね・・・。
.rbのソースを変更しても打ち方が変わらないから既にexeに入ってそうだけど。
今ソースをみたらポインタもなかったので自分にもつくれるかもしれない。
って思ったけどYさんの作ってくれたexeはもうその中にAI入ってるのかな。
でも同じディレクトリから.rbファイル消すとAI選択から消えますね・・・。
.rbのソースを変更しても打ち方が変わらないから既にexeに入ってそうだけど。
465Y
2008/01/07(月) 03:17:19ID:P/lAoHc7 >>464
自分でAIを変更できるように修正しました。
http://www11.axfc.net/uploader/20/so/He_61636.zip.html
パスはirenseiです。
>>447さん
この修正のために、IrenseiGUI.rbの14行目の
require ai
を
require ".\\"+ai
に変更しました。
何か問題があるようならアップロードしたファイルを削除します。
自分でAIを変更できるように修正しました。
http://www11.axfc.net/uploader/20/so/He_61636.zip.html
パスはirenseiです。
>>447さん
この修正のために、IrenseiGUI.rbの14行目の
require ai
を
require ".\\"+ai
に変更しました。
何か問題があるようならアップロードしたファイルを削除します。
467447
2008/01/07(月) 22:14:45ID:HOZiCfP8 447です。
ちょっと修正したのでアップします。
http://www.uploda.net/cgi/uploader4/index.php?file_id=0000024689.zip
変更点
1.最終着手をわかるようにした。
2.パスに対応。
3.リストボックスの上に先手、後手を表示
4.SGFファイルを出力できるようにした。出力先はresult.sgf
5.Yさんの>>465の修正を取り込み
リストボックスを両方選択状態にする方法はよくわかりませんでした。
あとexe化も、もうちょっと待ってください。
へたれですいません。
ちょっと修正したのでアップします。
http://www.uploda.net/cgi/uploader4/index.php?file_id=0000024689.zip
変更点
1.最終着手をわかるようにした。
2.パスに対応。
3.リストボックスの上に先手、後手を表示
4.SGFファイルを出力できるようにした。出力先はresult.sgf
5.Yさんの>>465の修正を取り込み
リストボックスを両方選択状態にする方法はよくわかりませんでした。
あとexe化も、もうちょっと待ってください。
へたれですいません。
468名前は開発中のものです。
2008/01/07(月) 22:36:48ID:mPVfGXHb リストボックスなんかは普通は両方選択状態になるのが普通っぽいけど
なんでそうなるんだろう。
もしかしたら2つのリストボックスの名前が被ってるとかかな。
なんでそうなるんだろう。
もしかしたら2つのリストボックスの名前が被ってるとかかな。
469447
2008/01/08(火) 23:40:31ID:/VcEwGwK 447です。
exe化に成功したっぽいのでアップします。
http://gamdev.org/up/upload.php
囲連星で検索してください。
皆さんの環境でも動作するか動かしてみてください。
よろしくお願いします。
リストボックスの件はもうちょっと待ってください。
exe化に成功したっぽいのでアップします。
http://gamdev.org/up/upload.php
囲連星で検索してください。
皆さんの環境でも動作するか動かしてみてください。
よろしくお願いします。
リストボックスの件はもうちょっと待ってください。
470東陶基
2008/01/09(水) 06:45:25ID:nhDyM98a 447さん、かなりいい感じですね。ところで447さんはその9路のAIも開発する予定ですか?
もしそうで実際ゲームとして完成したらどうします?
vectorとかで配布します?
もしそうでしたら完成時には囲連星のHPからもリンクを貼らせてもらえると
ありがたいです。
ただそのあたりは447さんにお任せします。
もしそうで実際ゲームとして完成したらどうします?
vectorとかで配布します?
もしそうでしたら完成時には囲連星のHPからもリンクを貼らせてもらえると
ありがたいです。
ただそのあたりは447さんにお任せします。
471名前は開発中のものです。
2008/01/09(水) 07:02:25ID:guDTKllr 9字はルール変更しないとだめだろ 狭いからさ
472東陶基
2008/01/09(水) 07:55:11ID:nhDyM98a とりあえず447さんの採用している1線のみの7連のみ禁止で行ってみようと思ってます。
それなりに強いAIが出てきた時に何か不都合があれば考えますがしばらくはこのルールで。
それなりに強いAIが出てきた時に何か不都合があれば考えますがしばらくはこのルールで。
473447
2008/01/09(水) 19:10:07ID:oVDwlVq9 447です。
もちろんAIは作ります。
完成したら配布するつもりですが配布方法とかまではまだ考えて無いです。
リンクも大歓迎ですが、ちゃんと完成するかどうか?まあ、気長に地道にやっていきます。
あと、私以外の方にもAI作成してほしいと思っているので、
当面はソースにコメント入れたりドキュメントを書いたりしようと思います。
特にC/C++でAIを作る方法は結構難しそうなのでドキュメントが必要だと思っています。
もちろんAIは作ります。
完成したら配布するつもりですが配布方法とかまではまだ考えて無いです。
リンクも大歓迎ですが、ちゃんと完成するかどうか?まあ、気長に地道にやっていきます。
あと、私以外の方にもAI作成してほしいと思っているので、
当面はソースにコメント入れたりドキュメントを書いたりしようと思います。
特にC/C++でAIを作る方法は結構難しそうなのでドキュメントが必要だと思っています。
474名前は開発中のものです。
2008/01/09(水) 19:54:27ID:aUJmFK73 ほかの人に作ってもらうためにはドキュメントやコメントは必要だね
あと19路のように本当にAIだけ作るのに専念できるように本体との
依存関係は出来るだけ無くして欲しいかな。
あと19路のように本当にAIだけ作るのに専念できるように本体との
依存関係は出来るだけ無くして欲しいかな。
475447
2008/01/10(木) 23:58:09ID:ezZj7kjF 447です。
ちょっと仕事が忙しくなりそうです。
しばらくの間、囲連星の開発はペースダウン(ストップ?)すると思いますがご勘弁を。
ちょっと仕事が忙しくなりそうです。
しばらくの間、囲連星の開発はペースダウン(ストップ?)すると思いますがご勘弁を。
476東陶基
2008/01/11(金) 07:57:13ID:DTEdfBMq はい。のんびり作ってもらってOKですよ。
ちなみにブログにも書きましたが2/14の週刊アスキーの別冊に囲連星が
掲載される事になったので本屋に寄れる方は立ち読みでもしてみて下さい。
ちなみにブログにも書きましたが2/14の週刊アスキーの別冊に囲連星が
掲載される事になったので本屋に寄れる方は立ち読みでもしてみて下さい。
477447
2008/01/20(日) 18:46:01ID:Vrmd9fTv 447です。
C++でAIを作ってみようと思ったのですが、どうもその場合VC++6.0が必要になるみたいです。
(RubyそのものをコンパイルしたコンパイラとAIをコンパイルするコンパイラは同じでなくてはいけない。)
困りました。VC++6.0はもう販売終了してしまっています。
RubyのほうをVC.netでコンパイルするという荒業もあるみたいですが…
何かよい回避策を知ってる方いらっしゃらないでしょうか。
C++でAIを作ってみようと思ったのですが、どうもその場合VC++6.0が必要になるみたいです。
(RubyそのものをコンパイルしたコンパイラとAIをコンパイルするコンパイラは同じでなくてはいけない。)
困りました。VC++6.0はもう販売終了してしまっています。
RubyのほうをVC.netでコンパイルするという荒業もあるみたいですが…
何かよい回避策を知ってる方いらっしゃらないでしょうか。
478名前は開発中のものです。
2008/01/20(日) 19:22:18ID:6cAmnzhQ 関数名修飾ならdefファイル使えばOK
あとこう書けばいいのでは
extern "C" int __stdcall func(){}
あとこう書けばいいのでは
extern "C" int __stdcall func(){}
479名前は開発中のものです。
2008/01/20(日) 19:37:51ID:wIjUHx1F480447
2008/01/22(火) 00:14:52ID:glJ36pWp >>478-479
レスありがとうございます。
参考にさせていただきます。
ちょっと時間掛かりそうですが、がんばります。
あとAIのインターフェースについてなんですが、19路だとイニシャライズやファイナライズ、デバッグ機能がありますね。
デバッグ機能はともかく、イニシャライズ、ファイナライズは無いとまずいでしょうか?
レスありがとうございます。
参考にさせていただきます。
ちょっと時間掛かりそうですが、がんばります。
あとAIのインターフェースについてなんですが、19路だとイニシャライズやファイナライズ、デバッグ機能がありますね。
デバッグ機能はともかく、イニシャライズ、ファイナライズは無いとまずいでしょうか?
481東陶基
2008/01/23(水) 10:56:28ID:x/x8zXN5 ありがとうございます。
自分が詳しくない為皆さんにお手数かけてすいませんが
わかる方はわかる範囲で質問にこたえて頂けると嬉しいです。
>477さん
デバッグなどですが別に後からつけてもOKですよ。
後からつけると意識しながら作れば後から機能をつけるときもそれほど問題はないと思うので。
でもイニシャライズとかはAI作る段階で既に必要かもしれませんが。
そのあたりはお任せします。
自分が詳しくない為皆さんにお手数かけてすいませんが
わかる方はわかる範囲で質問にこたえて頂けると嬉しいです。
>477さん
デバッグなどですが別に後からつけてもOKですよ。
後からつけると意識しながら作れば後から機能をつけるときもそれほど問題はないと思うので。
でもイニシャライズとかはAI作る段階で既に必要かもしれませんが。
そのあたりはお任せします。
482名前は開発中のものです。
2008/01/26(土) 02:47:49ID:ycooaH5q 19路の数字を9にすればいいのでは
483447
2008/01/29(火) 19:52:41ID:nYm1lhmU 447です。
仕事のほうですが、暇になりそうですw。
VC++2008でAIがコンパイルできたようなのでいったんアップします。
といってもAIの内容は左上から右下に向かって斜めに打つだけです。
aicpp.dllというのがVC++で作ったAIです。
すいませんが皆さんの環境でも動作するか試してみてください。
ご協力お願いします。
http://www.uploda.net/cgi/uploader1/index.php?file_id=0000288158.zip
>>482
そういえば、19路の本体のソースってどうなってるんでしたっけ?
仕事のほうですが、暇になりそうですw。
VC++2008でAIがコンパイルできたようなのでいったんアップします。
といってもAIの内容は左上から右下に向かって斜めに打つだけです。
aicpp.dllというのがVC++で作ったAIです。
すいませんが皆さんの環境でも動作するか試してみてください。
ご協力お願いします。
http://www.uploda.net/cgi/uploader1/index.php?file_id=0000288158.zip
>>482
そういえば、19路の本体のソースってどうなってるんでしたっけ?
484447
2008/01/30(水) 23:03:55ID:J8Li6yDh 447です。
ダウンロードされた方は動いたとか動かなかったとか、なにかレスしていただけるとありがたいです。
ダウンロードされた方は動いたとか動かなかったとか、なにかレスしていただけるとありがたいです。
485名前は開発中のものです。
2008/01/31(木) 02:33:55ID:hxvyzfSk 動きましたよ
ただすぐComputer invalid move!になるけどw
ただすぐComputer invalid move!になるけどw
486447
2008/02/01(金) 21:22:40ID:Y7UWVU/K487東陶基
2008/02/06(水) 16:14:58ID:8pmw6hr4 自分も動かしてみましたがなぜかhuman VS humanしか出来なかったような。
逆に9路のソースも公開すれば誰かが意見をくれるかもしれませんね。
逆に9路のソースも公開すれば誰かが意見をくれるかもしれませんね。
488447
2008/02/06(水) 18:40:55ID:HPOwrnYR >>487
AIにプレーさせようとすると具体的にどうなるのか教えていただけますか。
random vs randomも動かないですか?
一応、Aicpp vs Aicppだと黒が一手だけ指してinvalid moveになるのが仕様どおりの動作です。
AIにプレーさせようとすると具体的にどうなるのか教えていただけますか。
random vs randomも動かないですか?
一応、Aicpp vs Aicppだと黒が一手だけ指してinvalid moveになるのが仕様どおりの動作です。
489Y
2008/02/06(水) 19:58:15ID:Dl695xKp >>487
↓のVC++2008のランタイムが入ってないのでは?
http://www.microsoft.com/downloads/details.aspx?displaylang=ja&FamilyID=9b2da534-3e03-4391-8a4d-074b9f2bc1bf
>>447さん
自分の環境では9路のAIは仕様どおりに動きました。
↓のVC++2008のランタイムが入ってないのでは?
http://www.microsoft.com/downloads/details.aspx?displaylang=ja&FamilyID=9b2da534-3e03-4391-8a4d-074b9f2bc1bf
>>447さん
自分の環境では9路のAIは仕様どおりに動きました。
490東陶基
2008/02/15(金) 00:24:50ID:kWGIwLmu コンビニに寄ったら週刊アスキーの別冊ありました。
相変わらず小さいですが掲載されてました。
ただ小さいのは囲連星のゲーム画面そのものが対局中の碁盤の画面しかないので
どうしようもないですけどね。
キャラクターとか作ってRPG風とかにすればもしかしたら・・・。
>>489
そうですね。ランタイム入ってませんでした。すいません。
相変わらず小さいですが掲載されてました。
ただ小さいのは囲連星のゲーム画面そのものが対局中の碁盤の画面しかないので
どうしようもないですけどね。
キャラクターとか作ってRPG風とかにすればもしかしたら・・・。
>>489
そうですね。ランタイム入ってませんでした。すいません。
491447
2008/02/17(日) 17:26:22ID:lVgpuZPm とりあえず、実装が簡単そうなのでモンテカルロとやらを試してみたが、遅い。
絶望的に遅くて、あんまり強くない。一応それっぽい手は打つけど。
Yさんのプログラムは壮絶な工夫がされてるに違いない。
絶望的に遅くて、あんまり強くない。一応それっぽい手は打つけど。
Yさんのプログラムは壮絶な工夫がされてるに違いない。
492東陶基
2008/02/17(日) 17:56:52ID:rfwDCYcL そうですね。モンテカルロは時間を考えておかないととてつもないらしいです。
今まで試された方も実用的なレベルまでいかなくてYさんのが出来た時には
正直自分も驚きましたね。
あとモンテカルロ(と言うよりは時間のかかるAI)の場合はPCによっても
速度が変わってくるので速いPCだけで試していると遅いPC持ってる人が
「全然遅いよ!」って言われるのでそこも注意が必要ですね。
Yさんのだと速い人だと一手2,3秒らしいですが遅いPCの人は30秒とか
かかるらしいです。ただ30秒かかるPCは普通の用途でも遅いと感じる事が
多いんでしょうけど。
今まで試された方も実用的なレベルまでいかなくてYさんのが出来た時には
正直自分も驚きましたね。
あとモンテカルロ(と言うよりは時間のかかるAI)の場合はPCによっても
速度が変わってくるので速いPCだけで試していると遅いPC持ってる人が
「全然遅いよ!」って言われるのでそこも注意が必要ですね。
Yさんのだと速い人だと一手2,3秒らしいですが遅いPCの人は30秒とか
かかるらしいです。ただ30秒かかるPCは普通の用途でも遅いと感じる事が
多いんでしょうけど。
493Y
2008/02/18(月) 00:17:26ID:wlhjcsGc >>491
論文を読んでそのとおりに実装しただけで、
あんまりたいした工夫はしてません
ご存知かもしれませんが、MoGoやCrazyStoneの
論文を翻訳して公開して下さっている方がいます
もしまだ見てなければ、目を通して見ると良いと思います
http://www.geocities.jp/hideki_katoh/
囲連星にも囲碁のCGOSや将棋のfloodgateの
ようなものがあったら面白そうですね
今は参加者が少なくて成り立たないかも知れませんが…
論文を読んでそのとおりに実装しただけで、
あんまりたいした工夫はしてません
ご存知かもしれませんが、MoGoやCrazyStoneの
論文を翻訳して公開して下さっている方がいます
もしまだ見てなければ、目を通して見ると良いと思います
http://www.geocities.jp/hideki_katoh/
囲連星にも囲碁のCGOSや将棋のfloodgateの
ようなものがあったら面白そうですね
今は参加者が少なくて成り立たないかも知れませんが…
494447
2008/02/18(月) 20:12:28ID:wi+Meyt5 これを理解するのは相当しんどそうですね。
がんばります。(TдT)。
がんばります。(TдT)。
495東陶基
2008/02/27(水) 20:38:36ID:+ayULpRy レンタルサーバーを変更した時に一部DLファイルが移されてなくてDLできない状態でした。
今は直っているのでDL出来なかった人は再度試してみてください。
そういえばそろそろ名人戦やってみようかな。対局場閉じちゃったから人集まるか
不安ではありますが、もし誰かここ見てて参加したいと思ってる人がいたら手を上げてみてください。
数人いたら開催しようかな・・・。
今は直っているのでDL出来なかった人は再度試してみてください。
そういえばそろそろ名人戦やってみようかな。対局場閉じちゃったから人集まるか
不安ではありますが、もし誰かここ見てて参加したいと思ってる人がいたら手を上げてみてください。
数人いたら開催しようかな・・・。
496東陶基
2008/02/27(水) 20:41:11ID:+ayULpRy あと別冊アスキーを買って読んでると他にも色々便利なソフトありました。
レジストリを綺麗にしてくれるソフトとか、メモリを整理してくれるソフト、
CPUが暇な時に勝手にデフラグしてくれるやつや、果てはコーディック集まで。
囲連星が載ってる時以外はそういう本をあんまり買わないのでたまに読むと便利ですね。
レジストリを綺麗にしてくれるソフトとか、メモリを整理してくれるソフト、
CPUが暇な時に勝手にデフラグしてくれるやつや、果てはコーディック集まで。
囲連星が載ってる時以外はそういう本をあんまり買わないのでたまに読むと便利ですね。
497447
2008/03/04(火) 21:47:46ID:RB345PkJ 気分転換に9路のMOGOやってみたがあまりの強さにびっくりした。
白でも黒でもほとんど勝てない。
19路なら勝てるけど。
囲連星でもこれぐらい強いのを作りたいところですね。
白でも黒でもほとんど勝てない。
19路なら勝てるけど。
囲連星でもこれぐらい強いのを作りたいところですね。
498東陶基
2008/03/16(日) 13:35:11ID:OKk0hogZ 最近ふと思うけどAIを追加するとAI Paramsってメニューバーに出てしまうのがどうかと。
当時は深く考えなかったから、せっかくならAI開発用とかってすれば良かったなと。
当時は深く考えなかったから、せっかくならAI開発用とかってすれば良かったなと。
499東陶基
2008/03/16(日) 13:37:39ID:OKk0hogZ >>497
9路だと19路より検索するパターンが少ないのでAIが19路よりは強くなるはずなんですよね。
多分Yさんのとかも同じロジックでも9路にカスタマイズすれば時間が早いなり同じ時間なら強いなり
すると思います。
9路だと19路より検索するパターンが少ないのでAIが19路よりは強くなるはずなんですよね。
多分Yさんのとかも同じロジックでも9路にカスタマイズすれば時間が早いなり同じ時間なら強いなり
すると思います。
500Y
2008/03/24(月) 16:07:22ID:d5pAvHIK 9路用のAI作ってみました。
それらしい打ち方をするようになったので公開してみます。
自分で打ったところ、うっかりミスをしなければ負けない
程度の強さでした。
思考時間が多少かかるので試していただける方は
本でも読みながら気長にやってみてください。
URL:http://www-2ch.net:8080/up/download/1206342283000125.Q78KG8
それらしい打ち方をするようになったので公開してみます。
自分で打ったところ、うっかりミスをしなければ負けない
程度の強さでした。
思考時間が多少かかるので試していただける方は
本でも読みながら気長にやってみてください。
URL:http://www-2ch.net:8080/up/download/1206342283000125.Q78KG8
501名前は開発中のものです。
2008/03/24(月) 17:50:27ID:2nQQGfNN なんとか勝てた
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【速報】トランプ大統領、中国の習近平国家主席を「国賓」として招待することに ★2 [ニョキニョキ★]
- 日本と中国を結ぶ12航空路線で全便欠航 中国人に最も人気の海外旅行先は日本から韓国に [ぐれ★]
- 米中電話会談、トランプ氏は「米国側は中国にとっての台湾問題の重要性を理解する」 [1ゲットロボ★]
- 【東京・足立の車暴走】赤信号無視か 危険運転致死傷疑いも視野に捜査 逮捕された職業不詳の男性(37)は精神疾患で通院歴も ★3 [ぐれ★]
- 【音楽】「なんでこんなバカが国のトップなの?」 若者に人気のバンド「GEZAN」のマヒトゥ・ザ・ピーポーが高市総理に苦言 [シャチ★]
- 【国際】トランプ氏、来年4月に中国を訪問する招待を受け入れる 習氏も国賓で訪米へ 電話会談 [ぐれ★]
- 【岸田朗報】鰻(ウナギ)、ガチで3年以内に1匹1000円以下へ!!!! [782460143]
- 【実況】博衣こよりのえちえち朝こよ🧪
- 習「中国とアメリカは軍国主義(日本)を倒した仲間。勝利の成果を守るために協力すべきだ」とトランプに呼び掛け。高市早苗、終了。 [153490809]
- シャコがデカかったらヤバイよな
- 専門家「社会不安や不満が高まると、人々は原因を単純化し外集団を脅威として捉えやすくなります」政権批判か?😡 [399259198]
- 【急募】巨人の人的補償プロテクトリストWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
