Episodenerzeugung für Monte-Carlo-Methoden
Monte-Carlo-Methoden benötigen erzeugte Episoden, um die Wertfunktion abzuleiten. Deshalb implementierst du jetzt eine Funktion, die Episoden generiert, indem sie zufällig Aktionen auswählt, bis eine Episode endet. In späteren Aufgaben wirst du diese Funktion aufrufen, um Monte-Carlo-Methoden auf die für dich vorab geladene benutzerdefinierte Umgebung env anzuwenden.
Die Funktion render() ist für dich vorab geladen.
Diese Übung ist Teil des Kurses
Reinforcement Learning mit Gymnasium in Python
Anleitung zur Übung
- Setze die Umgebung mit einem
seedvon 42 zurück. - Wähle in der Episoden-Schleife in jeder Iteration eine zufällige
action. - Sobald eine Iteration endet, aktualisiere die Episoden-Daten, indem du das Tupel
(state, action, reward)hinzufügst.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
def generate_episode():
episode = []
# Reset the environment
state, info = ____
terminated = False
while not terminated:
# Select a random action
action = ____
next_state, reward, terminated, truncated, info = env.step(action)
render()
# Update episode data
episode.____(____)
state = next_state
return episode
print(generate_episode())