Introducción

Los árboles de decisión y los modelos bayesianos son marcos analíticos que permiten a los gestores evaluar alternativas complejas. En un entorno donde el gasto operativo y de inversión debe optimizarse, estas herramientas facilitan el cálculo del Valor Monetario Esperado (VME), ayudando a elegir la ruta que maximiza el beneficio o minimiza la pérdida.

En este informe exploraremos:

  1. Diagnóstico Médico (Bayes): Cómo interpretar pruebas imperfectas.

  2. Exploración Petrolera: Decisiones de alto riesgo y gran escala.

  3. Startups e Industria: Modelos de actualización secuencial de datos.

BAYES — Caso 1: Diagnóstico Médico

Prueba de Detección de Cáncer de Mama

Una mamografía detecta cáncer de mama. La prevalencia (prior) es del 1% en mujeres de 40–50 años. La prueba tiene sensibilidad del 80% (detecta correctamente el 80% de casos reales) y especificidad del 90.4% (tasa de falsos positivos del 9.6%). Una paciente da positivo. ¿Cuál es la probabilidad real de que tenga cáncer?

# ====================================================
# BAYES — Caso 1: Diagnóstico Médico
# ====================================================

# --- CONFIGURACIÓN DE PARÁMETROS INICIALES ---
# Definimos las probabilidades base (creencias antes de la prueba)
prevalencia  <- 0.01   # Prior: Probabilidad base de tener cáncer (1% de la población)
sensibilidad <- 0.80   # P(Positivo | Cáncer): Probabilidad de que la prueba detecte el cáncer
falso_pos    <- 0.096  # P(Positivo | No Cáncer): Probabilidad de que una persona sana dé positivo

# --- ESTRUCTURA DE LA TABLA BAYESIANA ---
# Definimos los posibles escenarios (Estados de la Naturaleza)
estados <- c("Cáncer", "No Cáncer")

# Asignamos el Prior (Distribución de probabilidad inicial)
prior   <- c(prevalencia, 1 - prevalencia) 

# Definimos la Verosimilitud (Likelihood): ¿Qué tan probable es el resultado observado en cada estado?
likel   <- c(sensibilidad, falso_pos) 

# --- CÁLCULO BAYESIANO ---
# Paso 1-3: Probabilidades Conjuntas 
# Multiplicamos el Prior por la Verosimilitud para ver el peso de cada escenario
conjunta <- prior * likel

# Paso 4: Probabilidad Marginal (Evidencia)
# Es la suma de todas las conjuntas. Representa la probabilidad total de dar positivo (P(Positivo))
P_positivo <- sum(conjunta)
cat("P(Positivo) =", round(P_positivo, 4), "\n")
## P(Positivo) = 0.103
# Paso 5: Cálculo de Probabilidades Posteriores
# Aplicamos el Teorema de Bayes: (Conjunta / Evidencia) para actualizar nuestra creencia
posterior <- conjunta / P_positivo

# --- PRESENTACIÓN DE RESULTADOS ---
# Creamos un data frame para visualizar el proceso completo de actualización
tabla <- data.frame(
  Estado      = estados,
  Prior       = prior,
  Verosimil   = likel,
  Conjunta    = conjunta,
  Posterior   = round(posterior, 4)
)
print(tabla)
##      Estado Prior Verosimil Conjunta Posterior
## 1    Cáncer  0.01     0.800  0.00800    0.0776
## 2 No Cáncer  0.99     0.096  0.09504    0.9224
# Imprimimos la conclusión principal
cat("\n→ P(Cáncer | Positivo) =", round(posterior[1] * 100, 1), "%\n")
## 
## → P(Cáncer | Positivo) = 7.8 %
cat("→ Aunque la prueba es positiva, solo el",
    round(posterior[1] * 100, 1), "% tiene cáncer.\n")
## → Aunque la prueba es positiva, solo el 7.8 % tiene cáncer.
# --- ANÁLISIS DE SENSIBILIDAD (VISUALIZACIÓN) ---
# Evaluamos cómo cambia el resultado si la enfermedad fuera más o menos común
library(ggplot2)

# Generamos un rango de prevalencias desde 0.1% hasta 20%
prevalencias <- seq(0.001, 0.20, 0.001)

# Calculamos la probabilidad posterior para cada punto del rango anterior
post_cancer <- sapply(prevalencias, function(p) {
  # Calculamos conjuntas para cada prevalencia 'p'
  conj <- c(sensibilidad * p, falso_pos * (1 - p))
  # Retornamos la posterior de tener cáncer (Punto 1 / Suma total)
  conj[1] / sum(conj)
})

# Creamos un set de datos para el gráfico
df_prev <- data.frame(prevalencia = prevalencias, posterior = post_cancer)
# Graficamos la curva de Valor Predictivo Positivo
ggplot(df_prev, aes(x = prevalencia * 100, y = posterior * 100)) +
  geom_line(color = "#3a7fbd", linewidth = 1.2) + # Línea de tendencia
  # Marcamos el punto específico del caso de estudio (1% de prevalencia)
  geom_point(data = data.frame(x = 1, y = posterior[1] * 100),
             aes(x = x, y = y), color = "#b0305a", size = 4) +
  # Añadimos etiqueta informativa al punto
  annotate("text", x = 2, y = posterior[1] * 100,
           label = paste0("Prevalencia 1%\nP(Cáncer|+) = ",
                           round(posterior[1] * 100, 1), "%"),
           hjust = 0, color = "#b0305a", size = 3.5) +
  labs(title = "Efecto de la Prevalencia sobre el Valor Predictivo Positivo",
       subtitle = "Mamografía: Sensibilidad=80%, Tasa FP=9.6%",
       x = "Prevalencia (%)", y = "P(Cáncer | Positivo) (%)") +
  theme_minimal() +
  scale_x_continuous(labels = function(x) paste0(x, "%")) +
  scale_y_continuous(labels = function(x) paste0(x, "%"))

Conclusión

En conclusión, el análisis bayesiano demuestra que la eficacia de un diagnóstico médico no reside únicamente en la precisión técnica de la prueba, sino en la prevalencia de la condición en la población analizada; de este modo, cuando la enfermedad es poco frecuente (1%), incluso una prueba con alta sensibilidad genera un 92.2% de falsos positivos, lo que subraya la necesidad de interpretar los resultados positivos con cautela para evitar un gasto emocional y económico innecesario en procedimientos invasivos de seguimiento, validando así la importancia de priorizar los recursos de salud en grupos de mayor riesgo donde el valor predictivo positivo es significativamente más robusto.
  • Decisión Recomendada: No realizar procedimientos invasivos de forma inmediata (como una cirugía o biopsia agresiva).

  • Justificación: A pesar de que la prueba dio positivo, la probabilidad posterior de tener cáncer es de apenas 7.8%. Esto significa que hay un 92.2% de probabilidad de estar sana.

  • Acción Sugerida: Lo óptimo es realizar una segunda prueba independiente o un seguimiento clínico menos invasivo. Iniciar un tratamiento costoso o doloroso con una probabilidad tan baja de enfermedad representaría un gasto de recursos y un riesgo físico injustificado.