CS 550: Introduction to Simulation

Fall, 2025

How can we use computers to design systems and, more generally, make decisions, in the face of complexity and uncertainty?

Simulation techniques apply the power of the computer to study complex stochastic systems when analytical or numerical techniques do not suffice. It is one of the most frequently used methodologies for the design and evaluation of computer, telecommunication, manufacturing, healthcare, financial, and transportation systems, to name just a few application areas. Simulation is an interdisciplinary subject, incorporating ideas and techniques from computer science, probability, statistics, optimization, and number theory. Simulation models, which embody deep domain expertise, can effectively complement, or be combined with, machine-learning approaches.

This course will provide a hands-on introduction into this fascinating and useful subject.

Do I know enough probability and statistics to take the course? Most (but not all) of the topics in this handout should be familiar to you.

How about programming? You will be required to write simulations in Python, but we will give you helpful templates to get you started.

The most recent course syllabus can be found here. It will be updated for the Fall.

The course materials will be on the course Canvas page. You must be registered for the course to obtain access.

Any information on the Canvas page supercedes the information on this web site.

Last modified 11 March 2025