Burt Voorhees_presentation. - AUSpace

Modeling Virtual Stability With
a Population Simulation
Burton Voorhees & Joseph Senez
Center for Science
Athabasca University
Supported by NSERC Discovery Grant OGP 0024817,
NSERC Undergraduate Student Research Assistantships,
and grants from the Athabasca University Research Fund
Contributors:
Todd Keeler
Rhyan Arthur
National Science and Engineering Research Council of Canada
Undergraduate Summer Research Assistants
Martin Connors
Professor of Physics, Center for Science, Athabasca University
The Assumption of Stability
The standard assumption: Complex systems will be
found in states that are stable, or at least metastable,
with only occasional brief periods of transition
between such states.
The Principle of Selective Retention: “Stable
configurations are retained, unstable ones are
eliminated.”
Heylighen
Discrete State Space Models
Discrete models of complex systems generally assume
that the system state space is partitioned into basins of
attraction, determined by system dynamics. Each
basin represents a coarse-grained state of relative
stability. State space trajectories remain in a given
basin unless driven to another by system dynamics; or
until perturbed sufficiently by noise.
Discrete State Space Models
Robert May outlined the intuition behind this idea,
arguing that only small regions in a system parameter
space can provide long term stability. Note, however,
that the system state space is not the same as its
parameter space, but state space dynamics can lead to
dynamical changes in parameter values.
Discrete State Space Models
Stable states are determined by a fitness landscape: the
instantaneous system state remains near a fitness peak.
Applied specifically to models of evolution, a species
is characterized by a set of phenotypic parameters and
parameter values are expected to cluster in relatively
small regions falling within constraints imposed by
selective fitness barriers defining this peak.
Course Graining
State space trajectories are represented as a discrete
time series of transitions on a finite set of states. In this
course-grain version of the continuous representation
each basin of attraction corresponds to a distinct state in
the discrete model.
Control
Course-grained trajectories of complex adaptive
systems are not random. They represent adaptive
responses to environmental contingencies, or (in
systems with a cognitive component) goal directed
action sequences. In either case, the course-grained
system trajectory is determined by adaptive control
mechanisms.
Control and Transition
Control studies are especially important when human
value judgments are associated to the possible coarsegrained states of a complex system.
Both theoretical models and empirically studied
exemplary cases show that catastrophic jumps between
attractor basins do occur, and that such jumps may be
exceptionally difficult to reverse.
Control and Transition
Typically, a coarse-grained state appears relatively
unchanged over time, while system parameter values
change slowly in a way that drives the system trajectory
toward an attractor basin boundary, or weakens the
strength of the attractor, leaving the system vulnerable
to small fluctuations that move it to a new attractor
basin. A sudden jump of coarse-grained state occurs
and, due to hysteresis effects, returning system
parameters to earlier values does not reverse the jump.
Example: Ecology
“The pristine state of most shallow lakes is probably one of clear water and
a rich submerged vegetation. Nutrient loading has changed this situation
in many cases. Remarkably, water clarity seems to be hardly affected by
increased nutrient concentrations until a critical threshold is passed, at
which the lake shifts abruptly from clear to turbid. With this increase in
turbidity, submerged plants largely disappear. …Reduction of nutrient
concentration is often insufficient to restore the vegetated clear state.
Indeed, the restoration of clear water happens at substantially lower
nutrient levels than those at which the collapse of the vegetation occurred.”
M. Scheffer, S. Carpenter, J.A. Foley, C. Folke, & B. Walker (2001) Catastrophic shifts in
ecosystems. Nature 413 591-596
Psychology/Neurophysiology
“The core idea is to interpret mental representations as more or less stable
attractors… and states encoding the sensory information about the stimuli
as initial conditions….” Empirical results from experiments on bistable
perception suggest that transitions between the two possible perspectives
on the Necker cube illusion transit through an unstable “saddle” between
two relatively stable attractors. In this case, it is a matter of the projection
of a three dimensional object from a two dimensional image. The unstable
state is the objective perception of this two dimensional image, without the
projection of a third dimension. Anybody who makes the attempt will find
that it requires effort to maintain this perception—we have learned to
automatically see in three dimensions.
J. Kornmeier, M. Bach, & H. Atmanspacher (2004) Correlates of perceptive instabilities in
event-related potentials. International Journal of Bifurcation and Chaos 14(2) 727-736.
Examples such as these illustrate the centrality of stability and instability
for every area of complex systems theorizing.
Ashby’s Law of Requisite
Variety
In order to maintain systemic integrity in a fluctuating
environment the variety of responses available to a
system must be at least as great as the variety in the
spectrum of environmental perturbations.
There is an additional factor not taken into account in
this criteria.
The Importance of Instability
In terms of management and control, it is not only a
matter of maintaining a system in a desired state, but
of managing state transitions. It is not only a matter
of maintaining sufficient variety in a set of possible
responses, but also of being able to switch between
responses in a timely manner.
The Importance of Instability
This implies the existence of a trade-off between
stability and flexibility. It is easy to change an
unstable state, difficult to change a stable one: if a
possible behavioral response state is stable, change
consumes time and energy; if not stable, it is easy to
change, but energy is required to maintain it.
The Importance of Instability
If behavioral responses at the physiological, neural, and
habitual levels are relatively stable attractors, then
avoidance of commitment to an immediate response is like
remaining on an unstable boundary between possible
attracting behaviors. Maintaining such a state requires
effort and so exacts a cost. What is purchased by the
energy expended is increased behavioral flexibility in the
face of uncertainty.
Example: Standing
The standing posture is learned in early childhood and
automated as an unstable state, maintained by a process of
proprioceptive feedback and small muscular adjustments.
The resulting flexibility shows up in the ease of walking.
If standing were stable, the stability would act as an
attractive force maintaining the state. Every step would
require effort to overcome the stability and would feel like
walking uphill. As it is, taking a step is a controlled fall.
Virtual stability
• A state in which a system employs selfmonitoring and adaptive control in order to
maintain itself in a configuration that would
otherwise be unstable.
• A degree of instability is maintained, at a
certain cost, in order be able to quickly
adapt/move to a desired state.
Virtual Stability
Not the same as stability or metastability
Stability: There is a single global attractor, or the system is deterministic and
once an attractor basin is entered system trajectories remain there. If there is
noise, the system is stable against “small” perturbations.
Metastability: A system has multiple attractor basins with fractal boundaries
containing chaotic saddles. Basin boundary dimensions are close to the
dimension of the full state space. Even a small amount of noise can produce
transitions between attractor basins.
Virtual Stability: Through processes of self-monitoring and adaptive control
a system maintains itself on a boundary between two or more attractor basins.
Condition for Virtual Stability
Meta-level control functions direct the expenditure of energy
to maintain an unstable trajectory, or an unstable state. At a
minimum, this requires that a system have the capacity to
monitor its momentary state and produce adaptive responses
at a frequency high enough that only small (i.e.,
inexpensive) corrective actions are required.
The Popsim program
• The advantages/disadvantages of virtual stability are explored by
comparing a population of three types of individuals (A, B or C) in a
varying sequences of three different environments (A, B, or N).
• Stability and instability are modeled with probability. Populations A
and B are stable, with only a small chance of transition from A to B
or vice versa. Members of population C are virtually stable--they can
easily make transitions to both A and B. When members of
population C are acting as A, they are said to be in the state AC,
when they are acting as B they are said to be in the state BC.
• The program seeks conditions and sequences of environments that
will favor the stable A and B populations OR the virtually stable C
population.
States & Environments
Stable
Env A
State A:
low death
rate
State B:
high
death rate
Stable
Env B
State A:
high
death rate
State B:
low death
rate
Stable
Env N
State A:
medium
death rate
State B:
medium
death rate
Virtually Stable
State AC:
low death
rate
State C:
very high
death rate
State BC:
high
death rate
Virtually Stable
State AC:
high
death rate
State C:
very high
death rate
State BC:
low death
rate
Virtually Stable
State AC:
medium
death rate
State C:
very high
death rate
State BC:
medium
death rate
A Simulation
• The simulation consists of “exposing” the populations to a
sequence of environments (“AANBBAANNABBBNA…”) and
determining whether the AB populations or the C population
eventually dominate.
• For each entry in the sequence, the populations are put
through a “long run” in the specified environment.
Long run
in Env. B
New
Population
Long run
in Env. B
New
Population
Long run
in Env. N
New
Population
Long run
in Env. A
New
Population
New
Population
Original
Population
Long run
in Env. A
…
What is a long run?
• Each environment has a corresponding
transition matrix which is used to determine what
state changes an individual will undergo during a
long run.
• Every individual goes through a certain number
of short runs during one long run. For every
short run, the individual’s state will change (or
remain the same) according to the probabilities
specified in the environment’s transition matrix.
Sample Transition Matrix
T=
•
A
B
AC
BC
C
D
0.9
0.049
0
0
0
0
0.05
0.881
0
0
0
0
0
0
0.55
0.15
0.4
0
0
0
0.1
0.35
0.25
0
0
0
0.3
0.43
0.25
0
0.05
0.07
0.05
0.07
0.1
1
An individual in state AC, for example, will use the probabilities in column AC to determine where
they will end up. In this case they have a 0% chance of ending up in A, 0% chance of ending up in
B, a 55% chance of remaining in AC, a 10% chance of ending up in BC, a 30% chance of ending
up in C, and a 5% chance of dying.
Transition Matrix A
 AB
 AB 1  AB  e A 
