2017-02-19 49 views
1

比方說,我在正方形的每個角上都有4個熱傳感器。傳感器向被加熱物體移動得越多,其值就從0增加到1.比方說,我將這個方塊移動到一個傳感器(F1)靠近加熱物體的另一側的另一個加熱物體。從一邊到另一邊的路上F1開始減少,而讓我們說F4開始增加。如何通過迭代窗口檢測到這種變化?我希望算法告訴我,F1和F4發生了變化,同時F3可能會發生變化,但不會顯着。檢測時間序列數據的變化

  • Iter項目1:F1 = 0.9 - F2 = 0.4 - F3 = 0.1 - F4 = 0.11

  • Iter項目2:F1 = 0.85 - F2 = 0.405 - F3 = 0.1 - F4 = 0.15

  • Iter項目3:F1 = 0.80 - F2 = 0.41 - F3 = 0.12 - F4 = 0.25
+0

什麼大約只是尋找在每個傳感器的衍生物和使用一些適當的截斷值? – pingul

+0

這不是我的最終目標。我試圖插入其他值,取決於值F1和F4之間的變化。 – MasterWizard

+0

這是否意味着您需要_measure of change_而不是某些布爾_「事情正在改變」_解決方案類型? – pingul

回答

0

將多項措施歸結爲一個問題的問題是不可避免的信息損失,因此不會成爲適用於所有情況的單一措施。

從您的意見來看,我會嘗試這樣的:

# F*_d is the derivative of the F* sensor 
m = e^(-(|F2_d| + |F3_d|))*(1 + |F1_d| + |F2_d|) 

的想法是要|F2_d| + |F3_d|接近0,這將使第一項非常1.那麼結果應該是接近1 + |F1_d| + |F2_d|。如果F2_d和F3_d太大,第一項將佔主導地位,您應該看到一個小值。

我會玩弄不同係數和/或移動一些|.|左右來得到你想要的。

(注意|.|指絕對值,即abs(.)

+0

方法或算法的名稱是什麼? – MasterWizard

+0

@MasterWizard據我所知,沒有命名模型,只是個人推理的複合圖案。它可能不會正確地符合你實際想要的東西,這就是爲什麼我建議你玩這些參數的原因。可能會創建一個更好的系統模型,但可能需要更多關於「熱函數」的信息。 – pingul

+0

熱函數根本就不重要,我只是在每個人都能理解的東西之後對這個想法進行建模,我更關心的是檢測到這個變化... – MasterWizard