दिमाग और AIमध्यमपाठ 2985 मिनट का पाठ

मक्खी का एक वर्चुअल शरीर

दिमाग को एक शरीर की ज़रूरत होती है। रिसर्चर्स ने मक्खी के शरीर का बहुत बारीकी से फ़िज़िक्स सिमुलेशन बनाया है जो चल और उड़ सकता है, और इसे ट्रेंड न्यूरल नेटवर्क कंट्रोल करते हैं।

पाठ वीडियो में

60 सेकंड में

मक्खी का एक वर्चुअल शरीर

दिमाग को एक शरीर की ज़रूरत होती है। रिसर्चर्स ने मक्खी के शरीर का बहुत बारीकी से फ़िज़िक्स सिमुलेशन बनाया है जो चल और उड़ सकता है, और इसे ट्रेंड न्यूरल नेटवर्क कंट्रोल करते हैं।

1/4
आसान शब्दों में
दिमाग अपने आप नहीं चल सकता। यह मांसपेशियों को सिग्नल भेजता है, मांसपेशियां पैरों और पंखों को खींचती हैं, और शरीर दुनिया में आगे बढ़ता है। फिर आंखें और पैर दिमाग को वापस नए सिग्नल भेजते हैं। कंप्यूटर में इस लूप को समझने के लिए, वैज्ञानिकों ने एक वर्चुअल मक्खी बनाई—बिल्कुल किसी बहुत डीटेल्ड वीडियो-गेम कैरेक्टर की तरह जो फ़िज़िक्स के नियमों का पालन करता है।
मक्खी का दिमाग छह पैरों, दो पंखों, एक सिर और कई दूसरी चीज़ों को कंट्रोल करता है। हर हरकत से यह बदल जाता है कि मक्खी क्या देखती और महसूस करती है, जिससे यह तय होता है कि दिमाग आगे क्या करेगा। दिमाग, शरीर और दुनिया के बीच के इस लूप को क्लोज़्ड-लूप कंट्रोल (closed-loop control) कहा जाता है।
रिसर्चर्स ने असली मक्खियों की बहुत बारीकी से नाप-जोख करके मक्खी के शरीर का डीटेल्ड फ़िज़िक्स सिमुलेशन तैयार किया है। वर्चुअल शरीर में ऐसे जोड़ और हिस्से हैं जो सिम्युलेटेड ताक़तों (जैसे ग्रैविटी, ज़मीन के छूने और उड़ने के दौरान हवा के दबाव) के असर से हिलते-डुलते हैं। ये वर्चुअल मक्खियां सिमुलेशन में चल और उड़ सकती हैं।

शरीर को कौन चलाता है?

यहाँ बताए गए काम में, वर्चुअल शरीर को ट्रेंड न्यूरल नेटवर्क द्वारा कंट्रोल किया जाता है: ये ऐसे आर्टिफ़िशियल नेटवर्क हैं जिन्होंने अक्सर असली मक्खियों की हरकतों की रिकॉर्डिंग देखकर सीखा है कि किसी रास्ते पर चलने या संतुलन बनाए रखने के लिए पैरों और पंखों को कैसे हिलाना है। ये मक्खी के असली दिमाग की वायरिंग की हूबहू नकल नहीं हैं। ये बस यह परखने का एक तरीका हैं कि क्या कोई बॉडी मॉडल मक्खी की तरह हिल-डुल सकता है या नहीं।
  1. 1

    सेंस करना (Sense)

    सिम्युलेटर शरीर की पोज़ीशन, स्पीड और जोड़ों के ऐंगल की जानकारी देता है।
  2. 2

    फैसला लेना (Decide)

    कंट्रोलर (यहाँ एक ट्रेंड न्यूरल नेटवर्क) जोड़ों या पंखों के लिए लगने वाली ताक़त तय करता है।
  3. 3

    हिलना-डुलना (Move)

    फ़िज़िक्स इंजन शरीर को समय के एक छोटे से कदम (टाइम स्टेप) में आगे बढ़ाता है।
  4. 4

    दोहराना (Repeat)

    यह लूप सिमुलेशन के हर सेकंड में कई बार चलता है।

वर्चुअल शरीर क्यों बनाएं?

