Simulación de cultivos

Simulación paso a paso, escenarios e interpretación

2026-11-05

Tema III.4 · Unidad III · Dinámica de biosistemas

Simulación de cultivos

Simulación paso a paso, escenarios e interpretación

¿Qué pasa si cambio la tasa?

  • Teoría y ejemplo resuelto
  • Ejercicios en papel con respuestas
  • Práctica en R
  • Versión 1 · noviembre de 2026

Escucha primero

Si quieres una primera idea antes de leer, estos audios cuentan de qué trata el tema en unos 3 minutos. Son opcionales, y la página se entiende sin ellos. La voz es generada por computadora.

1. El problema1 min
2. La idea central1 min
3. Qué sigue1 min

1. El problema

Una asociación de productores quiere saber qué riesgo debe atender primero. ¿Qué afecta más al trigo: un año con más calor, o quedarse corto de nitrógeno?

Podrían probarlo en campo. Pero cada prueba tarda un ciclo completo, cuesta dinero, y el clima no se repite a voluntad.

Si ya tienes un modelo con parámetros que significan algo, puedes hacer otra cosa: preguntarle. ¿Qué pasa si baja la tasa? ¿Qué pasa si baja el máximo? A eso se le llama simular.

Una simulación no te dice qué va a pasar. Te dice qué pasaría si se cumplen ciertos supuestos. Y eso ya es muy útil para decidir qué probar primero en campo.

2. La idea central

Simular descansa en una idea muy sencilla. Lo de mañana es lo de hoy, más lo que cambia.

Entonces, una simulación avanza por pasos. Tomas la biomasa de hoy, calculas cuánto crece según la tasa y según qué tan cerca está del máximo, se la sumas, y ya tienes la de mañana. Con ese valor, calculas el día siguiente. Y así hasta el final del ciclo.

Si alguna vez arrastraste una fórmula en Excel, ya has hecho esto. Cada celda se calcula con la de arriba. En R, ese arrastre se escribe con una instrucción llamada for. No es más que eso: repetir el mismo cálculo, renglón por renglón.

¿Por qué no usar una fórmula directa? Porque en muchos modelos no existe. En cuanto agregas una cosecha, una temperatura que cambia cada día, o una segunda especie, se acabó la fórmula. La regla paso a paso sigue funcionando: sólo le agregas un término.

Hay dos cuidados. El primero: cambia un solo parámetro a la vez, y compara contra un caso base. Si no, no sabrás a qué se debe la diferencia. El segundo: el tamaño del paso importa. Si das pasos muy grandes, la simulación se atrasa, e incluso puede rebotar. Ese rebote no le pasa al cultivo: es un error del método. Una buena prueba es reducir el paso a la mitad. Si casi no cambia, ya está bien.

3. Qué sigue

Ya puedes pasar a la página. Te sugiero seguirla en orden.

Más adelante hay un recuadro interactivo donde mueves la tasa, el máximo y el tamaño del paso. Aumenta mucho el paso, y mira lo que pasa con la curva.

Después viene un ejemplo resuelto con un pasto al que se le hacen cortes. Sólo se lee, y tiene una conclusión que vale la pena retener: hay un límite de corte a partir del cual el pasto se pierde.

Luego siguen los ejercicios en papel. Vas a simular unos pasos a mano, para ver que no hay ninguna magia.

Al final abres R, programas la simulación y comparas los dos riesgos del trigo. Fíjate bien en cómo el calor y el nitrógeno afectan a la curva de maneras distintas. La respuesta a cuál pesa más depende de cuándo cosechas.

En el siguiente tema vas a usar esta misma regla con dos especies a la vez.

De qué trata

Una vez que se tiene un modelo, se le pueden hacer preguntas que en campo costarían un ciclo entero: ¿qué pasa si la tasa baja? ¿y si cambia el máximo? Eso es simular. En vez de calcular una fórmula de golpe, se avanza paso a paso: lo de mañana es lo de hoy más lo que cambia. Con esta misma lógica se pueden simular sistemas para los que no existe una fórmula directa.

Antes · Tema III.3 Modelos de cultivos ¿Qué curva describe mejor a este cultivo?

Este tema · III.4 Simulación de cultivos ¿Qué pasa si cambio la tasa?

