Q-learning के साथ 8x8 Frozen Lake को सुलझाना
इस अभ्यास में, आप Q-learning एल्गोरिदम लागू करके 8x8 Frozen Lake एनवायरनमेंट में नेविगेट करने के लिए एक optimal policy सीखेंगे, इस बार "slippery" कंडीशन सक्षम है। यह चुनौती stochastic transitions लाती है, जिससे एजेंट की चाल अनिश्चित हो जाती है और वास्तविक दुनिया के हालात का बेहतर सिमुलेशन होता है.
एक Q-table Q पहले से initialize की गई है और आपके लिए pre-load की गई है. पिछले अभ्यास से update_q_table() फंक्शन भी उपलब्ध है, और एक खाली सूची rewards_per_episode दी गई है जिसमें हर episode के दौरान संचित total reward स्टोर होगा.
यह अभ्यास पाठ्यक्रम का हिस्सा है
Python में Gymnasium के साथ Reinforcement Learning
अभ्यास निर्देश
- हर episode के लिए, चुना गया action चलाएँ और reward तथा next state observe करें.
- Q-table अपडेट करें.
total_rewardकोrewards_per_episodeसूची में append करें.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
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))