Skip to content

Population Simulator with Causal Loop Diagram

To run this on your class website, just copy the following line into the HTML on your website.

<iframe src="http://dmccreary.github.io/systems-thinking/sims/population-simulator/main.html" height="505px" scrolling="no"></iframe>

Run the Population Simulator MicroSim Edit the Population Simulator MicroSim on the P5.js Editor Site

Original Full Main

This one was generated by Claude Sonnet 4 in Aug of 2025.

Full Main

Sample Lesson Plan for College Freshmen

Population Growth MicroSim: Lesson Plan for Systems Thinking

Lesson Overview

Target Audience: College Freshmen
Course: Introduction to Systems Thinking
Duration: 75 minutes (50 min instruction + 25 min lab)
Learning Mode: Interactive simulation with guided discovery

Learning Objectives

By the end of this lesson, students will be able to:

  1. Identify the key components of a reinforcing feedback loop
  2. Explain how small changes in birth rate create exponential population growth
  3. Predict system behavior based on causal loop diagram structure
  4. Analyze the relationship between feedback loops and exponential growth patterns
  5. Apply systems thinking vocabulary to describe population dynamics

Pre-Lesson Preparation

Required Materials: - Computer lab with web browsers - Population Growth MicroSim (population-simulator.js) - Student worksheet (provided below) - Whiteboard/projector for class discussion

Prerequisites: - Basic understanding of cause and effect relationships - Familiarity with reading simple graphs

Lesson Structure

Phase 1: Hook and Context Setting (10 minutes)

Opening Question: "If a city has 100,000 people and grows by 2% per year, how many people will it have after 10 years?"

Allow students to guess - most will calculate linear growth (120,000) rather than exponential (122,019)

Transition: "Today we'll explore why our intuition about growth is often wrong, and how systems thinking helps us understand exponential patterns."

Phase 2: Introduction to Causal Loop Diagrams (15 minutes)

Mini-Lecture Topics: - What is a system? (interconnected parts working toward a purpose) - Feedback loops: reinforcing vs. balancing - Causal loop diagram notation: - Nodes (system variables) - Arrows (causal relationships)
- Polarity (+ or -) - Loop markers (R or B)

Visual Aid: Draw simple thermostat example on board as balancing loop

Phase 3: Guided Simulator Exploration (25 minutes)

Step 1: System Structure Analysis (5 minutes) Have students open the simulator and examine the left panel:

Guided Questions: - What are the two variables in this system? - What type of loop is shown? How do you know? - Trace the arrows: How does population affect birth rate? How does birth rate affect population?

Step 2: Baseline Simulation (10 minutes) Students run simulation with default settings (birth rate = 0.02):

Observation Tasks: - Watch population node pulse during simulation - Note the shape of the growth curve - Record key data points (population at t=10, t=20, t=30)

Step 3: Parameter Experimentation (10 minutes) Students test different birth rates and observe results:

Birth Rate Prediction Actual Result (t=30)
0.01
0.02
0.05
0.10

Phase 4: Pattern Recognition and Analysis (15 minutes)

Class Discussion Questions:

  1. Pattern Identification: What happens to the growth curve as birth rate increases?

  2. System Structure Connection: Why does this particular loop structure create exponential growth?

  3. Real-World Applications: Where else do we see this same pattern?

  4. Compound interest
  5. Viral spread
  6. Social media followers
  7. Economic inflation

Key Insight: Reinforcing loops with positive feedback create exponential behavior, not linear behavior.

Phase 5: Deeper Systems Analysis (10 minutes)

Critical Thinking Prompts:

  1. Limitations: What's missing from this simple model? What factors might limit population growth in reality?

  2. System Boundaries: What would happen if we added carrying capacity? Resource constraints?

  3. Delays: How might delays in the system change the behavior?

Introduce Concept: This leads to next lesson on "Limits to Growth" archetype

Student Worksheet

Part A: System Structure Analysis

  1. Draw the causal loop diagram from the simulator below:

[Space for diagram]

  1. Label each arrow with its polarity (+ or -)

  2. What type of loop is this? ______

  3. In your own words, explain how this loop works:


Part B: Experimental Data

Complete the table by running simulations with different birth rates:

Birth Rate Population at t=10 Population at t=20 Population at t=30 Growth Pattern
0.01
0.02
0.05
0.10