Después · Tema III.5 Interacción de dos especies ¿Qué le hace la maleza al trigo?

Al terminar este tema podrás:

  1. Escribir un modelo como una regla de actualización.
  2. Simular a mano unos pasos de un modelo.
  3. Programar la simulación completa en R, como quien arrastra una fórmula en Excel.
  4. Comparar escenarios e interpretarlos.
  5. Explicar el efecto del tamaño del paso.

Palabras clave simulación regla de actualización paso de tiempo condición inicial escenario análisis de sensibilidad ciclo for

Cómo usar esta página

Sigue este orden: primero la teoría (secciones 1 a 3) y el ejemplo resuelto (sección 4), que sólo se lee. Después los ejercicios en papel (sección 5), que traen su respuesta. Abre R hasta la práctica (sección 6). Los datos y escenarios de este tema son didácticos.

1. El problema: dos riesgos para el trigo

Una asociación quiere decidir en qué riesgo enfocarse. Según la Unidad II, el calor y el nitrógeno son los factores que más pesan. Se plantean dos escenarios:

Base r = 0.0725 · K = 1 740 Los parámetros del Tema III.3

Más calor r = 0.06 El cultivo crece más lento

Menos nitrógeno K = 1 400 El cultivo llega a un tope menor

Probar esto en campo tomaría un ciclo completo por cada escenario. ¿Se puede explorar antes?

2. Por qué simular paso a paso

El modelo logístico del Tema III.3 tiene una fórmula directa. Pero muchos modelos no la tienen: en cuanto se agrega una temperatura que cambia cada día, una cosecha o una segunda especie, ya no se puede escribir una fórmula. La simulación paso a paso sí sigue funcionando, y además es la misma idea de arrastrar una fórmula en Excel.

3. Las ideas

3.1 La regla de actualización

Una simulación tiene una sola idea:

valor siguiente = valor actual + cambio × paso

El cambio es la tasa de cambio del sistema, según el valor actual. El paso es cuánto tiempo se avanza. Este método se llama de Euler.

En el modelo logístico, el cambio es r × W × (1 − W ÷ K). El término (1 − W ÷ K) es el freno: vale casi 1 cuando W es pequeño, y casi 0 cuando W se acerca a K.

Wsiguiente = W + r × W × (1 − W ÷ K) × paso

r: tasa. K: máximo. Se necesita también un valor de arranque, la condición inicial.

3.2 Los ingredientes de una simulación

Ingrediente En el trigo Quién lo define
Parámetros r = 0.0725, K = 1 740 Los datos
Condición inicial W = 39 g/m² en el día 14 Una medición o el modelo
Paso de tiempo 1 día Quien modela
Horizonte Hasta el día 126 La pregunta

3.3 De Excel a R: el ciclo for

En Excel se escribe la fórmula en una celda y se arrastra. En R, for es exactamente ese arrastre:

Script de R

for (i in 2:length(dias)) {
  W[i] <- W[i - 1] + r * W[i - 1] * (1 - W[i - 1] / K) * paso
}

Se lee así: «para cada renglón i, desde el 2 hasta el último, calcula W[i] con el renglón anterior, W[i - 1]». Es la misma fórmula que en Excel escribirías como =B2+r*B2*(1-B2/K)*paso.

3.4 Escenarios y sensibilidad

Un escenario es una simulación con otros parámetros. Conviene cambiar uno a la vez y comparar contra una base, para saber a qué se debe la diferencia. Esto se llama análisis de sensibilidad, la misma idea del Tema II.5, ahora aplicada a un modelo.

Un escenario no es una predicción: responde «si se cumple este supuesto, entonces pasaría esto». Por ejemplo, que el calor sólo baje r y no toque a K es un supuesto de este tema.

3.5 El tamaño del paso

El método supone que el cambio se mantiene igual durante todo el paso. Con un paso pequeño eso casi se cumple. Con uno grande, el error crece, y la simulación puede dar resultados que el sistema real no produce.

Tres curvas de biomasa. La de paso de un día es una S suave. La de 14 días se atrasa. La de 28 días tiene pocos puntos, está muy atrasada y al final rebasa el máximo.