मकसदवर्चुअल शरीर कैसे मदद करता है
मूवमेंट को समझनापैर और पंख आपस में तालमेल कैसे बिठाते हैं, इससे जुड़े आइडिया को सुरक्षित और तेज़ी से टेस्ट करना
दिमाग और शरीर को जोड़नाभविष्य में, वायरिंग से बने दिमाग के मॉडलों को शरीर के मॉडल से जोड़ा जा सकता है
रोबोटिक्स में मददकीड़े-मकोड़ों के चलने और उड़ने के तरीकों से छोटे रोबोट बनाने की प्रेरणा मिल सकती है
कम प्रयोगकुछ सवालों को पहले सिमुलेशन में परखा जा सकता है, फिर असली मक्खियों पर टेस्ट किया जा सकता है

एक छोटा कंट्रोलर जिसे आप समझ सकते हैं

असली वर्चुअल मक्खियां काफ़ी पेचीदा होती हैं। हम इस मुख्य विचार को सिर्फ़ एक संख्या से समझ सकते हैं: ऊंचाई। हवा में एक जगह मंडराने वाले (hover करने वाले) कीड़े को ग्रैविटी से लड़ने के लिए बस उतना ही ऊपर ज़ोर लगाना होता है जितना ज़रूरी हो। कम ज़ोर लगाया तो वह गिर जाएगा; बहुत ज़्यादा लगाया तो तेज़ी से ऊपर भाग जाएगा। एक साधारण कंट्रोलर ऊंचाई कम होने पर ज़्यादा ज़ोर लगाता है, और तेज़ी से ऊपर जाने पर धीमे से ब्रेक लगाता है।
Python: one simulated second of falling with no controlpython
# Toy physics: height h (metres), velocity v, gravity g. MADE-UP simple body.
g, dt = 9.81, 0.01
h, v = 1.0, 0.0
for step in range(100):          # 100 steps of 0.01 s = 1 second
    thrust = 0.0                 # no controller yet
    v += (thrust - g) * dt
    h = max(0.0, h + v * dt)
print("Height after 1 s with no thrust:", round(h, 2), "m")
नोट
असली रिसर्च में इस्तेमाल होने वाले ट्रेंड कंट्रोलर ऐसे न्यूरल नेटवर्क होते हैं जिनमें कई इनपुट और आउटपुट होते हैं। हमारी लैब इसके बजाय हाथ से सेट की गई दो संख्याओं का इस्तेमाल करती है, ताकि आप समझ सकें कि फ़ीडबैक क्यों ज़रूरी है।
असली उदाहरण
सोचिए कि आप अपनी हथेली पर क्रिकेट का बल्ला सीधा खड़ा करके संतुलित कर रहे हैं। आपकी आंखें देखती हैं कि वह झुक रहा है, आपका दिमाग रिएक्ट करता है, आपका हाथ हिलता है, और बल्ला दूसरी तरफ़ झुकने लगता है। आप एक क्लोज़्ड कंट्रोल लूप चला रहे हैं। एक वर्चुअल मक्खी भी हर सेकंड कई बार इसी तरह का लूप चलाती है।
सावधान रहें
अगर कोई वर्चुअल मक्खी अच्छी तरह चलती है, तो इसका मतलब यह कतई नहीं है कि हम असली मक्खी के दिमाग को समझ गए हैं। हो सकता है कि कंट्रोलर शरीर को असली न्यूरॉन्स से अलग तरीके से चला रहा हो। "मक्खी की तरह हिल-डुल सकना" और "मक्खी के दिमाग की तरह काम करना"—इन दोनों बातों को अलग रखें।

और देखें और पढ़ें

लैब

एक ट्यून किया गया फ़ीडबैक कंट्रोलर जो एक खिलौना 1D उड़ने वाले शरीर को बिना गिरे या बहुत ऊपर जाए, टारगेट ऊंचाई पर मँडराता (hover करता) रखता है।

~20 min

समस्या

यह आपके ब्राउज़र में चलता है। यह "शरीर" एक काल्पनिक खिलौना है: ऊंचाई के लिए एक संख्या, साथ में ग्रैविटी और ऊपर की ओर लगने वाला थ्रस्ट।

  1. स्टार्टर कोड चलाएं। ज़ीरो थ्रस्ट के साथ शरीर ज़मीन पर गिर जाता है।
  2. controller(h, v, target) को पूरा करें ताकि यह ऊपर की ओर थ्रस्ट लौटाए। एक अच्छा आइडिया: g + KP * (target - h) - KD * v। पहला हिस्सा वज़न को संभालता है; KP टारगेट की तरफ़ धकेलता है; KD तेज़ रफ़्तार होने पर ब्रेक लगाता है।
  3. KP और KD के मान चुनें। कोशिश करें कि अंत में टारगेट से 0.1 मीटर के दायरे में रहें, और रास्ते में टारगेट से 30% से ज़्यादा ऊपर न जाएं।
  4. टारगेट 1.0 और 2.0 आज़माएं। दो लाइनें लिखें: अगर KP बहुत बड़ा हो और KD ज़ीरो हो, तो क्या होता है?

