Preface

Overview

Modelling and simulation is a tool that provides support for the planning, design and evaluation of dynamic systems as well as the evaluation of strategies for system transformation and change. Its importance continues to grow at a remarkable rate, in part because its application is not constrained by discipline boundaries. This growth is also the consequence of the opportunities provided by the ever- widening availability of significant computing resources and the expanding pool of human skill that can effectively harness this computational power. However, the effective use of any tool and especially a multi-faceted tool such as modelling and simulation involves a learning curve. This book addresses some of the challenges that lie on the path that ascends that curve.

     Consistent with good design practice, the development of this book began with several clearly defined objectives. Perhaps the most fundamental was the intent that the final product provides a practical (i.e. useful) introduction to the many facets of a typical modelling and simulation project. The important differences in his regard between the discrete-event and the continuous-time domains would need to be highlighted. As well, the importance of illustrative projects from both the discrete and continuous domains would need to be recognized as a necessary part of providing practical insights. To a large extent, these objectives were the product of insights acquired by the authors over the course of several decades of teaching a wide range of modelling and simulation topics. Our view is that we have been successful in achieving these objectives.

Features

We have taken a project-oriented perspective of the modelling and simulation enterprise. The implication here is that modelling and simulation is, in fact, a collection of activities that are all focused on one particular objective; namely, providing a credible resolution to a clearly stated goal, a goal that is formulated within a specific system context. There can be no project unless there is a goal. All the constituent sub-activities work in concert to achieve the goal. Furthermore the ‘big picture’ must always be clearly in focus when dealing with any of the sub-activities. We have strived to reflect this perspective throughout our presentation.

     The notion of a conceptual model plays a central role in our presentation. While this is not especially significant for projects within the continuous time domain inasmuch as the differential equations that define the system dynamics can be correctly regarded as the conceptual model, it is very significant in the case of projects from the discrete-event domain. This is because there is no generally accepted view of what actually constitutes a conceptual model in that context. This invariably poses a significant hurdle from a pedagogical point of view because there is no abstract framework in which to discuss the structural and behavioural features of the system under investigation. The inevitable (and unfortunate) result is a migration to the semantic and syntactic formalisms of some computer programming environment.

     We have addressed this issue by presenting a conceptual modelling framework for discrete-event dynamic systems, which we call the ABCmod framework (Activity-Based Conceptual modelling). While this book makes no pretence at being a research monograph, it is nevertheless appropriate to emphasize that the ABCmod conceptual modelling framework presented in Chap. 4 is the creation of the authors. This framework has continued to evolve from versions presented in previous editions of this book.

     The basis for the ABCmod framework is the identification of relevant ‘units of behaviour’ within the system under investigation and their subsequent synthesis into individual behavioural components called ‘activities’. The identification of activities as a means for organizing a computer program that captures the time evolution of a discrete-event dynamic system is not new. However, in our ABCmod framework, the underlying notions are elevated from the programming level to an abstract and hence conceptual level. A number of examples are presented to illustrate conceptual model development using the ABCmod framework. Furthermore, we demonstrate the utility of the ABCmod framework by showing how its constructs conveniently map onto those that are required in program development perspectives (world views) that appear in the modelling and simulation literature.

     The Activity-Object world view presented in Chap. 6 is a recent outgrowth of the continuing development of the ABCmod concept. This world view which has an object-oriented basis preserves the activity perspective of the ABCmod framework and makes the translation of the conceptual model into a simulation model entirely transparent. This, in turn, simplifies the verification task.

Audience

This book is intended for students (and indeed, anyone else) interested in learning about the problem-solving methodology called modelling and simulation. A meaningful presentation of the topics involved does necessarily require a certain level of technical maturity on the part of the reader. An approximate measure in this regard would correspond to a science or engineering background at the senior undergraduate or the junior graduate level.

     More specifically our readers are assumed to have a reasonable comfort level with standard mathematical notation, which we frequently use to concisely express relationships. There are no particular topics from mathematics that are essential to the discussion but some familiarity with the basic notions of probability and statistics play a role in the material in Chaps. 3 and 7. (In this regard, a Probability and Statistics Primer is provided in Annex 2). Some appreciation for the notions relating to ordinary differential equations is necessary for the discussions in Chaps. 8, 9 and 11. A reasonable level of computer programming skills is assumed in the discussions of Chaps. 5, 6 and 9. We use Java as our programming environment of choice in developing simulation models based on the Three-Phase world view and the Activity-Object world view. The GPSS programming environment is used to illustrate the process-oriented approach to developing simulation models. (We provide a GPSS Primer in Annex 3). Our discussion of the modelling and simulation enterprise in the continuous time domain is illustrated using the numerical toolbox provided in MATLAB. A brief overview of relevant MATLAB features is provided in Annex 4.

