Sto usando la piattaforma Space Filling Desing per eseguire un progetto di riempimento flessibile veloce. Vorrei aggiungere uno script di combinazione non consentito in cui se un livello per una variabile è uguale a un determinato valore, una colonna separata è limitata a un valore specifico. Ho il seguente script, ma lo script non funziona. Ho provato: F1 == 1 & F11 > 0 | F2 == 1 & F12 > 0, ma questo rimuove tutti i casi di F1 o F2 = 1 poiché F11 o F12 non sono mai effettivamente uguali a 0 anche se per la simulazione al computer queste variabili (F11 e F12) possono essere 0. Posso "confonderlo" avendo F11 e F12 che vanno da -1 a 5, quindi aggiungere combinazioni non consentite per F1 e F2 = 2 o 3 per avere un F11 o F12 negativo. Ciò limiterà i valori negativi visualizzati solo per F11 e F12 quando F1 o F2 = 1, in modo tale che programmeremo il software in modo che sia 0 anziché negativo, ma questa soluzione sembra meno elegante. C'è un modo per specificare le combinazioni non consentite in modo tale che se F1|F2 == 1 allora F11F12 = 0?
crt = DOE(
Space Filling Design,
{Add Response( Maximize, "Y", ., ., . ),
Add Factor( Categorical, {"1", "2", "3"}, "F1"),
Add Factor( Categorical, {"1", "2", "3"}, "F2"),
Add Factor( Continuous, 0, 75, "F3", 0 ),
Add Factor( Continuous, 0, 75, "F4", 0 ),
Add Factor( Continuous, 0, 0.25, "F5", 0 ),
Add Factor( Continuous, 0, 0.25, "F6", 0 ),
Add Factor( Continuous, 3, 5, "F7", 0 ),
Add Factor( Continuous, 6, 10, "F8", 0 ),
Add Factor( Continuous, 0, 1.8, "F9", 0 ),
Add Factor( Continuous, 0, 1.8, "F10", 0 ),
Add Factor( Continuous, 0, 5, "F11", 0 ),
Add Factor( Continuous, 0, 5, "F12", 0 ),
Add Factor( Continuous, 800, 1200, "F13", 0 ),
Set Random Seed( 2062716779 ),
Disallowed Combinations(
If(F1==1,F11= 0) | if(F2==1,F12=0)
), FFF Optimality Criterion( MaxPro ),
Space Filling Design Type( Fast Flexible Filling, 130 ),
Set Run Order( Randomize )}
);
dtcur = crt << Make table;
dtcur << delete columns("x1","x2");Ciao jshaw04,
La soluzione migliore potrebbe essere semplicemente creare il design senza la combinazione non consentita e modificare manualmente i valori su 0 ove necessario. Ottieni comunque tutte le proprietà di riempimento dello spazio con gli altri fattori.
Per quanto riguarda la tua idea di confonderlo con il valore negativo, puoi usarlo se vuoi giocare con la proporzione di quanto spesso F1 == 1. Cioè se giochi con quanto negativo è il valore più basso per F11, la distribuzione di F1 cambierà se usi qualcosa del genere nella combinazione non consentita (in modo simile per F2/F12):
(F1 == 2 | F1 == 3) & F11 < 0 | F1 == 1 e F11 > 0
Spero possa aiutare,
Ryan
Ciao jshaw04 . Penso che non puoi fare quello che cerchi di fare usando combinazioni non consentite. Il mio ragionamento è che si presume, combo non consentite o meno, che tutti i fattori saranno vari, ma forse ridotti in qualche modo. Prescrivendo che alcuni fattori non verranno variati, si stabiliscono i seguenti scenari:
* Se F1=1, F11 non è un fattore (non variato).
* Se F2=1, F12 non è un fattore.
* Se F2=1 e F2=1, utilizzare i fattori da F1 a F10 e F13
* Se F1 !=1 e F2!=1 usano i Fattori da F1 a F13.
Un possibile approccio, supponendo che io abbia ragione, è creare quattro design e combinarli. Un altro approccio consiste nel post-elaborare le impostazioni di progettazione e impostare F11 o F12 su zero in base a F1 o F2. Probabilmente prenderei l'ultimo approccio e verificherei che tutto sia a posto in Design Evaluation.
Ovviamente se sbaglio, immagino che imparerò qualcosa con te. 