शुरू करेंमुफ़्त में शुरू करें

Experience Replay के साथ DQN

अब आप Deep Q Network का उपयोग करके किसी एजेंट को प्रशिक्षित करने के लिए Experience Replay जोड़ेंगे। आप वही Lunar Lander environment उपयोग करेंगे, जैसा आपने Barebone DQN बनाते समय किया था.

हर स्टेप पर, नेटवर्क को अपडेट करने के लिए केवल सबसे हाल की transition से सीखने के बजाय, Experience Replay buffer एजेंट को हाल की अनुभवों के एक रैंडम बैच से सीखने में सक्षम बनाता है। इससे environment के बारे में सीखने की उसकी क्षमता काफी बेहतर होती है.

पिछले अभ्यासों से QNetwork और ReplayBuffer क्लासेज़ आपके लिए उपलब्ध हैं और उन्हें इस प्रकार instantiate किया गया है:

  • q_network = QNetwork(8, 4)
  • replay_buffer = ReplayBuffer(10000)

एपिसोड के अंत में मेट्रिक्स बताने के लिए describe_episode() फंक्शन भी फिर से उपलब्ध है.

यह अभ्यास पाठ्यक्रम का हिस्सा है

Python में Deep Reinforcement Learning

पाठ्यक्रम देखें

इंटरैक्टिव व्यावहारिक अभ्यास

इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।

for episode in range(10):
    state, info = env.reset()
    done = False
    step = 0
    episode_reward = 0
    while not done:
        step += 1
        q_values = q_network(state)        
        action = torch.argmax(q_values).item()
        next_state, reward, terminated, truncated, _ = env.step(action)
        done = terminated or truncated
        # Store the latest experience in the replay buffer
        replay_buffer.____        
        state = next_state
        episode_reward += reward    
    describe_episode(episode, reward, episode_reward, step)
कोड संपादित करें और चलाएँ