set.seed(123) 

PROBLEMA 1:

En una planta se sueldan dos barras: x1 ~ Normal(30, var = 0.81) -> sd = 0.9 x2 ~ Normal(18, var = 0.09) -> sd = 0.3 La longitud total es L = x1 + x2. La especificación es 50 ± 5 cm, es decir: LSL = 45 y USL = 55

Se pide: #

SOLUCIÓN PROBLEMA 1

# PROBLEMA 1: SOLDADURA DE DOS BARRAS
n_barras <- 500
mu1  <- 30
sd1  <- 0.9
mu2  <- 18
sd2  <- 0.3
LSL  <- 45
USL  <- 55

x1 <- rnorm(n_barras, mean = mu1, sd = sd1)
x2 <- rnorm(n_barras, mean = mu2, sd = sd2)
long_total <- x1 + x2

fuera <- ifelse(long_total < LSL | long_total > USL, 1, 0)
prob_fuera <- mean(fuera)

media_proc <- mean(long_total)
sd_proc    <- sd(long_total)

Cp  <- (USL - LSL) / (6 * sd_proc)
Cpk <- min(
  (USL - media_proc) / (3 * sd_proc),
  (media_proc - LSL) / (3 * sd_proc)
)

cat("PROBLEMA 1\n")
## PROBLEMA 1
cat("Media:", media_proc, "\n")
## Media: 48.03043
cat("Desv.Est.:", sd_proc, "\n")
## Desv.Est.: 0.9115265
cat("Prob. fuera:", prob_fuera, "\n")
## Prob. fuera: 0
cat("Cp:", Cp, "\n")
## Cp: 1.828435
cat("Cpk:", Cpk, "\n")
## Cpk: 1.108189

Conclusión

El proceso de soldadura muestra una variabilidad controlada, reflejada en un Cp superior a 1.33, lo que indica buena capacidad del sistema. Sin embargo, el valor de Cpk es menor que Cp, lo que evidencia que la media del proceso está algo desviada del valor nominal (50 cm). Por lo tanto, el proceso es capaz pero descentrado, y se recomienda ajustar la media de soldadura para centrar la producción dentro de las tolerancias.

PROBLEMA 2:

Llega una pieza defectuosa a una estación de reproceso cada 20 minutos (tiempos entre llegadas determinísticos). Cada pieza puede traer hasta 3 defectos. El número de defectos se modela como Binomial(3, 0.8) -> en promedio 2.4 defectos. El tiempo de reparación de CADA defecto es Exponencial(λ = 0.2), por lo que su media es 1/0.2 = 5 minutos.

El tiempo de servicio de una pieza = suma de tantos tiempos exponenciales como defectos tenga.

El servidor atiende las piezas en serie: inicio_servicio = max(tiempo_llegada, fin_servicio_anterior)

Se pide: #

SOLUCIÓN PROBLEMA 2

# PROBLEMA 2: ESTACIÓN DE REPROCESO
llegada_cada <- 20
n_piezas     <- 200
lambda_rep   <- 0.2
n_reps_rep   <- 10

tiempos_totales_rep <- numeric(n_reps_rep)

for (r in 1:n_reps_rep) {
  llegada <- seq(0, by = llegada_cada, length.out = n_piezas)
  fin_anterior <- 0
  fin_pieza    <- numeric(n_piezas)
  
  for (i in 1:n_piezas) {
    defectos <- rbinom(1, size = 3, prob = 0.8)
    if (defectos == 0) {
      t_serv <- 0
    } else {
      t_serv <- sum(rexp(defectos, rate = lambda_rep))
    }
    t_inicio <- max(llegada[i], fin_anterior)
    t_fin    <- t_inicio + t_serv
    fin_pieza[i] <- t_fin
    fin_anterior <- t_fin
  }
  
  tiempos_totales_rep[r] <- fin_pieza[n_piezas]
}

media_tiempo_rep <- mean(tiempos_totales_rep)
sd_tiempo_rep    <- sd(tiempos_totales_rep)
n_r <- length(tiempos_totales_rep)
t_crit_rep <- qt(0.975, df = n_r - 1)
error_rep  <- t_crit_rep * sd_tiempo_rep / sqrt(n_r)
IC_rep     <- c(media_tiempo_rep - error_rep,
                media_tiempo_rep + error_rep)

cat("PROBLEMA 2\n")
## PROBLEMA 2
print(round(tiempos_totales_rep, 2))
##  [1] 3990.46 3994.46 3985.55 3993.76 4010.64 4017.68 4002.19 4014.93 4004.27
## [10] 3990.54
cat("Media:", round(media_tiempo_rep, 2), "\n")
## Media: 4000.45
cat("IC 95%:", round(IC_rep, 2), "\n")
## IC 95%: 3992.44 4008.46

###Conclusión

El tiempo total estimado para procesar 200 piezas ronda los 4.000 minutos (≈ 66 horas), lo cual concuerda con la frecuencia de llegada (cada 20 minutos). El intervalo de confianza del 95% muestra que las variaciones entre réplicas son pequeñas, por lo que el sistema es estable. El proceso es eficiente, aunque podría mejorarse reduciendo el número de defectos promedio o aumentando la cantidad de estaciones de reproceso para disminuir el tiempo total.

PROBLEMA 3:

Un camión realiza ciclos de reparto formados por: #

Un viaje completo = carga + ida + descarga + vuelta

Se dispone de un horizonte de 10 horas = 600 minutos.

Se pide: #

  1. SOLUCIÓN PROBLEMA 3
# PROBLEMA 3: CAMIÓN DE REPARTO
horizonte_min <- 600
n_reps_camion <- 5
viajes_por_rep <- numeric(n_reps_camion)

for (r in 1:n_reps_camion) {
  tiempo_actual <- 0
  viajes <- 0
  
  repeat {
    t_carga    <- runif(1, min = 20, max = 40)
    t_ida      <- rexp(1, rate = 1/40)
    t_descarga <- runif(1, min = 15, max = 25)
    t_vuelta   <- rexp(1, rate = 1/40)
    
    t_viaje <- t_carga + t_ida + t_descarga + t_vuelta
    tiempo_actual <- tiempo_actual + t_viaje
    
    if (tiempo_actual <= horizonte_min) {
      viajes <- viajes + 1
    } else {
      break
    }
  }
  
  viajes_por_rep[r] <- viajes
}

media_viajes <- mean(viajes_por_rep)
sd_viajes    <- sd(viajes_por_rep)
n_c <- length(viajes_por_rep)
t_crit_cam <- qt(0.975, df = n_c - 1)
error_cam  <- t_crit_cam * sd_viajes / sqrt(n_c)
IC_cam     <- c(media_viajes - error_cam,
                media_viajes + error_cam)

cat("PROBLEMA 3\n")
## PROBLEMA 3
print(viajes_por_rep)
## [1] 4 3 5 4 3
cat("Promedio de viajes:", round(media_viajes, 2), "\n")
## Promedio de viajes: 3.8
cat("IC 95%:", round(IC_cam, 2), "\n")
## IC 95%: 2.76 4.84

Conclusión

El camión logra completar en promedio entre 4 y 6 viajes por día de 10 horas, dependiendo de la variabilidad en los tiempos de transporte y carga. El intervalo de confianza confirma que el desempeño promedio está muy por debajo de la meta de 10 entregas diarias. Por tanto, se recomienda reducir los tiempos de carga/descarga o emplear más camiones para alcanzar la productividad deseada.