Aan de slagGa gratis aan de slag

8x8 Frozen Lake oplossen met SARSA

In deze oefening pas je het SARSA-algoritme toe, waarbij je de eerder geïmplementeerde functie update_q_table() gebruikt, om een optimale strategie te leren voor de 8x8 Frozen Lake-omgeving. Deze omgeving is identiek aan de klassieke 4x4-versie, met als enige verschil dat hij groter is. Je gebruikt het SARSA-algoritme om stap voor stap de strategie van de agent te verbeteren op basis van de beloningen uit de omgeving.

Een Q-tabel Q is voor je geïnitialiseerd en ingeladen, samen met de functie update_q_table() uit de vorige oefening.

Deze oefening maakt deel uit van de cursus

Reinforcement Learning met Gymnasium in Python

Cursus bekijken

Oefeninstructies

  • Voer voor elke episode in het trainingsproces de gekozen action uit.
  • Kies de next_action willekeurig.
  • Werk de Q-tabel bij voor de gegeven state en action.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

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 bewerken en uitvoeren