Hola,
Mi objetivo es que JSL repita los valores en dos columnas (x1, x2) que se utilizan en fórmulas de otras columnas hasta que cumpla con los criterios de [columna (y1) - columna (y2) = 0; columna (z1) - columna (z2) = 0]. Tenga en cuenta que la ecuación que estoy tratando de resolver es una ecuación no lineal anidada donde
y1 = f1 (x1, x2, x3, x4 ...)
y2 = f2 (x1, x2, x3, x4 ...)
z1 = y1 + y2
z2 = valor independiente
En Excel, fue lo suficientemente simple como para dividir la ecuación en varias columnas para rastrear más fácilmente si había algún error de cálculo en el medio. Luego, itere a través de cada fila y haga un solucionador para iterar x1 y x2 hasta que se cumplan los criterios objetivos.
En JMP, tengo dificultades para usar la función Minimizar restringida para replicar esto. Cada vez que ejecuto el script, no parece que converja porque el objetivo de destino no se cumple y los valores cambian constantemente. Además, solo puedo establecer 1 objetivo en lugar de 2. A continuación se muestra un ejemplo de mi código JSL. Tenga en cuenta que column_y1 y column_y2 son columnas de fórmula que tienen variables x1 y x2 en su interior.
dt = Current Datatable();
expr1 = abs(:column_y1[i] - :column_y2[i]);
x1 = 0.5;
x2 = 0.2;
For Each Row(
i=Row();
minfun = Constrained Minimize (expr1, {x1(0.1,0.8), x2(0.01,0.5)},
<<MAXITER></MAXITER>¿Crees que necesito tener TODA la ecuación anidada en la expresión para que esto funcione? O hay algo mal que estoy haciendo aquí.
Cualquier ayuda es muy apreciada. ¡Gracias!