请输入您要查询的百科知识:

 

词条 Floating point error mitigation
释义

  1. Numerical error analysis

  2. Monte Carlo arithmetic

  3. Extension of precision

  4. Variable length arithmetic

  5. Interval arithmetic

  6. Gustafson's unums

  7. References

{{More citations needed|date=February 2018}}

Floating-point error arises because real numbers cannot, in general, be accurately represented in a fixed space. By definition, floating-point error cannot be eliminated, and, at best, can only be managed.

H. M. Sierra noted in his 1956 patent "Floating Decimal Point Arithmetic Control Means for Calculator":

"Thus under some conditions, the major portion of the significant data digits may lie beyond the capacity of the registers. Therefore, the result obtained may have little meaning if not totally erroneous."

The first computer (relays) developed by Zuse in 1936 with floating point arithmetic and was thus susceptible to floating point error. Early computers, however, with operation times measured in milliseconds, were incapable of solving large, complex problems[1] and thus were seldom plagued with floating point error. Today, however, with super computer system performance measured in petaflops, (1015) floating-point operations per second, floating point error is a major concern for computational problem solvers. Further, there are two types of floating point error, cancellation and rounding. Cancellation occurs when subtracting two similar numbers and rounding occurs with significant bits cannot be saved and are rounded or truncated. Cancellation error is exponential relative to rounding error.

The following sections describe the strengths and weaknesses of various means of mitigating floating point error.

Numerical error analysis

Though not the primary focus of numerical analysis,[2][3]{{rp|5}} numerical error analysis for the analysis and minimization of floating point rounding error. Numerical error analysis generally does not account for cancellation error.[3]{{rp|5}}

Monte Carlo arithmetic

Error analysis by Monte Carlo arithmetic is accomplished by repeatedly injecting small errors into an algorithms data values and determining the relative effect on the results.

Extension of precision

Extension of precision is the use of larger representations of real values. The ISO standard define precision as the number of digits available to represent real numbers, and typically including single precision (32-bits), double precision (64-bits), and quad precision (128-bits). While extension of precision makes the effects of error less likely or less important, the true accuracy of the results are still unknown.

Variable length arithmetic

Variable length arithmetic represents numbers as a string of digits of variable length limited only by the memory available. Variable length arithmetic operations are considerably slower than fixed length format floating point instructions. When high performance is not a requirement, but high precision is, variable length arithmetic can prove useful, thought the actual accuracy of the result may not be known.

Interval arithmetic

Interval arithmetic is an algorithm for bounding rounding and measurement errors. The algorithm results in two floating point numbers representing the minimum and maximum limits for the real value represented.

"Instead of using a single floating-point number as approximation for the value of a real variable in the mathematical model under investigation, interval arithmetic acknowledges limited precision by associating with the variable

a set of reals as possible values. For ease of storage and computation, these sets are restricted to intervals."[4]

The evaluation of interval arithmetic expression may provide a large range of values,[4] and may seriously overestimate the true error boundaries.[5]{{rp|8}}

Gustafson's unums

Unums ("Universal Numbers") are an extension of variable length arithmetic proposed by John Gustafson.[6] Unums have variable length fields for the exponent and significand lengths and error information is carried in a single bit, the ubit, representing possible error in the least significant bit of the significand (ULP).[6]{{rp|4}}

The efficacy of unums is questioned by William Kahan.[5]

References

1. ^{{cite web|url= http://wikieducator.org/History_of_Computer_Development_%26_Generation_of_Computer|title= History of Computer Development & Generation of Computer|date= September 2014|website= WikiEducator|accessdate= 2018-02-17 }}
2. ^{{cite web|url= http://webs.um.es/eliseo/um/uploads/Main/TrefethendefNA.pdf|title= The Definition of Numerical Analysis|last1= Trefethen|first1= Lloyd N. |date= 1992|publisher= SIAM|accessdate= 2018-02-16}}
3. ^{{cite book|title=Accuracy and Stability of Numerical Algorithms |edition=2 |first=Nicholas John |author-link=Nicholas John Higham |last=Higham |publisher=Society for Industrial and Applied Mathematics (SIAM) |year=2002 |isbn=978-0-89871-521-7|url=https://books.google.com/?id=epilvM5MMxwC&dq=accuracy+and+stability+of+numerical+algorithms+higham }}
4. ^{{cite journal|last1= Hickey |first1= T. |last2= Ju|first2= Q. |last3= van Emden|first3= M.H. |date= September 2001 |title= Interval Arithmetic: from Principles to Implementation|url= http://fab.cba.mit.edu/classes/S62.12/docs/Hickey_interval.pdf|journal= Journal of the ACM|volume= 48|issue= 5|pages= 1038–1068 |doi= 10.1145/502102.502106|access-date= 2018-02-16|citeseerx= 10.1.1.43.8001 }}
5. ^{{cite web|url= https://people.eecs.berkeley.edu/~wkahan/UnumSORN.pdf|title= A Critique of John L. Gustafson's THE END of ERROR — Unum Computation and his A Radical Approach to Computation with Real Numbers|last1= Kahan|first1= William|authorlink= William Kahan|date= July 2016|accessdate= 2018-02-17}}
6. ^{{cite book |author-last=Gustafson |author-first=John Leroy |author-link=John Leroy Gustafson |title=The End of Error: Unum Computing |publisher=CRC Press |edition=2nd corrected printing, 1st |date=2016-02-04 |orig-year=2015-02-05 |isbn=978-1-4822-3986-7 |series=Chapman & Hall / CRC Computational Science |volume=24 |url=https://www.crcpress.com/The-End-of-Error-Unum-Computing/Gustafson/p/book/9781482239867 |access-date=2016-05-30}} [https://books.google.com/books?id=fZsXBgAAQBAJ]  

3 : Floating point|Computer arithmetic|Error

随便看

 

开放百科全书收录14589846条英语、德语、日语等多语种百科知识,基本涵盖了大多数领域的百科知识,是一部内容自由、开放的电子版国际百科全书。

 

Copyright © 2023 OENC.NET All Rights Reserved
京ICP备2021023879号 更新时间:2024/11/11 17:30:15