Organization

This book is organized into four Parts. Part I has two Chapters that present an overview of the modelling and simulation discipline. In particular, they provide a context for the subsequent discussions and, as well, the process that is involved in carrying out a modelling and simulation study. Important notions such as quality assurance are also discussed.

     The five Chapters of Part II explore the various facets of a modelling and simulation project within the realm of discrete-event dynamic systems (DEDS). We begin by pointing out the key role of random (stochastic) phenomena in modelling and simulation studies in the DEDS realm. This, in particular, introduces the need to deal with data models as an integral part of the modelling phase. Furthermore, there are significant issues that must be recognized when handling the output data resulting from experiments with DEDS models. These topics are explored in some detail in the discussions of Part II.

     As noted earlier, we introduce in this book an activity-based conceptual modelling framework (the ABCmod framework) that provides a means for formulating a description of the structure and behaviour of a model that originates within the DEDS domain. An outline of this framework is provided in Part II. A conceptual model is a first step in the development of a computer program that will serve as the ‘solution engine’ for the project. The next step in creating simulation program is to transform the conceptual model into a simulation model. Chapter 5 introduces traditional ‘world views’ used in creating simulation models and outlines the transition from an ABCmod conceptual model to simulation models based on two of these world views, the Three-Phase and the process-oriented. The presentation in Chap. 6 shows how the transition task to a simulation model based on the newly proposed Activity-Object world view is considerably more straightforward and transparent. Various key aspects of the Java library (called ABSmod/J) that supports the Activity-Object world view, are presented.

     Chapter 7 examines the many important facets of the experimentation process with DEDS simulation models. New to this third edition is a discussion of the area of study called ‘design of experiments’, whose concern is with assessing the relative importance of the many parameters that are frequently embedded in a conceptual model.

     There are two Chapters in Part III of the book and these are devoted to an examination of various important aspects of the modelling and simulation activity within the continuous time dynamic system (CTDS) domain. We begin in Chap. 8 by showing how conceptual models for a variety of relatively simple systems can be formulated. Most of these originate in the physical world that is governed by familiar laws of physics. However, we also show how intuitive arguments can be used to formulate credible models of systems that fall outside the realm of classical physics.

     Inasmuch as a conceptual model in the CTDS realm is predominantly a set of differential equations, the ‘solution engine’ is a numerical procedure. In Chap. 9, we explore several options that exist in this regard in the numerical mathematics literature and provide some insights into important features of the solution alternatives. Several properties of CTDS models that can cause numerical difficulty are also identified.

     Part IV of this third edition is essentially new. It explores the increasingly important interface between optimization and the modelling and simulation enterprise. The development of numerical optimization procedures has been a topic of interest in the numerical mathematics literature for many years. A brief overview of some of the underlying concepts is provided in Chap. 10. In particular, the main dichotomy between gradient-dependent and gradient-independent (heuristic) procedures is introduced. In Chap. 11, the simulation-optimization problem is examined within the CTDS context and in Chap. 12 the same exploration is undertaken within the DEDS context. Chapter 12, in addition, includes a case study that illustrates many of the challenges that can arise.

Overview of New Content in This Third Edition

Several references to the new content in this third edition have been made above. A summary is provided below:

  1. In Chap. 4, the presentation of events within a DEDS model has been extended. As well, two new behavioural constructs called the ‘scheduled sequel activity’ and its natural counterpart called the ‘scheduled sequel action’ have been introduced into the ABCmod conceptual modelling framework.
  2. The designations of ‘Class’ and ‘Set[N]’ assignable to the scope property of an entity category has been renamed ‘Transient’ and ‘Many[N]’, respectively. Additional content relating to the use of entity categories that contain many entities (i.e. scope = Many[N]) has been incorporated. It is stressed that the use of this feature enables the ‘parameterization’ of activities, which can significantly simplify model development. This applies both to ABCmod conceptual models and their simulation model counterparts.
  3. Several relatively minor but nevertheless significant improvements have been incorporated into the simulation model development process based on ABSmod/J.
  4. A new section that introduces the area of study called Design of Experiments has been added to Chap. 7. Its application in experimentation with DEDS simulation models is illustrated.
  5. In response to the increasing interest with embedding optimization studies in modelling and simulation projects, a new Part IV has been added to this third edition. It explores this topic in both the DEDS and the CTDS domains and illustrative examples are included.
  6. A new Annex 1 has been added. Its purpose is to consolidate in one place complete versions of the various ABCmod conceptual models that are introduced as examples at various places in the book.

©2020 Louis G. BIrta/GIlbert Arbez All rights reserved