Obliczanie wartości stanów dla polityki
Pracując w tym samym deterministycznym środowisku MyGridWorld, oceń teraz skuteczność polityki zdefiniowanej w poprzednim ćwiczeniu. Zrobisz to, obliczając funkcję wartości stanu dla każdego stanu w ramach tej polityki.
Środowisko zostało zaimportowane jako env wraz z niezbędnymi zmiennymi (terminal_state, num_states, policy, gamma).
To ćwiczenie jest częścią kursu
Uczenie przez wzmacnianie z Gymnasium w Pythonie
Instrukcje do ćwiczenia
- Uzupełnij funkcję
compute_state_value(), aby obliczała wartość każdego stanu zgodnie z daną polityką. - Utwórz słownik
state_values, w którym każdy klucz tostate, a każda wartość to wartość tego stanu.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Complete the function
def compute_state_value(state):
if state == terminal_state:
return ____
action = ____
_, next_state, reward, _ = env.unwrapped.P[state][action][0]
return ____
# Compute all state values
state_values = {____: ____ for ____ in range(____)}
print(state_values)