Impacto de los Programas del Bienestar en el Capital de los Pequeños y Medianos Productores Agrícolas en Guerrero: Un Enfoque desde la Dinámica de Sistemas 👨‍🌾🌽

El campo mexicano, y en particular el del estado de Guerrero, enfrenta desafíos históricos en términos de rentabilidad, productividad y sostenibilidad. A lo largo de los últimos años, los programas sociales como Producción para el Bienestar, Sembrando Vida y los subsidios para energía o fertilizantes han intentado reducir la vulnerabilidad económica de los pequeños y medianos productores. Sin embargo, el verdadero impacto de estos programas en los ingresos reales de los agricultores es aún poco claro, especialmente cuando se consideran variables dinámicas como la estacionalidad, la reinversión de capital, la productividad laboral o el efecto del clima.

Para explorar esta problemática, se formula la siguiente pregunta de investigación:

¿Cómo afectan los programas de Bienestar al capital acumulado de los pequeños y medianos productores agrícolas en Guerrero, bajo diferentes escenarios de inversión y condiciones climáticas?

Este análisis se enfoca en simular el impacto de cuatro programas federales clave que inciden directamente sobre la capacidad productiva de los agricultores:

El modelo propuesto integra estos programas gubernamentales diferenciando entre apoyos directos (como Sembrando Vida y Producción para el Bienestar) y subsidios que reducen costos (como los de energía y fertilizantes). A través de esta estructura, es posible simular distintos escenarios de producción e inversión bajo condiciones variables, y analizar su efecto sobre el capital agrícola acumulado de los productores agrícolas de Guerrero. De esta forma, se busca representar de manera simplificada pero dinámica cómo interactúan los apoyos públicos, las decisiones de gasto productivo y factores exógenos como el clima para influir en la estabilidad económica del productor rural.

Descripción del Sistema

El modelo desarrollado representa un sistema de relaciones causales entre ingresos, apoyos gubernamentales, decisiones de gasto, inversión y acumulación de capital. Su objetivo es capturar la dinámica económica de los pequeños y medianos productores agrícolas en Guerrero, considerando factores como estacionalidad, productividad laboral y variabilidad climática.

Diagrama de Flujo de Productores Agrícolas en Guerrero

El siguiente diagrama representa gráficamente la lógica del modelo desarrollado. Este diagrama permite entender cómo el ingreso agrícola y los apoyos gubernamentales se transforman en capacidad productiva, y cómo las decisiones de gasto afectan la producción y crecimiento económico rural. También muestra cómo los programas sociales no actúan de forma aislada, sino que su efecto se filtra a través del sistema de ingresos y de gastos para la producción.

El capital del productor es la variable principal (estado). Aumenta por los ingresos del productor y se reduce por dos flujos de salida:

  • Gastos en insumos

  • Presupuesto del hogar

¿A qué le llamamos capital?

Capital se define suma del valor monetario acumulado por el gremio de productores agrícolas en Guerrero.

Ingresos del productor

Se componen de tres elementos principales:

  • Ingreso por ventas, que depende de la toneladas vendidas (calculada como producción total × porcentaje de la producción vendida) y del precio ajustado.

    • Producción total se define por producción por hectárea x número de hectáreas.

    • Precio ajustado se define por precio por productox factor estacional (este último también afecta la producción por hectárea).

  • Apoyo del programa Producción para el Bienestar

  • Apoyo financiero del programa Sembrando Vida

Estas entradas están marcadas como flujos positivos hacia el capital.


3. Producción agrícola

La producción por hectárea depende del valor base por hectárea y de los gastos en insumos:

  • Agua

  • Energía

  • Fertilizanteb

  • Semillas

  • Tecnología

  • Mano de obra

La cantidad invertida en cada insumo es una proporción del capital reinvertido (controlada por la variable tasa de reinversión), y en algunos casos es reducida por subsidios o por condiciones climáticas:

  • El Programa de Energía para el Campo reduce el gasto energético.

  • El Programa de Fertilizantes para el Bienestar disminuye el gasto en fertilizantes.

  • La precipitación reduce el gasto en agua.


4. Gasto en el hogar

El presupuesto para el hogar es una salida fija que se ajusta con base en la inflación. Representa el gasto necesario fuera del proceso productivo.


Tras definir la estructura del sistema mediante el diagrama de flujo causal, se construyó el modelo base que formaliza estas relaciones en en un código base.

Parámetros

