감사합니다 @제리피쉬 FUCHS LUBRICANTS CO!
이 프로젝트는 허용되지 않는 조합 스크립트를 사용하는 제약 조건 사양에 대한 매우 중요한 고려 사항을 강조하며 사용자의 가시성을 높이기 위해 여기에서 강조할 가치가 있다고 생각합니다. 또한 사용자가 사용 방법을 알고 있는 경우 보다 유연한 도구(허용되지 않는 조합 기능)를 사용하여 Sheffe Cubic 모델 및 혼합 제약 조건을 지정하는 방법을 보여줍니다!
따라서 제공한 스크립트를 실행합니다( 2021-US-30MP-896 - Final Script.jsl)를 첨부하여 이 디자인을 생성합니다.
DOE(
Custom Design,
{
Add Response( Maximize, "Y", ., ., . ),
Add Factor( Categorical, {"Additive 1", "Additive 2", "Additive 3", "Additive 4", "Additive 5", "Additive 6", “Additive 7”, “Additive 8” }, "Additive", 0 ),
Add Factor( Continuous, 0, 1, "M1", 0 ),
Add Factor( Continuous, 0, 1, "M2", 0 ),
Add Factor( Continuous, 0, 1, "M3", 0 ),
Add Factor( Continuous, 0, 1, "M4", 0 ),
// Manually enter all main effects
Add Term( {1, 1} ), // Additive main effect
Add Term( {2, 1} ), // M1 main effect
Add Term( {3, 1} ), // M2 main effect
Add Term( {4, 1} ), // M3 main effect
Add Term( {5, 1} ), // M4 main effect
// Manually enter all 2-way interactions between mixture components
Add Term( {2, 1}, {3, 1} ), // M1*M2 interaction
Add Term( {2, 1}, {4, 1} ), // M1*M3 interaction
Add Term( {2, 1}, {5, 1} ), // M1*M4 interaction
Add Term( {3, 1}, {4, 1} ), // M2*M3 interaction
Add Term( {3, 1}, {5, 1} ), // M2*M4 interaction
Add Term( {4, 1}, {5, 1} ), // M3*M4 interaction
// Manually enter all interactions between Additive and mixture components
Add Term( {1, 1}, {2, 1} ), // Additive*M1 interaction
Add Term( {1, 1}, {3, 1} ), // Additive*M2 interaction
Add Term( {1, 1}, {4, 1} ), // Additive*M3 interaction
Add Term( {1, 1}, {5, 1} ), // Additive*M4 interaction
// Manually enter all 3-way interactions
Add Term( {2, 1}, {3, 1}, {4, 1} ), // M1*M2*M3 3-way interaction
Add Term( {2, 1}, {3, 1}, {5, 1} ), // M1*M2*M4 3-way interaction
Add Term( {2, 1}, {4, 1}, {5, 1} ), // M1*M3*M4 3-way interaction
Add Term( {3, 1}, {4, 1}, {5, 1} ), // M2*M3*M4 3-way interaction
// Manually enter appropriate Scheffe Cubic interactions
Add Term( {2, 2}, {3, 1} ), // M1^2*M2 interaction
Add Term( {2, 2}, {4, 1} ), // M1^2*M3 interaction
Add Term( {2, 2}, {5, 1} ), // M1^2*M4 interaction
Add Term( {3, 2}, {4, 1} ), // M2^2*M3 interaction
Add Term( {3, 2}, {5, 1} ), // M2^2*M4 interaction
Add Term( {4, 2}, {5, 1} ), // M3^2*M4 interaction
// Now add the disallowed combinations:
Disallowed Combinations
(
(M1 + M2 + M3 + M4 > 1.01 | M1 + M2 + M3 + M4 < 0.99) |
(Additive == "Additive 1" & (M1 < 0.5 | M1 > 0.6)) |
(Additive == "Additive 2" & (M1 < 0.2 | M1 > 0.3)) |
(Additive == "Additive 3" & (M1 < 0.2 | M1 > 0.5)) |
(Additive == "Additive 4" & (M1 < 0.1 | M1 > 0.3)) |
(Additive == "Additive 5" & (M1 < 0.0 | M1 > 0.2)) |
(Additive == "Additive 6" & (M1 < 0.2 | M1 > 0.4)) |
(Additive == "Additive 7" & (M1 < 0.3 | M1 > 0.5)) |
(Additive == "Additive 8" & (M1 < 0.1 | M1 > 0.4))
),
Set Random Seed( 0 ),
Number of Starts(100 ),
Set Sample Size(65),
Optimality Criterion( Name( "Make D-Optimal Design" ) ),
Simulate Responses( 0 ),
Save X Matrix( 0 ),
Make Design}
);
우리는 다음을 얻습니다.

