Polytechnic University, Department of CIS

Computer Simulation

Spring 2004, CS 909 (1439I), Tue., 6:00 - 8:15 pm, RH 708
Instructor: K. Ming Leung


In many areas of science and engineering, computer simulation and other computational methods now have a role equal in importance to the traditional theoretical and experimental approaches. Even in disciplines, such as finance, management, and social sciences, which traditionally have not been considered as highly computational in nature, the use of simulation and other numerical methods have been steadily growing. The ability to compute by simulation has now become a part of the essential repertoire of many researchers in these areas.

The course CS 909 deals with basic computer simulation techniques, such as Monte Carlo, genetic algorithms and artificial life, random walks and diffusion, cellular automata, neural networks, and molecular dynamics. Students must have at least taken the complete sequence of introductory level mathematics courses, and have the ability to write computer programs in a high level computer language. Prior knowledge in numerical analysis is not required.

Although there is no required textbook for this course, you will find the following 2 books useful. They have been placed on course reserve in our library.


The following is a tentative schedule:.

  1. Portable Pseudorandom Number Generators (1.25 weeks)



  2. Discrete Random Variables (0.5 week)


  3. Continuous Random Variables (0.75 week)


  4. Monte Carlo Simulations (3 weeks)



  5. Quasi-Monte Carlo Simulations (1 week)



  6. Genetic Algorithms & Artificial Life (2 weeks)



  7. Differential Evolution & (1 week)



  8. Cellular Automata (2 weeks)



  9. Discrete-Event System Simulation (1 week)





Homework Assignments

  1. Assignment 1
  2. Assignment 2
  3. Assignment 3
  4. Assignment 4
  5. Assignment 5
  6. Assignment 6 (Project)

    Lecture Notes

    1. Pseudorandom Number Generators and Introduction to Computer Simulation
    2. Using Monte Carlo Simulation to find the Average End-to-End Length of a Polymer
    3. Discrete and Continuous Random Variables
    4. A Problem in Geometrical Probability: The Buffon Needle Simulation for the Value of Pi
    5. Basic Monte Carlo Method
    6. Generating Non-uniformly Distributed Random Numbers
    7. The Latest Version of the Ziggurat Method for Generating Normally Distributed Random Numbers
    8. Use of Variance Reduction and Importance Sampling techniques in Monte Carlo Simulation
    9. Metropolis Rule in Monte Carlo Simulation
    10. Use of Quasi-Random (Low Discrepancy) Sequences in Simulation
    11. Genetic Algorithm
    12. Differential Evolution
    13. Cellular Automata
    14. One Dimensional Cellular Automata
    15. Two Dimensional Cellular Automata