Salut,
Mon objectif est de faire itérer JSL à travers les valeurs de deux colonnes (x1, x2) qui sont utilisées dans les formules d'autres colonnes jusqu'à ce qu'elle réponde aux critères de [colonne (y1) - colonne (y2) = 0; colonne (z1) - colonne (z2) = 0]. Notez que l'équation que j'essaie de résoudre est une équation non linéaire imbriquée où
y1 = f1 (x1, x2, x3, x4 ...)
y2 = f2 (x1, x2, x3, x4 ...)
z1 = y1 + y2
z2 = valeur indépendante
Dans Excel, il était assez simple de décomposer l'équation en plusieurs colonnes pour suivre plus facilement s'il y avait des erreurs de calcul entre les deux. Ensuite, parcourez chaque ligne et effectuez un solveur pour itérer x1 et x2 jusqu'à ce que les critères objectifs soient satisfaits.
Dans JMP, j'ai des difficultés à utiliser la fonction de réduction contrainte pour reproduire cela. Chaque fois que j'exécute le script, il n'a pas l'air de converger car l'objectif cible n'est pas atteint et les valeurs changent constamment. De plus, je ne peux définir qu'un seul objectif cible au lieu de 2. Voici un exemple de mon code JSL. Notez que column_y1 et column_y2 sont des colonnes de formule contenant des variables x1 et x2.
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>Pensez-vous que j'ai besoin de l'équation imbriquée ENTIÈRE dans l'expression pour que cela fonctionne? Ou y a-t-il quelque chose de mal que je fais ici?
Toute aide est grandement appréciée. Merci!