Download presentation
Presentation is loading. Please wait.
1
Discrete Event Simulation with ExtendSim Chapter 1
Introduction to Modeling and Simulation © Copyright 2015 Dr. Jeffrey Strickland
2
© Copyright 2015 Dr. Jeffrey Strickland
NASA Ares I NASA planned to use Ares I to launch Orion, the spacecraft intended for NASA human spaceflight missions after the Space Shuttle was retired in 2011. However, the Constellation program, including Ares I was canceled in October 2010 by the passage of the 2010 NASA authorization bill. Dr. Strickland and a team of engineers design the Reliability and Launch Availability of the Ares I using ExtendSim. 8/12/2015 © Copyright 2015 Dr. Jeffrey Strickland
3
Why simulation is important
Simulation involves designing a model of a system and carrying out experiments on it as it progresses through time. Models enable you to see how a real-world activity will perform under different conditions and test various hypotheses at a fraction of the cost of performing the actual activity. One of the principal benefits of a model is that you can begin with a simple approximation of a process and gradually refine the model as your understanding of the process improves. This “stepwise refinement” enables you to achieve good approximations of very complex problems surprisingly quickly. As you add refinements, the model more closely imitates the real-life process1 1 ExtendSim user’s guide 8/12/2015 © Copyright 2015 Dr. Jeffrey Strickland
4
© Copyright 2015 Dr. Jeffrey Strickland
What is a Model? A physical, mathematical, or otherwise logical representation of a system, entity, phenomenon, or process An abstraction of a real world problem, based on simplifying assumption. Since a modeling is a representation, abstraction, or approximation of the “system” being modeled, we must understand that it is not an “exact” representation, i.e., we can’t model every aspect of the system. Example: Weather Model Many degrees of freedom (DOF) with a vast array of environmental factors Simplify model with only a few of the most important factors (other non-representative factors represent the error in the model) Example: Marketing Model People have a propensity to buy due to demographics, online activity, visual stimulation, emotions, etc. Model model based on demographics and online activity In order to understand what it means to model a phenomena or process, we must first understand the term “model” and understand its limitation. A model is a physical, mathematical, or otherwise logical representation of a system, entity, phenomenon, or process (DoDD ). A model can also be thought of as an abstraction of the real world, or an approximation of it. If you think about the problem of modeling a human being, or just the mind of a human, you can immediately see the limitations of modeling. We will use the term “system” to encompass systems, entities, phenomenon, or process. Since a modeling is a representation, abstraction, or approximation of the “system” being modeled, we must understand that it is not an “exact” representation, i.e., we can’t model every aspect of the system. First, we don’t know everything we need to know in order to model the system. We may not be able to define a process of the system with mathematical precision, or with heuristic algorithms, and many of the processes may not appear logical. Second, even if we were to know everything about the system, we may not have enough computing power to model every process, at least for complex systems, e.g., a human being, the earth’s ecosystem, etc. Yet with its limitations, models a re a good way to gain understanding of how a system operates. ______ said, “All models are wrong; some models are useful.” They are wrong in that there is not a one-to-one mapping form the real system to the model; they are useful in that we can use them to understand the system, or at least certain aspects of the system. Even though we often use models to predict behavior, this is a dangerous process, and we must do it with caution. 8/12/2015 © Copyright 2015 Dr. Jeffrey Strickland
5
Model Definitions & Contrasts
Physical model Mock-up model Scale model Iconic model Fashion model Symbolic Model Narrative model Graphical model Tabular model Software model Mathematical model Specifications: 30 GB HD 1 GB RAM CD RW/DVD There are many types of models that one can use when trying to represent a system. These can be divided into several classes, and for simplicity we will consider two classes: physical models and symbolic models. Physical models include mock-up models (e.g., a vehicle mock-up), scale models (e.g., a 1:48 scale aircraft model), Iconic model, natural model, or a fashion model (which represent what we all want to look like). Symbolic models include narrative models, graphical models, tabular models, software models, and mathematical models. These models are not necessarily mutually exclusive. For example a tabular model might contain data derived from a mathematical model, or a mathematical model may be embedded in software code. 8/12/2015 © Copyright 2015 Dr. Jeffrey Strickland
6
Contrasting Model Examples
Deterministic (Static) models Stochastic (Dynamic) models Descriptive models Predictive models Discrete models Continuous models Models can also be classified by contrast, e.g., a conceptual model (flowchart, picture, UML diagram) versus a computational model (spreadsheet, computer software) or static models that do not use time as a primary input, versus dynamic models based on time. 8/12/2015 © Copyright 2015 Dr. Jeffrey Strickland
7
A Sampling of Model Examples
8/12/2015 © Copyright 2015 Dr. Jeffrey Strickland
8
A Sampling of Examples Accounts Receivable at Spring Mills
Scatterplot of Amount versus Days for All Customers: Data Model 8/12/2015 © Copyright 2015 Dr. Jeffrey Strickland
9
A Sampling of Examples Competitive Bidding by SciTools Incorporated
Decision Tree Model 8/12/2015 © Copyright 2015 Dr. Jeffrey Strickland
10
A Sampling of Examples Confidence Level 95% sample mean 1500 sample standard deviation 390 sample size 45 z value 1.9600 upper confidence limit lower confidence limit width of CI Goal Seek for CI width 150.00 sample size needed Analysis of Auditing Example: Parameter Model (Confidence Interval for a Mean) 8/12/2015 © Copyright 2015 Dr. Jeffrey Strickland
11
A Sampling of Examples Explaining Overhead Costs at Bendrix
Training Weeks (X) # of completed Projects (Y) 1.2 101 0.8 92 1.0 110 1.3 120 0.7 90 82 93 0.6 75 0.9 91 1.1 105 Data for new employees: Regression Model 8/12/2015 © Copyright 2015 Dr. Jeffrey Strickland
12
A Sampling of Examples Quarterly Sales at Intel
Time Series Plot of Quarterly Sales at Intel: Forecasting Model 8/12/2015 © Copyright 2015 Dr. Jeffrey Strickland
13
A Sampling of Examples Basic Combat Attrition Model
X(0) = Y(0) = 30 a = b = 0.14 Y(0) ↑ 60 b ↑ 0.16 8/12/2015 © Copyright 2015 Dr. Jeffrey Strickland
14
© Copyright 2015 Dr. Jeffrey Strickland
A Sampling of Examples Tracking Market Shares of Two Dominant Companies in the Iced Tea Market Input for Iced Tea Example: Monte Carlo Simulation Model 8/12/2015 © Copyright 2015 Dr. Jeffrey Strickland
15
© Copyright 2015 Dr. Jeffrey Strickland
A Sampling of Examples Discrete Event Simulation of a Transportation System 8/12/2015 © Copyright 2015 Dr. Jeffrey Strickland
16
© Copyright 2015 Dr. Jeffrey Strickland
What is Simulation? A simulation is the execution of a model over time ot other parameter. Simulation involves designing a model of a system and carrying out experiments on it. The purpose of these "what if” experiments is to determine how the real system performs and to predict the effect of changes to the system as time progresses. For example, you use simulation to answer questions like: Will this change to our process result in higher yields or quality? How many people are required to maintain service at a specified level, for example, in a processing station? Can we design this weapon system with fewer components and still maintain measures of performance, such as availability or lethality? Does this force structure meet the capability requirement specified by the commander? 8/12/2015 © Copyright 2015 Dr. Jeffrey Strickland
17
Formal Definitions of Simulation
A formal definition of simulation is given by the Department of Defense Directive: Definition 1: A method for implementing a model over time. Also, a technique for testing, analysis, or training in which real-world systems are used, or where real-world and conceptual systems are reproduced by a model. Another definition is given by Winston & Albright, in Practical Management Science, 2001: Definition 2: A simulation model is a computer model that imitates a real-life situation 8/12/2015 © Copyright 2015 Dr. Jeffrey Strickland
18
Different Kinds of Simulation
Monte Carlo Simulation Estimate stochastic, static model quantities that are difficult to compute by exact computations. A scheme employing random numbers which is used for solving certain stochastic problems where the passage of time plays no substantive role. 1 Dynamic Simulation Dynamic system simulations observe the behavior of the system models over time. The time advance mechanism used here include continuous, discrete time, and discrete event. 2 Differential Equation System Specification (DESS) 2a Discrete Time System Specification (DTSS) 2b Discrete Event System Specification (DEVS) 2b 8/12/2015 © Copyright 2015 Dr. Jeffrey Strickland
19
Discrete-Event Simulation
Estimate stochastic, dynamic, and discrete model outputs. A scheme for modeling a system as it evolves over time by a representation in which state variables change instantaneously at separate points in time. In simple terms, DES describes how a system with discrete flow units or jobs evolves over time. Technically, this means that a computer tracks how and when state variables, such as queue lengths and resource availability, change over time. State variables change as the result of an event (or discrete event) occurring in the system. A characteristic is that discrete-event models focus only on the time instances when these discrete events occur. This feature allows for significant time compression because it allows the model to skip through all time segments between events when the state of the system remains unchanged. 8/12/2015 © Copyright 2015 Dr. Jeffrey Strickland
20
© Copyright 2015 Dr. Jeffrey Strickland
Bank Model Hierarchical modeling Statistics collection Buttons Notebooks Ghost Connectors Multiple random inputs 8/12/2015 © Copyright 2015 Dr. Jeffrey Strickland
21
© Copyright 2015 Dr. Jeffrey Strickland
Circuit Card Assembly Multiple queues Multiple services Parallel servises Serial services Conveyer belts Batching 8/12/2015 © Copyright 2015 Dr. Jeffrey Strickland
22
© Copyright 2015 Dr. Jeffrey Strickland
Transportation Labor pools Task completion delays Transferring goods Transporting goods 8/12/2015 © Copyright 2015 Dr. Jeffrey Strickland
23
Languages for Simulation
1950’s began seeking languages specifically designed for simulation problems General Simulation Program (GSP) 1960 The First Simulation-specific Programming Language By K.D. Tocher and D.G. Owen, General Electric Proceedings of the Second International Conference on Operations Research 8/12/2015 © Copyright 2015 Dr. Jeffrey Strickland
24
Evolved Definition of Simulation Language
Six key characteristics: Generate Random Numbers Transformation for Statistical Distributions List Processing Statistical Analysis Report Generation Timing Execution 8/12/2015 © Copyright 2015 Dr. Jeffrey Strickland
25
Typical Simulation Program
Start Set clock Set state variables Load event list Initialization 0. Invoke Initialization Invoke Timing Invoke Event Handler Main Select next event Advance sim clock Timing 0. Update state variables Increment counters Generate future events Event Routines Statistical distributions Mathematical operations Mathematics Finished? NO Legend Programmer’s responsibility Language’s Responsibility Compute interest data Write reports Reports YES Stop 8/12/2015 © Copyright 2015 Dr. Jeffrey Strickland
26
© Copyright 2015 Dr. Jeffrey Strickland
Activity Scan GSP SIMPAC CSL ESP ECSL OPS-1,2 OPS-3 OPS-4 GPSS V6000 Process Interaction GPSS GPSS II GPSS III GPSS/360 GPSS IV GPSS/H GPSS 85 GPSS PC GPSS PL/I SIMULA I SIMULA 67 NGPSS CONSUM Event Interaction GASP GASP II GERTS GASP IV GASP PL/I SLAM SIMAN SLAM II GEMS SPS-1 SIMSCRIPT QUICKSCRIPT SIMSCRIPT II SIMSCRIPT II+ SIMSCRIPT II.5 SIMFACTORY II.5 MOSIM NETWORK II.5 COMNET II 1960 1965 GSP (General Simulation Package) was developed by K.D. Tocher and D.G. Owen in 1959, at General Electric. SIMPAC was an early simulation language with fixed time steps, developed R.P. Bennett et al, Systems Development Corp, Apr 1962. OPS-1 (On-line Process Synthesizer) was an attempt to make a general purpose programming language that suited the needs of management. It was developed by Martin Greenberger, MIT. The SIMULA programming language was designed and built by Ole-Johan Dahl and Kristen Nygaard at the Norwegian Computing Center (NCC) in Olslo between 1962 and It was originally designed and implemented as a language for discrete event simulation, but was later expended and reimplemented as a full scale general purpose programming language. SIMULA 67 is one of the key ancestors of the C++ language. GPSS (General-Purpose Simulation System) is a process oriented simulation language, developed by IBM in 1961, and is well suited for queuing systems. IBM stopped enhancing GPSS in 1972. GPSS/H was a compiled language developed in 1977 by James Henriksen and marketed by Wolverine Software. It filled the void left by not enhancing GPSS. GPSS/PC was developed by Springer Cox in 1984 and marketed by Minuteman Software. SIMSCRIPT is a process-oriented or event-oriented simulation language developed at the Rand Corporation in 1962, by Herbert Karr, Harry Markowitz, and Bernard Hausner. SIMSCRIPT II.5 is the latest version and is marketed by CICI Products Company. It is used in SimProcess. MODSIM is a general purpose object oriented programming language. GASP (General Activity Simulation Program) was a dicrete event simulation system/language featuring flow-chart input and semi-object features, developed by Philip Kiviat, Applied Research Laboratory at United States Steel Corporation and Cornell U Postgrad. Began in 1961, initially based on Algol 60, then moved to Fortran II by 1962. SLAM (Simulation Language for Alternative Modeling) was developed by Dennis Pegden and Alan Pritsker in 1979 and was distributed by the Pritsker Corporation. It is a simulation language in which one can build a process-oriented model, an event-oriented model, or a combination of the two. The latest version is SLAM II. Visual SLAM is used in AweSim. SIMAN (Simulation Analysis) was developed by Dennis Pegden in 1982 and was distributed by Systems Modeling Corporation. It is a simulation language in which one can build a process-oriented model, an event-oriented model, or a combination of the two. It is used in Arena. 1970 1980 1990 8/12/2015 © Copyright 2015 Dr. Jeffrey Strickland
27
Sim Language Comparisons
GPSS/H SIMULATE GENERATE RVEXPO(1,1.0) QUEUE SERVER SEIZE SERVER LVEQ DEPART SERVERQ TEST L N$LVEQ, 1000, STOP ADVANCE RVEXPO(2,0.5) STOP RELEASE SERVER TERMINATE 1 START 1000 END SLAM II GEN, 1,,,,,,72; LIM,1,1,100; NETWORK; RESOURCE/SERVER(1),1 CREATE,EXPON(1.0,1),1,1; AWAIT(1),SERVER; COLCT,INT(1),DELAY IN QUEUE,,2; ACTIVITY,EXPON(0.5,2),,DONE; ACTIVITY,,,CNTTR; DONE FREE,SERVER TERM; CNTR TERM,1000; END; ; INIT; FIN; SIMAN BEGIN CREATE,,EX(1,1):EX(1,1); MARK(1); QUEUE, 1; SEIZE :SERVER; TALLY :1, INT(1); COUNT :1,1; DELAY :EX(2,2); RELEASE :SERVER; DISPOSE; END; 8/12/2015 © Copyright 2015 Dr. Jeffrey Strickland
28
Visual Interactive Simulation (1)
SimProcess (SimScript II.5) Arena (SIMAN) The basic features of a Visual Interactive Simulation (VIS) are: Build and modify simulation models on the screen Execute graphical simulation models Animate models as the execute Present simulation output graphically Interactively interrupt the model when it is executing to change model parameters, or operation logic and then continue execution with these modifications 8/12/2015 © Copyright 2015 Dr. Jeffrey Strickland
29
Visual Interactive Simulation (2)
OPNET Extend 8/12/2015 © Copyright 2015 Dr. Jeffrey Strickland
30
Alan Pritsker’s Seven Principles
Conceptualizing a model requires system knowledge, engineering judgment, and model-building tools. The secret to being a good modeler is the ability to remodel The modeling process is evolutionary because the act of modeling reveals important information piecemeal. The problem or problem statement is the primary controlling element in model-base problem solving. In modeling combined systems, the continuous aspects of the problem should be considered first. The discrete aspects of the problem should then be developed. A model should be evaluated according to its usefulness. From an absolute perspective, a model is neither good or bad, nor is it neutral. The purpose of simulation modeling is knowledge and understanding, not models. 8/12/2015 © Copyright 2015 Dr. Jeffrey Strickland
31
“All models are wrong; but some are useful.” George E.P. Box
8/12/2015 © Copyright 2015 Dr. Jeffrey Strickland
32
© Copyright 2015 Dr. Jeffrey Strickland
References Banks, J., Carson, J.S. II, Nelson, B., & Nicol, D.M. (2001). Discrete-Event System Simulation. Prentice Hall. Cloud, D.J. & Rainey, L.B. (Eds.). (1998). Applied Modeling and Simulation: An integrated Approach to Development and Operation. McGraw-Hill. Law, A.M. & Kelton, D.W. (1998). Simulation Modeling & Analysis, 2nd Ed., McGraw-Hill. Schriber, T.J. & Brunner, D.T. (1998). How discrete-event simulation software works. In Handbook of Simulation, Wiley. Chapter 24. Zeigler, B.P, Praehofer, H., & Kim, T.G. (2000). Theory of Modeling and Simulation, 2nd Ed., Academic Press. 8/12/2015 © Copyright 2015 Dr. Jeffrey Strickland
Similar presentations
© 2025 SlidePlayer.com Inc.
All rights reserved.