The evolution of early hominin food production and sharing
This notebook contains the code used to produce the figures in the manuscript “The evolution of early hominin food production and sharing” by Ingela Alger, Slimane Dridi, Jonathan Stieglitz, and Michael Wilson.
General model specifications (foraging)
General model specifications (foraging)
Functions
Functions
Figures for optimal foraging strategies, *a(g) and *b(g)
Figures for optimal foraging strategies, (g) and (g)
*
a
*
b
Optimal female foraging strategy, *a(g)
Optimal female foraging strategy, (g)
*
a
Optimal male foraging strategy, *b(g)
Optimal male foraging strategy, (g)
*
b
Culturally stable sharing in the promiscuous mating system
Culturally stable sharing in the promiscuous mating system
Using the general results provided in the Supplementary Information text, we derived manually the Culturally stable sharing strategies (solSpMan) and (solTpMan):
*
s
*
t
In[]:=
solSpMan=;
H(a+bn(-1+2t)+a(-1+g-n)θ)+F
1-a
+n(-1+2t)1-b-g-δθ
(1+n)
1-a
F+aH(1+(-1+g)θ)In[]:=
solTpMan=;
bH+aHθ+F
1-b-g-δθ
+(-1+2s)1-a
F+aH(1+(-1+g)θ)2bH+F
1-b-g-δθ
N=18
N=18
N=36
N=36
Culturally stable sharing in the polygynous and monogamous mating systems
Culturally stable sharing in the polygynous and monogamous mating systems
Using the general results provided in the Supplementary Information text, we derived manually the Culturally stable sharing strategies (solSgMan) and (solTgMan):
*
s
*
t
In[]:=
solSgMan=+aH(1+(-1+g)θ)-F;
1-a
F-bH+aH(k-n)θ(1-g)
-1+n
1-b-g-δθ
+(1+k)tbH+F
1-b-g-δθ
k
(1+k)
1-a
F+aH(1+(-1+g)θ)In[]:=
solTgMan=;
bH++F
aH(-k+n)θ(1-g)
-1+n
1-b-g-δθ
+k(-1+2s)1-a
F+aH(1+(-1+g)θ)2bH+F
1-b-g-δθ
N=18
N=18
g=0
g=0
g=0.25
g=0.25
g=0.5
g=0.5
N=36
N=36
g=0
g=0
g=0.25
g=0.25
g=0.5
g=0.5
Ecological transition
Ecological transition
Functions
Functions
Figures
Figures
N=18
N=18
Division of labour
Division of labour
Functions
Functions
Legend
Legend
Promiscuous mating system
Promiscuous mating system
N=18
N=18
In[]:=
divLaborPnum[18,1,{0.01,10},0.025,{0.01,0.99},0.0025,{{Darker[Blue],Blue,Cyan,LightBlue},{Red,Orange,Pink,LightRed},{Darker[Green],Green,Yellow,LightGreen}},{Style["Food theft intensity, θ",16],Style["Relative value of extracted food, H/F",16]},16,0.007]
Out[]=
N=36
N=36
In[]:=
divLaborPnum[36,1,{0.01,10},0.025,{0.01,0.99},0.0025,{{Darker[Blue],Blue,Cyan,LightBlue},{Red,Orange,Pink,LightRed},{Darker[Green],Green,Yellow,LightGreen}},{Style["Food theft intensity, θ",16],Style["Relative value of extracted food, H/F",16]},16,0.007]
Out[]=
Monogamous and Polygynous mating systems
Monogamous and Polygynous mating systems
N=18
N=18
k=1
g=0
In[]:=
Np=18;gp=0;kp=1;divLaborGnum[gp,kp,Np,1,{0.01,10},0.025,{0.01,1-gp-0.001},0.0025,{{Darker[Blue],Blue,Cyan,LightBlue},{Red,Orange,Pink,LightRed},{Darker[Green],Green,Yellow,LightGreen}},{Style["Food theft intensity, θ",20],Style["Relative value of extracted food, H/F",20]},20,0.007]
Out[]=
k=1
g=0.25
In[]:=
Np=18;gp=0.25;kp=1;divLaborGnum[gp,kp,Np,1,{0.01,10},0.025,{0.01,1-gp-0.001},0.0025,{{Darker[Blue],Blue,Cyan,LightBlue},{Red,Orange,Pink,LightRed},{Darker[Green],Green,Yellow,LightGreen}},{Style["Food theft intensity, θ",16],Style["Relative value of extracted food, H/F",16]},16,0.007]
Out[]=
In[]:=
Show[
,FrameLabel{Style["Food theft intensity, θ",20],Style["Relative value of extracted food, H/F",20]},LabelStyleDirective[FontSize20],FrameStyleDirective[FontSize20]]
Out[]=
k=1
g=0.5
In[]:=
Np=18;gp=0.5;kp=1;divLaborGnum[gp,kp,Np,1,{0.01,10},0.025,{0.01,1-gp-0.001},0.0025,{{Darker[Blue],Blue,Cyan,LightBlue},{Red,Orange,Pink,LightRed},{Darker[Green],Green,Yellow,LightGreen}},{Style["Food theft intensity, θ",16],Style["Relative value of extracted food, H/F",16]},16,0.007]
Out[]=
In[]:=
Show[
,FrameLabel{Style["Food theft intensity, θ",20],Style["Relative value of extracted food, H/F",20]},LabelStyleDirective[FontSize20],FrameStyleDirective[FontSize20]]
Out[]=
k=2
g=0
In[]:=
Np=18;gp=0;kp=2;divLaborGnum[gp,kp,Np,1,{0.01,10},0.025,{0.01,1-gp-0.001},0.0025,{{Darker[Blue],Blue,Cyan,LightBlue},{Red,Orange,Pink,LightRed},{Darker[Green],Green,Yellow,LightGreen}},{Style["Food theft intensity, θ",16],Style["Relative value of extracted food, H/F",16]},16,0.007]
Out[]=
In[]:=
Show[
,FrameLabel{Style["Food theft intensity, θ",20],Style["Relative value of extracted food, H/F",20]},LabelStyleDirective[FontSize20],FrameStyleDirective[FontSize20]]
Out[]=
k=2
g=0.25