Zacznij terazZacznij za darmo

Ocena polityki na śliskim Zamarzniętym Jeziorze

W środowisku śliskiego Zamarzniętego Jeziora samo odczytanie polityki z wyuczonej tablicy Q nie wystarczy, by ocenić jej skuteczność. Aby rzetelnie sprawdzić jakość wyuczonej polityki, trzeba rozegrać wiele epizodów i obserwować średnią uzyskaną nagrodę. To ćwiczenie porównuje efektywność wyuczonej polityki z poziomem bazowym wyznaczonym przez losową politykę stosowaną podczas treningu. Twoim zadaniem jest wykonanie wyuczonej polityki przez kilka epizodów, analiza jej wyników na podstawie zebranych średnich nagród oraz porównanie ich ze średnimi nagrodami uzyskanymi w fazie losowej polityki.

Tablica Q Q, num_states, num_actions oraz avg_reward_per_random_episode zostały wstępnie załadowane. Biblioteka NumPy została zaimportowana jako np.

To ćwiczenie jest częścią kursu

Uczenie przez wzmacnianie z Gymnasium w Pythonie

Zobacz kurs

Instrukcje do ćwiczenia

  • W każdej iteracji wybierz najlepszą akcję na podstawie wyuczonej tablicy Q Q.
  • Oblicz średnią nagrodę na wyuczony epizod avg_reward_per_learned_episode.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

for episode in range(10000):
    state, info = env.reset()
    terminated = False
    episode_reward = 0
    while not terminated:
        # Select the best action based on learned Q-table
        action = ____
        new_state, reward, terminated, truncated, info = env.step(action)
        state = new_state
        episode_reward += reward
    reward_per_learned_episode.append(episode_reward)
# Compute and print the average reward per learned episode
avg_reward_per_learned_episode = ____
print("Average reward per learned episode: ", avg_reward_per_learned_episode)
print("Average reward per random episode: ", ____)
Edytuj i uruchom kod