ラウンドベースのボードゲームのニューラルネットワークをトレーニングする方法


11

三目並べ、チェス、リスク、その他のラウンドベースのゲームなど、ラウンドベースのボードゲームのニューラルネットワークをトレーニングする方法を知りたいです。推論によって次の動きを取得することは、ゲームの状態を入力としてフィードし、出力を現在のプレーヤーの動きとして使用することで、かなり簡単に思えます。ただし、その目的でAIをトレーニングすることは、それほど単純ではないように見えます。

  1. シングルムーブが良いかどうかは評価がないため、シングルムーブのトレーニングは正しい選択ではないようです。
  2. ゲーム全体のすべてのゲーム状態(入力)と動き(出力)を使用してニューラルネットワークをトレーニングすることは、失われたゲーム内のすべての動きが悪いとは限らないため、適切な選択ではないようです。

それで、ラウンドベースのボードゲームのニューラルネットワークをトレーニングする方法を知りたいですか?tensorflowを使用して、tic-tac-toeのニューラルネットワークを作成したいと考えています。

回答:


10

いい質問です!NNはこのタイプの問題で非常に有望です:キリンチェス。ライの業績はかなり大きなものであると考えられていましたが、残念ながらAlphaGoが脚光を浴びる数か月前に来ました。(その後、ライはDeepMindに採用されましたが、キリンエンジンにはあまり適していませんでした。)

ライのアプローチは非常に役立つことがわかりました。それは確かな結果に裏付けられています。


ゲーム理論組み合わせゲーム理論ではシーケンシャルが好ましい用語であり、これらはゲームに数学分析を適用するフィールドであるため、「ラウンドベース」ではなく「シーケンシャル」を使用することをお勧めします。

リストするゲームは、「抽象」とも呼ばれ、現代の戦略ボードゲーム、または一般的なゲームとは区別されます。これらは、強力なテーマを利用し、一般に、メカニズムと要素の点で抽象ゲームよりコンパクトではありません。これには、数独のようなパズルの場合のように、抽象的なゲームがシーケンシャルゲームやボードゲーム、または特にゲームに限定されないという警告が含まれます。

このゲームのグループの正式な名前は、一般に「パルチザン、シーケンシャル、確定的完全な情報」であり、Tic-Tac-Toeはさらに「取るに足らない」(解決され、簡単に解決できる)および重要でない(扱いにくい、解決されていない)に分類されます。チェスや囲碁のようなゲーム。


7

私はチェスプレーヤーです。私の答えはチェスだけです。

強化学習によるニュートラルネットワークのトレーニングは新しいものではなく、文献で何度も行われています。

一般的な戦略について簡単に説明します。

  • ネットワークの目的は、位置評価を学ぶことです。私たちは皆、女王が司教より強いことを知っていますが、明示的にプログラミングせずにネットワークにそれを知らせることができますか?ポーン構造はどうですか?ネットワークは、ポジションが勝っているかどうかを評価する方法を理解していますか?

  • これで、ネットワークが必要な理由がわかったので、ネットワークを設計する必要があります。デザインは研究間で根本的に異なります。ディープラーニングが普及する前は、人々は浅いネットワークを使用していました。今日では、多くの層を持つネットワークが際立っています。

  • ネットワークができたら、チェスエンジンを作成する必要があります。ニューラルネットワークは、それ自体では魔法のようにチェスをプレイできません。チェスエンジンに接続する必要があります。幸い、ネットワークがそれを行うことができるので、位置評価コードを書く必要はありません。

  • 今、私たちはゲームをしなければなりません。高品質のチェスデータベースから始めるか、代わりにAIエージェントに別のプレーヤー(たとえば、それ自体、別のAIエージェント、または人間)とゲームをプレイさせることができます。これは強化学習として知られてます。

  • ゲームをプレイしている間、ネットワークパラメータを更新します。これは、確率的勾配降下法(または他の同様の手法)によって実行できます。トレーニングは必要なだけ繰り返しますが、通常は数百万回を超えます。

  • 最後に、チェスのトレーニング済みニュートラルネットワークモデルがあります。

詳細については、次のリソースをご覧ください。

https://chessprogramming.wikispaces.com/Learning


ここでは
スモールチェス

これは、要約せずに外部リンクを提供すると、将来どのように悪影響を与える可能性があるかを示す例です。提供されたリンクが
無効に

4

強化学習に慣れるべきだと思います。この機械学習の分野では、エージェントは環境と相互作用し、その後、エージェントは報酬を受け取ります。現在、エージェントはニューラルネットワークであり、環境はゲームであり、エージェントは勝った場合は+1、負けた場合は-1の報酬を受け取ることができます。この状態、アクション、報酬経験タプルを使用して、エージェントをトレーニングできます。YouTubeでのDavid Silverの講義とサットンの本もお勧めできます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.