1. Learn
  2. /
  3. Courses
  4. /
  5. Pythonで学ぶGymnasiumによるReinforcement Learning

Connected

Exercise

Q-learning の更新則を実装する

Q-learning は強化学習(RL)のオフポリシーなアルゴリズムで、現在の状態で取るべき最良の行動を見つけることを目的とします。実際に次に取った行動を考慮する SARSA と異なり、Q-learning は実際の行動に関わらず将来の最大全報酬(最大Q値)を用いてQ値を更新します。この違いにより、Q-learning は探索的なポリシーやランダムなポリシーに従いながらも最適ポリシーを学習できます。ここでは、Q-learning の規則に基づいて Q-table を更新する関数を実装します。以下に Q-learning の更新則を示します。これに基づいて Q-table を更新する関数を実装してください。

NumPy ライブラリは np としてインポート済みです。

Image showing the mathematical formula of the Q-learning update rule.

Instructions

100 XP
  • 与えられた状態と行動の組に対する現在のQ値を取得します。
  • actions に含まれるすべての可能な行動に対して、次の状態の最大Q値を求めます。
  • Q-learning の数式を用いて、現在の状態・行動のQ値を更新します。
  • エージェントが状態 0 で行動 0 を取り、報酬 5 を受け取り、状態 1 に遷移したときの前提で、Q-table Q を更新します。