這是有關如何將分段連續函數擬合到資料集的系列文章中的第二篇。 我將在每篇文章的開頭提供該系列中所有其他文章的連結。 他們是:
這篇文章必然有點「數學」。
介紹
在本部落格系列的第 1 部分中,我介紹了一個範例問題來示範「將分段函數擬合到資料集」的問題。 這些數據被分成我們想要擬合(尚未確定)函數的區域。 甚至定義區域邊界的 X 位置仍然未知。 圖 1 顯示了數據和建議區域。
Figure 1圖1
選擇功能
對於每個區域,我們希望擬合不同的函數來對資料進行建模。 在JMP 的非線性平台中,您可以使用您喜歡的任何表達式(例如指數、對數、三角函數等)。一般來說,函數的選擇將完全取決於建模者的智慧、洞察力和主題專業知識。 以下討論使用簡單多項式,其優點是在建立邊界條件時簡化數學。 這些年來這些對我來說效果很好。
我所說的簡單多項式是指以下形式的方程式:
Equation 1公式1
在哪裡:
y = 測量的反應
n = 感興趣的部分
A米= 第 n 段的「第 m」個未知係數
x = 獨立預測變數
多項式可以截斷為任何所需的長度,這取決於要擬合的函數的複雜性。
讓我們分別看看圖 1 的每個部分。
第 1 部分:測試開始前數據
如前所述,該區域可能包含在測試實際開始之前收集的數據。 在這種情況下,理想情況下,y 值可能為零,儘管可能存在一些儀器偏移。 我們希望這是一個常數值,因此我們將第一段的多項式設定為:
Equation 2等式2
第 2 部分:夾具公差拉緊
回想一下,範例資料集可能代表來自拉伸試驗機的數據,其中使用安裝圖將樣本放置在測試儀中。圖 1 所示的第二段/區域(X1 和 X2 之間)可能表示正在考慮夾具公差的區域。 我們可能主要感興趣的是有多少拉力(X2-X1),或需要多少力來消除所有公差。
由於該區域存在曲率,因此我選擇使用二次函數進行擬合。 我還選擇將參數更改為 b 而不是 a,只是為了幫助區分該段中的係數與段 1 中的係數:
Equation 3公式3
第 3 部分:線性/彈性區域
第 3 段可能是測試中最重要的區域,因為我們的目標是了解曲線的彈性區域。 這裡 x 和 y 之間的關係是線性的,可能代表我們範例測試樣本在拉伸夾具中的彈性區域。 我們對該區域的斜率最感興趣,因此我為該方程式選擇了一個簡單的斜率截距形式:
Equation 4公式4
第 4 部分:產量啟動
第 4 部分可能涵蓋範例測試資料中拉伸樣本開始屈服的區域。 目視檢查資料顯示再次存在曲率(類似於段 2),因此我再次選擇二次擬合:
Equation 5公式5
第 5 部分:測試結束後的數據
第 5 段可能會在實際拉伸測試完成後發生。 測試樣本仍處於拉力狀態。 拉伸量 (y) 不變,因此方程式與段 1 類似:
Equation 6公式6
設定邊界條件
現在,我們有五個具有未知係數的方程式(a0、b0、b1、b2、c0、c1、d0、d1、d2 和 e0)以及四個斷點 X1、X2、X3 和 X4。其中每一個都需要確定。 但還需要提供更多資訊。 具體來說,每條曲線都需要在過渡邊界處「連接」。
段 1 到段 2 的過渡
對於段 1/2 過渡,我們希望在 x=X1 處 y1=y2。 這意味著:
Equation 7公式 7
解 b0,我們得到:
Equation 8公式8
這將段 1 的功能與段 2 的功能在 x=X1 處「連接」。 這為我們提供了一種從任何即將出現的方程式中消除 b0 的方法。
剩餘段邊界
無需拼出所有代數,我們就可以對每個其他邊界執行相同的運算(例如 y2(X2) = y3(X2) 等)。 求解 c0、d0 和 e0,我們得出:
Equation 9公式 9
Equation 10公式10
Equation 11公式 11
對線段方程式進行多次代入後,我們得到:
Equation 12公式 12
Equation 13公式 13
Equation 14公式 14
Equation 15公式 15
Equation 16公式 16
現在我們將未知數縮減為 a0、b1、b2、c1、d1、d2、X1、X2、X3 和 X4。 我們如何得到聯合管理計劃來解這些未知數? 和我一起閱讀下一篇文章!