6.12 En un artículo de AT&T Technical Journal (vol. 65, pp. 39-50) se describe la aplicación de diseños factoriales de dos niveles en la fabricación de circuitos integrados. Un paso básico del procesamiento es hacer crecer una capa epitaxial sobre obleas de silicio pulidas. Las obleas se montan en un susceptor, se colocan en el interior de una campana de cristal y se introducen vapores químicos. El susceptor se hace girar y se aplica calor hasta que la capa epitaxial tiene el espesor suficiente. Se corrió un experimento utilizando dos factores: rapidez de flujo de arsénico (A) y tiempo de deposición (B). Se corrieron cuatro réplicas y se midió el la capa epitaxial (en \({\mu}\)m). Los datos se muestran a continuación:
Réplica Niveles de factores
A | B | I | II | III | IV | Bajo(-) | Alto(+) | |
---|---|---|---|---|---|---|---|---|
- | - | 14.037 | 16.165 | 13.972 | 13.907 | A | 55% | 59% |
+ | - | 13.880 | 13.860 | 14.032 | 13.914 | |||
- | + | 14.821 | 14.757 | 14.843 | 14.878 | B | Corto | Largo |
+ | + | 14.888 | 14.921 | 14.415 | 14.932 | (10 min) | (15 min) |
a) Estimular los efectos de los factores.
library(printr)
datos=read.table("dataset.txt",header = TRUE)
str(datos)
## 'data.frame': 16 obs. of 3 variables:
## $ Respuesta : num 14 13.9 14.8 14.9 16.2 ...
## $ flujo_arsenico: int -1 1 -1 1 -1 1 -1 1 -1 1 ...
## $ tiempo : int -1 -1 1 1 -1 -1 1 1 -1 -1 ...
attach(datos)
f_arsenico=factor(`flujo_arsenico`)
f_tiempo=factor(`tiempo`)
head(datos, n= 16L)
Respuesta | flujo_arsenico | tiempo |
---|---|---|
14.037 | -1 | -1 |
13.880 | 1 | -1 |
14.821 | -1 | 1 |
14.888 | 1 | 1 |
16.165 | -1 | -1 |
13.860 | 1 | -1 |
14.757 | -1 | 1 |
14.921 | 1 | 1 |
13.972 | -1 | -1 |
14.032 | 1 | -1 |
14.843 | -1 | 1 |
14.415 | 1 | 1 |
13.907 | -1 | -1 |
13.914 | 1 | -1 |
14.878 | -1 | 1 |
14.932 | 1 | 1 |
Para calcular los efectos de los factores, debemos considerar que en la ejecución de un diseño factorial completo de la familia 2^2 es necesario considerar el factor de interacción; el modelo matemático que relaciona los efectos de los factores en la variable de salida se escribe de la siguiente manera:
\[y_ij={\mu}+{\tau_i}+{\beta_j}+{\varepsilon_{ij}}\]
Según Montgomery, en un diseño factorial con dos niveles, el efecto primedio de un factor puede definirse como el cambio en la respuesta producido por un cambio en el nivel de ese factor promediado para para los niveles del otro factor(Montgomery, 2004). Dicho lo anterior, para el caso del factor A, el efecto promedio, utilizando la notación de Yates, se define como:
\[A={\frac{1}{2n}}[ab+a-a-b-(1)]\]
Para el caso del factor B, se define de la siguiente manera:
\[B={\frac{1}{2n}}[ab+b-a-(1)\]
En el caso del efecto de interacción AB, se define como la diferencia promedio entre el efecto de A con el nivel alto de B y el efecto de A con el nivel bajo de B, por lo tanto:
\[AB={\frac{1}{2n}}[ab+(1)-a-b]\] Para determinar los efectos, utilizamos el siguiente código:
modelo=lm(Respuesta~(f_arsenico+f_tiempo+f_arsenico*f_tiempo))
summary(modelo)
##
## Call:
## lm(formula = Respuesta ~ (f_arsenico + f_tiempo + f_arsenico *
## f_tiempo))
##
## Residuals:
## Min 1Q Median 3Q Max
## -0.61325 -0.14431 -0.00563 0.10188 1.64475
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 14.5202 0.2824 51.414 1.93e-15 ***
## f_arsenico1 -0.5987 0.3994 -1.499 0.160
## f_tiempo1 0.3045 0.3994 0.762 0.461
## f_arsenico1:f_tiempo1 0.5630 0.5648 0.997 0.339
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.5648 on 12 degrees of freedom
## Multiple R-squared: 0.3535, Adjusted R-squared: 0.1918
## F-statistic: 2.187 on 3 and 12 DF, p-value: 0.1425
library(FrF2)
experimento=FrF2(nruns = 4, nfactors = 2, factor.names = list(f_arsenico=c(-1,1), f_tiempo=c(-1,1)), replications = 4, randomize = FALSE)
experimento_resp=add.response(design = experimento,response = Respuesta)
grafica_efectos_principales=MEPlot(experimento_resp, main="Gráfica de efectos individuales")
grafica_interaciones=IAPlot(experimento_resp, main= "Gráfica de interacciones")
head(grafica_efectos_principales)
f_arsenico | f_tiempo | |
---|---|---|
- | 14.67250 | 14.22087 |
+ | 14.35525 | 14.80687 |
head(grafica_interaciones)
f_arsenico:f_tiempo | |
---|---|
-:- | 14.52025 |
+:- | 13.92150 |
-:+ | 14.82475 |
+:+ | 14.78900 |
b) Conducir un análisis de varianza.¿Qué factores son importantes?
Para establecer de manera definitiva cuales son los niveles de operación del sistema, es conveniente verificar la significancia tanto de los factores de manera individual como de las interacciones, para tal caso se ejecuta el Análisis de Varianza (ANOVA) correspondiente, mediante la siguiente secuencia de comandos:
tabla_anova=aov(modelo)
summary(tabla_anova)
## Df Sum Sq Mean Sq F value Pr(>F)
## f_arsenico 1 0.403 0.4026 1.262 0.2833
## f_tiempo 1 1.374 1.3736 4.305 0.0602 .
## f_arsenico:f_tiempo 1 0.317 0.3170 0.994 0.3386
## Residuals 12 3.828 0.3190
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Se puede observar que el \(valor_p\) del efecto del flujo de arsénico no es significativo, porque considerando el nivel de significancia α = 0.05, \(valor_p\)>α, entonces se acepta la hipótesis nula y se concluye: considerando el factor de tratamiento del flujo de arsénico no hay diferencia significativa entre el espesor medio producido por el nivel.
En el caso del factor tiempo de exposición, asumiendo un \(valor_p\)>α, se puede concluir que no existe diferencia significativa entre los niveles probados para este factor, por lo que se acepta la hipótesis nula para el nivel del factor en cuestión.
En el caso de la interacción, dado que \(valor_p\)>α, a lo que lleva en conclusión que no existe diferencia significativa entre las diferentes interacciones producidas, por lo que se concluye que si bien existen interacciones obvias, estas no son suficientes para provocar cambios importantes. En el grosor de la capa epitaxial resultante.
c) Escribir una encuación de regresión que podría usarse para preceder
En el caso de un modelo estadístico, el coeficiente de regresión del informe de resultados dado los datos se expresará de la siguiente manera:
\[Grosor_ij={14.5420}-{0.1868Porcentaje_i}+{0.2649Tiempo_j}+{0.1689PorcentajeTiempo_{ij}}\]
d) Analizar los residuales.¿Se observa algún residual que debiera causar preocupación?
Prueba de Adecuación
Prueba de Normalidad de Residuos de Shapiro-Wilk
Para realizar esta prueba debemos plantear las siguientes hipótesis de trabajo:
\[H_0:x \, {\in}\, N\, ({\mu}=0, {\sigma^2}=Constante)\] \[H_1:x \, {\notin} \, N \, ({\mu}=0,{\sigma^2}=Constante)\]
Cuando el \(valor_p\)<0.05, se rechaza la hipótesis nula de la prueba de Shapiro-Wilks.Siempre se recomienda realizar una gráfica de probabilidad normal para confirmar la prueba de hipótesis.Para ello usaremos la siguiente secuencia de comandos:
prueba_normal=shapiro.test(resid(modelo))
print(prueba_normal)
##
## Shapiro-Wilk normality test
##
## data: resid(modelo)
## W = 0.71743, p-value = 0.0002643
#Gráfica de probabilidad normal
qqnorm(resid(modelo), main= "Gráfica de Probabilidad para los Residuales del Modelo", xlab="Cuantiles Teoricos", ylab = "Cuantiles de muestra")
qqline(resid(modelo))
Los resultados obtenidos por la prueba de Shapiro-Wilk demuestran que los residuales carecen de normalidad. La gráfica de probabilidad de los residuales del modelo confirma esta situación. Se concluye que para este caso especial, existen datos atípicos para el modelo propuesto. Esto da como resultado el modelo no siendo suficiente para explicar el espesor de la capa epitaxial en función del flujo de arsénico y el tiempo de exposición al baño químico experimentado por la oblea de silicio pulido.
Prueba Igualdad de Varianza de Bartlett
La Prueba de Bartlett tiene las siguientes hipótesis:
\[H_0:{\sigma^2}={\sigma^2_j}=Costante\]
\[H_1:{\sigma^2}\,{\neq}\,{\sigma^2_j}\,{\neq}\,Costante\] La Prueba de Bartlett se realiza con la siguiente línea de comandos, misma que se efectúa por separado para cada factor
prueba_homocedasticidad=bartlett.test(Respuesta~f_arsenico, data = datos)
print(prueba_homocedasticidad)
##
## Bartlett test of homogeneity of variances
##
## data: Respuesta by f_arsenico
## Bartlett's K-squared = 1.0199, df = 1, p-value = 0.3125
prueba_homocedasticidad_tiempo=bartlett.test(Respuesta~f_tiempo,data = datos)
print(prueba_homocedasticidad_tiempo)
##
## Bartlett test of homogeneity of variances
##
## data: Respuesta by f_tiempo
## Bartlett's K-squared = 11.714, df = 1, p-value = 0.0006203
Para aceptar varianzas iguales, los residuos de todos los factores deben tener la misma varianza. En el caso del factores de tiempo de exposición, se rechaza el supuesto de varianzas iguales. En vista de lo anterior, se puede concluir que el modelo es insuficiente para explicar la variación del espesor de la capa epitaxial en función del flujo de arsénico y el tiempo de exposición al baño químico para el pulido de obleas de silicio.
e) Comentar la forma en que se podria resolver el punto atípico potencial encontrado en el insico d.
Para el caso de los datos atípico existen varias alternativas, los cuales son datos atípico univariados y datos atípicos multivariados.