#EJERCICIO 25

Uno de los problemas en un proceso de inyeccióon de piezas de plástico es el encogimiento. Se corre un experimento con arreglo interno y externo con el doble objetivo de minimizar el problema y lograr robustez en el proceso. Los factores de control son tiempo de ciclo (A), temperatura del molde (B), grosor de la cavidad (C), presión (D), velocidad de inyección (E), tiempo (F) y cantidad de gas (G). Los factores de ruido son % de triturado (M), contenido de humedad (N)y temperatura ambiental (O). El diseño empleado y los datos (porcentaje de encogimiento) se muestran en la siguiente tabla[@pulido2012]:

A B C D E F G R1 R2 R3 R4
-1 -1 -1 -1 -1 -1 -1 2.3 2 2.2 2.4
-1 -1 -1 1 1 1 1 2.4 0.4 2.8 0.2
-1 1 1 -1 -1 1 1 0.4 3.2 0.5 2.7
-1 1 1 1 1 -1 -1 2.1 1.8 1.7 2.1
1 -1 1 -1 1 -1 1 3.1 3 2.9 3.1
1 -1 1 1 -1 1 -1 2 4.3 1.1 3
1 1 -1 -1 1 1 -1 3.9 2 4.7 2.1
1 1 -1 1 -1 -1 1 2.1 1.8 1.8 1.9

a) Especifique el diseño que se empleó.
b) Analice la razón señal/ruido del tipo mientras más pequeña mejor.
c) Dibuje los efectos y obtenga las condiciones de operación mas robustas. d) Analice la razón señal/ruido -log(S^2). Compare los resultados con los incisos previos.
e) ¿Cuál de las dos señales/ruido hace un mejor trabajo en este caso? Argumente.
f) Haga un ánalisis para la media. Obtenga el mejor ANOVA, interprete los efectos y determine el mejor tratamiento para la media.
g) Determine las mejores condiciones de operación del proceso considerando la señal/ruido del inciso d) y la media.

1 Solución

A) Especifique el diseño que se empleó.

En este caso de estudio se utilizo un diseño de Taguchi con arreglo interno y externo ya que se probaron todas las combinaciones de ruido en cada combinación de control. Arreglo ortogonal L8 para el arreglo interno y uno L4 para el arreglo externo por lo que se tiene un diseño resultante de 32 corridas. Por lo cual se tienen los siguientes datos del ejercicio:

Factores de control:

Factores de ruido:
- Porcentaje de triturado (M)
- Contenido de humedad (N)
- Temperatura ambiental (O)

library(printr)
datos=read.table(file = "dataset.txt",header = TRUE)
str(datos)
## 'data.frame':    8 obs. of  11 variables:
##  $ A : int  -1 -1 -1 -1 1 1 1 1
##  $ B : int  -1 -1 1 1 -1 -1 1 1
##  $ C : int  -1 -1 1 1 1 1 -1 -1
##  $ D : int  -1 1 -1 1 -1 1 -1 1
##  $ E : int  -1 1 -1 1 1 -1 1 -1
##  $ F : int  -1 1 1 -1 -1 1 1 -1
##  $ G : int  -1 1 1 -1 1 -1 -1 1
##  $ R1: num  2.3 2.4 0.4 2.1 3.1 2 3.9 2.1
##  $ R2: num  2 0.4 3.2 1.8 3 4.3 2 1.8
##  $ R3: num  2.2 2.8 0.5 1.7 2.9 1.1 4.7 1.8
##  $ R4: num  2.4 0.2 2.7 2.1 3.1 3 2.1 1.9
View(datos)
head(datos,n=8L)
A B C D E F G R1 R2 R3 R4
-1 -1 -1 -1 -1 -1 -1 2.3 2.0 2.2 2.4
-1 -1 -1 1 1 1 1 2.4 0.4 2.8 0.2
-1 1 1 -1 -1 1 1 0.4 3.2 0.5 2.7
-1 1 1 1 1 -1 -1 2.1 1.8 1.7 2.1
1 -1 1 -1 1 -1 1 3.1 3.0 2.9 3.1
1 -1 1 1 -1 1 -1 2.0 4.3 1.1 3.0
1 1 -1 -1 1 1 -1 3.9 2.0 4.7 2.1
1 1 -1 1 -1 -1 1 2.1 1.8 1.8 1.9

B) analice la razón señal/ruido del tipo mientras más pequeña mejor.