0
0
0

 AB AB
0
0
0
1  AB  e A

0
0
d A C
 Cd A 1  C  e AC  d A 1  µ  e C 
TA  
0
0
d B 1  C  e AC 
 Cd B C
d B 1  µ  e C 


0
0
qB
 C qA
µ

eA
eB
e AC
e BC
eC

 AB 
1  eB
,
1  eA
n
e BC
dA  n
,
e AC  e n
BC
 BA 
1  eA
,
1  eB
C 
1  e BC
1  e AC
n
e AC
dB  n
e AC  e n
BC
qA  1  e AC 1  d A  C d A  d B ,
qA  1  e BC 1  d A  C d A  d B ,
•
0

0
0

0
0

1 
qB  1  e AC 1  d B  C d A  d B 
qB  1  e BC 1  d B  C d A  d B 
Since state A and state AC are favored, eA is less than eB and eAC is less
than eBC. Also, dA is greater than dB.
Transition Matrix N
AB
1   AB  e A

1    e
AB
AB
A


0
0


TN  
0
0



0
0


e
e

0
0
0
0
0
0
1
C
2
1
1  C  e AC 
2
1
C
2
1
1  e AC 
2
1
1  µ  e C 
2
1
1  µ  e C 
2
1
1  C  e AC 
2
1
1  e AC 
2
e AC
e AC
e = eB = eA and eBC = eAC, dB = dA = 0.5.
µ
eC
0
0


