COLLEGE OF SCIENCE AND HEALTH
Computer Science Syllabus and Outline
1. / Course: CS404-01 Computer Simulation, 3 credits (Major elective course)
2. / Department secretary: Carol Parken (Coach House 120) can be contacted by telephone at (973)_720-2649 and by e-mail at .
3. / Semester offered: Fall 2005
Time: M, F 9:30PM-11:00PM Location: Coach House 101B
4. / Faculty: Linda KaufmanOffice: Coach House 118, Phone: (973)-720-2952, E-mail: mailto:
Course website-cs.wpunj.edu/~kaufmanl –look here for homework assignments, lecture notes
Office Hours:Monday, Friday 12:30-2;00, T-3:30-4:00 And also by appointment.
5. / Required Texts:
"Discrete-Event System Simulation" (FourthEdition), Banks, Prentice-Hall, 2005.
ISBN 0-13-144679-1
Suggested Readings: (not required)
Law, Averill, and Kelton, W. David. Simulation Modelling and Analysis,
(Third Edition), McGraw-Hill, 1999.
"Elementary Computer Applications in Science, Engineering, and Business", Barrondale,
Roberts, & Ehle, John Wiley and Sons, New York, NY, 1971.
"Getting Started in GPSS", Dunning, Engineering Press, San Jose, CA, 1985.
Matlab Manual
James. B. Dabney, Thomas Harman.”Mastering Simulink”, Prentice Hall,2004
Other Material for Study:
http://center.uvt.nl/staff/kleijnen/lk-1-4.pdf
http://www.cs.uml.edu/~giam/Mikkeli/
Simulation websites
http://isgwww.cs.uni-magdeburg.de/~graham/its_01/
http://www.courses.vcu.edu/MATH-jrm/OPER641/sched641.htm
some simulations:
http://www.cise.ufl.edu/~fishwick/websim.html
high level
http://www.stanford.edu/class/msande223/handout.htm
http://www.mathworks.com
http://www.mathcs.richmond.edu/~hubbard/PWJ/src/ (Hubbard's Java code)
Handouts in Probabilistic Simulation
6. / Course Objectives:
Description:
Theory, programming methodology, algorithm design, and practical applications of computer simulation. Topics include: modeling of deterministic systems, stochastic systems, generation of random variables and distributions, queuing models, collection and analysis of statistics from runs. Applications in computer system and network design and performance. Assigned projects concentrate on programming simulation models using C/C++/J and simulation languages such as GPSS or Arena.
Specific Objectives:
1. To understand the principles of systems simulation.
2. To develop mathematical tools for system modeling.
3. To teach the programming methodology required to design and validate simulation programs.
4. To familiarize student with the structure and behavior of complex systems.
7. / Student learning outcomes:
Upon completion of this course, students will:
a. Think in terms of systems, their characterization with sufficient state variables, their classification into several categories (such as deterministic but not analytically solvable), and conduct inquiry on their modeling, formulation, and varying approaches towards problem-solving in these systems.
b. Demonstrate a thorough understanding of their knowledge of probability and statistics, with a strong emphasis on applications in Computer Science and the programming of simulation models. The theory of distributions and, in particular, several important distributions will be studied so student will be capable of recognizing under what conditions and situations to apply which distribution, both in synthesis of simulation models and analysis of data generated. They should be familiar with several algorithms to generate specific and empirical distributions.
c. Develop an appreciation of the nature of randomness and its many relations to algorithmic complexity (from the abstract levels of Chaitin's work to the concrete developments of probabilistic algorithms). They should know what are pseudo-random numbers, their history (the key papers/research on their generators), and how to interpret them and the significance of results based on them in a scientific/decision-oriented manner.
d. Be capable of programming moderately complex systems simulations, both discrete event and continuous.
e. Develop proficiency in at least one special-purpose simulation programming language (GPSS , Simulink, or Arena) and also in designing simulation programs with standard C++.
f. Through classroom participation in problem-solving sessions and discussions, homework, papers, and other assignments, this course also reinforces the following student learning outcomes in accordance with the university:
· Effectively and exactly express themselves in written and oral form.
· Demonstrate the ability to think critically both in algorithmic synthesis and analysis.
· Locate and use information on the Internet, in monographs and scholarly journals.
· Demonstrate the ability to integrate knowledge and ideas in a coherent and meaningful manner (as cited above).
8. / Topical outline of the course content (tentative)
Introduction. Basic Definitions. Why Simulate / Banks 1
Handout
Basic Simulation Modeling: Time Oriented Simulations (Gas Pumps & Basic Queuing), Monte-Carlo Modelling (Neutron Diffusion), More Queuing (Airplane Traffic Flow) Solving ordinary differential equations in MATLAB
Quiz-Sept.30 / Banks 1
Handout
Basic Simulation Modeling: Discrete-Event Simulation (Event Loop versus Time Loop), Single-Server Queueing, Inventory System Simulation, Other Simulation Models, Steps, Pitfalls, Queues / Banks 2+3
Modeling Complex Systems: List Processing in Simulation, Simulation Language: simlib / Law 2
Banks 3+4
Midterm-Oct.21
Review of Basic Probability and Statistics: Introduction, Random Variables & Their Properties, Simulation Output Data and Stochastic Processes, Estimation of Means, Variances, and Correlations / Banks 5
Random-Number Generators (RNG / Banks 7
Generating Random Variates (RV's / Banks 8
Queueing Analysis
/ Banks 6 and Handouts9. / Teaching methods (e.g., lecture, discussions, presentations, etc.)
a) Classroom lectures, discussions, and problem solving sessions
b) Homework reviews
10. / Course expectations:
a. Reading Assignments
Item 8 (above) addresses the reading schedule issue.
b. Tentative timeline for submission of written assignments or other work
Projects and class work will be collected as scheduled with a grace period of one week.
c. Attendance
Attendance will be recorded. Departmental guidelines require
that: 3 absences (2 for night) ---> departmental warning letter
7 absences (4 for night) ---> automatic failure in course
Only valid excuses (in writing) allay these consequences.
e. Examinations (tentative dates, make-up policy, etc.)
All exams will be announced at least one full week in advance.
If you are absent on the day an exam is announced, you are responsible for finding out
about it from a fellow student or the professor. No make-up exams will be given except for
extraordinary circumstances.
Item 8 (above) addresses the examination schedule issue.
f. Class participation
Before lab sessions and lectures, read relevant text to optimize productivity.
11. / Grading and other methods for assessing student academic performance:
· Computation: Final Grade = (40%) Classwork & Projects + (20%)Quizzes +Midterm(15%) + final(25%)