PiWithPy - Resource Intensive Computing in Python

Anubhav Singh (~xprilion)


Description:

Overview:

Recently the world record for highest precision of digits of Pi was broken by Emma Haruka Iwao using the Y-Cruncher software running on 25 Compute Engine VMs on Google Cloud Platform. Such resource intensive exploration of reaching the highest precision values of constants has been actively pursued by mathematicians and researchers.

Python has been acclaimed for its ability of handling numbers. But how far can it help us in discovering Pi? In this talk, we begin with the simplest ways of obtaining Pi in Python and slowly work our way towards breaking through the Plank’s distance measure of error in calculating the Universe’s circumference. In the last quarter of the talk we talk about how you can set your own Pi record! Maybe, do it using Python?

Motivation:

Our primary motivation at number 6

If you have used any programming language for some time now, you must at some point in your life come across "It's losing precision". The idea behind this talk is to find ways in Python to increase precision and speed of computation in scientific experiments which are computationally heavy by taking the example of the delicious number - Pi.

Outline:

  • Introduction to Pi and Anubhav [5 mins]

    • Who is Pi [1 min]
    • What is Anubhav [1 min]
    • The motivation behind Pi With Py [3 mins]
  • History of Calculating Pi [5 mins]

    • The latest developments [1 min]
    • How did we reach 31 trillion digits [2 mins]
    • Methods in the past [2 mins]
  • Algorithms for calculating Pi and their Stress Test in Python [10 mins]

    • Archimedes Approximation of Pi [2 mins]
    • Ramanujan-Sato Series [2 mins]
    • Bellard's Formula [2 mins]
    • Spigot Algorithms [4 mins]
      • Why Spigot algorithms are all the rage [2 mins]
      • Chudnovskys' Algorithm [2 mins]
  • Beauty of Pi using Python [5 mins]

    • Some Visualizations of Pi created using Python
      • Mandelbrot Sets [2 mins]
      • Self Made visualizations [3 mins]
  • How can you set a record? [5 mins]

    • What does it take (computational resources)? [3 mins]
    • Generating Pi [1 min]
    • Verifying your digits [1 min]
  • Questions & Answers

Takeaways:

  1. Learn about resource intensive computation using Python
  2. High precision mathematics using Python
  3. All about Pi!

Questions you might have:

  1. Is this a mathematical talk?
    • No. I am neither a mathematics major nor am I a wiz kid. My passion (and this talk) stays within the boundaries of mathematics in computers.
  2. Is this talk only about floating point precision?
    • No. The idea is to talk more from the view of intensive mathematical computing for science and research purposes.

Prerequisites:

Basic understanding of converting mathematical equations to Python programs

Speaker Info:

A Web Developer since before Bootstrap was born, I began my journey in the field of computer science in my 8th grade with my first two projects being - a search engine and a social network right from scratch using LAMP stack. Currently an active Machine Learning explorer, I've used Python for all reasons and seasons over the last 4 years including Data Science to ACM ICPC Regional Finals for 2 consecutive years, where I fell prey to a precision loss in Python - and hence the will to master it.

I'm an active speaker at Google Developers Group Kolkata talking often about machine learning and cloud computing, including the GDG DevFest Kolkata 2018. I'm also a speaker for the Elastic Search Kolkata Community and Neo4j Community.

I am among the youngest instructors at DataCamp, which is a global platform for learning DataScience. I'm also currently authoring 2 books on Deep Learning using Python expected to be published in late 2019 by Packt Publications. I have been recognized as an Intel Software Innovator.

Speaker Links:

  1. Intel Software Innovator Profile - My work as an Intel Software Innovator.
  2. Personal Website - To know as much about me as is on the Internet.
  3. LinkedIn - If you wish to connect with me professionally
  4. DataCamp Instructor Profile - My love for spreading knowledge, here!
  5. GitHub - To explore my projects!
  6. Blog Article on Reinforcement Learning - My Article on DataCamp
  7. Previous Presentations - Previous presentations
  8. Google Summer of Code 2019 Profile - My journey on GSoC 2019.
  9. Video : GDG Kolkata Data Science Workshop - PS: A lot of blank space in there, due to a live workshop :)

Section: Scientific Computing
Type: Talks
Target Audience: Beginner
Last Updated: