Stosowanie algorytmu Expected SARSA
Teraz zastosujesz algorytm Expected SARSA w niestandardowym środowisku przedstawionym poniżej. Celem agenta jest poruszanie się po siatce i dotarcie do celu jak najszybciej. Obowiązują te same zasady co wcześniej: agent otrzymuje nagrodę +10 za dotarcie do diamentu, -2 za przejście przez górę i -1 za każdy inny stan.

Środowisko zostało zaimportowane jako env.
To ćwiczenie jest częścią kursu
Uczenie przez wzmacnianie z Gymnasium w Pythonie
Instrukcje do ćwiczenia
- Zainicjalizuj tablicę Q (
Q) zerami dla każdej pary stan–akcja. - Zaktualizuj tablicę Q, korzystając z funkcji
update_q_table(). - Wyodrębnij politykę jako słownik na podstawie wyuczonej tablicy Q.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Initialize the Q-table with random values
Q = ____
for i_episode in range(num_episodes):
state, info = env.reset()
done = False
while not done:
action = env.action_space.sample()
next_state, reward, done, truncated, info = env.step(action)
# Update the Q-table
____
state = next_state
# Derive policy from Q-table
policy = {state: ____ for state in range(____)}
render_policy(policy)