1 Stock & Flow Diagrams James R. Burns. 2 What are stocks and flows?? A way to characterize systems...

Post on 31-Dec-2015

214 views 0 download

Tags:

Transcript of 1 Stock & Flow Diagrams James R. Burns. 2 What are stocks and flows?? A way to characterize systems...

1

Stock & Flow Diagrams

James R. Burns

2

What are stocks and flows?? 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 that modify

information as it is passed from stocks to rates

3

Stock and Flow Notation--Quantities STOCK

RATE

Auxiliary

Stock

Rate

i1

i2

i3

Auxiliary

o1

o2

o3

4

Stock and Flow Notation--Quantities

Input/Parameter/Lookup

Have no edges directed toward them Output

Have no edges directed away from them

i1

i2

i3

Auxiliary

o1

o2

o3

5

Inputs and Outputs Inputs Parameters Lookups

Inputs are controllable quantities Parameters are environmentally defined

quantities over which the identified manager cannot exercise any control

Lookups are TABLES used to modify information as it is passed along

Outputs Have no edges directed away from them

Input/Parameter/Lookup

a

b

c

6

Stock and Flow Notation--edges Information

Flow

a b

x

7

Review of the Methodology Acquire verbal descriptions List variables, constants, parameters Delineate Causal Loop Diagram Translate CLD to Stock-and-Flow Diagram Delineate SFT in VENSIM Determine equations Run simulations, conducting “what if”

experiments

8

Some rules There are two types of causal links in

causal models Information Flow

Information proceeds from stocks and parameters/inputs toward rates where it is used to control flows

Flow edges proceed from rates to states (stocks) in the causal diagram always

9

Robust Loops In any loop involving a pair of

quantities/edges, one quantity must be a rate the other a state or stock, one edge must be a flow edge the other an information edge

10

CONSISTENCY All of the edges directed toward a

quantity are of the same type All of the edges directed away

from a quantity are of the same type

Monday, Nov. 24, 2003 11

Rates and their edges

q1

q2

q3

RATES

q4

q5

q6

Informationedges

Flow edges

12

Parameters and their edges

PARAMETER

q1

q2

q3

Informationedges

13

Stocks and their edges

q1

q2

q3

STOCK

q4

q5

q6

Flow edges Information edges

14

Auxiliaries and their edges

AUXILIARY

q1

q2

q3

q4

q5

q6

Informationedges

Informationedges

Monday, Nov. 24, 2003 15

Outputs and their edges

OUTPUT

q1

q2

q3

Informationedges

16

STEP 1: Identify parameters Parameters have no edges

directed toward them

17

STEP 2: Identify the edges directed from parameters These are information edges

always

18

STEP 3: By consistency identify as many other edge types as you can

Monday, Nov. 24, 2003 19

STEP 4: Look for loops involving a pair of quantities only

Use the rules for robust loops identified above

Monday, Nov. 24, 2003 20

q1

q2

q3 q4

q5

q6

q7

q8

Monday, Nov. 24, 2003 21

q3

q6

q2

q7

q1

q4

q5 q8

Monday, Nov. 24, 2003 22

Monday, Nov. 24, 2003 23

Distinguishing Stocks & Flows by NameNAME UNITS

Stock or flow Revenue Liabilities Employees Depreciation Construction starts Hiring material standard of living

Monday, Nov. 24, 2003 24

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

Monday, Nov. 24, 2003 25

The VENSIM User Interface The Time bounds Dialog box

Monday, Nov. 24, 2003 26

Monday, Nov. 24, 2003 27

Monday, Nov. 24, 2003 28

Monday, Nov. 24, 2003 29

A single-sector Exponential growth Model 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

Monday, Nov. 24, 2003 30

Let’s Begin by Listing Quantities Population Births Deaths Birth rate norm Death rate norm

Monday, Nov. 24, 2003 31

Births

population

Deaths

Birth rate normal

Death rate normal

R

B

++

+

+

+

--

Monday, Nov. 24, 2003 32

Birth rate norm

Death rate norm

Population

Birth rate

Death rate

P

BRN

DRN

BR

DR

Monday, Nov. 24, 2003 33

Equations Birth rate = Birth rate norm * Population Death rate = Death rate norm *

Population Population(t + dt) = Population(t) +

dt*(Birth rate – Death rate) t = t + dt Population must have an initial defining

value, like 1.65E9

Monday, Nov. 24, 2003 34

Units Dissection Birth rate = Birth rate Norm *

Population [capita/yr] = [capita/capita*yr] *

[capita]

Monday, Nov. 24, 2003 35

Monday, Nov. 24, 2003 36

A single-sector Exponential goal-seeking Model

Sonya Magnova is a resources planner for a school district. Sonya wishes to a maintain a desired level of resources for the district. Sonya’s new resource provision policy is quite simple--adjust actual resources AR toward desired resources DR so as to force these to conform as closely as possible. The time required to add additional resources is AT. Actual resources are adjusted with a resource adjustment rate

