set.seed(123)
n <- 10000
mu <- 30
sigma <- 5
resistencia <- rnorm(n, mu, sigma)
# Porcentaje que supera 25 MPa
porcentaje_cumple <- mean(resistencia > 25) * 100
# Percentil 10
p10 <- quantile(resistencia, 0.10)
# Costo promedio de rechazos
rechazos <- sum(resistencia <= 25)
costo_promedio <- rechazos * 50 / n
cat("Porcentaje que cumple:", porcentaje_cumple, "%\n")
## Porcentaje que cumple: 83.88 %
cat("Percentil 10:", round(p10,2), "MPa\n")
## Percentil 10: 23.6 MPa
cat("Costo promedio por rechazo:", round(costo_promedio,2), "USD\n")
## Costo promedio por rechazo: 8.06 USD
Medidas de control de calidad sugeridas:
- Mejorar el control de materias primas y dosificación.
- Implementar pruebas de laboratorio frecuentes.
- Capacitar al personal en técnicas de mezclado y curado.
- Usar aditivos para mejorar la resistencia.
set.seed(123)
n <- 5000
t1 <- rexp(n, rate=1/5000)
t2 <- rexp(n, rate=1/4000)
t3 <- rexp(n, rate=1/6000)
t4 <- rexp(n, rate=1/5500)
vida_turbina <- pmin(t1, t2, t3, t4)
# Vida media
vida_media <- mean(vida_turbina)
# Probabilidad de falla antes de 4000 horas
prob_falla_4000 <- mean(vida_turbina < 4000)
# Histograma
hist(vida_turbina, breaks=40, main="Histograma de vida de la turbina", xlab="Horas")
cat("Vida media de la turbina:", round(vida_media,2), "horas\n")
## Vida media de la turbina: 1260.98 horas
cat("Probabilidad de falla antes de 4000 horas:", round(prob_falla_4000,3), "\n")
## Probabilidad de falla antes de 4000 horas: 0.96
Comentario:
La forma del histograma es sesgada a la derecha, típica de la mínima de
variables exponenciales.
Estrategias de mantenimiento:
- Mantenimiento preventivo programado antes de las 4000 horas.
- Monitoreo continuo de los componentes críticos.
- Reemplazo anticipado de componentes con mayor tasa de falla.
set.seed(123)
n <- 5000
mu <- 10
sigma <- 0.02
diametros <- rnorm(n, mu, sigma)
# Proporción de rechazados
rechazados <- sum(diametros < 9.97 | diametros > 10.03)
proporcion_rechazados <- rechazados / n
# Costo promedio de reprocesamiento
costo_promedio <- rechazados * 15 / n
# Histograma
hist(diametros, breaks=40, main="Histograma de diámetros de pistones", xlab="Diámetro (cm)")
cat("Proporción de rechazados:", round(proporcion_rechazados,3), "\n")
## Proporción de rechazados: 0.131
cat("Costo promedio de reprocesamiento:", round(costo_promedio,2), "USD\n")
## Costo promedio de reprocesamiento: 1.97 USD
Evaluación:
El histograma muestra una distribución aproximadamente normal.
Estrategias para reducir rechazos:
- Mejorar la precisión de las máquinas.
- Implementar controles estadísticos de proceso.
- Capacitar operadores y realizar mantenimiento regular.
set.seed(123)
n <- 1000
# R1 y R3: lognormal(μ=2, σ=1)
# R2 y R4: lognormal(μ=1, σ=0.1)
R1 <- rlnorm(n, meanlog=2, sdlog=1)
R2 <- rlnorm(n, meanlog=1, sdlog=0.1)
R3 <- rlnorm(n, meanlog=2, sdlog=1)
R4 <- rlnorm(n, meanlog=1, sdlog=0.1)
# Sistema 1: Serie R1-R2
sistema1 <- pmin(R1, R2)
# Sistema 2: Serie R3-R4
sistema2 <- pmin(R3, R4)
# Sistema 3: Paralelo de los dos sistemas anteriores (funciona si ambos funcionan)
sistema3 <- pmin(sistema1, sistema2)
# Medias
media1 <- mean(sistema1)
media2 <- mean(sistema2)
media3 <- mean(sistema3)
# Probabilidad de falla < 2 meses
pfalla1 <- mean(sistema1 < 2)
pfalla2 <- mean(sistema2 < 2)
pfalla3 <- mean(sistema3 < 2)
# Percentil 20 del sistema 1
p20_1 <- quantile(sistema1, 0.20)
cat("Media sistema 1:", round(media1,2), "\n")
## Media sistema 1: 2.59
cat("Media sistema 2:", round(media2,2), "\n")
## Media sistema 2: 2.58
cat("Media sistema 3:", round(media3,2), "\n")
## Media sistema 3: 2.33
cat("Probabilidad de falla <2 meses (sistema 1):", round(pfalla1,3), "\n")
## Probabilidad de falla <2 meses (sistema 1): 0.098
cat("Percentil 20 sistema 1:", round(p20_1,2), "\n")
## Percentil 20 sistema 1: 2.37
par(mfrow=c(1,3))
qqnorm(sistema1, main="QQ Sistema 1"); qqline(sistema1)
qqnorm(sistema2, main="QQ Sistema 2"); qqline(sistema2)
qqnorm(sistema3, main="QQ Sistema 3"); qqline(sistema3)
par(mfrow=c(1,1))
hist(sistema1, breaks=30, main="Histograma Sistema 1", xlab="Meses")
hist(sistema2, breaks=30, main="Histograma Sistema 2", xlab="Meses")
hist(sistema3, breaks=30, main="Histograma Sistema 3", xlab="Meses")
Comentario:
Los tiempos de vida están sesgados a la derecha y no siguen una
distribución normal. ## Problema 6: Solicitudes a un servidor web
set.seed(123)
n <- 10000
lambda <- 30
solicitudes <- rpois(n, lambda)
# Probabilidad de más de 40 solicitudes en un minuto
prob_mas_40 <- mean(solicitudes > 40)
# Proporción de minutos sobrecargados (>35 solicitudes)
proporcion_sobrecarga <- mean(solicitudes > 35)
cat("Probabilidad de más de 40 solicitudes en un minuto:", round(prob_mas_40,3), "\n")
## Probabilidad de más de 40 solicitudes en un minuto: 0.03
cat("Proporción de minutos sobrecargados (>35):", round(proporcion_sobrecarga,3), "\n")
## Proporción de minutos sobrecargados (>35): 0.15
Mejoras sugeridas para disminuir el riesgo de
sobrecarga:
- Implementar balanceo de carga entre varios servidores.
- Optimizar el código y las consultas a la base de datos.
- Escalar horizontalmente el sistema en horas pico.
- Usar cachés para reducir solicitudes repetidas.
hist(solicitudes, breaks=30, main="Solicitudes por minuto", xlab="Número de solicitudes")
Comentario:
La demanda es dispersa pero centrada cerca de 30, con cola hacia la
derecha típica de la distribución de Poisson.