LoslegenKostenlos loslegen

CliffWalking mit epsilon-gieriger Strategie lösen

Die CliffWalking-Umgebung ist ein Standard-Testfeld für RL-Algorithmen. Es handelt sich um eine Gitterwelt, in der ein Agent einen Weg vom Startzustand zum Zielzustand finden muss und dabei Klippen meidet. Mit der epsilon-gierigen Strategie kann der Agent die Umgebung effektiv erkunden und zugleich lernen, Klippen zu vermeiden, um die kumulative Belohnung zu maximieren. Deine Aufgabe ist es, diese Umgebung mit der epsilon-gierigen Strategie zu lösen, die in jeder Trainingsepisode erzielten Belohnungen zu berechnen und sie in der Liste rewards_eps_greedy zu speichern.

Diese Übung ist Teil des Kurses

Reinforcement Learning mit Gymnasium in Python

Kurs anzeigen

Anleitung zur Übung

  • Wähle innerhalb einer Episode eine action mit der Funktion epsilon_greedy() aus.
  • Addiere die erhaltene reward zur episode_reward.
  • Hänge nach jeder Episode die gesamte episode_reward zur späteren Analyse an die Liste rewards_eps_greedy an.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

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 bearbeiten und ausführen