Asignatura: Control de Calidad
Profesor: Ivan Mauricio Bermudez Vera
Universidad: Universidad del Valle
En este trabajo se determina un plan de inspeccion por muestreo utilizando la norma MIL-STD-105E para un lote de tamano 3000 unidades con un nivel de calidad aceptable (AQL = 2.5%).
Se analizan planes de muestreo simple y doble para diferentes niveles de inspeccion y se evaluan mediante las curvas OC, AOQ y ATI.
Parámetros del problema
Para N = 3000 y AQL = 2.5%, las letras codigo y parametros son:
tabla_params <- data.frame(
Inspeccion = c(rep("Normal", 3), rep("Reducida", 3), rep("Severa", 3)),
Nivel = rep(c("I", "II", "III"), 3),
Letra = rep(c("H", "K", "L"), 3),
n = c(50, 125, 200, 20, 50, 80, 50, 125, 200),
Ac = c(3, 7, 10, 2, 5, 6, 2, 5, 8)
)
kable(tabla_params, align = "c",
caption = "Parámetros MIL-STD-105E - Muestreo Simple (N = 3000, AQL = 2.5%)") %>%
kable_styling(full_width = FALSE,
bootstrap_options = c("striped", "hover", "bordered", "condensed")) %>%
collapse_rows(columns = 1, valign = "middle") %>%
row_spec(0, bold = TRUE, background = "#8b1a1a", color = "white")| Inspeccion | Nivel | Letra | n | Ac |
|---|---|---|---|---|
| Normal | I | H | 50 | 3 |
| II | K | 125 | 7 | |
| III | L | 200 | 10 | |
| Reducida | I | H | 20 | 2 |
| II | K | 50 | 5 | |
| III | L | 80 | 6 | |
| Severa | I | H | 50 | 2 |
| II | K | 125 | 5 | |
| III | L | 200 | 8 |
Parámetros - Inspección Normal (N = 3000, AQL = 2.5%)
plan_N1 <- OC2c(n = 50, c = 3, type = "binomial", pd = pd)
plan_N2 <- OC2c(n = 125, c = 7, type = "binomial", pd = pd)
plan_N3 <- OC2c(n = 200, c = 10, type = "binomial", pd = pd)df_oc <- data.frame(
pd = rep(pd, 3),
prob = c(plan_N1@paccept, plan_N2@paccept, plan_N3@paccept),
Nivel = rep(c("Nivel I", "Nivel II", "Nivel III"), each = length(pd))
)
p <- ggplot(df_oc, aes(pd, prob, color = Nivel)) +
geom_line(size = 1.2) +
geom_vline(xintercept = 0.025, linetype = "dashed") +
labs(
title = "Curva OC - Inspeccion Normal",
x = "Proporcion defectuosa",
y = "Probabilidad de aceptacion"
) +
theme_minimal(base_size = 14)
ggplotly(p)Curva OC - Inspeccion Normal
La curva OC muestra la probabilidad de aceptar un lote en funcion de la proporcion de unidades defectuosas.
En general, los planes con mayor tamano de muestra (Nivel III) presentan curvas mas pronunciadas, lo que significa que discriminan mejor entre lotes de buena y mala calidad. Por el contrario, los planes con muestras mas pequenas (Nivel I) tienen curvas mas suaves y tienden a aceptar con mayor probabilidad lotes con mayor proporcion de defectuosos.
AOQ_N1 <- pd * plan_N1@paccept * (N - 50) / N
AOQ_N2 <- pd * plan_N2@paccept * (N - 125) / N
AOQ_N3 <- pd * plan_N3@paccept * (N - 200) / N
plot(pd, AOQ_N1,
type = "l", lwd = 2, col = "#2980b9",
xlab = "Proporcion defectuosa",
ylab = "AOQ",
ylim = c(0, max(AOQ_N1, AOQ_N2, AOQ_N3)),
main = "Curva AOQ - Inspeccion Normal")
lines(pd, AOQ_N2, lwd = 2, col = "#e74c3c")
lines(pd, AOQ_N3, lwd = 2, col = "#27ae60")
abline(v = 0.025, lty = 2, col = "gray50")
grid()
legend("topright",
legend = c("Nivel I", "Nivel II", "Nivel III"),
col = c("#2980b9", "#e74c3c", "#27ae60"), lwd = 2)Curva AOQ - Inspeccion Normal
La curva AOQ representa la calidad promedio de salida despues del proceso de inspeccion.
Los planes con tamanos de muestra mayores (Nivel III) generan valores maximos de AOQ mas bajos, lo que significa que la calidad promedio enviada al cliente es mejor. En contraste, los planes con muestras pequenas (Nivel I) presentan valores maximos de AOQ mas altos.
ATI_N1 <- 50 + (1 - plan_N1@paccept) * (N - 50)
ATI_N2 <- 125 + (1 - plan_N2@paccept) * (N - 125)
ATI_N3 <- 200 + (1 - plan_N3@paccept) * (N - 200)
plot(pd, ATI_N1,
type = "l", lwd = 2, col = "#2980b9",
xlab = "Proporcion defectuosa",
ylab = "ATI",
ylim = c(0, max(ATI_N1, ATI_N2, ATI_N3)),
main = "Curva ATI - Inspeccion Normal")
lines(pd, ATI_N2, lwd = 2, col = "#e74c3c")
lines(pd, ATI_N3, lwd = 2, col = "#27ae60")
abline(v = 0.025, lty = 2, col = "gray50")
grid()
legend("topleft",
legend = c("Nivel I", "Nivel II", "Nivel III"),
col = c("#2980b9", "#e74c3c", "#27ae60"), lwd = 2)Curva ATI - Inspeccion Normal
La curva ATI muestra el numero promedio de unidades inspeccionadas.
Los planes con muestras pequenas (Nivel I) presentan valores de ATI mas bajos. En cambio, los planes con muestras grandes (Nivel III) generan mayores valores de ATI, lo que implica mayores costos y tiempos de inspeccion.
Considerando simultaneamente las curvas OC, AOQ y ATI, el plan de muestreo simple mas conveniente corresponde a Inspección normal - Nivel II (n = 125, Ac = 7) porque:
Parámetros - Inspección Reducida (N = 3000, AQL = 2.5%)
plan_R1 <- OC2c(n = 20, c = 2, type = "binomial", pd = pd)
plan_R2 <- OC2c(n = 50, c = 5, type = "binomial", pd = pd)
plan_R3 <- OC2c(n = 80, c = 6, type = "binomial", pd = pd)plot(pd, plan_R1@paccept,
type = "l", lwd = 2, col = "#2980b9",
xlab = "Proporcion defectuosa",
ylab = "Probabilidad de aceptacion",
ylim = c(0, 1),
main = "Curva OC - Inspeccion Reducida")
lines(pd, plan_R2@paccept, lwd = 2, col = "#e74c3c")
lines(pd, plan_R3@paccept, lwd = 2, col = "#27ae60")
abline(v = 0.025, lty = 2, col = "gray50")
grid()
legend("topright",
legend = c("Nivel I (n=20, Ac=2)",
"Nivel II (n=50, Ac=5)",
"Nivel III (n=80, Ac=6)"),
col = c("#2980b9", "#e74c3c", "#27ae60"), lwd = 2)Curva OC - Inspeccion Reducida
AOQ_R1 <- pd * plan_R1@paccept * (N - 20) / N
AOQ_R2 <- pd * plan_R2@paccept * (N - 50) / N
AOQ_R3 <- pd * plan_R3@paccept * (N - 80) / N
plot(pd, AOQ_R1,
type = "l", lwd = 2, col = "#2980b9",
xlab = "Proporcion defectuosa",
ylab = "AOQ",
ylim = c(0, max(AOQ_R1, AOQ_R2, AOQ_R3)),
main = "Curva AOQ - Inspeccion Reducida")
lines(pd, AOQ_R2, lwd = 2, col = "#e74c3c")
lines(pd, AOQ_R3, lwd = 2, col = "#27ae60")
abline(v = 0.025, lty = 2, col = "gray50")
grid()
legend("topright",
legend = c("Nivel I", "Nivel II", "Nivel III"),
col = c("#2980b9", "#e74c3c", "#27ae60"), lwd = 2)Curva AOQ - Inspeccion Reducida
ATI_R1 <- 20 + (1 - plan_R1@paccept) * (N - 20)
ATI_R2 <- 50 + (1 - plan_R2@paccept) * (N - 50)
ATI_R3 <- 80 + (1 - plan_R3@paccept) * (N - 80)
plot(pd, ATI_R1,
type = "l", lwd = 2, col = "#2980b9",
xlab = "Proporcion defectuosa",
ylab = "ATI",
ylim = c(0, max(ATI_R1, ATI_R2, ATI_R3)),
main = "Curva ATI - Inspeccion Reducida")
lines(pd, ATI_R2, lwd = 2, col = "#e74c3c")
lines(pd, ATI_R3, lwd = 2, col = "#27ae60")
abline(v = 0.025, lty = 2, col = "gray50")
grid()
legend("topleft",
legend = c("Nivel I", "Nivel II", "Nivel III"),
col = c("#2980b9", "#e74c3c", "#27ae60"), lwd = 2)Curva ATI - Inspeccion Reducida
Parámetros - Inspección Severa (N = 3000, AQL = 2.5%)
plan_S1 <- OC2c(n = 50, c = 2, type = "binomial", pd = pd)
plan_S2 <- OC2c(n = 125, c = 5, type = "binomial", pd = pd)
plan_S3 <- OC2c(n = 200, c = 8, type = "binomial", pd = pd)plot(pd, plan_S1@paccept,
type = "l", lwd = 2, col = "#2980b9",
xlab = "Proporcion defectuosa",
ylab = "Probabilidad de aceptacion",
ylim = c(0, 1),
main = "Curva OC - Inspeccion Severa")
lines(pd, plan_S2@paccept, lwd = 2, col = "#e74c3c")
lines(pd, plan_S3@paccept, lwd = 2, col = "#27ae60")
abline(v = 0.025, lty = 2, col = "gray50")
grid()
legend("topright",
legend = c("Nivel I (n=50, Ac=2)",
"Nivel II (n=125, Ac=5)",
"Nivel III (n=200, Ac=8)"),
col = c("#2980b9", "#e74c3c", "#27ae60"), lwd = 2)Curva OC - Inspeccion Severa
AOQ_S1 <- pd * plan_S1@paccept * (N - 50) / N
AOQ_S2 <- pd * plan_S2@paccept * (N - 125) / N
AOQ_S3 <- pd * plan_S3@paccept * (N - 200) / N
plot(pd, AOQ_S1,
type = "l", lwd = 2, col = "#2980b9",
xlab = "Proporcion defectuosa",
ylab = "AOQ",
ylim = c(0, max(AOQ_S1, AOQ_S2, AOQ_S3)),
main = "Curva AOQ - Inspeccion Severa")
lines(pd, AOQ_S2, lwd = 2, col = "#e74c3c")
lines(pd, AOQ_S3, lwd = 2, col = "#27ae60")
abline(v = 0.025, lty = 2, col = "gray50")
grid()
legend("topright",
legend = c("Nivel I", "Nivel II", "Nivel III"),
col = c("#2980b9", "#e74c3c", "#27ae60"), lwd = 2)Curva AOQ - Inspeccion Severa
ATI_S1 <- 50 + (1 - plan_S1@paccept) * (N - 50)
ATI_S2 <- 125 + (1 - plan_S2@paccept) * (N - 125)
ATI_S3 <- 200 + (1 - plan_S3@paccept) * (N - 200)
plot(pd, ATI_S1,
type = "l", lwd = 2, col = "#2980b9",
xlab = "Proporcion defectuosa",
ylab = "ATI",
ylim = c(0, max(ATI_S1, ATI_S2, ATI_S3)),
main = "Curva ATI - Inspeccion Severa")
lines(pd, ATI_S2, lwd = 2, col = "#e74c3c")
lines(pd, ATI_S3, lwd = 2, col = "#27ae60")
abline(v = 0.025, lty = 2, col = "gray50")
grid()
legend("topleft",
legend = c("Nivel I", "Nivel II", "Nivel III"),
col = c("#2980b9", "#e74c3c", "#27ae60"), lwd = 2)Curva ATI - Inspeccion Severa
Considerando simultaneamente las curvas OC, AOQ y ATI, el plan de muestreo simple mas conveniente es el de inspeccion normal, Nivel II (n = 125, Ac = 7).
Este plan se considera el mas adecuado porque:
En consecuencia, el Nivel II bajo inspeccion normal ofrece un equilibrio adecuado entre proteccion al consumidor, control de calidad y costo de inspeccion.
tabla1 <- data.frame(
Nivel = c("I", "I", "II", "II", "III", "III"),
Muestra = c(1, 2, 1, 2, 1, 2),
Tamano = c(32, 32, 80, 80, 125, 125),
Ac = c(1, 4, 3, 9, 5, 12),
Re = c(3, 5, 6, 10, 9, 13)
)
kable(tabla1, align = "c", caption = "Plan de muestreo doble - Inspeccion Normal") %>%
add_header_above(c(" " = 1, "Inspeccion Normal" = 4)) %>%
collapse_rows(columns = 1, valign = "middle") %>%
kable_styling(full_width = FALSE,
bootstrap_options = c("striped", "hover", "bordered")) %>%
row_spec(0, bold = TRUE, background = "#2980b9", color = "white")| Nivel | Muestra | Tamano | Ac | Re |
|---|---|---|---|---|
| I | 1 | 32 | 1 | 3 |
| 2 | 32 | 4 | 5 | |
| II | 1 | 80 | 3 | 6 |
| 2 | 80 | 9 | 10 | |
| III | 1 | 125 | 5 | 9 |
| 2 | 125 | 12 | 13 |
tabla2 <- data.frame(
Nivel = c("I", "I", "II", "II", "III", "III"),
Muestra = c(1, 2, 1, 2, 1, 2),
Tamano = c(32, 32, 80, 80, 125, 125),
Ac = c(0, 3, 2, 6, 4, 10),
Re = c(3, 4, 5, 7, 7, 11)
)
kable(tabla2, align = "c", caption = "Plan de muestreo doble - Inspeccion Estricta") %>%
add_header_above(c(" " = 1, "Inspeccion Estricta" = 4)) %>%
collapse_rows(columns = 1, valign = "middle") %>%
kable_styling(full_width = FALSE,
bootstrap_options = c("striped", "hover", "bordered")) %>%
row_spec(0, bold = TRUE, background = "#8b1a1a", color = "white")| Nivel | Muestra | Tamano | Ac | Re |
|---|---|---|---|---|
| I | 1 | 32 | 0 | 3 |
| 2 | 32 | 3 | 4 | |
| II | 1 | 80 | 2 | 5 |
| 2 | 80 | 6 | 7 | |
| III | 1 | 125 | 4 | 7 |
| 2 | 125 | 10 | 11 |
tabla3 <- data.frame(
Nivel = c("I", "I", "II", "II", "III", "III"),
Muestra = c(1, 2, 1, 2, 1, 2),
Tamano = c(13, 13, 32, 32, 50, 50),
Ac = c(0, 3, 2, 5, 3, 7),
Re = c(3, 4, 4, 6, 6, 8)
)
kable(tabla3, align = "c", caption = "Plan de muestreo doble - Inspeccion Reducida") %>%
add_header_above(c(" " = 1, "Inspeccion Reducida" = 4)) %>%
collapse_rows(columns = 1, valign = "middle") %>%
kable_styling(full_width = FALSE,
bootstrap_options = c("striped", "hover", "bordered")) %>%
row_spec(0, bold = TRUE, background = "#27ae60", color = "white")| Nivel | Muestra | Tamano | Ac | Re |
|---|---|---|---|---|
| I | 1 | 13 | 0 | 3 |
| 2 | 13 | 3 | 4 | |
| II | 1 | 32 | 2 | 4 |
| 2 | 32 | 5 | 6 | |
| III | 1 | 50 | 3 | 6 |
| 2 | 50 | 7 | 8 |
seleccionar_distribucion <- function(n, N) {
r <- n / N
if (r > 0.1) return("Hipergeometrica")
if (r <= 0.1 && n*r > 1) return("Poisson")
return("Binomial")
}Parámetros - Inspección Normal Doble
n1_1 <- c(32, 80, 125); c1_1 <- c(1, 3, 5)
n2_1 <- c(32, 80, 125); c2_1 <- c(5, 8, 12)
cat("Nivel I:", seleccionar_distribucion(32, N), "\n")## Nivel I: Binomial
## Nivel II: Poisson
## Nivel III: Poisson
PaI_1 <- pbinom(c1_1[1], n1_1[1], P) +
dbinom(c1_1[1]+1, n1_1[1], P) *
pbinom(c2_1[1]-(c1_1[1]+1), n2_1[1], P)
PaII_1 <- ppois(c1_1[2], n1_1[2]*P) +
dpois(c1_1[2]+1, n1_1[2]*P) *
ppois(c2_1[2]-(c1_1[2]+1), n2_1[2]*P)
PaIII_1 <- ppois(c1_1[3], n1_1[3]*P) +
dpois(c1_1[3]+1, n1_1[3]*P) *
ppois(c2_1[3]-(c1_1[3]+1), n2_1[3]*P)
plot(P, PaI_1,
type = "l", lwd = 3, col = "#2091B1",
xlab = "Proporcion defectuosa",
ylab = "Probabilidad de aceptacion",
ylim = c(0, 1),
main = "Curva OC - Muestreo Doble, Inspeccion Normal")
lines(P, PaII_1, col = "#A732FB", lwd = 3)
lines(P, PaIII_1, col = "orange", lwd = 3)
abline(v = 0.025, lty = 2, col = "gray50")
grid()
legend("right",
legend = c("Nivel I", "Nivel II", "Nivel III"),
col = c("#2091B1", "#A732FB", "orange"), lwd = 2)Curva OC - Muestreo Doble, Inspeccion Normal
Parámetros - Inspección Estricta Doble
PaI_2 <- pbinom(c1_2[1], n1_2[1], P) +
dbinom(c1_2[1]+1, n1_2[1], P) *
pbinom(c2_2[1]-(c1_2[1]+1), n2_2[1], P)
PaII_2 <- ppois(c1_2[2], n1_2[2]*P) +
dpois(c1_2[2]+1, n1_2[2]*P) *
ppois(c2_2[2]-(c1_2[2]+1), n2_2[2]*P)
PaIII_2 <- ppois(c1_2[3], n1_2[3]*P) +
dpois(c1_2[3]+1, n1_2[3]*P) *
ppois(c2_2[3]-(c1_2[3]+1), n2_2[3]*P)
plot(P, PaI_2,
type = "l", lwd = 3, col = "#2091B1",
xlab = "Proporcion defectuosa",
ylab = "Probabilidad de aceptacion",
ylim = c(0, 1),
main = "Curva OC - Muestreo Doble, Inspeccion Estricta")
lines(P, PaII_2, col = "#A732FB", lwd = 3)
lines(P, PaIII_2, col = "orange", lwd = 3)
abline(v = 0.025, lty = 2, col = "gray50")
grid()
legend("right",
legend = c("Nivel I", "Nivel II", "Nivel III"),
col = c("#2091B1", "#A732FB", "orange"), lwd = 2)Curva OC - Muestreo Doble, Inspeccion Estricta
Parámetros - Inspección Reducida Doble
n1_3 <- c(13, 32, 50); c1_3 <- c(0, 2, 3)
n2_3 <- c(13, 32, 50); c2_3 <- c(3, 5, 7)
cat("Nivel I:", seleccionar_distribucion(13, N), "\n")## Nivel I: Binomial
## Nivel II: Binomial
## Nivel III: Binomial
PaI_3 <- pbinom(c1_3[1], n1_3[1], P) +
dbinom(c1_3[1]+1, n1_3[1], P) *
pbinom(c2_3[1]-(c1_3[1]+1), n2_3[1], P)
PaII_3 <- pbinom(c1_3[2], n1_3[2], P) +
dbinom(c1_3[2]+1, n1_3[2], P) *
pbinom(c2_3[2]-(c1_3[2]+1), n2_3[2], P)
PaIII_3 <- pbinom(c1_3[3], n1_3[3], P) +
dbinom(c1_3[3]+1, n1_3[3], P) *
pbinom(c2_3[3]-(c1_3[3]+1), n2_3[3], P)
plot(P, PaI_3,
type = "l", lwd = 3, col = "#2091B1",
xlab = "Proporcion defectuosa",
ylab = "Probabilidad de aceptacion",
ylim = c(0, 1),
main = "Curva OC - Muestreo Doble, Inspeccion Reducida")
lines(P, PaII_3, col = "#A732FB", lwd = 3)
lines(P, PaIII_3, col = "orange", lwd = 3)
abline(v = 0.025, lty = 2, col = "gray50")
grid()
legend("right",
legend = c("Nivel I", "Nivel II", "Nivel III"),
col = c("#2091B1", "#A732FB", "orange"), lwd = 2)Curva OC - Muestreo Doble, Inspeccion Reducida
AOQI_1 <- PaI_1 * P * ((N - n1_1[1]) / N)
AOQII_1 <- PaII_1 * P * ((N - n1_1[2]) / N)
AOQIII_1 <- PaIII_1 * P * ((N - n1_1[3]) / N)
plot(P, AOQI_1,
type = "l", col = "#25AD76", lwd = 3,
xlab = "Proporcion defectuosa",
ylab = "AOQ",
ylim = c(0, max(AOQI_1, AOQII_1, AOQIII_1)),
main = "Curva AOQ - Muestreo Doble, Inspeccion Normal")
lines(P, AOQII_1, col = "#FF8A99", lwd = 3)
lines(P, AOQIII_1, col = "#F0A500", lwd = 3)
abline(v = 0.025, lty = 2, col = "gray50")
grid()
legend("topright",
legend = c("Nivel I", "Nivel II", "Nivel III"),
col = c("#25AD76", "#FF8A99", "#F0A500"), lwd = 2)Curva AOQ - Muestreo Doble, Inspeccion Normal
AOQI_2 <- PaI_2 * P * ((N - n1_2[1]) / N)
AOQII_2 <- PaII_2 * P * ((N - n1_2[2]) / N)
AOQIII_2 <- PaIII_2 * P * ((N - n1_2[3]) / N)
plot(P, AOQI_2,
type = "l", col = "#25AD76", lwd = 3,
xlab = "Proporcion defectuosa",
ylab = "AOQ",
ylim = c(0, max(AOQI_2, AOQII_2, AOQIII_2)),
main = "Curva AOQ - Muestreo Doble, Inspeccion Estricta")
lines(P, AOQII_2, col = "#FF8A99", lwd = 3)
lines(P, AOQIII_2, col = "#F0A500", lwd = 3)
abline(v = 0.025, lty = 2, col = "gray50")
grid()
legend("topright",
legend = c("Nivel I", "Nivel II", "Nivel III"),
col = c("#25AD76", "#FF8A99", "#F0A500"), lwd = 2)Curva AOQ - Muestreo Doble, Inspeccion Estricta
AOQI_3 <- PaI_3 * P * ((N - n1_3[1]) / N)
AOQII_3 <- PaII_3 * P * ((N - n1_3[2]) / N)
AOQIII_3 <- PaIII_3 * P * ((N - n1_3[3]) / N)
plot(P, AOQI_3,
type = "l", col = "#25AD76", lwd = 3,
xlab = "Proporcion defectuosa",
ylab = "AOQ",
ylim = c(0, max(AOQI_3, AOQII_3, AOQIII_3)),
main = "Curva AOQ - Muestreo Doble, Inspeccion Reducida")
lines(P, AOQII_3, col = "#FF8A99", lwd = 3)
lines(P, AOQIII_3, col = "#F0A500", lwd = 3)
abline(v = 0.025, lty = 2, col = "gray50")
grid()
legend("topright",
legend = c("Nivel I", "Nivel II", "Nivel III"),
col = c("#25AD76", "#FF8A99", "#F0A500"), lwd = 2)Curva AOQ - Muestreo Doble, Inspeccion Reducida
plan_N_I <- OC2c(n=n1_1[1], c=c1_1[1], type="binomial", pd=pd)
plan_N_II <- OC2c(n=n1_1[2], c=c1_1[2], type="poisson", pd=pd)
plan_N_III <- OC2c(n=n1_1[3], c=c1_1[3], type="poisson", pd=pd)
pa_N_I <- plan_N_I@paccept
pa_N_II <- plan_N_II@paccept
pa_N_III <- plan_N_III@paccept
pd_N_1 <- plan_N_I@pd
pd_N_2 <- plan_N_II@pd
pd_N_3 <- plan_N_III@pdplot(pd_N_1, pa_N_I,
type="l", col="#C0D461", lwd=3,
xlab="Proporcion defectuosa",
ylab="Probabilidad de aceptacion",
main="Curvas OC - Inspeccion normal")
lines(pd_N_2, pa_N_II, col="#FFDAB5", lwd=3)
lines(pd_N_3, pa_N_III, col="#66A1B2", lwd=3)
legend("right",
legend=c("Nivel I","Nivel II","Nivel III"),
col=c("#C0D461","#FFDAB5","#66A1B2"), lwd=2)
abline(v=0.025, col="#9A275A", lty=2, lwd=3)plan_E_I <- OC2c(n=n1_2[1], c=c1_2[1], type="binomial", pd=pd)
plan_E_II <- OC2c(n=n1_2[2], c=c1_2[2], type="poisson", pd=pd)
plan_E_III <- OC2c(n=n1_2[3], c=c1_2[3], type="poisson", pd=pd)
pa_E_I <- plan_E_I@paccept
pa_E_II <- plan_E_II@paccept
pa_E_III <- plan_E_III@paccept
pd_E_1 <- plan_E_I@pd
pd_E_2 <- plan_E_II@pd
pd_E_3 <- plan_E_III@pdplot(pd_E_1, pa_E_I,
type="l", col="#C0D461", lwd=3,
xlab="Proporcion defectuosa",
ylab="Probabilidad de aceptacion",
main="Curvas OC - Inspeccion estricta")
lines(pd_E_2, pa_E_II, col="#FFDAB5", lwd=3)
lines(pd_E_3, pa_E_III, col="#66A1B2", lwd=3)
legend("right",
legend=c("Nivel I","Nivel II","Nivel III"),
col=c("#C0D461","#FFDAB5","#66A1B2"), lwd=2)
abline(v=0.025, col="#9A275A", lty=2, lwd=3)plan_R_I <- OC2c(n=n1_3[1], c=c1_3[1], type="binomial", pd=pd)
plan_R_II <- OC2c(n=n1_3[2], c=c1_3[2], type="binomial", pd=pd)
plan_R_III <- OC2c(n=n1_3[3], c=c1_3[3], type="binomial", pd=pd)
pa_R_I <- plan_R_I@paccept
pa_R_II <- plan_R_II@paccept
pa_R_III <- plan_R_III@paccept
pd_R_1 <- plan_R_I@pd
pd_R_2 <- plan_R_II@pd
pd_R_3 <- plan_R_III@pdplot(pd_R_1, pa_R_I,
type="l", col="#C0D461", lwd=3,
xlab="Proporcion defectuosa",
ylab="Probabilidad de aceptacion",
main="Curvas OC - Inspeccion reducida")
lines(pd_R_2, pa_R_II, col="#FFDAB5", lwd=3)
lines(pd_R_3, pa_R_III, col="#66A1B2", lwd=3)
legend("right",
legend=c("Nivel I","Nivel II","Nivel III"),
col=c("#C0D461","#FFDAB5","#66A1B2"), lwd=2)
abline(v=0.025, col="#9A275A", lty=2, lwd=3)A partir de las curvas OC obtenidas para los diferentes niveles de inspeccion en el plan de muestreo doble, se observa que el Nivel I presenta las mayores probabilidades de aceptacion, lo que indica un control menos estricto del proceso. En el punto correspondiente al AQL = 2.5%, la probabilidad de aceptacion es aproximadamente superior a 0.95. Por otra parte, el Nivel III muestra una menor probabilidad de aceptacion en ese mismo punto (alrededor de 0.85-0.90), reflejando un criterio mas exigente. El Nivel II presenta un comportamiento intermedio, con probabilidades cercanas a 0.90-0.93, lo que evidencia un equilibrio entre la capacidad de deteccion de lotes defectuosos y el tamano de muestra requerido.
Los resultados obtenidos a partir de las curvas AOQ permiten respaldar la eleccion del Nivel II como el plan mas optimo, ya que presenta un comportamiento intermedio que indica un equilibrio adecuado entre el riesgo de aceptar lotes con defectos y el esfuerzo de inspeccion requerido.
A partir del analisis realizado para los planes de muestreo simple y doble, se observa que ambos presentan comportamientos similares en terminos de discriminacion entre lotes con baja y alta proporcion de defectuosos. En ambos casos, el nivel de inspeccion II bajo inspeccion normal se identifica como el mas adecuado dentro de cada esquema.
Sin embargo, al comparar ambos tipos de planes, se encuentra que el plan de muestreo doble presenta una ventaja operativa importante frente al plan simple. En el muestreo doble, la decision de aceptar o rechazar el lote puede tomarse despues de la primera muestra cuando el numero de defectuosos es claramente bajo o alto, lo que evita la necesidad de realizar siempre una inspeccion completa como ocurre en el plan simple. Esto permite reducir el numero promedio de unidades inspeccionadas, disminuyendo el esfuerzo y el costo de inspeccion en muchos casos.
En ese sentido, el plan de muestreo doble resulta mas conveniente que el plan de muestreo simple, ya que permite mantener un nivel adecuado de proteccion tanto para el productor como para el consumidor, al mismo tiempo que optimiza el esfuerzo de inspeccion.