引 言
1999 年,基于美國麻省理工學院率先提出物聯網(Internet of Things,上下IoT)的文感物聯網智概念。2005 年國際電信聯盟(International Telecommunication Union,ITU)發布的報告中全面定義了物聯網,物聯網即“物物相連的互聯網”的簡稱 [1-2]?;谖锫摼W,客觀世界中的任何現實事物都可進行信息交互,物聯網有機整合了人類社會、現實事物和信息數據,構建了一個一體化的大型智能社會服務平臺。智能化物聯網并不全部依賴于用戶的請求并做出相應的反應,而是在用戶未發出請求的狀態下智能化地預測用戶請求,準確判斷出何時該為用戶提供服務。因此,智能交互技術成為物聯網研究的熱點。
在物聯網智能交互過程中,上下文感知是物聯網系統預測下一步行為最有效、最直接、最可靠,有時甚至是唯一的依據?;谏舷挛母兄奈锫摼W智能交互模型,在上下文推理技術的支撐下,物聯網系統能夠自動發現和使用信息,減少人類社會、現實事物和信息之間的數據交互,提升用戶體驗。物聯網環境下上下文感知交互技術的實現方法如下:
(1) 定義若干條推理規則,構成一個推理模型 ;
(2) 模型以上下文狀態改變為激勵,自動完成規則匹配, 一旦上下文狀態的變化符合一個或多個規則時,智能交互系統就會自動按照規則執行相應的操作。
基于上下文感知的智能交互是物聯網實現人類社會、現實事物和信息數據融合的主要技術支撐。
1 Storm框架簡介
Storm 框架基于數據流的實時處理系統,提供了大吞吐量的實時計算能力,能夠滿足計算機集群實時分布式計算的需求。Storm 框架已被廣泛應用于實時搜索、實時分析、在線機器學習、分布式遠程調用以及數據流處理等場合,很好地解決了 Hadoop 在數據處理實時性方面的問題,其實時處理的過程可以類比為Mapreduce 批處理。在一個計算集群中, Storm 框架能夠保證在較短時間內將各個消息處理完,將每個消息的處理時間降低到毫秒級。
Storm 框架的核心思想是采用流式處理模型,不斷處理連續有序到達的數據,顯著降低系統的數據處理時間。在Storm 數據流實時處理框架中,主要包括 Spout 計算和 Bolt 計算兩種,這兩種計算分別由用戶的不同接口實現。其中, Spout 計算通常用于處理外部導入的拓撲信息,處理結束后形成數據流傳遞給 Bolt。
2 上下文定義
上下文是一種用來表征實體屬性的信息或數據。通常情況下,實體與上下文可以按照某種規則實現轉換 [3-4]。例如, 物聯網環境下的智能交互可以用地點表征人或車輛,在此過程中,人或車輛就是實體 ;與此同時,地點也可作為實體,表征地點的屬性信息可定義為經緯度、風速、光線強度、溫度等, 即地點既可作為屬性信息出現,也可作為實體出現?;诖?, 本文給出客觀事物和上下文的定義。
定義1 :實體是指在人類社會、現實事物和信息數據組成的三元世界中具有相同屬性信息的一類客觀事物,為簡化起見,任何一種實體都可用字符 A :Entity 表示。
定義 2 :上下文是指用來表征實體屬性的信息,上下文信息可以分為靜態上下文信息和動態上下文信息兩類。其中靜態上下文信息用來保證實體在一定時間內保持穩定的屬性,通??杀硎緸?:
式中 :E 代表上下文信息對應的實體對象 ;V 代表上下文信息的出處 ;S 代表上下文信息的數值 ;t 代表當前上下文信息的時間標記。在物聯網環境下的智能交互過程中,實體的上下文信息出處一般有三種,包括人工錄入的信息、傳感器獲取的信息以及推理機推理的信息。相比靜態上下文信息,動態上下文信息增加了一維時間標記,即上下文信息的實效時間。動態上下文信息可以表示為 :
式中,ts 代表上下文信息的實效時間。對于某些不存在實效時間實體的部分,動態上下文信息可以轉化為靜態上下文信息。
上下文信息是物聯網環境下智能交互模型的主要數據分析與推理對象?;谏舷挛男畔⒅腥≈?V 的不同,可將上下文信息分為數值型和實例型。如溫度、經緯度、風速、質量等都是取值十分簡單的數值型上下文。數值型上下文還可基于數值類型繼續分為布爾型、時間型、字符型和純數字型等。而取值為非數值的實例型上下文有任務、建筑、地點以及各種設備等。前文已經介紹過,物聯網環境下實體和上下文之間可以互相轉化。
3 基于上下文感知的智能交互模型
基于 Storm 框架和上下文定義,可構建基于上下文感知的物聯網環境下的智能交互模型,該模型能夠將物聯網傳感器采集到的所有異構、分布式、非結構的數據統一封裝為便于智能交互實時處理的上下文與實體的數據流,作為一個統一的數據處理格式。
本文構建的物聯網環境下基于上下文感知的智能交互模型包括上下文適配、上下文存儲和上下文自動感知三部分。上下文適配的任務是進行傳感器采集數據與上下文信息之間的轉換 ;上下文存儲的任務是實現海量數據存儲與高速數據共享 ;上下文自動感知是智能交互的關鍵,主要利用規則進行推理以及處理高層應用的各種請求。整個智能交互模型基于Storm 框架實現。其中,上下文適配和上下文存儲通過 Spout計算過程實現,而上下文感知通過 Bolt 計算過程實現。構建的智能交互模型如圖 1 所示。
圖1 智能交互模型整體結構示意圖
3.1 上下文適配模塊
物聯網環境下,數據采集設備是物聯網與具體應用環境信息交互的主要途徑。數據采集設備包括系統錄入設備、人工輸入設備以及各種類型現場采集數據的傳感器設備等。數據采集設備采集獲取到的數據一般不具有實際意義,必須經過適當變換才能轉換為智能交互系統正常使用的數據。通常情況下,數據采集設備獲取的數據格式為數字信號、點信號、字符信號以及各種離散的參數數據。將這些實際意義難以直接識別的信號轉換為系統可以高速自動識別的上下文信息的過程就是上下文適配。上下文適配過程可用符號表示為Adaptation :S → C。其中,S 代表數據采集設備獲取的直接信息,C 代表經過上下文適配后輸出的上下文信息。具體的上下文適配過程如圖 2 所示。
圖 2 中上下文 適配的核心是 數 據采集 模 塊(Data Acquisition,DAQ)。該模塊將物聯網末端數據采集設備獲取到的各種信號轉化為智能交互系統能夠直接識別、具有特定含義的數據。物聯網末端采集到的各種數據經過上下文適配后,實現了對異構、分布式、非結構化數據的結構化轉換, 形成利于存儲、檢索、處理的高效上下文信息。上下文適配為后續的上下文存儲和上下文自動感知奠定了基礎。
3.2 上下文存儲模塊
上下文存儲模塊的功能是實現上下文信息的持久化存儲與高效共享。上下文存儲模塊由歷史上下文存儲單元、非安全上下文存儲單元和上下文存儲單元三部分組成。三部分的存儲與共享功能各不相同 :歷史上下文存儲單元的功能是進行上下文回溯,內部存儲失效的上下文信息 ;非安全上下文存儲單元內存儲存在危險的上下文信息 ;上下文存儲單元是上下文存儲的核心,主要用來存儲短時間內活躍的上下文,在確保信息完整性的條件下力求能夠高效檢索上下文信息。上下文存儲模塊的工作過程如圖 3 所示。
圖 3 上下文存儲過程
由圖 3 可知,上下文存儲過程由上下文預處理器和上下文管理器主導完成。上下文預處理器主要實現上下文信息的完整性、冗余性和安全性查驗,將存在危險的上下文信息轉移到非安全上下文存儲單元,并刪除失效的和過度冗余的上下文信息,確保上下文信息準確完整。上下文管理器的功能比較簡單, 用以監控上下文信息的時效性,并將失效的上下文信息轉移至歷史上下文存儲單元。通過這種上下文存儲過程,提升上下文數據的存儲與檢索效率。
3.3 上下文自動感知模塊
物聯網環境下的上下文感知智能交互模型首先通過上下文適配實現末端采集數據到上下文信息的映射,然后通過上下文存儲實現上下文信息的高效存儲與共享,最后通過上下文感知模塊自動發現有用的上下文信息,并對系統高層指令做出快速反應。上下文自動感知模塊是一種高效的信息服務模式,基于上下文感知技術建立上下文池中數據與高層服務需求之間的聯系,運用智能計算和處理技術對高層服務需求快速地做出反應 [5]。上下文自動感知模塊的具體實現過程如圖 4 所示。
由圖 4 可知,上下文池中的數據首先通過上下文感知器實現捕獲與感知 ;然后利用上下文解釋器將底層上下文信息轉換為高層識別對象,高層識別對象能夠被智能交互系統直接識別,并且在轉換過程中,上下文解釋器能夠將分散的上下文信息轉換為復雜的上下文對象,有利于特定上下文信息的有效表達 ;最后通過上下文聚合器將上下文對象與知識庫中的規則進行結合,基于推理機實現規則匹配,并將匹配結果通過轉換相應操作的執行指令,傳遞給執行適配器。執行適配器在接收到還要執行指令的高級上下文后,將經執行結果產生的上下文反饋給上下文存儲模塊的上下文池。
4 結 語
本文在對現有物聯網環境下智能交互模型總結與分析的基礎上,構建了一個基于上下文感知的物聯網智能交互模型。該模型以 Storm 框架為基礎,將數據采集設備輸出的異構、分布式、非結構化數據轉化為上下文信息,并實現了上下文信息的高效存儲與自動感知。該模型為物聯網環境下的智能交互提供了一種新的思路。