Los arreglos ortogonales son diseños propuestos por Taguchi que, como su nombre lo indica, tienen la propiedad de la ortogonalidad (Independencia lineal entre las columnas), misma que tambien poseen los diseños factoriales clásicos. Estos arreglos son diseños factoriales completos, fraccionados o mixtos, dependiendo del número de factores a estudiar en un caso particular. Por ejemplo, el arreglo ortogonal \(L_8\) tiene ocho corridas experimentales, y con él se pueden estudiar desde dos hasta siete factores en dos niveles cada uno. Para menos de siete factores es necesario saber a cuales columnas del arreglo deben asignarse los factores, para tener la estructura alias que permita estudiar los más claro posible esos factores (Pulido & Vara Salazar, 2012). Para ejemplificar lo anterior, verifique el siguiente enlace:
La condición fundamental para que un diseño sea de tipo robusto es que exista al menos un factor de ruido para el cual se busca hacer que el proceso sea insensible a su efecto, sin pretender controlar dicho factor de ruido. Éste seguirá actuando como siempre en el proceso después del experimento, pero se busca que sus efectos sean menores. Un diseño experimental propuesto por Taguchi para determinar las condiciones de operación robustas a uno o varios factores de ruido es el diseño con arreglo interno y externo. Una vez identificados los factores de control y los factores de ruido con los que se quiere experimentar, se construyen dos arreglos ortogonales, como se muestra en la siguiente tabla:
Extracto del libro Análisis y Diseño de Experimentos-Humberto Gutierrez Pulido- Román de la Vara Salazar
Para el análsis del diseño con arreglo interno y externo, Taguchi propone un estadístico de desempeño o robustez, al cual llama cociente o razón señal/ruido (signal to noise ratio), que se calcula en cada combinación de los factores controlables y que se analiza como cualquier variable de respuesta. La combinación más robusta de los niveles de los factores controlables es aquella que maximiza el estadístico razón señal/ruido. De acuerdo con el tipo de caraterística de calidad, el estadístico razón señal/ruido se define de acuerdo a la siguiente tabla:
Tipo de característica | Razón señal/ruido (S/R) |
---|---|
Mientras más pequeña es mejor | \(-10log[{\frac{1}{n}{{\sum_{i=1}^{n}}}{{Y_i}^2}}]\) |
Mientras más grande es mejor | \(-10log[{\frac{1}{n}}{\sum_{i=1}^{n}}{\frac{1}{Y_i^2}}]\) |
Su valor nominal es lo mejor (tipo I) | \(10log(\frac{\bar{Y}^2}{S^2})\) |
Su valor nominal es lo mejor (tipo II) | \(-10log(S^2)\) |
Proporción de defectuosos | \(-10log(\frac{p}{1-p})\) |
El hecho de que se saque un logaritmo en los estadísticos tiene que ver con buscar que los efectos de los factores controlables sean aditivos, es decir, que se minimice la posibilidad de efectos de interacción entre ellos. Se multiplican por 10 para trabajar en una escala más grande y el signo que lo antecede se escoge de manera tal que el problema sea siempre maximizar el valor del estadístico para obtener las condiciones de operación más robustas.
En cuanto a los dos estadísticos para respuestas de tipo nominal, se recomienda el tipo I para respuestas no negativas que van de cero a infinito, que tienen valor objetivo diferente de cero y que la varianza es cero cuando la respuesta también es cero. Por su parte, el estadístico tipo II es para respuestas que pueden tomar tanto valores positivos como negativos , y donde el cero puede ser el valor nominal. El estadístico tipo I también se recomienda cuando la media y la desviación estándar tienen una relación lineal; y en e estadístico tipo II cuando la media y la desviación estándar son independientes. Para verificar el tipo de relación entre la media y la desviación estándar se realiza un diagrama de dispersión con los puntos \(({\bar{Y}_i},{S_i})\), calculados con los renglones del arreglo interno. Si los puntos caen en una banda horizontal a lo lago del eje x, entonces la media y la desviación estándar son independientes. Pero si los puntos muestran una relación lineal, o de otro tipo, entonces son dependientes (Pulido & Vara Salazar, 2012).
La estrategia del análisis del experimento con arrglos interno y externo se resume en los dos pasos siguientes:
Además de los pasos anteriores, para cualquier respuesta continua es útil realizar estos mismos dos pasos con el estadístico general \(S/R=-10log({S^2})\) a fin de tener otra visión del análisis.
Para ejemplificar la implementación del diseño robusto se toma como ejemplo el planteamiento número 19 de la página 280 del libro Análsis y diseño de Experimentos de Humberto Gutiérrez Pulido y Román de la Vara Salazar, tercera edición, el cual a la letra dice:
En el proceso de fabricación de muelles para automóviles, una variable de salida importante es la altura sin carga, cuyo valor nominal es ocho pulgadas. Dicha altura se determina mediante el tratamiento de calor en el cual se forma la curvatura del muelle. El problema es determinar las condiciones de este tratamiento que den por resultado la altura deseada. Se corre un experimento con cuatro factores de control y uno de ruido. Los primeros son: (B) temperatura del horno, (C) tiempo de quemado, (D) tiempo de transferencia y (E) tiempo de permanencia (tiempo en el cual se forma la curvatura en una pieza caliente). Los ingenieros también estaban interesados en estudiar los efectos de interacción BC, BD y CD. El factor de ruido es la temperatura del lubricante (O), que es difícil de controlar durante la producción. Los niveles utilizados en cada factor se muestran en la siguiente tabla:
Etiqueta | Factor | Bajo | Alto |
---|---|---|---|
B | Temperatura del horno (ºF) | 1840 | 1880 |
C | Tiempo de quemado (seg.) | 25 | 23 |
D | Tiempo de transferencia (seg.) | 12 | 10 |
E | Temperatura del lubricante (ºF) | 130-150 | 150-170 |
Los datos del experimento se presentan en la siguiente tabla
library(printr)
## Registered S3 method overwritten by 'printr':
## method from
## knit_print.data.frame rmarkdown
datos=read.table(file="dataset.txt",header = TRUE)
head(datos,n=9L)
B | C | BC | D | BD | CD | E | O1_1 | O1_2 | O1_3 | O2_1 | O2_2 | O2_3 |
---|---|---|---|---|---|---|---|---|---|---|---|---|
-1 | -1 | 1 | -1 | 1 | 1 | -1 | 7.78 | 7.78 | 7.81 | 7.50 | 7.25 | 7.12 |
1 | -1 | -1 | -1 | -1 | 1 | 1 | 8.15 | 8.18 | 7.88 | 7.88 | 7.88 | 7.44 |
-1 | 1 | -1 | -1 | 1 | -1 | 1 | 7.50 | 7.56 | 7.50 | 7.50 | 7.56 | 7.50 |
1 | 1 | 1 | -1 | -1 | -1 | -1 | 7.59 | 7.56 | 7.75 | 7.63 | 7.75 | 7.56 |
-1 | -1 | 1 | 1 | -1 | -1 | 1 | 7.94 | 8.00 | 7.88 | 7.32 | 7.44 | 7.44 |
1 | -1 | -1 | 1 | 1 | -1 | -1 | 7.69 | 8.09 | 8.06 | 7.56 | 7.69 | 7.62 |
-1 | 1 | -1 | 1 | -1 | 1 | -1 | 7.56 | 7.62 | 7.44 | 7.18 | 7.18 | 7.25 |
1 | 1 | 1 | 1 | 1 | 1 | 1 | 7.56 | 7.81 | 7.69 | 7.81 | 7.50 | 7.59 |
La notación de las columnas se refiere al primer y segundo nivel del factor de ruido temperatura del aceite, con sus respectivas réplicas.
Para las particularidades de la implementación, se recomienda verificar el siguiente material:
Una vez identificados los datos, se procede a la implementación mediante la siguiente secuencia de comandos, en la cual se determinan los estadísticos necesarios, como lo son la razón señal ruido (S/N), misma que para el caso de estudio, se determinó utilizar el estadístico correspondiente a el valor nominal tipo II, la media y la desviación estándar, por cada combinación del factor de control:
info=as.matrix(datos[1:8,8:13])
signal_noise=function(matriz)
{
sn=rep(NA,nrow(matriz))
for (i in 1:nrow(matriz))
{
sn[i]=-10*log((var(matriz[i,])),base = 10)
}
sn[]
}
r_signal_noise=signal_noise(matriz=info)
head(r_signal_noise)
## [1] 10.45565 11.50355 30.17729 21.01275 10.41723 12.76462
media=function(matriz)
{
prom=rep(NA,nrow(matriz))
for(i in 1:nrow(matriz))
{
prom[i]=mean(matriz[i,])
}
prom[]
}
r_media=media(matriz = info)
head(r_media)
## [1] 7.540000 7.901667 7.520000 7.640000 7.670000 7.785000
varianza=function(matriz)
{
v=rep(NA,nrow(matriz))
for(i in 1:nrow(matriz))
{
v[i]=var(matriz[i,])
}
v[]
}
r_varianza=varianza(matriz = info)
r_desv_est=sqrt(varianza(matriz = info))
head(r_desv_est)
## [1] 0.30006666 0.26596366 0.03098387 0.08899438 0.30139675 0.23002174
Los vectores resultantes corresponden a cada una de las respuestas que se utilizan en la Optimización de Dos Pasos, por lo cual, la siguiente fase de la corrida experimental es determinar los efectos activos que influyen sobre las diferentes respuestas
En este caso determinaremos los efectos activos de la misma forma en que se determinan para un experimento factorial completo o factorial fraccionado, de la siguiente manera, para la respouesta del estadístico razón señal ruido:
library(FrF2)
experimento=FrF2(nruns = 8, nfactors = 4, factor.names = list(B=c(-1,1),C=c(-1,1),D=c(-1,1),E=c(-1,1)), replications = 1)
experimento_resp=add.response(experimento, response = r_signal_noise)
graf_daniel=DanielPlot(experimento_resp, main="Frafico de Daniel para el estadístico S/R")
Como es de observarse, para el caso de la razón señal ruido, no existen efectos activos a un nivel de significancia de 0.05, por lo que, con fines de establecer una metodología, se procederá a ejecutar los demás gráficos y análisis, como lo son, la gráfica de efectos principales, la gráfica de interacciones y el mejor ANOVA.
efectos_principales=MEPlot(experimento_resp, main="Efectos princiapes para el experimento")
head(efectos_principales)
B | C | D | E | |
---|---|---|---|---|
- | 20.39481 | 13.76127 | 17.44026 | 16.08528 |
+ | 11.64417 | 18.27770 | 14.59871 | 15.95370 |
efectos_interaccion=IAPlot(experimento_resp, main="Gráfica de interacciones para el experimento")
head(efectos_interaccion)
B:C | B:D | B:E | C:D | C:E | D:E | |
---|---|---|---|---|---|---|
-:- | 15.19459 | 23.90093 | 19.31866 | 14.04010 | 15.91241 | 14.56406 |
+:- | 12.32795 | 10.97960 | 12.85191 | 20.84042 | 16.25815 | 17.60650 |
-:+ | 25.59502 | 16.88869 | 21.47096 | 13.48244 | 11.61013 | 20.31647 |
+:+ | 10.96039 | 12.30874 | 10.43644 | 15.71499 | 20.29726 | 11.59093 |
modelo_sr=lm(r_signal_noise~(B+C+D+E),data=datos)
anova_individuales=aov(modelo_sr)
summary(anova_individuales)
## Df Sum Sq Mean Sq F value Pr(>F)
## B 1 0.69 0.69 0.024 0.8878
## C 1 179.30 179.30 6.146 0.0893 .
## D 1 41.14 41.14 1.410 0.3205
## E 1 15.93 15.93 0.546 0.5135
## Residuals 3 87.53 29.18
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Derivado de la tabla anterior, se concluye con un 95% de confianza, que los factors individuales no tienen un efecto significativo en la variable de respuesta razón señal ruido, sin embargo, y recordando el Principio de Herencia, el único factor con cierto grado de significancia es el C, por lo que se procederá a probar la interacción con el factor E, dado que en la gráfica de interacciones presenta una interacción aparentemente significativa entre estos dos factores
modelo_sr_inter=lm(r_signal_noise~(C*E),data=datos)
anova_int_ce=aov(modelo_sr_inter)
summary(anova_int_ce)
## Df Sum Sq Mean Sq F value Pr(>F)
## C 1 179.30 179.30 6.815 0.0594 .
## E 1 15.93 15.93 0.605 0.4800
## C:E 1 24.11 24.11 0.916 0.3926
## Residuals 4 105.25 26.31
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
EL análisis estadístico confirma que no existen interacciones significativas entre los factores que permitan maximizar el valor del estadístico señal/ruido, por lo que se concluye que no hay evidencia en la muestra que permita establcer las condiciones robustas de operación del proceso.
Para el caso de la variable de respuesta promedio, ésta se utilizará para llevar al proceso a su valor esperado, que en este caso, como lo especifica el enunciado, es ocho pulgadas. Se eligirán los efecto activos que lleven al proceso a las condiciones, no robustas, que más se acerquen al valor esperado del proceso:
experimento_media=add.response(experimento,response = r_media)
graf_daniel_media=DanielPlot(experimento_media, main="Grafico de Daniel para la respueta media del proceso")
Derivado de la gráfica anterior, se puede concluir que las interacciones activas para el proceso en términos de la media son BC y BD, para establecer su significancia, se procederá a realizar las gráficas de efectos principales y de interacciones:
graf_efectos_individuales_media=MEPlot(experimento_media, main="Grafica de efectos principales para el valor nominal esperado")
head(graf_efectos_individuales_media)
B | C | D | E | |
---|---|---|---|---|
- | 7.651250 | 7.589167 | 7.655417 | 7.643333 |
+ | 7.620833 | 7.682917 | 7.616667 | 7.628750 |
interac_media=IAPlot(experimento_media,main="Grafica de interacciones para el valor nominal esperado")
head(interac_media)
B:C | B:D | B:E | C:D | C:E | D:E | |
---|---|---|---|---|---|---|
-:- | 7.722500 | 7.590000 | 7.650000 | 7.600000 | 7.515833 | 7.780833 |
+:- | 7.455833 | 7.720833 | 7.636667 | 7.710833 | 7.770833 | 7.505833 |
-:+ | 7.580000 | 7.712500 | 7.652500 | 7.578333 | 7.662500 | 7.530000 |
+:+ | 7.785833 | 7.520833 | 7.605000 | 7.655000 | 7.595000 | 7.727500 |
Las interacciones activas son BC y BD, por lo que se verifica su significancia con el mejor anova:
modelo_BC=lm(r_media~(B*C),data=datos)
anova_BC=aov(modelo_BC)
summary(anova_BC)
## Df Sum Sq Mean Sq F value Pr(>F)
## B 1 0.09790 0.09790 14.802 0.0183 *
## C 1 0.06213 0.06213 9.393 0.0375 *
## B:C 1 0.00058 0.00058 0.088 0.7812
## Residuals 4 0.02646 0.00661
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
modelo_BD=lm(r_media~(B*D),data= datos)
anova_BD=aov(modelo_BD)
summary(anova_BD)
## Df Sum Sq Mean Sq F value Pr(>F)
## B 1 0.09790 0.09790 4.514 0.101
## D 1 0.00165 0.00165 0.076 0.796
## B:D 1 0.00077 0.00077 0.035 0.860
## Residuals 4 0.08675 0.02169
A manera de conclusión, los datos muestrales dan evidencia, con un 95% de confianza que los factores B y C, correspondientes a la temperatura del horno y el tiempo de quemado, respectivamente, tienen efectos significativos sobre el valor de la media, por lo que se recomienda usar los niveles máximos de éstos factores, es decir, calentar el horno a 1880 ºF y procesar mediante un tiempo de quemado de 23 segundos. para llevar al proceso a su valor nominal esperado, mientras que respecto de la razón señal ruido, se concluye, con un 95% de confianza, que ninguno de los factores considerados en el análisis es influyente para maximizar la razón señal ruido para hacer insensible el proceso al efecto del factor de ruido.