|Instructor(s)||Siegel, Andrew (siegela)|
|Fulfills||Elective Specialization - Data Analytics (DA-2) Specialization - High Performance Computing (HPC-2)|
Stochastic processes are driven by random events. They can be used to model phenomena in a broad range of disciplines, including science/engineering (e.g. computational physics, chemistry, and biology), business/finance (e.g. investment models and operations research), and computer systems (e.g. client/server workloads and resilience modeling). In many cases relatively simple stochastic simulations can provide estimates for problems that are difficult or impossible to model with closed-form equations. In this class we focus on the rudimentary ideas and techniques that underlie stochastic time series analysis, discrete events modeling, and Monte Carlo simulations. Course lectures will focus on the basic principles of probability theory, their efficient implementation on modern computers, and examples of their application to real world problems. Upon completion of the course, students should have an adequate background to quickly learn in depth specific Monte Carlo approaches in their chosen field of interest.
Robert H. Shumway, David S. Stoffer. Time Series Analysis and Its Applications, EZ – Third Edition. Free Texts in Statistics, 2015. Available for free at http://www.stat.pitt.edu/stoffer/tsa3/
Sheldon M. Ross. Simulation. Elsevier, 2013
Press, Numerical Recipes
Knuth, Algorithms vol 2
Class 1: Simulating ARIMA time series, Shumway Chapters 2 and 3
Class 2: Principal component analysis and single value decomposition
Class 3: Spectral analysis including Fourier transforms, Shumway Chapter 4, Press Chapters 12 and 13
Class 4: Coding and validating RNGs, simulating random variables, Ross Chapters 3, 4, and 5, Knuth Chapter 2, Press Chapter 7
Class 5: Simulating discrete events, Ross Chapter 6
Class 6: Monte Carlo integration w/variance reduction, Ross Chapter 8
Class 7: Markov Chain Monte Carlo (Hastings-Metropolis, Gibbs Sampler), Ross Chapter 10
Classes 8 and 9: Applications of Monte Carlo including:
Chemical kintetics (Gillespie algorithm)
Solving integral equations with Markov Chain Monte Carlo
4 or 5 biweekly homework assignments. Weekly readings. No exams.
Courses: Required: Immersion programming or waiver. Recommended: Immersion math.
Languages: Required: familiarity with C/C++, Python, or Java (other language options are acceptable, but consult instructor first). Recommended: C and Python.
Core programming requirement
This class is scheduled at a time that does not conflict with any other classes this quarter.