Monday, Nov. 24, 2003 37

What are the quantities?? Actual resources Desired resources Resource adjustment rate Adjustment time

Monday, Nov. 24, 2003 38

Desired resources

Actual resources

Resourceadjustment rate

Adjustment time

+

--

--

+

Monday, Nov. 24, 2003 39

Desired Resources Adjustment time

ActualResources

Resourceadjustment rate

+-

-

Monday, Nov. 24, 2003 40

Equations Adjustment time = constant Desired resources = variable or constant Resource adjustment rate = (Desired

resources – Actual resources)/Adjustment time

Actual resources(t + dt) = Actual resources(t) + dt*Resource adjustment rate

Initial defining value for Actual resources

Monday, Nov. 24, 2003 41

Equation dissection Resource adjustment rate = (Desired

resources – Actual resources)/Adjustment time

An actual condition—Actual resources A desired condition—Desired resources A GAP—(Desired resources – Actual

resources) A way to express action based on the GAP:(Desired resources – Actual

resources)/Adjustment time

Monday, Nov. 24, 2003 42

Units checkResource adjustment rate = (Desired

resources – Actual resources)/Adjustment time

[widgets/yr] = ([widgets] – [widgets])/[yr]

CHECKS

Notice that rates ALWAYS HAVE THE UNITS OF THE ASSOCIATED STOCK DIVIDED BY THE UNITS OF TIME, ALWAYS

Monday, Nov. 24, 2003 43

(1) Actual Resources= INTEG (Resource adjustment rate, 10)Units: **undefined**

(2) Adjustment time= 10Units: **undefined**

(3) Desired Resources= 1000Units: **undefined**

(4) FINAL TIME = 100Units: MonthThe final time for the simulation.

Monday, Nov. 24, 2003 44

(5) INITIAL TIME = 0Units: MonthThe initial time for the simulation.

(6) Resource adjustment rate=(Desired Resources - Actual

Resources)/Adjustment timeUnits: **undefined**

(7) SAVEPER = TIME STEP Units: Month [0,?]The frequency with which output is stored.

(8) TIME STEP = 1Units: Month [0,?]The time step for the simulation.

Monday, Nov. 24, 2003 45

Shifting loop Dominance Rabbit populations grow rapidly with a

reproduction fraction of .125 per month When the population reaches the carrying

capacity of 1000, the net growth rate falls back to zero, and the population stabilizes

Starting with two rabbits, run for 100 months with a time step of 1 month

(This model has two loops, an exponential growth loop (also called a reinforcing loop) and a balancing loop)

Monday, Nov. 24, 2003 46

Shifting loop Dominance Assumes the following relation for Effect of

Resources Effect of Resources = (carrying capacity -

Rabbits)/carrying capacity This is a multiplier Multipliers are always dimless

(dimensionless) When rabbits are near zero, this is near 1 When rabbits are near carrying capacity, this

is near zero This will shut down the net rabbit birth rate

Monday, Nov. 24, 2003 47

RabbitsNet Rabbit Birth rate

Effect of resourcesCarrying capacity

Normal Rabbit Growth Rate

B

R

Monday, Nov. 24, 2003 48

Rabbits

1,00040

00

0 20 40 60 80 100Time (Month)

Rabbits : rab1Net Rabbit Birth rate : rab1

Monday, Nov. 24, 2003 49

Dimensionality Considerations VENSIM will check for dimensional

consistency if you enter dimensions Rigorously, all models must be

dimensionally consistent What ever units you use for stocks,

the associated rates must have those units divided by TIME

An example follows

Monday, Nov. 24, 2003 50

Cascaded rate-state (stock) combinations In the oil exploration industry, unproven

reserves (measured in barrels) become proven reserves when they are discovered. The extraction rate transforms proven reserves into inventories of crude. The refining rate transforms inventories of crude into refined petroleum products. The consumption rate transforms refined products into pollution (air, heat, etc.)

Monday, Nov. 24, 2003 51

Another cascaded rate-stock combination Population cohorts. Suppose

population is broken down into age cohorts of 0-15, 16-30, 31-45, 46-60, 61-75, 76-90

Here each cohort has a “lifetime” of 15 years

Again, each rate has the units of the associated stocks divided by time

Monday, Nov. 24, 2003 52

Project Dynamics Projects begin with a huge block of

uncompleted work. Eventually, all of this work gets completed. The rate at which uncompleted work gets finished and thus enters the realm of completed work is called the work rate. Obviously, the work rate would be a function of the number of workers, the efficiency with which they work and so forth.

Monday, Nov. 24, 2003 53

Stock & Flow Diagram for Projects

Uncompletedwork

Completedworkwork rate

Monday, Nov. 24, 2003 54

The Sector Approach to the Determination of Structure What is meant by “sector?” What are the steps…

to determination of structure within sectors?

to determination of structure between sectors?

