Learning Scenario - Princes and Princesses (Vensim)
Basic Model:
Description
This is a model of the interactions between five populations - princes, frogs, princesses,
sleeping beauties, and witches. As the simulation runs, witches transform princes into frogs and
princesses into sleeping beauties, while princes can transform sleeping beauty's back into a
princess and princesses turn frogs back to princes. The total number of princes and frogs,
princesses and sleeping beauties, and witches are fixed; members of the populations can be
converted to members of other populations, but there is no birth or death.
Background Information
According to traditional fairy tales, princes are sometimes transformed by witches into frogs, and
princesses are sometimes poisoned by witches so that they enter an enchanted sleep. In either
case, the cure for this aliment is a kiss from their opposite number. This simulation models this
story as if it were a population problem. All five groups exist within this model and interact
with one another as the stories suggest, allowing the user to see how these effects determine the
size of each population over time.
Science/Math
This model works on the basic principle of HAVE = HAD + CHANGE for each of the population
groups. Each tick, a certain number of princes are converted to frogs, princesses are converted
to sleeping beauties, and vice versa. The conversion rates are proportional to the other
populations in the model, including the population of witches (which does not change over time).
Each pair of populations (prince/frog, princess/sleeping beauty) has a fixed total, so knowing
the population of one of the pairs is sufficient to determine the population of the other. The
model's evolution can be roughly described by the following equations:
Sleeping Beauties: SBeauties = SBeauties + a * Witches
Princesses: Princesses = Princesses + b * Princes
Frogs: Frogs = Frogs + c * Witches
Princes: Princes = Princes + d * Princesses
For all of these equations, a, b, c, and d are arbitrary proportions that determine the rate at
which members of the population are converted. In the actual model, these constants are randomly
determined separately for each tick, so the evolution of the model is not pre-determined.
Teaching Strategies
An effective way of introducing this model is to have students discuss fairy tales that they
heard when they were younger. In particular, ask students to think about ways in which they
could model a fairy tale using a population model. Nearly all fairy tales involve the changing
of an individual from one type of person to another, so be sure students consider the ways in
which individuals change from one to another. Ask the following questions:
In your fairy tale, in what way can members of one population convert from being members of one
group to members of another?
What rules are there in your model that might not be included in a different model?
Does an agent model or a system model make more sense to represent your fairy tale? Why?
Are there any important pieces of your model that cannot be directly represented by an agent or
system model? How can you approximate/account for these issues?
When they finish brainstorming, have students draw a conceptual diagram of the different groups
of individuals in their model. Discuss the ways in which individuals can change group,
represented by an arrow from their previous group to their new group. Once students have
finished brainstorming, have them open the model itself and see to what extent their diagram
matches the Vensim diagram.
Implementation:
How to use the Model
This systems model has five parameters that can be manipulated to give a result, as follows:
Witch density: the number of witches in the model
Whacked: the rate at which princes are converted into frogs, dependent on the quantity of
witches
Poisoned: the rate at which princesses are converted into sleeping beauties, dependent on the
quantity of witches
Kissed by a prince: the rate at which sleeping beauties are converted into princesses, dependent
on the quantity of princes
Kissed by a princess: the rate at which frogs are converted into princes, dependent on the
quantity of princesses
Each of these parameters can be manipulated by right-clicking on it and choosing "Equation".
This allows users to set the exact values for the parameters in question. A faster and more
intuitive method, though a less accurate one, is to click and drag the slider below the witch
density. The slider can only be used while the simulation is running, but it will update
instantly, so you can immediately see how changing the parameters changes the results. When the
applet is run, it will automatically run for 200 time periods, measuring and recording the
values of each parameter at each time period. The data is then displayed on graphs displayed on
top of each variable, including dependent variables that are not set by the user. Looking at the
graphs gives an easy and simple way to follow the changes over time in each of the populations
and the overall outcome. The quantities over time for all four changeable populations are also
displayed on the larger graph to the right of the simulation area, making it easy to compare the
relative size of each group. For more information on Vensim, reference the Vensim tutorial at:
http://shodor.org/tutorials/VensimIntroduction/Preliminaries.
Learning Objectives:
Understand the effect of each parameter on the outcomes for each population. Understand the
effect and importance of the random element in calculating the next round
Objective 1
To accomplish this objective, have students run the model without changing any parameters.
Explain how the results are displayed on the model: the simulation runs for 100 time steps, and
then displays the quantities of each population at each time step on their own graphs. The
graphs aren't particularly detailed or well scaled, but they give quick and easy insight into
the overall population changes over time. The simulation with default settings generates
equilibrium. Ask the following questions:
Does the total number of individuals being modeled change over time? Why or why not?
Why do you think that the model goes to equilibrium as it is currently set up?
Does the fixed population imply that there must be an equilibrium, or is it possible to set up
the model so that it goes to completion?
If it is possible to make the model go to completion, what parameters should be changed to make
that occur?
Now, have students implement one of their proposed modifications and note the changes. Ask the
following questions:
What happens to the population of each group over time now? Is that what you were looking for?
Given the element of randomness in the model, can you guarantee that your model will always go
to completion? Why or why not?
Objective 2
To accomplish this objective, have students consider what it means to include a random
multiplier in all of the proportions calculated each round. Ask the following questions:
By what percentage can the random multiplier change the outcome in the first round? In the
second? In the 100th (estimate)? What does this tell you about including random factors in
recursive models like this?
Agent models also have an element of randomness, in that each agent usually moves about and
interacts with the others randomly. Does adding a random element here make this model a better
or worse representation of an agent model? Why? (Answer: worse - randomizations don't "cancel
out", so it is no closer to the other model than before. Additionally, without a random factor
the system model is guaranteed to give us the mean or expected value of the agent model; but
with a random factor that is no longer the case)
What are some reasons that a modeler might choose to include a random factor in his/her systems
model?
Extensions:
Expand the model to include a new group, wizards, that can kill off witches
Understand the ways in which this model is applicable to the real world
Extension 1
Ask students to brainstorm adding a new population group that would interact with witches,
wizards. This will require not only adding a new group, but also modifying the Witches group to
allow it to be considered as a variable population rather than a fixed parameter. Wizards' sole
interaction with the world is that they kill witches, so the witch population will exponentially
decrease proportional to the number of wizards. After adding the new variable, students should
ensure that the population of witches, previously hidden, will now be displayed on the graph.
Ask students the following questions:
How does the population of witches change over time? In what ways is its graph different from
the previous parameter graphs?
How have the graphs for the other variables changed since wizards were implemented? Why?
Does this model go to completion or equilibrium? Why? Is it possible to get the other result
from this model without setting any parameters to zero? How do you know?
Extension 2
Ask students to think about other types of models that might have four populations that are
paired up in this manner, with a fifth population that interacts with the other four but does
not change. Common answers might include a reversible chemical reaction (where witches are the
catalyst) or a multiple disease model (where witches are doctors and Sleeping/Frog is being
sick). Whatever students choose, ask them to modify their existing model to represent their new
usage by renaming groups or changing parameters. Ask the following questions:
Why do you think that this model is a good representation for the phenomenon you chose to model?
What changes did you make to the model in order to have it simulate your chosen phenomenon? Were
they primarily cosmetic, or was the basic structure of the model changed as well?
Afterwards, have the class as a whole discuss and present their models. Emphasize the fact that
all of these proposed models can be created simply by slightly modifying this relatively simple
model. Aside from making the Princes and Princesses model useful, this also reveals important
parallels between models that might not normally be related to one another.
This model is useful as an example of a real-world situation where the structure behind Princes
and Princesses is useful. As in this model, the disease model simulates the conversion of
individuals back and forth between two populations, based on pre-set proportions. Unlike this
model, however, the disease model has many different parameters that combine to form the
proportion, rather than just a single number. This illustrates the key concept of abstraction -
collecting many individual details into a single "black box" in order to make analysis simpler.
It is also important to note that although the disease model is an agent model and this model is
a system model, there aren't clear differences in the amount of randomness between the models.
The Princes and Princesses models already calculates each round by a stochastic process, so it
essentially abstracts the process of individually calculating each member of the population by
estimating them as a group.
This model is useful as an example of how the Princes and Princesses model can be used to
simulate chemical reactions. Out of all the other applets, Reversible Consecutive First-Order
Reactions is perhaps the one most closely related to Princes and Princesses. Both models track
populations moving reversibly between different groups and allow reaction rates to be set by a
single number. The main difference is that RCFOR allows members of all three populations to
convert into one another, while Princes and Princesses confines individuals to one of the two
pairs of populations. RCFOR also lacks the random element that characterizes Princes and
Princesses, so its result is completely determinate. This makes it a good analogue for what the
model would be like if there were no randomness. On average, the random model should
approximately equal the determined model (assuming equal parameters), and its approximation
should get more accurate the more times it is run and averaged.
This model is another chemical reaction model closely related to Princes and Princesses. This is
an agent model and only contains a single reactant and a single product, but it does include an
enzyme. This enzyme acts in a similar manner to the witches in the Princes and Princesses model
- it causes members of one population to convert to members of another, but does so without
itself changing. This can be used to specifically compare the enzyme part of the Princes and
Princesses model to an agent model.