定義因素約束不是我應該單獨留下或假裝不存在的東西嗎?
聰明人甚麼都不做。 ——馬庫斯·圖留斯·西塞羅
如果您對自定義設計器中的“定義因子約束”部分感到害怕,那麼您來對地方了。顯然,即使是 Cicero 也可能發現 JMP 定制設計器的“定義因子約束”部分令人望而生畏。

對於那些還不知道它的易用性的人來說,在該部分中選擇“無”以外的任何內容可能會有點傷腦筋。 事實證明,JMP 已經擁有讓您輕鬆體驗所需的工具。
等待。 我什至不確定我是否知道“因素限制”是什麼意思。 這些是什麼? 它們的用途是什麼?
在許多實驗中,低水平和高水平的因素以不可能的方式結合在一起,會破壞設備,或者變得極其昂貴。 例如,假設一家公司正在進行一項實驗,以最大限度地提高特定流程的產量。 公司可以使用兩台機器:機器A的快速撥號是1-5,但是機器B較新,它的撥號是1-6。 這將是了解如何在設計實驗時使用因子約束的好時機。
好的,我很好奇。 你能告訴我第一個選項(指定線性約束)嗎?
在下圖所示的實驗中,假設您是一名實驗者,試圖在包括溫度和壓力的烘箱過程中最大限度地提高反應的產率。 一個問題是烤箱不能同時在高溫下運行和高壓——烤箱會破裂。 因此,您需要一種方法來限制 DOE 的設計空間,以便不會創建會破壞烘箱的運行。 這是指定線性約束選項的絕佳機會。

要填充線性約束部分,走出自定義設計器並可視化設計空間會很有幫助。 使用 Graph Builder 並與一些工藝專家交談,您可以繪製下圖,其中藍色陰影區域內發生的任何 DOE 運行都保證不會破壞烘箱。 過程專家(和維護人員)很高興您承諾不在圖表右上角的空白區域進行試驗。

現在,您所要做的就是找到一種方法將圖形轉換為填充自定義設計器的線性約束部分的方法。 事實證明,Graph Builder 已經可以做到這一點。 您所要做的就是隱藏/排除除構成極限斜線的兩行之外的所有行,然後向圖形生成器詢問適合剩餘點的線的方程。

該圖告訴您,只要 Y(溫度)低於該線,烤箱就可以正常運行。需要一點點代數和替換:將 2x 添加到等式的每一邊,然後用溫度代替 Y,用壓力代替 X,您就可以在自定義設計器的線性約束部分中填寫所需的內容。


製作 DOE 表後,您可以使用 Graph Builder 檢查並看到 DOE 正在避開烘箱中高溫高壓的麻煩區域。

這看起來很簡單。 前面使用具有不同約束的機器的示例怎麼樣? 應該如何處理?
具有不同約束的機器最好使用第二個選項處理,即不允許的組合過濾器。 使用此過濾器指定要在實驗中排除(即不允許)的因素組合。 考慮以下三台機器的問題列表,您希望將其包括在實驗中以最大限度地提高生產率。 每台機器都設計有一個範圍為 1-5 的皮帶速度設置和一個有四個位置的魔術桿,標記為 1-4(沒有人知道它的作用;你將它作為一個因素包括在內,因為你確信它什麼都不做,你想從所有機器上刪除它):
- 機器 A 不能低於 2 的皮帶速度或電機過熱
- 機器 B 不能超過 4 的皮帶速度,否則它會使斷路器跳閘
- 機器 C 有一個魔法槓桿,除非有一個非常強壯的人在操作它,否則不能將其推到位置 4。
使用界面使不允許的組合過濾器看起來像下面的示例,告訴 JMP 不要選擇任何符合上面列出的任何約束的運行。

製作 DOE 表後,使用圖形生成器驗證約束是否得到正確處理。

