近年來(lái),隨著物聯(lián)網(wǎng)、移動(dòng)互聯(lián)網(wǎng)、人工智能等信息技術(shù)的發(fā)展,多種不同功能的安防、娛樂(lè)、節(jié)能、健康等智能家居系統(tǒng)開(kāi)始融入千家萬(wàn)戶,*技術(shù)的廣泛應(yīng)用使普通大眾日常生活質(zhì)量顯著提高。復(fù)雜的智能家居系統(tǒng)通常會(huì)存在多種不同功能的智能設(shè)備,物聯(lián)網(wǎng)感知模塊從家居設(shè)備獲取感知數(shù)據(jù)后,通過(guò)家庭智能整合平臺(tái)所提供的功能,把這些功能轉(zhuǎn)換為面向用戶的終端遠(yuǎn)程控制、監(jiān)測(cè)等服務(wù)。
盡管智能家居技術(shù)發(fā)展取得較大進(jìn)步,但真正實(shí)現(xiàn)智能家居“以人為本”的服務(wù)本質(zhì),還存在較大距離。未來(lái)的智能家居應(yīng)當(dāng)重點(diǎn)體現(xiàn)在對(duì)家庭主人服務(wù)的“智能”上,即根據(jù)家庭環(huán)境、主人位置、主人情緒、時(shí)間等因素的變化,主動(dòng)的提供適應(yīng)的服務(wù)。為此,需要持續(xù)關(guān)注智能家居關(guān)鍵技術(shù)發(fā)展,本文研究了一種支持語(yǔ)義推理的智能家居系統(tǒng),通過(guò)在智能家居物聯(lián)網(wǎng)系統(tǒng)中引入語(yǔ)義元素,實(shí)現(xiàn)智能家居語(yǔ)義推理,達(dá)到真正智能家居服務(wù)的目的。
1 物聯(lián)網(wǎng)語(yǔ)義架構(gòu) 為解決物聯(lián)網(wǎng)技術(shù)快速發(fā)展過(guò)程中出現(xiàn)的異構(gòu)互聯(lián)及平臺(tái)智能化問(wèn)題,眾多學(xué)者和組織對(duì)物聯(lián)網(wǎng)語(yǔ)義技術(shù)進(jìn)行了廣泛研究。標(biāo)準(zhǔn)化組織OneM2M在制定物聯(lián)網(wǎng)標(biāo)準(zhǔn)時(shí),將語(yǔ)義技術(shù)引入到物聯(lián)網(wǎng)中,使其支持知識(shí)推理功能,增強(qiáng)了物聯(lián)網(wǎng)的智能性。結(jié)合智能家居環(huán)境中對(duì)語(yǔ)義物聯(lián)網(wǎng)的需求,本文對(duì)oneM2M語(yǔ)義功能模型進(jìn)行改進(jìn),提出了圖1所示的語(yǔ)義架構(gòu)。主要改進(jìn)體現(xiàn)在以下兩方面:增加與設(shè)備控制功能相關(guān)的內(nèi)容,包括指令集和指令處理模塊;設(shè)置設(shè)備對(duì)象池,存儲(chǔ)設(shè)備對(duì)象,包括與物理設(shè)備對(duì)應(yīng)的設(shè)備實(shí)例、由物理設(shè)備基本功能抽象出的抽象設(shè)備、mash-up產(chǎn)生的虛擬設(shè)備。
圖1改進(jìn)后的物聯(lián)網(wǎng)語(yǔ)義架構(gòu)圖
語(yǔ)義分析與查詢:對(duì)應(yīng)用端指令進(jìn)行語(yǔ)義解析(包括直接解析,或調(diào)用推理過(guò)程),轉(zhuǎn)換為對(duì)資源URL進(jìn)行CRUD操作的REST指令,發(fā)送給數(shù)據(jù)處理或指令處理模塊。
推理:針對(duì)語(yǔ)義分析與查詢模塊發(fā)送的指令,基于預(yù)設(shè)規(guī)則,在已有設(shè)備(包括設(shè)備實(shí)例和虛擬設(shè)備)中獲取對(duì)象資源,并確定指令類型;當(dāng)未獲取到*對(duì)象資源時(shí),調(diào)用語(yǔ)義組合模塊。
語(yǔ)義組合:按照特定規(guī)則,通過(guò)對(duì)不同來(lái)源的抽象設(shè)備和虛擬設(shè)備進(jìn)行聚合,向用戶提供新的服務(wù)。該過(guò)程可由用戶需求觸發(fā),也可由平臺(tái)主動(dòng)觸發(fā)。
本體建模:離線過(guò)程,針對(duì)每種新資源(包括設(shè)備、用戶等),預(yù)先創(chuàng)建本體模型。
語(yǔ)義標(biāo)注:為設(shè)備實(shí)例及抽象設(shè)備添加語(yǔ)義信息。
設(shè)備抽象:新物理設(shè)備上線時(shí),創(chuàng)建與之一一對(duì)應(yīng)的設(shè)備實(shí)例,并對(duì)物理設(shè)備的主要功能進(jìn)行抽象,產(chǎn)生若干抽象設(shè)備。
指令處理:將平臺(tái)內(nèi)部指令轉(zhuǎn)換為物理設(shè)備可識(shí)別的私有指令,并完成指令的封裝。
數(shù)據(jù)處理:一方面,對(duì)物理設(shè)備發(fā)來(lái)的數(shù)據(jù)進(jìn)行正確性及有效性驗(yàn)證,轉(zhuǎn)換為統(tǒng)一格式后存入數(shù)據(jù)庫(kù);另一方面,建立并維護(hù)數(shù)據(jù)庫(kù),按需對(duì)數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行修改、刪除等操作。
本體庫(kù):用于存儲(chǔ)本體模型。
設(shè)備對(duì)象池:包括3部分,設(shè)備實(shí)例與物理設(shè)備一一對(duì)應(yīng),抽象設(shè)備是對(duì)物理設(shè)備基本功能的抽象,虛擬設(shè)備通過(guò)mash-up過(guò)程產(chǎn)生。
指令庫(kù):用于存儲(chǔ)物理設(shè)備可識(shí)別的私有指令集(如機(jī)器碼),并維護(hù)平臺(tái)內(nèi)部指令和設(shè)備私有指令之間的映射關(guān)系。
數(shù)據(jù)庫(kù):用于存儲(chǔ)經(jīng)過(guò)處理的設(shè)備數(shù)據(jù)。
2智能家居本體構(gòu)建與查詢
2.1智能家居本體構(gòu)建
現(xiàn)代家庭對(duì)生活質(zhì)量的要求日益提高,智能家居系統(tǒng)需要滿足家庭主人的各種生活服務(wù)需求,多數(shù)文章中僅對(duì)家庭監(jiān)控、照明中的單種需求進(jìn)行分析。為此,從全面性出發(fā),本文對(duì)家庭安全、健康、舒適、通信、理財(cái)、教育、娛樂(lè)等各種服務(wù)需求進(jìn)行了分析,因篇幅原因僅給出結(jié)構(gòu)圖,如圖2所示。
圖2智能家居服務(wù)結(jié)構(gòu)圖
由圖可見(jiàn),在復(fù)雜智能家居環(huán)境中要為家庭提供眾多的人性化服務(wù)需要家用電器類、設(shè)備類、器械類、傳感器類等近百種智能設(shè)備的支持。在上述物聯(lián)網(wǎng)語(yǔ)義架構(gòu)中,智能家居環(huán)境中的設(shè)備本體構(gòu)建是語(yǔ)義推理的基礎(chǔ),對(duì)于每一個(gè)具體型號(hào)的智能家居設(shè)備,都需要建立與之對(duì)應(yīng)的本體模型,本文中設(shè)計(jì)了如圖3所示的本體模型結(jié)構(gòu),包括設(shè)備基本信息DeviceInfo、設(shè)備運(yùn)行狀態(tài)Running Status、功能Function、規(guī)則Rule、數(shù)據(jù)Data等5部分。
圖3智能家居設(shè)備本體模型結(jié)構(gòu)
其中,DeviceInfo家庭設(shè)備基本信息包括了設(shè)備id號(hào)、設(shè)備名稱、本體模型資源標(biāo)識(shí)、設(shè)備型號(hào)、設(shè)備制造商、設(shè)備類型等信息;RunningStatus設(shè)備運(yùn)行狀態(tài)用于描述設(shè)備的運(yùn)行模式、各項(xiàng)功能on/off狀態(tài)等信息;Function設(shè)備功能記錄了對(duì)應(yīng)的設(shè)備私有指令、參數(shù)列表、是否支持自動(dòng)mash-up等信息;Rule設(shè)備規(guī)則記錄了設(shè)備的運(yùn)行或數(shù)據(jù)處理規(guī)則等;Data設(shè)備數(shù)據(jù)記錄了數(shù)據(jù)類型、當(dāng)前值、數(shù)據(jù)單位及數(shù)據(jù)的處理規(guī)則等信息。
本文采用W3C推薦的OWL語(yǔ)言對(duì)家居設(shè)備進(jìn)行本體建模,OWL主要包括類Class和屬性Property兩個(gè)元素,類與類之間的關(guān)系可通過(guò)三元組的方式來(lái)表達(dá),可使用Object Property表示對(duì)象類之間的關(guān)系,使用Data Property表示對(duì)象類與數(shù)據(jù)類之間的關(guān)系。利用Protégé軟件構(gòu)建了一個(gè)智能家居的設(shè)備本體OWL描述文件,由于篇幅原因僅截取部分,如下所示:
2.2智能家居語(yǔ)義查詢
在家居設(shè)備本體模型設(shè)計(jì)好后,對(duì)于實(shí)例模型資源的描述可根據(jù)設(shè)備資源的信息以語(yǔ)義本體為基礎(chǔ)進(jìn)行注釋。另外,在眾多語(yǔ)義數(shù)據(jù)中搜索目標(biāo)對(duì)象,使用SPARQL語(yǔ)言進(jìn)行查詢,其基本格式如下所示:
查詢時(shí)根據(jù)SPARQL描述的三元組關(guān)系對(duì).owl文件中的參數(shù)數(shù)據(jù)進(jìn)行匹配,從而找到目標(biāo)對(duì)象。
3智能家居服務(wù)語(yǔ)義推理 以本體模型為基礎(chǔ)的語(yǔ)義技術(shù)隨著業(yè)務(wù)關(guān)系復(fù)雜程度的提高得到不斷發(fā)展,語(yǔ)義網(wǎng)規(guī)則語(yǔ)言(SWRL)以語(yǔ)義網(wǎng)本體語(yǔ)言(OWL)為基礎(chǔ),融合了RuleML多規(guī)則描述方式,具有較強(qiáng)的規(guī)則描述能力和語(yǔ)義推理能力。本文采用SWRL技術(shù)對(duì)智能家居中的眾多復(fù)雜服務(wù)進(jìn)行語(yǔ)義表達(dá)和規(guī)則建立,并結(jié)合JENA推理機(jī)進(jìn)行推理。
在智能家居環(huán)境中要為用戶提供個(gè)性化服務(wù),可定義各種不同的服務(wù)模式。在各種家居設(shè)備功能定義的規(guī)則基礎(chǔ)上,通過(guò)定義新的SWRL規(guī)則進(jìn)行語(yǔ)義組合向用戶提供人性化服務(wù)。SWRL規(guī)則由antecedent前提部分、consequent結(jié)論部分及多個(gè)元素atom組成,并使用統(tǒng)一資源定位符URI,其形式表達(dá)如下:
其中,元素可以是數(shù)據(jù)型函數(shù)C(x)與關(guān)系型函數(shù)P(x,y),sameAs(x,y),differentFrom(x,y)或者是builtIn(r,x)組成,其中可用“?”表示x變量。
以家庭有害氣體一氧化碳、揮發(fā)性有機(jī)化合物(VOC)氣體(例如甲醛)、二手煙、家庭油煙、家庭周邊有害氣體等防備服務(wù)為例,對(duì)各種氣體檢測(cè)傳感器、新風(fēng)、門(mén)窗、報(bào)警等設(shè)備給出了如表1的部分規(guī)則定義。
表1家庭有害氣體防備服務(wù)規(guī)則定義
4系統(tǒng)實(shí)現(xiàn)
系統(tǒng)平臺(tái)采用Apache嵌入式Web服務(wù)器,開(kāi)發(fā)語(yǔ)言及環(huán)境使用Java和Eclipse,數(shù)據(jù)庫(kù)選用輕量級(jí)Sqlite數(shù)據(jù)庫(kù)。本體建模使用Protégé本體編輯工具并采用OWL語(yǔ)言進(jìn)行形式化描述,zui后使用Jena推理機(jī)進(jìn)行本體模型的包含性、一致性的檢驗(yàn)及自定義規(guī)則的推理。系統(tǒng)運(yùn)行界面如圖4所示。
圖4智能家居服務(wù)管理平臺(tái)運(yùn)行界面(截圖)
5小結(jié) 隨著“以人為本”觀念的普及,人們對(duì)基于物聯(lián)網(wǎng)的智能家居系統(tǒng)已不再滿足簡(jiǎn)單的遠(yuǎn)程控制和管理功能,而更多關(guān)注其自動(dòng)性和智能性。本文在分析多種智能家居服務(wù)的基礎(chǔ)上,構(gòu)建了智能家居本體知識(shí),研究實(shí)現(xiàn)了具有語(yǔ)義推理功能的智能家居系統(tǒng),該工作對(duì)智能家居系統(tǒng)的智能化應(yīng)用發(fā)展具有指導(dǎo)意義。