राउंड-ऑफ़ एरर

From Vigyanwiki

अभिकलन में, एक राउंडऑफ़ त्रुटि,[1] इसे पूर्णांकन त्रुटि भी कहा जाता है,[2] सटीक अंकगणित का उपयोग करके किसी दिए गए कलन विधि द्वारा उत्पादित परिणाम और परिमित-परिशुद्धता, गोलाई अंकगणित का उपयोग करके समान कलन विधि द्वारा उत्पादित परिणाम के बीच का अंतर है।[3] पूर्णांकन त्रुटियाँ वास्तविक संख्याओं के निरूपण और उनके साथ किए गए अंकगणितीय संक्रियाओं में अशुद्धि के कारण होती हैं। यह परिमाणीकरण त्रुटि का एक रूप है। सन्निकटन समीकरणों या कलन विधि का उपयोग करते समय, विशेष रूप से वास्तविक संख्याओं (जिनमें सिद्धांत रूप में अनंत रूप से कई अंक होते हैं) का प्रतिनिधित्व करने के लिए सीमित कई अंकों का उपयोग करते समय, संख्यात्मक विश्लेषण का एक लक्ष्य गणना त्रुटियों का त्रुटि विश्लेषण (गणित) करना है। संगणना त्रुटियाँ, जिन्हें संख्यात्मक त्रुटियाँ भी कहा जाता है, में ट्रंकेशन त्रुटियाँ और राउंडऑफ़ त्रुटियाँ दोनों सम्मिलित हैं।

जब किसी राउंडऑफ त्रुटि वाले इनपुट के साथ गणना का क्रम बनाया जाता है, तो त्रुटियां जमा हो सकती हैं, जो कभी-कभी गणना पर प्रभावी हो जाती हैं। खराब स्थिति वाली समस्याओं में, महत्वपूर्ण त्रुटि जमा हो सकती है।

संक्षेप में, संख्यात्मक गणना में सम्मिलित राउंडऑफ़ त्रुटियों के दो प्रमुख दृष्टिकोण हैं:[4]

  1. संख्याओं के परिमाण और सटीकता दोनों को दर्शाने की अभिकलक की क्षमता स्वाभाविक रूप से सीमित है।
  2. कुछ संख्यात्मक जोड़-तोड़ राउंडऑफ़ त्रुटियों के प्रति अत्यधिक संवेदनशील होते हैं। यह गणितीय विचारों के साथ-साथ अभिकलक द्वारा अंकगणितीय संचालन करने के तरीके दोनों के परिणामस्वरूप हो सकता है।

प्रतिनिधित्व त्रुटि

अंकों की एक सीमित श्रृंखला का उपयोग करके किसी संख्या का प्रतिनिधित्व करने का प्रयास करने से उत्पन्न त्रुटि राउंडऑफ़ त्रुटि का एक रूप है जिसे प्रतिनिधित्व त्रुटि कहा जाता है।[5] यहां दशमलव निरूपण में निरूपण त्रुटि के कुछ उदाहरण दिए गए हैं:

संकेत पद्धति निरूपण सन्निकटन त्रुटि
1/7 0.142 857 0.142 857 0.000 000 142 857
ln 2 0.693 147 180 559 945 309 41... 0.693 147 0.000 000 180 559 945 309 41...
log10 2 0.301 029 995 663 981 195 21... 0.3010 0.000 029 995 663 981 195 21...
32 1.259 921 049 894 873 164 76... 1.25992 0.000 001 049 894 873 164 76...
2 1.414 213 562 373 095 048 80... 1.41421 0.000 003 562 373 095 048 80...
e 2.718 281 828 459 045 235 36... 2.718 281 828 459 045 0.000 000 000 000 000 235 36...
π 3.141 592 653 589 793 238 46... 3.141 592 653 589 793 0.000 000 000 000 000 238 46...

किसी प्रतिनिधित्व में अनुमत अंकों की संख्या बढ़ाने से संभावित राउंडऑफ़ त्रुटियों की भयावहता कम हो जाती है, परन्तु कई अंकों तक सीमित कोई भी प्रतिनिधित्व अभी भी गणनीय वास्तविक संख्याओं के लिए कुछ हद तक राउंडऑफ़ त्रुटि का कारण बनेगा। गणना के मध्यवर्ती चरणों के लिए उपयोग किए जाने वाले अतिरिक्त अंकों को गार्ड अंक के रूप में जाना जाता है।[6]

कई बार पूर्णांकन करने से त्रुटि जमा हो सकती है।[7] उदाहरण के लिए, यदि 9.945309 को दो दशमलव स्थानों (9.95) तक पूर्णांकित किया जाता है, फिर एक दशमलव स्थान (10.0) तक पूर्णांकित किया जाता है, तो कुल त्रुटि 0.054691 होती है। एक चरण में 9.945309 को एक दशमलव स्थान (9.9) तक पूर्णांकित करने पर कम त्रुटि (0.045309) आती है। यह तब हो सकता है, उदाहरण के लिए, जब सॉफ़्टवेयर विस्तारित परिशुद्धता#x86 विस्तारित परिशुद्धता प्रारूप|x86 80-बिट चल बिन्दु में अंकगणित करता है और फिर परिणाम को डबल-परिशुद्धता चल बिन्दु प्रारूप|आईईईई 754 द्विचर64 चल बिन्दु में राउंड करता है।

चल बिन्दु संख्या प्रणाली

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

चल बिन्दु संख्या प्रणाली का संकेतन

एक चल बिन्दु संख्या प्रणाली द्वारा चित्रित है पूर्णांक:

  • : आधार या मूलांक
  • : शुद्धता
  • : घातांक सीमा, जहाँ निचली सीमा है और ऊपरी सीमा है

कोई निम्नलिखित रूप है:

जहाँ ऐसा एक पूर्णांक है, और के लिए, एक पूर्णांक है

सामान्यीकृत चल-संख्या प्रणाली

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