System Dynamics 2

Post on 19-Jan-2016

73 views 1 download

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

Transcript of System Dynamics 2

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