Parámetro Descripción Valor base/Unidad Fuente
precioporproducto Precio promedio del producto agrícola 7000 (MXN/ton)
numerohectareas Superficie agrícola utilizada en producción agrícola 470,000 hectáreas
valorbaseporhectarea Producción base por hectárea 2.2 toneladas
porcentajeproduccionvendida Porcentaje de la producción que se comercializa .70 #porcentaje de la producción
tasareinversion Proporción del capital reinvertido en insumos 0.25 #porcentaje del capital reinvertido
precipitacion Nivel relativo de precipitación 0.2 porcentaje del riego que es reemplazado por lluvia
capacidad.productiva.trabajador Eficiencia por unidad de mano de obra 0.007 mano de obra
coberturabienestar N.º de productores apoyados por Producción para el Bienestar 70,000 personas beneficiarias
montoporapoyobienestar Apoyo monetario por productor 6,000 MXN
coberturasembrandovida N.º de beneficiarios del programa Sembrando Vida 15,000 personas beneficiarias
montoporapoyosembrandovida Apoyo monetario de Sembrando Vida 6,450 MXN
coberturaenergiacampo N.º de beneficiarios del subsidio energético 20,000 personas beneficiarias
montoporapoyoenergiacampo Apoyo total estimado al sector energético agrícola 51,676 MXN
coberturafertilizante N.º de productores que reciben fertilizante 25,000 personas beneficiarias
montoporapoyofertilizante Valor del fertilizante subsidiado por productor 10,000 MXN
proporciongastomanoobra % del capital reinvertido usado en mano de obra 0.60 #porcentaje
proporciongastoagua % del capital reinvertido usado en agua 0.02 #porcetaje
proporciongastoenergia % del capital reinvertido usado en energía 0.05 #porcentaje
proporciongastofertilizante % del capital reinvertido usado en fertilizantes 0.15 #porcentaje
proporciongastosemilla % del capital reinvertido usado en semillas 0.08 #porcentaje
proporciongastotecnologia % del capital reinvertido usado en tecnología 0.10 #porcentaje
a1 Efecto marginal del gasto en agua sobre la producción 0.005 impacto de gasto en agua en produccion
a2 Efecto marginal del gasto en energía 0.003 #impacto de gasto en energia en produccion
a3 Efecto marginal del gasto en fertilizantes 0.01 impacto de gasto en fertilizante en produccion
a4 Efecto marginal del gasto en semillas 0.01 impacto de semilla en produccion
a5 Efecto marginal del gasto en tecnología 0.01 impacto de tecnologia en produccion

Código Base

#Cargamos la librería necesarias
library(deSolve) #Para resolver ecuaciones diferenciales
library(ggplot2) #Para graficar los resultados
library(gridExtra) #Para mostrar múltiples gráficos juntos

# Definimos la función que describe el comportamiento dinámico del sistema
agricultores_guerrero <- function(t, state, parameters) {
  with(as.list(c(state,parameters)), {
  
    #Variables endógenas 
   factor_estacional <- 1 + 0.1 * sin(2 * pi * t / 12)
   montoreinversion= tasareinversion*capital # Parte del capital destinado a reinversión
    
    #Cálculo de apoyos gubernamentales
   apoyoproduccionbienestar = coberturabienestar * montoporapoyobienestar / 3
   apoyosembrandovida = coberturasembrandovida * montoporapoyosembrandovida / 3
   apoyoenergiacampo = coberturaenergiacampo * montoporapoyoenergiacampo / 3
   apoyofertilizante = coberturafertilizante * montoporapoyofertilizante / 3

    #Cálculo de gastos en insumos, ajustados por subsidios y clima
   gastoagua = pmax(0, proporciongastoagua * montoreinversion * (1 - precipitacion) / 6)
   gastoenergia = pmax(0, (proporciongastoenergia * montoreinversion - apoyoenergiacampo) / 6)
   gastofertilizante = pmax(0, (proporciongastofertilizante * montoreinversion - apoyofertilizante) / 6)
   gastosemilla = pmax(0, proporciongastosemilla * montoreinversion / 6)
   gastotecnologia = pmax(0, proporciongastotecnologia * montoreinversion / 6)
   gastomanoobra = pmax(0, proporciongastomanoobra * montoreinversion / 6)
   
      
   produccionporhectarea = precipitacion + valorbaseporhectarea * factor_estacional * (1 +
        a1 * log(1 + gastoagua) +
        a2 * log(1 + gastoenergia) +
        a3 * log(1 + gastofertilizante) +
        a4 * log(1 + gastosemilla) +
        a5 * log(1 + gastotecnologia) +
        capacidad.productiva.trabajador * log(1 + gastomanoobra)
      )
   
   
    producciontotal = numerohectareas * produccionporhectarea
    toneladasvendidas = producciontotal * porcentajeproduccionvendida # Parte de la producción vendida

  
    precio_ajustado = precioporproducto * factor_estacional # Precio con ajuste estacional
    ingresoventas = toneladasvendidas * precio_ajustado # Ingresos por ventas

    #Variables de flujo
    
    #Ingreso total del productor incluyendo apoyos
    ingresosproductor<- ingresoventas+apoyoproduccionbienestar + apoyosembrandovida
    # Suma total de gastos de producción
    gastosinsumos = gastoagua+gastoenergia+gastofertilizante+gastosemilla+gastotecnologia+gastomanoobra
   
    # Cálculo del presupuesto del hogar, ajustado por inflación 
    ciclos_inflacion <- floor(t / 12)
    presupuestohogar <- 6000 * 100000 * (1.06)^ciclos_inflacion # Gasto del hogar inflacionario
      
    #Variable de estado
    dcapital= ingresosproductor-gastosinsumos-presupuestohogar
    
    # Se crea la lista de variables para analizar
    list(c(dcapital), produccion = produccionporhectarea, gastos = gastosinsumos, presupuestohogar=presupuestohogar, ingresosproductor=ingresosproductor)

  })
}