0


0

0

1 
Simulation parameters
•
•
•
•
•
•
All of the symbols in the preceding transition matrices represent parameters which
can be adjusted.
In addition to these, there are several other important parameters which can be
configured:
# of short runs per long run: this is the number of times an individual will have the
possibility of changing population type per long run.
Minimum # of short runs per long run: if an individual enters into a preferred state, it
can skip the rest of its short runs if has completed the minimum # of short runs. For
example, if the # of short runs is 6 and the min. # of short runs is 2, then if an
individual is in the preferred state after the 2nd short run (or subsequently), they will
skip the rest of their short runs. However, if the min # of short runs was 6, then they
would have to go through the rest of their short runs.
Continued mortality: this is a true/false flag. When true, it offers a variation on the
above theme: if an individual enters the preferred state it will remain there, except
that it can still die (according to the death rate for the preferred state).
Environmental percentages: These determine what % of the long runs will be in A,
what % will be in B, and what % will be in N.
Example of a long run in environment B
The starting population consists of 100 individuals. Each undergoes a number of short
runs (ex. 6) where they will use TB to determine any state transitions.
A
B
TB =
AC
BC
C
0.97753
0.00998
0
0
0
0.0125
0.01
0.98
0
0
0
0.01
0
0
0
0
0
0
0.11568 0.00118 0.08698
0.00879 0.86403 0.64802
0.86303 0.12479 0.25
0.0125
0.01
0.015
0
0
0
0
0
1
Every single individual in the population undergoes a series of 6 short runs per long run, unless it dies
before its short runs are completed.
Random #
Switch states
according to
matrix column 1
0.421
Random #
Switch states
according to
matrix column 1
0.623
Random #
Switch states
according to
matrix column 1
0.821
Random #
Switch states
according to
matrix column 1
0.304
Random #
Switch states
according to
matrix column 1
0.502
Random #
0.502
End of short runs
Switch states
according to
matrix column 1
Stay in
state A
}
(One short run)
Random #
0.743
Random #
Stay in
state A
Stay in
state A
Switch states
according to
matrix column 2
0.314
Random #
Stay in
state A
Switch states
according to
matrix column 1
0.975
Random #
Stay in
state A
Switch states
according to
matrix column 1
0.523
Random #
Stay in
state A
Switch states
according to
matrix column 1
0.992
Stay in
state A
Stay in
state A
Switch to
state B
Stay in
state B
Switch states
according to
matrix column 2
Death
Alternatively, the simulation can be set up so that the individual can exit from the short runs early if it
enters into the preferred state for that environment after a certain minimum number of short runs has
been completed (in this example the # of short runs is 6 and the minimum number of short runs is 1).
Random #
Switch states
according to
matrix column 1
0.421
Random #
Switch states
according to
matrix column 1
0.623
Random #
Switch states
according to
matrix column 1
0.821
Random #
Switch states
according to
matrix column 1
0.304
Random #
Switch states
according to
matrix column 1
0.502
Random #
0.502
End of short runs
Switch states
according to
matrix column 1
Stay in
state A
}
(One short run)
Random #
0.743
Random #
Stay in
state A
Stay in
state A
Stay in
state A
Switch states
according to
matrix column 1
0.975
Random #
Stay in
state A
Switch states
according to
matrix column 1
0.523
Random #
Stay in
state A
Switch states
according to
matrix column 1
Switch states
according to
matrix column 2
0.314
Entered into preferred
state: end of short runs
Stay in
state A
Stay in
state A
Switch to
state B
Stay in
state B
Once the series of short runs has been completed for each individual in the population,
the long run is complete. The overall effect of the long run might be as follows:
A
A
B
B
AC
AC
BC
BC
C
C
D
If these long runs were repeated, eventually everyone would die. Therefore, after every long run the dead individuals
are redistributed, and get added to the live states. This is done in a way which does not alter the proportions between
the states (if 30% of the live individuals are in state A, 30% of the dead individuals will be added to state A).
A
A
B
B
AC
AC
BC
BC
C
C
D
Representation of Results
After the entire sequence of long runs, either the C
populations or the A/B populations will tend dominate
(In some situations where they are equally favoured).
The history of the sequence of long runs is displayed in
barycentric coordinates in the 2-simplex. Vertices are
labeled by the three populations and points are plotted
with the relative distance from the base opposite a
vertex to the vertex equal to the proportion of the
corresponding population (ie. The closer a point is to
vertex C, the higher proportion C is of the total).
Example
A
(a=0.6, b=0.3, c=0.1)
0.1
0.3
0.6
B
C
Some Results
Testing the Effect of Number of Short Runs
• The short runs are the
number of times an
individual will attempt to
shift states per long
run.
• All other parameters
were kept constant
while the # of short
runs was modified. The
values of the other
parameters are shown
on the screenshot to
the right.
Number of Short Runs = 1
A
B
C
Number of Short Runs = 10
A
B
C
Number of Short Runs = 13
A
B
C
Number of Short Runs = 20
A
B
C
Testing the Effect of Minimum Short Runs
•
•
•
The minimum short runs is
used to determine how many
short runs an individual must go
through before remaining in the
preferred state.
All other parameters were kept
constant while the min. short
runs was modified. The values
of the other parameters are
shown on the screenshot to the
right.
The results are displayed in
barycentric coordinates on the
following sheets, with the A
population as the top vertex,
the B population as the left
vertex, and the C populations
as the right vertex.
Minimum Short Runs = 1
Minimum Short Runs = 5
Minimum Short Runs = 9
Minimum Short Runs = 11
Minimum Short Runs = 15
Minimum Short Runs = 20
Testing the Effect of Directionality Power
•
•
•
The directionality power is used
to determine dA and dB in the
transition matrices.
All other parameters were kept
constant while the directionality
power was modified. The
values of the other parameters
are shown on the screenshot to
the right.
The results are displayed in
barycentric coordinates on the
following sheets, with the A
population as the top vertex,
the B population as the left
vertex, and the C populations
as the right vertex.
Directionality Power = 1.0
A
B
C
Directionality Power = 5.0
A
B
C
Directionality Power = 10.0
A
B
C
Directionality Power = 15.0
A
B
C
Directionality Power = 20.0
A
B
C
Testing the Effect of m
•
•
•
m is the percentage of
individuals in the c state which
will stay in it (not shift to ac, bc,
or death) after one short run.
All other parameters were kept
constant while m was modified.
The values of the other
parameters are shown on the
screenshot to the right.
The results are displayed in
barycentric coordinates on the
following sheets, with the A
population as the top vertex,
the B population as the left
vertex, and the C populations
as the right vertex.
m = 0.1
m = 0.25
m = 0.4
m = 0.5
m = 0.7
Testing the Effect of AB
•
AB
is the percentage of
individuals in the a or b state
which will not switch states
after one short run.
• All other parameters were
kept constant while AB was
modified. The values of the
other parameters are shown
on the screenshot to the
right.
• The results are displayed in
barycentric coordinates on
the following sheets, with
the A population as the top
vertex, the B population as
the left vertex, and the C
populations as the right
vertex.
AB = 0.10
AB = 0.60
AB = 0.70
AB = 0.80
AB = 0.90
AB = 0.95
AB = 0.9875
Testing the Effects of Environment
Percentages
• The environment percentages determine which environment will be
used for a particular long run. If A = 0.4, B=0.4, and N=0.2, 40 % of
the long runs will be in the A environment, 40% will be in the B
environment, and 20% will be in the N environment.
• To determine the effect of modifying these percentages, a program
was created which would test thousands of different sets of
percentages by running a simulation for each. The results of each
simulation (on every set of percentages) were put into three different
categories: converges to C, converges to A and B, or converges to
neither repeatedly. All OTHER parameters are kept constant when
running these simulations.
Testing the Effects of Environment
Percentages
• This overall program implements an environment test. One
environment test involves up to 5150 simulations with different
environmental percentages. To see if modifying the environmental
percentages has a predictable effect, several environment tests
were conducted, each of which modified OTHER parameters.
• The environmental percentages are given by 3 parameters, hence
the results can be represented as a barycentric point in the same
way that populations are represented. Thus, all of the environmental
percentages for a particular environment test can be displayed as
points on a barycentric graph, color coded according to which
category they belong to. Alternatively, only those percentages which
fall into a particular category can be displayed. The barycentric
graph has the N percentage equal 1 at the top vertex, the A
percentage equal 1 at the left vertex, and the B percentage equal 1
at the right vertex.
Displaying different categories as different colors
•
•
Red points are environmental
percentages for which the
simulation converged to A or B.
Blue points are those for which the
simulation converged to C. Purple
points (difficult to see, on the
boundary between red and blue
points) are those for which the
simulation fals to repeatedly
converge to A and B or to C.
This is a somewhat difficult view. A
clearer picture is obtained by
filtering points so that only those
for which the simulation does not
converge (the boundary between
the 2 convergent categories) are
displayed.
Displaying only those percentages for which simulation fails
to reliably converge
Points above this
boundary curve
converge to A or B
while points below
the curve converge
to C.
Environment Test #1
• The results are
displayed in barycentric
coordinates on the
following sheets, with
the N percentage as
the top vertex, the A
percentage as the left
vertex, and the B
percentage as the right
vertex. Only those
“points” for which the
simulation did not
reliably converge are
shown.
Environment Test #1
Environment Test #2
• This environment test is the
exact same as test #1,
except it has a larger
directionality power.
• The results are displayed in
barycentric coordinates on
the following sheets, with
the N percentage as the top
vertex, the A percentage as
the left vertex, and the B
percentage as the right
vertex. Only those “points”
for which the simulation did
not reliably converge are
shown.
Environment Test #2
Environment Test #3
• This environment test is
similar to test #1, except it
has more short runs and a
higher directionality power.
• The results are displayed in
barycentric coordinates on
the following sheets, with
the N percentage as the top
vertex, the A percentage as
the left vertex, and the B
percentage as the right
vertex. Only those “points”
for which the simulation did
not reliably converge are
shown.
Environment Test #3
Environment Test #4
•
•
This environment test is quite
different from the previous
ones. It has minimum short
runs set to the same as short
runs, so no early exits are
allowed if the preferred state is
reached. Moreover, it has a
very high directionality power,
which means that almost all of
the C populations will end up in
the preferred state.
The results are displayed in
barycentric coordinates on the
following sheets, with the N
percentage as the top vertex,
the A percentage as the left
vertex, and the B percentage
as the right vertex. Only those
“points” for which the simulation
did not reliably converge are
shown.
Environment Test #4
Predicting the Boundary Curve
It is possible to estimate the winning population. Group A
and B populations into one class and the C, AC, and BC
populations into a second class. Estimate the overall
mortality rate for each class. The predicted winning
population will be that with the lowest mortality rate. The
predicted boundary curve is determined by setting the
mortality rates equal.
Predicting the Boundary Curve
The necessary information to do this is (a) the long run
mortality rate for each population in each environment; (b)
the percentage of each environment in the total sequence;
and (c) the average proportion of each population type in
its assigned class.
Predicting the Boundary Curve
The environmental percentages for (b) are specified a priori. To obtain the
long run mortality rates and the relative proportions of each population type
the matrices
L A   TAm  ms TAms
L B   TBm  ms TBms
L N  TNm
are computed. For an environment E these will have the form
0
0
0
0
 M E (A, B)
