Welcome to MATH 565

Fall 2026

Monte Carlo and Quasi-Monte Carlo Methods

This is the course website for MATH 565 โ€” Fall 2026 at Illinois Institute of Technology.

Course Description

This course teaches Monte Carlo simulation techniques, focusing on applications in financial risk management, uncertainty quantification, and Bayesian inference. These sampling methods are used to compute expected values, quantiles, and densities. Advanced techniques, including quasi-Monte Carlo and Markov chain Monte Carlo methods, are covered. Students will gain experience using popular programming languages for Monte Carlo computations.

Instructor: Fred J. Hickernell

Fred J. Hickernell

Brief bio: Fred J. Hickernell is professor of applied mathematics. His research focuses on improving the efficiency of computer simulations and developing justifiable stopping criteria. He has spent most of his career at Hong Kong Baptist University and Illinois Institute of Technology, often in academic administrative roles. He has served on the editorial boards of the Journal of Complexity, Mathematics of Computation, and the SIAM Journal on Numerical Analysis. He is a Fellow of the Institute of Mathematical Statistics and the recipient of the 2016 Joseph F. Traub Prize for Achievement in Information-Based Complexity.

Hickernell speaks Cantonese and enjoys Chinese food. He is married with adult children. He enjoys discussing matters of substance. His most important identity is a disciple of Jesus.

Textbook: A. B. Owen, Monte Carlo Theory, Methods, and Examples (2026+)

Recommended resources
Prerequisites/Requirements
  • Calculus
  • Matrix algebra
  • A calculus-based probability course, such as MATH 474 or MATH 475; you should understand
    • Discrete and continuous random variables
    • Probability mass and density functions, cumulative distribution functions
    • Mean, median, standard deviation, quantile, covariance, (in)dependence
    • Population versus sample quantities
    • Central Limit Theorem
  • Facility in numerical programming, meaning
    • Programming in Python, or some other language such as MATLAB, or R
    • Using an integrated development environment (IDE), such as VS Code
    • You are highly encouraged to become familiar with GitHub
  • Facility with LaTeX or some other technical document preparation system; Markdown is helpful
Objectives

By the end of this course, students will be able to:

  • Understand the basics of Monte Carlo and Quasi-Monte Carlo Methods.
  • Understand the basics of Markov chain Monte Carlo (MCMC).
  • Understand how these methods are used for computations.
  • Assess the performance of Monte Carlo methods and improve their effectiveness.
  • Understand basic implementation issues in performing Monte Carlo calculations.
Where to Find It
This course website Canvas website
Syllabus Grades
Schedule and Lecture Notes Announcements
Notebooks Discussions
Assignments Assignments and submissions
Tests and Exams
Project
Course Policies
Course Repository

Course Outline

Introduction โ€” 4 hours
  • What is a Monte Carlo method?
  • Probability review
  • Point and interval estimators of means, variances, probability distribution functions, and quantile functions
  • Conditional Monte Carlo
Generating Samples โ€” 8 hours
  • Pseudo-random numbers
  • Random vectors with different distributions
  • Low discrepancy sampling
  • Acceptance-rejection sampling
Markov Chain Monte Carlo + Discrepancy โ€” 9 hours
  • Markov chains
  • Metropolis-Hastings
  • Kernel-based discrepancies and maximum mean discrepancy
  • Discrepancy as a measure of cubature error
  • Sample quality
  • Gibbs sampler
  • Convergence diagnostics
  • Error estimation
Enhancing Efficiency โ€” 15 hours
  • Control variates
  • Importance sampling
  • Antithetic variates
  • Stratified sampling and Latin hypercube
  • Quasi-Monte Carlo sampling
Selected Topics โ€” 6 hours
  • (TBA)

Assessment

  • Assignments: 15%

  • Project: 25%

  • Midterm Tests: 20%

  • Final Exam (Take-Home (35%) + In-Class (65%)): 40%

    • In-Class on the date assigned by the registrar
  • Extra Credit: From August 24 through December 6, you may earn extra credit by being the first student to report a previously unreported error in

    • my lecture slides, Jupyter notebooks, or assignments at least 24 hours after the material was presented or posted; or
    • the textbook.

    Report each error by creating an issue in the course repository. Each confirmed error earns 0.5 or 1 percentage point, depending on the severity of the error, up to 10 percentage points total.

    Extra credit is added to your final weighted course total. Canvas may not display the weighted total correctly until grades have been recorded in every assessment category.