Sie sind auf Seite 1von 202

COM 321: SIMULATION AND MODELING

BY: TAREMWA DAN dtaremwa@yahoo.co.uk 0702925914

CHAPTER ONE
INTRODUCTION TO SIMULATION AND MODELING

In this chapter you will learn:


Definitions and explain systems and experiments Definitions of model and simulation Application of modeling and simulation Advantages and disadvantages Need for simulation and modeling Types of modeling and simulation paradigms

Systems and Experiments


Definition: A system is any set of interrelated components acting together to achieve a common objective.

inputs
The inputs of a system are variables of the environment that influence the behavior of the system. These inputs may or may not be controllable by us.

outputs
The outputs of a system are variables that are determined by the system and may influence the surrounding environment. In many systems the same variables act as both inputs and outputs.

METHODS OF STUDYING VARIABLES


EXPERIMENTATION STATISTICS SIMULATION

Definition: experiment
An experiment is the process of extracting information from a system by exercising its inputs.

PRACTICAL PROBLEMS ASSOCIATED WITH PERFORMING AN EXPERIMENT


The experiment might be too expensive: investigating ship durability by building ships and letting them collide is a very expensive method of gaining information. The system needed for the experiment might not yet exist. This is typical of systems to be designed or manufactured.

PRACTICAL PROBLEMS ASSOCIATED WITH PERFORMING AN EXPERIMENT


The experiment might be too dangerous: training nuclear plant operators in handling dangerous situations by letting the nuclear reactor enter hazardous states is not advisable. The shortcomings of the experimental method lead us over to the model concept

The Model Concept


A model of a system is anything an "experiment" can be applied to in order to answer questions about that system. A computer model is a data-driven system that uses an inbuilt set of rules to predict the results of a process or to simulate how a given set of conditions will change over time

Mathematical model
Definition: Mathematical model a description of a system where the relationships between variables of the system are expressed in mathematical form. Variables can be measurable quantities such as size, length, weight, temperature, unemployment level, information flow, bit rate, etc.

Modeling
Definition: Modeling is the process of obtaining a set of equations (mathematical model) that describes the behavior of the system. A model describes the mathematical relationship between inputs and outputs.

Physical model
Physical modelthis is a physical object that mimics some properties of a real system, to help us answer questions about that system. For example, during design of artifacts such as buildings, airplanes, etc.,

simulation
A simulation is an experiment performed on a model. formal definition of simulation: ``the process of designing a model of a real system and conducting experiments with this model for the purpose either of understanding the behavior of the system of or evaluating various strategies (within the limits imposed by a criterion or a set of criteria) for the operation of the system.''

Simulation is the imitation of the operation of a real world system over time.

WHEN IS SIMULATION AN APPROPRIATE TOOL?

Study Complex Systems Evaluate effect of variables Experiment with different designs Test scientific models

WHEN IS SIMULATION AN APPROPRIATE TOOL?

Prior to building a real-world system Provide training environment Validate design Create proof of concept

When NOT to Use Simulation


System is too simple System is too complex System is not understood well enough Real-world experiments are easier Cost/benefit ratio > 1 No experts available to build simulator Simulation has already been done

Advantages of simulation
Test new hardware before buying it Insight about system can be gained Speed up design-build-test-redesign cycle Can be used to verify models or theories Can be used AS COMMUNICATION TOOL

Advantages of Simulation -contd.


Building consensus. Preparing for change. Cost effective investment. Training aid capability. Specification of requirements.

Disadvantages of Simulation
Model building often difficult and not unique Results may be hard to interpret Model and simulator may be too expensive May lead to false conclusions Results are as good as the model Bugs in software are unavoidable Requires human experts

Disadvantages of Simulation
Training required. Interpretation of results required. Time consuming/expensive. Inappropriately used.

10

Application Areas
Manufacturing/ Materials Handling Public and Health Systems Military Natural Resource Management Transportation Computer Systems Performance Communications
11

Applications of Simulations
Designing and analyzing manufacturing systems Evaluating H/W and S/W requirements for a computer system Evaluating a new military weapons system or tactics Determining ordering policies for an inventory system

Applications of Simulation
Designing communications systems and message protocols for them Designing and operating transportation facilities such as freeways, airports, subways, or ports Evaluating designs for service organizations such as hospitals, post offices, or fast-food restaurants Analyzing financial or economic systems

