Taller: Simulación de variables aleatorias no uniformes en R

Contexto En un centro de soporte técnico de una empresa de software, llegan solicitudes de usuarios que deben ser atendidas por ingenieros de sistemas. Se quiere modelar el proceso de llegada y atención de solicitudes con distribuciones de probabilidad, y simular el sistema con R.

Actividades 1. Llegadas de solicitudes

set.seed(123)
llegadas <- rpois(5000, lambda = 5)

Gráfico de barras

barplot(table(llegadas), col = "skyblue",
        main = "Distribución de llegadas por hora",
        xlab = "Número de solicitudes", ylab = "Frecuencia")

Probabilidad empírica de menos de 3 solicitudes

prob_menos3 <- mean(llegadas < 3)
prob_menos3
## [1] 0.1248

Podemos observar que: La distribución de llegadas sigue una Poisson(λ=5), centrada en 5 y que la probabilidad empírica de que lleguen menos de 3 solicitudes por hora suele rondar el 12–13%.

  1. Tiempos entre llegadas
tiempos <- rexp(5000, rate = 1/12)

Histograma

hist(tiempos, breaks = 50, probability = TRUE, col = "lightgreen",
     main = "Distribución de tiempos entre llegadas",
     xlab = "Tiempo (minutos)")
curve(dexp(x, rate = 1/12), col = "red", lwd = 2, add = TRUE)

Podemos interpretar que, los tiempos siguen una Exponencial(media=12 min), con muchos tiempos pequeños y menos valores grandes.

Esto refleja que la mayoría de solicitudes llegan en intervalos cortos, pero ocasionalmente hay tiempos largos sin llegadas.

  1. Duración de la atención
atencion <- rnorm(5000, mean = 30, sd = 5)

Histograma con curva normal

hist(atencion, breaks = 50, probability = TRUE, col = "lightblue",
     main = "Duración de la atención de tickets",
     xlab = "Tiempo (minutos)")
curve(dnorm(x, mean = 30, sd = 5), col = "red", lwd = 2, add = TRUE)

Proporción de atenciones > 35 minutos

prop_mayor35 <- mean(atencion > 35)
prop_mayor35
## [1] 0.1564

Podemos analisar que la atención de tickets sigue una Normal(30,5) y que alrededor del 16% de las atenciones superan los 35 minutos.

  1. Tickets escalados
set.seed(123)
tickets <- rbinom(1000, size = 10, prob = 0.2)

Gráfico

barplot(table(tickets), col = "orange",
        main = "Tickets escalados en 1000 horas",
        xlab = "Número de tickets escalados por hora",
        ylab = "Frecuencia")

Podemos interpretar que, el número de tickets escalados sigue una Binomial(10, 0.2).

En promedio, se escalan 2 tickets por hora, pero el valor puede variar entre 0 y 6.

Conclución

El taller permitió comprender cómo diferentes distribuciones de probabilidad se aplican al modelado de un sistema de atención de solicitudes en un centro de soporte. La Poisson mostró la variabilidad en el número de llegadas por hora, la Exponencial reflejó la irregularidad de los tiempos entre solicitudes, la Normal permitió caracterizar la duración de la atención de los tickets, y la Binomial explicó la probabilidad de que un ticket deba ser escalado. En conjunto, estas simulaciones demuestran cómo la estadística y la programación en R facilitan la representación realista de un sistema de colas, apoyando la toma de decisiones en la asignación de recursos, planeación de tiempos y mejora del servicio al cliente.