# Definición de los parámetros del sistema
parameters<-c(proporciongastoagua = .02, #porcentaje del capital destinado a agua
              proporciongastoenergia= .05, #porcentaje del capital destinado a energía
              proporciongastomanoobra = .60, #porcentaje del capital destinado a mano de obra
              proporciongastofertilizante=.15, #porcentaje del capital destinado al fertilizante
              proporciongastotecnologia= .10, #porcentaje del capital destinado a tecnología
              proporciongastosemilla= .08, #porcentaje del capital destinado a semillas
              tasareinversion=.25, #porcentaje del capital reinvertido
              precipitacion=.2, #porcentaje del riego que es reemplazado por lluvia
              precioporproducto=7000 ,# precio por tonelada
              coberturabienestar=70000 , #personas beneficiarias
              coberturasembrandovida=15000, #personas beneficiarias
              coberturafertilizante=25000, #personas beneficiarias
              coberturaenergiacampo=20000, #personas beneficiarias
              montoporapoyoenergiacampo= 51676, #pesos
              montoporapoyofertilizante=10000, #pesos
              montoporapoyobienestar=6000, #pesos
              montoporapoyosembrandovida=6450, #pesos
              numerohectareas=470000, #hectareas
              porcentajeproduccionvendida= .70, #porcentaje de la producción vendida
              valorbaseporhectarea=2.2,#toneladas
              a1 = 0.005, #impacto de gasto en agua en produccion
              a2 = 0.003, #impacto gasto energia en produccion
              a3 = 0.01, #impacto fertilizante en produccion
              a4 = 0.01,#impacto semilla en produccion
              a5 = 0.01, #impacto tecnologia en produccion
              capacidad.productiva.trabajador = 0.007   #impacto de la mano de obra
              ) 

# Se establecen las condiciones iniciales del sistema: capital
InitialConditions <- c(capital = 25500*100000
                       )

# Definimos el horizonte temporal de simulación
times <- seq(0 , #tiempo inicial
             70 , #tiempo final
             1 ) #intervalo de tiempo

# Método de integración
intg.method<-c("rk4")

# Llamamos a la función ode para resolver el modelo
out <- ode(y = InitialConditions,
           times = times,
           func = agricultores_guerrero,
           parms = parameters,
           method =intg.method )

# Guardamos resultados como un data frame
resultados <- as.data.frame(out)

# Graficamos el capital 
g1 <- ggplot(resultados, aes(x = time, y = capital)) +
  geom_line(color = "blue", linewidth = 1) +
  labs(title = "Capital acumulado", x = "Tiempo", y = "Capital") +
  theme_minimal()

# Graficamos la producción por hectárea
g2 <- ggplot(resultados, aes(x = time, y = produccion)) +
  geom_line(color = "darkgreen", linewidth = 1) +
  labs(title = "Producción por hectárea", x = "Tiempo", y = "Toneladas") +
  theme_minimal()

# Graficamos los gastos en insumos
g3 <- ggplot(resultados, aes(x = time, y = gastos)) +
  geom_line(color = "red", linewidth = 1) +
  labs(title = "Gastos en insumos", x = "Tiempo", y = "Pesos") +
  theme_minimal()

# Graficamos el presupuesto del hogar
g4 <- ggplot(resultados, aes(x = time, y = presupuestohogar)) +
  geom_line(color = "orange", linewidth = 1) +
  labs(title = "Presupuesto del hogar", x = "Tiempo", y = "Pesos") +
  theme_minimal()

# Graficamos los ingresos del productor
g5 <- ggplot(resultados, aes(x = time, y = ingresosproductor)) +
  geom_line(color = "purple", linewidth = 1) +
  labs(title = "Ingresos del productor", x = "Tiempo", y = "Pesos") +
  theme_minimal()

# Mostramos todos los gráficos en una cuadrícula
grid.arrange(g1, g2, g3, g4, g5, ncol = 2)

Una vez modelado el sistema se arrojaron los siguientes resultados:

