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

SARSA अपडेट नियम लागू करना

SARSA, RL में एक on-policy एल्गोरिदम है जो लिए गए action और अगले state में चुने गए action के आधार पर action-value फंक्शन अपडेट करता है. यह तरीका न केवल मौजूदा state-action जोड़ी का, बल्कि अगली जोड़ी का मान भी सीखने में मदद करता है, जिससे ऐसी नीतियाँ सीखी जा सकती हैं जो भविष्य के actions को ध्यान में रखती हैं. नीचे SARSA का अपडेट नियम दिया है, और आपका काम इस नियम के आधार पर Q-table अपडेट करने वाला एक फंक्शन इम्प्लीमेंट करना है.

NumPy लाइब्रेरी आपको np नाम से इम्पोर्ट करके दी गई है.

Image showing the mathematical formula of the SARSA update rule.

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

Python में Gymnasium के साथ Reinforcement Learning

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

अभ्यास निर्देश

  • दिए गए state-action जोड़ी का मौजूदा Q-value प्राप्त करें.
  • अगली state-action जोड़ी का Q-value खोजें.
  • SARSA फॉर्मूला का उपयोग करके मौजूदा state-action जोड़ी का Q-value अपडेट करें.
  • Q-table Q को अपडेट करें, यह मानकर कि एजेंट state 0 में action 0 लेता है, reward 5 मिलता है, state 1 में जाता है, और action 1 करता है.

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

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

def update_q_table(state, action, reward, next_state, next_action):
  	# Get the old value of the current state-action pair
    old_value = ____
    # Get the value of the next state-action pair
    next_value = ____
    # Compute the new value of the current state-action pair
    Q[(state, action)] = ____

alpha = 0.1
gamma  = 0.8
Q = np.array([[10,0],[0,20]], dtype='float32')
# Update the Q-table for the ('state1', 'action1') pair
____
print(Q)
कोड संपादित करें और चलाएँ