Mejorar una política
En el ejercicio anterior, calculaste los valores Q para cada par estado-acción en el entorno MyGridWorld. Ahora usarás estos valores Q para mejorar la política existente. La mejora de políticas es un paso clave en reinforcement learning: se mejora la política eligiendo, en cada estado, las acciones que maximizan la utilidad esperada (valor Q). Después de mejorar la política, representarás los nuevos movimientos según esta política mejorada.
El entorno se ha importado como env, junto con los valores Q como Q, y la función render().
Este ejercicio forma parte del curso
Reinforcement Learning con Gymnasium en Python
Instrucciones del ejercicio
- Encuentra la mejor acción para cada estado basándote en los valores Q.
- Selecciona la
actioncorrecta usando laimproved_policy. - Ejecuta la
actionseleccionada para observar su resultado.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
improved_policy = {}
for state in range(num_states-1):
# Find the best action for each state based on Q-values
max_action = ____
improved_policy[state] = max_action
terminated = False
while not terminated:
# Select action based on policy
action = ____
# Execute the action
state, reward, terminated, truncated, info = ____
render()