好的,前兩個選項現在看起來很簡單。 第三種選擇肯定是每個人都害怕的,對吧?
實際上,Disallowed Combinations Script 通常是在 DOE 中約束因子的最簡單方法,因為 JMP 已經完成了這項工作;您只需要復制/粘貼到腳本框中。 回想第一個例子,在允許的溫度/壓力設計空間的邊緣有一條直線。 如果您需要的不是直線,而是曲線怎麼辦? 這不是可以在線性約束部分或不允許的組合部分中輸入的內容。 不過,很容易進入“不允許的組合腳本”會話。 在這種情況下,關鍵是使用 Fit Y by X 平台將一條線(多項式,二階)擬合到允許設計空間的彎曲邊界,然後復制 JMP 已經創建的公式(注意在下圖,其他角的點被排除但未隱藏,額外的線是使用“工具”菜單中的“線”工具繪製的)。

將直線的公式從 Fit Y by X 平台複製到 Custom Designer 中的 Disallowed Combinations Script 部分,即可完成 99% 的操作——您需要做的就是將公式中的“=”更改為“>” ',因為任何大於此曲線的溫度都應被禁止。

構建 DOE 表後,您可以驗證分隔可接受運行與不可接受運行的線現在是彎曲的。

現在這似乎更容易了。 我想我什麼都不怕,對吧?
好吧,我想,如果西塞羅知道 JMP 中的 DOE 約束有多麼簡單(並且活得足夠長以使用 JMP),他的話應該是:
明智的實驗者不懼怕任何因素約束。 ——開明的西塞羅
我已將 JMP 日誌附加到這篇博文中,以便您可以跟進並重新創建上述所有內容。 作為一項挑戰,請考慮如何使用三個(或更多)因素而不是兩個來創建約束(提示:考慮“擬合模型”平台如何顯示公式)。
不是pquery在jsqle裡定義成psql 連.csie在crowe的分析軟件裡都定義不了MDM都是專家分析。
http://cryphosnegative.blogspot.com/
對於特定的因子水平,我們只能執行 N 次運行,這種約束怎麼樣? JMP 能處理這個問題嗎?
@Jed_Campbell @Copying Jed 就是這樣的。對於特定的因子水平,我們只能執行 N 次運行,這種約束怎麼樣? JMP 能處理這個問題嗎?
@羅伯特·利爾您能解釋一下您在問什麼嗎?我不確定我是否明白你的意思。
@Jed_Campbell是的,謝謝。如果我創建一個經典的 3 因子、2 級設計,我會得到 8 次運行。重點關注因子 X3,我在 L1 級別進行了四次運行,在 L2 級別進行了四次運行。限制是我們只能執行兩次 L2。我可以利用這個限制來產生最佳設計嗎?理想情況下,我希望因子 X1 和 X2 的功效至少為 80%,然後最大化 X3 的功效。
對於那些在設計混合因子實驗時需要使用約束的人,我的同事@yasmine_hajar寫了一本很棒的指南。
這裡討論得很精彩!
請問有人知道在禁止組合腳本中是否可以寫條件語句嗎?
例如:兩個因素 X1 和 X2;
如果:0 <= X1 <= 1
那麼:X2 > 10
(那不是我用的程式碼)
我的問題比這複雜得多,我很樂意討論,但我想先確認一下條件語句是否有效,然後再詳細說明。當我插入條件約束並嘗試產生設計時,JMP 顯示:
“模型大綱中選定的項目與前面的項目呈線性相關。請按‘移除項目’按鈕重試。”
我不確定這是否意味著我的約束條件添加錯誤,還是 JMP 本身就不支援條件約束。非常感謝您的幫忙。
嗨@MC_Kowalski
是的,這可以實現,但 JMP 更傾向於使用 AND 語句編寫條件。在下圖所示的範例中,我指定當 X1 在 0 到 1 的範圍內且 X2 <= 10 時,不允許任何值,這與您上面編寫的 IF 條件在功能上是等效的。如果您使用「不允許的組合」過濾器設定不允許的範圍,然後將 DOE 腳本儲存到腳本窗口,JMP 可以為您自動編寫這些語句。

@Jed_Campbell
感謝您的及時回覆!問題已解決!
我當時在處理一個包含 3 個因素/維度的約束,並透過對輸入空間進行 10,000 次 FFF 空間填充設計來檢查它。