ぷよぷよで強いAIってどうすんの?at TECH
ぷよぷよで強いAIってどうすんの? - 暇つぶし2ch1:デフォルトの名無しさん
12/05/12 21:20:32.67
単純に連鎖狙いするようにすると
例えば4連鎖あたりでぷよをなかなか消すことが出来なくなり
たまにおじゃまぷよを送ってやるだけで楽に勝てる
塊を積み重ねていくやり方だと運要素も強くなってくるし

2:デフォルトの名無しさん
12/05/12 21:50:21.29
草板でやれ

3:デフォルトの名無しさん
12/05/12 23:42:34.19
ランダムに見えてすべての出現パターンを
ゲーム開始時に決定していれば良い。

4:デフォルトの名無しさん
12/05/13 00:03:16.02
>3
最近のシリーズは知らないけど、初代は本当にそうだったよ。

5:デフォルトの名無しさん
12/05/13 00:40:17.89
強い人間と同じ「情報収集方法&戦略」をすればいいのでは?
囲碁や将棋と違って、それほど難しくはないと思うが。

ゲームのAIって、どちらかと言えば思考法そのものよりも、
1フレーム内に決定できない思考をさせる場合に、
思考を継続するためのデータ構造や継続方法を考える方が難しくない?

6:デフォルトの名無しさん
12/05/13 02:53:14.08
このスレッドは天才チンパンジー「アイちゃん」が
言語訓練のために立てたものです。

アイと研究員とのやり取りに利用するスレッドなので、
関係者以外は書きこまないで下さい。

                  京都大学霊長類研究所

7:デフォルトの名無しさん
12/05/13 03:41:09.92
今はniimaとかikafinityとか全国トップとタメ以上のAIがあるからな

8:デフォルトの名無しさん
12/05/13 12:14:59.53
>>1
ヒント:目の前の勝利(その時点の最善手、途中の優先度)ではなく、最終的
な勝利を確定するアルゴリズムにしろ。
先読みするのではなく、先を縛れ落とし込め。
敵が強いほど相手の行動を縛るのが簡単だと気が付いたとき
本当の意味が理解できるだろう。

まあその前に敵が弱い相手なら通常の定石や技術に沿った合理的な方法こそ
最高だと知っている前提はある。

9:デフォルトの名無しさん
12/05/13 12:29:30.75
ぷよは攻撃がテトリスとちがい 上に降る分即影響するから
とこぷよとは違うんですよ

消える間の時間差が実際重要だしな

10:デフォルトの名無しさん
12/05/13 13:40:11.06
途中で相手側と自分側で出すぷよをちょろまかせば余裕だろ
というか常に先に出して自分に有利なぷよで確定させてしまえばいい

11:デフォルトの名無しさん
12/05/13 13:56:47.14
>>10
> 出すぷよをちょろまかせば

すぐばれるよ

12:デフォルトの名無しさん
12/05/13 14:31:53.98
>>1
URLリンク(sengiken.web.fc2.com)

13:デフォルトの名無しさん
12/05/13 15:47:58.10
!> 隠しボリュームなど隠したソフトが隠されている何かを検出できる時点で
!> 存在を検索するのはできるでしょう。
!鍵がわからなけりゃ検出できないでしょ。
!実際、今のところ誰もそれを公表できてないし
そう思いたいよな。無線LANも最後の砦がAESだけみたいな状態だし
DVDもBDもあっというまだったわけで。
過信しすぎてないか?

14:デフォルトの名無しさん
12/05/13 16:27:10.10
中の人を作って人にやらせればいい

15:デフォルトの名無しさん
12/05/14 07:26:04.66
対戦させてゆけばそのうち強くなるさ、1万年後

16:デフォルトの名無しさん
12/05/14 12:39:02.72
みんな、ここはマ板だよ

その方法の疑似プログラムやフローチャートですら示せないの?
そんなんで提案する意味あんの?

17:デフォルトの名無しさん
12/05/14 14:47:18.42
>>16
お願いします><

18:デフォルトの名無しさん
12/05/14 19:03:39.94
>>17
悪いが俺自身は
疑似プログラムやフローチャートですら示せない人間なんで、
そんな俺が提案する意味は全くこっぽっちも無いと断言できる

19:デフォルトの名無しさん
12/05/15 15:57:01.59
>>18
誇らしげにそんな事を言う奴がこの板で何やってんだ

20:デフォルトの名無しさん
12/05/15 18:29:01.93
2ちゃんねるですることと言ったら
決まってるだろ?

不まじめに対応するんだよ?

21:デフォルトの名無しさん
12/05/15 19:04:16.06
>>19
プログラムを書くよう皆に促している

22:デフォルトの名無しさん
12/05/16 01:38:16.38
>>21
プログラムなど素人でも書ける、
習得した奴がプログラムを作りたいが何も作れないという状況が
物語るわけな。

