Kom igångKom igång gratis

Lös CliffWalking med epsilon-girig strategi med avtagande epsilon

En förbättrad variant av den epsilon-giriga strategin introducerar en avtagandefaktor som gradvis minskar utforskningsgraden, epsilon, i takt med att agenten lär sig mer om miljön. Den här metoden uppmuntrar utforskning i de tidiga inlärningsfaserna och utnyttjande av den inlärda kunskapen i takt med att agenten blir mer bekant med miljön. Nu ska du tillämpa den här strategin för att lösa CliffWalking-miljön.

Miljön har initierats och kan nås via variabeln env. Variablerna epsilon, min_epsilon och epsilon_decay har fördefinieras åt dig. Funktionerna epsilon_greedy() och update_q_table() har importerats.

Den här övningen är en del av kursen

Reinforcement Learning med Gymnasium i Python

Visa kurs

Övningsinstruktioner

  • Implementera den fullständiga träningsslingan genom att välja en action, utföra den, summera den mottagna reward till episode_reward och uppdatera Q-tabellen.
  • Minska epsilon med hjälp av epsilon_decay-faktorn och se till att det inte sjunker under min_epsilon.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

rewards_decay_eps_greedy = []
for episode in range(total_episodes):
    state, info = env.reset()
    episode_reward = 0
    for i in range(max_steps):
      	# Implement the training loop
        action = ____
        new_state, reward, terminated, truncated, info = ____
        episode_reward += ____       
        ____      
        state = new_state
    rewards_decay_eps_greedy.append(episode_reward)
    # Update epsilon
    epsilon = ____
print("Average reward per episode: ", np.mean(rewards_decay_eps_greedy))
Redigera och kör kod