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
<Kurs>Reinforcement Learning mit Gymnasium in Python</Kurs>Übungsanweisungen
- 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 praktische Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
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())