Professional Documents
Culture Documents
SD2
SD2
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
Rate
Flow arc
Auxiliary
Cause-and-effect arc
Source/Sink Constant
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 levels 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
Births Population
Children maturing
Births
Children maturing
children
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
* Population Growth
Integral/Differential Equations
Diagran
R1
L R2
Integral Equation
L(t) = t0 [R1(s) R2(s) ] ds + L(t0)
t
Differential Equation
dL/dt = Net Change in L = R1(t) - R2(t)
For 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 for
End Main
Flow Graph
R L
Equations
dL/dt = k1*R(t)
Block Model
L L k1*k2
R(t) = k2*L(t)
dL/dt = k1*k2*L(t)
Equations
dL/dt = R1 R2 R2 = k2*L R1 = k1
Block Model
L1 L1
dL/dt = k1 - k2*L
k2
k1
Equations
dL1/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 L2 L2 k3
L2
Block Model
L1 L1 k2 k1
Building construction
Problem statement
Causal Graph
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
+
Construction
+
Industrial buildings
+ +
Demolition
-
Simulation models
Flow Graph
Construction (C) Industrial Buildings (B) Demolition (D)
Equations
dBl/dt = Cr Dr Cr = f1(CF, Bl) Dr = f2(AL,Bl)
Construction
fraction (CF) Land available for industrial buildings (LA) Fraction of land occupied (FLO)
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