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

4
強化学習で無効な動きを処理する方法は?
5列/五目並べをプレイできるAIを作りたい。タイトルで述べたように、これには強化学習を使用します。 私は、使用ポリシー勾配すなわちベースラインと、補強、方法。値とポリシー関数の近似には、ニューラルネットワークを使用します。畳み込み層と完全に接続された層があります。出力を除くすべてのレイヤーが共有されます。ポリシーの出力層には、(ボードのサイズ)出力ユニットとsoftmaxがあります。したがって、確率的です。しかし、ネットワークが無効な移動の可能性が非常に高い場合はどうでしょうか?無効な移動とは、エージェントが1つの「X」または「O」を含む正方形をチェックしたい場合です。私はそれがそのゲーム状態で立ち往生できると思います。8 × 8 = 648×8=648 \times 8=64 この問題の解決策をお勧めしますか? 私の推測では、俳優と批評家の方法を使用することです。無効な動きについては、負の報酬を与え、相手にターンを渡す必要があります。

1
Tic Tac Toeのようなゲームのニューラルネットワークと遺伝的アルゴリズム
現在、私は五目並べゲームをプレイするためのAIを作成することを目的としたプロジェクトを行っています(これはtic tac toeに似ていますが、15 * 15のボードでプレイし、勝つためには5つ続けて必要です)。私はすでにQラーニングを使用してゲームの状態/アクションをテーブルに保存して、完全な三目並べAIを正常に実装しましたが、15 * 15ボードの場合、ゲーム状態が大きくなりすぎて、このプロジェクトを実装できません。 私の質問は、この問題にはニューラルネットワークまたは遺伝的アルゴリズムを使用する必要があるかということです。より具体的には、これをどのように実装すればよいですか?

1
チェスのようなゲームへの強化学習の適用に関するいくつかの疑問
私はチェスのようなボードゲームを発明しました。自律的に遊べるようにエンジンを組みました。エンジンは基本的に決定木です。それはによって構成されています: 各ノードで可能なすべての合法的な動きを見つける検索機能 ボードの位置に数値を割り当てる評価関数(正の値は最初のプレーヤーが優勢を獲得していることを意味し、負の値は2番目のプレーヤーが代わりに勝利していることを意味します) アルファベット順枝刈りネガマックスアルゴリズム このエンジンの主な問題は、評価関数の最適化が非常に難しいことです。どの要素を考慮し、どの重みを設定するかわかりません。エンジンを改善するために私が見る唯一の方法は、係数と重みのさまざまな組み合わせを毎回試すゲームを繰り返すことです。しかし、それは計算上非常に困難な作業です(ディープラーニングを使用せずにバックプロパゲートできますか?)。 強化学習を使用して、エンジン自体と対戦してエンジンを改善したいと思います。私はそのトピックについて読んでいますが、私はまだかなり混乱しています。 勝ち負けの出力(1または0)の一部であるゲームの他の報酬は何ですか?各ターンの評価関数からの出力など、他の報酬を使用する場合、どのように実装できますか?反復ごとにより良い報酬を与えるように評価関数を変更するにはどうすればよいですか?
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.