Plataforma JSL y DOE[] para diseño personalizado, ¿puede condicionalmente 'Agregar un factor' basado en el valor de una variable desde una ventana modal?Hola,
Me gustaría crear una secuencia de comandos, en la que, en función de alguna variable de entrada anterior, se envíe un mensaje al objeto DOE[] para que funcione con un factor adicional.
La generación de diseño del DOE ahora es difícil de ejecutar (alrededor de 30 segundos), por lo que estoy buscando una forma eficiente (por ejemplo, ajustarlo antes de enviar el mensaje 'hacer diseño').
Idealmente, me gustaría trabajar con una cláusula if, verificando si dicha variable booleana es verdadera y, de ser así, agregar el factor al diseño personalizado.
Algo de 'pseudocódigo':
AddSpecialFactor = 1; /* decision rule to add factor, will be retrieved from a modal window based on some more complex molecule chemistry input */
D = DOE(
custom design,
Add Factor(continuous, "A",.....),
Add Factor( ...),
..
If (AddSpecialFactor = 1) then Add Factor(....),
Add Term(),
..
If (AddSpecialFactor = 1) then Add Term() ...,
Todas las sugerencias son más que bienvenidas.
secuencias de comandosRe: Plataforma JSL y DOE[] para diseño personalizado, ¿puede condicionalmente 'Agregar un factor' basado en el valor de una variable desde una ventana modal?Esa es una idea genial para la generación de diseño.
Estaba trabajando simplemente tomando diseños de un CSV y generando DOE. https://community.jmp.com/t5/Byron-Wingerd-s-Blog/Automating-Design-Generation/ba-p/407039
Podría funcionar que su concepto de secuencia de comandos genere una tabla de datos y luego use la secuencia de comandos en el blog anterior para cargar y ejecutar la plataforma DOE.
¿Tal vez obtener una lista de nombres de columnas y, si esa lista contiene ciertas palabras, agregar columnas con los niveles de factor apropiados?
Re: Plataforma JSL y DOE[] para diseño personalizado, ¿puede condicionalmente 'Agregar un factor' basado en el valor de una variable desde una ventana modal?Gracias Byron,
Cargar desde una mesa es una buena idea.
Aunque tengo que ajustar el modelo ya que es más complicado como RSM: tiene factores de bifurcación como en la publicación de Peter Goos y Bradley Jones:
Goos y Jones (2019) Diseño experimental óptimo en presencia de factores anidados. Tecnometría.
https://doi.org/10.1080/00401706.2018.1562986
¿Tiene también ejemplos en los que el código se crea en formato de texto y luego se usa para una expresión de evaluación ()?
Me gusta:
DOECODE = "Part of the code " || if(..,) || etc...
.
.
DOEcommand = evaluate(DOECODE);
DOETable = (DOEcommand << Make Table);
Re: Plataforma JSL y DOE[] para diseño personalizado, ¿puede condicionalmente 'Agregar un factor' basado en el valor de una variable desde una ventana modal?Aquí hay un ejemplo de cómo puede escribir este proceso.
Names Default to Here( 1 );
dialog = New Window( "Optional Factor", << Modal,
Outline Box( "Choice",
Text Box( "Add X4?" ),
Text Box( "Click OK to add" ),
Text Box( "Click Cancel to skip" )
),
H List Box(
Button Box( "OK" ),
Button Box( "Cancel" )
)
);
doe = DOE( Custom Design,
{Add Response( Maximize, "Y", ., ., . ),
Add Factor( Continuous, -1, 1, "X1", 0 ),
Add Factor( Continuous, -1, 1, "X2", 0 ),
Add Factor( Continuous, -1, 1, "X3", 0 ), Set Random Seed( 30650037 ),
Add Term( {1, 0} ), Add Term( {1, 1} ), Add Term( {2, 1} ), Add Term( {3, 1} ),
Add Term( {1, 1}, {2, 1} ), Add Term( {1, 1}, {3, 1} ),
Add Term( {2, 1}, {3, 1} ), Set Sample Size( 12 ), Simulate Responses( 0 ),
Save X Matrix( 0 )}
);
// add 4th factor and the associated main effect and interaction terms
If( dialog["Button"] == 1,
doe
<< Add Factor( Continuous, -1, 1, "X4", 0 )
<< Add Term( {4, 1} )
<< Add Term( {1, 1}, {4, 1} )
<< Add Term( {2, 1}, {4, 1} )
<< Add Term( {3, 1}, {4, 1} )
);Re: Plataforma JSL y DOE[] para diseño personalizado, ¿puede condicionalmente 'Agregar un factor' basado en el valor de una variable desde una ventana modal?Gracias !
Funciona brillantemente 