Applications of Simulation
COMPUTER SYSTEMS: hardware components, software systems, networks, data base management, information processing, etc.. MANUFACTURING: material handling systems, assembly lines, automated production facilities, inventory control systems, plant layout, etc.. BUSINESS: stock and commodity analysis, pricing policies, marketing strategies, cash flow analysis, forecasting, etc.. GOVERNMENT: military weapons and their use, military tactics, population forecasting, land use, health care delivery, fire protection, criminal justice, traffic control, etc..

CHAPTER TWO DEVELOPING SIMULATION MODELS

MODEL DEVELOPMENT PROCESS


The different phases of model development The products at each phase of the model development

Steps in Simulation Modeling


Problem Formulation Goal Setting Model Conceptualization Data Collection Model Translation Verification and Validation Experimental Design
12

Steps in Simulation -contd.


Production Runs and Analysis Documentation/Reporting Implementation

13

Simulation Procedure
Step 1: Define objective, scope, requirements Step 2: Collect and analyze system data Step 3: Build model Step 4: Validate Model Step 5: Conduct experiments Step 6: Present results Note: Iterations required among steps

Simulation Project Steps


a.- Problem Definition b.- Statement of Objectives c.- Model Formulation and Planning d.- Model Development and Data Collection e.- Verification f.- Validation g.-Experimentation h.- Analysis of Results i.- Reporting and Implementation

A Seven-Step Approach for Conducting a Successful Simulation Study


In Figure 1 we present a seven-step approach for conducting a successful simulation study. Having a definitive approach for conducting a simulation study is critical to the studys success in general and to developing a valid model in particular.

Step 1. Formulate the Problem


Problem of interest is stated by the decisionmaker A kickoff meeting(s) for the simulation project is (are) conducted, with the project manager, the simulation analysts, and subject-matter experts (SMEs) in attendance.

Step 1. Formulate the Problem


The overall objectives of the study The specific questions to be answered by the study (without such specificity it is impossible to determine the appropriate level of model detail) The performance measures that will be used to evaluate the efficacy of different system configurations

Step 1. Formulate the Problem


The scope of the model The system configurations to be modeled The time frame for the study and the required resources

Step 2. Collect Information/Data


Collect information on the system layout and operating procedures. Collect data to specify model parameters and probability distributions (e.g., for the time to failure and the time to repair of a machine).

Construct a Conceptual Model


Develop Causal loop diagrams which studies the relationship between variables Document the model assumptions, algorithms, and data summaries in a written conceptual model.

Step 3. Is the Conceptual Model Valid?


Perform a structured walk-through of the conceptual model before an audience that includes the project manager, analysts, and SMEs. This is called conceptual-model validation.

Is the Conceptual Model Valid?


If errors or omissions are discovered in the conceptual model, which is almost always the case, then the conceptual model must be updated before proceeding to programming in Step 4.

Step 4. Program the Model


Program the conceptual model in either a commercial simulationsoftware product or in a generalpurpose programming language (e.g., C or C++). Verify (debug) the computer program.

Step 5. Is the Programmed Model Valid?

If there is an existing system, then compare model performance measures with the comparable performance measures collected from the actual system (see Step 2). This is called results validation.

What is face validity?


Regardless of whether there is an existing system, the simulation analysts and SMEs should review the simulation results for reasonableness. If the results are consistent with how they perceive the system should operate, then the simulation model is said to have face validity.

What is Sensitivity analysis?


Sensitivity analyses should be performed on the programmed model to see which model factors have the greatest effect on the performance measures and, thus, have to be modeled carefully.

Step 6. Design, Make, and Analyze Simulation Experiments

For each system configuration of interest, decide on tactical issues such as run length, warm up period, and the number of independent model replications. Analyze the results and decide if additional experiments are required.

Step 7. Document and Present the Simulation Results


The documentation for the model (and the associated simulation study) should include the conceptual model (critical for future reuse of the model), a detailed description of the computer program, and the results of the current study.

Step 7. Document and Present the Simulation Results

The final presentation for the simulation study should include animations and a discussion of the model building/validation process to promote model credibility.

CHAPTER THREE

SYSTEM DYNAMICS

More Goals of this course.


To learn how transfer CLDs to Stock & Flow Diagrams, SFDs To learn how to implement SFDs in VENSIM To learn how to parameterize a VENSIM model To learn how to validate a VENSIM model To learn how to conduct what-if experiments To do sensitivity studies

Definitions and Terms


ST--Systems Thinking SD--Systems Dynamics CLD--Causal Loop Diagram BOT--Behavior Over Time Chart SFD--Stock & Flow Diagram
Also called Forrester Schematic, or simply Flow Diagram

