Imagine que tengo un proceso de varios pasos, como quizás un proceso de dosificación de aditivos, en el que uso bombas bien caracterizadas para entregar volúmenes establecidos al contenedor y luego, al final, verifico la masa del contenedor. Lo que me gustaría saber es cuánta variación esperar en el peso de llenado final. en mi anterior Blog Mostré cómo simular un nivel categórico. Extender ese enfoque a múltiples entradas será un poco complicado y requerirá mucho más trabajo. Hay otra forma de abordar el problema usando varias herramientas en JMP juntas.
Paso 1. Haz una tabla de datos como esta:
¡En esta tabla hay SOLO 2 FILAS! La columna :Final tiene una fórmula que suma las primeras 4 columnas. También hay un formato especial. Entré en Información de columna y Propiedades y agregué una propiedad Sigma (aproximadamente 2/3 del camino hacia abajo en la lista desplegable de propiedades). Como estoy usando una bomba bien definida similar para cada paso, configuré sigma en 0,25 ml.
Ejecute este bit de JSL para hacer la tabla:
dt=New Table( "Propagation of Error Profiler",
Add Rows( 2 ),
New Column( "Step 1", Set Property( "Sigma", 0.25 ), Set Values( [10, 12] )),
New Column( "Step 2", Set Property( "Sigma", 0.25 ), Set Values( [4, 5] )),
New Column( "Step 3", Set Property( "Sigma", 0.25 ), Set Values( [20, 22] )),
New Column( "Step 4", Set Property( "Sigma", 0.25 ), Set Values( [10, 12] )),
New Column( "Final",Formula( :Step 1 + :Step 2 + :Step 3 + :Step 4 ))
);
Paso 2. Perfil de la fórmula
En el menú Gráfico, elija Profiler. Agregue la columna "Final" al cuadro de diálogo y haga clic en Aceptar.
En el Menú Triángulo Rojo (RTM) de Profiler hay una opción especial disponible para ayudar a visualizar el error conocido de las entradas. (es decir, solo está allí cuando sigma se especifica como una propiedad de columna). Elija la opción Prop of Error Bars.
El siguiente paso en el generador de perfiles es encender el simulador. Esta opción se encuentra debajo de la barra de contorno RTM de Prediction Profiler. Dado que se especifica sigma, el simulador comienza automáticamente con una simulación de distribución normal de cada variable en el punto medio de los valores especificados en la tabla y la propiedad sigma en la columna. (ahorra muchos clics)
En este punto, su generador de perfiles debería verse así:

Paso 3 Empezar a simular
Aquí es donde se pone interesante. Necesito simular la ejecución del proceso suficientes veces para poder controlar bien cuánto variará el peso final. Para obtener un número representativo de carreras, cambie el 5000 en N Runs a algo así como 500,000. (1 millón es bueno, pero 100 millones llevará un tiempo, aunque la estimación al final será un poquito mejor)
Luego abra la barra de contorno Simular a tabla y haga clic en el botón "hacer tabla".
Ahora tengo una mesa con 500K carreras. Cada ejecución tiene un nivel aleatorio diferente para cada una de las entradas del proceso. Al verificar la distribución de las entradas y salidas, puedo ver que el lado alto de mi peso de llenado final proviene principalmente de la ejecución donde las entradas estaban en el lado alto de su rango.
Ahora que tengo una idea bastante buena de la variación en el peso de llenado final, puedo usar un flujo de trabajo típico en la plataforma de distribución para calcular un rango razonable que puedo esperar que ocupen los pesos de llenado.
Paso 4 Obtener límites de 4 sigma
Entonces, sí, podría calcular un rango de desviación estándar de 4 en una calculadora casi tan rápido como puedo hacer lo que voy a hacer a continuación. Pero esto es un poco mejor y mucho más genial.
Analizar>Distribución> elija la columna Final simulada.
En la barra de contorno de Distribución, elija Ajuste continuo y elija Normal.
Desde la barra de contorno Ajustado normal, haga clic en Establecer límites de especificación para k Sigma.
En este caso, voy a elegir 4 sigma. Quiero un peso de llenado final que sea extremadamente improbable que active una alarma o una acción de control.
Último paso, debajo de la barra de contorno Ajustado normal, elija la opción "Guardar límites de especificación"
y no cierre este informe. (Lo ideal sería que JMP pusiera a disposición dinámicamente la propiedad de límite de especificación para el simulador del generador de perfiles, pero este no es el caso y tendremos que transferir manualmente los valores).
Paso 5
Técnicamente he terminado. Realicé una simulación masiva de Monte Carlo del efecto de las entradas del proceso en mi peso de llenado final y luego estimé un conjunto de límites que es poco probable que ocurran por casualidad.
Pero espera hay mas.
Voy a volver al informe del generador de perfiles. En la parte inferior, debajo de la barra de contorno del Simulador, active dos opciones. 1. Límites de especificaciones, y 2. Actualización automática de histograma.
En el cuadro de diálogo de límites de especificación, utilice 45,5 y 49,5 como LCL y UCL. Estos son los valores redondeados que derivamos del análisis en la plataforma de distribución.
A continuación, en la parte superior derecha del generador de perfiles, hay un botón Simular al lado de los gráficos del generador de perfiles, haga clic en eso. También intente mover los controles deslizantes para las entradas del proceso, al hacer esto puedo ver cuánta tolerancia tiene el proceso para la deriva en una o más bombas. También puedo ver con certeza que si tuviera bombas de mayor precisión, podría tolerar mucha más desviación o error de calibración sin arriesgarme a pesos de llenado final altos o bajos.
Este es el script para generar el perfilador en las figuras.
dt<<PROFILER></PROFILER>
Este script generará el análisis desde la plataforma de distribución.
dt<<DISTRIBUTION></DISTRIBUTION>
Espero que encuentres esto útil. Estoy seguro de que alguien (o yo) ha escrito este flujo de trabajo antes, pero no pude hacerlo a principios de esta semana, así que aquí está de nuevo.
Salud,
B