摘 要: 軟件動態(tài)演化與環(huán)境變化緊密聯(lián)系,軟件需要通過自我補足來適應環(huán)境變化,但是軟件所在的開放環(huán)境信息多樣、復雜難控,雖然上下文感知技術能夠很好地解決這個問題,然而上下文信息數量豐富、結構多樣、難以被有效利用。本文介紹了上下文感知技術、本體理論及相關技術,構建了上下文本體元模型,采用層次化的上下文本體方案,對不同上下文進行統(tǒng)一建模,提高上下文的共享。達到采用形式化的語言顯式表達環(huán)境的目的,為建立環(huán)境適應性準則做準備。并在此基礎上構建室內舒適節(jié)能監(jiān)控系統(tǒng)的本體模型。
關鍵詞: 上下文感知;本體;軟件動態(tài)演化;環(huán)境適應性準則
0 引言
在開放環(huán)境[1]下,環(huán)境對軟件運行的影響日益明顯,軟件需要內部補償來應對外部環(huán)境變化,由于環(huán)境空間和計算空間的強關聯(lián)性、非確定性和高度混雜性,迫切需要建立環(huán)境要素到軟件空間的映射關系,形成軟件適應環(huán)境的交互準則。建立物理空間與信息空間的對偶關系[2],顯式化表達環(huán)境[3],軟件向現(xiàn)實物理空間中的環(huán)境上下文提供數據,并從中獲取數據,通過上下文感知計算,將物理世界與軟件聯(lián)系起來。實現(xiàn)軟件全面監(jiān)視、調控并適應環(huán)境。然而開放環(huán)境下上下文數量豐富,結構多樣,關系復雜,如何獲取、處理、存儲上下文是上下文感知系統(tǒng)的難點。
本文通過基于本體的建模方式,將現(xiàn)實世界的信息與軟件的上下文結合起來,將環(huán)境顯式化表達并加以監(jiān)控,便于考察環(huán)境變化時軟件的反應。
據研究,人一生中大概有2/3的時間是在室內度過的,室內環(huán)境質量直接關系到人的心情、工作效率,甚至影響人的健康,因此室內環(huán)境質量越來越受到人們的重視。影響室內環(huán)境的因素多種多樣,人也具有主觀感受,每個人的舒適度感受也因人而異,現(xiàn)實中環(huán)境也經常發(fā)生一些不能被預料的事,這些為考察軟件動態(tài)演化與環(huán)境變化的關系提供了條件。通過對室內舒適節(jié)能監(jiān)控系統(tǒng)的建模,來驗證理論的正確性。
本文建立了一種統(tǒng)一的上下文信息模型,然后使用層次化模型,同時將概念映射成層次模型,使用本體的建模方法構建模型。
1 上下文感知計算的相關理論
1.1 上下文感知計算的定義
上下文感知技術是普適計算的核心技術之一,在普適計算的環(huán)境中,人和計算機時刻進行著交互,普適計算系統(tǒng)獲取與用戶需求相關的一切上下文信息并時刻為用戶提供服務,這就是上下文感知技術。最早提出上下文感知計算的是美國哥倫比亞大學的Schilit B.N博士以及Theimer M.M,Schilit認為上下文就是位置、人和事物的標識,以及它們的變化,并且將上下文分為三大類[4]:計算上下文、用戶上下文和物理上下文。Ryan等把上下文定義為用戶的位置、環(huán)境、特征以及時間。而Dey[5]認為上下文是所有能夠描述用戶和軟件交互所涉及到的實體(如人、物體等)的狀態(tài)信息,其中包括用戶和軟件本身。目前,研究人員對上下文有個共性的理解:上下文即環(huán)境本身以及環(huán)境中個體所包含的或者隱含的可用于描述其狀態(tài)和歷史狀態(tài)的任何信息,其中的個體既可以是人、地點等物理實體,也可以是軟件、程序、網絡等虛擬實體。由此可知上下文就是軟件環(huán)境以及構成環(huán)境的各實體及其狀態(tài)。上下文包含的范疇非常廣泛,用戶所處環(huán)境中任何與系統(tǒng)相關的信息都可以是上下文,但是從軟件交互的角度來看,所有能被系統(tǒng)感知或者潛在地影響系統(tǒng)行為的因素都屬于上下文的范疇。但是由于條件限制,應用程序不可能收集和利用所有信息,Abowd通過總結將上下文感知看做“誰,在哪,什么時間,在做什么”作為實體,并且用這些信息定義為什么這個情景正在發(fā)生,即“who′s,where′s,when,what′s and why”。
本文認為建立物理空間與信息空間的對偶關系即將系統(tǒng)能感知的環(huán)境信息轉化為系統(tǒng)能理解的數據,即“誰什么時間在哪在什么樣的情況下在做什么”。因此本文將所需上下文分為五類,即用戶上下文、位置上下文、時間上下文、活動上下文以及設備上下文。
1.2 上下文感知計算的研究內容
上下文感知計算主要研究上下文信息的獲取,上下文信息的融合處理以及上下文信息的存儲、查詢和管理。
1.2.1 上下文信息的感知獲取
上下文的感知和獲取是上下文感知計算的前提,是系統(tǒng)了解環(huán)境的第一步。一般上下文的獲取方法與上下文的種類直接相關,上下文可以簡單分為低層上下文和高層上下文。低層上下文信息的獲取比較簡單,可以從各種傳感器直接獲得,但是低層上下文信息具有不確定性、模糊性和冗余等特點,一般要經過初步清洗來獲得更高層次的上下文。
上下文信息獲取主要有幾種方法,一種是底層傳感器感知采集獲得,第二種是用戶預設,第三種是通過網絡獲取,第四種是經過系統(tǒng)處理得到能夠使用的高級上下文。
1.2.2 上下文信息的融合及處理
由于底層傳感器的多樣性,使得獲取的信息具有分布、異構和動態(tài)的特性,不能直接使用,因此要對上下文進行建模,從而獲得可以直接用于后期使用的高層上下文。
目前上下文建模的方法主要有6種[6],即:鍵值對模型(Key-value Model)、標記模型(Markup Scheme Model)、圖模型(Graphical Model)、面向對象模型(Object Oriented Model)、基于邏輯的上下文模型(Logic Based Model)以及基于本體的上下文模型(Ontology Based Model)。綜合比較集中建模方法,基于本體的建模方法具有形式化程度高,具有較強的表達能力,能夠較好地支持上下文的推理,易于信息的共享等特點能夠較好地表達復雜的環(huán)境。因此本文采用基于本體的方法對上下文進行統(tǒng)一建模。
1.2.3 上下文存儲、查詢和管理
上下文數量豐富、結構多樣,具有實時性并且不同上下文間關系復雜,因此對上下文的存儲、查詢以及管理在上下文感知計算中占據重要地位。
2 本體及相關技術
2.1 本體的定義
本體(Ontology)原是一個哲學名詞,指事物的本身,是人類思想認識活動產生的必然結果。近年來,本體的概念被應用于計算機領域,被用于對現(xiàn)實世界進行系統(tǒng)化的描述,方便知識的共享和重用。最早給出Ontology定義的是Neches等人,他們將Ontology定義為“給出構成相關領域詞匯的基本術語和關系,以及利用這些術語和關系構成規(guī)定這些詞匯外延的規(guī)則的定義”。Neches認為:“本體定義了組成領域詞匯表的基本術語及其關系,以及結合這些術語和關系來定義詞匯表外延的規(guī)則?!盙ruber提出“本體是概念化的明確的規(guī)范說明”,Studer認為本體是“共享概念模型的明確的形式化規(guī)范說明”。
雖然不同研究者對本體有不同的定義,但是從內涵上講,都是把本體看做某個領域內不同主體(人、機器等)之間進行交流的一種語義基礎。即在不同主體之間共享確定的概念以及概念間的相互關系,以達到溝通的目的。
對于本體的具體構造,目前公認的是一個本體是由概念(類)、關系、函數、公理和實例等5種元素組成。
2.2 本體的構建
2.2.1 本體描述語言
從本體被引入計算機領域以來,大量研究者為本體的使用發(fā)展做出了貢獻,因此誕生了很多本體描述語言,如與Web相關的RDF、RDF-S、OIL、DAML、OWL,與具體系統(tǒng)相關的Ontolingua、cycl、loom。其中OWL是W3C推薦的語義互聯(lián)網中本體描述語言的標準,是由DAML和OIL結合發(fā)展起來的,集成了其他各本體描述語言的優(yōu)點,建立在RDF的基礎之上,采用面向對象的方法,利用類和屬性描述領域的結構,用公理來聲明類和屬性。
2.2.2 本體構建方法
目前本體構建還沒有一個統(tǒng)一的標準,主要有以下幾種方法:(1)骨架法;(2)TOVE企業(yè)建模法;(3)元本體法;(4)循環(huán)獲取法;(5)七步法[7]。綜合考慮研究,本文采用元本體法和七步法相結合來構建本體。
3 基于本體的室內舒適節(jié)能監(jiān)控模型
基于上述技術,用上下文感知技術將物理空間與信息空間[8]連接起來,用本體的方法形式化顯式表達上下文,使系統(tǒng)與環(huán)境間的關系清晰可見。并構建了室內舒適節(jié)能監(jiān)控本體模型。
綜合考慮,用OWL語言作為本體建模語言,并且采用Protégé工具構建本體,Protégé提供了簡單易用的圖形化界面,提供了優(yōu)良的可擴展的大量插件應用,支持豐富的本體描述語言,支持知識的集成及本體的持久化存儲。用Jena2建立本體模型對本體進行處理。Jena是基于Java的開源語義網開發(fā)工具包,為解析RDF、RDFS和OWL本體提供了一個集成環(huán)境,配備了完善的對本體進行解析、存儲、查詢和基于規(guī)則的推理引擎。
3.1 上下文感知系統(tǒng)框架
系統(tǒng)通過傳感器、網絡獲取以及系統(tǒng)預設來感知環(huán)境,得到上下文的初始數據,經過上下文建模和預處理得到低層上下文,經過推理等方式得到高層上下文。
本文設計的上下文感知系統(tǒng)框架如圖1所示。
3.2 基于本體的上下文元模型
上下文元本體是一個三元組(MetaContexts,MetaRelations,MateAttribute)。其中MetaContexts是上下文概念集合,MetaRelations是關系的集合,而MateAttributes是與概念相關的屬性集合。上下文元本體模型如圖2所示。
對于本論文設計的系統(tǒng)來說,本體模型的構建就是系統(tǒng)概念及概念間關系的確定描述。
基于上文所述的方法,通過構建室內舒適節(jié)能監(jiān)控系統(tǒng)的本體模型將現(xiàn)實世界與上下文結合起來,顯式化表達環(huán)境。
通過構建系統(tǒng),采用Protégé創(chuàng)建、可視化、操作本體,使用Jena2對本體進行解析、存儲、查詢、進行基于規(guī)則的推理。
3.3 系統(tǒng)中概念的確定
根據上下文的本體元模型,分析系統(tǒng)的需求。由于是室內環(huán)境舒適度節(jié)能監(jiān)控平臺,系統(tǒng)選取與之相關的環(huán)境概念。對系統(tǒng)進行本體建模,建立系統(tǒng)領域的概念模型。
本文所涉及上下文概念主要被分為四個部分:
?。?)用戶上下文:用戶姓名、年齡、健康狀況、個人喜好;
?。?)時間上下文:時間、日期、季節(jié)、年份;
?。?)設備上下文:設備名稱、計算能力、操作系統(tǒng)版本、功率、已使用時間、使用壽命、耗電量、網絡類型、寬帶、通信成本;
?。?)位置上下文:位置、光照、濕度、溫度、空氣質量、噪音;
?。?)活動上下文:感覺。
3.4 模型的實現(xiàn)
將概念采用自頂向下的方式進行分類分層,用于描述領域概念間的類屬關系,并將本體中的概念模塊化。系統(tǒng)本體的部分概念間關系如圖3所示。
在圖3所示框架的基礎上再將概念具體化,最后用Protégé工具創(chuàng)建本體類。本體類圖如圖4所示。
本體類創(chuàng)建完成后,為類添加數據屬性和對象屬性。生成的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 總結
本文介紹了上下文感知技術、本體理論及相關技術,構建了上下文本體元模型,采用層次化的上下文本體建模方案,對不同上下文進行統(tǒng)一建模,提高上下文的共享。并在此基礎上構建室內舒適節(jié)能監(jiān)控系統(tǒng)的本體模型,使環(huán)境能夠顯式化表達,易于觀察環(huán)境的變化。下一步的工作是構建環(huán)境適應性準則,通過Jena2構建演化規(guī)則。
參考文獻
[1] 黃宇,余建平,馬曉星,等.開放環(huán)境特性感知技術[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] 呂建,馬曉星,陶先平,等.面向網構軟件的環(huán)境顯式化技術[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] 何廷潤.物聯(lián)網物理空間與信息空間融合的業(yè)務信息特征分析[J].移動通信,2012(11):20-24.