MPCS 58020 Time Series Analysis and Stochastic Processes (Summer 2025)

Section 1
Instructor(s) Siegel, Andrew (siegela)
Location Online
Meeting Times Monday 6pm - 8pm
Fulfills Elective Specialization - High Performance Computing (HPC-2) Specialization - Artificial Intelligence (AI-2)

Syllabus

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), busi- ness/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.

Recommended Textbooks

  • Sheldon M. Ross. Simulation, 5th Edition. Elsevier, 2013.
  •  
  • Robert H. Shumway, David S. Stoffer. Time Series Analysis and Its Applications, EZ - Third Edi- tiion. Free Texts in Statistics, 2015. Available for free at http://www.stat.pitt.edu/stoffer/ tsa3/

Syllabus
  • Overivew of fundamentals of probability
  • CDFs, PDFs, Central Limit Theorem (Ross Chapter 2).
  • Numerical sampling from discrete PDFs (Ross Chapter 4) and continuous PDFs (Ross Chapter 5).
  • Time series models (Shumway Chapter 1.3, Chapter 3).
  • Principal component analysis and singular value decomposition.
  • Spectral analysis including Fourier transforms (Shumway Chapter 4).
  • Issues in random number generation
  • Simulating discrete events (Ross Chapter 7).
  • Monte Carlo integration (Ross Chapter 3.2, Chapters 8.1 - 8.2) with variance reduction (Ross Chapter 9).
  • Markov Chain Monte Carlo: Hastings-Metropolis, Gibbs Sampler (Ross Chapter 10).

Coursework

4 homework assignments (50%), 6 short quizzes (20%), two exams (30%).

Prequisites

Courses: Required: Immersion programming or waiver. Recommended: Immersion math, basic back- ground in probability.

Langagues: Matlab will be used for course examples. Matlab, Julia, IDL, or Python are recommended for assignments. Any language is acceptable as long as you do not use high-level libraries to replace programming exercises.

Course Prerequisites

MPCS Students: Core Programming completed (MPCS 51036, or 51040, or 51042, or 51046, or 51100) or Core Programming Waiver.

Non-MPCS Students: Must have completed CMSC 14200, CAPP 30122 or MACS 30122 or MPCS Programming Placement Exam I.

MPCS 50103 Math for Computer Science: Discrete Mathematics or CMSC 271 Discrete Mathematics or a passing score on the MPCS math placement exam.

Course request information for non-MPCS students: https://masters.cs.uchicago.edu/student-resources/non-mpcs-student-course-requests/

Other Prerequisites

This course requires competency in Unix and Linux. If you attended the MPCS Unix Bootcamp you covered the required material. If you did not, please review the UChicago CS Student Resource Guide here: https://uchicago-cs.github.io/student-resource-guide/.

Overlapping Classes

This class is scheduled at a time that conflicts with these other classes:

  • MPCS 53113-1 -- Natural Language Processing
  • MPCS 50101-1 -- Concepts of Programming
  • MPCS 51400-1 -- Functional Programming
  • MPCS 56535-1 -- Foundations of Cryptography

Eligible Programs

MS in Computational Analysis in Public Policy (Year 1) MS in Computational Analysis in Public Policy (Year 2) MS in Molecular Engineering MA in Computational Social Science (Year 1) MA in Computational Social Science (Year 2) Bx/MS in Computer Science (Option 1: Research-Oriented) Bx/MS in Computer Science (Option 2: Professionally-oriented - CS Majors) Bx/MS in Computer Science (Option 3: Profesionally-oriented - Non-CS Majors) Masters Program in Computer Science Undergraduate - CS Minor Undergraduate - CS Major