<?xml version="1.0" encoding="UTF-8" standalone="yes"?><oembed><version><![CDATA[1.0]]></version><provider_name><![CDATA[Azimuth]]></provider_name><provider_url><![CDATA[https://johncarlosbaez.wordpress.com]]></provider_url><author_name><![CDATA[John Baez]]></author_name><author_url><![CDATA[https://johncarlosbaez.wordpress.com/author/johncarlosbaez/]]></author_url><title><![CDATA[Stationary Stability in Finite&nbsp;Populations]]></title><type><![CDATA[link]]></type><html><![CDATA[<p><i>guest post by <b><a href="http://www.marcharper.net/">Marc Harper</a></b></i></p>
<p>A while back, in the article <a href="https://johncarlosbaez.wordpress.com/2014/01/22/relative-entropy-in-evolutionary-dynamics/">Relative entropy minimization in evolutionary dynamics</a>, we looked at extensions of the information geometry / evolutionary game theory story to more general time-scales, incentives, and geometries. Today we&#8217;ll see how to make this all work in finite populations!</p>
<p>Let&#8217;s recall the basic idea from last time, which John also described in his <a href="https://johncarlosbaez.wordpress.com/2012/06/07/information-geometry-part-11/">information geometry</a> series. The main theorem is this: when there&#8217;s an evolutionarily stable state for a given fitness landscape, the relative entropy between the stable state and the population distribution decreases along the population trajectories as they converge to the stable state.  In short, relative entropy is a <a href="http://en.wikipedia.org/wiki/Lyapunov_function">Lyapunov function</a>.  This is a nice way to look at the action of a population under natural selection, and it has interesting analogies to Bayesian inference.</p>
<p>The replicator equation is a nice model from an intuitive viewpoint, and it&#8217;s mathematically elegant.  But it has some drawbacks when it comes to modeling real populations. One major issue is that the replicator equation implicitly assumes that the population proportions of each type are differentiable functions of time, obeying a differential equation.  This only makes sense in the limit of large populations.  Other closely related models, such as the <a href="https://en.wikipedia.org/wiki/Lotka-Volterra_equation">Lotka-Volterra</a> model, focus on the number of individuals of each type (e.g. predators and prey) instead of the proportion. But they often assume that the number of individuals is a differentiable function of time, and a population of 3.5 isn&#8217;t very realistic either.</p>
<p>Real populations of replicating entities are not infinitely large; in fact they are often relatively small and of course have whole numbers of each type, at least for large biological replicators (like animals). They take up space and only so many can interact meaningfully. There are quite a few models of evolution that handle finite populations and some predate the replicator equation. Models with more realistic assumptions typically have to leave the realm of derivatives and differential equations behind, which means that the analysis of such models is more difficult, but the behaviors of the models are often much more interesting. Hopefully by the end of this post, you&#8217;ll see how all of these diagrams fit together:</p>
<div align="center">
<p><img src="https://i0.wp.com/www.azimuthproject.org/azimuth/files/ga_phase.png" width="250" /><br />
<br />
<img src="https://i0.wp.com/www.azimuthproject.org/azimuth/files/ga_stationary.png" width="350" /><br />
<br />
<img src="https://i2.wp.com/www.azimuthproject.org/azimuth/files/ga_d_0.png" width="350" /><br />
<br />
<img src="https://i0.wp.com/www.azimuthproject.org/azimuth/files/ga_d_1.png" width="350" /><br />

</div>
<p>One of the best-known finite population models is the <a href="http://en.wikipedia.org/wiki/Moran_process">Moran process</a>, which is a <a href="https://en.wikipedia.org/wiki/Markov_chain">Markov chain</a> on a finite population.  This is the quintessential birth-death process. For a moment consider a population of just two types <img src='https://s0.wp.com/latex.php?latex=A&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='A' title='A' class='latex' /> and <img src='https://s0.wp.com/latex.php?latex=B.&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='B.' title='B.' class='latex' /> The state of the population is given by a pair of nonnegative integers <img src='https://s0.wp.com/latex.php?latex=%28a%2Cb%29&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='(a,b)' title='(a,b)' class='latex' /> with <img src='https://s0.wp.com/latex.php?latex=a%2Bb%3DN%2C&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='a+b=N,' title='a+b=N,' class='latex' /> the total number of replicators in the population, and <img src='https://s0.wp.com/latex.php?latex=a&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='a' title='a' class='latex' /> and <img src='https://s0.wp.com/latex.php?latex=b&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='b' title='b' class='latex' /> the number of individuals of type <img src='https://s0.wp.com/latex.php?latex=A&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='A' title='A' class='latex' /> and <img src='https://s0.wp.com/latex.php?latex=B&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='B' title='B' class='latex' /> respectively. Though it may artificial to fix the population size <img src='https://s0.wp.com/latex.php?latex=N%2C&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='N,' title='N,' class='latex' /> this often turns out not to be that big of a deal, and you can assume the population is at its carrying capacity to make the assumption realistic. (Lots of people study populations that can change size and that have replicators spatially distributed say on a graph, but we&#8217;ll assume they can all interact with each whenever they want for now).</p>
<p>A Markov model works by transitioning from state to state in each round of the process, so we need to define the transitions probabilities to complete the model. Let&#8217;s put a fitness landscape on the population, given by two functions <img src='https://s0.wp.com/latex.php?latex=f_A&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='f_A' title='f_A' class='latex' /> and <img src='https://s0.wp.com/latex.php?latex=f_B&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='f_B' title='f_B' class='latex' /> of the population state <img src='https://s0.wp.com/latex.php?latex=%28a%2Cb%29.&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='(a,b).' title='(a,b).' class='latex' /> Now we choose an individual to reproduce proportionally to fitness, e.g. we choose an <img src='https://s0.wp.com/latex.php?latex=A&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='A' title='A' class='latex' /> individual to reproduce with probability</p>
<p><img src='https://s0.wp.com/latex.php?latex=%5Cdisplaystyle%7B+%5Cfrac%7Ba+f_A%7D%7Ba+f_A+%2B+b+f_B%7D+%7D&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='&#92;displaystyle{ &#92;frac{a f_A}{a f_A + b f_B} }' title='&#92;displaystyle{ &#92;frac{a f_A}{a f_A + b f_B} }' class='latex' /></p>
<p>since there are <img src='https://s0.wp.com/latex.php?latex=a&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='a' title='a' class='latex' /> individuals of type <img src='https://s0.wp.com/latex.php?latex=A&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='A' title='A' class='latex' /> and they each have fitness <img src='https://s0.wp.com/latex.php?latex=f_A.&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='f_A.' title='f_A.' class='latex' /> This is analogous to the ratio of fitness to mean fitness from the discrete replicator equation, since</p>
<p><img src='https://s0.wp.com/latex.php?latex=%5Cdisplaystyle%7B+%5Cfrac%7Ba+f_A%7D%7Ba+f_A+%2B+b+f_B%7D+%3D++%5Cfrac%7B%5Cfrac%7Ba%7D%7BN%7D+f_A%7D%7B%5Cfrac%7Ba%7D%7BN%7D+f_A+%2B+%5Cfrac%7Bb%7D%7BN%7D+f_B%7D+%5Cto+%5Cfrac%7Bx_i+f_i%28x%29%7D%7B%5Coverline%7Bf%28x%29%7D%7D+%7D&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='&#92;displaystyle{ &#92;frac{a f_A}{a f_A + b f_B} =  &#92;frac{&#92;frac{a}{N} f_A}{&#92;frac{a}{N} f_A + &#92;frac{b}{N} f_B} &#92;to &#92;frac{x_i f_i(x)}{&#92;overline{f(x)}} }' title='&#92;displaystyle{ &#92;frac{a f_A}{a f_A + b f_B} =  &#92;frac{&#92;frac{a}{N} f_A}{&#92;frac{a}{N} f_A + &#92;frac{b}{N} f_B} &#92;to &#92;frac{x_i f_i(x)}{&#92;overline{f(x)}} }' class='latex' /></p>
<p>and the discrete replicator equation is typically similar to the continuous replicator equation (this can be made precise), so the Moran process captures the idea of natural selection in a similar way. Actually there is a way to recover the replicator equation from the Moran process in large populations&#8212;details at the end!</p>
<p>We&#8217;ll assume that the fitnesses are nonnegative and that the total fitness (the denominator) is never zero; if that seems artificial, some people prefer to transform the fitness landscape by <img src='https://s0.wp.com/latex.php?latex=e%5E%7B%5Cbeta+f%28x%29%7D%2C&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='e^{&#92;beta f(x)},' title='e^{&#92;beta f(x)},' class='latex' /> which gives a ratio reminiscent of the Boltzmann or Fermi  distribution from statistical physics, with the parameter <img src='https://s0.wp.com/latex.php?latex=%5Cbeta&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='&#92;beta' title='&#92;beta' class='latex' /> playing the role of <b>intensity of selection</b> rather than inverse temperature. This is sometimes called <b>Fermi selection</b>.</p>
<p>That takes care of the birth part. The death part is easier: we just choose an individual at random (uniformly) to be replaced. Now we can form the transition probabilities of moving between population states.  For instance the probability of moving from state <img src='https://s0.wp.com/latex.php?latex=%28a%2Cb%29&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='(a,b)' title='(a,b)' class='latex' /> to <img src='https://s0.wp.com/latex.php?latex=%28a%2B1%2C+b-1%29&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='(a+1, b-1)' title='(a+1, b-1)' class='latex' /> is given by the product of the birth and death probabilities, since they are independent:</p>
<p><img src='https://s0.wp.com/latex.php?latex=%5Cdisplaystyle%7B+T_a%5E%7Ba%2B1%7D+%3D+%5Cfrac%7Ba+f_A%7D%7Ba+f_A+%2B+b+f_B%7D+%5Cfrac%7Bb%7D%7BN%7D+%7D+&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='&#92;displaystyle{ T_a^{a+1} = &#92;frac{a f_A}{a f_A + b f_B} &#92;frac{b}{N} } ' title='&#92;displaystyle{ T_a^{a+1} = &#92;frac{a f_A}{a f_A + b f_B} &#92;frac{b}{N} } ' class='latex' /></p>
<p>since we have to chose a replicator of type <img src='https://s0.wp.com/latex.php?latex=A&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='A' title='A' class='latex' /> to reproduce and one of type <img src='https://s0.wp.com/latex.php?latex=B&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='B' title='B' class='latex' /> to be replaced. Similarly for <img src='https://s0.wp.com/latex.php?latex=%28a%2Cb%29&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='(a,b)' title='(a,b)' class='latex' /> to <img src='https://s0.wp.com/latex.php?latex=%28a-1%2C+b%2B1%29&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='(a-1, b+1)' title='(a-1, b+1)' class='latex' /> (switch all the a&#8217;s and b&#8217;s), and we can write the probability of staying in the state <img src='https://s0.wp.com/latex.php?latex=%28a%2C+N-a%29&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='(a, N-a)' title='(a, N-a)' class='latex' /> as</p>
<p><img src='https://s0.wp.com/latex.php?latex=T_a%5E%7Ba%7D+%3D+1+-+T_%7Ba%7D%5E%7Ba%2B1%7D+-+T_%7Ba%7D%5E%7Ba-1%7D+&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='T_a^{a} = 1 - T_{a}^{a+1} - T_{a}^{a-1} ' title='T_a^{a} = 1 - T_{a}^{a+1} - T_{a}^{a-1} ' class='latex' /></p>
<p>Since we only replace one individual at a time, this covers all the possible transitions, and keeps the population constant.</p>
<p>We&#8217;d like to analyze this model and many people have come up with clever ways to do so, computing quantities like <b>fixation probabilities</b> (also known as <b>absorption probabilities</b>), indicating the chance that the population will end up with one type completely dominating, i.e. in state <img src='https://s0.wp.com/latex.php?latex=%280%2C+N%29&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='(0, N)' title='(0, N)' class='latex' /> or <img src='https://s0.wp.com/latex.php?latex=%28N%2C0%29.&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='(N,0).' title='(N,0).' class='latex' /> If we assume that the fitness of type <img src='https://s0.wp.com/latex.php?latex=A&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='A' title='A' class='latex' /> is constant and simply equal to 1, and the fitness of type <img src='https://s0.wp.com/latex.php?latex=B&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='B' title='B' class='latex' /> is <img src='https://s0.wp.com/latex.php?latex=r+%5Cneq+1%2C&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='r &#92;neq 1,' title='r &#92;neq 1,' class='latex' /> we can calculate the probability that a single mutant of type <img src='https://s0.wp.com/latex.php?latex=B&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='B' title='B' class='latex' /> will take over a population of type <img src='https://s0.wp.com/latex.php?latex=A&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='A' title='A' class='latex' /> using standard Markov chain methods:</p>
<p><img src='https://s0.wp.com/latex.php?latex=%5Cdisplaystyle%7B%5Crho+%3D+%5Cfrac%7B1+-+r%5E%7B-1%7D%7D%7B1+-+r%5E%7B-N%7D%7D+%7D&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='&#92;displaystyle{&#92;rho = &#92;frac{1 - r^{-1}}{1 - r^{-N}} }' title='&#92;displaystyle{&#92;rho = &#92;frac{1 - r^{-1}}{1 - r^{-N}} }' class='latex' /></p>
<p>For neutral relative fitness (<img src='https://s0.wp.com/latex.php?latex=r%3D1&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='r=1' title='r=1' class='latex' />), <img src='https://s0.wp.com/latex.php?latex=%5Crho+%3D+1%2FN%2C&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='&#92;rho = 1/N,' title='&#92;rho = 1/N,' class='latex' /> which is the probability a neutral mutant invades by drift alone since selection is neutral. Since the two boundary states <img src='https://s0.wp.com/latex.php?latex=%280%2C+N%29&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='(0, N)' title='(0, N)' class='latex' /> or <img src='https://s0.wp.com/latex.php?latex=%28N%2C0%29&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='(N,0)' title='(N,0)' class='latex' /> are absorbing (no transitions out), in the long run <i>every</i> population ends up in one of these two states, i.e. the population is homogeneous. (This is the formulation referred to by Matteo Smerlak in <a href="https://johncarlosbaez.wordpress.com/2012/10/08/the-mathematical-origin-of-irreversibility/">The mathematical origins of irreversibility</a>.)</p>
<p>That&#8217;s a bit different flavor of result than what we discussed previously, since we had stable states where both types were present, and now that&#8217;s impossible, and a bit disappointing. We need to make the population model a bit more complex to have more interesting behaviors, and we can do this in a very nice way by adding the effects of mutation. At the time of reproduction, we&#8217;ll allow either type to mutate into the other with probability <img src='https://s0.wp.com/latex.php?latex=%5Cmu.&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='&#92;mu.' title='&#92;mu.' class='latex' /> This changes the transition probabilities to something like</p>
<p><img src='https://s0.wp.com/latex.php?latex=%5Cdisplaystyle%7B+T_a%5E%7Ba%2B1%7D+%3D+%5Cfrac%7Ba+%281-%5Cmu%29+f_A+%2B+b+%5Cmu+f_B%7D%7Ba+f_A+%2B+b+f_B%7D+%5Cfrac%7Bb%7D%7BN%7D+%7D+&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='&#92;displaystyle{ T_a^{a+1} = &#92;frac{a (1-&#92;mu) f_A + b &#92;mu f_B}{a f_A + b f_B} &#92;frac{b}{N} } ' title='&#92;displaystyle{ T_a^{a+1} = &#92;frac{a (1-&#92;mu) f_A + b &#92;mu f_B}{a f_A + b f_B} &#92;frac{b}{N} } ' class='latex' /></p>
<p>Now the process never stops wiggling around, but it does have something known as a <b>stationary distribution</b>, which gives the probability that the population is in any given state <i>in the long run</i>.</p>
<p>For populations with more than two types the basic ideas are the same, but there are more neighboring states that the population could move to, and many more states in the Markov process. One can also use more complicated mutation matrices, but this setup is good enough to typically guarantee that no one species completely takes over. For interesting behaviors, typically <img src='https://s0.wp.com/latex.php?latex=%5Cmu+%3D+1%2FN&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='&#92;mu = 1/N' title='&#92;mu = 1/N' class='latex' /> is a good choice (there&#8217;s some biological evidence that mutation rates are typically inversely proportional to genome size).</p>
<p>Without mutation, once the population reached <img src='https://s0.wp.com/latex.php?latex=%280%2CN%29&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='(0,N)' title='(0,N)' class='latex' /> or <img src='https://s0.wp.com/latex.php?latex=%28N%2C0%29%2C&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='(N,0),' title='(N,0),' class='latex' /> it stayed there. Now the population bounces between states, either because of drift, selection, or mutation. Based on our stability theorems for evolutionarily stable states, it&#8217;s reasonable to hope that for small mutation rates and larger populations (less drift), the population should spend most of its time near the evolutionarily stable state. This can be measured by the stationary distribution which gives the long run probabilities of a process being in a given state.</p>
<p>Previous work by Claussen and Traulsen:</p>
<p>&bull; Jens Christian Claussen and Arne Traulsen, <a href="http://arxiv.org/abs/cond-mat/0409656">Non-Gaussian fluctuations arising from finite populations: exact results for the evolutionary Moran process</a>, <i><a href="http://journals.aps.org/pre/abstract/10.1103/PhysRevE.71.025101">Physical Review E</a></i> <b>71</b> (2005), 025101.</p>
<p>suggested that the stationary distribution is at least sometimes maximal around evolutionarily stable states. Specifically, they showed that for a very similar model with fitness landscape given by</p>
<p><img src='https://s0.wp.com/latex.php?latex=%5Cleft%28%5Cbegin%7Barray%7D%7Bc%7D+f_A+%5C%5C+f_B+%5Cend%7Barray%7D%5Cright%29++%3D+%5Cleft%28%5Cbegin%7Barray%7D%7Bcc%7D+1+%26+2%5C%5C+2%261+%5Cend%7Barray%7D%5Cright%29++%5Cleft%28%5Cbegin%7Barray%7D%7Bc%7D+a%5C%5C+b+%5Cend%7Barray%7D%5Cright%29+&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='&#92;left(&#92;begin{array}{c} f_A &#92;&#92; f_B &#92;end{array}&#92;right)  = &#92;left(&#92;begin{array}{cc} 1 &amp; 2&#92;&#92; 2&amp;1 &#92;end{array}&#92;right)  &#92;left(&#92;begin{array}{c} a&#92;&#92; b &#92;end{array}&#92;right) ' title='&#92;left(&#92;begin{array}{c} f_A &#92;&#92; f_B &#92;end{array}&#92;right)  = &#92;left(&#92;begin{array}{cc} 1 &amp; 2&#92;&#92; 2&amp;1 &#92;end{array}&#92;right)  &#92;left(&#92;begin{array}{c} a&#92;&#92; b &#92;end{array}&#92;right) ' class='latex' /></p>
<p>the stationary state is essentially a binomial distribution centered at <img src='https://s0.wp.com/latex.php?latex=%28N%2F2%2C+N%2F2%29.&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='(N/2, N/2).' title='(N/2, N/2).' class='latex' /></p>
<p>Unfortunately, the stationary distribution can be very difficult to compute for an arbitrary Markov chain. While it can be computed for the Markov process described above without mutation, and in the case studied by Claussen and Traulsen, there&#8217;s no general analytic formula for the process with mutation, nor for more than two types, because the processes are not <i>reversible</i>. Since we can&#8217;t compute the stationary distribution analytically, we&#8217;ll have to find another way to show that the local maxima of the stationary distribution are &#8220;evolutionarily stable&#8221;. We can approximate the stationary distribution fairly easily with a computer, so it&#8217;s easy to plot the results for just about any landscape and reasonable population size (e.g. <img src='https://s0.wp.com/latex.php?latex=N+%5Capprox+100&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='N &#92;approx 100' title='N &#92;approx 100' class='latex' />).</p>
<p>It turns out that we can use a relative entropy minimization approach, just like for the continuous replicator equation! But how? We lack some essential ingredients such as deterministic and differentiable trajectories. Here&#8217;s what we do:</p>
<p>&bull; We show that the local maxima and minima of the stationary distribution satisfy a <i>complex balance</i> criterion.</p>
<p>&bull; We then show that these states minimize an <i>expected</i> relative entropy.</p>
<p>&bull; This will mean that the current state and the <i>expected next state</i> are &#8216;close&#8217;.</p>
<p>&bull; Lastly, we show that these states satisfy an analogous definition of evolutionary stability (now incorporating mutation).</p>
<p>The relative entropy allows us to measure how close the current state is to the expected next state, which captures the idea of stability in another way.  This ports the relative minimization Lyapunov result to some more realistic Markov chain models. The only downside is that we&#8217;ll assume the populations are &#8220;sufficiently large&#8221;, but in practice for populations of three types, <img src='https://s0.wp.com/latex.php?latex=N%3D20&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='N=20' title='N=20' class='latex' /> is typically enough for common fitness landscapes (there are lots of examples <a href="http://people.mbi.ucla.edu/marcharper/stationary_stable/3x3/incentive.html">here</a> for <img src='https://s0.wp.com/latex.php?latex=N%3D80%2C&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='N=80,' title='N=80,' class='latex' /> which are prettier than the smaller populations). The reason for this is that the population state <img src='https://s0.wp.com/latex.php?latex=%28a%2Cb%29&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='(a,b)' title='(a,b)' class='latex' /> needs enough &#8220;resolution&#8221; <img src='https://s0.wp.com/latex.php?latex=%28a%2FN%2C+b%2FN%29&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='(a/N, b/N)' title='(a/N, b/N)' class='latex' /> to get sufficiently close to the stable state, which is not necessarily a ratio of integers. If you allow some wiggle room, smaller populations are still typically pretty close.</p>
<p>Evolutionarily stable states are closely related to Nash equilibria, which have a nice intuitive description in traditional game theory as &#8220;states that no player has an incentive to deviate from&#8221;. But in evolutionary game theory, we don&#8217;t use a game matrix to compute e.g. maximum payoff strategies, rather the game matrix defines a fitness landscape which then determines how natural selection unfolds.</p>
<p>We&#8217;re going to see this idea again in a moment, and to help get there let&#8217;s introduce an function called an <b>incentive</b> that encodes how a fitness landscape is used for selection. One way is to simply replace the quantities <img src='https://s0.wp.com/latex.php?latex=a+f_A%28a%2Cb%29&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='a f_A(a,b)' title='a f_A(a,b)' class='latex' /> and <img src='https://s0.wp.com/latex.php?latex=b+f_B%28a%2Cb%29&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='b f_B(a,b)' title='b f_B(a,b)' class='latex' /> in the fitness-proportionate selection ratio above, which now becomes (for two population types):</p>
<p><img src='https://s0.wp.com/latex.php?latex=%5Cdisplaystyle%7B+%5Cfrac%7B%5Cvarphi_A%28a%2Cb%29%7D%7B%5Cvarphi_A%28a%2Cb%29+%2B+%5Cvarphi_B%28a%2Cb%29%7D+%7D&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='&#92;displaystyle{ &#92;frac{&#92;varphi_A(a,b)}{&#92;varphi_A(a,b) + &#92;varphi_B(a,b)} }' title='&#92;displaystyle{ &#92;frac{&#92;varphi_A(a,b)}{&#92;varphi_A(a,b) + &#92;varphi_B(a,b)} }' class='latex' /></p>
<p>Here <img src='https://s0.wp.com/latex.php?latex=%5Cvarphi_A%28a%2Cb%29&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='&#92;varphi_A(a,b)' title='&#92;varphi_A(a,b)' class='latex' /> and <img src='https://s0.wp.com/latex.php?latex=%5Cvarphi_B%28a%2Cb%29&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='&#92;varphi_B(a,b)' title='&#92;varphi_B(a,b)' class='latex' /> are the incentive function components that determine how the fitness landscape is used for natural selection (if at all). We have seen two examples above:</p>
<p><img src='https://s0.wp.com/latex.php?latex=%5Cvarphi_A%28a%2Cb%29+%3D+a+f_A%28a%2C+b%29&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='&#92;varphi_A(a,b) = a f_A(a, b)' title='&#92;varphi_A(a,b) = a f_A(a, b)' class='latex' /></p>
<p>for the Moran process and fitness-proportionate selection, and</p>
<p><img src='https://s0.wp.com/latex.php?latex=%5Cvarphi_A%28a%2Cb%29+%3D+a+e%5E%7B%5Cbeta+f_A%28a%2C+b%29%7D&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='&#92;varphi_A(a,b) = a e^{&#92;beta f_A(a, b)}' title='&#92;varphi_A(a,b) = a e^{&#92;beta f_A(a, b)}' class='latex' /></p>
<p>for an alternative that incorporates a strength of selection term <img src='https://s0.wp.com/latex.php?latex=%5Cbeta%2C&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='&#92;beta,' title='&#92;beta,' class='latex' /> preventing division by zero for fitness landscapes defined by zero-sum game matrices, such as a rock-paper-scissors game. Using an incentive function also simplifies the transition probabilities and results as we move to populations of more than two types. Introducing mutation, we can describe the ratio for incentive-proportion selection with mutation for the <img src='https://s0.wp.com/latex.php?latex=i&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='i' title='i' class='latex' />th population type when the population is in state <img src='https://s0.wp.com/latex.php?latex=x%3D%28a%2Cb%2C%5Cldots%29+%2F+N&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='x=(a,b,&#92;ldots) / N' title='x=(a,b,&#92;ldots) / N' class='latex' /> as</p>
<p><img src='https://s0.wp.com/latex.php?latex=%5Cdisplaystyle%7B+p_i%28x%29+%3D+%5Cfrac%7B%5Csum_%7Bk%3D1%7D%5E%7Bn%7D%7B%5Cvarphi_k%28x%29+M_%7Bi+k%7D+%7D%7D%7B%5Csum_%7Bk%3D1%7D%5E%7Bn%7D%7B%5Cvarphi_k%28x%29%7D%7D+%7D&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='&#92;displaystyle{ p_i(x) = &#92;frac{&#92;sum_{k=1}^{n}{&#92;varphi_k(x) M_{i k} }}{&#92;sum_{k=1}^{n}{&#92;varphi_k(x)}} }' title='&#92;displaystyle{ p_i(x) = &#92;frac{&#92;sum_{k=1}^{n}{&#92;varphi_k(x) M_{i k} }}{&#92;sum_{k=1}^{n}{&#92;varphi_k(x)}} }' class='latex' /></p>
<p>for some matrix of mutation probabilities <img src='https://s0.wp.com/latex.php?latex=M.&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='M.' title='M.' class='latex' /> This is just the probability that we get a new individual of the <img src='https://s0.wp.com/latex.php?latex=i&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='i' title='i' class='latex' />th type (by birth and/or mutation). A common choice for the mutation matrix is to use a single mutation probability <img src='https://s0.wp.com/latex.php?latex=%5Cmu&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='&#92;mu' title='&#92;mu' class='latex' /> and spread it out over all the types, such as letting</p>
<p><img src='https://s0.wp.com/latex.php?latex=M_%7Bij%7D+%3D+%5Cmu+%2F+%28n-1%29&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='M_{ij} = &#92;mu / (n-1)' title='M_{ij} = &#92;mu / (n-1)' class='latex' /></p>
<p>and</p>
<p><img src='https://s0.wp.com/latex.php?latex=M_%7Bii%7D+%3D+1+-+%5Cmu&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='M_{ii} = 1 - &#92;mu' title='M_{ii} = 1 - &#92;mu' class='latex' /></p>
<p>Now we are ready to define the <b>expected next state</b> for the population and see how it captures a notion of stability. For a given state population <img src='https://s0.wp.com/latex.php?latex=x&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='x' title='x' class='latex' /> in a multitype population, using <img src='https://s0.wp.com/latex.php?latex=x&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='x' title='x' class='latex' /> to indicate the normalized population state <img src='https://s0.wp.com/latex.php?latex=%28a%2Cb%2C%5Cldots%29+%2F+N%2C&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='(a,b,&#92;ldots) / N,' title='(a,b,&#92;ldots) / N,' class='latex' /> consider all the neighboring states <img src='https://s0.wp.com/latex.php?latex=y&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='y' title='y' class='latex' /> that the population could move to in one step of the process (one birth-death cycle). These neighboring states are the result of increasing a population type by one (birth) and decreasing another by one (death, possibly the same type), of course excluding cases on the boundary where the number of individuals of any type drops below zero or rises above <img src='https://s0.wp.com/latex.php?latex=N.&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='N.' title='N.' class='latex' /> Now we can define the expected next state as the sum of neighboring states weighted by the transition probabilities</p>
<p><img src='https://s0.wp.com/latex.php?latex=E%28x%29+%3D+%5Csum_%7By%7D%7By+T_x%5E%7By%7D%7D&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='E(x) = &#92;sum_{y}{y T_x^{y}}' title='E(x) = &#92;sum_{y}{y T_x^{y}}' class='latex' /></p>
<p>with transition probabilities given by</p>
<p><img src='https://s0.wp.com/latex.php?latex=T_%7Bx%7D%5E%7By%7D+%3D+p_%7Bi%7D%28x%29+x_%7Bj%7D&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='T_{x}^{y} = p_{i}(x) x_{j}' title='T_{x}^{y} = p_{i}(x) x_{j}' class='latex' /></p>
<p>for states <img src='https://s0.wp.com/latex.php?latex=y&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='y' title='y' class='latex' /> that differ in <img src='https://s0.wp.com/latex.php?latex=1%2FN&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='1/N' title='1/N' class='latex' /> at the <img src='https://s0.wp.com/latex.php?latex=i&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='i' title='i' class='latex' />th coordinate and <img src='https://s0.wp.com/latex.php?latex=-1%2FN&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='-1/N' title='-1/N' class='latex' /> at <img src='https://s0.wp.com/latex.php?latex=j&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='j' title='j' class='latex' />th coordinate from <img src='https://s0.wp.com/latex.php?latex=x.&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='x.' title='x.' class='latex' /> Here <img src='https://s0.wp.com/latex.php?latex=x_j&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='x_j' title='x_j' class='latex' /> is just the probability of the random death of an individual of the <img src='https://s0.wp.com/latex.php?latex=j&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='j' title='j' class='latex' />th type, so the transition probabilities are still just birth (with mutation) and death as for the Moran process we started with.</p>
<p>Skipping some straightforward algebraic manipulations, we can show that</p>
<p><img src='https://s0.wp.com/latex.php?latex=%5Cdisplaystyle%7B+E%28x%29+%3D+%5Csum_%7By%7D%7By+T_x%5E%7By%7D%7D+%3D+%5Cfrac%7BN-1%7D%7BN%7Dx+%2B+%5Cfrac%7B1%7D%7BN%7Dp%28x%29%7D+&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='&#92;displaystyle{ E(x) = &#92;sum_{y}{y T_x^{y}} = &#92;frac{N-1}{N}x + &#92;frac{1}{N}p(x)} ' title='&#92;displaystyle{ E(x) = &#92;sum_{y}{y T_x^{y}} = &#92;frac{N-1}{N}x + &#92;frac{1}{N}p(x)} ' class='latex' /></p>
<p>Then it&#8217;s easy to see that <img src='https://s0.wp.com/latex.php?latex=E%28x%29+%3D+x&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='E(x) = x' title='E(x) = x' class='latex' /> if and only if <img src='https://s0.wp.com/latex.php?latex=x+%3D+p%28x%29%2C&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='x = p(x),' title='x = p(x),' class='latex' /> and that <img src='https://s0.wp.com/latex.php?latex=x+%3D+p%28x%29&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='x = p(x)' title='x = p(x)' class='latex' /> if and only if <img src='https://s0.wp.com/latex.php?latex=x_i+%3D+%5Cvarphi_i%28x%29.&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='x_i = &#92;varphi_i(x).' title='x_i = &#92;varphi_i(x).' class='latex' /> So we have a nice description of &#8216;stability&#8217; in terms of fixed points of the expected next state function and the incentive function</p>
<p><img src='https://s0.wp.com/latex.php?latex=x+%3D+E%28x%29+%3D+p%28x%29+%3D+%5Cvarphi%28x%29%2C&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='x = E(x) = p(x) = &#92;varphi(x),' title='x = E(x) = p(x) = &#92;varphi(x),' class='latex' /></p>
<p>and we&#8217;ve gotten back to &#8220;no one has an incentive to deviate&#8221;. More precisely, for the Moran process</p>
<p><img src='https://s0.wp.com/latex.php?latex=%5Cvarphi_i%28x%29+%3D+x_i+f_i%28x%29&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='&#92;varphi_i(x) = x_i f_i(x)' title='&#92;varphi_i(x) = x_i f_i(x)' class='latex' /></p>
<p>and we get back <img src='https://s0.wp.com/latex.php?latex=f_i%28x%29+%3D+f_j%28x%29&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='f_i(x) = f_j(x)' title='f_i(x) = f_j(x)' class='latex' /> for every type. So we take <img src='https://s0.wp.com/latex.php?latex=x+%3D+%5Cvarphi%28x%29&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='x = &#92;varphi(x)' title='x = &#92;varphi(x)' class='latex' /> as our analogous condition to an evolutionarily stable state, though it&#8217;s just the &#8216;no motion&#8217; part and not also the &#8216;stable&#8217; part. That&#8217;s what we need the stationary distribution for!</p>
<p>To turn this into a useful number that measures stability, we use the relative entropy of the expected next state and the current state, in analogy with the Lyapunov theorem for the replicator equation. The <a href="https://en.wikipedia.org/wiki/Kullback%E2%80%93Leibler_divergence">relative entropy</a></p>
<p><img src='https://s0.wp.com/latex.php?latex=%5Cdisplaystyle%7B+D%28x%2C+y%29+%3D+%5Csum_i+x_i+%5Cln%28x_i%29+-+y_i+%5Cln%28x_i%29+%7D&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='&#92;displaystyle{ D(x, y) = &#92;sum_i x_i &#92;ln(x_i) - y_i &#92;ln(x_i) }' title='&#92;displaystyle{ D(x, y) = &#92;sum_i x_i &#92;ln(x_i) - y_i &#92;ln(x_i) }' class='latex' /></p>
<p>has the really nice property that <img src='https://s0.wp.com/latex.php?latex=D%28x%2Cy%29+%3D+0&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='D(x,y) = 0' title='D(x,y) = 0' class='latex' /> if and only if <img src='https://s0.wp.com/latex.php?latex=x+%3D+y%2C&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='x = y,' title='x = y,' class='latex' /> so we can use the relative entropy <img src='https://s0.wp.com/latex.php?latex=D%28E%28x%29%2C+x%29&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='D(E(x), x)' title='D(E(x), x)' class='latex' /> as a measure of <i>how close to stable</i> any particular state is!  Here the expected next state takes the place of the &#8216;evolutionarily stable state&#8217; in the result described last time for the replicator equation.</p>
<p>Finally, we need to show that the maxima (and minima) of of the stationary distribution are these fixed points by showing that these states minimize the expected relative entropy.</p>
<p>Seeing that local maxima and minima of the stationary distribution minimize the expected relative entropy is a more involved, so let&#8217;s just sketch the details. In general, these Markov processes are not reversible, so they don&#8217;t satisfy the <a href="https://johncarlosbaez.wordpress.com/2012/10/08/the-mathematical-origin-of-irreversibility/">detailed-balance condition</a>, but the stationary probabilities do satisfy something called the global balance condition, which says that for the stationary distribution <img src='https://s0.wp.com/latex.php?latex=s&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='s' title='s' class='latex' /> we have that</p>
<p><img src='https://s0.wp.com/latex.php?latex=s_x+%5Csum_%7Bx%7D%7BT_x%5E%7By%7D%7D+%3D+%5Csum_%7By%7D%7Bs_y+T_y%5E%7Bx%7D%7D&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='s_x &#92;sum_{x}{T_x^{y}} = &#92;sum_{y}{s_y T_y^{x}}' title='s_x &#92;sum_{x}{T_x^{y}} = &#92;sum_{y}{s_y T_y^{x}}' class='latex' /></p>
<p>When the stationary distribution is at a local maximum (or minimum), we can show essentially that this implies (up to an <img src='https://s0.wp.com/latex.php?latex=%5Cepsilon%2C&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='&#92;epsilon,' title='&#92;epsilon,' class='latex' /> for a large enough population) that</p>
<p><img src='https://s0.wp.com/latex.php?latex=%5Cdisplaystyle%7B%5Csum_%7Bx%7D%7BT_x%5E%7By%7D%7D+%3D+%5Csum_%7By%7D%7BT_y%5E%7Bx%7D%7D+%7D&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='&#92;displaystyle{&#92;sum_{x}{T_x^{y}} = &#92;sum_{y}{T_y^{x}} }' title='&#92;displaystyle{&#92;sum_{x}{T_x^{y}} = &#92;sum_{y}{T_y^{x}} }' class='latex' /></p>
<p>a sort of probability inflow-outflow equation, which is very similar to the condition of complex balanced equilibrium described by Manoj Gopalkrishnan in this <a href="https://johncarlosbaez.wordpress.com/2014/01/07/lyapunov-functions-for-complex-balanced-systems/">Azimuth post</a>. With some algebraic manipulation, we can show that these states have <img src='https://s0.wp.com/latex.php?latex=E%28x%29%3Dx.&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='E(x)=x.' title='E(x)=x.' class='latex' /></p>
<p>Now let&#8217;s look again at the figures from the start.   The first shows the vector field of the replicator equation:</p>
<div align="center">
<img src="https://i0.wp.com/www.azimuthproject.org/azimuth/files/ga_phase.png" width="250" />
</div>
<p>You can see rest points at the center, on the center of each boundary edge, and on the corner points. The center point is evolutionarily stable, the center points of the boundary are semi-stable (but stable when the population is restricted to a boundary simplex), and the corner points are unstable.</p>
<p>This one shows the stationary distribution for a finite population model with a Fermi incentive on the same landscape, for a population of size 80:</p>
<div align="center">
<img src="https://i0.wp.com/www.azimuthproject.org/azimuth/files/ga_stationary.png" width="350" />
</div>
<p>A fixed population size gives a partitioning of the simplex, and each triangle of the partition is colored by the value of the stationary distribution. So you can see that there are local maxima in the center and on the centers of the triangle boundary edges. In this case, the size of the mutation probability determines how much of the stationary distribution is concentrated on the center of the simplex.</p>
<p>This shows one-half of the Euclidean distance squared between the current state and the expected next state:</p>
<div align="center">
<img src="https://i2.wp.com/www.azimuthproject.org/azimuth/files/ga_d_0.png" width="350" />
</div>
<p>And finally, this shows the same thing but with the relative entropy as the &#8216;distance function&#8217;:</p>
<div align="center">
<img src="https://i0.wp.com/www.azimuthproject.org/azimuth/files/ga_d_1.png" width="350" />
</div>
<p>As you can see, the Euclidean distance is locally minimal at each of the local maxima and minima of the stationary distribution (including the corners); the relative entropy is only guaranteed so on the interior states (because the relative entropy doesn&#8217;t play nicely with the boundary, and unlike the replicator equation, the Markov process can jump on and off the boundary). It turns out that the relative R&eacute;nyi entropies for <img src='https://s0.wp.com/latex.php?latex=q&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='q' title='q' class='latex' /> between 0 and 1 also work just fine, but for the large population limit (the replicator dynamic), the relative entropy is the somehow the right choice for the replicator equation (has the derivative that easily gives Lyapunov stability), which is due to the connections between relative entropy and Fisher information in the information geometry of the simplex. The Euclidean distance is the <img src='https://s0.wp.com/latex.php?latex=q%3D0&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='q=0' title='q=0' class='latex' /> case and the ordinary relative entropy is <img src='https://s0.wp.com/latex.php?latex=q%3D1.&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='q=1.' title='q=1.' class='latex' /></p>
<p>As it turns out, something very similar holds for another popular finite population model, the Wright&ndash;Fisher process! This model is more complicated, so if you are interested in the details, check out our <a href="http://arxiv.org/abs/1311.0941">paper</a>, which has many nice examples and figures. We also define a process that bridges the gap between the atomic nature of the Moran process and the generational nature of the Wright&ndash;Fisher process, and prove the general result for that model.</p>
<p>Finally, let&#8217;s see how the Moran process relates back to the replicator equation (see also the appendix in this <a href="http://www.ped.fas.harvard.edu/people/faculty/publications_nowak/JTB_06.pdf">paper</a>), and how we recover the stability theory of the replicator equation. We can use the transition probabilities of the Moran process to define a stochastic differential equation (called a Langevin equation) with drift and diffusion terms that are essentially (for populations with two types:</p>
<p><img src='https://s0.wp.com/latex.php?latex=%5Cmathrm%7BDrift%7D%28x%29+%3D+T%5E%7B%2B%7D%28x%29+-+T%5E%7B-%7D%28x%29+&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='&#92;mathrm{Drift}(x) = T^{+}(x) - T^{-}(x) ' title='&#92;mathrm{Drift}(x) = T^{+}(x) - T^{-}(x) ' class='latex' /></p>
<p><img src='https://s0.wp.com/latex.php?latex=%5Cdisplaystyle%7B+%5Cmathrm%7BDiffusion%7D%28x%29+%3D+%5Csqrt%7B%5Cfrac%7BT%5E%7B%2B%7D%28x%29+%2B+T%5E%7B-%7D%28x%29%7D%7BN%7D%7D+%7D&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='&#92;displaystyle{ &#92;mathrm{Diffusion}(x) = &#92;sqrt{&#92;frac{T^{+}(x) + T^{-}(x)}{N}} }' title='&#92;displaystyle{ &#92;mathrm{Diffusion}(x) = &#92;sqrt{&#92;frac{T^{+}(x) + T^{-}(x)}{N}} }' class='latex' /></p>
<p>As the population size gets larger, the diffusion term drops out, and the stochastic differential equation becomes essentially the replicator equation. For the stationary distribution, the variance (e.g. for the binomial example above) also has an inverse dependence on <img src='https://s0.wp.com/latex.php?latex=N%2C&#038;bg=ffffff&#038;fg=000&#038;s=0' alt='N,' title='N,' class='latex' /> so the distribution limits to a delta-function that is zero except for at the evolutionarily stable state!</p>
<p>What about the relative entropy? Loosely speaking, as the population size gets larger, the iteration of the expected next state also becomes deterministic. Then the evolutionarily stable states is a fixed point of the expected next state function, and the expected relative entropy is essentially the same as the ordinary relative entropy, at least in a neighborhood of the evolutionarily stable state.  This is good enough to establish local stability.</p>
<p>Earlier I said both the local maxima and minima minimize the expected relative entropy. Dash and I haven&#8217;t proven that the local maxima always correspond to evolutionarily stable states (and the minima to unstable states). That&#8217;s because the generalization of evolutionarily stable state we use is really just a &#8216;no motion&#8217; condition, and isn&#8217;t strong enough to imply stability in a neighborhood for the deterministic replicator equation. So for now we are calling the local maxima <b>stationary stable</b> states.</p>
<p>We&#8217;ve also tried a similar approach to populations evolving on networks, which is a popular topic in evolutionary graph theory, and the results are encouraging! But there are many more &#8216;states&#8217; in such a process, since the configuration of the network has to be taken into account, and whether the population is clustered together or not. See the end of our <a href="http://arxiv.org/abs/1311.0941">paper</a> for an interesting example of a population on a cycle.</p>
]]></html><thumbnail_url><![CDATA[https://i0.wp.com/www.azimuthproject.org/azimuth/files/ga_phase.png?fit=440%2C330]]></thumbnail_url><thumbnail_height><![CDATA[330]]></thumbnail_height><thumbnail_width><![CDATA[330]]></thumbnail_width></oembed>