Řešení prostředí Frozen Lake 8x8 pomocí Q-learningu
V tomto cvičení použiješ algoritmus Q-learning k nalezení optimální strategie pro navigaci v prostředí Frozen Lake 8x8, tentokrát se zapnutou podmínkou „klouzavého" povrchu. Tato výzva zavádí stochastické přechody, které pohyb agenta znesnadňují a přibližují simulaci reálným scénářům.
Q-tabulka Q je již inicializovaná a připravená k použití, stejně jako funkce update_q_table() z předchozího cvičení a prázdný seznam rewards_per_episode, do kterého se bude ukládat celková odměna za každou epizodu.
Toto cvičení je součástí kurzu
Reinforcement Learning with Gymnasium in Python
Pokyny k cvičení
- Pro každou epizodu proveď vybranou akci a zaznamenej odměnu a následující stav.
- Aktualizuj Q-tabulku.
- Přidej
total_rewarddo seznamurewards_per_episode.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
for episode in range(10000):
state, info = env.reset()
total_reward = 0
terminated = False
while not terminated:
action = env.action_space.sample()
# Execute the action
next_state, reward, terminated, truncated, info = ____
# Update the Q-table
____
state = next_state
total_reward += reward
# Append the total reward to the rewards list
rewards_per_episode.____(____)
print("Average reward per random episode: ", np.mean(rewards_per_episode))