つまり設計も仕組みの創作もできない物がコード化する技術を学んでも
何もできない。

23:デフォルトの名無しさん
12/05/16 04:32:27.87
す~ぱ~ぷよぷよ通リミックスの敵AIに詳しい人いませんか?
敵の3列目を7段目まで積ませたいんだが中々上手くいかない

24:デフォルトの名無しさん
12/05/18 12:30:17.39
対人できるところで対戦させるボットつくろうと思うんだが
手続き型でつくるなら下みたいな構造だと思うんだがどうかな

自動でゲーム開始させる|
      ↓                                    
フィールドやぷよや連鎖状態など必要な情報を読み込む←---------|
      ↓                                    |
あつめた情報からどこにおくか決める←ここにAI実装           |
      ↓                                    |
その場所におくように自動で操作する                     |
      ↓                                    |
 勝敗が付いたか調べる-----(勝敗がついていない)--------------|
      ↓
   ゲーム終わり

連鎖wikiってぷよAIのページ見たんだけどフィールド上に今のぷよ、ネクスト、ネクストネクストから読める全パターン読んでそのひとつひとつに評価関数計算して割り出すみたいだね
3手先まで読むと通常22*22*22の10648通りもあるらしい。
まあ将棋や囲碁と違ってぷよの場合置く場所決めるのに時間かかっちゃいけないだろうから(積む速度遅くて負けるだろうから)すべての手読む前に枝切りやアルゴリズムの工夫が必要だろうね。


25:デフォルトの名無しさん
12/05/18 14:58:23.60
とりあえず言語はUWSCでつくろうか

多分AIで評価関数計算する辺りから速度で問題でてくるだろうがまあ試作作るにはちょうどいいだろう
画面から色とか画像認識させるの手軽だし

まあそこまでいったら真剣に言語選ぼう

26:デフォルトの名無しさん
12/05/18 14:58:31.33
連鎖の定型にあわせてファジーにくみこんで行くことくらいしか思いつかんな
暴発は計算で取りのぞけるし

対人戦の発火タイミングとか考えるとすごく難しそうだ

27:デフォルトの名無しさん
12/05/18 20:57:22.59
ニコ動の人とは違うけどぷよクラでやってるけど9~10連鎖で飽和する
どうしたらいいんだろう

28:デフォルトの名無しさん
12/05/18 20:58:22.31
9~10連でだいたいいっても3~4万くらいだから伸ばされると対人戦で負けるんだよなあ

29:デフォルトの名無しさん
12/05/19 18:41:12.84
誰かにいなたんのソース調べて

30:デフォルトの名無しさん
12/05/20 16:47:14.35
思った以上に難しくてあきらめた
誰か頼む

31:デフォルトの名無しさん
12/05/20 19:25:02.42
ボトムアップ思考には無理。

32:デフォルトの名無しさん
12/05/20 23:03:11.41
>>31
どうしてそんなこといえんの?
じゃあトップダウンならつくれんの?

33:100%
12/05/21 09:52:47.75
>>32
設計というのはトップダウンからの設計も同時に必須だってこと。
何故?
トップダウン設計が100%できない奴がほぼ100%だから。

34:デフォルトの名無しさん
12/05/21 12:28:52.13
>>32とは違う者だがなるべく日本語を使うよう心がけてくれ
まるで理解できん

面白いテーマだと思うけど伸びないね
建設的な提案ができないのがなんとも

35:デフォルトの名無しさん
12/05/21 12:44:07.77
ある強いAIと言われるもののソースや設計図が公開されていれば、
それについて改善点はあるかとか、この考え方は巧いなとか、
そういう議論はできると思う。

しかし、そういうのがない状態で、
ここで何かぷよぷよAIについて提案することは非常に難しいと思う。

たいていは設計の一部だけ考えて提案してもあまり意味が無いが、
ぷよぷよAIの場合、意味のある一塊を提案するとなると、
かなり大きなものになるような気がする。

数レスくらいで提案できるように無理にコンパクトにしても、
今度はあまりに抽象的になって具体性に乏しいものになってしまうと思う。


と、提案できない言い訳を考えてみた。

36:デフォルトの名無しさん
12/05/21 12:48:40.24
あまり強くはないけど崩珠のAIなら公開されてるよ
URLリンク(www.jaist.ac.jp)

37:デフォルトの名無しさん
12/05/21 15:02:08.91
>>35
正論だな
でもこの板で強いAIを作れていったらすごく面白そう

ちなみに>>34で提案ができない~と書いたのは自分の力量不足を嘆いたもので
他の人を貶める意図があったわけじゃないよ

38:デフォルトの名無しさん
12/05/21 16:12:27.84
面白そうだけど、ぷよぷよって勝てる気がしない程度にしかやってないから何をやっていいのやら。
>36は切り口を明らかにしている分だけ取っ掛かり易いけどねぇ。

