は、私が理解しようとしていますQ-Learningの次のようこれはチェッカーのQ-Learningの正しい実装ですか?
私の現在のアルゴリズムは動作し、:
その直接の報酬に関する情報の状態をマップするルックアップテーブルが維持されている1.利用可能な各アクションのユーティリティ
2.各状態で、ルックアップテーブルに含まれているかどうかを確認し、そうでない場合は初期化します(デフォルトのユーティリティーは0)。
の確率で実行するアクションを選択します。
(*ϵ* = 0>ϵ>1 - probability of taking a random action)
1-ϵ = Choosing the state-action pair with the highest utility.
ϵ = Choosing a random move.
ϵ decreases over time.
に基づいて更新し、現在の状態の効用:
Q(st, at) += a[rt+1, + d.max(Q(st+1, a)) - Q(st,at)]
私は現在、午前ヒューリスティックプレイヤーに対してエージェントを演奏するケーズは最高を与える移動即時の報酬。
結果 - 結果は、非常に貧弱であっても数百試合後、Q学習エージェントが勝っているよりももっとたくさん失っています。さらに、勝利の変化は、特に数百に達すると、ほとんど存在しない。
何か不足していますか?同様に、期待はずれ、結果をもたらすことが
(ローテラーニング、TD(0)、TD(ラムダ)、Q-ラーニング)
しかし、彼らはすべてのように見える:私は、カップルのエージェントを実装しています。
これを入力するとシミュレーションが実行され、結果の画像がメインポストに一時的に更新されます。 – Samalot