quantity--any variable, parameter, constant, or output edge--a causal link between quantities

What is SYSTEM DYNAMICS?


Definition: System dynamics is an approach to understanding the behavior of complex systems over time. It deals with internal feedback loops and time delays that affect the behavior of the entire system.

System Dynamics Software


STELLA and I think
High Performance Systems, Inc. best fit for K-12 education

Vensim
Ventana Systems, Inc. Free from downloading off their web site: www.vensim.com Robust--including parametric data fitting and optimization best fit for higher education

PowerSim
What Arthur Andersen is using

What is system dynamics?


A way to characterize systems as stocks and flows between stocks Stocks are variables that accumulate the affects of other variables Rates are variables the control the flows of material into and out of stocks Auxiliaries are variables the modify information as it is passed from stocks to rates

A Simple Methodology
Collect info on the problem List variables on post-it notes Describe causality using a CLD Translate CLD into SFD Enter into VENSIM Perform sensitivity and validation studies Perform policy and WHAT IF experiments Write recommendations

Causal Modeling
A way to characterize the physics of the system Lacking: a Newton to describe the causality in these socioeconomic systems

Key Benefits of the ST/SD


A deeper level of learning
Far better than a mere verbal description

A clear structural representation of the problem or process A way to extract the behavioral implications from the structure and data A hands on tool on which to conduct WHAT IF

WHY A SYSTEMS PERSPECTIVE?


Facilitates leadership by leveraged action
integrating competing priorities acknowledging and handling unintended consequences Problems facing us are more complex due to increase in information flow interdependencies rate of change

The significant problems we face today


cannot be solved at the same level of thinking

at which they were created.


- Albert Einstein

WHAT IS SYSTEMS THINKING?


Examining how

WE CREATE OUR OWN PROBLEMS

Seeing the BIG PICTURE Recognizing that STRUCTURE INFLUENCES PERFORMANCE

SYSTEMS THINKING TOOLS


Causal Loop Diagrams - a useful way to represent dynamic interrelationships
Provide a visual representation with which to communicate that understanding Make explicit one's understanding of a system structure - Capture the mental model

Causal Loop Diagrams [CLDs]

Definition
Causal Loop Diagrams (CLDs) are structural pictures used to convey understanding about the interactions, or influences, within a structure. A CLD is used to explicitly show the nature of the influence relations between the elements of a structure.

MAIN CONVENTIONS FOR REPRESENTING CLDS

There are two main conventions for representing CLDs, one using "+" and "-" and another using "S" and "O" as indicators on the influence from one element to another.

Meaning of +
A --> B with a "+" on the arrow indicates that "A" adds to "B". If "A" increases it adds even more to "B". If "A" decreases is adds less readily to "B" though it still adds.

Meaning of A --> B with a "-" on the arrow indicates that "A" subtracts from "B". If "A" decreases is subtracts even more readily to "B". If "A" increases is still subtracts from "B" though not as readily.

Influence Structures
If I have two things, thing 1 and thing 2, there are only two ways thing 1 can influence thing 2.

As indicated in Fig 1, thing 1 can add to thing 2, as indicated by a "+" sign, thus increasing thing 2.

examples

Example

+ Costs Losses

-Costs Profits

EXAMPLE: POPULATION
Consider a simple population with infinite resources-food, water, air, etc. Given, mortality information in terms of birth and death rates, what is this population likely to grow to by a certain time? Over a period of 200 years, the population is impacted by both births and deaths. These are, in turn functions of birth rate norm and death rate norm as well as population. A population of 1.6 billion with a birth rate norm of .04 and a death rate norm of .028

We Listed the Quantities


Population Births Deaths Birth rate norm Death rate norm

CLD
Birth rate normal + + Births

R +

population

-B +

Deaths +

Death rate normal

Using VENSIM TO CONSTRUCT CLDs


Use the variable auxiliary/constant tool to establish the quantities and their locations Use the arrow tool to establish the links between the quantities Use the Comment tool to mark the polarities of the causal edges (links, arrows) Use the Comment tool to mark the loops as reinforcing or balancing

Experiments with growth models


Models with only one rate and one state Average lifetime death rates Models in which the exiting rate is not a function of its adjacent state

Example:
Build a model of work flow from work undone to work completed. This flow is controlled by a work rate. Assume there are 1000 days of undone work Assume the work rate is 20 completed days a month Assume the units on time are months Assume no work is completed initially.

Causation vs. Correlation

Ice Cream Sales

Murder rate

Average Temperature

Ice Cream Sales 0

Murder rate 0

Inadequate cause: Confusion