Se graficó el comportamiento del capital que muestra una tendencia creciente durante los primeros 40 meses, pero luego empieza a estabilizarse. Esto indica que, si bien el sistema genera excedentes económicos (más ingresos que egresos) al principio, con el paso del tiempo esa capacidad de acumular disminuye. Esto puede explicarse por una combinación de factores: el crecimiento de los gastos en insumos, el aumento progresivo del presupuesto del hogar debido a la inflación, y la estabilización de los ingresos del productor. Es decir, aunque no baja directamente, el capital sí crece más lento debido a que cada vez los egresos absorben una mayor parte de los ingresos.

La gráfica de producción por hectárea muestra un comportamiento oscilatorio regular con ciclos que se repiten aproximadamente cada 12 meses, lo que representa la estacionalidad propia de la actividad agrícola. A pesar de estas fluctuaciones, se observa una leve tendencia creciente tanto en los picos como en los valles, lo que sugiere una mejora gradual y sostenida en la productividad.

Los gastos en insumos aumentan de forma continua durante los primeros 50 meses, en línea con el crecimiento del capital (del cual dependen los montos de reinversión). Sin embargo, hacia el final del periodo, los gastos se estabilizan o incluso decrecen ligeramente. Esto puede deberse a que el capital ya no crece tanto, lo que limita la cantidad de recursos que pueden ser invertidos nuevamente. También podría reflejar un efecto indirecto de los subsidios, que amortiguan algunos costos.

En cuanto al presupuesto del hogar, se muestra un patrón de crecimiento escalonado. Cada año (cada 12 meses), el presupuesto del hogar aumenta en un 6% por efecto de la inflación, lo cual se modeló con un ajuste anual. Este gasto actúa como un drenaje constante del capital, y su crecimiento acumulado tiene un efecto cada vez más significativo. A diferencia de los gastos en insumos que pueden estabilizarse, este gasto siempre crece, ejerciendo presión permanente sobre el sistema económico del productor.

Por último, los ingresos del productor también siguen un patrón estacional, similar al de la producción, dado que dependen directamente de la cantidad de toneladas vendidas y del precio ajustado por estacionalidad. En los primeros meses, se observa un ligero crecimiento en los picos de ingresos, pero con el tiempo este crecimiento se atenúa. Esto indica que el sistema alcanza un punto donde los ingresos dejan de aumentar, posiblemente porque los precios estacionales no compensan el incremento en costos.

❓ ¿Por qué el capital no baja?

Aunque el capital no disminuye visiblemente en la gráfica, eso no significa que no esté siendo presionado por los gastos. Lo que sucede es que, en este modelo, el capital crece mientras los ingresos superan a la suma de gastos en insumos y presupuesto del hogar. Sin embargo, el crecimiento se desacelera porque esas salidas del sistema (especialmente el presupuesto del hogar, que aumenta con la inflación) se vuelven cada vez más grandes. Si los ingresos dejaran de crecer o disminuyeran (por ejemplo, por baja productividad o precios), entonces sí podríamos ver una disminución real del capital.

En resumen: , los gastos e inflación afectan al capital, pero aún no lo hacen descender porque los ingresos lo compensan —aunque cada vez con menor margen.

Incertidumbres

Una vez estructurado y validado el modelo base que representa el comportamiento del sistema bajo condiciones normales, se procede a incorporar el análisis de incertidumbres. Este análisis permite explorar cómo posibles variaciones en los parámetros pueden influir en los resultados del sistema. Se busca no solo identificar los factores más determinantes en la evolución del capital u otras variables, sino también anticipar comportamientos alternativos bajo diferentes supuestos.

¿Qué variables impactan más?

# Definimos las incertidumbres
x1 <- seq(60000, 80000, by = 5000)   # coberturabienestar
x2 <- seq(4800, 7200, by = 400)      # montoporapoyobienestar
x3 <- seq(10000, 30000, by = 5000)   # coberturasembrandovida
x4 <- seq(20000, 30000, by = 5000)   # coberturafertilizante
x5 <- seq(15000, 25000, by = 5000)   # coberturaenergiacampo

# Combinamos todas las incertidumbres definidas
Xs <- expand.grid(
  coberturabienestar = x1,
  montoporapoyobienestar = x2,
  coberturasembrandovida = x3,
  coberturafertilizante = x4,
  coberturaenergiacampo = x5
)

Xs$Run.ID <- 1:nrow(Xs)