La misma regla con tres tamaños de paso. Con pasos grandes, la simulación se atrasa y luego rebasa el máximo.

Regla práctica: reduce el paso a la mitad. Si el resultado casi no cambia, el paso ya es suficiente.

Prueba Simula el ciclo La curva continua usa un paso muy pequeño, y sirve de referencia. Los puntos son tu simulación. Mueve r y K, y después aumenta mucho el paso.

Este recuadro necesita JavaScript activado en el navegador.

4. Ejemplo resuelto: pasto con corte

Este ejemplo sólo se lee. Un pasto crece con r = 0.25 por semana y K = 8 t/ha, desde 0.5 t/ha (datos didácticos). El productor quiere saber cuánto puede cosechar sin acabarse el pasto.

Paso 1 · Simular los primeros pasos a mano, con un paso de 1 semana y sin corte.

  • Semana 1: 0.5 + 0.25 × 0.5 × (1 − 0.5 ÷ 8) = 0.5 + 0.117 = 0.617 t/ha
  • Semana 2: 0.617 + 0.25 × 0.617 × (1 − 0.617 ÷ 8) = 0.617 + 0.142 = 0.760 t/ha

Paso 2 · Agregar el corte a la regla. Sólo hay que restar lo que se cosecha, una fracción c de lo que hay cada semana. En una fórmula directa esto sería difícil. En la regla, sólo es un término más.

Wsiguiente = W + r × W × (1 − W ÷ K) − c × W

c es la fracción cosechada por semana.

Paso 3 · Programarlo en R.

Script de R

semanas <- 0:30
W <- numeric(length(semanas))
W[1] <- 0.5
for (i in 2:length(semanas)) {
  W[i] <- W[i - 1] + 0.25 * W[i - 1] * (1 - W[i - 1] / 8) - 0.10 * W[i - 1]
}
plot(semanas, W, type = "l")

Paso 4 · Comparar los escenarios. Biomasa simulada, en t/ha:

Semana Sin corte (c = 0) Corte moderado (c = 0.10) Sobrecorte (c = 0.30)
4 1.14 0.82 0.38
10 3.24 1.58 0.26
20 7.23 3.30 0.15
30 7.95 4.39 0.09

Paso 5 · Interpretar. Hay tres comportamientos:

  • Sin corte, el pasto se acerca a K = 8 t/ha.
  • Con c = 0.10, se acerca a un nivel estable más bajo. Ahí, lo que crece iguala a lo que se corta. Ese nivel es K × (1 − c ÷ r) = 8 × (1 − 0.10 ÷ 0.25) = 4.8 t/ha.
  • Con c = 0.30, el corte rebasa la tasa de crecimiento: es la tasa neta negativa del Tema III.1, y el pasto se pierde.

La regla señala un umbral: mientras c sea menor que r = 0.25, el pasto se mantiene; arriba de ese valor, desaparece. Es un resultado del modelo y de sus supuestos. Antes de recomendarlo, habría que confirmarlo en campo, porque el modelo no incluye sequía, compactación ni rebrote después del corte.

5. Ejercicios en papel

Necesitas calculadora y cuaderno. Intenta cada ejercicio antes de abrir la respuesta.

Ejercicio 1 · Tres pasos a mano

Una planta de chile crece con r = 0.1 por día y K = 200 g, desde 20 g.

  1. Escribe la regla de actualización.
  2. Simula 3 días, con un paso de 1 día.
  3. ¿Cuánto vale el freno (1 − W ÷ K) al inicio? ¿Y cuando W = 180 g?
  1. Wsiguiente = W + 0.1 × W × (1 − W ÷ 200) × 1.

  2. Día 1: 20 + 0.1 × 20 × 0.90 = 21.80 g. Día 2: 21.80 + 0.1 × 21.80 × 0.891 = 23.74 g. Día 3: 23.74 + 0.1 × 23.74 × 0.881 = 25.83 g.

  3. Al inicio: 1 − 20 ÷ 200 = 0.90. Con 180 g: 1 − 180 ÷ 200 = 0.10. Casi está frenado.

Ejercicio 2 · El tamaño del paso

