Welcome to my blog

ぷよ雑記

【20160424】ぷよの日 AI作成状況でも・・・理論的に難しいことが発覚? そして、人間様ってすごい??

0
深緑の女魔術師です。

24日だしってことで、
たまには、ぷよネタの記事でも・・・

相変わらずDSはぷよがメインなので、
やってないことはないです。
(そのうち、プレイ時間に関する記事を投稿予定)

さて、午前中ひさびさにWi-Fiに接続しました。

あまり人口がいないようなので、ふたりでぷよぷよを数試合。

こーゆうのもあれですが、
対戦相手は、一般的な階段ができるレベルの方。

あまり無駄けしもせず、つぶし等もやってこない方だったので、
いつも通りの連鎖が打てれば勝てる相手でした。

が、実践になるとまったく連鎖できないね。

焦って積んで、不格好な連鎖・・・

消すことはかっこ悪いし、相手に悪い!

って思ってしまうので、無駄けしを控えることが仇になってます。

結果、7戦やって2勝だったと思う。

さて、件名のAI化について。

もともと作ってていたとことんぷよぷよソースを
だいぶカプセル化させたことで、
だいぶAIルーチンが作りやすくなりました。

で、現在の実装状況は

現在ツモオンリーで先読みシミュレート機能実装。
先読みシミュレート機能とは、ここに配置した場合に、
何連鎖が可能やぷよのつながり状況等をシミュレートする機能です。
同時に、その操作を覚えて、発火させるとこまで実装。

あとは、この情報をもとにAIとして動作させることができれば、
ひとまずAIっぽくなると思います。

なんだ、完成しそうじゃん。

って思うかもしれませんが、このレベルならいいんですよ。

問題は、2,3ツモ目を入れた場合ね。

2,3ツモ目を考慮すると・・・・
1ツモ目 18^1 = 18パターン
2ツモ目 18^2 = 324パターン
3ツモ目 18^3 = 5832パターン

そして、4ツモ目を考慮すると・・・

4ツモ目 18^4 = 104976パターン

ネックになるのは処理時間ね。

現在、ポンコツソース故に、結構遅いです。
手元にソースがないですが、
仮に、1パターン計算するのに、0.01[秒]だとして

1ツモ目 18^1*0.01 = 0.18秒
2ツモ目 18^2*0.01 = 3.24秒
3ツモ目 18^3*0.01 = 58.32秒
4ツモ目 18^4*0.01 = 1049.76秒
5ツモ目 18^5*0.01 = 18895.68秒

3ツモ目の段階で1分です。
4ツモ目は、17分・・・

これは危険な感じですね・・・

無論、同じパターンを除外すれば、
もう少し計算処理は減ると思いますが、
大体上記ぐらいです。

先に、そもそもこれをJSでやろうとしてる時点で間違ってるかもですね。
どこまで早くなるか不明ですが、
3ツモだけでも1秒くらいで処理したいですね・・・

4ツモ目以降はチートの域ですから、
AI化に関しては、3ツモ目で十分。

となると、0.00017秒ぐらいで処理しないと・・・

可能なのでしょうか?

将棋同様に採譜覚えが一番なのですかね・・・
無数のパターンを学習して、このパターンはこう動くという方式をとらないと、
計算量が莫大になって、とても処理しきれません・・・

わたしのポンコツソースのせいだけど、
人間様ってすごいですね。

3ツモ目まで平然に操作しますもんね。

以上って途中で勝手に締めた感じですね。。。

関連記事
スポンサーサイト
最後まで読んでくれてありがとう!

こんなブログですが、
クリック応援はすごい励みになるので大歓迎です!

にほんブログ村 ゲームブログ ぷよぷよ・ぷよぷよクエストへ   にほんブログ村 スロットブログへ   web拍手 by FC2
深緑の女魔術師ぷよぷよAI

0 Comments

There are no comments yet.

Leave a reply