Simulation: An Interdisciplinary Tool

An MM and QR Overlay Course!

Who's it for?

This course is intended for a wide audience, from those with no knowledge of computer science to upper-level CS Majors. It's for anyone who is interested in simulation models: which are the most important way to understand a system that changes over time. For example, a model of the earth's climate and weather might allow us to predict global temperatures years in the future. We'll consider a variety of systems, drawing from Economics, Physics, Geology, Political Science, International Relations, and other disciplines.

Catalog Description

CS199 is for students who want to learn about the fundamentals of computer simulation and mathematical tools that are essential for designing and evaluating computer simulations. Computer simulations play an increasingly important role in decision making and public policy, such as climate simulations in debates about global warming or traffic simulations in urban planning. In this course, you will not only explore and evaluate existing simulation environments, but will learn how to modify existing simulations and to build your own simulations. You will also learn how to use important tools of probability and statistics in the implementation and evaluation of simulations. CS199 is open to all students, from those who have never taken a CS course to those who have completed their Computer Science major. CS199 satisfies the Mathematical Modeling (MM) requirement. CS199 satisfies the QR overlay requirement.

Prereqs: fulfillment of the basic skills component of the Quantitative Reasoning requirement.

Sample Simulation Models

These are just some of the kinds of simulation models we may look at.

Compound interest:
To estimate how our money will grow over time in various investments, we don't have to solve differential equations or trust an accountant. We can model these investments and simulate their performance under different assumptions.

Here's an annuity model:

Predator-Prey:
The population of lynxes depends on the population of rabbits, and the population of rabbits depends on the population of lynxes, and both vary, but how? We can model these interaction and predict the populations over time.
Global climate:
the global average temperature depends on the sunlight we receive, the amount that is reflected away by snow and cloud cover, which depends on global average temperature, and that just names a few factors. We can model these dependencies and get some insight into the dynamics of the Earth's global climate and how more sophisticated climate models work.
Queuing Problems:
You're the branch manager of a bank and you want to figure out how many tellers to have, whether to have an "express lane," trying to minimize your personel costs and your customers' waiting time. This classic "queueing" problem can be simulated by a straightforward discrete event simulator so that you can compare options.

Here's a simple M/M/1 queue;

screen shot of M/M/1 queue

Here's a fancy bank with animation

screen shot of bank model

Here's part of a model of a grocery store with express lanes and regular lanes:

screen shot of grocery store model

An intimidating model of CPU scheduling:

screen shot of CPU scheduling model
The Birthday Paradox:
How many people do you have to gather together to get even odds that two of them share a birthday? Again, this can be calculated, but simulation is more fun and gives a nice visual insight. We have a nice demo of the birthday paradox
Emergent phenomena:
A hive of bees, ants or termites can often show a global behavior that seems organized and directed, as if there were a directing intelligence, even though there isn't. Instead, each individual bee, ant, or termite is following simple rules that have a surprising collective effect, called an "emergent phenomenon." We'll look at some simulation models that show examples of emergent phenomena.
Playing Craps:
You're going to the casino and you want to know what games to play. What's the probability of winning in craps? This can be calculated, but it can also be simulated. You can even simulate the performance of different betting strategies. Probability theory began when a nobleman with a zest for gambling asked Pascal to help him lose less often, and it's still an interesting application.
Voting Systems:
When there are more than two candidates for an elected position, the winner is not necessarily the person that the most people prefer. It can depend on the structure of a run-off system. How can we understand the differences and probable effects of different voting systems, such as "approval voting" or "instant run-off"? One important way is to model them using a computer and simulate the results of different elections.
Feedback Control Systems:
If your house is cold, your thermostat turns on the furnace, the house warms up, and the thermostat turns the furnace off. It sounds simple, but it's the tip of the iceberg. It's an example of feedback control systems -- a powerful idea that underlies car suspension systems, global climate models, international financial systems, and many other important systems. We'll model some feedback control systems to see how they work and how important simulation is to understanding them.
Random Walks:
A famous book (A Random Walk Down Wall Street) argues that stock prices are a "random walk." What does that mean? How can we understand and predict the behavior of a random walk? Doesn't the word "random" mean "unpredictable?" We can use simulation to model various random walks to play with the effects of different amounts of randomness and how that influences the predictability.
Falling Atom Clusters:
How do you measure the temperature of some ultra-cold laser-cooled atoms? You can't use a thermometer. But when the trapping and cooling lasers are turned off, the group of atoms starts to fall and spread out. How quickly they trip a detector depends on their temperature, so we can measure their temperature if we can understand these dynamics. Simulation models can tell us these relationships.

A screen shot from that model:

StarLogo model of falling atoms

This work is licensed under a Creative Commons License | Creative Commons License | Viewable With Any
Browser | Valid HTML 4.01! | Valid CSS!