Con el trigo: r = 0.0725, K = 1 740, W = 39 g/m² en el día 14.

  1. Calcula W en el día 15, con un paso de 1 día.
  2. Calcula W en el día 28, con un solo paso de 14 días.
  3. Con pasos de 1 día, R da 100 g/m² en el día 28. ¿Por qué tu resultado del inciso b es menor?
  1. 39 + 0.0725 × 39 × (1 − 39 ÷ 1 740) × 1 = 39 + 2.76 = 41.76 g/m².

  2. 39 + 0.0725 × 39 × (1 − 39 ÷ 1 740) × 14 = 39 + 38.7 = 77.7 g/m².

  3. Un paso de 14 días usa el crecimiento del día 14 durante las dos semanas. No toma en cuenta que el cultivo se va haciendo más grande, y crecería más rápido.

Ejercicio 3 · Interpretar los escenarios

Biomasa simulada, en g/m²:

Escenario Día 42 Día 70 Día 98 Día 126
Base 245 955 1 576 1 718
Más calor (r = 0.06) 183 663 1 338 1 651
Menos nitrógeno (K = 1 400) 239 848 1 294 1 386
  1. Calcula cuánto se pierde por cada escenario, respecto a la base, en el día 70 y en el día 126, en porcentaje.
  2. ¿Qué efecto tiene cambiar r? ¿Y cambiar K?
  3. Si la cosecha fuera al final, ¿cuál riesgo pesa más? ¿Y si se cortara a los 70 días como forraje?
  4. ¿Qué supuesto del escenario de calor discutirías?
  1. Más calor: día 70, (955 − 663) ÷ 955 = 31 %; día 126, (1 718 − 1 651) ÷ 1 718 = 4 %. Menos nitrógeno: día 70, 11 %; día 126, 19 %.

  2. Cambiar r retrasa la curva, pero casi llega al mismo final. Cambiar K baja el techo.

  3. Con cosecha final, pesa más el nitrógeno. A los 70 días, pesa más el calor.

  4. Que el calor sólo reduzca r y no K. En la Unidad II, las parcelas con más calor rindieron menos al final: es probable que el calor también baje el máximo, o que acorte el ciclo.

Ejercicio 4 · Revisar afirmaciones

Di si cada afirmación es correcta. Si no lo es, corrígela.

  1. «El escenario predice que el próximo ciclo habrá 1 651 g/m².»
  2. «Si cambio r y K a la vez, sabré cuál de los dos causó el cambio.»
  3. «Si la simulación rebota alrededor de K, significa que el cultivo oscila.»
  4. «Entre más pequeño el paso, mejor. Por eso conviene usar siempre 0.0001 días.»
  1. Incorrecta. Dice que pasaría eso si se cumplen los supuestos. No es un pronóstico.

  2. Incorrecta. Se cambia uno a la vez, para saber a qué se debe la diferencia.

  3. Incorrecta. En el modelo logístico, rebotar es un error numérico por usar un paso demasiado grande.

  4. Incorrecta. Un paso pequeño cuesta más cálculos. Basta el paso en que reducirlo a la mitad ya casi no cambia el resultado.

6. Práctica en R

Ahora vas a programar la simulación y a comparar los escenarios.

Carpeta IBS-MDO-Tema-III4 en Google Drive · script y datos
Descárgala completa con el botón de descarga de Drive («Descargar todo»). Drive la baja en un .zip: en Descargas, haz clic derecho → Extraer todo y trabaja dentro de la carpeta extraída.

Abrir en Drive

Archivo Para qué
tema_III4.Rproj Abre RStudio trabajando en esta carpeta. Siempre empieza con doble clic aquí.
Tema_III4_script.R El script con los bloques que vas a ejecutar.
biomasa_trigo.csv Los muestreos, para comparar la simulación.
  1. Extrae la carpeta, haz doble clic en tema_III4.Rproj y abre Tema_III4_script.R desde el panel Files.
  2. Bloques 1 a 3. Haz los primeros pasos línea por línea. Compara con tu Ejercicio 2.
  3. Bloque 4. Ejecuta el for: selecciona las tres líneas juntas. Sin mirar el resultado, explica qué hizo.
  4. Bloques 5 a 7. Compara con los muestreos, y simula el escenario de calor.
  5. Bloque 8. Escribe tú el escenario de nitrógeno, copiando y cambiando lo necesario.
  6. Bloque 9. Comprueba la tabla del Ejercicio 3.
  7. Bloque 10. Compara los pasos. Luego cambia paso a 28 y a 35, y describe lo que ocurre.
  8. Bloque 11. Borra el # de cada línea, ejecútala, lee el mensaje de R y corrige.

