विज्ञान कम्प्यूटर मॉडलिंग पर निर्भर करता है - तो क्या होता है जब यह गलत हो जाता?

सापेक्षता और क्वांटम यांत्रिकी के सिद्धांतों के लिए पेनिसिलिन की रूपांतरण की खोज से, विज्ञान, कंप्यूटर से पहले भी मन-गतिपूर्ण गति से प्रगति करता था इनमें से ज्यादातर वैज्ञानिक पद्धति की मजबूती के लिए नीचे हैं: वैज्ञानिक परिणाम दोहराए जाने और अन्य वैज्ञानिकों द्वारा बढ़ाए जाने के द्वारा मान्य हैं।

लेकिन जिस तरह से हम विज्ञान करते हैं, वह बदल रहा है - हम अब प्रकृति को समझने के लिए जटिल कंप्यूटर मॉडल पर तेजी से भरोसा करते हैं। और यह पता चला है कि इन मॉडलों को पुनरुत्पादन करना लगभग असंभव हो सकता है - जिसका अर्थ विज्ञान की एक महत्वपूर्ण कसौटी को चुनौती दी जा रही है। तो इस बदलाव के वास्तविक दुनिया के नतीजों क्या हैं और हम इसके बारे में क्या कर सकते हैं?

पूर्व-आधुनिक विज्ञान - "प्राकृतिक दर्शन" के रूप में जाना जाता है - अनुभवजन्य था। अनुभवजन्य विज्ञान भविष्य के बारे में भविष्यवाणियां करने के लिए पिछले टिप्पणियों का उपयोग करता है, जिसे तब परीक्षण किया जा सकता है। टाइको ब्राहे, एक 16 वीं शताब्दी के डेनिश खगोलविद, इस तरह से स्वर्ग के सटीक और व्यापक अवलोकन करने में कामयाब रहे।

आधुनिक विज्ञान, तथापि, सैद्धांतिक है। सैद्धांतिक विज्ञान भी भविष्यवाणियों बनाता है, लेकिन यह गणितीय मॉडल से बजाय पूर्व टिप्पणियों से उन्हें प्राप्त कर लेता है। इस तरह के रूप में गति की आइजैक न्यूटन के कानून, के बारे में सोचो गुरुत्वाकर्षण के व्युत्क्रम वर्ग कानून.

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


आंतरिक सदस्यता ग्राफिक


ऐसे गणितीय समीकरण महान होते हैं जब वे उपलब्ध होते हैं - लेकिन अक्सर वे नहीं होते हैं। उदाहरण के लिए, हम जानते हैं कि कोई सरल समीकरण नहीं है जो तथाकथित "तीन-शरीर समस्याचंद्रमा, पृथ्वी और सूर्य की तरह - "है, जो तीन शव के चारों ओर परिक्रमा और गुरुत्वाकर्षण बल द्वारा एक दूसरे को प्रभावित करने का वर्णन है।

अधिकतर वर्तमान विज्ञान और भी जटिल प्रणालियों से संबंधित है, और इसी तरह सटीक समाधान नहीं हैं। ऐसे मॉडलों को "कम्प्यूटेशनल" होना चाहिए - यह वर्णन करना कि एक सिस्टम एक पल से अगले तक कैसे बदलता है। लेकिन इस तरह से इसके विकास "अनुकरण" के अलावा भविष्य में कुछ समय पर सटीक स्थिति निर्धारित करने का कोई रास्ता नहीं है। मौसम का पूर्वानुमान एक परिचित उदाहरण है; 1950 में कंप्यूटर के आगमन तक, यह वास्तव में हुआ की तुलना में भविष्य के मौसम की भविष्यवाणी करना असंभव था।

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

मॉडलिंग विफल हो जाता है

मॉडलिंग का उपयोग वैज्ञानिक क्षेत्रों में किया जाता है - खगोल भौतिकी से लेकर जलवायु भविष्यवाणी जैव सूचना विज्ञान और अर्थशास्त्र के लिए लेकिन यहां बढ़ती बहस इस तथ्य के बारे में कि इस विज्ञान को प्रजनन के माध्यम से मान्य करना मुश्किल है।

यह पता चला है कि शब्दों में प्रयोगात्मक तरीकों का वर्णन केवल पर्याप्त नहीं है यह आंशिक तौर पर है क्योंकि अंग्रेजी जैसी प्राकृतिक भाषाएं बिल्कुल सटीक रूप से कम्प्यूटेशन का वर्णन करने के लिए बहुत अस्पष्ट हैं सब के बाद, एक कारण है कि प्रोग्रामर प्रोग्रामिंग भाषाओं का उपयोग करते हैं। सॉफ्टवेयर विकास में सबसे बड़ी चुनौतियों में से एक में अस्पष्ट आवश्यकताओं को व्यवहार के सटीक विनिर्देशों में बदलने में है।

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