# Creamos lista para guardar resultados
out_all <- list()
for (i in 1:nrow(Xs)) {

  # Asignamos todos los parámetros base + los que varían desde Xs
  parameters.Xs <- c(
    proporciongastoagua = 0.02, 
    proporciongastoenergia = 0.05, 
    proporciongastomanoobra = 0.60,
    proporciongastofertilizante = 0.15,
    proporciongastotecnologia = 0.10,
    proporciongastosemilla = 0.08,

    tasareinversion = 0.25,
    tasapresupuestohogar = 0.75,

    precipitacion = 0.2,
    precioporproducto = 7000,

    coberturabienestar = Xs$coberturabienestar[i],
    montoporapoyobienestar = Xs$montoporapoyobienestar[i],

    coberturasembrandovida = Xs$coberturasembrandovida[i],
    montoporapoyosembrandovida = 6450,

    coberturafertilizante = Xs$coberturafertilizante[i],
    montoporapoyofertilizante = 10000,

    coberturaenergiacampo = Xs$coberturaenergiacampo[i],
    montoporapoyoenergiacampo = 501676,

    numerohectareas = 470000,
    porcentajeproduccionvendida = 0.70,
    valorbaseporhectarea = 2.2,

    a1 = 0.005,
    a2 = 0.003,
    a3 = 0.01,
    a4 = 0.01,
    a5 = 0.01,

    capacidad.productiva.trabajador = 0.007
  )

  # Ejecutamos el modelo
  out <- ode(
    y = InitialConditions,
    times = times,
    func = agricultores_guerrero,
    parms = parameters.Xs,
    method = intg.method
  )

  # Convertimos resultado a data frame
  out <- data.frame(out)

  # Agregamos identificador único
  out$Run.ID <- Xs$Run.ID[i]

  # Guardamos la simulación
  out_all <- append(out_all, list(out))
}

  # Concatenamos los resultados
out_all <- do.call("rbind", out_all)

# Unimos con el data frame Xs
out_all <- merge(out_all, Xs, by = "Run.ID")

# Confirmamos dimensiones
dim(out_all)
## [1] 111825     12
library(patchwork)

# Gráfico 1: Cobertura Bienestar
g_bienestar <- ggplot(out_all, aes(x = time, y = capital, group = Run.ID, colour = coberturabienestar)) +
  geom_line(alpha = 0.4) +
  scale_color_gradient(low = "green", high = "red") +
  theme_minimal() +
  labs(title = "Cobertura Bienestar", y = "Capital", x = "Tiempo")

# Gráfico 2: Sembrando Vida
g_sembrando <- ggplot(out_all, aes(x = time, y = capital, group = Run.ID, colour = coberturasembrandovida)) +
  geom_line(alpha = 0.4) +
  scale_color_gradient(low = "lightblue", high = "purple") +
  theme_minimal() +
  labs(title = "Cobertura Sembrando Vida", y = "Capital", x = "Tiempo")

# Gráfico 3: Fertilizante
g_fertilizante <- ggplot(out_all, aes(x = time, y = capital, group = Run.ID, colour = coberturafertilizante)) +
  geom_line(alpha = 0.4) +
  scale_color_gradient(low = "orange", high = "lightblue") +
  theme_minimal() +
  labs(title = "Cobertura Fertilizante", y = "Capital", x = "Tiempo")

# Gráfico 4: Energía Campo
g_energia <- ggplot(out_all, aes(x = time, y = capital, group = Run.ID, colour = coberturaenergiacampo)) +
  geom_line(alpha = 0.4) +
  scale_color_gradient(low = "lightblue", high = "darkblue") +
  theme_minimal() +
  labs(title = "Cobertura Energía Campo", y = "Capital", x = "Tiempo")

# Grid 2x2
(g_bienestar | g_sembrando) / (g_fertilizante | g_energia)

1. Cobertura Bienestar: El capital acumulado aumenta visiblemente más cuando la cobertura del programa bienestar es alta. Este apoyo tiene un impacto positivo fuerte y directo sobre el capital. Al apoyar al productor mejora el ingreso neto, favoreciendo la acumulación.

2.Cobertura Sembrando Vida: También muestra una relación positiva clara. Las coberturas más altas (líneas moradas más intensas) se asocian con un capital final mayor.Este subsidio, al estar vinculado al apoyo directo por productividad rural, refuerza el ingreso del productor, lo cual impulsa el crecimiento del capital. Es menos sensible que bienestar, pero aún así relevante.

  1. Cobertura Fertilizante: La diferencia entre líneas es más sutil.Aunque tiene efecto, el impacto de este subsidio sobre el capital parece más moderado. Esto puede deberse a que el subsidio solo reduce un costo, pero no aumenta directamente los ingresos.

4.Cobertura Energía Campo: Similar al fertilizante, aunque el impacto parece algo mayor.Este subsidio actúa como un alivio de costos energéticos, por lo que su efecto sobre el capital depende de cuánto gasto energético hay en el modelo.

# Gráfico: Cobertura Bienestar → ingresos del productor
g_ingresos_bienestar <- ggplot(out_all, aes(x = time, y = ingresosproductor, group = Run.ID, colour = coberturabienestar)) +
  geom_line(alpha = 0.4) +
  scale_color_gradient(low = "green", high = "darkred") +
  theme_minimal() +
  labs(
    title = "Ingresos del productor según cobertura Bienestar",
    x = "Tiempo (meses)",
    y = "Ingresos",
    color = "Cobertura Bienestar"
  )

