load( url( "https://webs.um.es/jfcalvo/eco1.RData" ) )Modelos de dinámica poblacional
Práctica 4, Ecología I
Grado en Biología
Introducción
En esta práctica analizaremos las características de diversos modelos de dinámica poblacional considerando poblaciones con crecimiento densoindependiente, con crecimiento densodependiente, y poblaciones estructuradas en clases de edades o estadios. Analizaremos también la influencia de diferentes parámetros que caracterizan la demografía de poblaciones estructuradas (distribución estable de edades/estadios y valor reproductivo) y realizaremos un ejercicio de introducción a los modelos estocásticos, aprendiendo a interprear el significado de la varianza de las tasas de crecimiento, y su influencia en las estimas de la probabilidad o riesgo de (cuasi)extinción. Por último, analizaremos las características generales del modelo de metapoblaciones de Levins.
En concreto, los objetivos de la práctica son:
Analizar la evolución temporal de poblaciones con crecimiento densoindependiente.
Analizar e interpretar las características generales de los modelos logísticos (crecimiento densodependiente).
Analizar la evolución temporal de poblaciones estructuradas con crecimiento densoindependiente.
Interpretar la influencia de la distribución de edades/estadios estable (DEE) y del valor reproductivo en la dinámica de poblaciones estructuradas.
Conocer las características generales de los modelos estocásticos, interpretando el efecto de la varianza de las tasas de crecimiento en la estimación de las probabilidades de (cuasi)extinción.
Conocer las características generales del modelo de metapoblaciones de Levins.
Preparación
Una vez iniciado R cargaremos el archivo de datos y funciones desde el servidor:
Usando ls() podemos ver los objetos cargados. Utiliza la función info para obtener información sobre ellos; por ejemplo: info( "modelo" ) o info( "ganso" ). Teclea info() para más información.
La función modelo
La función modelo permite simular una amplia variedad de modelos de crecimiento poblacional: densoindependientes, densodependientes, de poblaciones estructuradas y estocásticos. Los argumentos que podemos proporcionar a la función son los siguientes:
modelo( lambda, r, R, K, theta, tiempo, N0, mod, comp, mat, n0, mu, s2, Nx, sim, CDF )
Los primeros cinco (
lambda,r,R,Kytheta) son los parámetros de las ecuaciones discretas y continuas de crecimiento exponencial (densoindependiente) y logístico (densodependiente);
tiempopermite fijar el horizonte temporal de proyección;
N0establece el tamaño inicial de la población;
modespecífica el modelo logístico a utilizar:case(por defecto),ricker,thetaybegon;
comppermite comparar los cuatro modelos logísticos (comp = TRUE);
matindica una matriz de proyección (población estructurada);
n0es el vector inicial de edades/estadios de una población estructurada;
mues la tasa de crecimiento de un modelo estocástico (\(\mu\));
s2es la varianza de \(\mu\);
Nxes el tamaño de población crítico (umbral de cuasiextinción en modelos estocásticos);
simes el número de simulaciones a realizar en un modelo estocástico; y
CDFespecifica, para modelos estocásticos, la opción de visualizar únicamente la función de distribución acumulada (que representa la probabilidad de extinción en función del tiempo;CDF = TRUE).
Crecimiento densoindependiente
Recordemos el modelo discreto de crecimiento denso-independiente:
\[N_{t+1} = \lambda\ N_{t} = e^r \ N_t\] \[N_{t} = \lambda^{t}\ N_{0}= e^{rt} \ N_t\]
Realizaremos algunos cálculos sencillos en R, considerando por ejemplo una \(\lambda\) = 1.05 y un tamaño de población inicial (\(N_0\)) de 20 individuos:
lambda <- 1.05
N0 <- 20
N <- NA
N[ 1 ] <- lambda * N0
N[ 2 ] <- lambda * N[ 1 ]
N[ 3 ] <- lambda * N[ 2 ]
N[ 4 ] <- lambda * N[ 3 ]
N[ 5 ] <- lambda * N[ 4 ]
NPodemos comprobar que el resultado final (\(N_5\)) se obtiene también usando la ecuación general:
lambda ^ 5 * N0También podemos utilizar la función modelo con los parámetros correspondientes:
modelo( lambda = 1.05, N0 = 20, tiempo = 5 )La ecuación representa un modelo de crecimiento exponencial, que puede apreciarse mejor si consideramos un horizonte temporal mayor; por ejemplo:
modelo( lambda = 1.05, N0 = 20, tiempo = 25 )La función modelo proporciona los valores de los parámetros \(lambda\), \(r\) y \(R\), independientemente de cuál hayamos indicado. Comprueba que:
\[r = \log_e \lambda \qquad \qquad \lambda - 1=R \qquad \qquad R= e^r - 1\]
Ya sabemos, por otra parte, que si \(\lambda\) < 1, o \(r\) < 0, la población disminuirá con el tiempo. Por ejemplo:
modelo( r = -0.05, N0 = 20, tiempo = 25 )Crecimiento densodependiente
Los modelos logísticos requieren la especificación de dos parámetros: la tasa de crecimiento (\(R\) o \(r\)) y la capacidad de carga (\(K\)), que representa el máximo número de individuos de la población. La función modelo permite comparar cuatro modelos discretos de crecimiento logístico:
Case (2000):
\[N_{t + 1} = N_{t}\left( 1 + R\left( 1 - \frac{N_{t}}{K} \right) \right)\]
Ricker:
\[N_{t + 1} = N_{t} \ e^{r\left( 1 - \frac{N_{t}}{K} \right)}\]
\(\theta\)-logístico:
\[N_{t + 1} = N_{t} \ e^{r\left( 1 - \left( \frac{N_{t}}{K} \right)^{\theta} \right)}\]
Begon et al. (1988):
\[N_{t + 1} = \frac{N_{t} \ e^{r}}{1 + \frac{\left( e^{r} - 1 \right) \ N_{t}}{K}}\]
Podemos comparar los resultados de estos cuatro modelos con la función modelo, incorporando el argumento comp = TRUE. Por ejemplo:
modelo( R = 0.3, K = 50, N0 = 2, comp = TRUE )Por defecto, la función considera \(\theta\) = 1, por lo que el modelo \(\theta\)-logístico y el modelo de Ricker son en este caso equivalentes. Para analizar el efecto de este parámetro sobre la dinámica de crecimiento de la población probaremos diferentes valores:
modelo( R = 0.3, K = 50, N0 = 2, theta = 1.5, comp = TRUE )modelo( R = 0.3, K = 50, N0 = 2, theta = 0.5, comp = TRUE )Para examinar con mayor detalle las características del crecimiento densodependiente, consideraremos el modelo logístico discreto de Case (2000), que es la opción por defecto en la función modelo. Comprobaremos que conforme aumentan los valores de \(R\) esta ecuación produce oscilaciones (ciclos de periodo 2, 4, 8, etc.). Finalmente, cuando \(R\) > 2.57 se entra en un patrón no repetitivo conocido como caos.
modelo( R = 1.0, K = 100 )modelo( R = 1.9, K = 100 )modelo( R = 2.1, K = 100 )modelo( R = 2.5, K = 100 )modelo( R = 2.6, K = 100 )Modelos de crecimiento de poblaciones estructuradas
Ejemplo de la población de correlimos semipalmeado
Utilizaremos en esta sección la matriz de proyección de la población de correlimos semipalmeado (Calidris pusilla) con tres clases de edades (edad1: 1 año, edad2: 2 años, edad3+: 3 o más años).
correlimosRecuerda que el análisis demográfico de esta población podemos realizarlo con:
matriz( correlimos )La dinámica de la población puede simularse utilizando el modelo discreto:
\[\mathbf{n}_{t + 1} = \mathbf{A} \, \mathbf{n}_{t}\] Para ello necesitaremos establecer un vector de tamaños de población (en este caso valores de densidad: número de individuos por hectárea):
n0 <- c( 23.5, 14.2, 7.3 )En R, el producto matricial se expresa mediante %*%. Así podremos calcular la evolución temporal de la población en un plazo de varios años:
correlimos %*% n0 -> n1
correlimos %*% n1 -> n2
correlimos %*% n2 -> n3
correlimos %*% n3 -> n4
correlimos %*% n4 -> n5
data.frame( n0, n1, n2, n3, n4, n5 )Podemos así analizar la evolución de la estructura de edades y comprobar que, con el tiempo: (1) la proporción relativa de tamaños entre las distintas clases de edades se estabiliza, aproximándose a la distribución estable de edades (DEE); y (2) el crecimiento poblacional anual (\(N_{t+1} / N_t\)) tiende a estabilizarse, aproximándose a la tasa de crecimiento anual (\(\lambda\)):
n5 / sum( n5 )
sum( n5 ) / sum( n4 )Con la función modelo podemos proyectar la evolución de la población de correlimos en el tiempo y observar cómo se alcanza la distribución de edades estable:
modelo( mat = correlimos, n0 = n0, tiempo = 10 )Ejemplo de la población de orca
Analizaremos ahora el significado del valor reproductivo residual ($vrr) con otro ejercicio, para el que utilizaremos la matriz de proyección de la orca (Orcinus orca), disponible en el objeto orca. Recordemos las características demográficas de esta población:
matriz( orca )Simularemos cuatro proyecciones temporales a 100 años, partiendo en cada caso de distintas poblaciones iniciales de 10 hembras, todas ellos pertenecientes a la misma clase de edad:
modelo( mat = orca, n0 = c( 10, 0, 0, 0), tiempo = 100 )modelo( mat = orca, n0 = c( 0, 10, 0, 0), tiempo = 100 )modelo( mat = orca, n0 = c( 0, 0, 10, 0), tiempo = 100 )modelo( mat = orca, n0 = c( 0, 0, 0, 10), tiempo = 100 )Observa cómo cada proyección produce distintos resultados, lo cual es debido al distinto valor reproductivo de cada clase. Así, los tamaños poblacionales totales finales (\(N_{100}\)) son proporcionales al valor reproductivo residual de cada clase que, como recordarás, es igual a 1 para la primera clase de edad. En consecuencia, dividiendo dichos tamaños poblacionales por el correspondiente al de la primera clase, obtenemos aproximadamente el vector $vrr:
c( 140.1022, 147.0057, 220.6248, 1.381434 ) / 140.1022Modelos estocásticos
Los modelos estocásticos incorporan variabilidad en los parámetros demográficos, por lo que, a diferencia de los modelos deterministas, la estimación del tamaño poblacional en el futuro se basa en criterios probabilísticos. Una aplicación de gran interés de estos modelos es la estimación de probabilidades de extinción, o más concretamente de cuasiextinción (la probabilidad de alcanzar un tamaño de población crítico \(N_x\)). La función modelo puede simular modelos estocásticos, lo cual nos permitirá comprobar el efecto de la varianza en las probabilidades de (cuasi)extinción. En el caso de los modelos estocásticos se utiliza el parámetro poblacional \(\mu\), que es el equivalente estocástico del parámetro \(r\) en un modelo determinista. [Recuerda que \(\mu = \log(\lambda)\).]
modelo( mu = 0.01, s2 = 0.05, N0 = 40, Nx = 10, tiempo = 20 )Veamos ahora el efecto de incrementar la varianza:
modelo( mu = 0.01, s2 = 0.15, N0 = 40, Nx = 10, tiempo = 20 )Dado que el número de simulaciones por defecto es bajo (20), las probabilidades estimadas son muy variables. Necesitaríamos un número de simulaciones mucho mayor para obtener una estima más precisa (por ejemplo 10000):
modelo( mu = 0.01, s2 = 0.15, N0 = 40, Nx = 10, tiempo = 20, sim = 10000 )Modelo de metapoblaciones de Levins
La versión discreta del modelo de metapoblaciones de Levins puede expresarse como:
\[ \Delta{p} = p_{t+1} - p_{t} = mp_{t}(1-hp_{t})-ep_{t} \]
donde:
\(p_{t}\) es la proporción de manchas ocupadas (en el tiempo \(t\)), en relación al total de manchas \(H\);
\(m\) es la tasa de colonización;
\(e\) es la tasa de extinción;
\(h\) es la fracción de manchas disponibles; y
\(t\) es el tiempo.
En equilibrio:
\[ \Delta{p}=0 \quad \rightarrow \quad mp^{*}(1-hp^{*})=ep^{*} \quad \rightarrow \quad p^* = h - \frac {e} {m}\]
Por tanto, la condición necesaria para la persistencia de la población (\(p^*\) > 0) es: \(mh > e\).
La función metapob permite simular la dinámica de este modelo de Levins especificando diferentes valores para la proporción inicial de manchas ocupadas (p0), las tasas de colonización (m) y extinción (e), el tiempo de simulación (tiempo) el número total de manchas (H) y la proporción de manchas disponibles (h):
metapob( p0 = 0.5, m = 0.7, e = 0.4, tiempo = 20, H = 50, h = 1 )Además de la figura de dinámica de ocupación de manchas, la función proporciona la representación de las proporciones de ocupación con el tiempo (dinámica estocástica: línea negra; curva determinista: línea azul; equilibrio: línea roja). Tambien proporciona el valor de \(p^*\) y el turnover (número de manchas que cambian de estado) medio, \(T\).
Comprueba, por ejemplo, el efecto que tendría la destrucción de manchas sobre la metapoblación:
metapob( p0 = 0.5, m = 0.7, e = 0.4, tiempo = 20, H = 50, h = 0.7 )Evaluación
Realiza la prueba de evaluación disponible en la herramienta Exámenes del Aula Virtual.
Bibliografía
Begon M, Harper JL, Townsend CR (1988) Ecología. Omega, Barcelona.
Case TJ (2000) An Illustrated Guide to Theoretical Ecology. Oxford University Press, Oxford.
Caswell H (2001) Matrix Population Models. Sinauer, Sunderland MA.
Morris WF, Doak DF (2002) Quantitative Conservation Biology. Sinauer, Sunderland MA.
Piñol J, Martínez-Vilalta J (2006) Ecología con números. Lynx, Barcelona.
Descripción de las funciones, tablas de vida y matrices de proyección
Utiliza la función info. Por ejemplo: info( "modelo" ) o info( "ganso" ).