En el análisis de decisiones bajo incertidumbre, es fundamental incorporar información probabilística para seleccionar la mejor alternativa posible. En este contexto, el Teorema de Bayes permite actualizar probabilidades a partir de nueva evidencia, mientras que el Valor Esperado de la Información (VEI) cuantifica el beneficio de disponer de información adicional.
Este informe analiza el caso de la empresa TechParts S.A., evaluando decisiones de inversión mediante:
# ==============================================================================
# BAYES + VEII — TechParts S.A. (Análisis de Decisión Estratégica)
# Propósito: Evaluar financieramente si contratar una consultora para reducir
# la incertidumbre es rentable para la empresa.
# ==============================================================================
# Carga de librerías para manipulación y visualización de datos.
library(ggplot2); library(dplyr); library(tidyr)
##
## Adjuntando el paquete: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
# ------------------------------------------------------------------------------
# 1. MATRIZ DE PAGOS (PAYOFF MATRIX)
# Concepto: Representación de utilidades o pérdidas según la decisión y el mercado.
# Sirve para: Cuantificar el impacto monetario de cada alternativa en cada escenario.
# ------------------------------------------------------------------------------
pagos <- matrix(c(
-200000, 100000, 500000, # Alternativa: Expandir a Planta Grande
-50000, 200000, 300000, # Alternativa: Planta Mediana
100000, 150000, 180000, # Alternativa: Planta Pequeña
50000, 50000, 50000 # Alternativa: No Construir (Costo fijo/ahorro)
), nrow=4, byrow=TRUE)
# Asignación de etiquetas para identificar filas (decisiones) y columnas (estados del mercado).
rownames(pagos) <- c("Grande","Mediana","Pequeña","NoConstr")
colnames(pagos) <- c("Baja","Media","Alta")
# ------------------------------------------------------------------------------
# 2. PROBABILIDADES Y VEROSIMILITUDES
# Concepto: Incertidumbre inicial (Prior) y fiabilidad de la fuente (Likelihood).
# Sirve para: Modelar qué tan creíble es el informe de la consultora externa.
# ------------------------------------------------------------------------------
prior <- c(0.20, 0.45, 0.35) # Probabilidades iniciales de demanda (Baja, Media, Alta).
# Verosimilitud: P(Informe | Estado Real).
# Indica la probabilidad de que la consultora diga "Favorable" según la demanda real.
likel_F <- c(0.10, 0.40, 0.90) # P(Fav | Demanda Baja, Media, Alta).
likel_D <- 1 - likel_F # P(Desf | Demanda Baja, Media, Alta).
# ------------------------------------------------------------------------------
# 3. FUNCIÓN DE ACTUALIZACIÓN BAYESIANA
# Concepto: Teorema de Bayes aplicado al aprendizaje de datos.
# Sirve para: Calcular nuevas probabilidades después de recibir el estudio de mercado.
# ------------------------------------------------------------------------------
actualizar <- function(prior, likel) {
conj <- prior * likel # P(H ∩ E): Probabilidad conjunta (Prior x Verosimilitud).
# Retorna la Posterior (P(H|E)) y la Probabilidad Marginal P(E) (el total de ese informe).
list(post = conj/sum(conj), P_E = sum(conj))
}
# Ejecutamos la actualización para conocer los escenarios "Post-Informe".
bayes_F <- actualizar(prior, likel_F) # Probabilidades si el informe es Favorable.
bayes_D <- actualizar(prior, likel_D) # Probabilidades si el informe es Desfavorable.
# ------------------------------------------------------------------------------
# 4. CRITERIO DEL VALOR ESPERADO MONETARIO (VME)
# Concepto: Valor promedio ponderado de una decisión.
# Sirve para: Elegir matemáticamente la opción que genera más dinero a largo plazo.
# ------------------------------------------------------------------------------
mejor_vme <- function(prob) {
vme <- pagos %*% prob # Multiplicación matricial: Pagos por sus probabilidades.
idx <- which.max(vme) # Localiza la alternativa con el pago más alto.
list(alternativa = rownames(pagos)[idx], valor = vme[idx], todos = vme)
}
# Calculamos la mejor opción bajo diferentes niveles de conocimiento:
opt_sin_info <- mejor_vme(prior) # Decisión "a ciegas" (sin estudio).
opt_fav <- mejor_vme(bayes_F$post) # Decisión si el estudio es optimista.
opt_desf <- mejor_vme(bayes_D$post) # Decisión si el estudio es pesimista.
# ------------------------------------------------------------------------------
# 5. VALORES DE LA INFORMACIÓN (VEIP y VEII)
# Concepto: ¿Cuánto vale saber la verdad?
# Sirve para: Ponerle un precio máximo al contrato con la consultora.
# ------------------------------------------------------------------------------
# VME con información imperfecta: Ponderación de los mejores resultados según el tipo de informe.
vme_con_info <- (bayes_F$P_E * opt_fav$valor) + (bayes_D$P_E * opt_desf$valor)
# VECP: Valor Esperado con Certeza Perfecta (Si supiéramos el futuro sin error).
vecp <- sum(apply(pagos, 2, max) * prior)
# VEIP: Valor Máximo Teórico. Lo más que se pagaría por un oráculo perfecto.
veip <- vecp - opt_sin_info$valor
# VEII: Valor Esperado de la Información Imperfecta.
# Qué hace: Resta el valor base (sin info) del valor esperado con el estudio de mercado.
# Sirve para: Definir el techo presupuestario para la consultora.
veii <- vme_con_info - opt_sin_info$valor
# ------------------------------------------------------------------------------
# 6. VISUALIZACIÓN COMPARATIVA
# Sirve para: Comunicar gráficamente la ganancia que aporta la información al negocio.
# ------------------------------------------------------------------------------
df_vme <- data.frame(
Escenario = c("Sin info\n(A₂ Mediana)", "Si Favorable\n(A₁ Grande)",
"Si Desfav.\n(A₃ Pequeña)", "Con info\n(esperado)", "Cert. Perfecta\n(VECP)"),
VME = c(opt_sin_info$valor, opt_fav$valor, opt_desf$valor, vme_con_info, vecp),
Tipo = c("Base","Info","Info","Esperado","Perfecto")
)
df_vme$Escenario <- factor(df_vme$Escenario, levels=df_vme$Escenario)
# Generación del gráfico de barras para análisis gerencial.
ggplot(df_vme, aes(x=Escenario, y=VME/1000, fill=Tipo)) +
geom_col(width=0.6, show.legend=FALSE) + # Crea las columnas.
geom_text(aes(label=paste0("$",round(VME/1000,0),"k")), vjust=-0.4, fontface="bold") +
scale_fill_manual(values=c(Base="#3a7fbd", Info="#d97706", Esperado="#0f7a52", Perfecto="#b0305a")) +
labs(title="Análisis de Valor de la Información — TechParts S.A.",
subtitle="El VEII representa el beneficio extra por reducir la incertidumbre",
y="Valor Esperado (Miles $)") +
theme_minimal() +
# Línea discontinua que marca el "Piso" (Ganancia mínima sin contratar consultora).
annotate("segment", x=1, xend=4, y=opt_sin_info$valor/1000, yend=opt_sin_info$valor/1000,
linetype="dashed", color="#3a7fbd")
CONCLUSIONES
El análisis demuestra que la incorporación de información adicional mediante el Teorema de Bayes permite mejorar el proceso de toma de decisiones bajo incertidumbre.
Asimismo, el cálculo del VEII evidencia que la información imperfecta proporciona un beneficio económico positivo, aunque limitado en comparación con la información perfecta.
En consecuencia, la empresa debería considerar adquirir información externa únicamente si su costo es menor o igual al VEII calculado.
Este enfoque permite optimizar decisiones estratégicas en entornos inciertos, maximizando el rendimiento esperado.