39:デフォルトの名無しさん
12/05/22 08:41:43.84
>>33
そんなデータどっからもってきたの?
おまえの勝手な思い込みだろ?

40:デフォルトの名無しさん
12/05/22 15:57:42.66
あの作者はtwitterで優越感にひたってないでソース晒せや

41:デフォルトの名無しさん
12/05/25 11:53:53.58
堂々とtwitterで作者とか書いてるあたり自分スゲーとか思ってるのは間違いなと思うが、ソース晒せはおかしい

42:デフォルトの名無しさん
12/05/25 23:51:54.56
だからあれでしょ
すべてのパターン読んでそれぞれに評価関数計算して一番高いのを選ぶんでしょ?
でもその実装がうまくできないってのがおまえらなんでしょ?


43:デフォルトの名無しさん
12/05/25 23:57:37.81
>>40,41
作ってもソース公開するメリットなんてないからな
おまえらの意見なんか参考にもならんと思うんだけど
おまえらプログラム自体ソース読めないゴミでしょ?

44:デフォルトの名無しさん
12/05/26 00:00:50.31
>>34
理解できないのはおまえが頭悪いからじゃね
トップダウンとボトムアップくらいいみわかんなきゃやばいだろ

45:デフォルトの名無しさん
12/05/26 00:54:00.59
>>42
問題になってるのは実装ではなく、その評価関数計算をどうするか、だと思うが。

どういう状況の時に、次の手がどれだけあって、
それぞれの手に何点付けるのが強いAIと言えるのか。

例えば・・・

相手にちまちまとおじゃまぷよを送れる状況を作る方が評価が高いのか、
それとも、一発の大きな連鎖を組める状況を作る方が評価が高いのか。

今は高く積もっている所でぷよを回して時間を稼ぎ相手の出方を見る方がいいのか、
それとも、多少ゴミになってもさっさと落とした方がいいのか。

46:デフォルトの名無しさん
12/05/26 10:55:15.14
実装もできないろくにプログラム書けない奴らだっていいたいんじゃね
アイディアあるのに全然実現できてないじゃんてことじゃね

47:デフォルトの名無しさん
12/05/26 14:09:41.37
>>46
アイデア(できる、やればできる)→中間→中間→中間→中間→中間→コード

プログラム書けない以前にアイデアが妄想すぎる。
機能仕様:平均的人間と同じ動作をすること以上
これでは無理。

>>44
一般的なPGはボトムアップしかできない。

48:デフォルトの名無しさん
12/05/26 21:54:24.52
>>47
普通に頭の使い方を知っている人間はプログラムをかけなくてもトップダウン思考ができる。
つまり、一般的なPGとやらはプログラムを書けるという一点以外は何の取柄もないんだな。

49:デフォルトの名無しさん
12/05/27 01:11:29.41
>>47
ボトムアップでプログラム作るってどういうことか説明して

50:デフォルトの名無しさん
12/05/27 07:10:38.42
崩珠(Poje)のAIがオープンソースらしい
ターン制のぷよぷよだけど

51:デフォルトの名無しさん
12/05/27 09:37:30.40
>>36==>>50
はいはい、ステマステマ

52:デフォルトの名無しさん
12/05/29 22:23:29.21
誰かこう思ってこう作ったらこうなったとかねーのかよ

53:デフォルトの名無しさん
12/05/30 07:59:53.76
ただ連結多くして、相手が連鎖したりこっちがめいっぱいになったら適当に発火するプログラム作ったら意外にも平均3連鎖程度しかできなかった(4色)
ただたくさん連結多くしてもだめなんだなって思った

54:デフォルトの名無しさん
12/05/30 20:46:29.09
>>52
俺ならできると思ってとりあえず作ったら難しくて挫折した

55:デフォルトの名無しさん
12/05/31 00:08:42.17
>>52
俺はそこらの馬鹿じゃねーからできるだろうと思って作ったけど難しくて挫折した

56:デフォルトの名無しさん
12/06/01 02:53:30.53
挫折禁止

57:デフォルトの名無しさん
12/06/01 13:06:35.33
>>52
もう10年以上知識集めているが、毎年挫折を感じる

58:デフォルトの名無しさん
12/06/01 20:30:01.95
>>53
クラでつくったの?
あと何言語か教えて

59:デフォルトの名無しさん
12/06/02 00:25:04.44
>>58
クラだよ
言語はC++

クラの画面読み込んでフィールドとかツモとかスコアとか読み取る
んで、これらを材料にしてAI実装するだけの単純な作り

60:デフォルトの名無しさん
12/06/02 12:12:15.99
>>59
ぷよを認識するのってテンプレートマッチングでやった?
落ちてるぷよを認識するとこで躓いてるんだけどなんかいい方法ある?

