Risolvi CliffWalking con la strategia epsilon-greedy
L'ambiente CliffWalking è un banco di prova standard per gli algoritmi di RL. È un mondo a griglia in cui un agente deve trovare un percorso da uno stato iniziale a uno stato obiettivo, evitando i precipizi lungo la strada. Usare la strategia epsilon-greedy permette all'agente di esplorare efficacemente l'ambiente mentre impara a evitare i precipizi, massimizzando la ricompensa cumulativa. Il tuo compito è risolvere questo ambiente usando la strategia epsilon-greedy, calcolare le ricompense ottenute in ogni episodio di training e salvarle nella lista rewards_eps_greedy.
Questo esercizio fa parte del corso
Reinforcement Learning con Gymnasium in Python
Istruzioni dell'esercizio
- All'interno di un episodio, seleziona un'
actionusando la funzioneepsilon_greedy(). - Accumula la
rewardricevuta inepisode_reward. - Dopo ogni episodio, aggiungi il
episode_rewardtotale alla listarewards_eps_greedyper analizzarla in seguito.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
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))