# Gráfico: Cobertura Sembrando Vida → ingresos del productor
g_ingresos_sembrando <- ggplot(out_all, aes(x = time, y = ingresosproductor, group = Run.ID, colour = coberturasembrandovida)) +
  geom_line(alpha = 0.4) +
  scale_color_gradient(low = "yellow", high = "purple") +
  theme_minimal() +
  labs(
    title = "Ingresos del productor según cobertura Sembrando Vida",
    x = "Tiempo (meses)",
    y = "Ingresos",
    color = "Cobertura Sembrando Vida"
  )
library(patchwork)

g_ingresos_bienestar / g_ingresos_sembrando

# Gastos con cobertura de fertilizante
g_gastos_fertilizante <- ggplot(out_all, aes(x = time, y = gastos, group = Run.ID, colour = coberturafertilizante)) +
  geom_line(alpha = 0.4) +
  scale_color_gradient(low = "orange", high = "darkred") +
  theme_minimal() +
  labs(
    title = "Gastos según cobertura Fertilizante",
    x = "Tiempo (meses)",
    y = "Gastos",
    color = "Cobertura Fertilizante"
  )

# Gastos con cobertura de energía para el campo
g_gastos_energia <- ggplot(out_all, aes(x = time, y = gastos, group = Run.ID, colour = coberturaenergiacampo)) +
  geom_line(alpha = 0.4) +
  scale_color_gradient(low = "skyblue", high = "navy") +
  theme_minimal() +
  labs(
    title = "Gastos según cobertura Energía Campo",
    x = "Tiempo (meses)",
    y = "Gastos",
    color = "Cobertura Energía"
  )

library(patchwork)

g_gastos_fertilizante / g_gastos_energia

ggplot(out_all, aes(x = time, y = ingresosproductor, group = Run.ID, colour = montoporapoyobienestar)) +
  geom_line(alpha = 0.4) +
  scale_color_gradient(low = "purple", high = "darkgreen") +
  theme_minimal() +
  labs(
    title = "Impacto del monto de Bienestar en los ingresos del productor",
    x = "Tiempo (meses)",
    y = "Ingresos del productor",
    color = "Monto apoyo Bienestar"
  )

#=========================================================================
# Bloque 2: Variables económicas/productivas)
#=========================================================================

# Definimos las incertidumbres
x6 <- seq(0.1, 0.5, by = 0.1)               # precipitacion
x7 <- seq(6000, 8000, by = 250)            # precioporproducto
x8 <- seq(0.15, 0.35, by = 0.05)           # tasareinversion
x9 <- seq(0.5, 0.9, by = 0.1)              # porcentajeproduccionvendida
x10 <- seq(0.005, 0.015, by = 0.005)        # capacidad.productiva.trabajador

# Combinamos todas las incertidumbres definidas
Xs1 <- expand.grid(
  precipitacion = x6,
  precioporproducto = x7,
  tasareinversion = x8,
  porcentajeproduccionvendida = x9,
  capacidad.productiva.trabajador = x10
)

# Creamos lista para guardar resultados
Xs1$Run.ID <- 1:nrow(Xs1)
out_all <- list()
for (i in 1:nrow(Xs1)) {
  
  # Asignamos todos los parámetros base + los que varían desde Xs1
  parameters.Xs1 <- c(
    proporciongastoagua = 0.02, 
    proporciongastoenergia = 0.05, 
    proporciongastomanoobra = 0.60,
    proporciongastofertilizante = 0.15, 
    proporciongastotecnologia = 0.10,
    proporciongastosemilla = 0.08, 

    tasareinversion = Xs1$tasareinversion[i], 
    tasapresupuestohogar = 0.75, 
    precipitacion = Xs1$precipitacion[i], 
    precioporproducto = Xs1$precioporproducto[i], 

    coberturabienestar = 70000, 
    montoporapoyobienestar = 6000, 

    coberturasembrandovida = 15000, 
    montoporapoyosembrandovida = 6450, 

    coberturafertilizante = 25000,
    montoporapoyofertilizante = 10000,

    coberturaenergiacampo = 20000,
    montoporapoyoenergiacampo = 501676,

    numerohectareas = 470000,
    porcentajeproduccionvendida = Xs1$porcentajeproduccionvendida[i],
    valorbaseporhectarea = 2.2,

    a1 = 0.005,
    a2 = 0.003,
    a3 = 0.01,
    a4 = 0.01,
    a5 = 0.01,

    capacidad.productiva.trabajador = Xs1$capacidad.productiva.trabajador[i]
  )

  #Ejecutamos el modelo
  out <- ode(
    y = InitialConditions,
    times = times,
    func = agricultores_guerrero,
    parms = parameters.Xs1,
    method = intg.method
  )

  # Convertimos resultado a data frame
  out <- data.frame(out)
  # Agregamos identificador único
  out$Run.ID <- Xs1$Run.ID[i]
  # Guardamos la simulación
  out_all <- append(out_all, list(out))
}
  #Concatenamos los resultados
  out_all <- do.call("rbind", out_all)
  # Unimos con el data frame Xs1
