Modeling Exercises Section 2: Population
Modeling Exercises Section 2: Population
Modeling Exercises
Section 2
Population
Births Deaths
by
Joseph G. Whelan
August, 1994
D-4451-2 3
Table of Contents
1. ABSTRACT 6
2. INTRODUCTION 7
7. APPENDIX 36
8. VENSIM EXAMPLES 40
6 D-4451-2
1. ABSTRACT
This paper is the second in a continuing series of papers designed to enhance the
reader’s modeling skills. Modeling Exercises Section 2 contains two separate modeling
exercises. In the first exercise the reader will build a system dynamics model based on a
detailed description of an urban system. The reader will run the urban model under
varying conditions. The second exercise asks the reader to perform mental simulations on
a pre-built model, and to estimate the model behavior under different conditions. The
reader is expected to have prior experience with system dynamics, model building, and
mental simulation. Before beginning this paper, please review Modeling Exercises Section
1, which outlines the process of model building. 1
1
Joseph G. Whelan, 1994. Modeling Exercises Section 1 (D-4421), System Dynamics in Education
Project, System Dynamics Group, Sloan School of Management, Massachusetts Institute of Technology,
Joseph G. Whelan, 1995. Beginner Modeling Exercises Section 2: Mental Simulation of Simple
Positive Feedback (D-4487), System Dynamics in Education Project, System Dynamics Group, Sloan
School of Management, Massachusetts Institute of Technology, July 27, 15 pp.
Helen Zhu, 1996. Beginner Modeling Exercises Section 3: Mental Simulation of Simple Negative
Feedback (D-4536), System Dynamics in Education Project, System Dynamics Group, Sloan School of
Management, Massachusetts Institute of Technology, January 28, 23 pp.
Alan Coronado, 1996. Beginner Modeling Exercises Section 4: Mental Simulation: Adding Constant
Flows (D-4546), System Dynamics in Education Project, System Dynamics Group, Sloan School of
Management, Massachusetts Institute of Technology, May 28, 27 pp.
Laughton Stanley and Helen Zhu, 1996. Beginner Modeling Exercises Section 5: Mental Simulation of
Combining Feedbacks in First Order Systems (D-4593), System Dynamics in Education Project, System
Dynamics Group, Sloan School of Management, Massachusetts Institute of Technology, May 28, 28 pp.
D-4451-2 7
2. INTRODUCTION
Modeling is a crucial element of system dynamics. People rely on mental models
daily to make decisions without even questioning the model being used. Creating and
simulating models using STELLA or other modeling software2 allows the modeler to
solidify his mental models. The modeler thus observes the behavior of complex systems
where mental models are inadequate. Both mental and computer models can give wrong
answers. A computer will give an answer with precision even if that answer is based on an
inadequate model. A computer will not say “A population cannot be negative,” or “The
number of sick people cannot be greater than the total population.” The modeler must be
the one to verify the quality of a model. This paper and future Modeling Exercises in
Road Maps will enhance the reader’s modeling skills.
2
Powersim or Vensim can be used if the reader can make interpretations from the material in this paper.
8 D-4451-2
3
Note: The following exercise was based on an exercise prepared by John Sterman. It has been revised
for use in Road Maps. The model structure and description were adapted from the population-business
John Sterman, 1981. Principles Of Systems I, 15.852/872, Fall 1981, Assignment #3: Urban Modeling
Alfeld, L. E., and Graham, A. K., 1976. Introduction to Urban Dynamics. Cambridge, MA: Productivity
4
Suggested answers to this question are included in Section 5.
D-4451-2 9
Sketch the expected behavior of all the key variables over an appropriate time horizon on
the blank graph provided.
Time
flexibility in choosing employees and shortens the time necessary to fill open positions.
Moreover, high “Labor Availability” tends to decrease wage competition for labor among
businesses.
5
“Labor Availability,” as it will be defined in the urban growth model, is the ratio of the “Labor Force” in
the urban area to the total number of “Jobs.” When the “Labor Force” is greater than the number of
“Jobs” (“Labor Availability” is greater than 1), not all the workers in the area can find “Jobs,” and the
area experiences unemployment. Thus, “Labor Availability” represents the concept of unemployment
from the point of view of the businesses.
D-4451-2 11
multiplied by the average “Land per Structure” (1 acre per structure), and divided by the
total “Land Area” of 5000 acres. When almost all “Land Area” is available, the “Land
Availability Multiplier,” and thus “Construction,” is quite low because there are very few
businesses around to provide capital. As more of the “Land Area” is occupied, the effect
on “Construction” increases. Eventually, the “Land Area” is used up, and the “Land
Availability Multiplier” and “Construction” drop again, reaching zero when all the “Land
Area” is occupied. In equilibrium, “Land Availability Multiplier” is equal to 1.
? A “Labor Availability Multiplier” is a nonlinear function of “Labor
Availability.” “Labor Availability” is the ratio of “Labor Force” to “Jobs.” “Labor Force”
is the product of the “Population” and the “Labor Participation Fraction” of 0.35, or 35%.
“Jobs” is the product of “Business Structures” and 20 “Jobs per Structure.” When “Labor
Availability” is greater than 1 (“Labor Force” is greater than “Jobs”), businesses are more
likely to construct new “Business Structures.” When “Labor Availability” falls below 1,
the “Labor Availability Multiplier” and “Construction” fall. In equilibrium, “Labor
Availability Multiplier” is equal to 1.
6
In system dynamics, rates are often defined as a level multiplied by one or more factors. These factors
can be aggregated into the format of a “normal” value and one or more multipliers. The normal
represents the ratio of the rate to the level under standard conditions of equilibrium, while the multipliers
all vary around the value of 1 to include the effects of varying conditions on the system. It is considered
good practice if the multipliers are all equal to 1 in equilibrium. A later section of Road Maps will discuss
how this can be achieved.
12 D-4451-2
3. Using the instructions from Section 3.4, map out in STELLA the two interacting
sectors of the “Business Structures” and the “Population.”
4. Define the elements in the model and enter the model equations correctly into the
computer. Make sure to indicate clearly any numerical assumptions not given above (e.g.,
values assumed in nonlinear “graphical functions”). Try to make the model clear so that
others can understand its structure easily. Then simulate the model. Did the model
produce a behavior similar to that predicted earlier?
5. What causes the growth of “Population” and “Business Structures” of an urban area
during the early years of its development? Use the structure of the model to answer this
question. How does the answer relate to the answer to question 2?
7
Suggested answers to the following questions are included in Section 5.
D-4451-2 13
6. What is the behavior of “Labor Availability” during the life cycle of an urban area?
What causes the behavior?
7. How does the finite “Land Area” come to limit growth? Will all the available “Land
Area” be filled up in equilibrium?
Use the model to show the effects of annexing surrounding land to increase the “Land
Area” to 7500 acres. Initialize the model in equilibrium.8 Use the STEP function in
STELLA to increase the “Land Area” in year 10. How does the behavior change? Will
all the “Land Area” be filled up in equilibrium?
8. Does the assumption of a fixed “Land Area” invalidate the model? Most cities can and
have expanded from their original areas. How does such expansion influence the results
given by the model? For example, what would be the likely consequences of expanding
the “Land Area” within which the city is allowed to grow? Simulate the model with a
sequence of such expansions, say every 20 years. (The reader might want to refer back to
the analysis in question 7.)
8
To initialize the model in equilibrium, first find the equilibrium values of the two levels, “Business
Structures” and “Population,” from the base run of the model. Then enter the equilibrium values as initial
values of the respective levels. The model should now remain in equilibrium during the entire simulation.
14 D-4451-2
Rate A
Level 1 Level 2
Rate B
Time Delay
In the physical system, the level of water in the containers corresponds to “Level
1” and “Level 2.” The pump corresponds to a constant “Rate A.” “Rate B” represents
the spigot on the first container that flows at a rate proportional to the level of fluid in the
upper container (“Level 1”).
Level 1
Rate B =
Time Delay
D-4451-2 17
1. Mentally simulate the model with the initial conditions described in the previous
section (“Level 1” = 0; “Level 2” = 4). Sketch the behavior of all model components on
the blank graphs. Include as much information as possible.
0.00
- 4.00
0.00 3.00 6.00 9.00 12.00
Time
1.00
0.00
0.00 3.00 6.00 9.00 12.00
Time
18 D-4451-2
2. Mentally simulate the same scenario (“Level 1” = 0; “Level 2” = 4). This time, change
the value of “Time Delay” to 4.
0.00
- 4.00
0.00 3.00 6.00 9.00 12.00
Time
1.00
0.00
0.00 3.00 6.00 9.00 12.00
Time
D-4451-2 19
3. Now, assume that the “Time Delay” is equal to 2 again, but “Level 1” is initialized at 4
and “Level 2” at 0. Sketch what happens.
0.00
- 4.00
0.00 3.00 6.00 9.00 12.00
Time
1.00
0.00
0.00 3.00 6.00 9.00 12.00
Time
20 D-4451-2
Population
Labor Availability
Business Structures
0 40 80
Years
3. Figure 4 shows a STELLA model for the urban growth system. Detailed model
equations are included in Section 7.1 of the Appendix.
22 D-4451-2
Business Sector
Jobs
Jobs per Structure
Construction Demolition
~
Labor Availability Multiplier
Land per Structure
Land Area
Population Sector
Labor Force
Labor Participation Fraction
~
Job Attractiveness Multiplier Population
Births Deaths
4. The model is a simple implementation of the description given in Section 3.4. The
“Business Structures” sector consists of one stock, “Business Structures,” which is filled
by “Construction” and drained by “Demolition.”
“Demolition” is defined by the familiar average lifetime formulation: the number
of existing “Business Structures” divided by the “Average Structure Lifetime.”
“Construction” is defined by the number of existing “Business Structures”
multiplied by a “Construction Fraction” and two multipliers, the “Land Availability
Multiplier” and the “Labor Availability Multiplier.”
The “Land Availability Multiplier” incorporates the effect of limited development
“Land Area” on the “Construction” rate. It is determined by the “Land Fraction
Occupied,” which is the amount of land occupied by existing “Business Structures”
divided by the total “Land Area” available for commercial development. For low values of
“Land Fraction Occupied,” increasing business development will lead to higher values for
the “Land Availability Multiplier.” The high values occur because of the more advanced
infrastructure associated with denser development. As the “Land Fraction Occupied”
increases further, more desirable land is used up and land prices begin to rise, so
“Construction” decreases. Eventually, when all the “Land Area” is used up and the “Land
Fraction Occupied” is 1, “Construction” must fall to zero. The graphical function for the
“Land Availability Multiplier” is shown in Figure 5.
24 D-4451-2
Availability”
2
1
3
1
3
1: 3000.00
2: 150000.00
3: 1.00 3 3
2
2
1
1: 0.00
2: 0.00
3: 0.80
0.00 20.00 40.00 60.00 80.00
Years
5. In the first portion of the model simulation, the city is attractive to residents and to
people planning to move to the city because “Jobs” are readily available (“Labor
Availability” is less than 1). The increasing “Population” and the success of previous
investments demonstrate the potential for further growth and the profitability of
“Construction” of “Business Structures.” The development of the urban infrastructure
caused by business expansion permits further development to occur. The continued
availability of “Land Area” during the growth stage allows business “Construction” to
keep pace with the increasing “Population” so people continue to be attracted by the job
opportunities in the area. The hypothesis stated in the answer to question 2 correctly
identifies the reasons for the initial growth.
6. The quick initial increase in “Labor Availability” is due to the initial values of
“Population” and “Business Structures” that are “out of balance” with one another. After
the initial growth phase of “Business Structures” and “Population,” during which “Labor
Availability” declines slightly (in other words, job availability improves slightly), “Jobs”
become less available to the average job-seeker (“Labor Availability” starts increasing).
The lower availability of “Jobs” occurs because “Jobs” begin rising slower than
“Population” once the “Land Area” constraint slows business “Construction.” The
increase in “Labor Availability” (corresponding to a decline in job availability) continues
D-4451-2 27
1: 0.00
2: 0.00
3: 0.80
0.00 20.00 40.00 60.00 80.00
Years
8. Assuming a fixed “Land Area” simplifies real life. Cities do expand their geographical
boundaries, sometimes dramatically (consider Los Angeles and Mexico City). When total
“Land Area” available is expanded in the simple two-level model, “Business Structures”
and “Population” grow to fill the larger “Land Area.” However, the system still
equilibrates with high “Labor Availability” (i.e., unemployment). If a series of expansions
of the “Land Area” available is tested, each expansion will stimulate a further growth
spurt. Each growth spurt will lower “Labor Availability” in the short term, due to
increased business “Construction.” However, as each growth period gives way to a new
equilibrium, “Labor Availability” will rise again to its previous equilibrium value.
Therefore, expanding the city's geographic limits will lead to a temporary improvement in
the availability of “Jobs,” but the improvement will eventually be reversed as the new
“Land Area” is filled. The high unemployment equilibrium can only be avoided if the city
continues to grow indefinitely. Because no city can expand indefinitely, analyzing growth
within a fixed “Land Area” becomes a useful approach to studying the types of pressures
that can limit growth.
D-4451-2 29
Stock
Flow
Time Constant
Stock
Flow =
Time Constant
The model contains one negative feedback loop. The “Time Constant” affects the
“Flow” that drains the “Stock.” The structure gives the following behavior for the
“Stock”:
30 D-4451-2
1: Stock
1.00
1
elapsed time
- Time Constant
Stock(t) = Stock(0) * e
0.50
1
0.00
0.00 1.00 2.00 3.00 4.00
Time Constants
1. Initial model run: Figures 13 and 14 show the behavior of the model. Both levels
converge asymptotically to an equilibrium valuethat can be found by setting the net rate at
each level equal to zero. Equilibrium occurs when “Rate A” equals “Rate B.” When
“Level 1”/“Time Constant” equals 1, the system will be in equilibrium, and the equilibrium
value for “Level 1” is 2. “Level 2” is affected by the same rates as “Level 1,” but in the
opposite direction. As a result, any change in “Level 1” is mirrored by “Level 2.”
Because “Level 1” increased by 2, “Level 2” decreased by 2 to a final value of 2.
The slope of the graph of a level is simply the net rate entering the level. At the
beginning of the simulation, “Level 1” is empty, so “Rate B” is 0. Therefore the only non
zero rate is “Rate A” which equals 1. The initial slope of “Level 1” is +1 and the initial
slope of “Level 2” is –1.
The rest of the behavior can be determined using the “Time Constant” of the
system, which is 2. The shape of the curve can be determined accurately with the chart
and description outlined above. In Figure 13, the first three time constants are labeled.
9
Mathematically inclined readers may realize that the negative sign in the exponent causes asymptotic
growth. If the exponent is positive, growth is exponential.
D-4451-2 31
1
0.00
Initial Slope = 1
-4.00
0.00 3.00 6.00 9.00 12.00
Time
Figure 13: First run behavior of “Level 1” and “Level 2”
1: Rate A 2: Rate B
2.00
1.00 1 1 1 2 1 2
2
0.00
0.00 3.00 6.00 9.00 12.00
Time
2. Changing the “Time Delay”: Figures 15 and 16 show the behavior of the second run.
For the second run, the “Time Delay” was changed from 2 to 4. As a result, the
equilibrium value for “Level 1” moved from 2 to 4. In addition, the approach to
equilibrium was half the speed because the time constant was twice as large. As before,
the change in “Level 2” mirrored “Level 1,” so “Level 2” went from 4 to 0.
1: Level 1 2: Level 2
4.00
1
2 1
2
1 2
0.00
-4.00
0.00 3.00 6.00 9.00 12.00
Time
1: Rate A 2: Rate B
2.00
1.00 1 1 1 1
2
2
0.00
0.00 3.00 6.00 9.00 12.00
Time
Figure 16: Second run behavior of “Rate A” and “Rate B”
34 D-4451-2
3. Changing initial conditions: Figures 17 and 18 show the behavior of the model when
the initial value of “Level 1” is changed from 0 to 4, and “Level 2” is initialized at 0. For
the third model run, the time constant and equilibrium value for “Level 1” are the same as
in the first run. However, because the initial value of “Level 1” is different, the model
takes a different path to equilibrium. The first noticeable changes are the initial slopes for
the levels. Because “Rate B” is not initially 0, but rather 2, the initial slopes of “Level 1”
and “Level 2” are –1 and +1 respectively (the reverse of the first run). Again, the behavior
of “Level 2” mirrors that of “Level 1,” so “Level 2” increases from 0 to 2.
1: Level 1 2: Level 2
4.00
1
1
1 1 2
2 2
0.00
-4.00
0.00 3.00 6.00 9.00 12.00
Time
1: Rate A 2: Rate B
2.00
2
1.00 1 1 1 2 1 2
0.00
0.00 3.00 6.00 9.00 12.00
Time
7. APPENDIX
Units: structures
INFLOWS:
Labor_Availability_Multiplier *
Land_Availability_Multiplier
DOCUMENT: Rate of construction of business structures. It is affected by the
number of already existing business structures, a normal construction fraction, and
the availability of land and labor.
Units: structures/year
OUTFLOWS:
Demolition = Business_Structures/Average_Structure_Lifetime
Units: structures/year
Average_Structure_Lifetime = 50
Units: years
Construction_Fraction= 0.02
DOCUMENT: Normal rate of construction of business structure per existing
business structure.
Units: 1/year
Jobs_per_Structure = 20
Units: jobs/structure
Labor_Availability = Labor_Force/Jobs
D-4451-2 37
DOCUMENT: The ratio between the labor force and the number of available
jobs.
Units: people/job
Land_Area = 5000
Units: acres
Land_per_Structure = 1
Units: acres/structure
Labor_Availability_Multiplier = GRAPH(Labor_Availability)
(0.00, 0.05), (0.2, 0.105), (0.4, 0.225), (0.6, 0.36), (0.8, 0.54), (1.00, 0.84), (1.20,
Units: dimensionless
Land_Availability_Multiplier = GRAPH(Land_Fraction_Occupied)
(0.00, 1.00), (0.1, 2.30), (0.2, 2.98), (0.3, 3.34), (0.4, 3.48), (0.5, 3.50), (0.6,
construction. When nearly all the land is available, Construction is slow because
there are very few businesses around to provide capital. As more of the Land Area
Units: dimensionless
Population Sector
Population(t) = Population(t-dt)+(In_Migration + Births - Out_Migration - Deaths)*dt
INIT Population = 50000
DOCUMENT: The number of people living in the urban area.
Units: people
INFLOWS:
Job_Attractiveness_Multiplier
38 D-4451-2
DOCUMENT: The number of people who move into the urban area each year. It
is affected by the current population, a normal fraction of in-migration, and the
availability of jobs.
units: people/year
Units: people/year
OUTFLOWS:
DOCUMENT: The number of people who leave the urban area each year.
Units: people/year
Units: people/year
Average_Lifetime = 66.7
DOCUMENT: The average lifetime of a person living in the urban area is
approximately 67 years.
Units: years
Birth_Fraction = 0.015
Units: 1/year
In_Migration_Normal = 0.08
DOCUMENT: The fraction of the population that immigrates each year under
normal conditions.
Units: 1/year
Labor_Participation_Fraction = 0.35
DOCUMENT: The fraction of the total population that is willing and able to
work.
Units: dimensionless
Out_Migration_Fraction = 0.08
Units: 1/year
D-4451-2 39
Job_Attractiveness_Multiplier = GRAPH(Labor_Availability)
(0.00, 4.00), (0.2, 3.95), (0.4, 3.82), (0.6, 3.56), (0.8, 2.86), (1.00, 1.24), (1.20,
0.64), (1.40, 0.32), (1.60, 0.18), (1.80, 0.105), (2.00, 0.075)
DOCUMENT: The multiplier shows the effect of Labor Availability on
immigration. When there are many available jobs (Labor Availability is less than
1), people are inclined to move to the city. When there are not enough available
jobs (Labor Availability is greater than 1), people tend not to immigrate to the
urban area.
Units: dimensionless
INIT Level_1 = 4
Units: gallons
INFLOWS:
Rate_A = 1
Units: gallons/minute
OUTFLOWS:
Rate_B = Level_1/Time_Delay
Units: gallons/minute
INIT Level_2 = 0
Units: gallons
INFLOWS:
Rate_B = Level_1/Time_Delay
Units: gallons/minute
OUTFLOWS:
Rate_A = 1
Units: gallons/minute
Time_Delay = 2
Units: minutes
40 D-4451-2
Vensim Examples:
Modeling Exercises
Section 2
Business
Structures demolition
construction
AVERAGE
STRUCTURE
LIFETIME
LOOKUP FRACTION
Figure 19: Vensim equivalent of Figure 4: model of urban growth and stagnation
D-4451-2 41
Units: jobs/structures
The number of jobs provided by each structure.
Units: acres
The total land area available for commercial development.
1 3
3 2 3
3 3 3
2 1
0 structures 2 1
1
0 people 12
0.8 people/jobs
0 8 16 24 32 40 48 56 64 72 80
Time (year)
Business Structures : 1 1 1 1 1 1 1 structures
Population : 2 2 2 2 2 2 2 2 2 people
labor availability : 3 3 3 3 3 3 3 people/jobs
Figure 20: Vensim equivalent of Figure 8: Base run of the Urban Growth Model
D-4451-2 47
8,000 structures
500,000 people 12 12 12 12 1 2 1
12
1.2 people/jobs 3
3
3 3 3 3 3
12
12
3
0 structures
0 people
0.8 people/jobs
0 20 40 60 80 100
Time (Year)
Business Structures : 50% increase 1 1 1 1 1 structures
Population : 50% increase 2 2 2 2 2 2 people
Labor Availability : 50% increase 3 3 3 3 3 people/jobs
Figure 21: Vensim correction of Figure 9: Equilibrium for 50% step increase in available
“LAND AREA”
INITIAL LEVEL 2
TIME DELAY
Level 2
rate a rate b
Level 1
INITIAL LEVEL 1
Figure 22: Vensim Equivalent of Figure 1: A simple model used for practicing mental
simulation skills.
48 D-4451-2
Units: minutes
-4 gallons
0 2 4 6 8 10 12
Time (minutes)
Level 1 : 1 1 1 1 1 1 1 gallons
Level 2 : 2 2 2 2 2 2 2 gallons
Figure 23: Vensim equivalent of Figure 13: First run behavior of “Level 1 and Level 2”
(Level 1 is initially 0 and level 2 is initially 4 for the first and second runs)
50 D-4451-2
2 gallons/minutes
1 gallons/minutes
1 1 1 1 1 1
2 2 2 1
2 2
2
2
2
0 gallons/minutes 2
0 2 4 6 8 10 12
Time (minutes)
rate a : 1 1 1 1 1 1 gallons/minutes
rate b : 2 2 2 2 2 gallons/minutes
Figure 24: Vensim equivalent of Figure 14: First run behavior of “rate a” and “rate b”
-4 gallons
0 2 4 6 8 10 12
Time (minutes)
Level 1 : 1 1 1 1 1 1 1 gallons
Level 2 : 2 2 2 2 2 2 2 gallons
Figure 25: Vensim equivalent of Figure 15: Second run behavior of “Level 1” and “Level
2”
D-4451-2 51
2 gallons/minutes
1 gallons/minutes
1 1 1 1 1 1 1 1
2
1
2
1
2 1
2 2
2
2
2
0 gallons/minutes 2
0 2 4 6 8 10 12
Time (minutes)
rate a : 1 1 1 1 1 1 gallons/minutes
rate b : 2 2 2 2 2 gallons/minutes
Figure 26: Vensim equivalent of Figure 16: Second run behavior of “rate a” and “rate b”
-4 gallons
0 2 4 6 8 10 12
Time (minutes)
Level 1 : 1 1 1 1 1 1 1 gallons
Level 2 : 2 2 2 2 2 2 2 gallons
Figure 27: Vensim equivalent of Figure 17: Third run behavior of “Level 1” and “Level 2”
52 D-4451-2
2 gallons/minutes
2
2
1 gallons/minutes 2
2 21 2
1 1 1 12 2 1 2 1
0 gallons/minutes
0 2 4 6 8 10 12
Time (minutes)
rate a : 1 1 1 1 1 1 gallons/minutes
rate b : 2 2 2 2 2 gallons/minutes
Figure 28: Vensim equivalent of Figure 18: Third run behavior of “rate a” and “rate b”