그 결과 강조할 가치가 있다고 생각되는 몇 가지 사항이 있습니다.
허용되지 않는 조합 스크립트의 경우 " M1 + M2 + M3 + M4 = 1"을 지정하려면 먼저 스크립트가 다음에 대한 것임을 이해해야 합니다. Dis- 허용되는 조합, 이는 우리가 지정하는 방식이 조건부 논리(및/또는 부등식 기호)를 사용하고 있음을 의미합니다. 기본적으로 우리가 지정하려는 것과 반대입니다.
따라서 논리적으로 다음을 의미합니다.
M1 + M2 + M3 + M4 != 1
그러나 우리는 끝나지 않았고 사실 이것은 작동하지 않을 것입니다.
다음으로 우리가 이해해야 할 것은 사용자 정의 디자이너가 정확히 1의 값으로 수렴할 수 없다는 것입니다(또는 적어도 그럴 가능성은 없습니다).이러한 이유로 제약 조건 사양 대상인 1.00에 약간의 "공차"를 추가해야 합니다. 이를 위해서는 M1에서 M4까지의 합이 1보다 적지 않은 양(-delta)과 1보다 큰 양(+delta)보다 크지 않아야 한다고 논리적으로 말해야 합니다. 허용하지 않음에 대해 배웠다면 다음과 같을 것입니다. 델타 = 0.01( 우리가 고른다 델타가 작을수록 수렴하는 유효한 설계 솔루션을 찾기 위해 JMP가 공간을 검색하기가 더 어려워집니다.) 따라서 이것은 허용되지 않는 조합 스크립트 사양의 목적을 위해 제약 조건을 다음과 같이 바꿉니다.
M1 + M2 + M3 + M4 > 1.01 | M1 + M2 + M3 + M4 < 0.99
"|" 는 OR 연산자(AND를 의미함)이며 허용되지 않음으로 인해 원하는 것을 얻기 위해 부등식 기호가 뒤집힙니다.

여기서 언급할 가치가 있다고 생각하는 또 다른 사항은 여기에는 여러 제약 조건이 있으며 그러한 경우 허용되지 않는 조합 스크립트의 사양이 상당히 복잡할 수 있다는 것입니다.
여기에서 그것들을 함께 묶을 때 논리적으로 "AND"를 의미하는 "OR" 연산자를 사용하고 있음을 주목하십시오.
또한 예를 들어 제약 조건의 경우:
(가산 == "가산 1" & (M1 < 0.5 | M1 > 0.6))
우리는 실제로 커스텀 디자이너에게 같음 첨가제 1 , 그 다음에 M1은 0.5에서 0.6 사이여야 합니다.이 경우 AND 연산자(앰퍼샌드, 즉 "&")는 그 다음에 문이고 Additive == Additive 1에 대한 이중 등호는 실제로 Additive의 수준을 지정합니다. 등가 l에서 1로 (이는 위에서 M1에서 M4까지의 합이 1이 되는 제약 조건을 지정하는 방법과 관련하여 우리의 생각과 약간 모순됩니다.
따라서 논리 연산자는 상황에 따라 상당히 다르게 작동할 수 있으며 지정하는 변수가 범주형인지 연속형인지에 따라 달라집니다.
이러한 이유로 저는 한 번에 하나의 제약 조건을 지정하고, 설계를 생성하고, 내가 의도한 방식으로 작동하는지 입증한 다음 점진적으로 결합하는 접근 방식을 선호합니다(처음에는 두 가지 조건, 그 다음에는 세 가지 등). 에).