Monte Carlo 方法的軌跡產生
Monte Carlo 方法需要先產生多個軌跡(episodes)才能推導價值函式。因此,現在你要實作一個函式,透過隨機選取動作來產生軌跡,直到該軌跡終止。在後續的練習中,你會呼叫這個函式,將 Monte Carlo 方法應用到已為你預先載入的自訂環境 env 上。
render() 函式已為你預先載入。
本練習屬於課程
使用 Python 的 Gymnasium 進行強化學習
練習說明
- 使用
seed設為 42 來重設環境。 - 在軌跡迴圈中,每次反覆運算都選取一個隨機的
action。 - 每次反覆運算結束時,將
(state, action, reward)這個 tuple 加到episode資料中。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
def generate_episode():
episode = []
# Reset the environment
state, info = ____
terminated = False
while not terminated:
# Select a random action
action = ____
next_state, reward, terminated, truncated, info = env.step(action)
render()
# Update episode data
episode.____(____)
state = next_state
return episode
print(generate_episode())