Ulepszanie polityki
W poprzednim ćwiczeniu wyznaczyłeś wartości Q dla każdej pary stan–akcja w środowisku MyGridWorld. Teraz użyjesz tych wartości, aby ulepszyć istniejącą politykę. Ulepszanie polityki to kluczowy krok w uczeniu ze wzmocnieniem – polega na wyborze akcji maksymalizujących oczekiwaną użyteczność (wartość Q) w każdym stanie. Po ulepszeniu polityki zobaczysz nowe ruchy agenta zgodne z tą polityką.
Środowisko zostało zaimportowane jako env, wartości Q jako Q, a do dyspozycji masz też funkcję render().
To ćwiczenie jest częścią kursu
Uczenie przez wzmacnianie z Gymnasium w Pythonie
Instrukcje do ćwiczenia
- Znajdź najlepszą akcję dla każdego stanu na podstawie wartości Q.
- Wybierz odpowiednią
actionna podstawieimproved_policy. - Wykonaj wybraną
action, aby zaobserwować jej wynik.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
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()