-Market Share Unit Costs

Production + Volume Market Share

Cumulative Produc tion Experience + - Unit Costs

Validation of CLDs
Clarity Quantity existence Connection edge existence Cause sufficiency Additional cause possibility Cause/effect reversal Predicted effect existence Tautology

CLD Examples
Salary VS Performance
Salary Performance Performance Salary

Tired VS Sleep
Tired sleep Sleep tired

Salary

Performance

Tired

Sleep

Augmenting CLD 1 (Labeling Link Polarity)


Signing: Add a + or a sign at each arrowhead to convey more information A + is used if the cause increase, the effect increases and if the cause decrease, the effect decreases A - is used if the cause increases, the effect decreases and if the cause decreases, the effect increases

Signing Arcs

Salary
+

Performance

Tired
-

Sleep

Reinforcing Loop
Definition 1: A reinforcing loop is one in which the interactions are such that each action adds to the other. Any situation where action produces a result which promotes more of the same action, it is representative of a reinforcing loop. An increase in quantity 1 produces an increase in quantity 2 A decrease in quantity 1 produces a decrease in quantity 2

EXAMPLE

EXAMPLE
Fig 1 indicates what happens in a typical savings account. The principal in the savings account interacts with the interest rate and adds to the interest. Note that interest rate is considered to be a constant in this example. Interest then adds to the principal.

Balancing Loop
Definition 1:

A balancing loop is one in which action attempts to bring two things to agreement. Any situation where one attempts to solve a problem or achieve a goal or objective is representative of a balancing loop.

EXAMPLE

EXPLANATION
Fig 2 provides the basic form of the balancing loop. The desired state interacts with the current state to produce a gap. The gap adds to the action and the action adds to the current state. The current state then subtracts from the gap.

Signs of loops
reinforcing loops have an even number of negative links (zero also is even, see example above) Balancing loops have an uneven number of negative links.

Sign of loops

Balancing LOOP
Note: A Negative sign on an information link can be seen by saying either of:
An increase in quantity 1 produces a decrease in quantity 2

Population model

Augmenting CLD 2 (Determining Loop Polarity)


Positive feedback loops
Have an even number of signs Some quantity increase, a snowball effect takes over and that quantity continues to increase The snowball effect can also work in reverse Generate behaviors of growth, amplify, deviation, and reinforce Notation: place symbol in the center of the loop
+ Negative feedback loops

Have an odd number of signs Tend to produce stable, balance, equilibrium and goal-seeking behavior over time Notation: place symbol in the center of the loop
-

CLD with Positive Feedback Loop


Salary Performance, Performance Salary

The more salary I get The better I perform The better I perform The more salary I get

Salary
+

Performance

The more salary I get The better I perform

CLD with Negative Feedback Loop


Tired Sleep, Sleep Tired
The more I sleep The more tired I am The more I sleep The less tired I am The less tired I am The less I sleep The less I sleep The more tired I am

Tired
-

Sleep

Loop Dominance
There are systems which have more than one feedback loop within them A particular loop in a system of more than one loop is most responsible for the overall behavior of that system The dominating loop might shift over time When a feedback loop is within another, one loop must dominate Stable conditions will exist when negative loops dominate positive loops

CLD with Combined Feedback Loops (Population Growth)

Birth rate
+

Polulation
-

Death rate

CLD with Nested Feedback Loops (Self-Regulating Biosphere)


Evaporation clouds rain amount of water evaporation

Sunshine
+

+ +

Earths temperature
+

Evaporation
+
+

A mount of water on earth


+

Clouds
+

Rain

Exogenous Items
Items that affect other items in the system but are not themselves affected by anything in the system Arrows are drawn from these items but there are no arrows drawn to these items
+

Sunlight reaching each plant Sunlight


+ -

Density of plants

Reinforcing Loop: Structure


Sales

Growth rate

Positive word of mouth

Satisfied Customer

Population

Reinforcing Loop: Behavior


Population
20 B

10 B

0 0 20 40 60 80 100 120 Time (Year) 140 160 180 200

Population : pop1 Population : Current

Balancing Loop: Structure


Desired Inventory Inventory gap
O

Order rate
B

Actual inventory

Balancing Loop: Behavior


Inventory
1,000

500

0 0 10 20 30 40 50 60 Time (Month) 70 80 90 100

Inventory : inv1

Importance of Causal Loop Diagrams (CLDs).


Causal Loop diagrams are used to document relevant factors and the causal relationships between them. CLDs consist of factors and links connecting the factors. Any link has annotations about its polarity and delay. Used as a communication tool

