Aan de slagGa gratis aan de slag

CliffWalking oplossen met de epsilon-greedystrategie

De CliffWalking-omgeving is een standaard testomgeving voor RL-algoritmen. Het is een grid-wereld waarin een agent een pad van een startstate naar een doelstate moet vinden en onderweg kliffen moet vermijden. Met de epsilon-greedystrategie kan de agent de omgeving effectief verkennen terwijl hij leert kliffen te mijden, zodat de cumulatieve beloning maximaal wordt. Jouw taak is om deze omgeving op te lossen met de epsilon-greedystrategie, de beloningen per trainingsepisode te berekenen en deze op te slaan in de lijst rewards_eps_greedy.

Deze oefening maakt deel uit van de cursus

Reinforcement Learning met Gymnasium in Python

Cursus bekijken

Oefeninstructies

  • Kies binnen een episode een action met de functie epsilon_greedy().
  • Tel de ontvangen reward op bij de episode_reward.
  • Voeg na elke episode de totale episode_reward toe aan de lijst rewards_eps_greedy voor latere analyse.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

rewards_eps_greedy = []
for episode in range(total_episodes):
    state, info = env.reset()
    episode_reward = 0
    for i in range(max_steps):
      	# Select action with epsilon-greedy strategy
        action = ____
        next_state, reward, terminated, truncated, info = env.step(action)
        # Accumulate reward
        ____        
        update_q_table(state, action, reward, next_state)      
        state = next_state
    # Append the toal reward to the rewards list 
    ____
print("Average reward per episode: ", np.mean(rewards_eps_greedy))
Code bewerken en uitvoeren