61:デフォルトの名無しさん
12/06/02 13:19:07.33
>>60
そんなたいそうっぽい技術じゃないよ、難しく考えすぎではw

まずゲームのウィンドウの左上の位置を読み取って基準点にする
ぷよぷよの場合フィールドとかツモの場所とか固定だから、その基準点からのフィールドの位置を指定してマスの色を点で読み込むだけ

画面の色読み取るライブラリとかはたくさんあるっしょ
フィールドだと13(縦)*6(横)*2(自分と相手)ととかあとツモの色とかもろもろ読み込んでも1msもかからんよ


62:デフォルトの名無しさん
12/06/02 13:26:04.46
もちろん見えない13段目のマス読むのは差し替えで透けるやつつかってね

63:デフォルトの名無しさん
12/06/08 09:42:54.38
どうやってスコアとか読み取るの?

64:デフォルトの名無しさん
12/06/08 12:44:57.88
簡単なOCRだろ

固定されたフォントで決められたサイズや位置の数字だけを読み取るのだから、
それほど難しいものでもない
(可変サイズでも倍率計算でいいと思う)

数字1文字に対して数カ所の点のピクセル値を調べれば済むんじゃないかな

65:デフォルトの名無しさん
12/06/08 13:03:59.62
クラなら差し替えできるから数字の0~9すべての背景色を別々にするってのもいいかもね
そうすれば色とるのが一点で済むし対戦時も点数がわかる

66:デフォルトの名無しさん
12/06/08 16:27:10.17
AIのなかのひとナルシストすぎてきもかった

67:デフォルトの名無しさん
12/06/08 23:27:31.02
>>66
AI「あなたがセカンド7連鎖を打つ確率75%。しかし2連鎖分足りない。」

68:デフォルトの名無しさん
12/06/09 00:39:12.12
そっとしておいてやれよ

69:デフォルトの名無しさん
12/06/10 09:47:13.78
>>61
落ちてるぷよについて聞いてると思うんだが
それだと落ちてるぷよ読み込めない気が

70:デフォルトの名無しさん
12/06/10 17:04:29.54
それくらいできなきゃAIなんてく組めない

てこともないけど そんな簡単なとこでつまづくなよw

71:デフォルトの名無しさん
12/06/10 17:16:39.02
落ちてるぷよの認識において、何が原因で難しいと感じるのか、
的を絞って質問してくれないと、どんなアドバイスができるか考える事もできん

72:デフォルトの名無しさん
12/06/10 19:00:06.22
>>70
>>71
だったら具体的な方法1つでいいからあげて教えてよ
どんなんでもいいから

73:デフォルトの名無しさん
12/06/10 19:14:56.28
>>72
すでに >>61 で挙っている。
その方法で落ちてくるぷよを認識できない
問題点をもっと具体的に指摘してくれ。

それに対処する方法を私が知っている、
あるいは考案できたらちゃんとアドバイスする。

何の問題点をどう対処するのかも分らないまま方法を提案することなど、
私にはできない。

74:デフォルトの名無しさん
12/06/10 21:28:12.15
だーかーらー

落ちてるぷよって変化してるんだからあらかじめ決めておいたポイントの読み込みじゃ無理でしょって

それできいてるんですよ?わかります?

75:デフォルトの名無しさん
12/06/10 21:38:48.70
>>74
フィールドの全マスを調べればいいのでは?

ぷよってピクセル段位じゃなくてマス単位で落ちてくるから、
調べるのもそれほど難しくないと思うが。

76:デフォルトの名無しさん
12/06/10 21:55:20.71
>>74
おまえのものすごい勘違いを是正してやってもいいが態度が気に食わない

77:デフォルトの名無しさん
12/06/11 04:06:16.53
落ちているぷよは読み込む必要あるの?
色はネクストから分かるし
ネクスト出てから設置までの操作は場にあるぷよに依存する
人間なら落ちているぷよはほとんど見ないよ

78:デフォルトの名無しさん
12/06/11 09:43:00.93
>>77
しばらく悩ませておけばいいのに
優しいな

79:デフォルトの名無しさん
12/06/11 12:53:12.56
意図的に悩ませる意味が分らん

80:デフォルトの名無しさん
12/06/11 14:59:53.08
普通に数手先の評価式つくって学習させればいいさ。

81:デフォルトの名無しさん
12/06/12 00:40:34.38
起爆タイミングをはかるのに凝視は基本

82:デフォルトの名無しさん
12/06/14 11:19:16.20
誰かAIできた?
AIに関する考えはあるんだけどプログラミングができないから強いのかわからない
誰か一緒に考えようぜ

83:デフォルトの名無しさん
12/06/14 20:57:01.59
>>82
念能力をつけて、凝で見抜け。

84:デフォルトの名無しさん
12/06/15 00:07:22.22
デスタワーAIを作るぜ


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch