Ejer. 9
En una empresa de electrónica, una máquina toma componentes que le proporciona un alimentador para montarlos o depositarlos en una tarjeta. Se ha tenido el problema de que la máquina falla en sus intentos por tomar el componente, lo cual causa paros de la máquina que detienen el proceso hasta que el operador se da cuenta y reinicia el proceso. Para diagnosticar mejor la situación, se decide correr un diseño de experimentos 24 con n=2 réplicas, en el que se tienen los siguientes factores y niveles (–, +), respectivamente: A) Velocidad de cam (70%, 100%), B) Velocidad de mesa (media, alta), C) Orden o secuencia de colocación (continua, variable), D) Alimentador (1, 2). Como el proceso es muy rápido, es necesario dejarlo operar en cada condición experimental el tiempo suficiente para reproducir el problema. Se consideró que esto se lograba con suficiente confianza con 500 componentes; por ello, cada una de las corridas experimentales consistió en colocar 500 componentes, y se midieron dos variables de respuesta: Y1 = número de errores (o intentos fallidos), y Y2 = tiempo real (en segundos) para tomar y “colocar” los 500 componentes. Es evidente que se quieren minimizar ambas variables. Los datos obtenidos se muestran en la siguiente tabla.
| Factor A | Factor B | Factor C | Factor D | Y1 | Y2 | Y1 | Y2 |
|---|---|---|---|---|---|---|---|
| -1 | -1 | -1 | -1 | 61 | 88 | 50 | 79 |
| +1 | -1 | -1 | -1 | 105 | 78 | 98 | 74 |
| -1 | +1 | -1 | -1 | 61 | 82 | 40 | 82 |
| +1 | +1 | -1 | -1 | 104 | 73 | 145 | 79 |
| -1 | -1 | +1 | -1 | 0 | 88 | 35 | 100 |
| +1 | -1 | +1 | -1 | 35 | 84 | 22 | 82 |
| -1 | +1 | +1 | -1 | 50 | 89 | 37 | 88 |
| +1 | +1 | +1 | -1 | 57 | 79 | 71 | 81 |
| -1 | -1 | -1 | 1 | 12 | 77 | 19 | 75 |
| +1 | -1 | -1 | 1 | 60 | 66 | 57 | 64 |
| -1 | +1 | -1 | 1 | 9 | 84 | 19 | 73 |
| +1 | +1 | -1 | 1 | 72 | 93 | 61 | 66 |
| -1 | -1 | +1 | 1 | 0 | 86 | 0 | 82 |
| +1 | -1 | +1 | 1 | 10 | 76 | 1 | 77 |
| -1 | +1 | + | 1 | 3 | 84 | 7 | 86 |
| +1 | +1 | +1 | 1 | 15 | 75 | 15 | 73 |
library(readxl)
library(FrF2)
datos=read_excel(path = "dataset.xlsx")
View(datos)
attach(datos)
a) Al observar los datos obtenidos, se deduce que hay algunos tratamientos que tienen pocos o ningún componente caídos, como por ejemplo el (–1, –1, +1, +1); alguien muy “práctico” decidiría poner la máquina a operar bajo estas condiciones y olvidarse del análisis estadístico. De proceder así, explique qué información se perdería.
Con base a lo mencionado anteriormente si se sigue trabajando de dicha manera se podrá perder información importante y no se encontrará un método en el que se pueda explicar detalladamente la forma en que influyen los factores en las variables de respuesta. Además, esto provocará que haya diversos errores ya que no se conocerían los niveles en que deben trabajar los factores.
f_a=factor(velocidad_de_cam)
f_b=factor(velocidad_de_mesa)
f_c=factor(orden)
f_d=factor(alimentador)
b) Investigue qué efectos influyen de manera significativa sobre Y1 (apóyese en Pareto y ANOVA).
modelo1=lm(Y1~(f_a+f_b+f_c+f_d+f_a*f_b+f_a*f_c+f_a*f_d+f_b*f_c+f_b*f_d+f_c*f_d+f_a*f_b*f_c+f_a*f_b*f_d+f_a*f_c*f_d+f_b*f_c*f_d+f_a*f_b*f_c*f_d))
summary(modelo1)
##
## Call:
## lm.default(formula = Y1 ~ (f_a + f_b + f_c + f_d + f_a * f_b +
## f_a * f_c + f_a * f_d + f_b * f_c + f_b * f_d + f_c * f_d +
## f_a * f_b * f_c + f_a * f_b * f_d + f_a * f_c * f_d + f_b *
## f_c * f_d + f_a * f_b * f_c * f_d))
##
## Residuals:
## Min 1Q Median 3Q Max
## -20.500 -5.125 0.000 5.125 20.500
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 55.500 8.317 6.673 5.35e-06 ***
## f_a1 46.000 11.762 3.911 0.00124 **
## f_b1 -5.000 11.762 -0.425 0.67643
## f_c1 -38.000 11.762 -3.231 0.00523 **
## f_d1 -40.000 11.762 -3.401 0.00365 **
## f_a1:f_b1 28.000 16.634 1.683 0.11172
## f_a1:f_c1 -35.000 16.634 -2.104 0.05153 .
## f_a1:f_d1 -3.000 16.634 -0.180 0.85914
## f_b1:f_c1 31.000 16.634 1.864 0.08083 .
## f_b1:f_d1 3.500 16.634 0.210 0.83600
## f_c1:f_d1 22.500 16.634 1.353 0.19497
## f_a1:f_b1:f_c1 -18.500 23.524 -0.786 0.44311
## f_a1:f_b1:f_d1 -18.500 23.524 -0.786 0.44311
## f_a1:f_c1:f_d1 -2.500 23.524 -0.106 0.91669
## f_b1:f_c1:f_d1 -24.500 23.524 -1.041 0.31313
## f_a1:f_b1:f_c1:f_d1 13.500 33.268 0.406 0.69027
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 11.76 on 16 degrees of freedom
## Multiple R-squared: 0.9461, Adjusted R-squared: 0.8955
## F-statistic: 18.72 on 15 and 16 DF, p-value: 2.305e-07
anova=aov(modelo1)
summary(anova)
## Df Sum Sq Mean Sq F value Pr(>F)
## f_a 1 8613 8613 62.260 6.63e-07 ***
## f_b 1 1263 1263 9.126 0.008117 **
## f_c 1 11820 11820 85.436 8.12e-08 ***
## f_d 1 11666 11666 84.328 8.87e-08 ***
## f_a:f_b 1 332 332 2.396 0.141163
## f_a:f_c 1 3549 3549 25.654 0.000115 ***
## f_a:f_d 1 205 205 1.482 0.241106
## f_b:f_c 1 332 332 2.396 0.141163
## f_b:f_d 1 428 428 3.092 0.097779 .
## f_c:f_d 1 306 306 2.214 0.156214
## f_a:f_b:f_c 1 69 69 0.499 0.490107
## f_a:f_b:f_d 1 69 69 0.499 0.490107
## f_a:f_c:f_d 1 9 9 0.065 0.801591
## f_b:f_c:f_d 1 158 158 1.139 0.301766
## f_a:f_b:f_c:f_d 1 23 23 0.165 0.690267
## Residuals 16 2213 138
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Con base a la tabla ANOVA se puede observar que los efectos que son significativos en la variable de respuesta del número de errores Y1 son en los que el 〖Valor〗_(`p)<0.05, es decir los factores A, B, C, D y AC.
c) Obtenga el mejor ANOVA.
modelo=aov(Y1~(f_b+f_d+f_a*f_c))
anova=aov(modelo)
summary(anova)
## Df Sum Sq Mean Sq F value Pr(>F)
## f_b 1 1263 1263 7.923 0.00918 **
## f_d 1 11666 11666 73.212 4.90e-09 ***
## f_a 1 8613 8613 54.053 8.30e-08 ***
## f_c 1 11820 11820 74.174 4.32e-09 ***
## f_a:f_c 1 3549 3549 22.272 7.05e-05 ***
## Residuals 26 4143 159
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Con base a esto se puede visualizar que los efectos más significativos en la variable de respuesta Y1 son los factores A, B, C, D y AC, es por ello por lo que se analiza de forma individual para las que son significativas. Además en la tabla ANOVA se plantea que tan significativo es cada uno de los factores.
d) Si en el análisis anterior encuentra alguna interacción significativa, analice con detalle la más importante e interprete en términos físicos.
experimento=FrF2(nruns = 16,nfactors = 4,factor.names = list(f_a=c(-1,1),f_b=c(-1,1),f_c=c(-1,1),f_d=c(-1,1)),replications = 2,randomize = FALSE)
experimento_resp=add.response(design = experimento,response = Y1)
IAPlot(experimento_resp, main= "Graficos de Interaccion")
El factor mas significativo sobre la variable de respuesta es el factor A, debido a que es el que produce un mayor numero de errores cuando esta en el nivel alto.
e) ¿Qué tratamiento minimiza Y1?
Se minimiza a Y1 cuando el factor A trabaje en un nivel bajo, el B en un nivel bajo a media, el C cuando esta en un nivel alto, y el factor D con un nivel alto.
f) Ahora investigue qué efectos influyen de manera relevante sobre Y2.
modelo2=lm(Y2~(f_a+f_b+f_c+f_d+f_a*f_b+f_a*f_c+f_a*f_d+f_b*f_c+f_b*f_d+f_c*f_d+f_a*f_b*f_c+f_a*f_b*f_d+f_a*f_c*f_d+f_b*f_c*f_d+f_a*f_b*f_c*f_d))
summary(modelo2)
##
## Call:
## lm.default(formula = Y2 ~ (f_a + f_b + f_c + f_d + f_a * f_b +
## f_a * f_c + f_a * f_d + f_b * f_c + f_b * f_d + f_c * f_d +
## f_a * f_b * f_c + f_a * f_b * f_d + f_a * f_c * f_d + f_b *
## f_c * f_d + f_a * f_b * f_c * f_d))
##
## Residuals:
## Min 1Q Median 3Q Max
## -13.5 -1.0 0.0 1.0 13.5
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 83.500 4.274 19.538 1.37e-12 ***
## f_a1 -7.500 6.044 -1.241 0.233
## f_b1 -1.500 6.044 -0.248 0.807
## f_c1 10.500 6.044 1.737 0.102
## f_d1 -7.500 6.044 -1.241 0.233
## f_a1:f_b1 1.500 8.548 0.175 0.863
## f_a1:f_c1 -3.500 8.548 -0.409 0.688
## f_a1:f_d1 -3.500 8.548 -0.409 0.688
## f_b1:f_c1 -4.000 8.548 -0.468 0.646
## f_b1:f_d1 4.000 8.548 0.468 0.646
## f_c1:f_d1 -2.500 8.548 -0.292 0.774
## f_a1:f_b1:f_c1 1.000 12.088 0.083 0.935
## f_a1:f_b1:f_d1 10.500 12.088 0.869 0.398
## f_a1:f_c1:f_d1 7.000 12.088 0.579 0.571
## f_b1:f_c1:f_d1 2.500 12.088 0.207 0.839
## f_a1:f_b1:f_c1:f_d1 -16.500 17.095 -0.965 0.349
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 6.044 on 16 degrees of freedom
## Multiple R-squared: 0.6925, Adjusted R-squared: 0.4042
## F-statistic: 2.402 on 15 and 16 DF, p-value: 0.04609
anova=aov(modelo2)
summary(anova)
## Df Sum Sq Mean Sq F value Pr(>F)
## f_a 1 472.8 472.8 12.942 0.00241 **
## f_b 1 3.8 3.8 0.104 0.75183
## f_c 1 294.0 294.0 8.049 0.01190 *
## f_d 1 247.5 247.5 6.776 0.01922 *
## f_a:f_b 1 19.5 19.5 0.535 0.47523
## f_a:f_c 1 26.3 26.3 0.719 0.40885
## f_a:f_d 1 2.5 2.5 0.069 0.79573
## f_b:f_c 1 81.3 81.3 2.225 0.15525
## f_b:f_d 1 81.3 81.3 2.225 0.15525
## f_c:f_d 1 7.0 7.0 0.192 0.66673
## f_a:f_b:f_c 1 26.3 26.3 0.719 0.40885
## f_a:f_b:f_d 1 2.5 2.5 0.069 0.79573
## f_a:f_c:f_d 1 0.8 0.8 0.021 0.88556
## f_b:f_c:f_d 1 16.5 16.5 0.453 0.51074
## f_a:f_b:f_c:f_d 1 34.0 34.0 0.932 0.34882
## Residuals 16 584.5 36.5
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Con base a los resultados de la tabla ANOVA se puede observar que los factores mas significativos que influyen en Y2 son aquellos donde el 〖Valor〗_(`p)<0.05 por lo que se determina que el factor A, factor C y factor D son los más significativos con base al tiempo real en segundos Y2.
g) ¿Qué tratamiento minimiza Y2?
experimento=FrF2(nruns = 16,nfactors = 4,factor.names = list(f_a=c(-1,1),f_b=c(-1,1),f_c=c(-1,1),f_d=c(-1,1)),replications = 2,randomize = FALSE)
experimento_resp=add.response(design = experimento,response = Y2)
MEPlot(experimento_resp,main= "Gráfica de Efectos Individuales")
Se puede observar que el valor más significativo sobre la variable de respuesta es el factor A debido a que produce un mayor número de errores cuando este se encuentra en un nivel alto. Por otra parte, se puede visualizar que el factor B con un nivel alto aumenta un poco la cantidad o el numero de errores. Asimismo, en los factores C y D se puede visualizar que se reduce el número de errores cuando se esta trabajando en un nivel alto.
h) Encuentre una condición satisfactoria tanto para minimizar Y1 como Y2.
Condición satisfactoria Y1: A,B,C,D=(-,-,+,+) Condición satisfactoria Y2: A,B,C,D=(+,-,-,+)
i)De los análisis de varianza para Y1 y Y2 observe el coeficiente R2. ¿Qué concluye de ello?
En conclusión, el coeficiente R^2 para Y1 y Y2 es de 0.9461 y 0.6925 respectivamente. De la misma forma, el coeficiente R^2 indica la capacidad que poseen los datos para ajustarse y predecir la variable de respuesta. Por lo tanto, si el valor de R^2 es mayor esto quiere decir que el modelo explica de forma correcta como influyen los factores en la variable de respuesta, de lo contrario si el valor es menor significa que el modelo no ajusta ni da a conocer como influyen los factores en la variable. De esta forma se logra determinar que el valor de Y1 del R^2 es el modelo adecuado ya que su valor es muy cercano a 1. De la misma forma se logra observar que Y2 es un valor menor y por lo tanto no es muy adecuado.
j) Verifique residuos.
\[H_0=XЄ N(μ=0,σ^2= Constante)\]
\[H_0=X ∉ N(μ=0,σ^2= Constante)\]
normalidad=shapiro.test(resid(modelo1))
print(normalidad)
##
## Shapiro-Wilk normality test
##
## data: resid(modelo1)
## W = 0.96651, p-value = 0.4091
normalidad=shapiro.test(resid(modelo2))
print(normalidad)
##
## Shapiro-Wilk normality test
##
## data: resid(modelo2)
## W = 0.8854, p-value = 0.002686
Con base a los resultados que arrojo la prueba de Shapiro-Wilk se puede observar que para Y1 el Valor_(`p)>0.05, ya que es igual a 0.4091 por lo que se acepta la hipótesis nula lo que indica que los residuos tienen una distribución normal.
Por otra parte, los resultados alcanzados de la prueba de Shapiro-Wilk para Y2 indican que el Valor_(`p)<0.05 ya que es igual a 0.0026 por lo que se rechaza la hipótesis nula, es decir que los residuos no tienen una distribución normal, lo cual muestra que el modelo no es el adecuado para explicar el número de errores en función de los factores A, B, C, D.
Hipotesis de la prueba de Bartlett:
\[H_0 : σ^2_i = σ^2_j = Constante\] \[H_1 : σ^2_i ≠ σ^2_j ≠ Constante\]
homocedasticidad=bartlett.test(resid(modelo1),f_a,f_b,f_c,f_d,data=experimento_resp)
print(homocedasticidad)
##
## Bartlett test of homogeneity of variances
##
## data: resid(modelo1) and f_a
## Bartlett's K-squared = 0.025372, df = 1, p-value = 0.8734
homocedasticidad=bartlett.test(resid(modelo2),f_a,f_b,f_c,f_d,data=experimento_resp)
print(homocedasticidad)
##
## Bartlett test of homogeneity of variances
##
## data: resid(modelo2) and f_a
## Bartlett's K-squared = 2.0788, df = 1, p-value = 0.1494
En conclusión, para Y1 se obtuvo un 〖Valor〗_(`p)>0.05 el cual es 0.8734 por lo que se acepta la hipótesis nula y se determina que hay igualdad de varianzas lo que indica que este modelo es el adecuado para explicar el número de errores en función de los factores A, B, C y D.
Por otra parte, para Y2 se obtiene un 〖Valor〗_(`p)>0.05 el cual es igual a 0.1494 por lo cual se acepta la hipótesis nula y se determina que hay igualdad de varianzas. No obstante, el modelo no pasa las 2 pruebas por lo que este no es el adecuado para examinar los efectos de los factores sobre la variable de respuesta.