Migliorare una policy
Nel precedente esercizio hai calcolato i Q-value per ogni coppia stato-azione nell'ambiente MyGridWorld. Ora userai questi Q-value per migliorare la policy esistente. Il miglioramento della policy è uno step fondamentale nel reinforcement learning: migliori la policy scegliendo, in ogni stato, le azioni che massimizzano l'utilità attesa (Q-value). Dopo aver migliorato la policy, renderizzerai i nuovi movimenti secondo questa policy migliorata.
L'ambiente è stato importato come env, insieme ai Q-value come Q, e alla funzione render().
Questo esercizio fa parte del corso
Reinforcement Learning con Gymnasium in Python
Istruzioni dell'esercizio
- Trova l'azione migliore per ciascuno stato in base ai Q-value.
- Seleziona la
actioncorretta in base allaimproved_policy. - Esegui la
actionselezionata per osservarne l'esito.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
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()