CHAPTER FOUR STOCK AND FLOW DIAGRAMS

SYSTEMS DYNAMICS
Definition: System dynamics is an approach to understanding the behavior of complex systems over time. It deals with internal feedback loops and time delays that affect the behavior of the entire system.

DYNAMIC MODEL BUILDING BLOCKS


STOCKS FLOWS CONNECTORS CONVERTORS

stock
In STELLA terminology, a stock is a noun and represents something that accumulates. Some examples of stocks are population, radioactivity, enzyme concentration, selfesteem, and money.

Principle of Accumulation
In system dynamics modeling, dynamic behavior is thought to arise due to the Principle of Accumulation. According to the principle of accumulation, dynamic behavior arises when something flows through the pipe and faucet assembly and collects or accumulates in the stock.

flow
While a stock is a noun in the language of STELLA, a flow is a verb. A flow is an activity that changes the magnitude of a stock. Some examples of such activities are births in a population, decay of radioactivity, formation of an enzyme, improvement of self-esteem, and growth of money.

Figure 2: Example stock and flow structure with an inflow and outflow

Total Population Derived From Other Quantities


Children Adult population

Births

Coming to Age

Dearths

Total Population

Identifying Stocks and Flows


Stocks usually represent nouns Flows usually represent verbs. Stocks do not disappear if time is (hypothetically) stopped (i.e., if a snapshot were taken of the system); Flows do disappear if time is (hypothetically) stopped. Stocks send out signals (information about the state of the system) to the rest of the system.

DYNAMIC MODEL BUILDING BLOCKS


Converter : converts, stores equation or constant, does not accumulate Connector: transmits inputs and information

Characteristics of stock
Have memory, Change the time shape of flows, Decouple flows, Create delays.

HAVE MEMORY,
If the inflow to the stock is shut-off, the number of entities in the stock will not decrease, but rather stay at the level it is at when the inflow stops. An outflow in excess of the inflow is required to decrease the number of entities in the stock.

CHANGE THE TIME SHAPE OF FLOWS


A second important characteristic of stocks is that they (i.e., the accumulation process) usually change the time shape of flows. This can be seen by simulating the simple stock-flow structure shown in Figure 1, with different time shapes for the flow.

PRESENTS THE TIME SHAPE OF THE STOCK WHEN THE FLOW IS AT A CONSTANT LEVEL OF 5 UNITS/TIME

STOCKS DECOUPLE FLOWS


A third important characteristic of stocks is that they "decouple" or interrupt/change flows. A stock thus makes it possible for an inflow to be different from an outflow and hence for disequilibrium behavior to occur.

Population model

10/10/2012

Taremwa and Lydon

120

Examples where flows are decoupled by stocks

CREATES DELAYS
Systems often respond sluggishly From the example below, once the trees are planted, the harvest rate can be 0 until the trees grow enough to harvest
delay

+ Harvest rate

# of growing trees Planting rate -

Some rules for translating CLDs into SFDs


There are two types of causal links in causal models (but we dont distinguish between them)
Information Flow

1. Information proceeds from stocks and parameters/inputs toward rates where it is used to control flows 2. Flow edges proceed from rates to states (stocks) in the causal diagram always

Figure : casual loop diagram of the pocket money model

Stock and flow diagrams

Stock and Flow Notation--Quantities


STOCK
Stock

RATE
Rate

Auxiliary
i1 i2 Auxiliary o1 o2

o3 i3

Stock and Flow Notation--Quantities


Input/Parameter/Lookup
i1 i2 Auxiliary

i3

Have no edges directed toward them

Output
Have no edges directed away from them
o1 o2

o3

Inputs and Outputs


Inputs Parameters Lookups
a

Input/Parameter/Lookup

Outputs

Stock and Flow Notation--edges


Information

Flow

System Dynamics
Modeling with STELLA software

Learning objective
After this class the students should be able to:
Understand basic concepts of system dynamics, Stock Variable; Flow Variable; Information Flow; Material Flow; and Time Delay; Understand how these basics elements interact with policies and decisions to determine the behavior of dynamic systems.

Time Management

The expected time to deliver this module is 50 minutes. 20 minutes are reserved for team practices and exercises and 30 minutes for lecture.

System Dynamics

Methodology to study systems behavior It is used to show how the interaction between structures of the

systems and their policies determine the system behavior


Approach developed to study system behaviors taking into

account complex structures of feedbacks and time delays

Warm-up
Each team is invited to describe through any kind of diagram the process to fill a cup of water. Imagine this as an exercise of operation management (5 minutes)