प्रैक्टिस लैब

कोड में बदलाव करें और इसे रन करें। Python आपके ब्राउज़र में चलता है — हमारे सर्वर पर कुछ नहीं भेजा जाता।

आउटपुट

कोई आउटपुट नहीं। वैल्यूज़ देखने के लिए print(...) जोड़ें।

आपका काम तब पूरा होगा जब

कठिन सवाल

उत्तर देखने से पहले ख़ुद जवाब देने की कोशिश करें। अगर आप इनके जवाब दे सकते हैं, तो आप पाठ समझ गए हैं।

Q1आपका कंट्रोलर 1 मास (द्रव्यमान) वाले शरीर के लिए काम करता है। अगर असली शरीर दोगुना भारी हो तो क्या होगा, और कोई असली सिस्टम इसे कैसे संभालेगा?दिखाएं

उतना ही थ्रस्ट भारी शरीर को कम उठा पाएगा, इसलिए "वज़न संभालने" वाला हिस्सा कम पड़ जाएगा और शरीर टारगेट से नीचे रह जाएगा, या थ्रस्ट सीमित होने पर गिर जाएगा। असली कंट्रोलर इसे एक ऐसा टर्म जोड़कर ठीक करते हैं जो लगातार बनी रहने वाली गड़बड़ी को धीरे-धीरे ठीक करता है (एक इंटीग्रल टर्म), या मास का अंदाज़ा लगाकर, या फिर सीखे हुए कंट्रोलर्स के मामले में, शरीर के कई तरह के बदलावों पर ट्रेनिंग देकर ताकि नेटवर्क खुद को ढाल सके।

Q2रिसर्चर्स पूरी वर्चुअल मक्खी के लिए हाथ से बनाए नियमों के बजाय ट्रेंड न्यूरल नेटवर्क का इस्तेमाल क्यों करते हैं?दिखाएं

मक्खी के पूरे शरीर में कई जोड़ और पंख होते हैं जिन्हें एक साथ काम करना होता है, और सही ताक़तें एक साथ कई इनपुट पर निर्भर करती हैं। इस सब के लिए हाथ से नियम लिखना बहुत मुश्किल है। एक न्यूरल नेटवर्क डेटा से या सिमुलेशन में बार-बार कोशिश करके कंट्रोलर सीख सकता है। नुकसान बस यह है कि सीखे हुए कंट्रोलर को समझना ज़्यादा मुश्किल होता है।

जारी रखने के लिए कृपया साइन इन करें।

अक्सर पूछे जाने वाले सवाल

क्या वर्चुअल मक्खी का दिमाग FlyWire कनेक्टोम है?

यहाँ बताए गए बॉडी सिमुलेशन में, नहीं। इन शरीरों को ट्रेंड आर्टिफ़िशियल न्यूरल नेटवर्क चलाते हैं। वायरिंग पर आधारित दिमाग के मॉडल को शरीर के मॉडल से जोड़ना एक ऐसा लक्ष्य है जिसकी बात कई वैज्ञानिक करते हैं, लेकिन यह एक अलग और ज़्यादा मुश्किल कदम है।

फ़िज़िक्स इंजन क्या होता है?

यह एक ऐसा सॉफ़्टवेयर है जो छोटे-छोटे कदमों में यह हिसाब लगाता है कि ग्रैविटी और छूने जैसी ताक़तों के असर में चीज़ें कैसे हिलती-डुलती हैं। गेम्स और रोबोट सिम्युलेटर भी इनका इस्तेमाल करते हैं।

सिर्फ़ असली मक्खी का ही इस्तेमाल क्यों न करें?

असली मक्खियों का इस्तेमाल किया जाता है, और वे बहुत ज़रूरी हैं। लेकिन सिमुलेशन ऐसी चीज़ें दे सकता है जो असली मक्खी नहीं दे सकती: आप हर ताक़त को देख सकते हैं, उसी पल को हूबहू दोबारा दोहरा सकते हैं, और ऐसे आइडिया आज़मा सकते हैं जो किसी ज़िंदा जीव पर मुमकिन नहीं होते।

पाठ का टेस्ट

5 सवाल। पास होने और इस पाठ को पूरा करने के लिए 3 सही होने चाहिए (60%)।

टेस्ट देने और अपनी प्रोग्रेस सेव करने के लिए साइन इन करें