Regula de actualizare Expected SARSA
În acest exercițiu, vei implementa regula de actualizare Expected SARSA – un algoritm de RL model-free bazat pe diferențe temporale. Expected SARSA estimează valoarea așteptată a politicii curente prin calcularea mediei peste toate acțiunile posibile, oferind o țintă de actualizare mai stabilă față de SARSA. Formulele utilizate în Expected SARSA sunt prezentate mai jos.

Biblioteca numpy a fost importată ca np.
Acest exercițiu face parte din cursul
Reinforcement Learning cu Gymnasium în Python
Instrucțiuni pentru exercițiu
- Calculează valoarea Q așteptată pentru
next_state. - Actualizează valoarea Q pentru
state-ul șiaction-ul curent folosind formula Expected SARSA. - Actualizează tabelul Q
Qpresupunând că agentul execută acțiunea1în starea2și trece în starea3, primind o recompensă de5.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
def update_q_table(state, action, next_state, reward):
# Calculate the expected Q-value for the next state
expected_q = ____
# Update the Q-value for the current state and action
Q[state, action] = ____
Q = np.random.rand(5, 2)
print("Old Q:\n", Q)
alpha = 0.1
gamma = 0.99
# Update the Q-table
update_q_table(____, ____, ____, ____)
print("Updated Q:\n", Q)