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

Tréninková smyčka DRL

Aby agent mohl prostředí opakovaně prozkoumávat, je potřeba nastavit tréninkovou smyčku.

Většina DRL algoritmů sdílí tuto základní strukturu:

  1. Procházení epizodami
  2. Procházení kroky v rámci každé epizody
  3. V každém kroku vyber akci, vypočítej ztrátu a aktualizuj síť

Máš k dispozici zástupné funkce select_action() a calculate_loss(), které umožní kódu běžet. K dispozici jsou také Network a optimizer definované v předchozím cvičení.

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

Deep Reinforcement Learning v Pythonu

Zobrazit kurz

Pokyny k cvičení

  • Zajisti, aby vnější smyčka (přes epizody) proběhla celkem deset epizod.
  • Zajisti, aby vnitřní smyčka (přes kroky) běžela až do konce epizody.
  • Proveď akci vybranou funkcí select_action() v prostředí env.
  • Na konci každé iterace vnitřní smyčky aktualizuj stav před zahájením dalšího kroku.

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

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

env = gym.make("LunarLander-v2")
# Run ten episodes
for episode in ____:
    state, info = env.reset()
    done = False    
    # Run through steps until done
    while ____:
        action = select_action(network, state)        
        # Take the action
        next_state, reward, terminated, truncated, _ = ____
        done = terminated or truncated        
        loss = calculate_loss(network, state, action, next_state, reward, done)
        optimizer.zero_grad()
        loss.backward()
        optimizer.step()        
        # Update the state
        state = ____
    print(f"Episode {episode} complete.")
Upravit a spustit kód