Sunday, July 01, 2012

मशीनी दिमाग का विज्ञान

अंग्रेज़ी में विज्ञान पढ़ाना, शोध पर्चे लिखना, यह मेरा पेशा है। इसलिए हिंदी में विज्ञान लेखन की ज़रूरत का अहसास होते हुए भी लिखने का मन नहीं करता। वैसे भी टाइप करने में जान निकल जाती है। फिर भी अक्सर लिख ही लेता हूँ। इधर 'समकालीन जनमत' में पिछले कुछ महीनों से नियमित लिख रहा हूँ। जून अंक में जो आलेख आया उसमें मुद्रण की कई गलतियाँ हैं। मैं यूनिकोड इनपुट और लोहित हिंदी में टाइप करता हूँ। भेजते हुए पी डी एफ फाइल के अलावा जीमेल में पेस्ट भी कर देता हूँ। फिर भी फोंट बदलते हुए अक्सर गलतियाँ रह जाती हैं। बहरहाल, वह आलेख यहाँ पेस्ट कर रहा हूँ ताकि अगर किसी ने पढ़ा हो और त्रुटिओं की वजह से बातें समझ न आई हों तो अब सही सही पढ़ लें।



मशीनी दिमाग का विज्ञान
                            

वैज्ञानिकों के बारे में आम धारणा है कि सृष्टि की शुरूआत जैसे धमाकेदार विषयों या चमत्कारी नई दवाओं आदि पर वे शोध करते रहते हैं। पर सचमुच ज्यादातर वैज्ञानिक शोध निहायत ही सामान्य से सवालों पर केंद्रित होता है, जो कभी कभी बहुत महत्त्वपूर्ण निष्कर्षों या उपयोगी यंत्रों को बनाने में सहायक सिद्ध होता है। हमारे चारों ओर दुनिया तेज़ी से बदल रही है। यह बदलाव किसी धमाके के साथ नहीं (विज्ञापन कंपनियों के शोर के अलावा) हो रहा। देखते ही देखते हमारे जीवन में तकनीकी साधनों की भरमार हो गई है। देश में मोबाइल फोन की तादाद शौचालयों की तादाद से ज्यादा हो गई है। यह राजनैतिक सच है। दूसरी ओर सूचना क्रांति और सामाजिक मीडिया के साथ तहरीर चौक जैसी ऐतिहासिक घटनाएँ जुड़ी हैं। वैज्ञानिक अनुसंधान और आविष्कारों का हश्र क्या होगा, यह राजनैतिक बात है। पर सही ग़लत जैसा भी है, हर तरह की टेक्नोलोजी का जन्म वैज्ञानिक शोध से ही होता है। मसलन आई टी (इनफॉर्मेशन टेक्नोलोजी) - या सूचना प्रौद्योगिकी में कोई भी बड़ी बात ऐसी नहीं हुई है, जिसका संबंध बुनियादी वैज्ञानिक सवालों के साथ न हो। चाहे वह ई-मेल हो, इंटरनेट हो, हर ऐसी बात वैज्ञानिकों और वैज्ञानिक शोध की ज़रूरतों से पैदा हुई है।

