摘 要: 軟件動態演化與環境變化緊密聯系,軟件需要通過自我補足來適應環境變化,但是軟件所在的開放環境信息多樣、復雜難控,雖然上下文感知技術能夠很好地解決這個問題,然而上下文信息數量豐富、結構多樣、難以被有效利用。本文介紹了上下文感知技術、本體理論及相關技術,構建了上下文本體元模型,采用層次化的上下文本體方案,對不同上下文進行統一建模,提高上下文的共享。達到采用形式化的語言顯式表達環境的目的,為建立環境適應性準則做準備。并在此基礎上構建室內舒適節能監控系統的本體模型。
關鍵詞: 上下文感知;本體;軟件動態演化;環境適應性準則
0 引言
在開放環境[1]下,環境對軟件運行的影響日益明顯,軟件需要內部補償來應對外部環境變化,由于環境空間和計算空間的強關聯性、非確定性和高度混雜性,迫切需要建立環境要素到軟件空間的映射關系,形成軟件適應環境的交互準則。建立物理空間與信息空間的對偶關系[2],顯式化表達環境[3],軟件向現實物理空間中的環境上下文提供數據,并從中獲取數據,通過上下文感知計算,將物理世界與軟件聯系起來。實現軟件全面監視、調控并適應環境。然而開放環境下上下文數量豐富,結構多樣,關系復雜,如何獲取、處理、存儲上下文是上下文感知系統的難點。
本文通過基于本體的建模方式,將現實世界的信息與軟件的上下文結合起來,將環境顯式化表達并加以監控,便于考察環境變化時軟件的反應。
據研究,人一生中大概有2/3的時間是在室內度過的,室內環境質量直接關系到人的心情、工作效率,甚至影響人的健康,因此室內環境質量越來越受到人們的重視。影響室內環境的因素多種多樣,人也具有主觀感受,每個人的舒適度感受也因人而異,現實中環境也經常發生一些不能被預料的事,這些為考察軟件動態演化與環境變化的關系提供了條件。通過對室內舒適節能監控系統的建模,來驗證理論的正確性。
本文建立了一種統一的上下文信息模型,然后使用層次化模型,同時將概念映射成層次模型,使用本體的建模方法構建模型。
1 上下文感知計算的相關理論
1.1 上下文感知計算的定義
上下文感知技術是普適計算的核心技術之一,在普適計算的環境中,人和計算機時刻進行著交互,普適計算系統獲取與用戶需求相關的一切上下文信息并時刻為用戶提供服務,這就是上下文感知技術。最早提出上下文感知計算的是美國哥倫比亞大學的Schilit B.N博士以及Theimer M.M,Schilit認為上下文就是位置、人和事物的標識,以及它們的變化,并且將上下文分為三大類[4]:計算上下文、用戶上下文和物理上下文。Ryan等把上下文定義為用戶的位置、環境、特征以及時間。而Dey[5]認為上下文是所有能夠描述用戶和軟件交互所涉及到的實體(如人、物體等)的狀態信息,其中包括用戶和軟件本身。目前,研究人員對上下文有個共性的理解:上下文即環境本身以及環境中個體所包含的或者隱含的可用于描述其狀態和歷史狀態的任何信息,其中的個體既可以是人、地點等物理實體,也可以是軟件、程序、網絡等虛擬實體。由此可知上下文就是軟件環境以及構成環境的各實體及其狀態。上下文包含的范疇非常廣泛,用戶所處環境中任何與系統相關的信息都可以是上下文,但是從軟件交互的角度來看,所有能被系統感知或者潛在地影響系統行為的因素都屬于上下文的范疇。但是由于條件限制,應用程序不可能收集和利用所有信息,Abowd通過總結將上下文感知看做“誰,在哪,什么時間,在做什么”作為實體,并且用這些信息定義為什么這個情景正在發生,即“who′s,where′s,when,what′s and why”。
本文認為建立物理空間與信息空間的對偶關系即將系統能感知的環境信息轉化為系統能理解的數據,即“誰什么時間在哪在什么樣的情況下在做什么”。因此本文將所需上下文分為五類,即用戶上下文、位置上下文、時間上下文、活動上下文以及設備上下文。
1.2 上下文感知計算的研究內容
上下文感知計算主要研究上下文信息的獲取,上下文信息的融合處理以及上下文信息的存儲、查詢和管理。
1.2.1 上下文信息的感知獲取
上下文的感知和獲取是上下文感知計算的前提,是系統了解環境的第一步。一般上下文的獲取方法與上下文的種類直接相關,上下文可以簡單分為低層上下文和高層上下文。低層上下文信息的獲取比較簡單,可以從各種傳感器直接獲得,但是低層上下文信息具有不確定性、模糊性和冗余等特點,一般要經過初步清洗來獲得更高層次的上下文。
上下文信息獲取主要有幾種方法,一種是底層傳感器感知采集獲得,第二種是用戶預設,第三種是通過網絡獲取,第四種是經過系統處理得到能夠使用的高級上下文。
1.2.2 上下文信息的融合及處理
由于底層傳感器的多樣性,使得獲取的信息具有分布、異構和動態的特性,不能直接使用,因此要對上下文進行建模,從而獲得可以直接用于后期使用的高層上下文。
目前上下文建模的方法主要有6種[6],即:鍵值對模型(Key-value Model)、標記模型(Markup Scheme Model)、圖模型(Graphical Model)、面向對象模型(Object Oriented Model)、基于邏輯的上下文模型(Logic Based Model)以及基于本體的上下文模型(Ontology Based Model)。綜合比較集中建模方法,基于本體的建模方法具有形式化程度高,具有較強的表達能力,能夠較好地支持上下文的推理,易于信息的共享等特點能夠較好地表達復雜的環境。因此本文采用基于本體的方法對上下文進行統一建模。
1.2.3 上下文存儲、查詢和管理
上下文數量豐富、結構多樣,具有實時性并且不同上下文間關系復雜,因此對上下文的存儲、查詢以及管理在上下文感知計算中占據重要地位。
2 本體及相關技術
2.1 本體的定義
本體(Ontology)原是一個哲學名詞,指事物的本身,是人類思想認識活動產生的必然結果。近年來,本體的概念被應用于計算機領域,被用于對現實世界進行系統化的描述,方便知識的共享和重用。最早給出Ontology定義的是Neches等人,他們將Ontology定義為“給出構成相關領域詞匯的基本術語和關系,以及利用這些術語和關系構成規定這些詞匯外延的規則的定義”。Neches認為:“本體定義了組成領域詞匯表的基本術語及其關系,以及結合這些術語和關系來定義詞匯表外延的規則。”Gruber提出“本體是概念化的明確的規范說明”,Studer認為本體是“共享概念模型的明確的形式化規范說明”。
雖然不同研究者對本體有不同的定義,但是從內涵上講,都是把本體看做某個領域內不同主體(人、機器等)之間進行交流的一種語義基礎。即在不同主體之間共享確定的概念以及概念間的相互關系,以達到溝通的目的。
對于本體的具體構造,目前公認的是一個本體是由概念(類)、關系、函數、公理和實例等5種元素組成。
2.2 本體的構建
2.2.1 本體描述語言
從本體被引入計算機領域以來,大量研究者為本體的使用發展做出了貢獻,因此誕生了很多本體描述語言,如與Web相關的RDF、RDF-S、OIL、DAML、OWL,與具體系統相關的Ontolingua、cycl、loom。其中OWL是W3C推薦的語義互聯網中本體描述語言的標準,是由DAML和OIL結合發展起來的,集成了其他各本體描述語言的優點,建立在RDF的基礎之上,采用面向對象的方法,利用類和屬性描述領域的結構,用公理來聲明類和屬性。
2.2.2 本體構建方法
目前本體構建還沒有一個統一的標準,主要有以下幾種方法:(1)骨架法;(2)TOVE企業建模法;(3)元本體法;(4)循環獲取法;(5)七步法[7]。綜合考慮研究,本文采用元本體法和七步法相結合來構建本體。
3 基于本體的室內舒適節能監控模型
基于上述技術,用上下文感知技術將物理空間與信息空間[8]連接起來,用本體的方法形式化顯式表達上下文,使系統與環境間的關系清晰可見。并構建了室內舒適節能監控本體模型。
綜合考慮,用OWL語言作為本體建模語言,并且采用Protégé工具構建本體,Protégé提供了簡單易用的圖形化界面,提供了優良的可擴展的大量插件應用,支持豐富的本體描述語言,支持知識的集成及本體的持久化存儲。用Jena2建立本體模型對本體進行處理。Jena是基于Java的開源語義網開發工具包,為解析RDF、RDFS和OWL本體提供了一個集成環境,配備了完善的對本體進行解析、存儲、查詢和基于規則的推理引擎。
3.1 上下文感知系統框架
系統通過傳感器、網絡獲取以及系統預設來感知環境,得到上下文的初始數據,經過上下文建模和預處理得到低層上下文,經過推理等方式得到高層上下文。
本文設計的上下文感知系統框架如圖1所示。
3.2 基于本體的上下文元模型
上下文元本體是一個三元組(MetaContexts,MetaRelations,MateAttribute)。其中MetaContexts是上下文概念集合,MetaRelations是關系的集合,而MateAttributes是與概念相關的屬性集合。上下文元本體模型如圖2所示。
對于本論文設計的系統來說,本體模型的構建就是系統概念及概念間關系的確定描述。
基于上文所述的方法,通過構建室內舒適節能監控系統的本體模型將現實世界與上下文結合起來,顯式化表達環境。
通過構建系統,采用Protégé創建、可視化、操作本體,使用Jena2對本體進行解析、存儲、查詢、進行基于規則的推理。
3.3 系統中概念的確定
根據上下文的本體元模型,分析系統的需求。由于是室內環境舒適度節能監控平臺,系統選取與之相關的環境概念。對系統進行本體建模,建立系統領域的概念模型。
本文所涉及上下文概念主要被分為四個部分:
(1)用戶上下文:用戶姓名、年齡、健康狀況、個人喜好;
(2)時間上下文:時間、日期、季節、年份;
(3)設備上下文:設備名稱、計算能力、操作系統版本、功率、已使用時間、使用壽命、耗電量、網絡類型、寬帶、通信成本;
(4)位置上下文:位置、光照、濕度、溫度、空氣質量、噪音;
(5)活動上下文:感覺。
3.4 模型的實現
將概念采用自頂向下的方式進行分類分層,用于描述領域概念間的類屬關系,并將本體中的概念模塊化。系統本體的部分概念間關系如圖3所示。
在圖3所示框架的基礎上再將概念具體化,最后用Protégé工具創建本體類。本體類圖如圖4所示。
本體類創建完成后,為類添加數據屬性和對象屬性。生成的OWLViz圖如圖5。
同時生成IndoorEnvironment.owl文件,部分代碼如下:
<?xml version="1.0"?>
<!DOCTYPE Ontology [
<!ENTITY xsd http://www.w3.org/2001/XMLSchema#">
<!ENTITY xml ttp://www.w3.org/XML/1998/namespace">
<!ENTITY rdfs http://www.w3.org/2000/01/rdf-schema#">
<!ENTITY rdf http://www.w3.org/1999/02/22-rdf-syntax-
ns#">
]
<Ontology xmlns="http://www.w3.org/2002/07/owl#" xml:base="http://www.semanticweb.org/wqy/ontologies/2014/7/IndoorEnvironment" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:xml="http://www.w3.org/XML/1998/namespace" ontologyIRI="http://www.semanticweb.org/wqy/ontologies/2014/7/Indoor Environment">
4 總結
本文介紹了上下文感知技術、本體理論及相關技術,構建了上下文本體元模型,采用層次化的上下文本體建模方案,對不同上下文進行統一建模,提高上下文的共享。并在此基礎上構建室內舒適節能監控系統的本體模型,使環境能夠顯式化表達,易于觀察環境的變化。下一步的工作是構建環境適應性準則,通過Jena2構建演化規則。
參考文獻
[1] 黃宇,余建平,馬曉星,等.開放環境特性感知技術[J].軟件學報,2011(5):865-876.
[2] CROWLEY J L. Context driven observation of human activity[J]. European Symposium on Ambient Intelligence, 2003, 2875: 101-118.
[3] 呂建,馬曉星,陶先平,等.面向網構軟件的環境顯式化技術[J].中國科學:信息科學,2013(1):1-23.
[4] SCHILIT B, ADAMS N, WANT R. Context-aware computing applications[C]. Santa Cruz: Mobile Computing Systems and Applications, 1994:85-90.
[5] DEY A K. Understanding and using context[J]. Journal Personal and Ubiquitous Computing, 2001,5(1):4-7.
[6] STRANG T, LINNHOFF-POPIEN C. A context modeling survey[C]. Proceedings of the First International Workshop on Advanced Context Modelling, Reasoning and Management, Nottingham, 2004:1-8.
[7] ARUNA T, SARANYA K, BHANDARI C. A survey on ontology evaluation tools[C]. Coimbatore: IEEE, 2011:1-5.
[8] 何廷潤.物聯網物理空間與信息空間融合的業務信息特征分析[J].移動通信,2012(11):20-24.