Part C: Analysis Questions

  1. Describe the relationship between birth rate and population growth:

  1. Why is the growth curve shaped the way it is?

  1. Give three real-world examples of similar reinforcing loops:

a. ____________

b. ____________

c. ____________

Self-Assessment Quiz

Question 1

A reinforcing feedback loop always creates:

a) Linear growth b) Oscillating behavior
c) Exponential growth or decline d) Steady-state balance

Show Answer

c) Exponential growth or decline

Reinforcing loops amplify change, creating accelerating growth (if positive feedback) or accelerating decline (if negative feedback). The key characteristic is that change feeds back to create more change in the same direction.

Question 2

In the population simulator, if you double the birth rate, what happens to the population after 30 time units?

a) It doubles b) It more than doubles
c) It increases by exactly 30 units d) It stays the same

Show Answer

b) It more than doubles

Because this is exponential growth, doubling the growth rate results in much more than double the final population. The compounding effect means small changes in the rate have dramatic effects on the outcome.

Question 3

Which of the following best describes the relationship between Population and Birth Rate in the simulator?

a) Population → Birth Rate (negative), Birth Rate → Population (positive) b) Population → Birth Rate (positive), Birth Rate → Population (negative)
c) Population → Birth Rate (positive), Birth Rate → Population (positive) d) Population → Birth Rate (negative), Birth Rate → Population (negative)

Show Answer

c) Population → Birth Rate (positive), Birth Rate → Population (positive)

More population leads to more births (positive relationship), and higher birth rate leads to larger population (positive relationship). Both arrows in the loop have positive polarity, creating a reinforcing loop.

Question 4

Based on systems thinking principles, what would most likely happen if we added "Death Rate" to this model?

a) The system would stop growing entirely b) We would create a balancing loop that could limit growth c) The growth would become linear instead of exponential d) The reinforcing loop would become stronger

Show Answer

b) We would create a balancing loop that could limit growth

Death rate would create a balancing effect: as population increases, deaths increase, which decreases population. This balancing loop would compete with the reinforcing growth loop, potentially creating limits to growth or steady-state behavior.

Question 5

If you wanted to slow down population growth in this system, which leverage point would be most effective?

a) Increase the initial population b) Decrease the birth rate
c) Run the simulation for less time d) Change the graph scale

Show Answer

b) Decrease the birth rate

The birth rate is a key parameter in the reinforcing loop. Small decreases in birth rate have large effects on long-term population due to the compounding nature of exponential growth. This demonstrates an important systems principle: parameters in feedback loops are often high-leverage intervention points.

Extension Activities

For Advanced Students

  1. Mathematical Modeling: Calculate the exact population formula P(t) = P₀ × e^(r×t) and compare with simulation results
  2. System Redesign: Sketch how you would modify the diagram to include carrying capacity
  3. Research Project: Find real population data and identify when growth follows this pattern vs. when it doesn't

For Struggling Students

  1. Vocabulary Practice: Create a glossary of systems terms with examples
  2. Pattern Recognition: Use physical manipulatives to model the feedback loop
  3. Real-World Connections: Interview family members about compound interest or savings growth

Assessment Rubric

Criteria Excellent (4) Proficient (3) Developing (2) Beginning (1)
System Structure Accurately identifies all loop components and relationships Identifies most components with minor errors Identifies some components but misses key relationships Shows little understanding of system structure
Pattern Analysis Clearly explains exponential growth and its causes Explains growth pattern with some systems reasoning Describes pattern but limited connection to system structure Minimal understanding of growth patterns
Real-World Application Provides multiple relevant examples with clear connections Provides good examples with some explanation Provides examples but limited explanation Few or irrelevant examples
Systems Vocabulary Uses terminology accurately and appropriately Uses most terms correctly Some correct use of terminology Minimal use of systems vocabulary

Wrap-Up and Next Steps

Key Takeaways: - Reinforcing loops create exponential behavior, not linear - Small changes in feedback loops can have dramatic long-term effects
- Systems thinking helps us recognize patterns across different domains

Preview Next Lesson: "But populations can't grow forever... next time we'll explore what happens when reinforcing loops hit limits."

Homework: Find one example of exponential growth in the news and identify the underlying reinforcing loop structure.