इस आलेख में हम सूचना की कारीगरी के विज्ञान पर चर्चा करेंगे। एक तरह से सूचना की प्रोसेसिंग ही जीवन को परिभाषित करता है। हर क्षण हम नया कुछ देख और सीख रहे हैं। जो भी सूचना हमारे पास है, हमारी हर क्रिया-प्रक्रिया उस पर आधारित है। सूक्ष्म से स्थूल, हर स्तर पर यह खेल चल रहा है। जब हम इसी खेल को मशीन की मदद से करते हैं, उसे हम सूचना प्रौद्योगिकी कहते हैं। आज की सूचना प्रौद्योगिकी की बुनियाद सिलिकॉन के अर्द्धचालक गुणधर्म में है। सिलिकॉन में अल्प मात्रा में आर्सेनिक या गैलियम डालकर क्रमशः n-टाइप और p-टाइप अर्द्धचालक बनाए जाते हैं। अगर इनको एक साथ जोड़ा जाए और एक छोर से दूसरे छोर तक विद्युत प्रवाहित की जाए तो दोनों छोरों के बीच वोल्टेज बदलने के साथ नीचे दिखलाए चित्र 1की तरह करेंट (विद्युत प्रवाह) में बदलाव होगा। इसमें विशेष बात यह है कि एक दिशा में (चित्र में दायीं ओर फारवर्ड दिशा) वोल्टेज बढ़ाने पर करेंट बढ़ता जाय़गा पर दूसरी दिशा (रीवर्स) में वोल्टेज बढ़ाने पर तब तक करेंट में नहीं के बराबर बढ़त होगी, जब तक कि वोल्टेज बहुत बढ़कर एक नियत मान से अधिक न हो जाए। यानी यह एक स्विच की तरह है - एक ओर तो करेंट चलेगा, दूसरी ओर (कम वोल्टेज पर ) करेंट नहीं चलेगा। इसे गणना या किसी भी तरह की सूचना पर काम के लिए बाइनरी (binary) या द्विक पद्धति की इकाई की तरह काम में लिया जाता है।
(चित्र 1)

एक खेल की तरह इसे समझ सकते हैं। आप सवाल करें और हम हाँ या ना में उसका जवाब देंगे। या बाँया या दाँया हाथ उठाकर जवाब देंगे। यानी फारवर्ड या रीवर्स वोल्टेज लगाकर करेंट के बहने या न बहने से हम सूचना की प्रोसेसिंग या प्रसरण कर सकते हैं। यह सूचना की सबसे छोटी इकाई है। इस तरह से n-टाइप और p-टाइप अर्द्धचालकों को जोड़कर जो यंत्र बनता है, उसे डायोड कहते हैं। इसी डायोड की अगली कड़ी ट्रांज़िस्टर (transistor) है, जिसमें p-n-p तीन छोर होते हैं। सभी आधुनिक इलेक्ट्रानिक यंत्रों में ट्रांज़िस्टर का इस्तेमाल एक बुनियादी इकाई की तरह होता है। पचास साल पहले एक जमाना था जब ट्रांज़िस्टर के आविष्कार को क्रांतिकारी माना जाता था। पुराने किस्म के रेडियो की जगह ट्रांज़िस्टर सेट ने ले ली, जिसमें डायोड की जगह कुछेक ट्रांज़िस्टर इस्तेमाल में लिए गए थे और घर घर तक यह पहुँचने लगा। इसे चलाने के लिए बहुत कम ऊर्जा की ज़रूरत पड़ती है और सेट बैटरी से भी चलाया जा सकता था। इन्हीं ट्रांज़िस्टरों से आधुनिक कंप्यूटर बने। आज जो डेस्कटॉप कंप्यूटर आम दफ्तरों में इस्तेमाल में आता है, इससे बहुत कम क्षमता का पहला इलेक्ट्रानिक कंप्यूटर एनीयाक (ENIAC - इलेक्ट्रानिक न्यूमेरिकल इंटीग्रेटर ऐंड कंप्यूटर) आकार में आज के डेस्कटॉप से सौगुना से भी बड़ा था। उसे रखने के लिए बड़े कमरे की ज़रूरत पड़ती थी। यह बस साठ साल ही पहले की बात है।
(चित्र 2)
ऊपर चित्र 2 में यह दिखलाया गया है कि एनीयाक से भी काफी पहले जो कंप्यूटर होते थे, उनमें पुराने किस्म के गीयरों (gears) का इस्तेमाल कर ( चित्र में बायीं ओर) कुछेक सवाल हल किए जाते थे, फिर एनीयाक में ट्रांज़िस्टर आए; अब एनीयाक के कुछेक ट्रांज़िस्टर्स की जगह आज अरबों ट्रांज़िस्टर्स (चित्र में दायीं ओर) से बने चिप (IC या integrated chip) ने ले ली है। अठन्नी से भी बहुत छोटा यह चिप कल्पना से भी अधिक मात्रा में सूचना की कल्पनातीत द्रुत गति से प्रोसेसिंग की क्षमता रखता है। जाहिर है कि अगर इतने छोटे चिप में अरबों ट्रांज़िस्टर्स हैं तो एक ट्रांज़िस्टर का आकार तो बहुत ही छोटा होगा। आज के नव्यतम डेस्कटॉप में जो ट्रांज़िस्टर काम में लाया जाता है, उसकी लंबाई 20 नैनोमीटर (nm) है। एक मीटर में एक अरब नैनोमीटर होते हैं। पिछले पचास सालों में ट्रांज़िस्टर के आकार में कमी और सूचना के प्रोसेसिंग की गति में बढ़त – यह तकरीबन हर दो साल दुगुनी रफ्तार से हुई है। इसे मूर का नियम कहते हैं। चिप बनानेवाली प्रमुख कंपनी इंटेल का दावा है कि वह नीचे दिखाए रोडमैप (चित्र 3) पर चल रही हैः
(चित्र 3)

