El Análisis Envolvente de Datos (DEA, por sus siglas en inglés: Data Envelopment Analysis) es una metodología no paramétrica utilizada para evaluar la eficiencia relativa de unidades de decisión, como empresas, hospitales, escuelas, entre otros, que producen múltiples resultados utilizando múltiples insumos. Se basa en el uso de programación lineal para construir una “frontera eficiente” que sirve como referencia para medir la eficiencia de las unidades bajo estudio. Es particularmente útil en contextos donde no se conoce una relación funcional específica entre los insumos y los productos, o cuando se desea evaluar la eficiencia relativa entre múltiples unidades comparables
Unidades de Decisión (DMUs): Las unidades de decisión (Decision Making Units o DMUs) son los entes que se evalúan en términos de eficiencia. Pueden ser organizaciones, empresas, sucursales, departamentos, etc. Cada DMU utiliza una combinación de recursos (insumos) para producir ciertos productos o servicios (productos).Cada DMU es evaluada en relación con otras DMUs para determinar su eficiencia relativa.
Pueden darse dos tipos de DMUs
DMUs Eficientes: Si una DMU es eficiente (valor de eficiencia igual a 1), significa que se encuentra en la frontera de eficiencia. Esto indica que ninguna otra DMU puede producir más productos utilizando los mismos o menos insumos.
DMUs Ineficientes: Si una DMU es ineficiente (valor de eficiencia mayor que 1 en orientación a productos o menor que 1 en orientación a insumos), significa que podría mejorar su eficiencia. Por ejemplo, en orientación a productos, un valor mayor que 1 indica que, dado el mismo nivel de insumos, la DMU debería producir más productos para ser eficiente.
Insumos y Productos: Insumos (inputs): Son los recursos utilizados por las DMUs, como capital, mano de obra, materiales, energía, etc. Productos (outputs): Son los resultados obtenidos, como unidades producidas, ingresos, número de pacientes tratados, etc.
*Frontera de Eficiencia:** El DEA crea una “frontera de eficiencia” utilizando las DMUs más eficientes, que se considera como el estándar o referencia. Las DMUs que se encuentran sobre esta frontera son consideradas eficientes, mientras que aquellas que están por debajo son ineficientes.
Medición de la Eficiencia: La eficiencia de una DMU se calcula comparando la relación ponderada de sus productos e insumos con las mejores prácticas en el grupo de referencia. Se mide en un rango de 0 a 1, donde 1 indica eficiencia plena (la DMU está en la frontera) y valores menores indican ineficiencia.
El Análisis Envolvente de Datos (DEA) es una herramienta poderosa para responder preguntas complejas sobre eficiencia y optimización de recursos en múltiples contextos. Proporciona una evaluación objetiva y cuantitativa de cómo las unidades de decisión están utilizando sus recursos para producir resultados, identificando oportunidades de mejora y facilitando la toma de decisiones basada en datos.
Algunas tipologias de preguntas y preguntas para el uso de DEA en evaluaciones de operaciones son las siguientes:
Categoría de Evaluación | Pregunta de Evaluación | Comentario |
---|---|---|
Eficiencia Relativa | ¿Qué tan eficiente es cada DMU en comparación con las demás? | Permite identificar qué DMUs están utilizando mejor los recursos disponibles. |
¿Qué DMUs son eficientes y cuáles son ineficientes? | Identifica a las DMUs que operan en la frontera de eficiencia y las que no. | |
¿Cuál es el grado de ineficiencia de cada DMU? | Cuantifica la magnitud de la ineficiencia, proporcionando una meta de mejora específica. | |
Uso de Recursos (Insumos) | ¿Qué DMUs podrían reducir sus insumos sin afectar sus productos? | Detecta posibles reducciones de costos manteniendo el mismo nivel de producción. |
¿Cuánto podrían reducir sus insumos las DMUs ineficientes para ser eficientes? | Ofrece objetivos concretos de reducción de insumos para alcanzar la eficiencia. | |
Resultados (Productos) | ¿Qué DMUs podrían aumentar sus productos sin aumentar los insumos? | Identifica oportunidades para mejorar la producción utilizando los mismos recursos. |
¿Cuánto deberían aumentar los productos de las DMUs ineficientes para alcanzar la eficiencia? | Establece metas de aumento de producción para mejorar la eficiencia. | |
Comparación entre DMUs | ¿Qué DMUs son las mejores prácticas o benchmarks para las demás? | Señala las DMUs más eficientes que pueden servir como referencia para otras. |
¿Qué DMUs son los pares de referencia para cada DMU ineficiente? | Identifica DMUs eficientes con características similares para orientar la mejora de las ineficientes. | |
Mejora y Optimización | ¿Qué cambios deben realizar las DMUs ineficientes para alcanzar la eficiencia? | Sugiere ajustes específicos en insumos o productos para alcanzar la eficiencia. |
¿Qué nivel de recursos (insumos) debería asignarse para lograr un objetivo específico de producción (productos)? | Ayuda a planificar la asignación de recursos para alcanzar niveles de producción deseados. | |
Evaluación de Políticas y Programas | ¿Cuál es la eficiencia de diferentes unidades operativas de un programa o política pública? | Evalúa el desempeño relativo de diferentes unidades dentro de un programa o política. |
¿Cómo se compara la eficiencia de un programa antes y después de una intervención? | Permite evaluar el impacto de cambios o políticas en la eficiencia de un programa. | |
Desempeño Sectorial o Regional | ¿Qué regiones, sucursales o divisiones son más eficientes en el uso de recursos? | Identifica áreas geográficas o unidades organizacionales que destacan en la eficiencia. |
¿Qué factores están asociados con la eficiencia en diferentes regiones o sectores? | Facilita la identificación de factores que contribuyen a un mejor desempeño en diferentes contextos. | |
Planificación y Presupuestación | ¿Cómo optimizar la asignación de presupuesto entre diferentes unidades? | Ayuda a distribuir los recursos financieros de manera más eficiente. |
¿Qué impacto tendría la reasignación de recursos en la eficiencia global? | Simula posibles escenarios de redistribución de recursos y su efecto en la eficiencia total. |
Ventajas:
No requiere una especificación previa de la relación funcional entre insumos y productos. Permite el uso de múltiples insumos y productos simultáneamente. Identifica las DMUs eficientes y establece objetivos para las ineficientes.
Limitaciones:
Es sensible a datos extremos y a la presencia de errores o outliers. No proporciona una medida absoluta de eficiencia, sino que es relativa al grupo de comparación. Puede ser afectado por la selección de insumos y productos, así como por el número de DMUs en comparación con el número de variables.
Consideremos un programa de formación en TI en donde se define como cada DMU como los cohortes en que se realiza la intervención. En este caso, cada DMU es una cohorte de participantes en el Programa Academy. Por ejemplo, podríamos tener Cohorte 1, Cohorte 2, Cohorte 3, etc.
En cada cohorte, se desarrollan cada uno de los siguientes insumos y productos:
Insumos: Número de participantes: La cantidad de estudiantes en cada cohorte. Horas de formación: El total de horas de capacitación ofrecidas a la cohorte. Costo de formación: El costo total de formación para cada cohorte. Número de mentores: Número de mentores disponibles para cada cohorte.
Productos: Tasa de graduación: Porcentaje de participantes que completan con éxito el programa. Tasa de empleabilidad: Porcentaje de graduados que consiguen empleo en el sector tecnológico dentro de los seis meses posteriores a la graduación. Promedio de salarios: Salario promedio de los egresados que consiguen empleo.
El modelo DEA consistiria en medir la eficiencia de las cohortes en minimizar los recursos (insumos) utilizados para alcanzar niveles determinados de productos (graduación, empleabilidad, salarios).
# Instalar y cargar el paquete Benchmarking si no está disponible
if(!require(Benchmarking)) install.packages("Benchmarking", dependencies=TRUE)
## Loading required package: Benchmarking
## Loading required package: lpSolveAPI
## Loading required package: ucminf
## Loading required package: quadprog
##
## Loading Benchmarking version 0.32h (Revision 263, 2024/03/13 15:04:04) ...
## Build 2024/03/13 15:05:00
library(Benchmarking)
insumos_productos_cohortes <- read.csv("~/Documents/Clases/Clase Evaluacion de Politicas Publicas/Evaluación de procesos/Data Envelopment Analysis DEA/insumos_productos_cohortes.csv")
Incluir datos de cohortes (Insumos)
# Datos de entrada (insumos)
insumos <- data.frame(
participantes = c(50, 60, 55, 45),
horas_formacion = c(300, 280, 320, 310),
costo_formacion = c(20000, 18000, 22000, 19000),
mentores = c(5, 4, 6, 5)
)
Incluir datos de chortes (Productos)
# Datos de salida (productos)
productos <- data.frame(
graduados = c(40, 51, 43, 37), # Número de graduados, no tasa de graduación
empleabilidad = c(70, 75, 65, 80),
salarios = c(1500, 1600, 1400, 1700)
)
# Análisis DEA orientado a insumos
resultados_dea_insumos <- dea(X = as.matrix(insumos), Y = as.matrix(productos), RTS = "vrs", ORIENTATION = "in")
Interpretación del código
RTS = “vrs”: Indica rendimientos variables a escala, lo cual es adecuado para el análisis de eficiencia en contextos donde el tamaño de la unidad puede influir en la eficiencia.
ORIENTATION = “in”: Define que el modelo DEA está orientado a insumos, es decir, busca minimizar los insumos manteniendo los productos constantes.
Si prefieres orientación a productos, simplemente debes cambiar ORIENTATION = “out”:
Resultados DEA insumo
# Resultados de eficiencia
eficiencia <- resultados_dea_insumos$eff
eficiencia
## [1] 1.0000000 1.0000000 0.9350649 1.0000000
Interpretación
Cohorte 1: 1.0000000 Esta cohorte es eficiente, ya que tiene un valor de eficiencia de 1.0. Esto significa que la Cohorte 1 está utilizando sus recursos (insumos) de manera óptima para alcanzar sus resultados (productos). No hay posibilidad de mejorar la eficiencia reduciendo insumos o incrementando productos sin cambiar la frontera de eficiencia.
Cohorte 2: 1.0000000 Al igual que la Cohorte 1, esta cohorte también es eficiente con un valor de eficiencia de 1.0. La Cohorte 2 está operando en la frontera de eficiencia y no puede reducir sus insumos ni mejorar sus productos sin superar la referencia establecida por las demás cohortes.
Cohorte 3: 0.9302326 La Cohorte 3 es ineficiente, ya que su valor de eficiencia es menor que 1 (aproximadamente 0.93). Esto indica que esta cohorte podría mejorar su eficiencia reduciendo sus insumos en un 6.98% (1 - 0.9302326) manteniendo el mismo nivel de productos, o bien, incrementando sus productos sin cambiar la cantidad de insumos utilizados. En otras palabras, la Cohorte 3 necesita ajustar sus recursos o mejorar sus resultados para alcanzar la eficiencia.
Cohorte 4: 1.0000000 La Cohorte 4 es eficiente con un valor de 1.0. Al igual que las Cohortes 1 y 2, esta cohorte también está en la frontera de eficiencia, lo que significa que está utilizando sus recursos de manera óptima para alcanzar sus resultados.
# Análisis DEA orientado a productos
resultados_dea_productos <- dea(X = as.matrix(insumos), Y = as.matrix(productos), RTS = "vrs", ORIENTATION = "out")
# Resultados de eficiencia orientados a productos
eficiencia_productos <- resultados_dea_productos$eff
eficiencia_productos
## [1] 1.041667 1.000000 1.077519 1.000000
Interpretación
Cohorte 1: 1.041667 Interpretación: Esta cohorte tiene un valor de 1.041667, lo que indica que es ineficiente. Para alcanzar la frontera de eficiencia, esta cohorte debería aumentar sus productos en un 4.17% sin cambiar la cantidad de insumos utilizados. Acciones recomendadas: Esta cohorte debería enfocarse en mejorar sus resultados (número de graduados, tasa de empleabilidad, o salarios) aprovechando mejor los recursos con los que cuenta, ya que, según el análisis, tiene la capacidad de generar más productos con los mismos insumos.
Cohorte 2: 1.000000 Interpretación: Esta cohorte es eficiente, ya que tiene un valor de 1.0. Significa que está utilizando sus insumos de manera óptima para generar sus productos y se encuentra en la frontera de eficiencia. Acciones recomendadas: Mantener las buenas prácticas actuales. Esta cohorte sirve como referencia de buenas prácticas para otras cohortes ineficientes.
Cohorte 3: 1.077519 Interpretación: La Cohorte 3 tiene un valor de 1.077519, lo que indica ineficiencia. Debería incrementar sus productos en un 7.75% para ser eficiente con los mismos insumos. Acciones recomendadas: Debe mejorar significativamente los productos obtenidos (por ejemplo, aumentar el número de graduados, mejorar la tasa de empleabilidad o el salario promedio de los egresados), ya que los recursos utilizados son relativamente elevados en comparación con los resultados obtenidos.
Cohorte 4: 1.000000 Interpretación: Al igual que la Cohorte 2, esta cohorte es eficiente, con un valor de 1.0. Esto indica que utiliza sus insumos de manera óptima y se encuentra en la frontera de eficiencia. Acciones recomendadas: Mantener las prácticas actuales y servir como modelo para las cohortes ineficientes.
# Instalar y cargar los paquetes necesarios
if(!require(tidyverse)) install.packages("tidyverse", dependencies = TRUE)
## Loading required package: tidyverse
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr 1.1.4 ✔ readr 2.1.5
## ✔ forcats 1.0.0 ✔ stringr 1.5.1
## ✔ ggplot2 3.5.1 ✔ tibble 3.2.1
## ✔ lubridate 1.9.3 ✔ tidyr 1.3.1
## ✔ purrr 1.0.2
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag() masks stats::lag()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
if(!require(Benchmarking)) install.packages("Benchmarking", dependencies = TRUE)
library(tidyverse)
library(Benchmarking)
# Datos de entrada (insumos)
insumos <- data.frame(
Participantes = c(50, 60, 55, 45),
Horas_Formacion = c(300, 280, 320, 310),
Costo_Formacion = c(20000, 18000, 22000, 19000),
Mentores = c(5, 4, 6, 5)
)
# Datos de salida (productos)
productos <- data.frame(
Graduados = c(40, 51, 43, 37),
Empleabilidad = c(70, 75, 65, 80),
Salarios = c(1500, 1600, 1400, 1700)
)
# Análisis DEA orientado a productos
resultados_dea_productos <- dea(X = as.matrix(insumos), Y = as.matrix(productos), RTS = "vrs", ORIENTATION = "out")
# Resultados de eficiencia orientados a productos
eficiencia_productos <- resultados_dea_productos$eff
# Identificar pares de referencia
peers <- peers(resultados_dea_productos)
# Crear un data frame con la información de las DMUs y sus pares de referencia
cohortes <- c(1, 2, 3, 4)
df <- data.frame(
Cohorte = cohortes,
Participantes = insumos$Participantes,
Graduados = productos$Graduados,
Eficiencia = eficiencia_productos,
Par_Referencia = apply(peers, 1, function(x) paste(cohortes[x], collapse = ", "))
)
# Crear una lista de los primeros pares de referencia para cada DMU
# Si la DMU es ineficiente, se extrae el primer valor del par de referencia
df <- df %>%
mutate(Par_Referencia_Num = sapply(strsplit(Par_Referencia, ","),
function(x) if(length(x) > 0) as.numeric(x[1]) else NA))
# Subconjunto de datos para pares de referencia y segmentos
segmentos <- df %>%
filter(Eficiencia < 1) %>%
left_join(df, by = c("Par_Referencia_Num" = "Cohorte"), suffix = c("", "_ref"))
# Definir la frontera de eficiencia
frontera_eficiencia <- df %>%
filter(Eficiencia == 1) %>%
arrange(Participantes)
# Gráfico de los participantes vs. graduados con los pares de referencia y la frontera de eficiencia
ggplot(df, aes(x = Participantes, y = Graduados)) +
# DMUs
geom_point(aes(color = factor(Eficiencia == 1)), size = 5) +
geom_text(aes(label = paste0("Cohorte ", Cohorte)), vjust = -1, hjust = 0.5) +
# Pares de referencia
geom_segment(data = segmentos,
aes(x = Participantes, y = Graduados,
xend = Participantes_ref, yend = Graduados_ref),
arrow = arrow(length = unit(0.3, "cm")),
color = "gray", linetype = "dashed") +
# Frontera de eficiencia
geom_line(data = frontera_eficiencia, aes(x = Participantes, y = Graduados), color = "green", size = 1) +
geom_point(data = frontera_eficiencia, aes(x = Participantes, y = Graduados), color = "green", size = 5) +
scale_color_manual(values = c("red", "blue"), labels = c("Ineficiente", "Eficiente")) +
labs(title = "Visualización de Pares de Eficiencia y Frontera (Participantes vs. Graduados)",
x = "Número de Participantes (Insumo)",
y = "Número de Graduados (Producto)",
color = "Estado de Eficiencia") +
theme_minimal()
## Warning: Using `size` aesthetic for lines was deprecated in ggplot2 3.4.0.
## ℹ Please use `linewidth` instead.
## This warning is displayed once every 8 hours.
## Call `lifecycle::last_lifecycle_warnings()` to see where this warning was
## generated.
Interpretación del Gráfico: Frontera de Eficiencia (línea verde): Representa las combinaciones óptimas de insumos (participantes) y productos (graduados) que no pueden ser superadas sin aumentar los insumos o disminuir los productos.
DMUs Eficientes (en azul): Se encuentran en la frontera de eficiencia. Indican las combinaciones óptimas observadas.
DMUs Ineficientes (en rojo): Están por debajo de la frontera de eficiencia. Las líneas punteadas grises muestran su relación con los pares de referencia eficientes.
DMUs Eficientes (en azul y en la línea verde): Estas cohortes han logrado una combinación óptima de recursos (participantes) y resultados (graduados). No se pueden mejorar sin cambiar los recursos o los resultados.
DMUs Ineficientes (en rojo): Estas cohortes utilizan recursos (participantes) en niveles subóptimos para los resultados que obtienen. Están por debajo de la frontera de eficiencia y podrían mejorar su eficiencia ajustándose hacia los puntos en la línea verde (frontera).