out_all <- merge(out_all, Xs1, by = "Run.ID")
# Capital vs Precipitación
g1 <- ggplot(out_all, aes(x = time, y = capital, group = Run.ID, colour = precipitacion)) +
  geom_line(alpha = 0.3) +
  scale_color_gradient(low = "lightblue", high = "darkblue") +
  labs(title = "Capital vs Precipitación", x = "Tiempo", y = "Capital", color = "Precipitación") +
  theme_minimal()

# Capital vs Precio por producto
g2 <- ggplot(out_all, aes(x = time, y = capital, group = Run.ID, colour = precioporproducto)) +
  geom_line(alpha = 0.3) +
  scale_color_gradient(low = "lightgreen", high = "darkgreen") +
  labs(title = "Capital vs Precio Producto", x = "Tiempo", y = "Capital", color = "Precio") +
  theme_minimal()

# Capital vs Tasa de reinversión
g3 <- ggplot(out_all, aes(x = time, y = capital, group = Run.ID, colour = tasareinversion)) +
  geom_line(alpha = 0.3) +
  scale_color_gradient(low = "khaki", high = "darkorange") +
  labs(title = "Capital vs Tasa de Reinv.", x = "Tiempo", y = "Capital", color = "Reinversión") +
  theme_minimal()

# Capital vs % producción vendida
g4 <- ggplot(out_all, aes(x = time, y = capital, group = Run.ID, colour = porcentajeproduccionvendida)) +
  geom_line(alpha = 0.3) +
  scale_color_gradient(low = "pink", high = "purple") +
  labs(title = "Capital vs % Vendido", x = "Tiempo", y = "Capital", color = "% Vendida") +
  theme_minimal()

# Capital vs capacidad productiva trabajador
g5 <- ggplot(out_all, aes(x = time, y = capital, group = Run.ID, colour = capacidad.productiva.trabajador)) +
  geom_line(alpha = 0.3) +
  scale_color_gradient(low = "cyan", high = "blue") +
  labs(title = "Capital vs Capacidad Trabajador", x = "Tiempo", y = "Capital", color = "Capacidad") +
  theme_minimal()

library(patchwork)

(g1 | g2) / (g3|g4) / g5

# Producción vs precipitación
g_precip_produccion <- ggplot(out_all, aes(x = time, y = produccion, group = Run.ID, colour = precipitacion)) +
  geom_line(alpha = 0.3) +
  scale_color_gradient(low = "gold", high = "purple") +
  theme_minimal() +
  labs(
    title = "Producción vs Precipitación",
    x = "Tiempo (meses)",
    y = "Producción por hectárea",
    color = "Precipitación"
  )

# Producción vs capacidad productiva del trabajador
g_capacidad_produccion <- ggplot(out_all, aes(x = time, y = produccion, group = Run.ID, colour = capacidad.productiva.trabajador)) +
  geom_line(alpha = 0.3) +
  scale_color_gradient(low = "lightcyan", high = "darkred") +
  theme_minimal() +
  labs(
    title = "Producción vs Capacidad del Trabajador",
    x = "Tiempo (meses)",
    y = "Producción por hectárea",
    color = "Capacidad"
  )

# Producción vs tasa de reinversión
g_reinv_produccion <- ggplot(out_all, aes(x = time, y = produccion, group = Run.ID, colour = tasareinversion)) +
  geom_line(alpha = 0.3) +
  scale_color_gradient(low = "khaki", high = "darkorange") +
  theme_minimal() +
  labs(
    title = "Producción vs Tasa de Reinv.",
    x = "Tiempo (meses)",
    y = "Producción por hectárea",
    color = "Tasa Reinv."
  )
library(patchwork)
(g_precip_produccion | g_capacidad_produccion)/ g_reinv_produccion

#Ingresos vs precio por producto
g_precio_ingresos <- ggplot(out_all, aes(x = time, y = ingresosproductor, group = Run.ID, colour = precioporproducto)) +
  geom_line(alpha = 0.3) +
  scale_color_gradient(low = "lightgreen", high = "darkgreen") +
  theme_minimal() +
  labs(
    title = "Ingresos vs Precio por Producto",
    x = "Tiempo (meses)",
    y = "Ingresos del productor",
    color = "Precio"
  )

