MATLAB Answers


how to plot the phase portraits of a onlinear dynamics of rock-paper-scissors game model

Asked by Cui Pengbi on 20 Aug 2018
Latest activity Commented on by Cui Pengbi on 21 Aug 2018
Let x,y, and z denote the relative frequencies of individuals playing rock, paper, and scissors, respectively. Then x + y + z = 1 or z = 1 − x − y. By eliminating z in this fashion, one can capture the dynamics of the three strategies by studying x and y alone: x'=x*(f_x-p)+u*(-2*x+y+z), y'=y*(f_y-p)+u*(-2*y+x+z), f_x and f_y denote the expected fitness of individuals playing rock and paper, respectively, and p = x*f_x + y*f_y + z*f_z is the average fitness in the whole population.
Then the question is how can I plot the phase diagram like this:
I'm sorry for missing some key informations: the payoffs of the three strategies are:
p = x*f_x + y*f_y + z*f_z
is the average fitness in the whole population.
According to the restriction: x+y+z=1.0, the ODEs of the system could be simplified as:
And the initial conditions are
x_0=1/3. y_0=1/3, z_0=1/3.
The values of the parameters are:
(1u=0.4 and e=2,
(2) u=0.05 and e=5


Sign in to comment.

1 Answer

Answer by Mischa Kim
on 21 Aug 2018
 Accepted Answer

Hi Cui, there are two steps you need to take to get to your desired result:
  1. Solve the differential equations (DE): Essentially you have a system of two coupled DE in x and y. See this answer to get started.
  2. Plot the solution of the differential equation in a triangular plot: There are a couple of examples of triangular shaped plots on our File Exchange. Search for ternary and entropy plot. Hope this helps.

  1 Comment

Thanks! It indeed works. And now the next problem is how to extend this to the case of simplex 4 when there are four variables to be considered:

Sign in to comment.