摘 要: 軟件動態(tài)演化與環(huá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)境空間和計算空間的強關聯性,、非確定性和高度混雜性,迫切需要建立環(huán)境要素到軟件空間的映射關系,,形成軟件適應環(huán)境的交互準則,。建立物理空間與信息空間的對偶關系[2],顯式化表達環(huán)境[3],,軟件向現實物理空間中的環(huán)境上下文提供數據,,并從中獲取數據,,通過上下文感知計算,,將物理世界與軟件聯系起來。實現軟件全面監(jiān)視,、調控并適應環(huán)境,。然而開放環(huán)境下上下文數量豐富,結構多樣,,關系復雜,,如何獲取、處理,、存儲上下文是上下文感知系統(tǒng)的難點,。
本文通過基于本體的建模方式,將現實世界的信息與軟件的上下文結合起來,,將環(huán)境顯式化表達并加以監(jiān)控,,便于考察環(huán)境變化時軟件的反應。
據研究,,人一生中大概有2/3的時間是在室內度過的,,室內環(huán)境質量直接關系到人的心情、工作效率,,甚至影響人的健康,,因此室內環(huán)境質量越來越受到人們的重視,。影響室內環(huá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)原是一個哲學名詞,,指事物的本身,是人類思想認識活動產生的必然結果,。近年來,,本體的概念被應用于計算機領域,被用于對現實世界進行系統(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推薦的語義互聯網中本體描述語言的標準,,是由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)的本體模型將現實世界與上下文結合起來,,顯式化表達環(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)領域的概念模型。
本文所涉及上下文概念主要被分為四個部分:
?。?)用戶上下文:用戶姓名,、年齡、健康狀況,、個人喜好,;
(2)時間上下文:時間,、日期,、季節(jié)、年份,;
?。?)設備上下文:設備名稱、計算能力,、操作系統(tǒng)版本,、功率、已使用時間、使用壽命、耗電量,、網絡類型,、寬帶,、通信成本;
(4)位置上下文:位置、光照,、濕度、溫度,、空氣質量,、噪音;
?。?)活動上下文:感覺,。
3.4 模型的實現
將概念采用自頂向下的方式進行分類分層,用于描述領域概念間的類屬關系,,并將本體中的概念模塊化,。系統(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] 何廷潤.物聯網物理空間與信息空間融合的業(yè)務信息特征分析[J].移動通信,2012(11):20-24.