]> granicus.if.org Git - afpopgen/commitdiff
preliminary notes
authorNathan Wagner <nw@hydaspes.if.org>
Wed, 21 Jan 2015 18:29:42 +0000 (12:29 -0600)
committerNathan Wagner <nw@hydaspes.if.org>
Wed, 21 Jan 2015 18:29:42 +0000 (12:29 -0600)
notes.tex [new file with mode: 0644]

diff --git a/notes.tex b/notes.tex
new file mode 100644 (file)
index 0000000..084fc27
--- /dev/null
+++ b/notes.tex
@@ -0,0 +1,165 @@
+\documentclass[article,12pt]{memoir}
+
+\begin{document}
+
+\begin{centering}
+Modeling Early Human African Migration
+
+Nathan Wagner
+
+\today
+\end{centering}
+
+\chapter{Model Basics}
+
+\section{Space}
+
+100 Km hexes, which have an area of (slightly over) $8660 km^2$.
+
+A map of Africa is divided into these hexes, each of which is
+given a climate, which determines the carrying capacity.
+As the coastline does not follow the hexside lines, each coastal
+hex would not fill a full hex.  No provision is made for this,
+each hex is taken to fill the entire hex area.  Given
+the number of hexes in the model, I don't think that this will
+have any significant effect.  The map has 3559 hexes.
+
+\section{Climatic Changes}
+
+I will build a 42000 year sine wave for sahara rainfall, and when
+the value gets high enough for a given row of hexes (i.e. latitude)
+I will change the climate to steppe.
+
+This isn't a very good model, the sahel region should migrate north
+and the better regions should follow along, so the climate model
+will need some tweaking.  However, I don't intend to build a general
+climate model (as fun as that might be), so it's going to have
+to be somewhat simplified.  I envision at some point hand picking
+hexes to be "climate centers" whose setting and influence would
+be modeled with sine waves, the sum interaction of which would
+determine the climate for any given hex, along with the altitude.
+
+There has been some topographic changes over the last 130000 years,
+but I'm not sure those need to be modeled, with the possible exception
+of the growth and shrinkage of Lake Chad.  I would like to avoid
+worrying about thinks like topographic uplift or glacial rebound (probably
+not a factor in Africa anyway)
+
+The climate changes probably happen relatively slowly, but it might
+be worth making the carrying capacity a bit smaller the time
+step after a hex changes climate to reflect the need to adjust
+the behavorial strategies needed for the new climate
+
+I conflate climate and terrain.
+
+\section{Time}
+
+Time steps in generations.
+
+Generation length set by parameter, will assume 25 years for initial runs.
+
+\section{Populations}
+
+Within each hex, there is a set of populations.  These are homogenous
+in terms of their capabilities, that is, no population has a selective
+advantage over another.
+
+\subsection{Growth Rate}
+
+I assume that the annual rate of growth without specific resource constraints
+for a hunter-gatherer population would be one child per four years per fertile
+female.  Assuming half the population is female, and that one third of the
+women are in their childbearing years, that would lead to 1/2 * 1/3 * 1/4 of
+the population giving birth each year (which is 1/24, which I will round to
+4\%).  I assume further that 3/4 of the children will turn out to be viable.
+So, in each year, the population increases by 3\%.  For a 25 year time step,
+that is then an increase of $ 1.03^{25} - 1 $ which is 109\% per time step.  I would
+just round this off to 100\%, but I think it makes sense for the annual rate to
+be settable so that if I get better numbers than those I just made up they will
+be easy to plug in.
+
+Some late reading:
+
+An Optimal Foraging-Based Model of Hunter-Gatherer Population Dynamics\\
+GARY E. BELOVSKY\\
+Department of Biology and School of Natural Resources, University of Michigan, Ann Arbor, Michigan, 48109-1115\\
+Received May 23, 1988
+
+Seems to imply 1.3\%/year as the best case.  There are also some notes about
+migration and such.  I will probably get some numbers out of there.  1.3\%/year
+at best would imply a 38\% growth per time step.
+
+This base rate ($r$) will then be fed in to a logistic growth model, and
+so the population at time step $t+1$ will be $r * P * (1 - P/K) $
+
+I assume that the good and bad years average out over the time step
+and don't account for them, other than by assumptions about the
+carrying capacity of any given hex.
+
+\subsection{Migration}
+
+Each time step a fraction of the population(s) in each hex will migrate
+to an adjacent hex.  A tunable fraction of the emigrating population
+will actually then be added to the population in the adjacent hexes.
+
+The specific fraction that migrates I still need to figure out.  I think it
+should depend on the relative population (i.e. how close to the carrying
+capacity the population is), how nice the neighboring hex is, how full the
+target hex is, and some settable "propensity to migrate".  The propensity to
+migrate might be either a cultural or genetic factor specific to a population,
+or perhaps a global parameter.  I haven't given this much thought yet.
+
+It is possible that migration will put a hex over its carrying capacity.
+I don't think that any specific population truncation is needed, the
+logistic growth function should pull the population back down, but
+I need to make sure that it doesn't approach the limit from either
+side but won't ever cross it coming down.  If the latter is the
+case, then some "die off" provision will need to be put into the
+code.
+
+\subsection{Carrying Capacity}
+
+The paper above gives some interesting graphs, which imply that
+the relationship between primary productivity and sustainable
+HG population density is not linear, particularly
+at the low end.  He claims (I think, only skimmed) a primary
+productivity of $200 g/m^2$ average, which supports about 10 people
+per 100 $km^2$, though at $800 g/m^2$ it's closer to 100, with wide
+swings.
+
+Given his data, we would have the following capacities for hexes
+(eyeballed from graphs and rounded)
+
+\begin{tabular}{rr}
+Prod & Cap\\\toprule
+100 & 220\\
+200 & 860\\
+400 & 3500\\
+800 & 7800\\
+\bottomrule
+\end{tabular}
+
+It might be easier to just model primary productivity rather than climate
+as such.
+
+I note with 3559 hexes in the map, at 860 people per hex, on average, that
+gives an effective maximum population in africa of about three million.
+
+\chapter{Model Implementation}
+
+\section{Model Iterations}
+
+\begin{verbatim}
+Each Time Step:
+
+for each hex:
+       calculate climate
+       increase (or decrease) population by a given amount
+       remove migrating populations and add them to a migration
+       bucket for the adjacent hexes.
+       
+add the migration buckets to each hex (done after the for each
+hex calculations to avoid artifacts of hex traversal order)
+\end{verbatim}
+
+\end{document}