Feedback Loop
Feedback refers to the situation of X affecting Y and Y in turn affecting X perhaps through a chain of causes and effects.

Time Delay

\Its the time between the action and the result (consequence) of this action.
Time Delay

Causal Diagram
Desired Water Level

Faucet Position

Perceived Gap
Water Flow

Current Water Level

Population Dynamic

Births
+

Population -

Deaths

feedbacks and time delays

Basic Elements

This methodology use five basics elements: Stock Variable; Flow Variable; Information Flow; Material Flow; and Time Delay

Object Oriented Language

Material Flow

Activity

Stock

Information Flow Converter

A Model
Control Material Flaw to Stock Stock Control Material Flaw from Stock

Send information from the Stock Add New information

Exploring a simple example


To explore modeling with STELLA, we will develop interactively with you, a basic model of the dynamics of a fish population. Assume you are the owner of a pond that is stocked with 200 fish that all reproduce at a fixed rate of 5% per year. For simplicity, assume also that none of the fish die. How many fish will you own after 20 years?

Stock - Fish Inventory


We begin with the first tool, a stock (rectangle). In our example model, the stock will represent the number of fish in our pond.

Figure 1

Click here to open the stella software

This stock is known as a reservoir. In our model, this stock represents the number of fish we have in this time are in our the pond

What control the number of fish


As we assumed that the fish in our pond never die, we have one control variable: REPRODUCTION.
200 Fishes

Figure 2

We use the flow tool (the right-pointing arrow, second from the left) to represent the control variable, so named because it controls the states (variables).

Converter
Next we need to know how the fish in our population reproduce, that is, how to accurately estimate the number of new fish per annum. Remember? We assumed our fish population reproduce at 5% per year. This can be represented as a transforming variable. A transforming variable is expressed as a converter, the circle that is second from the right in the STELLA toolbox.

Connector
At the right of the STELLA, toolbox is the connector (information arrow). We use the connector to pass on information about the REPRODUCTION RATE to REPRODUCTION and another to pass on information from FISH population to REPRODUCTION.

Figure 3

Our first model


Once you draw the information arrow from the transforming variable REPRODUCTION RATE to the control and from the stock FISH to the control, open the control (REPRODUCTION) and converter (REPRODUCTION RATE) and type respectively 5/100 and the equation: REPRODUCTION RATE* FISH

5/100 200

REPRODUCTION RATE*FISH Figure 4

Run the model


We get Figure 5. We see a graph of exponential growth of the fish population in your pond.

Figure 5

What-if?
From now on, the professor can practice what-if with the teams For example: What would happen if we decided to extract fish at a constant rate of 3% per year, and the reproduction rate varied with the fish population as it is seen in figure 6?

Figure 6

New model

Results

Figure 7

Reference
The Fifth Discipline. Peter Senge, Currency Doubleday, 1994, Chapter 5. Modeling Dynamic Economic System. Ruth, M. & Hannon, B. Springer, 1997, Chapter 1

MORE EXAMPLES

Increasing Crime
Events

Behaviour

System Structure

Drugs are a big worry for me. Not least because of the crimes that people commit to fund their dependency. We want the policy to bust these rings and destroy the drugs. They say theyre doing it and they keep showing us sacks of cocaine that they seized but the crime problem seems to be getting worse

Increasing Crime
Events

What are the main variables described in the statement?

Behaviour

What is the reference mode (behaviour) of this system?

System Structure

Time

Increasing Crime
What is the structure of this system? What is the causal loop diagram which explains the observed behaviour?
Events
Call for Police Action

Behaviour

Drug Related Crime

Drug Seizures Price

System Structure
Supply Demand

Building construction
Problem statement
Fixed area of available land for construction New buildings are constructed while old buildings are demolished Primary state variable will be the total number of buildings over time

Causal Graph
+

Construction
+

Industrial buildings
+ +

Demolition
-

Construction fraction Land available for Industrial buildings

Fraction of land occupied


+

Average lifetime for buildings

Average area per building

Simulation models
Flow Graph
Construction (C) Industrial Buildings (B) Demolition (D)

Equations
dBl/dt = Cr Dr Cr = f1(CF, Bl) Dr = f2(AL,Bl)
Average lifetime for buildings (AL)

CF = f3(FLO) FLO = f4(LA,AA,Bl)

Construction
fraction (CF) Land available for industrial buildings (LA) Fraction of land occupied (FLO) Average area per building (AA)

SIMULATION MODEL VALIDATION AND CREDIDILITY