Una vez obtenidos y representados los datos, se procede a la implementación mediante los siguientes comandos, mediante los cuales se determinan los estadísticos necesarios, como lo son la razón señal ruido (S/N), misma que para el caso de estudio en este inciso, se determinó utilizar el estadístico correspondiente a mientras más pequeña mejor, por cada combinación del factor de control:

info=as.matrix(datos[1:8,8:11])
signal_noise=function(matriz)
{
  sn=rep(NA,nrow(matriz))
  for (i in 1:nrow(matriz))
  {
    sn[i]=-10*log((sum(matriz[i,]^2)),base = 10)
  }
  sn[]
}
r_signal_noise=signal_noise(matriz=info)
head(r_signal_noise, n=8L)
## [1] -12.98635 -11.39879 -12.53822 -11.74641 -15.63837 -15.14548 -16.60011
## [8] -11.61368

Como el vector corresponde a cada una de las respuestas que se utilizan en la optimización de dos pasos, se procede a realizar la siguiente fase de la corrida determinando los efectos activos que influyen sobre las diferentes respuestas.

C) Dibuje los efectos y obtenga las condiciones de operación mas robustas.

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 = 7, factor.names = list(A=c(-1,1),B=c(-1,1),C=c(-1,1),D=c(-1,1),E=c(-1,1),F=c(-1,1),G=c(-1,1)), replications = 1)
experimento_resp=add.response(experimento, response = r_signal_noise)
graf_daniel=DanielPlot(experimento_resp, main="Gráfico de Daniel para el estadístico S/R")

En conclusión, ninguno de los factores resultó activo en la gráfica, se contiua con la elaboración de las gráficas de efectos individuales y la de interacciones

efectos_principales=MEPlot(experimento_resp, main="Efectos principales para el experimento") 

head(efectos_principales)
A B C D E F G
- -13.89964 -13.18292 -12.22117 -12.90930 -14.44076 -13.03770 -12.83045
+ -13.01721 -13.73394 -14.69569 -14.00756 -12.47609 -13.87915 -14.08640

En conclusión, algunos factores muestran significancia, los factores B,D y F son de importancia y por ende se continúa con la metodología.

efectos_interaccion=IAPlot(experimento_resp, main="Gráfica de interacciones para el experimento")

head(efectos_interaccion)
A:B A:C A:D A:E A:F A:G B:C B:D B:E B:F B:G C:D C:E C:F C:G D:E D:F D:G E:F E:G F:G
-:- -14.17326 -11.68005 -13.62602 -16.11924 -14.10690 -13.69239 -12.36638 -12.19257 -14.79323 -13.99945 -11.57260 -12.30001 -12.76229 -12.07595 -12.14232 -14.31236 -11.50624 -13.51858 -14.56917 -14.08830 -11.96851
+:- -12.19257 -12.76229 -12.19257 -12.76229 -11.96851 -11.96851 -12.07595 -13.62602 -14.08830 -12.07595 -14.08830 -13.51858 -16.11924 -13.99945 -13.51858 -14.56917 -14.56917 -12.14232 -11.50624 -11.57260 -13.69239
-:+ -13.62602 -16.11924 -14.17326 -11.68005 -13.69239 -14.10690 -13.99945 -14.17326 -11.57260 -12.36638 -14.79323 -12.14232 -11.68005 -12.36638 -12.30001 -11.50624 -14.31236 -12.30001 -14.31236 -14.79323 -14.10690
+:+ -13.84185 -13.27213 -13.84185 -13.27213 -14.06591 -14.06591 -15.39192 -13.84185 -13.37958 -15.39192 -13.37958 -15.87279 -13.27213 -15.39192 -15.87279 -13.44594 -13.44594 -15.87279 -13.44594 -13.37958 -14.06591
modelo_sr=lm(r_signal_noise~(A+B+C+D+E+F+G),data=datos)
anova_individuales=aov(modelo_sr)
summary(anova_individuales)
##             Df Sum Sq Mean Sq
## A            1 13.333  13.333
## B            1  0.891   0.891
## C            1  0.762   0.762
## D            1  7.720   7.720
## E            1  1.201   1.201
## F            1  1.709   1.709
## G            1  3.497   3.497

Existe un 95% de confianza, por lo que los factores tienen un efecto en la variables de respuesta señal-ruido y ninguno logra mostrar significancia es por ello que no se puede considerar el principio de herencia para verificar algunas interacciones.

