タグ付けされた質問 「computer-games」

6
一部のゲームがnp完全なのはなぜですか?
「NP完全問題のリスト」に関するウィキペディアのエントリを読んだところ、スーパーマリオ、ポケモン、テトリス、キャンディクラッシュサガなどのゲームがnp完全であることがわかりました。ゲームのNP完全性をどのように想像できますか?回答はあまり正確である必要はありません。ゲームがnp-completeになり得るということの概要を知りたいだけです。

2
バランスを取る必要があるコンピューターの対戦相手へのスコアリングアプローチ
この質問は、私が作成し、いくつかのコンピューターゲームで現在使用されているか、使用される予定のコンピューターの対戦相手に対するアプローチに関するものです。 バックグラウンド 昨年、「Minesweeper Flags」と呼ばれるゲームでコンピューターの対戦相手を改善しようとしたとき(簡単な説明:対戦相手よりも多くの地雷を奪わなければならない、ターンベースのマルチプレイヤーバージョンのMinesweeper )、アルゴリズムの動作を大きく変えました。 。if-else-if-elseのようなアプローチを使用する代わりに、指定された重みを持つ「スコアラー」のセットを使用して、最適な動きを決定しています。 マインスイーパフラッグのようなゲームでは、地雷を奪う可能性が最も高いのは動きを作ることだけですが、それほど単純ではありません。通常、コンピューターがどの動きをするかは、現在のゲーム状態での特定の動きのいくつかの機能に依存します。機能の例: この動きが地雷を採点する確率はどのくらいですか? ここで相手に何かを明かす確率はどれくらいですか? システムの説明 システムは基本的に次のように機能します。 「事前採点者」:現在のゲームの状態に対して事前分析が行われます(掃海艇の旗に関しては、これは通常、すべての確率の計算です) 「得点者」:通常の得点者のセットは、各可能な動きの得点を決定するように求められ、各得点者はそれ自身の基準に従って得点を適用します。得点者は、行われた事前分析の結果を確認できます。 上記のステップで計算されたスコアは合計され、移動のスコアに設定されます。 同じスコアのすべての動きが同じランクになるように、動きはスコアに従ってソートされ、ランク付けされます。 「ポストスコアラー」:上記の結果は、ポストスコアラー自身のルールに従って、任意のフィールドのスコアを任意の方法で変更できる「ポストスコアラー」に送信できます。 プリスコアラー、スコアラー(ウェイト付き)、ポストスコアラーの束を組み合わせると、スコア構成と呼ばれるものになります。 結果例 これは、掃海艇旗にスコアが適用された例です。これは得点されたマップです: そして、これは実際のスコア設定の出力です。可能な動きのランクを示しています。1が最高ランクで、白で強調表示されています。 非常に柔軟なコードを記述したおかげで、このAIへのアプローチは他のゲームにも同様に挿入できます。 長所と短所 以下に、このシステムの長所と短所をいくつか挙げます。 長所 AIのさまざまな構成を非常に簡単に作成できます。 遺伝的アルゴリズムで使用することは可能です:各スコアラーには関連する重みがあり、重みが遺伝子になることができます。 いくつかのツールを使用して、特定の移動が行われた理由と、その移動の主な責任者を確認できます。 ツールを使用して、可能な動きの全体的なスコア/ランクのマップを作成することができます(上のスクリーンショットのように) 人間のプレイ方法にスコアを適用することにより、人間が行うと思われる動きをしようとする「#AI_Mirror」を作成することができます 短所 AIを可能な限り良好にプレイするために、スコア構成を「正しく」調整することは非常に困難です。 ご質問 ここで構築したシステムは、AIの世界で広く知られていますか?実際のAI用語では何と呼ばれますか? このアプローチは理にかなっていますか、または推奨する別のアプローチがありますか? スコア設定を微調整するプロセスを簡単にする方法はありますか? 最後の質問について、私は遺伝的アルゴリズムを使用する可能性を知っています。SARSAについても少し気づいていますここに)。SARSAの問題は、ゲームが終わるまで報酬がわからないことだと思います。最良の動きは、報酬(地雷)をまったく与えない動きであることが多いです。現在の勝つ可能性は、現在のスコア(あなたと対戦相手が何個の地雷を奪ったか)と、現在のマップがどのようなものかによって異なります。 この質問はもともと、今では機能しない人工知能サイトに投稿されました。 このアプローチに使用される(Java)コードは、現在Code Reviewに投稿されています。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.