In some applications, using the standard precision in your programming language of choice, may not be enough, and can lead to disastrous errors. In some cases, you work with a library that is supposed to provide very high precision, when in fact the library in question does not work as advertised. In some cases, lack of precision results in obvious problems that are easy to spot, and in some cases, everything seems to be working fine and you are not aware that your simulations are completely wrong after as little as 30 iterations. We explore this case in this article, using a simple example that can be used to test the precision of your tool and of your results.
I am trying to make some simulations of chaotic systems, for instance X(k) 4 X(k) (1 - X(k-1)) but I noticed that for all these systems, the loss of precision propagates exponentially, to the point that after 50 iterations, all values generated are completely wrong. I wrote some code in Perl using the BigNum library (providing hundreds of decimals accuracy) and it shows how dramatic standard arithmetic fails in this context.
At the Computing Research Association (CRA) Snowbird conference in 2014, Jim Kurose (then at University of Massachusetts-Amherst) and Ed Lazowska (University of Washington) presented a session on burgeoning enrollments in U.S. computing courses. In response, CRA's Board formed a committee to further study enrollment-related issues, chaired by CRA board member Tracy Camp. A panel on the upsurge in undergraduate computer science (CS) enrollments in the U.S. took place at the ACM Special Interest Group on Computer Science Education Technical Symposium last year (SIGCSE 2015); shortly thereafter, the full committee went to work with the goal of measuring, assessing, and better understanding enrollment trends and their impact, with a special focus on diversity. Explained Susan B. Davidson, CRA Board Chair and a member of the CRA enrollments committee, "Over the past few years, computing departments across the country have faced huge increases in course enrollments. To understand the extent and nature of these'booming enrollments,' CRA has undertaken a study that surveys both CRA-member doctoral departments as well as ACM non-doctoral departments."
Colfax International, a Silicon Valley company with 28 years of experience in high-end computing systems, is growing its research team by opening a full-time position of Research Engineer in Machine Learning based in Sunnyvale, California, USA. We are looking for professionals with passion for parallel computing with emphasis on machine learning tasks to help us expand our activity in research, education and consulting on modern computing technologies. Colfax International is an Equal Opportunity Employer. All qualified applicants will receive consideration for employment without regard to race, national origin, gender, age, religion, disability, veteran status, or any other category protected by law.