Contexto: En una finca de mango ubicada en el municipio de San Onofre (Sucre), se ha instalado un sistema de riego por goteo con 500 goteros. El registro histórico de los últimos 24 meses indica que, en promedio, se obstruyen 3 goteros por mes debido a acumulación de sales y sedimentos.
Preguntas de ingeniería: a) ¿Cuál es la probabilidad de que en un mes cualquiera no se obstruya ningún gotero?
b) ¿Cuál es la probabilidad de que se obstruyan exactamente 5 goteros en un mes?
c) ¿Cuál es la probabilidad de que se obstruyan más de 6 goteros en un mes (situación crítica que exige lavado completo del sistema)?
\[P(X = k) = \frac{e^{-\lambda} \cdot \lambda^k}{k!}, \quad k = 0, 1, 2, 3, \ldots\]
| Término | Significado matemático | Aplicación en Ingeniería Agrícola |
|---|---|---|
| \(X\) | Variable aleatoria discreta | Número de goteros obstruidos en un mes |
| \(k\) | Valor específico de la variable | 0, 1, 2, 3, … goteros dañados |
| \(\lambda\) | Tasa media de ocurrencia por intervalo | 3 goteros/mes (según histórico) |
| \(e\) | Constante de Euler (≈ 2.71828) | Base del decaimiento exponencial |
| \(k!\) | Factorial de \(k\) | Normaliza la probabilidad |
| \(P(X=k)\) | Probabilidad exacta de \(k\) eventos | Probabilidad de obstrucción puntual |
\[E[X] = \lambda = 3 \qquad Var(X) = \lambda = 3\]
Distribución: \(X \sim \text{Poisson}(\lambda = 3)\)
\[P(X=0) = \frac{e^{-3} \cdot 3^0}{0!} = \frac{e^{-3} \cdot 1}{1} = e^{-3} = 0.0498\]
\[\boxed{P(X=0) \approx 4.98\%}\]
\[P(X=5) = \frac{e^{-3} \cdot 3^5}{5!} = \frac{0.0498 \cdot 243}{120} = \frac{12.1014}{120} = 0.1008\]
\[\boxed{P(X=5) \approx 10.08\%}\]
Calculamos las probabilidades individuales:
| \(k\) | \(P(X=k)\) |
|---|---|
| 0 | \(\dfrac{e^{-3} \cdot 1}{1} = 0.0498\) |
| 1 | \(\dfrac{e^{-3} \cdot 3}{1} = 0.1494\) |
| 2 | \(\dfrac{e^{-3} \cdot 9}{2} = 0.2240\) |
| 3 | \(\dfrac{e^{-3} \cdot 27}{6} = 0.2240\) |
| 4 | \(\dfrac{e^{-3} \cdot 81}{24} = 0.1680\) |
| 5 | \(\dfrac{e^{-3} \cdot 243}{120} = 0.1008\) |
| 6 | \(\dfrac{e^{-3} \cdot 729}{720} = 0.0504\) |
| Σ | 0.9665 |
\[P(X > 6) = 1 - 0.9665 = 0.0335\]
\[\boxed{P(X>6) \approx 3.35\%}\]
Interpretación agronómica: Hay ~3.35% de probabilidad de un mes crítico que requiere lavado completo. Si el ciclo de riego es de 6 meses, la probabilidad de al menos un mes crítico es \(1 - (1-0.0335)^6 \approx 18.5\%\) → conviene presupuestar mantenimiento preventivo trimestral.
import numpy as np
import matplotlib.pyplot as plt
import scipy.stats as stats
# ============================================================
# EJERCICIO 1: Poisson — Obstrucción de goteros (λ = 3/mes)
# ============================================================
lambda_goteros = 3
# --- a) P(X = 0) ---
prob_0 = stats.poisson.pmf(0, mu=lambda_goteros)
print(f"a) P(X = 0) = {prob_0:.4f} ({prob_0*100:.2f}%)")
# --- b) P(X = 5) ---
prob_5 = stats.poisson.pmf(5, mu=lambda_goteros)
print(f"b) P(X = 5) = {prob_5:.4f} ({prob_5*100:.2f}%)")
# --- c) P(X > 6) = 1 - P(X <= 6) ---
prob_mas_6 = 1 - stats.poisson.cdf(6, mu=lambda_goteros)
print(f"c) P(X > 6) = {prob_mas_6:.4f} ({prob_mas_6*100:.2f}%)")
# --- Gráfico de la PMF ---
k = np.arange(0, 13)
probs = stats.poisson.pmf(k, mu=lambda_goteros)
plt.figure(figsize=(8, 4))
plt.bar(k, probs, color='steelblue', edgecolor='black', alpha=0.8)
plt.axvline(lambda_goteros, color='red', linestyle='--',
label=f'Media λ = {lambda_goteros}')
plt.title(f'Distribución de Poisson — Goteros obstruidos/mes (λ = {lambda_goteros})')
plt.xlabel('Número de goteros obstruidos (k)')
plt.ylabel('Probabilidad P(X = k)')
plt.legend()
plt.grid(alpha=0.3)
plt.show()
Contexto: En el municipio de Cereté (Córdoba), el cultivo de maíz se ve afectado por la temperatura ambiental. Un estudio agronómico determinó que la temperatura media diurna durante la fase de floración se distribuye aproximadamente Normal con media μ = 32 °C y desviación estándar σ = 2.5 °C.
Se sabe que el maíz entra en estrés térmico cuando la temperatura supera los 36 °C, lo que reduce el rendimiento hasta en un 20%.
Preguntas de ingeniería: a) ¿Cuál es la probabilidad de que en un día de floración la temperatura supere los 36 °C (estrés térmico)?
b) ¿Cuál es la probabilidad de que la temperatura esté entre 30 °C y 35 °C (rango óptimo)?
c) ¿Qué temperatura se supera solo el 10% de los días? (Cuantil 90, para diseño de sombráculos o riego refrescante)
\[f(x) = \frac{1}{\sigma \sqrt{2\pi}} \exp\left[-\frac{1}{2}\left(\frac{x - \mu}{\sigma}\right)^2\right], \quad -\infty < x < +\infty\]
| Término | Significado matemático | Aplicación en Ingeniería Agrícola |
|---|---|---|
| \(x\) | Valor de la variable continua | Temperatura diurna (°C) |
| \(\mu\) | Media poblacional | 32 °C (centro de la campana) |
| \(\sigma\) | Desviación estándar | 2.5 °C (dispersión térmica) |
| \(\sigma^2\) | Varianza | 6.25 °C² |
| \(\pi\) | Constante ≈ 3.1416 | Normalización del área bajo la curva |
| \(f(x)\) | Densidad de probabilidad (NO es probabilidad) | Altura de la campana en \(x\) |
\[P(a \leq X \leq b) = \int_a^b f(x)\,dx = F(b) - F(a)\]
\[Z = \frac{X - \mu}{\sigma} \sim N(0, 1)\]
Distribución: \(X \sim N(\mu = 32, \sigma = 2.5)\)
Estandarizamos: \[Z = \frac{36 - 32}{2.5} = \frac{4}{2.5} = 1.6\]
Buscamos en tabla normal estándar: \[P(Z > 1.6) = 1 - P(Z \leq 1.6) = 1 - 0.9452 = 0.0548\]
\[\boxed{P(X > 36) \approx 5.48\%}\]
Estandarizamos ambos límites: \[Z_1 = \frac{30 - 32}{2.5} = -0.8 \qquad Z_2 = \frac{35 - 32}{2.5} = 1.2\]
\[P(-0.8 \leq Z \leq 1.2) = \Phi(1.2) - \Phi(-0.8)\]
\[= 0.8849 - 0.2119 = 0.6730\]
\[\boxed{P(30 \leq X \leq 35) \approx 67.30\%}\]
De la tabla normal estándar: \(z_{0.90} = 1.2816\)
Desestandarizamos: \[x_{0.90} = \mu + z_{0.90} \cdot \sigma = 32 + 1.2816 \times 2.5 = 32 + 3.204 = 35.20 \text{ °C}\]
\[\boxed{x_{0.90} \approx 35.2 \text{ °C}}\]
Interpretación agronómica: - Hay ~5.5% de días con estrés térmico (>36 °C). - El 90% de los días la temperatura no supera 35.2 °C → diseñar el sistema de enfriamiento para ese umbral garantiza cobertura en 9 de cada 10 días.
import numpy as np
import matplotlib.pyplot as plt
import scipy.stats as stats
# ============================================================
# EJERCICIO 2: Normal — Temperatura diurna (μ=32, σ=2.5)
# ============================================================
mu_temp = 32
sigma_temp = 2.5
# --- a) P(X > 36) ---
prob_estres = 1 - stats.norm.cdf(36, loc=mu_temp, scale=sigma_temp)
print(f"a) P(X > 36 °C) = {prob_estres:.4f} ({prob_estres*100:.2f}%)")
# --- b) P(30 ≤ X ≤ 35) ---
prob_optimo = (stats.norm.cdf(35, loc=mu_temp, scale=sigma_temp)
- stats.norm.cdf(30, loc=mu_temp, scale=sigma_temp))
print(f"b) P(30 ≤ X ≤ 35) = {prob_optimo:.4f} ({prob_optimo*100:.2f}%)")
# --- c) Cuantil 90 (percentil 90) ---
cuantil_90 = stats.norm.ppf(0.90, loc=mu_temp, scale=sigma_temp)
print(f"c) Cuantil 90 = {cuantil_90:.2f} °C")
# --- Gráfico de la PDF con áreas sombreadas ---
x = np.linspace(mu_temp - 4*sigma_temp, mu_temp + 4*sigma_temp, 500)
pdf = stats.norm.pdf(x, loc=mu_temp, scale=sigma_temp)
fig, ax = plt.subplots(figsize=(9, 5))
ax.plot(x, pdf, 'b-', lw=2, label='PDF Normal(32, 2.5)')
# Área de estrés térmico (>36)
x_estres = np.linspace(36, mu_temp + 4*sigma_temp, 100)
ax.fill_between(x_estres, stats.norm.pdf(x_estres, mu_temp, sigma_temp),
color='red', alpha=0.4, label=f'Estrés térmico: {prob_estres*100:.2f}%')
# Área de rango óptimo (30-35)
x_opt = np.linspace(30, 35, 100)
ax.fill_between(x_opt, stats.norm.pdf(x_opt, mu_temp, sigma_temp),
color='green', alpha=0.3, label=f'Rango óptimo: {prob_optimo*100:.2f}%')
ax.axvline(cuantil_90, color='purple', linestyle='--',
label=f'Cuantil 90 = {cuantil_90:.2f} °C')
ax.set_title('Temperatura diurna en floración — Modelo Normal')
ax.set_xlabel('Temperatura (°C)')
ax.set_ylabel('Densidad de probabilidad')
ax.legend()
ax.grid(alpha=0.3)
plt.show()
Contexto: En el municipio de Sampués (Sucre) se planea cultivar ñame en secano. La precipitación mensual se modela con una distribución Gamma(α = 2.5, β = 20 mm). El cultivo requiere al menos 40 mm mensuales para no perder rendimiento.
Preguntas de ingeniería: a) ¿Cuál es la precipitación media esperada?
b) ¿Cuál es la probabilidad de que en un mes cualquiera llueva menos de 40 mm (mes deficitario)?
c) ¿Qué precipitación mensual se supera solo el 10% de los meses? (Cuantil 90, útil para diseñar drenajes)
\[f(x) = \frac{1}{\Gamma(\alpha)\,\beta^{\alpha}}\, x^{\alpha - 1} e^{-x/\beta}, \quad x > 0\]
| Término | Nombre | Significado matemático | Aplicación en Ingeniería Agrícola |
|---|---|---|---|
| \(x\) | Variable | Valor de precipitación | Lluvia mensual (mm) |
| \(\alpha\) | Forma (shape) | Controla la asimetría | 2.5 → sesgo positivo moderado |
| \(\beta\) | Escala (scale) | Estira el eje x | 20 mm → magnitud de la lluvia |
| \(\Gamma(\alpha)\) | Función Gamma | Generaliza el factorial: \(\Gamma(n)=(n-1)!\) | Normaliza el área a 1 |
| \(e^{-x/\beta}\) | Decaimiento exponencial | Reduce la probabilidad de valores grandes | Cola derecha larga |
\[E[X] = \alpha \beta \qquad Var(X) = \alpha \beta^2 \qquad \text{Sesgo} = \frac{2}{\sqrt{\alpha}} > 0\]
Distribución: \(X \sim \text{Gamma}(\alpha = 2.5, \beta = 20)\)
\[E[X] = \alpha \beta = 2.5 \times 20 = 50 \text{ mm}\]
\[\boxed{E[X] = 50 \text{ mm/mes}}\]
Varianza: \(Var(X) = \alpha \beta^2 = 2.5
\times 400 = 1000 \text{ mm}^2\)
Desviación: \(\sigma = \sqrt{1000} = 31.6
\text{ mm}\)
Para la Gamma no existe una fórmula cerrada simple en términos elementales; se resuelve con la función Gamma incompleta o con tablas. Aproximamos numéricamente:
\[P(X < 40) = F(40;\, \alpha=2.5,\, \beta=20) \approx 0.297\]
\[\boxed{P(X < 40) \approx 29.7\%}\]
Interpretación: Casi 3 de cada 10 meses serán deficitarios (< 40 mm). En un ciclo de 6 meses, la probabilidad de al menos un mes deficitario es \(1-(0.703)^6 \approx 88\%\) → altamente probable. Se recomienda riego complementario.
Con tabla o software: \(x_{0.90} \approx 103.6 \text{ mm}\)
\[\boxed{x_{0.90} \approx 103.6 \text{ mm}}\]
Interpretación: El 90% de los meses la precipitación no supera 103.6 mm. Solo 1 de cada 10 meses llueve más → dimensionar el drenaje para ~104 mm/mes cubre el 90% de los escenarios.
⚠️ Nota pedagógica: El cálculo de la CDF y los cuantiles de la Gamma se aprende a resolver con software (Python/R). A mano se practica la interpretación, no la integración.
import numpy as np
import matplotlib.pyplot as plt
import scipy.stats as stats
# ============================================================
# EJERCICIO 3: Gamma — Precipitación mensual (α=2.5, β=20)
# ============================================================
alpha_g = 2.5
beta_g = 20
# --- a) Media y desviación ---
media = alpha_g * beta_g
varianza = alpha_g * beta_g**2
print(f"a) Media = {media:.2f} mm/mes")
print(f" Desviación estándar = {np.sqrt(varianza):.2f} mm")
# --- b) P(X < 40) ---
prob_deficit = stats.gamma.cdf(40, a=alpha_g, scale=beta_g)
print(f"b) P(X < 40 mm) = {prob_deficit:.4f} ({prob_deficit*100:.2f}%)")
# --- c) Cuantil 90 ---
cuantil_90_g = stats.gamma.ppf(0.90, a=alpha_g, scale=beta_g)
print(f"c) Cuantil 90 = {cuantil_90_g:.2f} mm")
# --- Gráfico PDF con áreas ---
x = np.linspace(0, 200, 500)
pdf = stats.gamma.pdf(x, a=alpha_g, scale=beta_g)
fig, ax = plt.subplots(figsize=(9, 5))
ax.plot(x, pdf, 'g-', lw=2, label=f'PDF Gamma(α={alpha_g}, β={beta_g})')
# Área de déficit (<40 mm)
x_def = np.linspace(0, 40, 100)
ax.fill_between(x_def, stats.gamma.pdf(x_def, a=alpha_g, scale=beta_g),
color='red', alpha=0.4,
label=f'Déficit (<40 mm): {prob_deficit*100:.1f}%')
ax.axvline(media, color='blue', linestyle=':', label=f'Media = {media:.0f} mm')
ax.axvline(cuantil_90_g, color='purple', linestyle='--',
label=f'Cuantil 90 = {cuantil_90_g:.1f} mm')
ax.set_title('Precipitación mensual en Sampués — Modelo Gamma')
ax.set_xlabel('Precipitación mensual (mm)')
ax.set_ylabel('Densidad de probabilidad')
ax.legend()
ax.grid(alpha=0.3)
plt.show()
# --- Extra: CDF acumulada ---
fig, ax = plt.subplots(figsize=(9, 4))
cdf = stats.gamma.cdf(x, a=alpha_g, scale=beta_g)
ax.plot(x, cdf, 'g-', lw=2)
ax.axhline(0.90, color='purple', linestyle='--', alpha=0.6)
ax.axvline(cuantil_90_g, color='purple', linestyle='--', alpha=0.6)
ax.scatter([cuantil_90_g], [0.90], color='purple', zorder=5,
label=f'Cuantil 90 = {cuantil_90_g:.1f} mm')
ax.set_title('Función de Distribución Acumulada (CDF) — Gamma')
ax.set_xlabel('Precipitación mensual (mm)')
ax.set_ylabel('F(x) = P(X ≤ x)')
ax.legend()
ax.grid(alpha=0.3)
plt.show()
| Aspecto | Poisson | Normal | Gamma |
|---|---|---|---|
| Variable | Goteros obstruidos/mes | Temperatura diurna | Precipitación mensual |
| Parámetros | λ = 3 | μ = 32, σ = 2.5 | α = 2.5, β = 20 |
| Tipo | Discreta | Continua | Continua |
| Rango | {0,1,2,…} | (-∞,+∞) | (0,+∞) |
| Media | 3 | 32 °C | 50 mm |
| Pregunta a) | P(X=0) = 4.98% | P(X>36) = 5.48% | E[X] = 50 mm |
| Pregunta b) | P(X=5) = 10.08% | P(30≤X≤35) = 67.3% | P(X<40) = 29.7% |
| Pregunta c) | P(X>6) = 3.35% | Cuantil 90 = 35.2 °C | Cuantil 90 = 103.6 mm |
| Decisión agrícola | Mantenimiento preventivo | Sistema de enfriamiento | Riego complementario |
dpois,
pnorm, qgamma, etc.).q...().¿Deseas que prepare también: - 🧾 Una plantilla RMarkdown vacía con la estructura de los tres ejercicios para que los estudiantes la llenen? - 🎥 Un guion de video corto (5 min) explicando uno de los ejercicios paso a paso? - 📝 Un quiz de verificación con preguntas de opción múltiple basadas en estos tres ejercicios?