D) analice la razón señal/ruido \(-log(S^2)\). Compare los resultados con los incisos previos.
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:11])
signal_noise2=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_noise2=signal_noise(matriz=info)
head(r_signal_noise2, n=8L)
## [1] -12.98635 -11.39879 -12.53822 -11.74641 -15.63837 -15.14548 -16.60011
## [8] -11.61368
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, n=8L)
## [1] 2.225 1.450 1.700 1.925 3.025 2.600 3.175 1.900
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, n=8L)
## [1] 0.17078251 1.34039795 1.45830952 0.20615528 0.09574271 1.37355985 1.34008706
## [8] 0.14142136

En conclusión, los vectores resultantes corresponden a cada respuesta que se utilizan en la optimización. Se procede a la siguiente fase corrida experimental, determinando los efectos activos que influyen sobre las diferentes respuestas.

Calculo de efectos activos para cada respuesta Respuesta razón S/N

library(FrF2)
experimento2=FrF2(nruns = 8, nfactors = 7, factor.names = list(A=c(-1,1),B=c(-1,1),C=c(-1,1),D=c(-1,1),E=c(-1,1),F=c(-1,1),G=c(-1,1)), replications = 1)
experimento_resp2=add.response(experimento2, response = r_signal_noise2)
graf_daniel2=DanielPlot(experimento_resp2, main="Gráfico de Daniel para el estadístico S/R")

En conclusión, se puede observar que no dió como resultado ningun factor significativo. Se continúa con la metodología.

efectos_principales2=MEPlot(experimento_resp2, main="Efectos princiapes para el experimento") 

head(efectos_principales2)
A B C D E F G
- -13.68022 -11.82428 -13.72270 -13.53598 -14.13078 -13.97437 -13.81274
+ -13.23664 -15.09258 -13.19416 -13.38087 -12.78607 -12.94248 -13.10412

Los efectos principales individuales,se muestran con mayor importancia, en: A, D, E y G.

efectos_interaccion2=IAPlot(experimento_resp2, main="Gráfica de interacciones para el experimento")

head(efectos_interaccion2)
A:B A:C A:D A:E A:F A:G B:C B:D B:E B:F B:G C:D C:E C:F C:G D:E D:F D:G E:F E:G F:G
-:- -11.96851 -13.27213 -15.39192 -14.08830 -13.84185 -13.51858 -11.57260 -11.68005 -12.14232 -12.07595 -11.50624 -13.44594 -14.17326 -15.87279 -13.99945 -13.69239 -13.37958 -13.62602 -14.56917 -16.11924 -14.10690
+:- -11.68005 -14.17326 -11.68005 -14.17326 -14.10690 -14.10690 -15.87279 -15.39192 -16.11924 -15.87279 -16.11924 -13.62602 -14.08830 -12.07595 -13.62602 -14.56917 -14.56917 -13.99945 -13.37958 -11.50624 -13.51858
-:+ -15.39192 -14.08830 -11.96851 -13.27213 -13.51858 -13.84185 -12.07595 -11.96851 -11.50624 -11.57260 -12.14232 -13.99945 -13.27213 -11.57260 -13.44594 -13.37958 -13.69239 -13.44594 -13.69239 -12.14232 -13.84185
+:+ -14.79323 -12.30001 -14.79323 -12.30001 -12.36638 -12.36638 -14.31236 -14.79323 -14.06591 -14.31236 -14.06591 -12.76229 -12.30001 -14.31236 -12.76229 -12.19257 -12.19257 -12.76229 -12.19257 -14.06591 -12.36638

Se procede a realizar el ANOVA del modelo respecto a señal-ruido de la caracteristica de tipo nominal II.

modelo_sr2=lm(r_signal_noise2~(A+B+C+D+E+F+G),data=datos)
anova_individuales2=aov(modelo_sr2)
summary(anova_individuales2)
##             Df Sum Sq Mean Sq
## A            1 13.333  13.333
## B            1  0.891   0.891
## C            1  0.762   0.762
## D            1  7.720   7.720
## E            1  1.201   1.201
## F            1  1.709   1.709
## G            1  3.497   3.497

En conclusión, existe un 95% de confianza, los factores individuales no tienen efecto en la variable de respuesta señal-ruido.

E) ¿Cuál de las dos señales/ruido hace un mejor trabajo en este caso? Argumente.

De acuerdo con lo que se demuestra, ninguno de los dos diseños existen interacciones por parte de los factores con significancia, ya que no hay información en las graficas y en el ANOVA no se presentó significancia para ninguno de los diseños. Por otra parte, el diseño de la característica entre más pequeño mejor, y el de tipo nominal II podría estar considerando otros aspectos, por lo tanto, en este caso se considera al diseño de entre más pequeño mejor.

