Simulation is a general technique for answering ‘what-if questions’ about complex real-world systems using computer-generated models. There are many different simulation techniques across different fields; the focus of ORIE 4580⁄5580 is stochastic simulation: in particular, we will cover two topics:
Stochastic simulation deals with predicting certain aspects of the behavior of some system through approximate models. Manufacturers use simulation to model work cells, conveyors, auto- mated guided vehicles, storage and retrieval systems. Airlines and transportation companies use simulation to model fleet logistics and traffic. Designers of communications networks and computer systems use simulation to model data transmission and switching. Health care providers use simulation to model resource levels and placement in health care systems. Epidemiologists use simulation to model spread of diseases. The defense community uses simulation to model aircraft readiness and combat strategy. In public services, simulation is used to model police, fire fighting, ambulance and judicial systems. Many aspects of financial, marketing and information systems can be studied using simulation.
Other References: The following books are good references for the material we will cover.
Simulation by S.M. Ross
These textbooks are at a similar level to the suggested textbook.
Monte Carlo Methods in Financial Engineering by P. Glasserman
This book is for advanced students, and while focused on financial engineering, is excellent reading in general.
All the above references are available online on the Cornell library website.
Familiarity with the topics covered in ENGRD 2700 and ORIE 3500⁄5500 is required, but ORIE 3500⁄5500 may be taken concurrently. The initial part of the course includes a short review of probability and statistics, which is in essence the material in Chapter 4 Review of Probability and Statistics - of the suggested textbook by Law (see below). If this material is unfamiliar to you, then you might study Chapters 1 through 6 of Introduction to Probability and Statistics for Engineers and Scientists, 2nd ed., by Sheldon Ross, or Chapters 1-5 and Chapter 7 of Probability and Statistics for Engineering and the Sciences, 8th ed., by Devore. This material is very standard, and can be found in other books at a similar level.
The course involves some coding, and some prior programming experience is useful. The programming in the first part of the course can be done using any high-level language of your choice (in particular, Python, MATLAB, R, Julia, C++ or Java); our preference is that students use Python, and submit iPython notebooks with annotated code and plots. There will be a recitation section introducing these for interested students, and students can use them in the lab computers in 571 Rhodes Hall and 453 Rhodes Hall. The second half of the course will be based on Simio, a commercial simulation package, which we will teach in class.