Lösa CliffWalking med epsilon-greedy-strategin
CliffWalking-miljön är ett vanligt testscenario för RL-algoritmer. Det är en rutnätsvärld där en agent måste hitta en väg från ett starttillstånd till ett måltillstånd utan att falla ner för klipporna längs vägen. Epsilon-greedy-strategin gör det möjligt för agenten att utforska miljön effektivt och samtidigt lära sig att undvika klipporna – med målet att maximera den ackumulerade belöningen. Din uppgift är att lösa den här miljön med epsilon-greedy-strategin, beräkna de belöningar som uppnås i varje träningsepisod och spara dem i listan rewards_eps_greedy.
Den här övningen är en del av kursen
Reinforcement Learning med Gymnasium i Python
Övningsinstruktioner
- Välj en
actionunder varje episod med hjälp av funktionenepsilon_greedy(). - Lägg till den mottagna
rewardtillepisode_reward. - Lägg till den totala
episode_rewardi listanrewards_eps_greedyefter varje episod, för senare analys.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
rewards_eps_greedy = []
for episode in range(total_episodes):
state, info = env.reset()
episode_reward = 0
for i in range(max_steps):
# Select action with epsilon-greedy strategy
action = ____
next_state, reward, terminated, truncated, info = env.step(action)
# Accumulate reward
____
update_q_table(state, action, reward, next_state)
state = next_state
# Append the toal reward to the rewards list
____
print("Average reward per episode: ", np.mean(rewards_eps_greedy))