Table of Contents

Part 1 FUNDAMENTALS

Chapter 1 Introduction

1.1      Opening Perspectives
1.2      Role of Modelling and Simulation
1.3      The Nature of a Model
1.4      An Example (full-service gas station)
1.5      Is There a Downside to the Modelling and Simulation Paradigm?
1.6      Monte Carlo Simulation
1.7      Simulators
1.8      Historical Overview
1.9      Exercises and Projects
1.10    References

Chapter 2 The Modelling and Simulation Process

2.1      Some Reflections on Models
2.2      Exploring the Foundations

2.2.1   The Observation Interval
2.2.2   Entities and Their Interactions
2.2.3   Constants and Parameters
2.2.4   Time and Other Variables
2.2.5   An Example – The Bouncing Ball

2.3      The Modelling and Simulation Process

2.3.1   The Project Description
2.3.2   The Conceptual Model
2.3.3   The Simulation Model
2.3.4   The Simulation Program
2.3.5   The Operational Phases

2.4      Verification and Validation
2.5      Quality Assurance
2.6      The Dynamic Model Landscape
2.7      Exercises and Projects
2.8      References

Part 2 DEDS MODELLING AND SIMULATION

Chapter 3 DEDS Stochastic Behaviour and Data Modelling

3.1      The Stochastic Nature of DEDS
3.2      DEDS Modelling and Simulation Studies
3.3      Data Modeling

3.3.1   Defining Data Models using Collected Data
3.3.2   Does the Collected Data Belong to a Homogeneous Stochastic Process?
3.3.3   Fitting a Distribution to Data
3.3.4   Empirical Distributions
3.3.5   Data Modelling with No Data

3.4      Simulating Random Behaviour

3.4.1   Random Number Generation
3.4.2   Random Variate Generation

3.5      References

Chapter 4 A Conceptual Modelling Framework for DEDS

4.1      Need for a Conceptual Modelling Framework
4.2      Constituents of the Conceptual Modelling Framework

4.2.1       Overview
4.2.2       Entities and Model Structure
4.2.3       Characterizing the Entity Types
4.2.4       Activity Constructs and Model Behaviour
4.2.5       Inputs
4.2.6       Outputs
4.2.7       Data Modules
4.2.8       Standard Modules and User-Defined Modules
4.2.9       Intervention

4.3      Some Examples of Conceptual Model Development in the ABCmod Framework

4.3.1       EXAMPLE 1
4.3.2       EXAMPLE 2
4.3.3       EXAMPLE 3

4.4      Exercises and Projects
4.5      References

Chapter 5 DEDS Simulation Model Development

5.1      Constructing a Simulation Model
5.2      Relationship between the World Views
5.3      Kojo’s Kitchen
5.4      Transforming an ABCmod to an Event Scheduling Simulation Model

5.4.1       Event Scheduling Simulation Models
5.4.2       Implementing Event Scheduling in Java
5.4.3       Translating to an Event Scheduling Simulation Model
5.4.4       Implementing Other Functionality

5.5      Transforming an ABCmod into a Process-Oriented Simulation Model

5.5.1       Process-Oriented Simulation Models
5.5.2       Overview of GPSS
5.5.3       Developing a GPSS Simulation Model from an ABCmod

5.6      Exercises and Projects
5.7      References

Chapter 6 Experimentation and Output Analysis

6.1      Overview of the Issue
6.2      Bounded Horizon Studies

6.2.1       Point Estimates
6.2.2       Interval Estimation
6.2.3       Output Analysis for Kojo’s Kitchen Project

6.3      Steady-State Studies

6.3.1       Determining the Warm-up Period
6.3.2       Collection and Analysis of Results
6.3.3       Experimentation and Data Analysis for the Port Project

6.4      Comparing Alternatives

6.4.1       Comparing Two Alternatives
6.4.2       Comparing More than Two Alternatives

6.5      Exercises and Projects
6.6      References

Part 3 CTDS MODELLING AND SIMULATION

Chapter 7 Modelling of Continuous Time Dynamic Systems

7.1      Introduction
7.2      Some Examples of CTDS Conceptual Models

7.2.1       Simple Electrical Circuit
7.2.2       Automobile Suspension System
7.2.3       Fluid Level Control
7.2.4       Population Dynamics

7.3      Safe Ejection Envelope: A Case Study
7.4      State Space Representation

7.4.1       The Canonical Form
7.4.2       The Transformation Process

7.5      References

Chapter 8 Simulation with CTDS Models

8.1      Overview of the Numerical Solution Process

8.1.1       The Initial Value Problem
8.1.2       Existence Theorem for the IVP
8.1.3       What is the Numerical Solution to an IVP?
8.1.4       Comparison of Two Preliminary Methods

8.2      Some Families of Solution Methods

8.2.1       The Runge-Kutta Family
8.2.2       The Linear Multi-Step Family

8.3      The Variable Step-Size Process
8.4      Circumstances Requiring Special Care

8.4.1       Stability
8.4.2       Stiffness
8.4.3       Discontinuity
8.4.4       Concluding Remarks

8.5      Options and Choices in CTDS Simulation Software
8.6      The Safe Ejection Envelope Project Re-Visited
8.7      Exercises and Projects
8.8      References

Chapter 9 Optimization

9.1      Introduction
9.2      Problem Statement
9.3      Methods for Unconstrained Minimization

9.3.1       The Nelder-Mead Simplex Method
9.3.2       The Conjugate Gradient Method

9.4      An Application in Optimal Control
9.5      Exercises and Projects
9.6      References

Annex 1     Probability Primer

A1.1       Motivation
A1.2       Random Experiments and Sample Spaces
A1.3       Discrete Sample Spaces

A1.3.1    Events
A1.3.2    Assigning Probabilities
A1.3.3    Conditional Probability and Independent Events
A1.3.4    Random Variables
A1.3.5    Expected Value, Variance and Covariance
A1.3.6    Some Discrete Distribution Functions

A1.4       Continuous Sample Spaces

A1.4.1    Background
A1.4.2    Continuous Random Variables
A1.4.3    Expected Value and Variance
A1.4.4    Some Continuous Distribution Functions

A1.5       Some Theorems
A1.6       The Sample Mean as an Estimator
A1.7       Interval Estimation
A1.8       Stochastic Processes
A1.9       References

Annex 2     GPSS Primer

A2.1       Introduction

A2.1.1    GPSS Transaction Flow
A2.1.2    Programmer’s view of Transaction Flow

A2.2       System Numeric Attributes
A2.3       GPSS Standard Output
A2.4       GPSS Commands
A2.5       Transaction Chains
A2.6       GPSS Entities

A2.6.1    GPSS Entity Categories
A2.6.2    Basic Category
A2.6.3    Structural Category
A2.6.4    Data and Procedure Category
A2.6.5    Output Category

Annex 3     Open Desire Primer

A3.1       Introduction
A3.2       Programming Perspectives
A3.3       Solving the Differential Equations
A3.4       Organizing Experiments

A3.4.1    Programming Constructs

A3.5       An Example
A3.6       Generating Output
A3.7       The Example Re-visited
A3.8       The Example Extended
A3.9       Collecting and Displaying Non-Trajectory Data
A3.10     Editing and Execution
A3.11     Concluding Remarks
A3.12     References