ポリシー勾配


ポリシー勾配について知りたい方はこちらをご参照ください 強化学習

私たちは、REINFORCEアルゴリズムを実装します。このアルゴリズムは、学習を開始するために完全な軌道を完成させる必要があります。以下の式を見ていただければ、その理由がわかると思います。

$R_t = r_t + \gamma R_{t+1}$

注意:次の時間ステップからのディスカウントしたリターンを常に必要とします。 したがってモンテカルロ法を用いて、戦闘全体をシミュレートする必要があります(時間差学習を行っていないため)。 戦闘中は各時間ステップ(TimeStep)で報酬を集め、最後の時間ステップから逆算してディスカウントしたリターンを計算します。

import numpy as np

def get_discounted_return(rewards, gamma):
    running_discounted_reward = rewards[len(rewards)-1]
    discounted_return = rewards.copy()
    discounted_return[-1] = rewards[-1]
    for t in reversed(range(len(discounted_return) - 1)):
        discounted_return[t] = rewards[t] + gamma * running_discounted_reward
        running_discounted_reward =+ rewards[t]
    return np.array(discounted_return)

すべての連続空間RLモデルと同様に、我々は状態を政策に対応させるために近似関数を使用します。 AIアリーナの初期テストでは、リサーチャーがフィードフォワード、完全連結、ニューラルネットワークを使用するように制限しています。

サポートされているフレームワーク


スターターモデルのニューラルネットワーク部分を以下のフレームワークで実装しており、以下のコードスニペットも含まれています。

<aside> ↩️ 戻る

</aside>

<aside> ➡️ 次のページ

</aside>