Implementar la regla de actualización SARSA
SARSA es un algoritmo on-policy en RL que actualiza la función valor-acción en función de la acción realizada y de la acción elegida en el siguiente estado. Este método ayuda a aprender el valor no solo del par estado-acción actual, sino también del siguiente, lo que permite aprender políticas que tienen en cuenta acciones futuras. Abajo tienes la regla de actualización de SARSA; tu tarea es implementar una función que actualice una Q-table siguiendo dicha regla.
La biblioteca NumPy ya se ha importado como np.

Este ejercicio forma parte del curso
Reinforcement Learning con Gymnasium en Python
Instrucciones del ejercicio
- Recupera el valor Q actual para el par estado-acción indicado.
- Busca el valor Q para el siguiente par estado-acción.
- Actualiza el valor Q del par estado-acción actual usando la fórmula de SARSA.
- Actualiza la Q-table
Q, dado que un agente realiza la acción0en el estado0, recibe una recompensa de5, pasa al estado1y ejecuta la acción1.
ejercicio interactivo práctico
Prueba este ejercicio completando este código de ejemplo.
def update_q_table(state, action, reward, next_state, next_action):
# Get the old value of the current state-action pair
old_value = ____
# Get the value of the next state-action pair
next_value = ____
# Compute the new value of the current state-action pair
Q[(state, action)] = ____
alpha = 0.1
gamma = 0.8
Q = np.array([[10,0],[0,20]], dtype='float32')
# Update the Q-table for the ('state1', 'action1') pair
____
print(Q)