SIMULATION MODEL VALIDATION


Validation ensures that the model meets its intended requirements in terms of the methods employed and the results obtained

The ultimate goal of model validation is to make the model useful in the sense that the model addresses the right problem, provides accurate information about the system being modeled and to makes the model actually used.

Definition: Validation
Validation is the process of determining whether a simulation model (as opposed to the computer program) is an accurate representation of the system, for the particular objectives of the study.

Definition: Operational validation


Operational validation is defined as determining that the models output behavior has sufficient accuracy for the models intended purpose over the domain of the models intended applicability

Definition: Data validity


Data validity is defined as ensuring that the data necessary for model building, model evaluation and conducting the model experiments to solve the problem are adequate and correct.

Definition: Verification
Verification is concerned with determining whether the conceptual simulation model (model assumptions) has been correctly translated into a computer program, i.e., debugging the simulation computer program.

Verification
A simulation model and its results have credibility if the manager and other project personnel accept them as "correct. A credible model is not necessarily valid, and vice versa.

The following things help establish credibility for a model:


The decision-makers understanding and agreement with the models assumptions Demonstration that the model has been validated and verified (i.e., that the model computer program has been debugged) The decision-makers ownership of and involvement with the project Reputation of the model developers

Model validation process

TECHNIQUES FOR INCREASING MODEL VALIDITY AND CREDIBILITY

Formulating the Problem Precisely

It is critical to formulate the problem of interest in a precise manner. This should include an overall statement of the problem to be solved, a list of the specific questions that the model is to answer, and the performance measures that will be used to evaluate the efficacy of particular system configurations.

Interviewing Subject-Matter Experts

There will never be a single person that knows all of the information necessary to build a simulation model. Thus, it will be necessary for the simulation analysts to talk to many different SMEs to gain a complete understanding of the system to be modeled.

Interacting with the Decision-Maker on a Regular Basis


One of the most important ideas for developing a valid and credible model is for the analyst to interact with the decision-maker and other members of the project team on a regular basis.

Collect high-quality information and data on the system


Conversation with subject matter experts in MS, machine operators, engineers, maintenance personnel, schedulers, managers, vendors, Observation of the system Data are not representative of what one really wants to model
Data are not of the appropriate type or format Data may contain measurement, recording, or rounding errors Data may be biased because of self interest Data may be inconsistent

Interact with the manager on a regular basis


There may not be a clear idea of the problem to be solved at initiation of the study. The managers interest and involvement in the study are maintained. The managers knowledge of the system contributes to the actual validity of the model

This approach has the following key benefits:


Helps ensure that the correct problem is solved The exact nature of the problem may not be initially known. The decision-maker may change his/her objectives during the course of the study. The decision-makers interest and involvement in the study are maintained. The model is more credible because the decision maker understands and agrees with the models assumptions.

QUESTION
A military analyst worked on a simulation project for several months without interacting with the general who requested it. At the final Pentagon briefing for the study, the general walked out after five minutes stating, Thats not the problem Im interested in.

Using Quantitative Techniques to Validate Components of the Model


USING STATISTICAL RESULTS If one has fit a theoretical probability distribution (e.g., exponential or normal) to a set of observed data, then the adequacy of the representation can be assessed by using graphical plots and goodness-of-fit tests

Documenting the Conceptual Model


Communication errors are a major reason why simulation models very often contain invalid assumptions. Documenting all assumptions, algorithms, and data summaries can lessen this problem. This report is the major documentation for the model and should be readable by analysts, SMEs, and decisionmakers alike.

Performing Sensitivity Analyses to Determine Important Model Factors


An important technique for determining which model factors have a significant impact on the desired measures of performance is sensitivity analysis. If a particular factor appears to be important, then it needs to be modeled carefully.

MODEL VERIFICATION
Step 1: Write and debug the computer program on modules or subprograms. Step 2: More than one person review the computer program (structured walk through of the program). Step 3: Run the simulation under a variety of settings of input parameters, and check to see that the output is reasonable.

MODEL VERIFICATION
Step 4: "trace", interactive debugger. Step 5: The model should be run under simplifying assumptions for which its true characteristics are known or can easily be computed. Step 6: Observe an animation of the simulation output.

MODEL VERIFICATION
Step 7: Compute the sample mean and variance for each simulation input probability distribution, and compare them with the desired mean and variance. Step 8: Use a commercial simulation package to reduce the amount of programming required.