शुरूआत में कंप्यूटर में सूचना स्टोर कर यानी संचित कर नहीं रखी जा सकती थी। बाद में जब यह भी संभव हुआ तो जैसे जैसे ट्रांज़िस्टर छोटे होते गए, उतनी ही अधिक स्टोरेज की क्षमता भी बढ़ती गई। साथ ही प्रोसेसिंग की गति भी बढ़ती गई। प्रोसेसिंग का मतलब समझने के लिए हम एक उदाहरण ले सकते हैं। जैसे 4 और 5 का गुणनफल निकालना है। हमारे पास दो संख्याएँ हैं। इनको बदलकर हमें एक और संख्या (4 X 5=)20 बनाना है। यानी एक दी हुई सूचना को बदलकर एक और नई सूचना बनानी है। दशमलव प्रणाली में स्थानीय मान 10 के घात से तय होता है। द्विक प्रणाली में स्थानीय मान 2 के घात से तय होगा। इसे लिखेंगेः 00100 X 00101 = 10100. [22X(22+20)=24+22]. यहाँ 0 और 1 को इलेक्ट्रॉनिक मशीन में नियत मान के करेंट का बहना या उससे कम करेंट का बहना से दिखलाएँगे। या वोल्टेज के नियत मान (जैसे 5 मिली वोल्ट) से कम या ज्यादा।

