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(Pulido, De la Vara Salazar, González, Martı́nez, & Pérez, 2012):
| 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.
a) Especifique el diseño que se empleó.
Se utiliza 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. Se tienen los siguientes datos del ejercicio:
Factores de control:
Factores de ruido:
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 los datos, se procede a la implementación mediante los siguientes comandos, los cuales determinan los estadísticos necesarios, como la razón señal ruido (S/N), para la cual 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
Los vectores resultantes son correspondientes a las respuestas que son utilizadas para la optimización de dos pasos. Además, la siguiente fase de la corrida experimental consta en determinar los efectos activos que influyen sobre las diferentes respuestas.
c) Dibuje los efectos y obtenga las condiciones de operación mas robustas.
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="Frafico de Daniel para el estadístico S/R")
Se puede observar que 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 | |
|---|---|---|---|---|---|---|---|
| - | -14.15591 | -12.99620 | -12.79727 | -12.83975 | -13.43459 | -12.16744 | -14.13078 |
| + | -12.76095 | -13.92065 | -14.11959 | -14.07710 | -13.48226 | -14.74941 | -12.78607 |
e puede observar en los resultados obtenidos el análisis de los datos respecto a los efectos principales de manera individual, como en algunos de los factores muestran. Se observan que los factores B, D y F, son de importancia para este problema, por lo que se continua con la metodología de la realización de la gráfica de interacciones.
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.31236 | -13.51858 | -13.99945 | -14.79323 | -12.19257 | -16.11924 | -13.62602 | -11.68005 | -12.30001 | -12.36638 | -13.69239 | -11.50624 | -12.07595 | -11.96851 | -14.08830 | -14.10690 | -11.57260 | -14.17326 | -12.76229 | -14.56917 | -12.14232 |
| +:- | -11.68005 | -12.07595 | -11.68005 | -12.07595 | -12.14232 | -12.14232 | -11.96851 | -13.99945 | -14.56917 | -11.96851 | -14.56917 | -14.17326 | -14.79323 | -12.36638 | -14.17326 | -12.76229 | -12.76229 | -14.08830 | -11.57260 | -13.69239 | -16.11924 |
| -:+ | -13.99945 | -14.79323 | -14.31236 | -13.51858 | -16.11924 | -12.19257 | -12.36638 | -14.31236 | -13.69239 | -13.62602 | -12.30001 | -14.08830 | -13.51858 | -13.62602 | -11.50624 | -11.57260 | -14.10690 | -11.50624 | -14.10690 | -12.30001 | -12.19257 |
| +:+ | -13.84185 | -13.44594 | -13.84185 | -13.44594 | -13.37958 | -13.37958 | -15.87279 | -13.84185 | -13.27213 | -15.87279 | -13.27213 | -14.06591 | -13.44594 | -15.87279 | -14.06591 | -15.39192 | -15.39192 | -14.06591 | -15.39192 | -13.27213 | -13.37958 |
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 determino utilizar el estadístico correspondiente al valor nominal tipo II, la media y la desviación estándar, por cada una de la combinación del factor 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
Los vectores resultantes corresponden a cada una de las respuestas que se utilizan en la optimización de dos pasos, por lo que se determina los efectos activos que influyen sobre las diferentes respuestas.
Calculo de efectos activos para cada respuesta Respuesta razón S/N
Para este caso se determinarán 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 respuesta del estadístico razón señal ruido, para ello se utilizan los siguientes comandos.
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")
Se puede obsevar en la gráfica que ningun factor es significativo, por lo que se continua con los siguientes analisis.
efectos_principales2=MEPlot(experimento_resp2, main="Efectos princiapes para el experimento")
head(efectos_principales2)
| A | B | C | D | E | F | G | |
|---|---|---|---|---|---|---|---|
| - | -12.88417 | -14.74941 | -13.48226 | -14.00756 | -12.67404 | -12.83975 | -14.04387 |
| + | -14.03268 | -12.16744 | -13.43459 | -12.90930 | -14.24281 | -14.07710 | -12.87298 |
El análisis revelo que los efectos principales individuales con mayor importancia son A, D, B y G. Sin embargo, en el grafico de Daniel los resultados no fueron relevantes.
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 | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| -:- | -13.62602 | -13.69239 | -12.14232 | -12.07595 | -11.68005 | -14.08830 | -15.39192 | -15.87279 | -13.37958 | -14.10690 | -16.11924 | -13.44594 | -13.27213 | -11.57260 | -13.51858 | -13.84185 | -14.17326 | -14.56917 | -11.50624 | -11.96851 | -13.99945 |
| +:- | -15.87279 | -13.27213 | -15.87279 | -13.27213 | -13.99945 | -13.99945 | -11.57260 | -12.14232 | -11.96851 | -11.57260 | -11.96851 | -14.56917 | -12.07595 | -14.10690 | -14.56917 | -11.50624 | -11.50624 | -13.51858 | -14.17326 | -16.11924 | -14.08830 |
| -:+ | -12.14232 | -12.07595 | -13.62602 | -13.69239 | -14.08830 | -11.68005 | -14.10690 | -13.62602 | -16.11924 | -15.39192 | -13.37958 | -13.51858 | -13.69239 | -15.39192 | -13.44594 | -14.17326 | -13.84185 | -13.44594 | -13.84185 | -13.37958 | -11.68005 |
| +:+ | -12.19257 | -14.79323 | -12.19257 | -14.79323 | -14.06591 | -14.06591 | -12.76229 | -12.19257 | -12.36638 | -12.76229 | -12.36638 | -12.30001 | -14.79323 | -12.76229 | -12.30001 | -14.31236 | -14.31236 | -12.30001 | -14.31236 | -12.36638 | -14.06591 |
A continuación se realiza nuevamente el anova del modelo ahora con la consideración de la señal ruido de la característica 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
De acuerdo a los datos obtenidos de la tabla, con 95% de confianza,los factores individuales no tienen un efecto significativo en la variable de respuesta razón señal ruido.
e) ¿Cuál de las dos señales/ruido hace un mejor trabajo en este caso? Argumente.
De acuerdo a los resultados obtenidos se puede argumentar que ningun diseño muestra interacciones por parte de los factores, por lo que, no resultan significativas,esto se puede demostrar y argumentar mediante las gráficas mostradas y el anova que muestra como no existe significancia en ninguno de los diseños. El diseño de la característica nominal tipo II proporciono una mayor cantidad de factores significativos por el contrario el que se llega a adaptar mejor a la situación de este estudio es 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, llegando a concluir que se considera al diseño de entre más pequeño mejor para el presente caso de estudio.
f) Haga un ánalisis para la media. Obtenga el mejor ANOVA, interprete los efectos y determine el mejor tratamiento para la media.
Para el caso de la variable de respuesta promedio, ésta se utilizará para llevar al proceso a su valor esperado. 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")
Se concluye que el factor G resulta ser significativo para el proceso en términos de la media, para confirmarlo, 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)
| A | B | C | D | E | F | G | |
|---|---|---|---|---|---|---|---|
| - | 2.46875 | 2.26875 | 2.01875 | 2.1125 | 2.25 | 1.825 | 2.45625 |
| + | 2.03125 | 2.23125 | 2.48125 | 2.3875 | 2.25 | 2.675 | 2.04375 |
En términos de la media, se observa que el el factor G resulta significativo, por lo que se procede a realizar la gráfica de interacciones para analizar si afecta en la interacción con alguno de los otros factores.
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.6250 | 2.2375 | 2.3125 | 2.7000 | 1.8375 | 3.1000 | 2.4625 | 1.9125 | 2.0625 | 2.0750 | 2.4750 | 1.6750 | 1.8000 | 1.5750 | 2.3625 | 2.5375 | 1.6875 | 2.5500 | 1.9625 | 2.4375 | 1.8125 |
| +:- | 1.9125 | 1.8000 | 1.9125 | 1.8000 | 1.8125 | 1.8125 | 1.5750 | 2.3125 | 2.4375 | 1.5750 | 2.4375 | 2.5500 | 2.7000 | 2.0750 | 2.5500 | 1.9625 | 1.9625 | 2.3625 | 1.6875 | 2.4750 | 3.1000 |
| -:+ | 2.3125 | 2.7000 | 2.6250 | 2.2375 | 3.1000 | 1.8375 | 2.0750 | 2.6250 | 2.4750 | 2.4625 | 2.0625 | 2.3625 | 2.2375 | 2.4625 | 1.6750 | 1.6875 | 2.5375 | 1.6750 | 2.5375 | 2.0625 | 1.8375 |
| +:+ | 2.1500 | 2.2625 | 2.1500 | 2.2625 | 2.2500 | 2.2500 | 2.8875 | 2.1500 | 2.0250 | 2.8875 | 2.0250 | 2.4125 | 2.2625 | 2.8875 | 2.4125 | 2.8125 | 2.8125 | 2.4125 | 2.8125 | 2.0250 | 2.2500 |
Las interacciones que se pueden considerar como 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
SDespués de analizar las posibles interacciones de actividad de los factores de importancia, se concluye que efectivamente son significativas. Sin embargo, presentan un nivel bajo las interacciones de los factores BC y FG. Dichas interacciones se pueden deberse a la importancia de los factores por separado y se deben considerar en la forma de interacción.
g) Determine las mejores condiciones de operación del proceso considerando la señal/ruido del inciso d) y la media.
Las mejores condiciones de acuerdo a los datos que dan evidencia, con un nivel de confianza de 95% que el factor F, corresponde a el tiempo de ciclos ya que tiene efectos significaticos sobre el valor de la media, por lo que se recomienda usar un nivel alto en F, de acuerdo con lo observado anteriormente. Por otro lado la razón señal ruido, con un 95% de confianza ninguno de los factores considerados en el estudio de este caso es suficientemente influyente para lograr maximizar la razón señal ruido para lograr hacer insensible el proceso respecto al efecto del factor de ruido.