इसी तरह एक हाल के एक अध्ययन यूएस निगम एनरॉन की जांच के दौरान सार्वजनिक किए गए 15,770 स्प्रैडशीट्स से पता चला कि कम से कम एक सूत्र वाले स्प्रैडशीट्स के 24 में स्पष्ट बग थे, जैसे रिक्त कक्षों को जोड़ना

प्राकृतिक विज्ञानों में, मंगल ग्रह जलवायु प्रेक्षक, मंगल ग्रह पर जलवायु का अध्ययन करने के लिए 1998 में शुरू की गई एक अंतरिक्ष जांच, एक साल बाद खो गई थी क्योंकि नियंत्रण सॉफ्टवेयर का एक हिस्सा गलती से मीट्रिक इकाइयों के बजाय शाही इस्तेमाल करता था। एक अन्य अध्ययन एक ही डाटासेट, एल्गोरिदम, और प्रोग्रामिंग भाषा का प्रयोग - - एक ही जियोसाइंस प्रयोग के नौ स्वतंत्र कार्यान्वयन के प्राप्त परिणामों में बहुत कम समझौते दिखाया।

इसके अलावा, भले ही किसी शोध पत्र का पाठक लेखक के सटीक अर्थ की सफलतापूर्वक व्याख्या कर सकता है, और फिर इसे त्रुटिहीन रूप से एक कार्यक्रम में अनुवादित कर सकता है, फिर भी इसे क्रियान्वित करने में खामियाँ हैं। समस्याओं का एक विशेष रूप से पेचीदा वर्ग इस बात से उत्पन्न होता है कि कंप्यूटर संख्याओं को कैसे संभालते हैं: हालाँकि वे पूर्ण सटीकता के साथ 42 और -17 जैसे पूर्णांकों में हेरफेर कर सकते हैं, वास्तविक संख्याओं जैसे ??3.14 और ?2?1.414 में हेरफेर करने की मानक तकनीकें केवल अनुमानित सटीकता की अनुमति देती हैं। इन सन्निकटनों का मतलब है कि समान मूल्य की गणना के स्पष्ट रूप से समकक्ष तरीके हो सकते हैं अलग परिणाम निकालते हैं.

तो क्या कर सकते हैं? यदि विशेषज्ञ सॉफ्टवेयर डेवलपर्स सही सॉफ़्टवेयर का विश्वसनीय रूप से उत्पादन नहीं कर सकते हैं, तो वैज्ञानिकों जैसे शौकिया प्रोग्रामर के लिए क्या उम्मीद है?

काम की एक पंक्ति "डोमेन-विशिष्ट" प्रोग्रामिंग भाषाओं को डिजाइन करने के लिए उपकरणों का उत्पादन करना है, प्रत्येक एक विशेष श्रेणी की समस्या के अनुरूप है, जैसे आर्थिक बाजारों में एजेंटों का व्यवहार या सेल में दवाओं का प्रसार। ये उद्देश्य विशेषज्ञों द्वारा परिचयात्मक शर्तों में सीधे तौर पर सामान्य प्रयोजन प्रोग्रामिंग भाषा में अप्रत्यक्ष रूप से उन्हें सांकेतिक शब्दों में लिखने के बजाय कंप्यूटेशन का वर्णन करने के लिए आसान बनाना है।

एक दूसरा दृष्टिकोण कार्यक्रमों के लिए अधिक अभिव्यंजक लेकिन अभी भी उपयोगकर्ता के अनुकूल "प्रकार सिस्टम" डिजाइन करना चाहता है ये "मूर्ख" त्रुटियों को पकड़ना आसान बनाते हैं, जैसे स्प्रेडशीट में रिक्त कक्ष, या विभिन्न इकाइयों में मूल्यों को मिलाते हुए यह हालांकि सभी तर्क त्रुटियों को रद्द नहीं कर सकता है। तीसरी पंक्ति सटीक अंकगणित के लिए कोड के उपयोग योग्य पुस्तकालयों को विकसित करना है, सन्निकटन की समस्याओं से बचने।

वहाँ हर मौका है कि ये दृष्टिकोण आगे बढ़ने वाली समस्या को ठीक करने में मदद कर सकते हैं या कम से कम जोखिम को समाप्त कर सकते हैं। आखिरकार, दुनिया को विज्ञान की जरूरत है और वैज्ञानिकों को कंप्यूटर की ज़रूरत होती है - यह किसी भी समय जल्द ही बदलने की संभावना नहीं है।

के बारे में लेखक

जेरेमी गिबन्स, प्रोफेसर ऑफ़ कम्प्यूटिंग, ऑक्सफोर्ड विश्वविद्यालय। प्रोग्रामिंग भाषाओं के प्रमुख अनुसंधान विषय

यह आलेख मूल रूप बातचीत पर दिखाई दिया

संबंधित पुस्तक:

at इनरसेल्फ मार्केट और अमेज़न