Začněte nyníZačněte zdarma

Vyhodnocení politiky na kluzatém Frozen Lake

V prostředí kluzatého Frozen Lake nestačí politiku pouze odvodit z naučené Q-tabulky – to samo o sobě neřekne, jak dobře skutečně funguje. Abychom mohli správně posoudit kvalitu naučené politiky, je potřeba odehrát více epizod a sledovat průměrnou získanou odměnu. Toto cvičení porovnává účinnost naučené politiky se základní linií, která vznikla sledováním náhodné politiky během tréninku. Tvým úkolem je spustit naučenou politiku přes několik epizod, analyzovat její výkon na základě průměrných odměn a porovnat je s průměrnými odměnami dosaženými při náhodné politice.

Q-tabulka Q, num_states, num_actions a avg_reward_per_random_episode jsou předem načteny. Knihovna NumPy je importována jako np.

Toto cvičení je součástí kurzu

Reinforcement Learning with Gymnasium in Python

Zobrazit kurz

Pokyny k cvičení

  • V každé iteraci vyber nejlepší akci na základě naučené Q-tabulky Q.
  • Vypočítej průměrnou odměnu za naučenou epizodu avg_reward_per_learned_episode.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

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: ", ____)
Upravit a spustit kód