द्विक प्रणाली में सबसे कम मान के स्थान (20) से जो न्यूनतम सूचना मिलती है (0 या 1 – हाँ या ना), उसे 1 बिट कहते हैँ। अधिक सूचना के लिए बिटों की संख्या अधिक चाहिए – जैसे (4 X 5=)20 के लिए कम से कम पाँच बिट (24, 23 , 22 , 21, 20) चाहिए। ऐसे आठ बिटों से 1 बाइट बनता है। जाहिर है कि जैसे जैसे सूचना की मात्रा और जटिलता बढ़ती जाएगी, कुल बाइटों की संख्या भी बढ़ानी पड़ेगी। समकालीन जनमत के किसी अंक में एक पन्ने पर जो सूचना है, अगर हम केवल पाठ (टेक्स्ट) मात्र को लें, तो वह तकरीबन 10 -20 किलो बाइट यानी 10000-20000 बाइट के बराबर है। 1 किलो बाइट 1024 बाइट के बराबर होता है। तस्वीरों के लिए और ज्यादा बाइट चाहिए – रंगीन हो तो और भी ज्यादा। इस तरह पूरे एक अंक के लिए तकरीबन 1-10 मेगा बाइट चाहिए. (1 मेगा बाइट (MB) =1024 किलो बाइट (kB) ; 1 गिगा बाइट(GB) =1024 मेगा बाइट ; 1 टेरा बाइट (TB) = 1024 गिगा बाइट)। आज के डेस्कटाप में 1 टेरा बाइट तक सूचना जमा की जा सकती है। श्रव्य (ऑडियो) या दृश्य (वीडियो) सूचना के लिए सामान्य पाठ से काफी ज्यादा बाइट्स चाहिए। जमा सूचना एक तरह की स्मृति है, इसलिए इसे हम मेमरी (अंग्रेज़ी में) कहते हैं। कंप्यूटर में जिस तरीके से सूचना जमा होती है, उस पर विस्तार से यहाँ चर्चा नहीं करेंगे, पर यह अब आम बोली में आ गया है कि सूचना को एक डिस्क (चकती) में जमा रखा जा सकता है - इसे ही हार्ड डिस्क कहते हैं। आजकल मेमरी कहने का मतलब रैंडम ऐक्सेस मेमरी (RAM) से होता है, जिसका इस्तेमाल द्रुत गति से सूचना की प्रोसेसिंग के लिए होता है। डेस्कटाप में सामान्यतः 4 GB तक का RAM कार्ड मिलता है।
ट्रांज़िस्टर के छोटे होते रहने की सीमाएँ हैं। 20 nm की लंबाई में 200 से भी कम हाइड्रोज़न परमाणु लाइन में खड़े किए जा सकते हैं। यानी कि छोटे होते होते ट्रांज़िस्टर अणुओं के स्तर तक पहुँच गए हैं। ऐसी स्थिति में अर्द्धचालकों की भौतिकी बदल जाएगी यानी कि जो नियम इससे बड़े अर्द्धचालकों के लिए लागू होते थे, अब वे लागू नहीं होंगे। एक समस्या यह भी है कि सूचना के प्रोसेसिंग की प्रक्रिया में जो बिजली इधर उधर होती है, उससे बहुत सारा ताप निकलता है, और अगर यह सारा ताप एक सूक्ष्म आकार के प्रोसेसर पर केंद्रित रह गया तो वह जल जाएगा। तो क्या मूर का नियम अब लागू नहीं होगा?
इस सवाल का जवाब हाँ है अगर हम सिलिकॉन आधारित ट्रांज़िस्टरों से ही कंप्यूटर बनाना चाहें। पर कंप्यूटर सिलिकॉन और अर्द्धचालक की भौतिकी के बारे में हमारी समझ बनने के पहले से मौजूद हैं। पहले कंप्यूटर सिर्फ 'कंप्यूट' यानी गणनाएँ करते थे। यह पिछले पचास सालों में ही संभव हुआ है कि केवल गणितीय नहीं, हर तरह की सूचना (टेक्स्ट या पाठ, आडियो या श्रव्य, और वीडियो या दृश्य) की प्रोसेसिंग के लिए कंप्यूटर का इस्तेमाल होने लगा है। सिलिकॉन आधारित अर्द्धचालक की भौतिकी की सीमा है कि हम नैनोमीटर पैमाने पर सूचना की प्रोसेसिंग नहीं कर सकते। इस सीमा से आगे बढ़ने का एक तरीका है कि हम एक साथ कई प्रोसेसर्स को काम में लाएँ। जैसे सवाल करते हुए हम अक्सर हाशिए पर कुछ लिखते हैं, जिस पर अलग से काम किया जाता है, उसी तरह हम एक ही 'टास्क' या काम को अलग अलग टुकड़ों में बाँटकर हर टुकड़े के लिए अलग प्रोसेसर का इस्तेमाल कर सकते हैं।
इसे पैरेलल या समांतर प्रोसेसिंग कहते हैं। आजकल के डेस्कटाप में आम तौर पर एक से ज्यादा प्रोसेसर होते हैं। इसलिए इन्हें डुअल कोर (दो प्रोसेसर) या क्वाड कोर (चार प्रोसेसर) कहते हैं। और भी कई तरीके हैं, पर इन सबकी सीमाएँ हैं। तो आखिर प्रोसेसिंग की गति बढ़ाने का उपाय क्या है? इसके लिए हमें नया विज्ञान ढूँढना पड़ेगा। ऐसी संभावनाएँ डी एन ए कंप्यूटिंग और क्वांटम कंप्यूटिंग में हैं। इस पर अगले अंक में चर्चा करेंगे।

3 comments:

Arvind Mishra said...

सैद्धांतिक ज्ञान पूरी रोचकता के साथ साथ

BS Pabla said...

मूर का नियम अब बेमानी लगने लगा है

अगले लेख की प्रतीक्षा रहेगी

BS Pabla said...

और ये आपके लिए
http://blogsinmedia.com/?p=19707