VALIDATION SCHEMES
Structure-Verification Test: This test is meant to answer the following question Is the model structure not in contradiction to the knowledge about the structure of the real system, and have the most relevant structures of the real system been modeled?

Dimensional-Consistency Test:
Do the dimensions of the variables in every equation balance on each side of the equation? This test verifies whether all equations are dimensionally constant.

Extreme-Conditions Test:
Does every equation in the model make sense even if subjected to extreme but possible values of variables? Policy equations are scrutinized for their applicability in extreme conditions.

Boundary-Adequacy Test:
This test verifies whether the model structure is appropriate for the model purpose. Is the model aggregation appropriate and includes all relevant structure containing the variables and feedback effects necessary to address the problem and suit the purposes of the study?

CHAPTER SIX
BUILT IN FUNCTIONS

BUILT IN FUNCTIONS
The software's test input Builtins enable you to conduct controlled experiments on your model. Typically, a PULSE, RAMP or STEP is appended to an inflow or outflow equation. When the Built-in is activated (at the time you specify) it will knock the system out of its previous state. You can then observe how your model responds to this idealized test.

PULSE FUNCTION
PULSE(<volume>[,<first pulse>,<interval>]) The PULSE function generates a pulse input of a specified size (volume). In using the PULSE function, you have the option of setting the time at which the PULSE will first fire (first pulse), as well as the interval between subsequent PULSEs (interval).

PULSE FUNCTION
Each time that it fires a pulse, the software pulses the specified volume over a period of one time step (DT). Thus, the instantaneous value taken on by the PULSE function is volume/DT. Volume can be either variable or constant. First pulse and interval should be specified as constants.

EXAMPLE
Draw the stock and flow pattern generated by the following equations: Flow = PULSE(20,10,10) Flow = PULSE(10,15,10) Flow = PULSE(20,30,40)

REFER TO STELA HELP.

RAMP
RAMP(<slope>[,<time>]) The RAMP function generates a linearly increasing or decreasing input over time with a specified slope (slope). Optionally, you may set the time at which the ramp begins. Slope and time can be either variable or constant. As the simulation progresses, the RAMP will return a 0 before its time to begin has been reached. If you do not set the RAMP's time, it will begin at the outset of the simulation.

EXAMPLE
Draw the stock and flow pattern generated by the following equations: Pamp_Input =RAMP(25,5) Pamp_Input =RAMP(5,15) Pamp_Input =RAMP(15,15) Pamp_Input =RAMP(5,5)

STEP FUNCTION
STEP(<height>,<time>) The STEP function generates a one-time step change of specified height (height), which occurs at a specified time (time). Height and time can be either variable or constant. Example: Step_Input = 5 + STEP(5,10) generates the behavior pattern.

EXAMPLE
Draw the stock and flow pattern generated by the following equations: Step_Input = STEP(20, 20) Step_Input = 10 + STEP(20, 20) Step_Input = 20 + STEP(20, 20) Step_Input = 5 + STEP(20, 10) + STEP(20, 20) Step_Input = 10 + STEP(10, 20)+ STEP(25, 20)

Graphical Functions
The Become Graph button at the lower left of the dialog enables you to define the converter as a graphical function. Graphical functions also may be defined from within a flow dialog.

Definition: graphical function


A graphical function is a sketch of a relationship between some input (which itself can be an algebraic relationship defined from the Required Inputs list and/or Builtins list) and an output.

Using graphical function


Once the input has been defined in the equation box, a click on Become Graph leads you to the graphical function define dialog.

Using graphical function


Set the min and max values for the X-axis. Type numbers within the two fields below the graphical function grid. The number in the left field (the min value) must be less than the number in the right field (the max value). Hit the tab key to move from field to field. The minimum and maximum values you choose for the X-axis will be reflected in the noneditable left column (input), to the right of the axes.

Using graphical function


Set the min and max values for the Y-axis. Type numbers within the two fields to the left of the graphical function grid. The number in the bottom field (the min value) must be less than the number in the top field (the max value). Hit the tab key to move from field to field.

Using graphical function


Set the number of data points. Type a number into the Data Points field, found below the two columns of numbers. You must have at least two data points in a graphical function. You can have up to 1500 data points. When a graphical function contains more than 13 data points, the grid becomes scrollable. To view the entire function, depress the alt key (Windows) or option key (Macintosh).

Using graphical function


Create a relationship. Click-and-hold the cursor within the grid. As you drag the cursor, a curve will be drawn, following your mouse movements. In addition, the Y-axis coordinates of the curve will be displayed in the right column (output) at the far right of the dialog.

Das könnte Ihnen auch gefallen