時(shí)間維度增加了軟件開(kāi)發(fā)人員的應(yīng)用程序開(kāi)發(fā)的復(fù)雜性,這些開(kāi)發(fā)人員正在使用需要隨時(shí)間更改的條件語(yǔ)句(規(guī)則)構(gòu)建邏輯。“時(shí)間是一種觀察到的現(xiàn)象,人類通過(guò)它感知和記錄環(huán)境和宇宙的變化。時(shí)間被稱為幻覺(jué)、維度、流暢的連續(xù)體,以及發(fā)生在同一物理位置的事件之間分離的表達(dá)。”想象一下,您在半夜被狗吠聲吵醒。然后你會(huì)聽(tīng)到廚房里的腳步聲。正當(dāng)你準(zhǔn)備報(bào)警時(shí),你想起你的朋友湯姆周末在你家睡覺(jué),可能只是他從廚房拿了些東西。當(dāng)你聽(tīng)到熟悉的冰箱門(mén)和瓶子叮當(dāng)作響的聲音時(shí),你現(xiàn)在確定是他,立即回去睡覺(jué)。

我們可以從這個(gè)短篇故事中看到,事件的時(shí)間順序加上它們的聯(lián)合可能性,是觸發(fā)我們采取進(jìn)一步行動(dòng)的原因。在上一節(jié)中,我們介紹了形式邏輯,如果世界是一個(gè)靜態(tài)的地方,它將統(tǒng)治世界。不是。如果我們要在計(jì)算機(jī)語(yǔ)言中尋找一個(gè)安全的避難所,以幫助我們?cè)跇?gòu)建邏輯的同時(shí)處理時(shí)間維度,就像音符為音樂(lè)所做的那樣,我們將一無(wú)所獲。為了處理代碼中的時(shí)間,我們可以使用的只是“CPU 時(shí)鐘”。我們經(jīng)常使用 UML 狀態(tài)/流程圖來(lái)幫助我們處理時(shí)間,但 UML 是一種用于指定、可視化、構(gòu)建和記錄軟件系統(tǒng)工件的“語(yǔ)言”。UML 幫助我們交流我們想要構(gòu)建的內(nèi)容,它不是構(gòu)建軟件的框架。隨著時(shí)間的推移,開(kāi)發(fā)人員不僅需要了解不同的路徑和這些路徑的結(jié)果(如這篇關(guān)于形式邏輯和歸納推理的博客文章中所述),而且她還必須掌握這些路徑如何隨時(shí)間變化。換句話說(shuō),時(shí)間增加了復(fù)雜性。正確的規(guī)則引擎將抽象出復(fù)雜性,以便您可以構(gòu)建有時(shí)限的邏輯,但為了做到這一點(diǎn),它應(yīng)該支持以下內(nèi)容:
1.處理過(guò)去(處理過(guò)期或即將過(guò)期的信息)
您通常必須使用僅在固定時(shí)間段內(nèi)有效的信息或合并不完全同步的數(shù)據(jù)流。這在互聯(lián)家庭、互聯(lián)建筑或工業(yè) 4.0 應(yīng)用中非常重要。以下是物聯(lián)網(wǎng)的幾個(gè)具體示例:
如果客廳有運(yùn)動(dòng),然后臥室有運(yùn)動(dòng),那么(……)
如果客廳里有動(dòng)靜,但接下來(lái)的 5 分鐘內(nèi)臥室里沒(méi)有動(dòng)靜,那么(……)
僅當(dāng)來(lái)自兩個(gè)不同傳感器的溫度和濕度數(shù)據(jù)相隔不超過(guò) 10 秒時(shí)才應(yīng)用此規(guī)則
檢查機(jī)器的狀態(tài)是否在兩次連續(xù)測(cè)量之間(以及在一個(gè)窗口內(nèi))發(fā)生了變化
2.處理現(xiàn)在(結(jié)合異步和同步信息)
您經(jīng)常需要在執(zhí)行規(guī)則時(shí)將異步數(shù)據(jù)流(流式 IoT 設(shè)備數(shù)據(jù))與同步信息(輪詢?cè)品?wù) API 端點(diǎn))結(jié)合起來(lái)。
一個(gè)簡(jiǎn)單的用戶需求,例如:“當(dāng)冷凍室溫度高于 4 度時(shí)發(fā)送 SMS 警報(bào)”轉(zhuǎn)化為這條規(guī)則:“當(dāng)冷凍室溫度高于 4 度時(shí),檢查資產(chǎn)數(shù)據(jù)庫(kù)(通過(guò) API)以找到冰箱所在的倉(cāng)庫(kù)。然后檢查該位置的天氣(以驗(yàn)證外面是否不太熱)。然后在 CRM 數(shù)據(jù)庫(kù)中創(chuàng)建一張票,然后將 SMS 發(fā)送給操作冷凍機(jī)所在大樓的人員”。
3.應(yīng)對(duì)未來(lái)(預(yù)測(cè)和異常檢測(cè)的預(yù)測(cè))
異常檢測(cè)通常來(lái)自時(shí)間序列數(shù)據(jù),通常以兩種不同的方式表述:
查找異常值(高于或低于平均值/滾動(dòng)平均值的值)或查找標(biāo)準(zhǔn)偏差高于與預(yù)期值差異太大的預(yù)期值數(shù)據(jù)點(diǎn)的時(shí)間窗口——這些數(shù)據(jù)點(diǎn)主要是統(tǒng)計(jì)得出的。在這種情況下,異常檢測(cè)和預(yù)測(cè)依賴于規(guī)則引擎為觀察到的測(cè)量找到一個(gè)好的“擬合算法”的能力。
深圳市圖揚(yáng)科技有限公司
專注于藍(lán)牙音箱、藍(lán)牙耳機(jī)、車載應(yīng)用、智能家居、IoT物聯(lián)等市場(chǎng)領(lǐng)域方案開(kāi)發(fā)
擁有強(qiáng)大的技術(shù)團(tuán)隊(duì)圍繞MCU微控制器、音頻解碼SoC、藍(lán)牙音頻數(shù)傳BLE及各類微電子傳感器的技術(shù)做相應(yīng)的產(chǎn)品方案設(shè)計(jì)及研發(fā)
電話:+0755-21003695/21003965
網(wǎng)址:www.ndrww.com
郵箱:tome@tome-sz.com/hr@tome-sz.com(簡(jiǎn)歷投寄)