LoslegenKostenlos loslegen

8x8 Frozen Lake mit SARSA lösen

In dieser Übung wendest du den SARSA-Algorithmus an und nutzt dabei die Funktion update_q_table(), die du zuvor implementiert hast, um eine optimale Strategie für die 8x8-Variante der Frozen-Lake-Umgebung zu erlernen. Diese Umgebung ist identisch mit der klassischen 4x4-Version, nur eben größer. Du verwendest SARSA, um die Policy des Agenten iterativ anhand der aus der Umgebung erhaltenen Belohnungen zu verbessern.

Eine Q-Tabelle Q wurde für dich initialisiert und vorab geladen, zusammen mit der Funktion update_q_table() aus der vorherigen Übung.

Diese Übung ist Teil des Kurses

Reinforcement Learning mit Gymnasium in Python

Kurs anzeigen

Anleitung zur Übung

  • Führe für jede Episode im Trainingsprozess die gewählte action aus.
  • Wähle die next_action zufällig.
  • Aktualisiere die Q-Tabelle für den gegebenen state und die action.

Interaktive Übung

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

for episode in range(num_episodes):
    state, info = env.reset()
    action = env.action_space.sample()
    terminated = False
    while not terminated:
      	# Execute the action
        next_state, reward, terminated, truncated, info = ____
        # Choose the next action randomly
        next_action = ____
        # Update the Q-table
        ____
        state, action = next_state, next_action   
render_policy(get_policy())
Code bearbeiten und ausführen