LE   0
0
M E (C)
0


 e A (E) e B (E) e AC (E) e BC (E) e C (E) 1 
The relative proportions of each population type are estimated from the
normalized eigenvectors of the matrices M(A,B) and M(C). Long run
mortality rates are given in the bottom row.
Comparison of Simulation and
Prediction
Test 1
Test 3
Test 2
Test 4
Mathematical representation of
simulation
• The simulation can be modeled: Each environment has a
characteristic transition matrix T used for the short runs.
From these we calculate a transition matrix for an entire
long run in a particular environment (call these matrices
LA, LB, and LN).
• If the sequence of environments was AABNAB…. , then,
neglecting the redistribution of the dead individuals, the
overall transition matrix of the whole simulation would be
….LBLALNLBLALA
Creating a transition matrix for an
entire long run in A.
• Assume that there are “n” short runs per long
run and “m” minimum short runs per long run.
We already have a matrix that models the
simulation for the first “m” short runs (the TA
introduced earlier).
Matrix for entire long run
• Now we need a matrix for the remaining “n-m”
short runs.
• If continued mortality is false, then all of the
individuals in states A and AC get stuck there.
This is modeled as follows:
TA' =
1
 AB(1- AB-e A)
0
0
0
0
0
 AB AB
0
0
0
0
0
0
1
 Cd A(1- C-e AC)
