Add statistics and game theory 101 activities plus pedagogical fixes
This commit is contained in:
parent
e4ab13ae78
commit
31e357e8bf
2 changed files with 1526 additions and 0 deletions
786
research/activity40-statistics-101.yaml
Normal file
786
research/activity40-statistics-101.yaml
Normal file
|
|
@ -0,0 +1,786 @@
|
|||
default_max_attempts_per_step: 3
|
||||
classifier_model: "MODEL_1"
|
||||
feedback_model: "MODEL_1"
|
||||
tokens_for_ai_rubric: |
|
||||
Evaluate the student's understanding of basic statistical concepts.
|
||||
|
||||
Consider:
|
||||
- Grasp of central tendency (mean, median, mode)
|
||||
- Understanding of variation and spread
|
||||
- Ability to interpret data
|
||||
- Recognition of distributions
|
||||
- Practical application of concepts
|
||||
|
||||
Provide clear explanations with real-world examples.
|
||||
|
||||
sections:
|
||||
- section_id: introduction
|
||||
title: Welcome to Statistics
|
||||
steps:
|
||||
- step_id: welcome
|
||||
title: Why Statistics Matters
|
||||
content_blocks:
|
||||
- "# Statistics 101: Making Sense of Data 📊"
|
||||
- ""
|
||||
- "**Welcome to the world of statistics!**"
|
||||
- ""
|
||||
- "Statistics helps us:"
|
||||
- "- Understand patterns in data"
|
||||
- "- Make informed decisions"
|
||||
- "- Test hypotheses scientifically"
|
||||
- "- Predict future outcomes"
|
||||
- "- Avoid being fooled by randomness"
|
||||
- ""
|
||||
- "**You'll learn:**"
|
||||
- "✓ Measures of central tendency (mean, median, mode)"
|
||||
- "✓ Measures of spread (range, variance, standard deviation)"
|
||||
- "✓ Probability basics"
|
||||
- "✓ Distributions and what they mean"
|
||||
- "✓ How to interpret data"
|
||||
- ""
|
||||
- "**Real-world applications:**"
|
||||
- "- Medicine (clinical trial results)"
|
||||
- "- Business (sales forecasting)"
|
||||
- "- Sports (player performance)"
|
||||
- "- Science (experimental data)"
|
||||
- "- Everyday decisions (risk assessment)"
|
||||
question: Ready to learn how to understand data and make better decisions?
|
||||
tokens_for_ai: |
|
||||
Accept positive responses as 'ready'.
|
||||
Language preference as 'set_language'.
|
||||
Otherwise 'off_topic'.
|
||||
buckets:
|
||||
- ready
|
||||
- set_language
|
||||
- off_topic
|
||||
transitions:
|
||||
ready:
|
||||
content_blocks:
|
||||
- "Excellent! Let's start with the basics of describing data! 📈"
|
||||
next_section_and_step: central_tendency:step_1
|
||||
set_language:
|
||||
content_blocks:
|
||||
- "Language preference updated!"
|
||||
metadata_add:
|
||||
language: "the-users-response"
|
||||
counts_as_attempt: false
|
||||
next_section_and_step: introduction:welcome
|
||||
off_topic:
|
||||
content_blocks:
|
||||
- "Let's learn statistics together! Are you ready to begin?"
|
||||
counts_as_attempt: false
|
||||
next_section_and_step: introduction:welcome
|
||||
|
||||
- section_id: central_tendency
|
||||
title: Describing Data - Central Tendency
|
||||
steps:
|
||||
- step_id: step_1
|
||||
title: The Center of Data
|
||||
content_blocks:
|
||||
- "## Central Tendency: Finding the 'Middle' 📍"
|
||||
- ""
|
||||
- "When we have a dataset, we often want to describe it with a single number that represents the 'typical' or 'central' value."
|
||||
- ""
|
||||
- "**Three measures of central tendency:**"
|
||||
- ""
|
||||
- "**1. Mean (Average)**"
|
||||
- "- Sum all values and divide by the count"
|
||||
- "- Most commonly used"
|
||||
- "- Sensitive to extreme values (outliers)"
|
||||
- "- Example: Test scores 80, 85, 90, 95 → Mean = (80+85+90+95)/4 = 87.5"
|
||||
- ""
|
||||
- "**2. Median (Middle Value)**"
|
||||
- "- The middle number when data is sorted"
|
||||
- "- Not affected by outliers"
|
||||
- "- Better for skewed data"
|
||||
- "- Example: Salaries $30k, $35k, $40k, $45k, $200k → Median = $40k"
|
||||
- ""
|
||||
- "**3. Mode (Most Frequent)**"
|
||||
- "- The value that appears most often"
|
||||
- "- Useful for categorical data"
|
||||
- "- Can have multiple modes or no mode"
|
||||
- "- Example: Shoe sizes 7, 8, 8, 8, 9, 10 → Mode = 8"
|
||||
- ""
|
||||
- "**When to use which:**"
|
||||
- "- Mean: Normally distributed data without outliers"
|
||||
- "- Median: Skewed data or data with outliers (like income)"
|
||||
- "- Mode: Categorical data or finding most common value"
|
||||
question: "You have exam scores: 60, 70, 75, 80, 85, 90, 95. What is the median score?"
|
||||
tokens_for_ai: |
|
||||
The median is the middle value when sorted.
|
||||
Scores: 60, 70, 75, 80, 85, 90, 95 (7 values)
|
||||
Middle value (4th position) = 80
|
||||
|
||||
Categorize as:
|
||||
- correct: Says 80 or "eighty"
|
||||
- calculated_mean: Says 79.3 or ~79 (they calculated the mean instead)
|
||||
- close: Says 75 or 85 (one position off)
|
||||
- confused: Incorrect answer showing confusion
|
||||
- set_language: Language preference
|
||||
- off_topic: Unrelated
|
||||
feedback_tokens_for_ai: |
|
||||
If correct:
|
||||
- Praise them! Explain why 80 is the middle value.
|
||||
- Note that with odd numbers, median is straightforward.
|
||||
|
||||
If they calculated mean:
|
||||
- Good effort but that's the mean!
|
||||
- Explain median is the MIDDLE value when sorted, not the average.
|
||||
|
||||
If close or confused:
|
||||
- Show the sorted list: 60, 70, 75, [80], 85, 90, 95
|
||||
- The middle position (4th out of 7) is 80.
|
||||
buckets:
|
||||
- correct
|
||||
- calculated_mean
|
||||
- close
|
||||
- confused
|
||||
- set_language
|
||||
- off_topic
|
||||
transitions:
|
||||
correct:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
Perfect! 80 is the median - the middle value.
|
||||
With 7 values, the 4th position is the center.
|
||||
Median is great because outliers don't affect it!
|
||||
metadata_add:
|
||||
score: "n+2"
|
||||
concepts_mastered: "n+1"
|
||||
next_section_and_step: central_tendency:step_2
|
||||
calculated_mean:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
That's the mean (average), not the median!
|
||||
Median = middle value when sorted.
|
||||
For 60,70,75,[80],85,90,95 → median is 80.
|
||||
The mean would be all values summed divided by 7.
|
||||
metadata_add:
|
||||
score: "n+1"
|
||||
next_section_and_step: central_tendency:step_2
|
||||
close:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
Close! You're near the middle.
|
||||
Sort the values: 60, 70, 75, [80], 85, 90, 95
|
||||
The exact middle (4th position out of 7) is 80.
|
||||
next_section_and_step: central_tendency:step_1
|
||||
confused:
|
||||
content_blocks:
|
||||
- "The median is the MIDDLE value when you sort the numbers from smallest to largest."
|
||||
- "With 7 values, the 4th number is in the middle."
|
||||
next_section_and_step: central_tendency:step_1
|
||||
set_language:
|
||||
content_blocks:
|
||||
- "Language updated!"
|
||||
metadata_add:
|
||||
language: "the-users-response"
|
||||
counts_as_attempt: false
|
||||
next_section_and_step: central_tendency:step_1
|
||||
off_topic:
|
||||
content_blocks:
|
||||
- "Let's find the median! Sort the scores and identify the middle value."
|
||||
next_section_and_step: central_tendency:step_1
|
||||
|
||||
- step_id: step_2
|
||||
title: Mean vs Median with Outliers
|
||||
content_blocks:
|
||||
- "## The Power of Median: Handling Outliers 🎯"
|
||||
- ""
|
||||
- "**Why median matters: The salary example**"
|
||||
- ""
|
||||
- "Imagine a small company with 5 employees and their salaries:"
|
||||
- "- Employee A: $40,000"
|
||||
- "- Employee B: $45,000"
|
||||
- "- Employee C: $50,000"
|
||||
- "- Employee D: $55,000"
|
||||
- "- CEO: $500,000"
|
||||
- ""
|
||||
- "**Mean salary:** ($40k + $45k + $50k + $55k + $500k) / 5 = $138,000"
|
||||
- "**Median salary:** $50,000 (the middle value)"
|
||||
- ""
|
||||
- "**Which better represents the 'typical' employee salary?**"
|
||||
- "The median! The mean is dragged up by the CEO's outlier salary."
|
||||
- ""
|
||||
- "**This is why:**"
|
||||
- "- Median home prices are reported (not mean)"
|
||||
- "- Median household income is used (not mean)"
|
||||
- "- Outliers don't distort the median"
|
||||
- ""
|
||||
- "**When one extreme value can mislead, use median!**"
|
||||
question: "A neighborhood has 6 home prices: $200k, $210k, $220k, $230k, $240k, and $2,000k. If someone says 'the average home price is $516k,' why might that be misleading? What would better represent typical home prices?"
|
||||
tokens_for_ai: |
|
||||
They should recognize that:
|
||||
- The $2 million home is an outlier
|
||||
- Mean is misleading ($516k)
|
||||
- Median would be better (between $220k and $230k = $225k)
|
||||
|
||||
Categorize as:
|
||||
- excellent_understanding: Mentions outlier skewing mean, median better
|
||||
- understands_outlier: Recognizes the expensive house is the problem
|
||||
- suggests_median: Says median without explaining why
|
||||
- partial_understanding: On the right track but incomplete
|
||||
- set_language: Language preference
|
||||
- off_topic: Unrelated
|
||||
feedback_tokens_for_ai: |
|
||||
Validate their understanding of outliers affecting mean!
|
||||
|
||||
Key points:
|
||||
- The $2M home is an outlier (way higher than others)
|
||||
- Mean gets pulled up to $516k (not representative)
|
||||
- Median would be $225k (between 220 and 230) - much more typical
|
||||
- This is why real estate uses median prices!
|
||||
|
||||
Praise their critical thinking about statistics.
|
||||
buckets:
|
||||
- excellent_understanding
|
||||
- understands_outlier
|
||||
- suggests_median
|
||||
- partial_understanding
|
||||
- set_language
|
||||
- off_topic
|
||||
transitions:
|
||||
excellent_understanding:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
Brilliant analysis!
|
||||
Yes - the $2M outlier drags the mean to $516k, misleading!
|
||||
The median ($225k) better represents typical homes.
|
||||
This is exactly why statistics literacy matters!
|
||||
metadata_add:
|
||||
score: "n+2"
|
||||
concepts_mastered: "n+1"
|
||||
next_section_and_step: spread:step_1
|
||||
understands_outlier:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
Exactly! The $2M home is an outlier.
|
||||
It pulls the mean to $516k, but most homes are $200-240k.
|
||||
The median ($225k) would be more representative.
|
||||
Great critical thinking!
|
||||
metadata_add:
|
||||
score: "n+1"
|
||||
next_section_and_step: spread:step_1
|
||||
suggests_median:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
Good instinct - median is better here!
|
||||
Why? The $2M outlier skews the mean to $516k.
|
||||
But the median ($225k) represents the typical home price.
|
||||
Outliers don't affect median - that's its power!
|
||||
next_section_and_step: spread:step_1
|
||||
partial_understanding:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
You're on the right track!
|
||||
The key: one $2M home among $200-240k homes.
|
||||
This outlier pulls mean to $516k (misleading).
|
||||
Median ($225k) better shows typical prices.
|
||||
next_section_and_step: spread:step_1
|
||||
set_language:
|
||||
content_blocks:
|
||||
- "Language updated!"
|
||||
metadata_add:
|
||||
language: "the-users-response"
|
||||
counts_as_attempt: false
|
||||
next_section_and_step: central_tendency:step_2
|
||||
off_topic:
|
||||
content_blocks:
|
||||
- "Think about: Does $516k accurately represent what most homes in this neighborhood cost?"
|
||||
next_section_and_step: central_tendency:step_2
|
||||
|
||||
- section_id: spread
|
||||
title: Measuring Spread - Variability
|
||||
steps:
|
||||
- step_id: step_1
|
||||
title: Understanding Variability
|
||||
content_blocks:
|
||||
- "## Spread: How Much Do Values Vary? 📏"
|
||||
- ""
|
||||
- "Central tendency tells us the 'middle,' but doesn't tell the full story."
|
||||
- ""
|
||||
- "**Consider two classes:**"
|
||||
- "- Class A scores: 80, 82, 78, 81, 79 (mean = 80)"
|
||||
- "- Class B scores: 50, 70, 80, 90, 110 (mean = 80)"
|
||||
- ""
|
||||
- "Same mean, VERY different distributions!"
|
||||
- "Class A is consistent. Class B is all over the place."
|
||||
- ""
|
||||
- "**Measures of Spread:**"
|
||||
- ""
|
||||
- "**1. Range**"
|
||||
- "- Maximum value minus minimum value"
|
||||
- "- Simple but sensitive to outliers"
|
||||
- "- Class A: 82 - 78 = 4"
|
||||
- "- Class B: 110 - 50 = 60"
|
||||
- ""
|
||||
- "**2. Variance**"
|
||||
- "- Average of squared differences from mean"
|
||||
- "- Measures how spread out values are"
|
||||
- "- Larger variance = more spread"
|
||||
- ""
|
||||
- "**3. Standard Deviation (SD)**"
|
||||
- "- Square root of variance"
|
||||
- "- Same units as original data (easier to interpret)"
|
||||
- "- Most commonly used measure of spread"
|
||||
- ""
|
||||
- "**Why spread matters:**"
|
||||
- "- Quality control (consistency in manufacturing)"
|
||||
- "- Risk assessment (investment volatility)"
|
||||
- "- Performance evaluation (consistency vs streaky)"
|
||||
- "- Research (reliability of measurements)"
|
||||
question: "Two basketball players both average 20 points per game. Player A's scores: 18, 19, 20, 21, 22. Player B's scores: 5, 10, 20, 30, 35. Which player is more consistent, and why does that matter?"
|
||||
tokens_for_ai: |
|
||||
Player A is more consistent (low spread/variance).
|
||||
Player B is inconsistent/volatile (high spread).
|
||||
|
||||
Look for understanding that:
|
||||
- Player A has consistent performance (small variation)
|
||||
- Player B is unpredictable (large variation)
|
||||
- Consistency matters for reliability/strategy
|
||||
|
||||
Categorize as:
|
||||
- excellent_answer: Identifies Player A as consistent AND explains why it matters
|
||||
- identifies_player_a: Correctly says Player A is more consistent
|
||||
- identifies_inconsistency: Recognizes the difference in variability
|
||||
- basic_answer: Mentions one player without explaining
|
||||
- set_language: Language preference
|
||||
- off_topic: Unrelated
|
||||
feedback_tokens_for_ai: |
|
||||
Affirm their understanding of consistency/spread!
|
||||
|
||||
Key points:
|
||||
- Player A: very consistent (range 18-22, low variation)
|
||||
- Player B: unpredictable (range 5-35, high variation)
|
||||
- Consistency matters: reliable performance, easier to plan around
|
||||
- Player B might have higher ceiling but less reliable
|
||||
|
||||
Connect to real sports analysis and standard deviation concept.
|
||||
buckets:
|
||||
- excellent_answer
|
||||
- identifies_player_a
|
||||
- identifies_inconsistency
|
||||
- basic_answer
|
||||
- set_language
|
||||
- off_topic
|
||||
transitions:
|
||||
excellent_answer:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
Perfect analysis!
|
||||
Player A: 18-22 (consistent, low spread).
|
||||
Player B: 5-35 (volatile, high spread).
|
||||
Consistency means reliability - you know what to expect!
|
||||
This is what standard deviation measures!
|
||||
metadata_add:
|
||||
score: "n+2"
|
||||
concepts_mastered: "n+1"
|
||||
next_section_and_step: probability:step_1
|
||||
identifies_player_a:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
Correct! Player A is much more consistent.
|
||||
Range: A is 18-22 (4 points), B is 5-35 (30 points!).
|
||||
Low spread = predictable performance.
|
||||
High spread = unpredictable, risky.
|
||||
That's what measuring spread tells us!
|
||||
metadata_add:
|
||||
score: "n+1"
|
||||
next_section_and_step: probability:step_1
|
||||
identifies_inconsistency:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
Good observation about the difference!
|
||||
Player A varies 18-22 (tight, consistent).
|
||||
Player B varies 5-35 (wild, unpredictable).
|
||||
Consistency = reliability. This is why we measure spread!
|
||||
next_section_and_step: probability:step_1
|
||||
basic_answer:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
Let's look at the ranges:
|
||||
Player A: 18, 19, 20, 21, 22 (very tight - consistent!)
|
||||
Player B: 5, 10, 20, 30, 35 (all over - inconsistent!)
|
||||
Consistency means you can rely on them. Spread measures this!
|
||||
next_section_and_step: probability:step_1
|
||||
set_language:
|
||||
content_blocks:
|
||||
- "Language updated!"
|
||||
metadata_add:
|
||||
language: "the-users-response"
|
||||
counts_as_attempt: false
|
||||
next_section_and_step: spread:step_1
|
||||
off_topic:
|
||||
content_blocks:
|
||||
- "Compare the ranges: Player A (18-22) vs Player B (5-35). Who's more predictable?"
|
||||
next_section_and_step: spread:step_1
|
||||
|
||||
- section_id: probability
|
||||
title: Probability Basics
|
||||
steps:
|
||||
- step_id: step_1
|
||||
title: Understanding Probability
|
||||
content_blocks:
|
||||
- "## Probability: Quantifying Uncertainty 🎲"
|
||||
- ""
|
||||
- "**What is probability?**"
|
||||
- "A measure of how likely something is to happen."
|
||||
- ""
|
||||
- "**Probability scale:**"
|
||||
- "- 0 = Impossible (0%)"
|
||||
- "- 0.5 = Even chance (50%)"
|
||||
- "- 1 = Certain (100%)"
|
||||
- ""
|
||||
- "**Basic probability formula:**"
|
||||
- "P(event) = (Number of favorable outcomes) / (Total possible outcomes)"
|
||||
- ""
|
||||
- "**Example: Fair die**"
|
||||
- "- P(rolling a 3) = 1/6 ≈ 0.167 (16.7%)"
|
||||
- "- P(rolling even) = 3/6 = 0.5 (50%)"
|
||||
- "- P(rolling 1-6) = 6/6 = 1 (100%)"
|
||||
- ""
|
||||
- "**Key concepts:**"
|
||||
- ""
|
||||
- "**Independent events:**"
|
||||
- "- One doesn't affect the other"
|
||||
- "- Coin flips, die rolls"
|
||||
- "- P(heads then heads) = 0.5 × 0.5 = 0.25"
|
||||
- ""
|
||||
- "**Dependent events:**"
|
||||
- "- One affects the probability of the other"
|
||||
- "- Drawing cards without replacement"
|
||||
- ""
|
||||
- "**Common misconceptions:**"
|
||||
- "- Gambler's fallacy: 'It's due!' (No - each event is independent)"
|
||||
- "- Hot hand fallacy: Past streaks predict future (they don't in random events)"
|
||||
question: "You flip a fair coin 5 times and get heads every time. What's the probability the 6th flip is heads? Why?"
|
||||
tokens_for_ai: |
|
||||
Correct answer: 50% or 0.5 or 1/2
|
||||
|
||||
Key understanding: Each flip is INDEPENDENT.
|
||||
Past flips don't affect future flips.
|
||||
|
||||
Common wrong answer: "It's more likely to be tails" (gambler's fallacy)
|
||||
|
||||
Categorize as:
|
||||
- correct_with_reasoning: Says 50% AND explains independence
|
||||
- correct_answer: Says 50% without full explanation
|
||||
- gamblers_fallacy: Says tails is more likely because "it's due"
|
||||
- pattern_thinking: Thinks the pattern will continue
|
||||
- confused: Other incorrect reasoning
|
||||
- set_language: Language preference
|
||||
- off_topic: Unrelated
|
||||
feedback_tokens_for_ai: |
|
||||
If correct:
|
||||
- Excellent! Each flip is independent.
|
||||
- Past results don't affect future flips.
|
||||
- The coin has no "memory" - always 50/50.
|
||||
|
||||
If gambler's fallacy:
|
||||
- Common misconception! This is the "gambler's fallacy."
|
||||
- Each flip is independent - past doesn't affect future.
|
||||
- It's still 50/50, even after 100 heads in a row!
|
||||
- The coin doesn't "owe" you tails.
|
||||
|
||||
Explain independence clearly.
|
||||
buckets:
|
||||
- correct_with_reasoning
|
||||
- correct_answer
|
||||
- gamblers_fallacy
|
||||
- pattern_thinking
|
||||
- confused
|
||||
- set_language
|
||||
- off_topic
|
||||
transitions:
|
||||
correct_with_reasoning:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
Perfect understanding!
|
||||
Each coin flip is independent - past doesn't affect future.
|
||||
The coin has no memory. Always 50/50!
|
||||
You've avoided the gambler's fallacy - great!
|
||||
metadata_add:
|
||||
score: "n+2"
|
||||
concepts_mastered: "n+1"
|
||||
next_section_and_step: distributions:step_1
|
||||
correct_answer:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
Correct - still 50%!
|
||||
Why? Each flip is INDEPENDENT.
|
||||
Past flips don't affect future flips.
|
||||
The coin doesn't "remember" or "balance out."
|
||||
Great job avoiding the gambler's fallacy!
|
||||
metadata_add:
|
||||
score: "n+1"
|
||||
next_section_and_step: distributions:step_1
|
||||
gamblers_fallacy:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
Common misconception! This is the "gambler's fallacy."
|
||||
Each flip is INDEPENDENT - the coin has no memory.
|
||||
Past flips don't affect future flips.
|
||||
It's still 50/50, even after 1000 heads!
|
||||
The coin doesn't "owe" you tails.
|
||||
next_section_and_step: probability:step_1
|
||||
pattern_thinking:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
The streak feels meaningful, but it's not!
|
||||
Each flip is independent - 50/50 every time.
|
||||
Past results don't predict future with fair coins.
|
||||
Random sequences often have "patterns" but they're meaningless.
|
||||
next_section_and_step: probability:step_1
|
||||
confused:
|
||||
content_blocks:
|
||||
- "Key concept: INDEPENDENCE"
|
||||
- "Each coin flip is independent - past flips don't affect future flips."
|
||||
- "A fair coin always has 50% chance of heads, regardless of history."
|
||||
next_section_and_step: probability:step_1
|
||||
set_language:
|
||||
content_blocks:
|
||||
- "Language updated!"
|
||||
metadata_add:
|
||||
language: "the-users-response"
|
||||
counts_as_attempt: false
|
||||
next_section_and_step: probability:step_1
|
||||
off_topic:
|
||||
content_blocks:
|
||||
- "Think: Does the coin 'remember' previous flips? Are they independent events?"
|
||||
next_section_and_step: probability:step_1
|
||||
|
||||
- section_id: distributions
|
||||
title: Understanding Distributions
|
||||
steps:
|
||||
- step_id: step_1
|
||||
title: The Normal Distribution
|
||||
content_blocks:
|
||||
- "## The Normal Distribution: Nature's Pattern 📊"
|
||||
- ""
|
||||
- "**The bell curve (normal distribution):**"
|
||||
- "The most important distribution in statistics!"
|
||||
- ""
|
||||
- "**Characteristics:**"
|
||||
- "- Symmetric, bell-shaped"
|
||||
- "- Mean = Median = Mode (at the center)"
|
||||
- "- Most data near the mean"
|
||||
- "- Tails extend infinitely (but rarely reach extremes)"
|
||||
- ""
|
||||
- "**The 68-95-99.7 Rule (Empirical Rule):**"
|
||||
- "- 68% of data within 1 standard deviation of mean"
|
||||
- "- 95% of data within 2 standard deviations"
|
||||
- "- 99.7% of data within 3 standard deviations"
|
||||
- ""
|
||||
- "**Example: IQ scores**"
|
||||
- "- Mean = 100, Standard Deviation = 15"
|
||||
- "- 68% of people: IQ between 85-115"
|
||||
- "- 95% of people: IQ between 70-130"
|
||||
- "- 99.7% of people: IQ between 55-145"
|
||||
- ""
|
||||
- "**Why normal distribution matters:**"
|
||||
- "- Many natural phenomena follow it (height, measurement errors)"
|
||||
- "- Central Limit Theorem (averages tend toward normal)"
|
||||
- "- Foundation for many statistical tests"
|
||||
- "- Allows predictions and probability calculations"
|
||||
- ""
|
||||
- "**Real-world examples:**"
|
||||
- "- Test scores, heights, blood pressure, measurement errors"
|
||||
question: "SAT scores are normally distributed with mean 1000 and standard deviation 200. Using the 68-95-99.7 rule, approximately what percentage of students score between 800 and 1200?"
|
||||
tokens_for_ai: |
|
||||
800 to 1200 is mean (1000) ± 1 standard deviation (200).
|
||||
68% of data falls within 1 SD of the mean.
|
||||
|
||||
Correct answer: 68% (or approximately 68%, or about 2/3)
|
||||
|
||||
Categorize as:
|
||||
- correct: Says 68% or approximately 68%
|
||||
- close: Says 66% or 70% (reasonably close)
|
||||
- says_95: Says 95% (confused 1 SD with 2 SD)
|
||||
- unclear_reasoning: Wrong answer showing confusion
|
||||
- set_language: Language preference
|
||||
- off_topic: Unrelated
|
||||
feedback_tokens_for_ai: |
|
||||
If correct:
|
||||
- Excellent! 800-1200 is 1000 ± 200 (1 SD).
|
||||
- 68% of data within 1 SD of mean.
|
||||
- You've mastered the empirical rule!
|
||||
|
||||
If says 95%:
|
||||
- Close reasoning! But 95% is for 2 SDs.
|
||||
- 800-1200 is only 1 SD (200 points) from mean.
|
||||
- 1 SD = 68%, 2 SDs = 95%, 3 SDs = 99.7%
|
||||
|
||||
Explain the calculation clearly.
|
||||
buckets:
|
||||
- correct
|
||||
- close
|
||||
- says_95
|
||||
- unclear_reasoning
|
||||
- set_language
|
||||
- off_topic
|
||||
transitions:
|
||||
correct:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
Perfect! 800-1200 is mean ± 1 SD.
|
||||
1 SD = 68% of data.
|
||||
You understand the empirical rule!
|
||||
This is fundamental for interpreting normal distributions!
|
||||
metadata_add:
|
||||
score: "n+2"
|
||||
concepts_mastered: "n+1"
|
||||
next_section_and_step: conclusion:step_1
|
||||
close:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
Very close! The exact answer is 68%.
|
||||
800-1200 = 1000 ± 200 (1 standard deviation).
|
||||
The 68-95-99.7 rule: 68% within 1 SD.
|
||||
Great understanding of the concept!
|
||||
metadata_add:
|
||||
score: "n+1"
|
||||
next_section_and_step: conclusion:step_1
|
||||
says_95:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
You're thinking of the right rule, but different range!
|
||||
95% is for 2 standard deviations (600-1400).
|
||||
800-1200 is only 1 SD (200 points) from mean.
|
||||
1 SD = 68%, 2 SDs = 95%, 3 SDs = 99.7%
|
||||
next_section_and_step: distributions:step_1
|
||||
unclear_reasoning:
|
||||
content_blocks:
|
||||
- "Use the 68-95-99.7 rule:"
|
||||
- "800-1200 is the mean (1000) ± 200"
|
||||
- "200 is 1 standard deviation"
|
||||
- "68% of data falls within 1 SD of the mean"
|
||||
next_section_and_step: distributions:step_1
|
||||
set_language:
|
||||
content_blocks:
|
||||
- "Language updated!"
|
||||
metadata_add:
|
||||
language: "the-users-response"
|
||||
counts_as_attempt: false
|
||||
next_section_and_step: distributions:step_1
|
||||
off_topic:
|
||||
content_blocks:
|
||||
- "Calculate: How many standard deviations is 800-1200 from the mean (1000)?"
|
||||
next_section_and_step: distributions:step_1
|
||||
|
||||
- section_id: conclusion
|
||||
title: Statistics Mastery
|
||||
steps:
|
||||
- step_id: step_1
|
||||
title: Applying Statistical Thinking
|
||||
content_blocks:
|
||||
- "## Congratulations, Statistician! 🎓📊"
|
||||
- ""
|
||||
- "**You've mastered the fundamentals!**"
|
||||
- ""
|
||||
- "**What you've learned:**"
|
||||
- "✓ Central Tendency (mean, median, mode)"
|
||||
- "✓ When to use median vs mean (outliers!)"
|
||||
- "✓ Measures of spread (range, variance, standard deviation)"
|
||||
- "✓ Probability and independence"
|
||||
- "✓ The normal distribution and 68-95-99.7 rule"
|
||||
- ""
|
||||
- "**Real-world statistical thinking:**"
|
||||
- ""
|
||||
- "**Evaluating claims:**"
|
||||
- "- 'Average salary is $100k!' → Check for outliers, ask for median"
|
||||
- "- 'Significant difference!' → What's the sample size?"
|
||||
- "- 'This trend proves...' → Correlation ≠ causation"
|
||||
- ""
|
||||
- "**Making decisions:**"
|
||||
- "- Compare means AND spreads (consistency matters!)"
|
||||
- "- Understand probability (avoid gambler's fallacy)"
|
||||
- "- Consider distributions (is it normal? skewed?)"
|
||||
- ""
|
||||
- "**Critical thinking:**"
|
||||
- "- Always ask: What's the sample size?"
|
||||
- "- Question: How was data collected?"
|
||||
- "- Consider: What's being measured exactly?"
|
||||
- "- Look for: Potential biases or confounding factors"
|
||||
question: "How will you use statistical thinking in your daily life? Give an example of where understanding statistics could help you make better decisions."
|
||||
tokens_for_ai: |
|
||||
This is a reflection question.
|
||||
|
||||
Look for application of concepts learned:
|
||||
- Evaluating claims with mean/median awareness
|
||||
- Understanding probability in decisions
|
||||
- Recognizing variability/consistency
|
||||
- Critical thinking about data
|
||||
|
||||
Categorize as:
|
||||
- excellent_application: Specific example showing deep understanding
|
||||
- practical_example: Good real-world application
|
||||
- general_reflection: Acknowledges usefulness
|
||||
- brief_response: Short but relevant
|
||||
- set_language: Language preference
|
||||
- off_topic: Unrelated
|
||||
feedback_tokens_for_ai: |
|
||||
Provide encouraging, personalized feedback!
|
||||
|
||||
Validate their example if they give one.
|
||||
Add suggestions for statistical thinking in daily life:
|
||||
- Evaluating news/research claims
|
||||
- Financial decisions (investments, insurance)
|
||||
- Health decisions (understanding medical stats)
|
||||
- Sports analysis
|
||||
- Weather forecasts (probability!)
|
||||
|
||||
Celebrate their completion of Statistics 101!
|
||||
buckets:
|
||||
- excellent_application
|
||||
- practical_example
|
||||
- general_reflection
|
||||
- brief_response
|
||||
- set_language
|
||||
- off_topic
|
||||
transitions:
|
||||
excellent_application:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
Fantastic example showing real understanding!
|
||||
Reference their specific application.
|
||||
Emphasize how statistical literacy empowers better decisions.
|
||||
Encourage continued critical thinking with data!
|
||||
metadata_add:
|
||||
activity_completed: "true"
|
||||
practical_example:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
Great practical thinking!
|
||||
Acknowledge their example.
|
||||
Statistics helps us cut through misleading claims.
|
||||
You now have tools to think critically about data!
|
||||
metadata_add:
|
||||
activity_completed: "true"
|
||||
general_reflection:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
Good reflection!
|
||||
Statistics is everywhere - news, health, money, sports.
|
||||
You can now question claims and understand probability.
|
||||
Keep thinking statistically!
|
||||
metadata_add:
|
||||
activity_completed: "true"
|
||||
brief_response:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
Thank you for completing Statistics 101!
|
||||
You've gained powerful tools for understanding data.
|
||||
Use them to make informed decisions and question claims!
|
||||
metadata_add:
|
||||
activity_completed: "true"
|
||||
set_language:
|
||||
content_blocks:
|
||||
- "Language updated!"
|
||||
metadata_add:
|
||||
language: "the-users-response"
|
||||
counts_as_attempt: false
|
||||
next_section_and_step: conclusion:step_1
|
||||
off_topic:
|
||||
content_blocks:
|
||||
- "Reflect on: How could understanding mean, median, probability, and distributions help you in everyday decisions?"
|
||||
next_section_and_step: conclusion:step_1
|
||||
740
research/activity41-game-theory-101.yaml
Normal file
740
research/activity41-game-theory-101.yaml
Normal file
|
|
@ -0,0 +1,740 @@
|
|||
default_max_attempts_per_step: 3
|
||||
classifier_model: "MODEL_1"
|
||||
feedback_model: "MODEL_1"
|
||||
tokens_for_ai_rubric: |
|
||||
Evaluate understanding of basic game theory concepts.
|
||||
|
||||
Consider:
|
||||
- Grasp of strategic interaction
|
||||
- Understanding of Nash equilibrium
|
||||
- Recognition of dominant strategies
|
||||
- Ability to analyze simple games
|
||||
- Application to real-world scenarios
|
||||
|
||||
Provide clear explanations with examples.
|
||||
|
||||
sections:
|
||||
- section_id: introduction
|
||||
title: Welcome to Game Theory
|
||||
steps:
|
||||
- step_id: welcome
|
||||
title: Strategic Thinking
|
||||
content_blocks:
|
||||
- "# Game Theory 101: The Science of Strategy 🎮🧠"
|
||||
- ""
|
||||
- "**Welcome to game theory!**"
|
||||
- ""
|
||||
- "Game theory is the study of strategic interaction - how people make decisions when their outcomes depend on others' choices."
|
||||
- ""
|
||||
- "**Not just for games:**"
|
||||
- "- Business competition (pricing, market entry)"
|
||||
- "- International relations (nuclear deterrence, trade)"
|
||||
- "- Biology (evolution, animal behavior)"
|
||||
- "- Economics (auctions, bargaining)"
|
||||
- "- Everyday life (traffic, cooperation)"
|
||||
- ""
|
||||
- "**You'll learn:**"
|
||||
- "✓ The Prisoner's Dilemma (cooperation vs self-interest)"
|
||||
- "✓ Nash Equilibrium (stable strategies)"
|
||||
- "✓ Dominant strategies (always-best moves)"
|
||||
- "✓ Zero-sum vs positive-sum games"
|
||||
- "✓ How to analyze strategic situations"
|
||||
- ""
|
||||
- "**Real applications:**"
|
||||
- "- Why cartels are unstable"
|
||||
- "- Why arms races happen"
|
||||
- "- When cooperation emerges"
|
||||
- "- How auctions should be designed"
|
||||
question: Ready to learn how to think strategically about interactive decisions?
|
||||
tokens_for_ai: |
|
||||
Accept positive responses as 'ready'.
|
||||
Language preference as 'set_language'.
|
||||
Otherwise 'off_topic'.
|
||||
buckets:
|
||||
- ready
|
||||
- set_language
|
||||
- off_topic
|
||||
transitions:
|
||||
ready:
|
||||
content_blocks:
|
||||
- "Excellent! Let's start with the most famous game in game theory! 🎯"
|
||||
next_section_and_step: prisoners_dilemma:step_1
|
||||
set_language:
|
||||
content_blocks:
|
||||
- "Language preference updated!"
|
||||
metadata_add:
|
||||
language: "the-users-response"
|
||||
counts_as_attempt: false
|
||||
next_section_and_step: introduction:welcome
|
||||
off_topic:
|
||||
content_blocks:
|
||||
- "Let's learn strategic thinking together! Ready to begin?"
|
||||
counts_as_attempt: false
|
||||
next_section_and_step: introduction:welcome
|
||||
|
||||
- section_id: prisoners_dilemma
|
||||
title: The Prisoner's Dilemma
|
||||
steps:
|
||||
- step_id: step_1
|
||||
title: The Classic Dilemma
|
||||
content_blocks:
|
||||
- "## The Prisoner's Dilemma: Cooperation vs Self-Interest 🚔"
|
||||
- ""
|
||||
- "**The Scenario:**"
|
||||
- ""
|
||||
- "Two criminals are arrested and interrogated separately. The prosecutor offers each the same deal:"
|
||||
- ""
|
||||
- "**If you both stay silent:**"
|
||||
- "- Each gets 1 year in prison (light sentence, lack of evidence)"
|
||||
- ""
|
||||
- "**If you betray your partner but they stay silent:**"
|
||||
- "- You go free (0 years)"
|
||||
- "- Your partner gets 3 years"
|
||||
- ""
|
||||
- "**If you both betray each other:**"
|
||||
- "- Each gets 2 years"
|
||||
- ""
|
||||
- "**Payoff matrix (years in prison - lower is better):**"
|
||||
- ""
|
||||
- "```"
|
||||
- " Player B"
|
||||
- " Silent Betray"
|
||||
- "Player A Silent (-1,-1) (-3,0)"
|
||||
- " Betray (0,-3) (-2,-2)"
|
||||
- "```"
|
||||
- ""
|
||||
- "**The dilemma:**"
|
||||
- "- **Collectively best:** Both stay silent (-1 each)"
|
||||
- "- **Individually rational:** Both betray (-2 each)"
|
||||
- ""
|
||||
- "**Why betray dominates:**"
|
||||
- "- If partner stays silent: Betray gets you 0 vs 1 year (betray better!)"
|
||||
- "- If partner betrays: Betray gets you 2 vs 3 years (betray better!)"
|
||||
- "- No matter what partner does, betraying is better for YOU"
|
||||
- ""
|
||||
- "**The tragedy:** Both act rationally, both end up worse off (-2 each) than if they'd cooperated (-1 each)!"
|
||||
question: "You're playing prisoner's dilemma once with a stranger you'll never meet again. What should you do from a purely self-interested perspective, and why?"
|
||||
tokens_for_ai: |
|
||||
Correct answer: Betray (or defect/confess)
|
||||
|
||||
Reasoning: Betraying is a DOMINANT STRATEGY
|
||||
- Dominates silence regardless of what partner does
|
||||
- If partner silent: 0 years better than 1 year
|
||||
- If partner betrays: 2 years better than 3 years
|
||||
|
||||
Look for understanding of dominant strategy.
|
||||
|
||||
Categorize as:
|
||||
- correct_with_reasoning: Says betray AND explains dominant strategy
|
||||
- correct_answer: Says betray without full explanation
|
||||
- says_cooperate: Says stay silent (cooperative but not rational in one-shot)
|
||||
- game_theory_aware: Mentions dilemma nature even if wrong choice
|
||||
- set_language: Language preference
|
||||
- off_topic: Unrelated
|
||||
feedback_tokens_for_ai: |
|
||||
If correct:
|
||||
- Excellent! Betraying is the DOMINANT STRATEGY.
|
||||
- No matter what the other player does, betraying is better for YOU.
|
||||
- This is rational but leads to both getting -2 instead of -1.
|
||||
- That's the tragedy of the Prisoner's Dilemma!
|
||||
|
||||
If says cooperate:
|
||||
- Noble but not strategically optimal in a one-shot game!
|
||||
- Betraying DOMINATES: better outcome regardless of partner's choice.
|
||||
- In one-shot games with strangers, defection is predicted.
|
||||
- (Later we'll see when cooperation can emerge in repeated games!)
|
||||
|
||||
Explain dominant strategy concept clearly.
|
||||
buckets:
|
||||
- correct_with_reasoning
|
||||
- correct_answer
|
||||
- says_cooperate
|
||||
- game_theory_aware
|
||||
- set_language
|
||||
- off_topic
|
||||
transitions:
|
||||
correct_with_reasoning:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
Perfect strategic analysis!
|
||||
Betraying is the DOMINANT STRATEGY - always better for you.
|
||||
Even though both cooperating would be better collectively (-1 each),
|
||||
individual rationality leads to mutual defection (-2 each).
|
||||
This is the fundamental insight of game theory!
|
||||
metadata_add:
|
||||
score: "n+2"
|
||||
concepts_mastered: "n+1"
|
||||
next_section_and_step: prisoners_dilemma:step_2
|
||||
correct_answer:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
Correct! Betraying is the rational choice.
|
||||
Why? It's a DOMINANT STRATEGY.
|
||||
No matter what your partner does, betraying gives YOU a better outcome.
|
||||
If they stay silent: 0 < 1. If they betray: 2 < 3.
|
||||
This individual rationality creates the dilemma!
|
||||
metadata_add:
|
||||
score: "n+1"
|
||||
next_section_and_step: prisoners_dilemma:step_2
|
||||
says_cooperate:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
Cooperation would be great if you could trust them!
|
||||
But from pure self-interest in a ONE-SHOT game:
|
||||
Betraying DOMINATES staying silent.
|
||||
If they're silent: 0 years (betray) beats 1 year (silent).
|
||||
If they betray: 2 years (betray) beats 3 years (silent).
|
||||
Betraying is always better for YOU - that's the dilemma!
|
||||
next_section_and_step: prisoners_dilemma:step_2
|
||||
game_theory_aware:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
You sense the dilemma!
|
||||
From pure self-interest: betraying DOMINATES.
|
||||
It's better for you no matter what they do.
|
||||
Both thinking this way → both defect → both get -2.
|
||||
Could've gotten -1 each if they cooperated. That's the tragedy!
|
||||
next_section_and_step: prisoners_dilemma:step_2
|
||||
set_language:
|
||||
content_blocks:
|
||||
- "Language updated!"
|
||||
metadata_add:
|
||||
language: "the-users-response"
|
||||
counts_as_attempt: false
|
||||
next_section_and_step: prisoners_dilemma:step_1
|
||||
off_topic:
|
||||
content_blocks:
|
||||
- "Think strategically: What gives YOU the best outcome regardless of what your partner does?"
|
||||
next_section_and_step: prisoners_dilemma:step_1
|
||||
|
||||
- step_id: step_2
|
||||
title: Real-World Dilemmas
|
||||
content_blocks:
|
||||
- "## Prisoner's Dilemma Everywhere! 🌍"
|
||||
- ""
|
||||
- "The Prisoner's Dilemma structure appears constantly:"
|
||||
- ""
|
||||
- "**Business cartels:**"
|
||||
- "- Cooperate: Keep prices high (both profit)"
|
||||
- "- Defect: Undercut price (steal market share)"
|
||||
- "- Problem: Undercutting is always tempting!"
|
||||
- "- Result: Cartels are unstable"
|
||||
- ""
|
||||
- "**Arms races:**"
|
||||
- "- Cooperate: Don't build weapons (both save money)"
|
||||
- "- Defect: Build weapons (get advantage if opponent doesn't)"
|
||||
- "- Problem: Building weapons dominates"
|
||||
- "- Result: Costly arms races"
|
||||
- ""
|
||||
- "**Environmental pollution:**"
|
||||
- "- Cooperate: Reduce emissions (collective good)"
|
||||
- "- Defect: Pollute freely (save costs)"
|
||||
- "- Problem: Individual incentive to pollute"
|
||||
- "- Result: Tragedy of the commons"
|
||||
- ""
|
||||
- "**Doping in sports:**"
|
||||
- "- Cooperate: Stay clean (fair competition)"
|
||||
- "- Defect: Dope (gain advantage)"
|
||||
- "- Problem: If others dope, you must too to compete"
|
||||
- "- Result: Widespread doping"
|
||||
- ""
|
||||
- "**The pattern:**"
|
||||
- "Individual rationality → collectively bad outcome"
|
||||
question: "Can you think of another real-world situation that has Prisoner's Dilemma structure? Describe what cooperation and defection look like."
|
||||
tokens_for_ai: |
|
||||
Look for recognition of the PD structure:
|
||||
- Two or more parties
|
||||
- Temptation to defect while others cooperate
|
||||
- Mutual defection worse than mutual cooperation
|
||||
- Defection is individually rational
|
||||
|
||||
Examples: cheating in class, tax evasion, littering, free-riding,
|
||||
overfishing, etc.
|
||||
|
||||
Categorize as:
|
||||
- excellent_example: Clear PD structure with cooperation/defection explained
|
||||
- good_example: Recognizes PD structure
|
||||
- vague_example: Right idea but unclear
|
||||
- not_quite_pd: Example doesn't fit structure
|
||||
- set_language: Language preference
|
||||
- off_topic: Unrelated
|
||||
feedback_tokens_for_ai: |
|
||||
If they identify a good example:
|
||||
- Validate it! Explain how it fits PD structure.
|
||||
- Point out: cooperation better collectively, defection individually rational.
|
||||
- This recognition helps understand so many social problems!
|
||||
|
||||
If example doesn't quite fit:
|
||||
- Acknowledge the thinking.
|
||||
- Explain what makes something a PD: mutual defection < mutual cooperation < defection while others cooperate.
|
||||
- Offer a clearer example.
|
||||
|
||||
Celebrate their application of game theory!
|
||||
buckets:
|
||||
- excellent_example
|
||||
- good_example
|
||||
- vague_example
|
||||
- not_quite_pd
|
||||
- set_language
|
||||
- off_topic
|
||||
transitions:
|
||||
excellent_example:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
Brilliant example!
|
||||
Reference their specific example and confirm the PD structure.
|
||||
Point out: cooperation collectively better, but defection individually tempting.
|
||||
This is why so many social problems are hard to solve!
|
||||
Game theory helps us recognize these structures!
|
||||
metadata_add:
|
||||
score: "n+2"
|
||||
concepts_mastered: "n+1"
|
||||
next_section_and_step: nash_equilibrium:step_1
|
||||
good_example:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
Great example!
|
||||
Confirm it has PD structure: defection tempting, but mutual defection worse.
|
||||
This pattern is everywhere once you see it!
|
||||
Understanding the structure helps design solutions (regulations, incentives, reputation).
|
||||
metadata_add:
|
||||
score: "n+1"
|
||||
next_section_and_step: nash_equilibrium:step_1
|
||||
vague_example:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
Good thinking! Clarify how their example fits:
|
||||
Cooperation = ? (collectively better)
|
||||
Defection = ? (individually tempting)
|
||||
Help them sharpen the structure identification.
|
||||
next_section_and_step: nash_equilibrium:step_1
|
||||
not_quite_pd:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
Interesting example but not quite Prisoner's Dilemma structure.
|
||||
PD needs: mutual cooperation > mutual defection, but defection dominates.
|
||||
Their example might be a different game structure.
|
||||
Acknowledge their thinking, explain the distinction.
|
||||
next_section_and_step: nash_equilibrium:step_1
|
||||
set_language:
|
||||
content_blocks:
|
||||
- "Language updated!"
|
||||
metadata_add:
|
||||
language: "the-users-response"
|
||||
counts_as_attempt: false
|
||||
next_section_and_step: prisoners_dilemma:step_2
|
||||
off_topic:
|
||||
content_blocks:
|
||||
- "Think of situations where everyone would be better off cooperating, but individuals are tempted to cheat."
|
||||
next_section_and_step: prisoners_dilemma:step_2
|
||||
|
||||
- section_id: nash_equilibrium
|
||||
title: Nash Equilibrium
|
||||
steps:
|
||||
- step_id: step_1
|
||||
title: Stable Strategies
|
||||
content_blocks:
|
||||
- "## Nash Equilibrium: The Stability Concept 🎯"
|
||||
- ""
|
||||
- "**Named after John Nash (Nobel Prize, 1994)**"
|
||||
- ""
|
||||
- "**Definition:**"
|
||||
- "A Nash Equilibrium is a set of strategies where no player can improve their outcome by unilaterally changing their strategy."
|
||||
- ""
|
||||
- "**In simpler terms:**"
|
||||
- "Everyone is playing their best response to what others are doing. No one wants to deviate."
|
||||
- ""
|
||||
- "**In Prisoner's Dilemma:**"
|
||||
- "Both betraying is a Nash Equilibrium!"
|
||||
- "- If A betrays, B's best response is betray (2 < 3 years)"
|
||||
- "- If B betrays, A's best response is betray (2 < 3 years)"
|
||||
- "- Neither wants to switch to silence unilaterally"
|
||||
- ""
|
||||
- "**Key insight:**"
|
||||
- "Nash Equilibrium ≠ Best outcome for everyone"
|
||||
- "It's just stable (self-enforcing)"
|
||||
- ""
|
||||
- "**Example: Coordination Game**"
|
||||
- ""
|
||||
- "Two friends picking where to meet:"
|
||||
- "```"
|
||||
- " Friend B"
|
||||
- " Coffee Bar"
|
||||
- "Friend A Coffee (2,2) (0,0)"
|
||||
- " Bar (0,0) (1,1)"
|
||||
- "```"
|
||||
- ""
|
||||
- "**Two Nash Equilibria:**"
|
||||
- "1. Both go to Coffee (2,2)"
|
||||
- "2. Both go to Bar (1,1)"
|
||||
- ""
|
||||
- "Meeting anywhere > missing each other!"
|
||||
- "Coordination problems have multiple equilibria."
|
||||
question: "In a game where two drivers approach an intersection, each can either Stop or Go. If both Go, they crash (payoff -10 each). If one Stops and one Goes, the goer gets +1 and the stopper gets 0. If both Stop, they're delayed (payoff -1 each). What are the Nash Equilibrium outcomes?"
|
||||
tokens_for_ai: |
|
||||
Payoff matrix:
|
||||
Driver B
|
||||
Stop Go
|
||||
Driver A Stop (-1,-1) (0,+1)
|
||||
Go (+1,0) (-10,-10)
|
||||
|
||||
Nash Equilibria: (Stop, Go) and (Go, Stop)
|
||||
- If A stops, B's best response is Go
|
||||
- If B goes, A's best response is Stop
|
||||
- And vice versa for (Go, Stop)
|
||||
|
||||
NOT Nash Equilibrium:
|
||||
- (Stop, Stop): Either could improve by switching to Go
|
||||
- (Go, Go): Both would improve by switching to Stop
|
||||
|
||||
Look for identification of the two equilibria.
|
||||
|
||||
Categorize as:
|
||||
- correct_both: Identifies both (Stop,Go) and (Go,Stop)
|
||||
- identifies_one: Gets one of the two equilibria
|
||||
- identifies_pattern: Recognizes one stops, one goes
|
||||
- says_both_stop: Says (Stop,Stop) - incorrect
|
||||
- confused: Other answers
|
||||
- set_language: Language preference
|
||||
- off_topic: Unrelated
|
||||
feedback_tokens_for_ai: |
|
||||
Correct equilibria: (Stop, Go) and (Go, Stop)
|
||||
|
||||
If correct:
|
||||
- Excellent! Two Nash Equilibria where one stops, one goes.
|
||||
- Neither wants to unilaterally change.
|
||||
- This is like traffic lights solving coordination!
|
||||
|
||||
If says both stop:
|
||||
- That seems safe but it's NOT Nash Equilibrium!
|
||||
- If both stop, either could switch to Go and get +1 instead of -1.
|
||||
- Nash requires no one wants to unilaterally deviate.
|
||||
|
||||
Explain why the two asymmetric outcomes are stable.
|
||||
buckets:
|
||||
- correct_both
|
||||
- identifies_one
|
||||
- identifies_pattern
|
||||
- says_both_stop
|
||||
- confused
|
||||
- set_language
|
||||
- off_topic
|
||||
transitions:
|
||||
correct_both:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
Perfect! Two Nash Equilibria: (Stop,Go) and (Go,Stop).
|
||||
In each, no driver wants to unilaterally change.
|
||||
Both stopping is NOT equilibrium - either would want to go!
|
||||
This coordination problem is solved by traffic lights in reality!
|
||||
metadata_add:
|
||||
score: "n+2"
|
||||
concepts_mastered: "n+1"
|
||||
next_section_and_step: dominant_strategies:step_1
|
||||
identifies_one:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
Good! You found one equilibrium.
|
||||
But there's symmetry - also a Nash Equilibrium where roles reverse!
|
||||
Both (Stop,Go) and (Go,Stop) are stable.
|
||||
In each, neither wants to unilaterally change.
|
||||
metadata_add:
|
||||
score: "n+1"
|
||||
next_section_and_step: dominant_strategies:step_1
|
||||
identifies_pattern:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
Right idea - one stops, one goes!
|
||||
Specifically: (Stop,Go) and (Go,Stop) are both Nash Equilibria.
|
||||
Neither driver wants to change their strategy given the other's.
|
||||
This is a coordination game solved by conventions (like traffic lights!).
|
||||
next_section_and_step: dominant_strategies:step_1
|
||||
says_both_stop:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
Seems safe, but NOT Nash Equilibrium!
|
||||
At (Stop,Stop), either driver could switch to Go:
|
||||
Get +1 instead of -1 while other stays stopped.
|
||||
Nash requires no one wants to deviate.
|
||||
The equilibria are (Stop,Go) and (Go,Stop).
|
||||
next_section_and_step: nash_equilibrium:step_1
|
||||
confused:
|
||||
content_blocks:
|
||||
- "Check each outcome: Can any player improve by switching?"
|
||||
- "Nash Equilibrium: No player wants to unilaterally change strategy"
|
||||
- "Hint: One driver stops, one goes (two ways to do this)"
|
||||
next_section_and_step: nash_equilibrium:step_1
|
||||
set_language:
|
||||
content_blocks:
|
||||
- "Language updated!"
|
||||
metadata_add:
|
||||
language: "the-users-response"
|
||||
counts_as_attempt: false
|
||||
next_section_and_step: nash_equilibrium:step_1
|
||||
off_topic:
|
||||
content_blocks:
|
||||
- "Find outcomes where neither driver would want to change their choice given what the other is doing."
|
||||
next_section_and_step: nash_equilibrium:step_1
|
||||
|
||||
- section_id: dominant_strategies
|
||||
title: Dominant Strategies
|
||||
steps:
|
||||
- step_id: step_1
|
||||
title: Always-Best Strategies
|
||||
content_blocks:
|
||||
- "## Dominant Strategies: No-Brainer Moves 💪"
|
||||
- ""
|
||||
- "**Definition:**"
|
||||
- "A dominant strategy is one that's best regardless of what other players do."
|
||||
- ""
|
||||
- "**If you have a dominant strategy, PLAY IT!**"
|
||||
- ""
|
||||
- "**In Prisoner's Dilemma:**"
|
||||
- "Betraying is a dominant strategy for both players."
|
||||
- "- Better if opponent stays silent: 0 < 1"
|
||||
- "- Better if opponent betrays: 2 < 3"
|
||||
- "- Always better!"
|
||||
- ""
|
||||
- "**Dominant Strategy Equilibrium:**"
|
||||
- "When all players have dominant strategies, the outcome is certain!"
|
||||
- "- Everyone plays their dominant strategy"
|
||||
- "- This is always a Nash Equilibrium"
|
||||
- "- But Nash Equilibrium doesn't always involve dominant strategies"
|
||||
- ""
|
||||
- "**Example without dominant strategies:**"
|
||||
- ""
|
||||
- "Rock-Paper-Scissors:"
|
||||
- "- No strategy is always best"
|
||||
- "- Best strategy depends on opponent's choice"
|
||||
- "- Optimal: Randomize (mixed strategy)"
|
||||
- ""
|
||||
- "**Why dominant strategies matter:**"
|
||||
- "- Simplify analysis (easy to predict)"
|
||||
- "- Stable and robust"
|
||||
- "- Used in mechanism design (incentive compatibility)"
|
||||
question: "A company must choose High Price or Low Price. If both choose High, each earns $100. If both choose Low, each earns $50. If one chooses Low and other High, the low pricer earns $120 and the high pricer earns $20. Does either company have a dominant strategy? If so, what is it?"
|
||||
tokens_for_ai: |
|
||||
Payoff matrix:
|
||||
Company B
|
||||
High Low
|
||||
Company A High (100,100) (20,120)
|
||||
Low (120,20) (50,50)
|
||||
|
||||
For Company A:
|
||||
- If B plays High: Low gives 120 > High gives 100 → Low better
|
||||
- If B plays Low: Low gives 50 > High gives 20 → Low better
|
||||
- Low DOMINATES High
|
||||
|
||||
Same logic for Company B.
|
||||
Both have dominant strategy: Low Price
|
||||
|
||||
Look for recognition that Low dominates High.
|
||||
|
||||
Categorize as:
|
||||
- correct_both_low: Says Low is dominant strategy for both
|
||||
- says_low: Identifies Low without full explanation
|
||||
- says_high: Says High (incorrect - not dominant)
|
||||
- says_no_dominant: Says no dominant strategy exists
|
||||
- unclear: Confused answer
|
||||
- set_language: Language preference
|
||||
- off_topic: Unrelated
|
||||
feedback_tokens_for_ai: |
|
||||
Correct: Low is dominant strategy for BOTH companies.
|
||||
|
||||
If correct:
|
||||
- Excellent! Low dominates High for both.
|
||||
- If opponent prices High: 120 > 100 (Low better)
|
||||
- If opponent prices Low: 50 > 20 (Low better)
|
||||
- Result: Both price low, earn 50 each (could've earned 100 each!)
|
||||
- This is another Prisoner's Dilemma structure!
|
||||
|
||||
If wrong:
|
||||
- Check each scenario.
|
||||
- Show that Low always outperforms High regardless of opponent.
|
||||
- Explain this leads to (Low,Low) equilibrium.
|
||||
|
||||
Connect to PD structure.
|
||||
buckets:
|
||||
- correct_both_low
|
||||
- says_low
|
||||
- says_high
|
||||
- says_no_dominant
|
||||
- unclear
|
||||
- set_language
|
||||
- off_topic
|
||||
transitions:
|
||||
correct_both_low:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
Perfect analysis!
|
||||
Low DOMINATES High for both companies.
|
||||
No matter what opponent does, Low is better.
|
||||
Result: (Low,Low) = $50 each.
|
||||
If they could cooperate: (High,High) = $100 each!
|
||||
This is Prisoner's Dilemma in business form!
|
||||
metadata_add:
|
||||
score: "n+2"
|
||||
concepts_mastered: "n+1"
|
||||
next_section_and_step: conclusion:step_1
|
||||
says_low:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
Correct! Low is the dominant strategy.
|
||||
Why? Check both scenarios:
|
||||
If opponent prices High: 120 (Low) > 100 (High)
|
||||
If opponent prices Low: 50 (Low) > 20 (High)
|
||||
Always better! This is another PD structure.
|
||||
metadata_add:
|
||||
score: "n+1"
|
||||
next_section_and_step: conclusion:step_1
|
||||
says_high:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
High would be great if both could commit!
|
||||
But it's NOT dominant. Check:
|
||||
If opponent prices Low: 20 (High) < 120 (Low)
|
||||
Low is better regardless of opponent.
|
||||
This is why cartels are unstable!
|
||||
next_section_and_step: dominant_strategies:step_1
|
||||
says_no_dominant:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
Actually, there IS a dominant strategy!
|
||||
Compare for Company A:
|
||||
- If B plays High: Low(120) > High(100)
|
||||
- If B plays Low: Low(50) > High(20)
|
||||
Low is always better! Same for Company B.
|
||||
next_section_and_step: dominant_strategies:step_1
|
||||
unclear:
|
||||
content_blocks:
|
||||
- "For dominant strategy, check: Is one choice ALWAYS better than the other?"
|
||||
- "Compare Low vs High when opponent plays High, then when opponent plays Low"
|
||||
next_section_and_step: dominant_strategies:step_1
|
||||
set_language:
|
||||
content_blocks:
|
||||
- "Language updated!"
|
||||
metadata_add:
|
||||
language: "the-users-response"
|
||||
counts_as_attempt: false
|
||||
next_section_and_step: dominant_strategies:step_1
|
||||
off_topic:
|
||||
content_blocks:
|
||||
- "For each company, which strategy is better regardless of what the opponent does?"
|
||||
next_section_and_step: dominant_strategies:step_1
|
||||
|
||||
- section_id: conclusion
|
||||
title: Game Theory Foundations
|
||||
steps:
|
||||
- step_id: step_1
|
||||
title: Strategic Thinking
|
||||
content_blocks:
|
||||
- "## Congratulations, Game Theorist! 🎓🎮"
|
||||
- ""
|
||||
- "**You've mastered the fundamentals!**"
|
||||
- ""
|
||||
- "**What you've learned:**"
|
||||
- "✓ Prisoner's Dilemma (cooperation vs self-interest)"
|
||||
- "✓ Nash Equilibrium (stable strategy profiles)"
|
||||
- "✓ Dominant strategies (always-best moves)"
|
||||
- "✓ How to analyze strategic situations"
|
||||
- "✓ Why individually rational choices can lead to bad collective outcomes"
|
||||
- ""
|
||||
- "**Key insights:**"
|
||||
- "- Strategic thinking requires considering others' incentives"
|
||||
- "- Equilibrium ≠ optimal (Prisoner's Dilemma!)"
|
||||
- "- Dominant strategies simplify prediction"
|
||||
- "- Coordination problems have multiple equilibria"
|
||||
- "- Institutions and repeated play can enable cooperation"
|
||||
- ""
|
||||
- "**Real-world applications:**"
|
||||
- "- Understanding why cartels fail"
|
||||
- "- Recognizing arms race dynamics"
|
||||
- "- Designing better mechanisms (auctions, voting)"
|
||||
- "- Building institutions that align incentives"
|
||||
- ""
|
||||
- "**Next steps:**"
|
||||
- "- Game Theory 201: Mixed strategies and repeated games"
|
||||
- "- Look for strategic interactions in daily life"
|
||||
- "- Think about how to align individual and collective interests"
|
||||
question: "How has learning game theory changed how you think about strategic situations? Give an example where you might apply these concepts."
|
||||
tokens_for_ai: |
|
||||
This is a reflection question.
|
||||
|
||||
Look for:
|
||||
- Recognition of strategic interdependence
|
||||
- Understanding that others' incentives matter
|
||||
- Application to real situations
|
||||
- Appreciation of conflict between individual/collective rationality
|
||||
|
||||
Categorize as:
|
||||
- excellent_reflection: Insightful application showing deep understanding
|
||||
- practical_application: Good real-world example
|
||||
- general_reflection: Acknowledges usefulness
|
||||
- brief_response: Short but relevant
|
||||
- set_language: Language preference
|
||||
- off_topic: Unrelated
|
||||
feedback_tokens_for_ai: |
|
||||
Provide encouraging feedback!
|
||||
|
||||
Validate their example/reflection.
|
||||
Emphasize key takeaway: think about others' incentives!
|
||||
Game theory helps predict behavior and design better systems.
|
||||
|
||||
Mention Game Theory 201 for deeper concepts.
|
||||
Celebrate their foundational understanding!
|
||||
buckets:
|
||||
- excellent_reflection
|
||||
- practical_application
|
||||
- general_reflection
|
||||
- brief_response
|
||||
- set_language
|
||||
- off_topic
|
||||
transitions:
|
||||
excellent_reflection:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
Fantastic insight!
|
||||
Reference their example specifically.
|
||||
You now think strategically about interdependent decisions!
|
||||
This foundation enables understanding mechanism design, auctions, bargaining.
|
||||
Ready for Game Theory 201 when you are!
|
||||
metadata_add:
|
||||
activity_completed: "true"
|
||||
practical_application:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
Great application!
|
||||
Acknowledge their example.
|
||||
Game theory is everywhere once you start looking!
|
||||
Understanding incentives helps predict and influence behavior.
|
||||
Excellent work mastering the fundamentals!
|
||||
metadata_add:
|
||||
activity_completed: "true"
|
||||
general_reflection:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
Good reflection!
|
||||
The core lesson: always consider others' incentives.
|
||||
Strategic interactions are everywhere - business, politics, daily life.
|
||||
You've built a strong foundation in game theory!
|
||||
metadata_add:
|
||||
activity_completed: "true"
|
||||
brief_response:
|
||||
ai_feedback:
|
||||
tokens_for_ai: |
|
||||
Thank you for completing Game Theory 101!
|
||||
You've learned to think strategically about interactive decisions.
|
||||
These concepts underpin economics, politics, and much more!
|
||||
metadata_add:
|
||||
activity_completed: "true"
|
||||
set_language:
|
||||
content_blocks:
|
||||
- "Language updated!"
|
||||
metadata_add:
|
||||
language: "the-users-response"
|
||||
counts_as_attempt: false
|
||||
next_section_and_step: conclusion:step_1
|
||||
off_topic:
|
||||
content_blocks:
|
||||
- "Reflect: How might understanding incentives and strategic interaction help you in real-world situations?"
|
||||
next_section_and_step: conclusion:step_1
|
||||
Loading…
Add table
Add a link
Reference in a new issue