請參閱下面的數據矩陣從傳感器獲得,只是詮釋數字,沒有什麼特別的。尋求一個更好的設計建議在python中的試錯機制?
A B C D E F G H I J K
1 25 0 25 66 41 47 40 12 69 76 1
2 17 23 73 97 99 39 84 26 0 44 45
3 34 15 55 4 77 2 96 92 22 18 71
4 85 4 71 99 66 42 28 41 27 39 75
5 65 27 28 95 82 56 23 44 97 42 38
…
10 95 13 4 10 50 78 4 52 51 86 20
11 71 12 32 9 2 41 41 23 31 70
12 54 31 68 78 55 19 56 99 67 34 94
13 47 68 79 66 10 23 67 42 16 11 96
14 25 12 88 45 71 87 53 21 96 34 41
水平的A到K是傳感器名稱,垂直是傳感器按照定時器方式的數據。
現在我想分析試錯法這些數據,我定義的一些概念來解釋什麼,我想:
Ø源
來源是所有原始數據,我得到
O條目
一個條目的一組所有A至K的傳感器,取垂直第一行例如:該表項是
條25 0 25 66 41 47 40 12 69 76 1
Ø規則
的規則是斷言返回值是「假設」的功能,至今只是「真」或「假」。 例如,我假設傳感器A,E和F的值在一個情況下永遠不會相同,如果一個條目的A = E = F,它會觸發違規行爲,並且此規則函數將返回false。
O範圍:
的範圍是用於選擇垂直條目,例如,前5項
然後功能,基本思想是:
o source + range = subsource(s)
o subsource + rules = valiation(s)
將最終餘想要得到一份清單可能看起來像這樣:
rangeID ruleID violation
1 1 Y
2 1 N
3 1 Y
1 2 N
2 2 N
3 2 Y
1 3 N
2 3 Y
3 3 Y
但是問題是我在這裏定義的規則和範圍很快會變得很複雜,如果你看起來更深一些,它們有太多可能的組合,比如說「A = E = F」,可以定義「B = E = F 「,」C = E = F「,」C> F「......
所以很快我需要一個規則/範圍發生器,它可以接受那些」核心參數「,如」A = E = F 「作爲輸入參數,以後再使用正則表達式字符串。這太複雜了剛剛擊敗了我,獨自離開我可能需要持久化規則的唯一ID,數據存儲問題,規則自窩組合問題......
所以我的問題是:
任何人都知道是否有一些模塊/軟適合這種試錯法計算或我想要的規則定義?
任何人都可以與我分享我描述的更好的規則/範圍設計嗎?
感謝您的任何提示。
RGS,
KC
謝謝,德米安布萊希特,你指出了一條解決問題的道路。 – user478514 2011-06-02 02:17:20