F) Haga un ánalisis para la media. Obtenga el mejor ANOVA, interprete los efectos y determine el mejor tratamiento para la media.

experimento_media=add.response(experimento,response = r_media)
graf_daniel_media=DanielPlot(experimento_media, main="Grafico de Daniel para la respueta media del proceso")

En conclusión, que el factor G resulta ser significativo para el proceso en términos de la media. Se procede a realizar graficas 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)
A B C D E F G
- 2.50625 2.19375 1.9375 2.15 2.53125 2.05625 2.025
+ 1.99375 2.30625 2.5625 2.35 1.96875 2.44375 2.475

En conclusión, en términos de la media el factor G es el importante. Para verificar si afecta en la interaccion con algun otro factor, se procede a realizar la grafica de interacciones.

interac_media=IAPlot(experimento_media,main="Grafica de interacciones para el valor nominal esperado")

head(interac_media)
A:B A:C A:D A:E A:F A:G B:C B:D B:E B:F B:G C:D C:E C:F C:G D:E D:F D:G E:F E:G F:G
-:- 2.5500 1.9125 2.4625 3.1000 2.5375 2.4750 2.0750 1.8375 2.7000 2.3125 1.6875 2.0625 1.9625 1.8000 1.8125 2.6250 1.6750 2.2375 2.4375 2.3625 1.5750
+:- 1.8375 1.9625 1.8375 1.9625 1.5750 1.5750 1.8000 2.4625 2.3625 1.8000 2.3625 2.2375 3.1000 2.3125 2.2375 2.4375 2.4375 1.8125 1.6750 1.6875 2.4750
-:+ 2.4625 3.1000 2.5500 1.9125 2.4750 2.5375 2.3125 2.5500 1.6875 2.0750 2.7000 1.8125 1.9125 2.0750 2.0625 1.6750 2.6250 2.0625 2.6250 2.7000 2.5375
+:+ 2.1500 2.0250 2.1500 2.0250 2.4125 2.4125 2.8125 2.1500 2.2500 2.8125 2.2500 2.8875 2.0250 2.8125 2.8875 2.2625 2.2625 2.8875 2.2625 2.2500 2.4125

Las interacciones que se pueden considerar como activas o posibles activas son BC, BF, CF y FG, por lo que se verificará 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.0450  0.0450   0.146 0.7214  
## C            1 0.0313  0.0313   0.102 0.7657  
## B:C          1 1.4450  1.4450   4.704 0.0959 .
## Residuals    4 1.2287  0.3072                 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
modelo_BF=lm(r_media~(B*F),data= datos)
anova_BF=aov(modelo_BF)
summary(anova_BF)
##             Df Sum Sq Mean Sq F value Pr(>F)
## B            1 0.0450  0.0450   0.087  0.783
## F            1 0.0028  0.0028   0.005  0.945
## B:F          1 0.6328  0.6328   1.223  0.331
## Residuals    4 2.0694  0.5173
modelo_CF=lm(r_media~(C*F),data= datos)
anova_CF=aov(modelo_CF)
summary(anova_CF)
##             Df Sum Sq Mean Sq F value Pr(>F)
## C            1 0.0313  0.0313   0.049  0.836
## F            1 0.0028  0.0028   0.004  0.950
## C:F          1 0.1653  0.1653   0.259  0.637
## Residuals    4 2.5506  0.6377
modelo_FG=lm(r_media~(F*G),data= datos)
anova_FG=aov(modelo_FG)
summary(anova_FG)
##             Df Sum Sq Mean Sq F value Pr(>F)  
## F            1 0.0028  0.0028   0.013 0.9152  
## G            1 0.4278  0.4278   1.957 0.2344  
## F:G          1 1.4450  1.4450   6.610 0.0619 .
## Residuals    4 0.8744  0.2186                 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Se observa que las interacciones de los factores de importancia resultan significativas aunque presentan un nivel bajo las interacciones de los factores BC y FG, estas interacciones pueden deberse a la importancia de los factores por separado y se deben considerar sin embargo en la manera de interacción.

G) Determine las mejores condiciones de operación del proceso considerando la señal/ruido del inciso d) y la media.

En conclusión, se tiene un 95% de confianza en el factor F, para el tiempo de ciclo se tienen efectos significativos sobre el valor de la media, por ello se recomienda utilizar un nivel alto en F. Por otra parte con la razon señal-ruido, se tiene un 95% de confianza por lo que ninguno de los factores considerados en el estudio influye para maximizar la razón señal-ruido para lograr hacer insensible el proceso respecto al efecto del factor de ruido.

2 Bibliografía