1

4 連続の単純なゲーム用の AI 対戦相手を構築したいと考えています。しかし、私は単純に完璧なプレーヤーを作りたいとは思っていません。代わりに、事実上ゼロから開始し、時間の経過とともにゲームを学習する AI が必要です。

私が知っている唯一のアプローチは、人工神経回路網です。ただし、これらには通常、教師あり学習が必要なようです。また、たとえば、このドキュメントでは、AI は約 20,000 ゲーム後にのみ完璧なプレーヤーになると述べています。これは、人間がプレイするには少し多すぎます。

したがって、単純なゲームで学習 AI を合理的に使用することは可能でしょうか? この仕事を行うためのニューラル ネットワークの適切な代替手段または拡張機能はありますか?

4

2 に答える 2

5

人間と同じ時間スケールでコンピューターにゲームを学習させるようなアルゴリズムや技術を頭の中で思いついたわけではありません。しかし、時間スケールについて話すときは注意が必要です。

たとえば、Fogel と Chellapilla によって開発された手法があります。これは、ランダムに生成された一連のニューラル ネットワークを互いに対戦させ、遺伝的アルゴリズムを使用して、結果に基づいて新しくより優れたニューラル ネットワークを作成します。これはもともとチェッカーで行われていましたが、多くのゲームに適用できます。この手法は、少なくとも人間のトレーニングの負担を取り除きます。ネットワークは自分自身と戦っています。

しかし、それはどのくらいの速さで学習するのでしょうか? Fogel と Chellapilla は、わずか約 250 世代のチェッカーで高品質の結果 (クラス A の成績で、Expert の評価をわずかに下回っています) を獲得しました... しかし、各世代のトーナメントには約 150 の個別のゲームが含まれ、合計で約 37,000 のゲームが行われました。1日に1回ゲームをするとしたら、100年かかる計算になります。そのレベルでプレイする人は、1 日 10 試合を 10 年間プレイしているかもしれませんが、そうは思えません。そういう意味では人間より遅い。一方、優れたラップトップはおそらく、1 週間にこれほど多くのゲームをプレイできますが、これは人間には不可能なことです。

したがって、人間がトレーニングを行い、妥当な規模でパフォーマンスの向上を実感できるトレーニング ルーチンを探しているなら、今日、それを実現できるものを私は知りません。(これは当然のことです。私たちの最高のスーパーコンピューターはまだ人間の脳の生の処理能力を持っておらず、その多くの能力を活用するように設計されたアルゴリズムはまだありません。)

ただし、不完全な AI を探しているだけの場合は、Fogel や Chellapilla のような手法を試して、究極の、ほぼ専門家に評価された結果を取得する代わりに、実行の途中から何かを取得するか、最後から何かを取得することができます。世代ですが、最良の結果ではありません。

于 2012-05-19T18:40:33.780 に答える
0

「General Game Playing」というフィールドを調べてみるとよいでしょう。そこでは、コンピューターがこれまで見たことのないゲームをプレイすることを学ぶことに重点が置かれています。アルゴリズムには明確に定義された形式でゲームのルールが渡され、ゼロからプレイすることを学習する必要があります。

最先端の技術には、ほとんどの場合、ある種のモンテカルロ シミュレーションが組み込まれています。このシミュレーションでは、システムが人間または測定対象の他のプログラムに対して「実際の」ゲームを同時にプレイするときに、システムが自分自身に対して何千ものゲームをプレイします。

于 2012-05-20T10:49:30.673 に答える