Modeling and Simulation
(CS - 503)
Department of Computer Engineering
Bilkent University
Fall 2008
Dr.Çağatay
ÜNDEĞER
Part Time Instructor
Department of Computer
Engineering - Bilkent University
room : 514
e-mail : cagatay@undeger.com , cagatay@cs.bilkent.edu.tr
web-site : www.cs.bilkent.edu.tr/~cagatay
1. Objective
In this course, modeling and simulation
(M&S) methodologies considering both practical and theoretical aspects will
be studied in details. By taking the lecture, you will be supported with
sufficient knowledge about a wide range of M&S concepts that will lead you to
develop your own M&S applications. Also you will be able to learn about some real-word practices in the
context of defense industry and game programming.
2. Scope
M&S is a discipline of
understanding and evaluating the interaction of parts of a real or theoretical
system by designing its representation (model) and executing (running) the
model including the time and space dimension (simulation). In that definition,
a system is an entity (unit, process, event...), which exists and
operates in time and space through the interaction of its parts; a model is a
simplified representation of a real or theoretical system at some particular
point in time or space intended to provide understanding of the system; and a
simulation is the manipulation of a model in such a way that it operates in
time or space to summarize it.
In recent decades, M&S has become a very
popular research and development area, which can be applied in many areas such
as medical research, training & support, industrial engineering
designs & presentations, civil engineering designs & presentations,
mechanical engineering designs & presentations, nature sciences (e.g.
physic, chemistry, biology, meteorology, astronomy), geographic information
systems, military decision support, training and entertainment. The focus of this lecture will be theoretical
aspects of M&S and real-world practices primarily towards the defense
industry and game programming; which includes earth modeling, entity modeling,
behavior modeling, sensor & weapon systems modeling, distributed
simulations, simulation based optimization and analysis.
3. News
16.10.2008 – Source code of experimental game development environment can be downloaded here.
Source code is for Borland C++ Builder 6.0, but it can be compiled without modification in Visucal C++ except the user interface.
OpenGL component given in the directory “components” should be registered to IDE with options:
Advance Compiler / Instruction Set = Pentium
Advance Compiler / Data Alignment = Quad Word
03.11.2008 – The due dates for the projects are as follows:
1) Proposals (28.10.2008)
2) Introductory Presentations (18.11.2008) ( 10 minutes per presentation )
3) Progress reports (25.11.2008) ( literature survey and draft design/algorithms )
5) Final Presentations (16.12.2008) ( (1) Emre Akatürk, Denizhan Güçer, Cihan Halit, (2) Oğuz Oğuzcan, (3) Engin Bayrak, (4) Gizem Gürcüoğlu, Tuğba Yıldız ) ( 25-35 minutes each )
6) Final Presentations (23.12.2008) ( (5) Zeki Yanlız, (6) Abdullah Bülbül, Mustafa Kabak, (7) İskender Yakın, (8) Bertan Gündoğdu, Adil Yalçın) ( 25-35 minutes each )
7) Final Presentations (30.12.2008) ( (9) Merve Sağlam, Mustafa Sefünç, (10) Erhan Okuyan, (11) Ferhat Kutlu, (12) Tolga Özaslan) ( 25-35 minutes each )
8) Final Reports (30.12.2008 – hard copy to be given in lecture hour) ( literature survey, final design & algorithms, important implementation details, and instructions for demo )
9)
Final Demos (06.01.2009)
( all ) ( 8-12 minutes each, do rehearsal and be well-prepared since no delays are accepted )
Grading criteria for presentations are:
Attandance to presentations will provide 6 points bonus.
Grades for Attandance to Seminar:
No |
Name |
Last name |
Total |
1 |
Emre |
Akatürk |
33,3 |
2 |
Ahmet
Engin |
Bayrak |
33,3 |
3 |
Muhammed
Abdullah |
Bülbül |
33,3 |
4 |
Denizhan |
Güçer |
33,3 |
5 |
Ramazan
Bertan |
Gündoğdu |
50 |
6 |
Gizem |
Gürcüoğlu |
0,0 |
7 |
Cihan |
Halit |
33,3 |
8 |
Mustafa |
Kabak |
66,7 |
9 |
Ferhat |
Kutlu |
100,0 |
10 |
Oğuzcan |
Oğuz |
66,7 |
11 |
Erhan |
Okuyan |
33,3 |
12 |
Tolga |
Özaslan |
66,7 |
13 |
Merve |
Sağlam |
100,0 |
14 |
Mustafa
Akın |
Sefünç |
66,7 |
15 |
İskender |
Yakın |
0,0 |
16 |
Mehmet
Adil |
Yalçın |
50 |
17 |
İsmet
Zeki |
Yalnız |
66,7 |
18 |
Tuğba |
Yıldız |
33,3 |
Introductory Presentations
Name |
Last name |
Total |
Emre |
Akatürk |
97 |
Ahmet
Engin |
Bayrak |
97 |
Muhammed
Abdullah |
Bülbül |
73 |
Denizhan |
Güçer |
97 |
Ramazan
Bertan |
Gündoğdu |
98 |
Gizem |
Gürcüoğlu |
63 |
Cihan |
Halit |
96 |
Mustafa |
Kabak |
73 |
Ferhat |
Kutlu |
97 |
Oğuzcan |
Oğuz |
100 |
Erhan |
Okuyan |
100 |
Tolga |
Özaslan |
90 |
Merve |
Sağlam |
92 |
Mustafa
Akın |
Sefünç |
92 |
İskender |
Yakın |
65 |
Mehmet
Adil |
Yalçın |
95 |
İsmet
Zeki |
Yalnız |
93 |
Tuğba |
Yıldız |
63 |
Grades for Progress Reports:
Prj No |
Project |
No |
Name |
Last name |
Progress Report |
1 |
Design
& Simulation of City Flow |
12 |
Tolga |
Özaslan |
80 |
2 |
Building
and City Modeling |
10 |
Oğuzcan |
Oğuz |
80 |
3 |
Distributed
Weapon/Platform Modeling |
2 |
Ahmet
Engin |
Bayrak |
75 |
4 |
Sketching
Character Motion |
6 |
Gizem |
Gürcüoğlu |
75 |
18 |
Tuğba |
Yıldız |
75 |
||
5 |
Fish
Modeling |
17 |
İsmet
Zeki |
Yalnız |
70 |
6 |
Shooting
Range Simulator |
3 |
Muhammed
Abdullah |
Bülbül |
85 |
8 |
Mustafa |
Kabak |
85 |
||
7 |
Dynamic
Path Planning |
15 |
İskender |
Yakın |
35 |
8 |
Terrain
and Tree Simulation |
5 |
Ramazan
Bertan |
Gündoğdu |
80 |
16 |
Mehmet
Adil |
Yalçın |
95 |
||
9 |
Modeling
mountains, water and bushes |
13 |
Merve |
Sağlam |
95 |
14 |
Mustafa
Akın |
Sefünç |
95 |
||
10 |
Flight
Simulator |
11 |
Erhan |
Okuyan |
85 |
11 |
Sensor
Modeling and Simulation |
9 |
Ferhat |
Kutlu |
75 |
12 |
Car
Simulator |
1 |
Emre |
Akatürk |
90 |
4 |
Denizhan |
Güçer |
90 |
||
7 |
Cihan |
Halit |
90 |
Bonus for Attandance to Presentations:
Name |
Last name |
Total |
Tolga |
Özaslan |
5 |
Oğuzcan |
Oğuz |
2 |
Ahmet
Engin |
Bayrak |
3 |
Gizem |
Gürcüoğlu |
4 |
Tuğba |
Yıldız |
3 |
İsmet
Zeki |
Yalnız |
5 |
Muhammed
Abdullah |
Bülbül |
4 |
Mustafa |
Kabak |
2 |
İskender |
Yakın |
6 |
Ramazan
Bertan |
Gündoğdu |
4 |
Mehmet
Adil |
Yalçın |
5 |
Merve |
Sağlam |
6 |
Mustafa
Akın |
Sefünç |
6 |
Erhan |
Okuyan |
4 |
Ferhat |
Kutlu |
2 |
Emre |
Akatürk |
6 |
Denizhan |
Güçer |
6 |
Cihan |
Halit |
6 |
4.
Course Outline
• Introduction To Modeling & Simulation
– What is Modeling and Simulation?
– Complexity Types
– Model Types
– Simulation Types
– M&S Terms and Definitions
•
Input
Data Analysis
– Simulation Input Modeling
– Input Data Collection
1. Data Collection Problems
2. Practical Suggestions
3. Effect of Period of Time
– Input Modeling Strategy
1. Histograms
2. Probability Distributions
3. Selecting a Probability Distribution
4. Evaluating Goodness of Fit
•
Random
Variate Generation
– Random Numbers
– Random Number Generators
– Random Variate Generation
1. Factors to be considered
2. General principles
1. Inverse Transform Method
2. Acceptance-Rejection Method
3. Composition Method
4. Relocate and Rescale Method
3. Specific
distributions
•
Output
Data Analysis
–
Introduction
1. Types of Simulation With Respect to
Output Analysis
2. Stochastic Process and Sample Path
3. Sampling and Systematic Errors
4. Mean, Standard Deviation and
Confidence Interval
–
Analysis
of Finite-Horizon Simulations
1. Single Run
2. Independent
Replications
3. Sequential Estimation
–
Analysis
of Steady-State Simulations
1. Removal of Initialization Bias
(Warm-up Interval)
2. Replication-Deletion Approach
3. Batch-Means Method
•
Comparing
Systems via Simulation
–
Introduction
–
Comparison
Problems
1. Comparing Two Systems
2. Screening Problems
3. Selecting the Best
4. Comparison with a Standard
5. Comparison
with a Fixed Performance
•
Discrete
Event Simulations
–
Introduction
1. Next-Event Time Advance
2. Arithmetic and Logical Relationships
3. Discrete-Event Modeling Approaches
–
Event-Scheduling
Approach
–
Process-Interaction
Approach
–
Processes and Resources
•
A
Discrete Event Simulation Language: General Purpose Simulation System (GPPS)
– Simulation Languages
–
GPSS Simulation Language
–
A Sample Simulation Model
•
A
Distributed Simulation Standard: High Level Architecture (HLA)
–
Introduction
to Distributed Simulations
–
Introduction
to HLA
–
HLA
Interface Specification:
1. Federation Management
2. Declaration Management
3. Object Management
–
Conclusion
•
Entity
Behavior Modeling
–
Introduction
to Artificial Intelligence (AI)
–
AI
Techniques & Architectures
–
Some
AI Algorithms/Techniques
1.
2. Decision Trees
3. Artificial
Neural Networks
4. Logic Programming
5. Production Systems
6. Genetic Algorithms
7. Path Planning
8. Script Programming
–
Conclusion
5.
Course Requirements
The students are expected to develop a
small-scale M&S project with a team of preferably at most three people. The
project will include documentation, implementation and a class presentation.
The project topic can be either proposed by the team or selected from a list of
topics provided by the lecturer, which will be towards the development of an
experimental game environment on Windows platform. Microsoft Word and C++
programming language ((1) Borland C++ Builder or (2) Microsoft Visual Studio) are preferred for the reporting and
development of the projects.
6.
Proposed Project Topics
The topics proposed below will be towards the
development of an experimental game environment, basic implementation of which
(see Figure 1) will be provided with the source code by the lecturer in Borland
C++ Builder 6.0 or Microsoft Visual Studio 2005.
Figure 1:
Basic Implementation Environment.
1) Environment modeling
1.1)
Waterfall modeling
1.2)
Water surface modeling
1.3)
Grassland modeling
1.4)
Scrubland modeling
1.5)
Tree modeling
1.5.1)
Needle leaf tree modeling
1.5.2)
Broad leaf tree modeling
1.5.3)
Leafless tree modeling
1.6)
3D game world modeling
2) Behavior modeling
2.1)
Fish behavior modeling
2.2)
Bird behavior modeling
2.3)
Land animal behavior modeling
2.4)
Attack behavior modeling
2.5)
Defense behavior modeling
2.6)
Head/looking direction modeling
3) Body movement (bone structure) modeling
3.1)
Human body movement modeling
3.2)
Land animal body movement modeling
4) Effects modeling (wind effect integrated)
4.1)
Particle effect modeling (smoke, flame, explosion, missile trail)
4.2)
Rain and snow modeling
4.3)
Volumetric cloud modeling
5) Physics modeling
5.1)
Rigid body collision detection and avoidance
5.2)
Parachute modeling
6) Distributed simulation
6.1)
Multi player land vehicle modeling with HLA
6.2)
Massive multi player role playing game environment modeling
7) Sensor Modeling
7.1)
Night vision goggles modeling
7.2) Analysis of sensor detection,
recognition and identification performance
8) Sound programming
8.1)
3D sound effects modeling
7.
Assessment Method
A project
will be developed including:
Project
Progress Report 10%
Project
Final Report 25%
Introductory Presentation 5%
Project Presentation 25%
Project Demo & Source Code 30%
Attendance
to M&S Seminar (6-10 October) 5%
Prof.Dr. Tuncer Ören
Ottawa University, Canada
See www.modsim.org.tr > Modsim Platform > Aktiviteler
8.
Lecture Presentations
2. Introduction to Modeling and Simulation
6. Comparing Systems via
Simulation
8. General Purpose
Simulation System (GPSS)
9. A Distributed Simulation
Standard: High Level Architecture (HLA)
11. A Sample Application: Modeling
Command and Control Centers
1.
References
[1] Jerry Banks, “Handbook of Simulation:
Principles, Methodology, Advances, Applications, and Practice”, John
Wiley & Sons, Inc., 1998.
[2] George S. Fishman, “Discrete-Event
Simulation: Modeling, Programming and Analysis”, Springer-Verlag New York, Inc., 2001.
[3] Andrew F. Seila, Vlatko Ceric, Pandu
Tadikamalla, “Applied Simulation
Modeling”, Thomson Learning Inc., 2003.