#Ingresos vs % de la producción vendida
g_venta_ingresos <- ggplot(out_all, aes(x = time, y = ingresosproductor, group = Run.ID, colour = porcentajeproduccionvendida)) +
  geom_line(alpha = 0.3) +
  scale_color_gradient(low = "pink", high = "purple") +
  theme_minimal() +
  labs(
    title = "Ingresos vs % Producción Vendida",
    x = "Tiempo (meses)",
    y = "Ingresos del productor",
    color = "% Vendido"
  )
g_precio_ingresos / g_venta_ingresos

#Gastos vs precipitación
g_precip_gastos <- ggplot(out_all, aes(x = time, y = gastos, group = Run.ID, colour = precipitacion)) +
  geom_line(alpha = 0.3) +
  scale_color_gradient(low = "lightblue", high = "darkred") +
  theme_minimal() +
  labs(
    title = "Gastos vs Precipitación",
    x = "Tiempo (meses)",
    y = "Gastos del productor",
    color = "Precipitación"
  )

#Gastos vs tasa de reinversión
g_reinv_gastos <- ggplot(out_all, aes(x = time, y = gastos, group = Run.ID, colour = tasareinversion)) +
  geom_line(alpha = 0.3) +
  scale_color_gradient(low = "khaki", high = "darkorange") +
  theme_minimal() +
  labs(
    title = "Gastos vs Tasa de Reinv.",
    x = "Tiempo (meses)",
    y = "Gastos del productor",
    color = "Reinv."
  )

g_precip_gastos / g_reinv_gastos

Este enfoque aporta mayor solidez a las conclusiones y orienta la toma de decisiones en contextos de alta complejidad e incertidumbre como este.

Políticas propuestas y su impacto

🧩 Política 1: Fortalecimiento de Talleres Técnicos del Programa Sembrando Vida: Capacidades Técnicas Individualizadas

Descripción:

  • La política propone mejorar la calidad y personalización de los talleres ofrecidos en el marco del programa Sembrando Vida. 

  • Aumentar el número de técnicos capacitados por comunidad.

  • Implementar contenidos adaptados al tipo de cultivo y condiciones locales.

  • Mayor frecuencia de talleres (al menos 1 mensual).

  • Asignación de un mayor monto para la capacitación agrícola por productor.

  • El objetivo es que los productores no solo reciban un apoyo económico, sino también conocimientos aplicables que aumenten su eficiencia productiva.

Modelable vía: produccionporhectarea ya que los conocimientos impactan en el uso eficiente de tecnología y recursos.

💡 Justificación: Mejores talleres → mayor conocimiento → mejor aplicación de técnicas → más producción por hectárea, especialmente vía mayor aprovechamiento de la tecnología y del trabajo humano.

📌 Impacto esperado: Incrementar a5 (impacto del gasto en tecnología) de 0.01 a 0.015 o 0.02.

*Eventualmente también se podría ajustar capacidad.productiva.trabajador si se considera que los talleres mejoran la productividad del trabajo humano.

🧩 Política 2: Esquema de inversión conjunta 50/50 entre gobierno y productor

Esta política consiste en que el gobierno aporte recursos para la compra de insumos clave, siempre que el productor también contribuya con una parte equivalente. Se centra en fertilizantes y semillas pero se puede aplicar a otros implementos agrícolas. El apoyo no es universal ni subsidiado al 100%, sino condicionado a una corresponsabilidad financiera, lo cual incentiva la eficiencia del gasto y la selección racional de insumos.

Alternativamente, puede modelarse como una disminución efectiva del gasto en ciertos insumos, lo cual se traduce en una mayor acumulación del capital.

  • Modelable vía: Gasto en fertilizante (gastofertilizante) y en gasto en semillas (gastosemilla). El efecto directo será que con la misma cantidad invertida por el productor, el gasto total se duplica (por el aporte del gobierno), mejorando la producción.

  • 💡 Justificación: Una barrera común para aumentar el uso de insumos de calidad es el costo. Esta política reduce dicha barrera sin eliminar la participación activa del productor.

  • 📌 Impacto esperado: Aumentar el gasto efectivo en fertilizantes y semillas, por ejemplo:

    • Multiplicando el gasto en ambos insumos por 1.5 o 2 (reflejo del aporte 50/50).

    • O disminuyendo el peso del gasto en fertilizante y semilla sobre el capital del productor (es decir, su proporción respecto a montoreinversión).

    • Eventualmente, se podría también aumentar los parámetros a3 (fertilizante) y a4 (semillas) si se asume una mejora en la calidad del insumo adquirido.

🧩 Política 3: Comercialización Directa Productor–Consumidor

DESCRIPCIÓN: FALTA

  • Modelable vía: ingresoventas

  • 💡 Justificación: Afecta los canales de comercialización, reduciendo intermediarios y aumentando el ingreso por ventas directo del productor. 

  • 📌 Impacto esperado:

Diagrama de flujo con la intervención de las políticas propuestas

Modelo con la intervención de las políticas propuestas

FALTA

Conclusiones

Referencias