Upload
nicole
View
76
Download
1
Embed Size (px)
DESCRIPTION
System Dynamics 2. CAP4800/5805 Systems Simulation. What we covered last time. What is System Dynamics Causal Loop Diagram Augmenting Causal CLD Loop dominance Labeling link polarity Determining loop polarity Exogenous items and delays. System Dynamics Modeling. Identify a problem - PowerPoint PPT Presentation
Citation preview
System Dynamics 2
CAP4800/5805Systems Simulation
What we covered last time
What is System Dynamics Causal Loop Diagram Augmenting Causal CLD Loop dominance
Labeling link polarity Determining loop polarity
Exogenous items and delays
System Dynamics Modeling Identify a problem Develop a dynamic hypothesis explaining the cause of
the problem Create a basic causal graph Augment the causal graph with more information Convert the augmented causal graph to a
System Dynamics flow graph Translate a System Dynamics flow graph into
DYNAMO programs or equations Simulate the DYNAMO programs or equations
Casual-loops Provide insight into a system's structure Often difficult to infer the behavior of a
system from its casual-loop representation Need to use computer simulation Simulation model: flow diagrams, equations,
simulation language DYNAMO (DYNAmic Models):
Not a general-purpose language but special purpose language to aid in building computer models
Flow Graph Symbols
Level
Rate
Auxiliary
Source/Sink
Constant
Flow arc
Cause-and-effect arc
Level: AKA stock, accumulation, or state
variable A quantity that accumulates over
time Change its value by accumulating or
integrating rates Change continuously over time even
when the rates are changing discontinuously
Rate/Flow:
AKA flow, activity, movement Change the values of levels The value of a rate is
Not dependent on previous values of that rate
But dependent on the levels in a system along with exogenous influences
Auxiliary: Arise when the formulation of a level’s
influence on a rate involves one or more intermediate calculations
Often useful in formulating complex rate equations
Used for ease of communication and clarity Value changes immediately in response to
changes in levels or exogenous influences
Source and Sink:
Source represents systems of levels and rates outside the boundary of the model
Sink is where flows terminate outside the system
Example 1 (Population and birth)
+
+
Births Population
Births
Population
Example 2 (Children and adults)
Births Children Children maturing Adults
+ + +
+-
+
-
Births
children
Children maturing
Adults
DYNAMO Originally developed by Jack Pugh at MIT First system dynamics simulation language For a long time the language and the field were
considered synonymous Provides an equation based development
environment for system dynamics models DYNAMO today runs on PC compatibles under
Dos/Windows.
Time in DYNAMO LEVEL.K: a level calculated at the present time LEVEL.J: a level calculated one time interval
earlier DT: the length of the time interval between J
and K
dt dt
J: past K: present L: future
DYNAMO Program(Population and birth model)
* Population Growth
L POP.K = POP.J + DT*BIRTH.JK
N POP = 10
R BIRTH.KL = (POP.K)(PAR)
C PAR = 0.1
SPEC DT = 1.0
Level statement
present one time interval earlier between J and K
Initial value statement
Rate statement
Constant statement
Star statement
SPEC statement
Births
Population
Integral/Differential Equations Diagran
R1
L
R2
Integral EquationL(t) = ∫ [R1(s) – R2(s) ] ds + L(t0)
Differential EquationdL/dt = Net Change in L = R1(t) - R2(t)
t
t0
System Dynamics AlgorithmProgram Main
We are given a concept graph with modes and arcsThe arcs require sign (+,-) labelingThe nodes require labeling: source, rate, level, constant,
auxiliaryFor each level node (L) with an input rate node (R1) and
and output rate node (R2) write:dL/dt = k1 * R1 – k2 * R2 ; k1 and k2 are rate constants
End forFor all other nodes (N) write:
N(t) = a linear function of all inset members of this nodeEnd for
End Main
From Causal Loop DiagramTo Simulation Models 1
R
L
EquationsdL/dt = k1*R(t)
R(t) = k2*L(t)
dL/dt = k1*k2*L(t)
Flow Graph
Block Model
L’ L
k1*k2
Causal Graph
+
+
R L
∫
From Causal Loop DiagramTo Simulation Models 2
R1
L
EquationsdL/dt = R1 – R2
R2 = k2*L
R1 = k1
dL/dt = k1 - k2*L
Flow Graph
Block Model
R2
L1’ L1
k2
- k1
∫
From Causal Loop DiagramTo Simulation Models 3
EquationsdL1/dt = R1 – R2
dL2/dt = R2 – R3
R1 = k1
R2 = K2 * L1
R3 = K3 * L2
dL1/dt = k1 – k2*L1
dL2/dt = k2*L1 – K3*L2
R1
L1
Flow Graph
R2
L2
R3
L1’ L1
k2
-
-
k1
L2’ L2
Block Model
∫ ∫k3
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
Industrialbuildings
DemolitionConstruction
Fraction of land occupied
Constructionfraction
Average lifetime
for buildings
Average areaper building
Land available forIndustrial buildings
+
+
+
+
++ -
-
-
-
Simulation models
Industrial
Buildings (B)
Construction (C) Demolition (D)
Construction
fraction
(CF)Fraction of
land occupied
(FLO)Land available for industrial buildings (LA)
Average area per building (AA)
Average lifetime for buildings (AL)
Equations
dBl/dt = Cr – Dr
Cr = f1(CF, Bl)
Dr = f2(AL,Bl)
CF = f3(FLO)
FLO = f4(LA,AA,Bl)
Flow Graph
Next Class
VenSim System Dynamics Simulation Tool http://www.vensim.com/
References Simulation Model Design and Execution,
Fishwick, Prentice-Hall, 1995 (Textbook) Introduction to Computer Simulation: A
system dynamics modeling approach, Nancy Roberts et al, Addison-wesley, 1983
Business Dynamics: Systems thinking and modeling for a complex world, John D. Sterman, McGraw-Hill,2000