おまえら、五目並べ作ってみろよ!!!

このエントリーをはてなブックマークに追加
190162:01/11/01 22:33
これで一応フレームはできたと思う。あとは、getInputFromRoutineだね。
まあ、これが難しいんだけど。>誰かやってくれない?

>険しい道が待ってることは分かってるわけだし。
>中途半端なことすると叩かれるし(w
遠慮なく叩いてくれ。叩き合ってこそ2チャンネルじゃないか。なんつて。
191仕様書無しさん:01/11/01 23:24
turn ^= 0x03;
192仕様書無しさん:01/11/01 23:48
>>186
それは言わない約束では(w
193162:01/11/03 21:43
なんかさー、子供の頃、みんな帰っちゃったのに、1人でかくれんぼ続けてる
やつっていなかった?俺って、昔から、そういうやつだったんだよ。(w
194仕様書無しさん:01/11/03 22:39
>>162
寂しいこと言うなよ。
俺はいつもここをチェックしてる。
195名無し~3.EXE:01/11/03 23:17
<sup>?</sup>
196仕様書無しさん:01/11/05 22:55
で?
197仕様書無しさん:01/11/05 23:08
********仕様*************
言語:
Java .C#

環境:
Mac,Windows

グラフィック:
Swing など

ネットワーク機能は以下
SOAPで通信
**************************
198仕様書無しさん:01/11/07 15:44
最近不活発だな
199仕様書無しさん:01/11/08 23:13
まったくだ.。
200162:01/11/08 23:28
>>194
ありがと。

最近、テトリスとかブロック崩しが流行ってるね。
結構がんばってるみたい。

俺なりに5目考えたけど、やっぱり思考ルーチンが難しいな。
俺的には、アルゴリズムより、プログラム技術に興味があるので、あんまり
進まないんだけどお、まあ、とにかく、何かだそうか。

思考ルーチンは、相手の最後の一手を引数にとった方が楽なんで、
そうしようと思う。

なんかソースの板があるみたいだから、そっちにあげとく。
まあ、気が向いたら、批判してくれ。
まだ33の禁止とかやってないけど、今月はちょっと(かなり)忙しいんだ。
201162:01/11/08 23:47
ソース
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=999294620
42から44

で、今実行してみたら、なんかバグがあるみたいだ。はずかシー。すさまじくはずかシー。
まあいいか。

思考ルーチンは、
 自分が5になるなら打つ
 相手が5になるなら止め打ち
 自分が両端のあいている3になるなら打つ
 相手が両端のあいている3になるなら止め打ち
 自分の並びを長くする
くらいだった。自分の並びを考えるときは「飛び」も入れた。
相手の並びを計算するときは「飛び」は入れなかった。理由は面倒だから。

ものすごく弱い。そのうえバグが。。。;;)
まあ、いいや、今はそんなところ。
202ビック東大:01/11/09 00:12
>201
違うな。相手オブジェクトにチェックさせるんだ。自分がズルをしていないか相手がチェックすれば自分でチェックする必要が無いわけだ。
つまり打ってから相手オブジェクトがOKを出せばそのまま表示するんだ。
NOだったらエラーを出してもう一度打たせろ。
203仕様書無しさん:01/11/09 00:30
おお。レスが。
>>202
でも、意味わからんな。
オブジェクトって何?Cだよ。
それと、それは思考ルーチンを強くすることとは関係ないよな。
禁じ手の話?でも、まだいっさいそういうことはやってないよ。
それと、誰がチェックしても、1度はするなら、効率も同じでわ?
何...かな?
204ビック東大:01/11/09 00:33
>203
チェックのやり方の問題だよ。開発効率やわかりやすさ。

ま、Cなら関係ないね。
197を見ててっきりjavaかC++でやるものかと思ったんだがね。
205仕様書無しさん:01/11/09 00:37
でもその考え方はCでも十分実現可能。
というかそうすべき。
206162:01/11/09 00:42
>>205
まじ?なぜ?
自分で打つ場所を相手に示して、相手がだめと言ったらまた考え直して、
また打つ場所を示して、相手がだめと言ったら、、、むちゃくちゃじゃない?

それに、打っていい場所かどうか自分でチェックできないなら、打つ場所の
候補すら考えられないでしょ?
本来は、打てる場所の中から「最適手」を選んで打つはずだから。ちゃう?

パパあげちゃうぞー。
207162:01/11/09 00:51
「相手」に誤解があるかな。
今考えてるのは、思考ルーチン対人間。人間が指定した場所が有効かどうか
の判定は、思考ルーチンではなく、ユーザー入力ルーチンが担当。思考ルー
チンの方は、自分で有効なのしか打たない。そうしたんだけど、まずいの?
208仕様書無しさん:01/11/09 00:58
「審判」ルーチンを作って、
そいつに「どうかなぁ?」って相談するようなモデルのが
それらしっぽく思える。
209仕様書無しさん:01/11/09 00:58
>>206
>>205はOO罵迦なので脳味噌が汚染されています。
210仕様書無しさん:01/11/09 01:00
>>209
うむ・・・確かにそうかも。職業病だな。
反省します。

叱ってくれてありがとう。
211162:01/11/09 01:09
レスがあるから寝れなくなっちゃった。明日はきびしいのに。
>>202 >>204 >>205 >>208 >>209 ありがと。
>>209 でも、俺もほんとうはOO屋なんだよ。がむばってC使ってんだ。
>>208 OOならそうするかな。
  でも、有効性の相談はやっぱり効率が悪いと思う。
  OOは、たいてい現実をシミュレートした方がよいと思う。
  審判に相談する人はいなさそう。
212162:01/11/09 01:17
前言、やや撤回。
打つ場所が有効かどうかは、本来、思考ルーチンでも人間でも同じ。
だから、これは共通の関数が使えると思う。これを「審判」と呼ぶならそうかな。

OOは今やってないけど、思考ルーチンと人間を別クラスにした場合、「審判」
をグローバル関数にするのはちょっとやだね。(Javaならできないし。)

俺なら、なるべく効率のよい「判定」関数をもった基底クラスを作って、思考ル
ーチンクラスと人間クラスをそこから派生させそう。
でも、OOネタはもうやめたほうがよいかな?
213仕様書無しさん:01/11/09 01:31
>>212
あのー、すごく不思議なんですが、
>>130の設計思想とどこが違うんでしょうか?
なんで再発明(という程でもないが)するの?
そのまま、乗っかっていれば問題なかったような気が。
214162:01/11/09 09:29
>>213
ごめんな。理由は
 自分で書いてみたかった。
 パスカルわからん。
です。でも、とりあえず書いたから、最初の理由は済んだ。

もし、130がまだ見てるなら、教えてくれ。
 1.思考ルーチンはどのファイルのどの辺?
  (教えてくれたら、なんとか読んでみたい。)
 2.なんでdllを使った? 
215130:01/11/11 00:48
おお。全然読んでなかったのに。
家のかちゅのお気に入りを何の気なしに読んでみたら、伸びてる…。

>214
1は、思考ルーチンは、わざとソースに入れませんでした。
何故なら、それを真似て作っても、面白いモノが出ないと思ったので。
見せろ、というなら、アップします。

2は、dll を使用すれば、どんな言語の使用者(C, C++, Delphi)でも思考ルーチンを作れるから(VB は知らん。作れるの?)。
まあ、Win 以外の環境では、ダメですが(なら、描画部分はGUIでもイイんだなって後で気づいた)。

あと、Judge ルーチンは、バグがあります。
なんか、使われなかったから、イイヤって放置してありますが。
今から直そうかな…。
216130:01/11/11 23:57
活気づけのために、思考ルーチンもアップしました。
非常に基本的な、重み付けしかしていない評価関数です。
見ても参考にはならないでしょう。
>>207
僕は、思考ルーチン vs 人間よりも、いろんな人の作った思考ルーチン vs 思考ルーチンの対決の方が楽しみです。
217仕様書無しさん:01/11/12 18:17
162 待ち age
テトリスのスレも口ばっかなヤツしかいないのな。
これが、マ版の限界ってヤツ?
218仕様書無しさん:01/11/12 18:20
馬鹿を罵る口はあっても馬鹿のために動かす手はない。
それだけだろ?
219162:01/11/12 22:20
久しぶりぶり。(しんちゃん風に。)

>>215 >>216(というかasuka02?)
レスありがと。
思考ルーチンアップしたのはどこかな?読んでみたいな。

思考ルーチン対思考ルーチンか。なんか負けたらすごく鬱になりそうだなあ。
(おぢさんは一応プロだけど、君はまだ学生だったりしないか?)

>>217
ありがと。
でも、この後どういう展開がいい?
162と130の思考ルーチンを戦わせて、162が圧敗するのを見てみる?
まあ、勝ち負けはともかく、あんまりアルゴリズムとか考えるのは、
老人には荷が重いな。
それに正直、アルゴリズムというより、パターンの数え上げになりそうな
気がする。それをロハでやるのはきっついなー。(こんなんでごめんな。)

俺自身は、プログラムの構造とかに興味があるんだけど、まあ、それも漠然と
してるかな。130の設定に乗って、思考ルーチンを作って、dll化して、、、でも
いいけど、他の人はどうする?

誰か、5目ならべのアルゴリズムの本とか知らないか。上の方にある必勝法って
のは本なの?
220130/asuka02:01/11/12 23:25
>>219
思考ルーチンは、前と同じ場所↓です。
http://www.2nd5.com/files/five.lzh
これを解凍してできる、dll フォルダ内の computer.h, computer.c です。
ちなみに、僕は、もう20代も後半です。
今回のプログラムは、仕事の合間(気分転換)に作りました(気分転換しすぎましたが)。
思考ルーチンは、生成ファイルのバイト数とかも考慮に入れると面白いかもしれません。
こんなに小さいのに、こんなに強いのか!とか。
まあ、もうあんまり人もいないみたいなので、(僕のプログラムを使っても使わなくても)対戦は望むべくもないと思いますが……。
221130:01/11/13 23:34
テトリスのスレは、盛り上がってるナー、と age てみる。
222仕様書無しさん:01/11/13 23:46
とりあえず
油揚げ
ひじき
ちくわ
だいず
じゃこ
をご飯とまぜておけば良いですか?
223ビック東大:01/11/13 23:47
http://game.2ch.net/test/read.cgi/ff/1002066745/
なぁおまえら、協力してやってくれないか。かわいそうで見てられないんだよ。
俺がやってもいいんだがいかんせん俺は他のものを作りたい。
お兄ちゃんお願い。サクラの一生のお願い。
224仕様書無しさん:01/11/14 00:34
>>223
クライベイビーの頼みは聞けん。
225130:01/11/14 02:07
>>222
とりあえず、それで正しいですが、縦に読めませんが。

>>223
さっきまで、つい、さっきまで、ゲームプログラマでした。
ホントに、ついさっきまで。
……。
それはそうと、別にそれは作りたくないので、咲耶たんや、サクラたんに頼まれても、出来ません。
確かに可哀想ですが。
226162:01/11/16 22:14
>>asuka02
遅レスでごめんな。いろいろ忙しくて。

>思考ルーチンは、前と同じ場所↓です。
ダウンロードしてみた。まだ読んでないけど、結構強いね。
>ちなみに、僕は、もう20代も後半です。
それは失礼。時間がふんだんにあるのかと思って。
仕事の合間にぱっと作っちゃうんだから、優秀なんだな。
ちなみに、俺は、2チャンでは逝ってよしの40代なんだ。
若いのには勝てんな。やっぱり。

>>225にちょっと気になることが書いてあるけど、大丈夫か?

また、しばらく留守にするけど、あげとくよ。
227CもしくはJAVAの五目:01/11/19 18:09
これ、某下請け企業の採用判定問題ですね。期限は1週間だったかな。
できないの? >>1 その会社良くないよ。
228ビック東大:01/11/19 20:21
いやぁ、40代の人がプログラマやってるんだ。40過ぎてもまだ希望があるね。
229仕様書無しさん:01/11/19 20:35
糞壁は灯台卒ではありませんが、なにか?
230130/asuka02:01/11/19 20:49
>>226
思考ルーチン、たまに、おかしいんですよね。
原因は「とび」だと思うんですけど。

> 仕事の合間にぱっと作っちゃうんだから、優秀なんだな。
あんまし優秀ってわけじゃないです。
優秀なら >>225 のような事もなかったわけですし。
詳細は述べ(れ)ませんが、一段落しました。
ご心配ありがとうございます。

それはそうと、やっぱ AI 関連は面白いですねー。
こんなヘボ・アルゴリズムでも、(自分が作ったのに)自分の予想外の所に打たれたりして、楽しいっす。
231162:01/11/20 22:09
>>228
40代いっぱいいるんじゃないの?それとも叩かれてるだけ?やだな。
>>230
一段落...なら、よかった。(だよな。)

AIは俺にはきついなー。今日あんまりにも無意味な会議に出させられたんで、
反抗的に、5目のアルゴ考えてみた。でも、人前に出せるようなものできないな。
232130:01/11/21 00:02
>>231
どんなアルゴリズム、考えました??興味あります。
AI的な発想でいくと、今アップしてあるものは、たんに1手読むだけなので、何手か先を読むようにすると、ある程度は強くなると思います。
たとえば、3手先を読むなら、まず、しらみつぶしに1手目の評価値を計算して、
次の手は、その中からある程度高い評価値をもった手、たとえば、評価値500以上とか、上位3手とかを、選んで、
そこから、さらに手を伸ばして探索する、を繰り返して、最終的に最も高い評価値を出したものを手として選ぶ、
なんてのが考え付きますね。
あとは、定石とかを加えれば、強くなるかも知れません。
233仕様書無しさん:01/11/21 14:47
禁じ手を打たせるように誘導するアルゴリズムが
一番強く憎たらしく感じると思う
234仕様書無しさん:01/12/04 14:24
>>232
>上位3手とかを、選んで、
これは盲点でした。
最近VBを始めたばかりで、練習でオセロなんか作ってたんですが、
そのCPUルーチンで3手先までありとあらゆる手を
全部しらみつぶしに評価するようにしていました。
これだと5手先くらいまで読もうとするといつまでも結果が帰ってこないんです。
でも、確かに上位何手かずつをピックアップしていけば
もっと先まで読んでも大丈夫そうですね。
これを基に自分なりの方法を考えてみたいと思います。
良いヒントありがとうございました。
235仕様書無しさん:02/01/19 04:13
バックギャモン、vectorでようやく一個見付けた
GAMMONかなー、タイトル。

思考は弱いらしいが面白いよ
五目並べよりも現実を見てくれ、なんてな
236仕様書無しさん:02/01/20 01:54
>>235
どういう意味?
あ、別に煽ってるわけじゃないよ。
ゲームとしての面白さを言ってるんなら、それって個人差じゃないかしらん。
237235:02/01/21 03:49
>236
ゲームに必要なのは。実現難解な思考が必要なのか、
強い思考か、それともゲームしてて面白い思考が重要
なのか、それとも思考にルールを合わせて改変しちゃう
のも有りだろうし、ロープレ等でなら敵もんスたあを思考
ルーチンに適合するようにお馬鹿設定するのも良い。
(バイオハザードならゾンビ、一般には昆虫等のシンプル
思考)

最強を目指すのもプログラマアの娯楽として思考ルー点
極めるのも良いのたろうけど、・・・・とかいろいろ考えてて
思わず書きこんだ。>235の真意は俺にもフメイヨ
238235:02/02/07 04:42
この辺の書籍って売り出されているの?
遠い昔に極めた記憶もあるけれど、周囲が俺に対しては
糞であってほしいようでプレスかかってっからあんまし
・・・ま、・・・だる。

とにもかくにも機械は賢くてもムカツクだけと言うのが需要読みか?
239仕様書無しさん
どうよ?