Monday, Nov. 24, 2003 55

Definition of sector All the structure associated with a

single flow Note that there could be several

states associated with a single flow The next sector in the pet population

model has three states in it

Monday, Nov. 24, 2003 56

Sector Methodology, Overall Identify flows (sectors) that must

be included within the model Develop the structure within each

sector of the model. Use standard one-sector sub-models

or develop the structure within the sector from scratch using the steps in Table 15.5

Monday, Nov. 24, 2003 57

Sector Methodology, Overall Cont’d Develop the structure between all

sectors that make up the model Implement the structure in a

commercially available simulation package

Monday, Nov. 24, 2003 58

Steps Required to Formulate the Structure for a Sector from Scratch

Specify the quantities required to delineate the structure within each sector

Determine the interactions between the quantities and delineate the resultant causal diagram

Classify the quantity and edge types and delineate the flow diagram

Monday, Nov. 24, 2003 59

Resource, facility and infrastructure (desks, chairs, computers, networks, labs, etc.) needs for an educational entity are driven by a growing population that it serves. Currently, the population stands at 210,000 and is growing at the rate of two percent a year. One out of every three of these persons is a student.

One teacher is needed for every 25 students. Currently, there are 2,300 actual teachers; three percent of these leave each year. Construct a structure for each that drives the actual level toward the desired level. Assume an adjustment time of one year. Set this up in VENSIM to run for 25 years, with a time-step of .25 years.

Monday, Nov. 24, 2003 60

One-hundred square feet of facility space is needed for each student. Thirty-five hundred dollars in infrastructure is needed for each student. Currently, there is five million sq. ft of facility space, but this becomes obsolescent after fifty years. Currently, there is $205,320,000 in infrastructure investment, but this is fully depreciated after ten years. For each of infrastructure, teachers and facility space, determine a desired level or stock for the same. Construct a structure for each that drives the actual level toward the desired level.

Monday, Nov. 24, 2003 61

Set this up in VENSIM to run for 25 years, with a time-step of .25 years. Assume adjustment times of one year. DETERMINE HOW MUCH IN THE WAY OF FACILITIES, TEACHERS AND INFRASTRUCTURE ARE NEEDED PER YEAR OVER THIS TIME PERIOD.

Monday, Nov. 24, 2003 62

What are the main sectors and how do these interact?

Population Teacher resources Facilities Infrastructure

Monday, Nov. 24, 2003 63

Factors affecting teacher departures Inside vs. outside salaries Student-teacher ratios How might these affects be

included?

Monday, Nov. 24, 2003 64

Teacher departure description It is known that when the ratio of average

“inside the district” salary is comparable to outside salaries of positions that could be held by teachers, morale is normal and teacher departures are normal

When the inside-side salary ratio is less than one, morale is low and departures are greater than normal

The converse is true as well

Monday, Nov. 24, 2003 65

Teacher departure description When student-teacher ratios

exceed the ideal or desired student teacher ratio, which is twenty four, morale is low and again departures are greater than normal

The converse is true as well

Monday, Nov. 24, 2003 66

A Two-sector Housing/population Model A resort community in Colorado has

determined that population growth in the area depends on the availability of housing as well as the persistent natural attractiveness of the area. Abundant housing attracts people at a greater rate than under normal conditions. The opposite is true when housing is tight. Area Residents also leave the community at a certain rate due primarily to the availability of housing.

Monday, Nov. 24, 2003 67

Two-sector Population/ housing Model, Continued The housing construction industry, on the

other hand, fluctuates depending on the land availability and housing desires. Abundant housing cuts back the construction of houses while the opposite is true when the housing situation is tight. Also, as land for residential development fills up (in this mountain valley), the construction rate decreases to the level of the demolition rate of houses.

Monday, Nov. 24, 2003 68

What are the main sectors and how do these interact? Population Housing

Monday, Nov. 24, 2003 69

What is the structure within each sector? Determine state/rate interactions

first Determine necessary supporting

infrastructure PARAMETERS AUXILIARIES

Monday, Nov. 24, 2003 70

What does the structure within the population sector look like? RATES: in-migration, out-

migration, net death rate STATES: population PARAMETERS: in-migration normal,

out-migration normal, net death-rate normal

Monday, Nov. 24, 2003 71

What does the structure within the housing sector look like?

RATES: construction rate, demolition rate STATES: housing AUXILIARIES: Land availability multiplier,

land fraction occupied PARAMETERS: normal housing

construction, average lifetime of housing PARAMETERS: land occupied by each unit,

total residential land

Monday, Nov. 24, 2003 72

What is the structure between sectors? There are only AUXILIARIES,

PARAMETERS, INPUTS and OUTPUTS

Monday, Nov. 24, 2003 73

What are the between-sector auxiliaries? Housing desired Housing ratio Housing construction multiplier Attractiveness for in-migration

multiplier PARAMETER: Housing units

required per person

Monday, Nov. 24, 2003 74