d A(1-m-e C)
0
0
0
0
 Cd B C
d B(1-m-e C)
0
0
0
0
 CqA
m
0
0
eB
0
e BC
eC
1
Matrix for entire long run
• If instead continued mortality is true, then all of
the individuals in states A and AC cannot move
to the other live states but still die at the normal
rate. This could be modeled as follows:
TA'' =
1-e A
 AB(1- AB-e A)
0
0
0
0
0
 AB AB
0
0
0
0
0
0
1-e AC
 Cd A(1- C-e AC)
d A(1-m-e C)
0
0
0
0
 Cd B C
d B(1-m-e C)
0
0
0
0
 CqA
m
0
eA
eB
e AC
e BC
eC
1
Combined Matrix for Long Run in A
• If continued mortality is false:
LA = (TA’)n-m(TA)m
• If continued mortality is true:
LA = (TA’’)n-m(TA)m
Combined Matrix for Long Run in B
• If continued mortality is false:
LB = (TB’)n-m x (TB)m
• If continued mortality is true:
LB = (TB’’)n-m x (TB)m
For a long run in N
• There is no preferred state:
• TN = TN’ = TN’, LN = (TN)n
Using the long run matrices to
model the simulation
•
The transition matrices for the long runs can
be used to model a simulation with a given
sequence of environments in two ways:
i.
ii.
•
Apply them in the same sequence to a population
vector.
Multiply them together in the same sequence to get
a combined transition matrix for the whole
simulation.
The catch is that the redistribution of the dead
step must also be taken into account.
Model of Simulation
• The population after the i’th long run can be expressed in
a series:
Pi = R(LiPi-1)
• where R is the redistribute dead function and Li is either
LA, LB, or LN depending on what environment the i’th long
run is in.
• If the sequence was AABN…, then
P1 = R(LAP0)
P2 = R(LAP1) = R(LA R(LAP0))
P3 = R(LBP2) = R(LBR(LA R(LAP0)))
P4 = R(LNP3) = R(LNR(LBR(LA R(LAP0))))
….
Redistribute the Dead Function
R(M)=
1
0
0
0
0
D1
0
1
0
0
0
D2
0
0
1
0
0
D3
0
0
0
1
0
D4
0
0
0
0
1
D5
0
0
0
0
0
0
6
5
*M
6
Di = ( S Mij )/( S (S Mkj))
j=1
k=1 j=1
• Where M is the combined matrix up to that point.
• Therefore, the overall combined matrix for the simulation with
sequence AABN…. would be:
• S = ….R(LNR(LBR(LAR(LA))))
• You work from the inside out to calculate it (can be done iteratively).
A formula to predict a winner
•
•
By predicting the death rates for the A/B populations and
the AC/BC/C populations, it is possible to predict which
group will grow to dominate.
There are three things we need to know in order to do
this is:
i. The death rate per long run of individuals in each of the states
for each environment.
ii. The percentage of long runs that are in each of the three
environments.
iii. On average, the relative proportion of A versus B and the
relative proportions of AC versus BC versus C at the start of
every long run.
•
(ii) is obvious, it’s one of the simulation’s parameters (so
long as the sequence of environments is determined by
these percentages and not by a Markov process).
(i)
• The death rate per long run for each of the
states can be found easily from the long run
matrix for each environment. The last row of the
matrix gives the death rate for individuals
starting in each state per long run.
LA =
0.918586
0.302283
0
0
0
0
0.042432
0.544182
0
0
0
0
0
0
0.9265
0.911885
0.916968
0
0
0
0.005614
0.007066
0.006252
0
0
0
0.006402
0.008058
0.00713
0
0.038982
0.153535
0.061485
0.072991
0.069649
1
Death rate
of A
Death rate
of B
Death rate
of AC
Death rate
of BC
Death rate
of C
(iii)
• To determine what the death rate for the A/B population
as a whole in a given environment is we need to know,
on average, what proportion of A/B is A and what
proportion is B (similarly for the AC/BC/C population).
• It is possible to predict what proportion of the A/B is A
and what is B after many long runs in one environment.
By getting a weighted (based on (ii)) average of these for
the three environments, we would then have a fairly
good estimate of what proportion of A/B is A and what is
B on average (again similarly for AC/BC/C).
• So how do we find that proportion for many long runs in
one environment?
From the long run matrix
LA =
0.918586
0.302283
0
0
0
0
0.042432
0.544182
0
0
0
0
0
0
0.9265
0.911885
0.916968
0
0
0
0.005614
0.007066
0.006252
0
0
0
0.006402
0.008058
0.00713
0
0.038982
0.153535
0.061485
0.072991
0.069649
1
• The linearly normalized eigenvector (for the largest eigenvalue) of
the shown 2x2 submatrix of the long run matrix gives the relative
proportions of A and B to each other after many long runs in this
particular environment.
• The linearly normalized eigenvector (for the largest eigenvalue) of
the shown 3x3 submatrix of the long run matrix gives the relative
proportions of AC, BC, and C to each other after many long runs in
this particular environment.
Calculating those relative
proportions
• Let pABi be the eigenvector of the 2x2 sub-matrix of Li
and pCi be the eigenvector of the 3x3 submatrix of Li,
where i is A, B, or N.
• Let pAB be the vector representing the proportion of A/B
that is A and that is B and pC be the vector representing
the proportion of AC/BC/C that is AC, BC, and C on
average.
• Let %A be the percentage on long runs that are in
environment A, etc.
• Then pAB = %A*pABA + %B*pABB + %N*pABN
• Then pC = %A*pCA + %B*pCB + %N*pCN
• Note that pAB = (pA,pB) and pC = (pAC,pBC,pC), where
pA+pB = 1 and pAC+pBC+pC = 1.
Death rates in each environment
• So now we know (i), (ii), and (iii).
• Let DABi be the death rate of the combined A/B
population in environment i (where i is A, B, or
N) and DCi be the death rate for the combined
AC/BC/C population.
• Let dAi, dBi, dACi, dBCi, and dCi be the death rates
per long run of each of the states in environment
i (this comes from last row of Li as described
earlier).
• Then DABi = pA*dAi +pB*dBi and
• DCi = pAC*dACi + pBC*dBCi + pC*dCi
Overall Death Rates
• Let DAB be the overall death rate for the
A/B population and DC be the overall
death rate for the AC/BC/C population.
• DAB = %A*DABA + %B*DABB + %N*DABN
• DC = %A*DCA + %B*DCB + %N*DCN
• If DC<DAB, then virtual stability wins,
otherwise traditional stability wins.
• Note that if DC is very close to DAB, then
neither will win consistently.