Resolver CliffWalking con la estrategia epsilon-greedy
El entorno CliffWalking es un banco de pruebas estándar para algoritmos de RL. Es un mundo en cuadrícula donde un agente debe encontrar un camino desde un estado inicial hasta un objetivo, evitando los precipicios por el camino. Usar la estrategia epsilon-greedy permite al agente explorar el entorno de forma efectiva mientras aprende a evitar los precipicios, maximizando la recompensa acumulada. Tu tarea es resolver este entorno usando la estrategia epsilon-greedy, calcular las recompensas obtenidas en cada episodio de entrenamiento y guardarlas en la lista rewards_eps_greedy.
Este ejercicio forma parte del curso
Reinforcement Learning con Gymnasium en Python
Instrucciones del ejercicio
- Dentro de un episodio, selecciona una
actionusando la funciónepsilon_greedy(). - Acumula la
rewardrecibida enepisode_reward. - Después de cada episodio, añade el
episode_rewardtotal a la listarewards_eps_greedypara analizarlo más tarde.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
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))