Aplicar Expected SARSA
Ahora vas a aplicar el algoritmo Expected SARSA en un entorno personalizado como el de abajo, donde el objetivo es que un agente recorra una cuadrícula y llegue a la meta lo antes posible. Se mantienen las mismas reglas de antes: el agente recibe una recompensa de +10 al llegar al diamante, -2 al pasar por una montaña y -1 en cualquier otro estado.

El entorno se ha importado como env.
Este ejercicio forma parte del curso
Reinforcement Learning con Gymnasium en Python
Instrucciones del ejercicio
- Inicializa la tabla Q
Qcon ceros para cada par estado-acción. - Actualiza la tabla Q usando la función
update_q_table(). - Extrae la policy como un diccionario a partir de la Q-table aprendida.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# Initialize the Q-table with random values
Q = ____
for i_episode in range(num_episodes):
state, info = env.reset()
done = False
while not done:
action = env.action_space.sample()
next_state, reward, done, truncated, info = env.step(action)
# Update the Q-table
____
state = next_state
# Derive policy from Q-table
policy = {state: ____ for state in range(____)}
render_policy(policy)