Bloque 3. 39.00, 41.76, 44.72 y 47.88 g/m².

Bloque 5. La simulación pasa cerca de los muestreos, con un error RMSE de 54 g/m². Al día 126 llega a 1 718 g/m².

Bloque 8.

Script de R

r <- 0.0725
K <- 1400
for (i in 2:length(dias)) {
  W[i] <- W[i - 1] + r * W[i - 1] * (1 - W[i - 1] / K) * paso
}
W_menosN <- W

Bloque 9. Los valores coinciden con la tabla del Ejercicio 3.

Curva base, curva de más calor que se atrasa pero llega casi al mismo final, y curva de menos nitrógeno que se aplana en un máximo menor. Los puntos de los muestreos quedan cerca de la curva base.

Los tres escenarios contra los muestreos.

Bloque 10. Biomasa con paso de 14 días: 39, 78, 153, 295, 543, 922, 1 362, 1 662 y 1 738 g/m². En el día 70 da 543, contra 955 con el paso de 1 día. Al subir el paso a 28, se atrasa más, y al final rebasa K: 1 771 g/m². Con 35, r × paso = 2.54 y la simulación se vuelve errática.

Bloque 11.

  • W[1] <- W[0] + … falla con replacement has length zero, porque en R los renglones empiezan en 1. No existe W[0].
  • for (…) { Z[i] <- Z[i - 1] + 1 } usa una columna que no se ha creado. Antes hay que escribir Z <- numeric(length(dias)).
  • W_nuevo[2] <- 5 tampoco tiene la columna creada. Antes hay que crear W_nuevo.

Si R marca un error

Lo que ves Qué significa Qué hacer
objeto 'W' no encontrado No se ha creado la columna. Ejecuta primero W <- numeric(...).
replacement has length zero Pediste el renglón 0. Los renglones empiezan en 1.
+ en la consola Falta cerrar una llave. Presiona Esc, selecciona las tres líneas del for y ejecútalas juntas.
Puros 0 después del primer valor No se ejecutó el for, o W[1] no tiene valor. Revisa W[1] <- W_inicial.
Puros NA o NaN Falta un parámetro, o el paso es demasiado grande. Revisa r, K y paso.

7. ¿Lo entendiste?

Cuatro preguntas rápidas Elige una respuesta para ver la explicación; puedes volver a intentar.

1. ¿Qué hace el ciclo for de la simulación?

  1. Ajusta los parámetros a los datos
  2. Repite el cálculo renglón por renglón, como arrastrar una fórmula
  3. Dibuja la gráfica

Calcula cada valor a partir del anterior, igual que una fórmula arrastrada hacia abajo.

2. Si W = K en el modelo logístico, ¿cuánto vale el cambio?

  1. 0
  2. r
  3. K

El freno 1 − W ÷ K vale 0, y por eso el sistema se detiene.

3. Si baja r y todo lo demás sigue igual, ¿qué pasa?

  1. Baja el máximo
  2. Baja la biomasa inicial
  3. El cultivo tarda más en llegar al máximo

r decide la rapidez. El máximo lo decide K.

4. ¿Cómo sabes que tu paso de tiempo es suficientemente pequeño?

  1. Cuando la gráfica se ve bonita
  2. Cuando reducirlo a la mitad casi no cambia el resultado
  3. Cuando el paso es menor que 1

Depende del sistema. La prueba es comparar el resultado con un paso más pequeño.

Instrucciones de R de este tema

Instrucción Qué hace En Excel sería
14:126 Lista de números seguidos Columna con serie
seq(14, 126, by = 14) Lista de 14 en 14 Serie con incremento
numeric(n) Crea n ceros Columna en blanco
length(x) Cuenta los valores CONTAR
W[i - 1] El renglón anterior La celda de arriba
for (i in 2:n) { … } Repite renglón por renglón Arrastrar la fórmula
W[dias == 126] El valor donde se cumple la condición BUSCARV