1 前言
隨著無線網(wǎng)絡(luò)、移動計算和傳感器網(wǎng)絡(luò)技術(shù)的發(fā)展,普適計算的設(shè)想正逐漸變成現(xiàn)實。普適計算力圖使人們能夠以一種方便的方式實現(xiàn)在任意地點與任意對方的聯(lián)系,從而給傳統(tǒng)的應(yīng)用帶來了新的挑戰(zhàn)!捌者m計算”將我們從“以設(shè)備為中心”的計算模式帶入到“以人為中心”的計算模式,已成為當(dāng)前計算模式發(fā)展的潮流。成為學(xué)術(shù)界和工業(yè)界研究的熱點和焦點。
在普適計算環(huán)境中,由于所面對的移動設(shè)備往往只具有有限的資源(如內(nèi)存、電池和CPU),同時應(yīng)用的執(zhí)行上下文(如用戶的位置、手持設(shè)備的可視面積)也不斷發(fā)生變化,因此要求對應(yīng)的應(yīng)用必須是上下文相關(guān)的,從而使應(yīng)用能夠根據(jù)上下文信息適配自身的行為。因此上下文相關(guān)技術(shù)成為普適計算環(huán)境中應(yīng)用服務(wù)不可或缺的核心技術(shù)之一。不同的上下文來源所投遞的數(shù)據(jù)通常是異構(gòu)的,并且更新頻率經(jīng)常發(fā)生變化,同時要考慮準(zhǔn)確性和異構(gòu)的表達(dá)格式。這些統(tǒng)稱為上下文的質(zhì)量QoC(Quality of Context),它是指用于描述信息質(zhì)量的任何信息,而不是提供信息的過程和相應(yīng)的硬件設(shè)備。如果不能反映上下文信息要建模的世界的真實狀態(tài),信息將不正確;如果包括矛盾信息,則將導(dǎo)致不一致性的發(fā)生;如果上下文的某些方面不可知,則導(dǎo)致信息的不完整。學(xué)術(shù)界已展開大量的關(guān)于上下文質(zhì)量的研究工作,但往往關(guān)注的只是上下文質(zhì)量的部分方面,沒有從各個層面實現(xiàn)對上下文質(zhì)量的綜合管理。
同時,中間件已經(jīng)被廣泛地應(yīng)用于分布式計算中。對于普適應(yīng)用來說,通過中間件平臺能夠自動監(jiān)測用戶、應(yīng)用和外部環(huán)境間所發(fā)生的交互以及這些交互所導(dǎo)致的上下文變化,并做出相應(yīng)的反應(yīng)。而不需要用戶的干涉。為了提供上下文相關(guān)的服務(wù),支持普適計算的中間件平臺必須能夠識別上下文的變化,同時通過聚合來提高上下文的質(zhì)量或通過推理以產(chǎn)生更高級別的上下文,從而使應(yīng)用能夠采用適當(dāng)?shù)膭幼鱽磉m配這些變化。在已有的研究中,很多上下文感知的系統(tǒng)已經(jīng)先后被建立起來以支持普適應(yīng)用,并開始關(guān)注上下文的質(zhì)量管理問題。但這些系統(tǒng)只關(guān)注了上下文質(zhì)量管理的部分方面。因此,我們基于上下文感知中間件提出了一種全面的針對上下文的質(zhì)量管理框架,通過該框架能夠?qū)ι舷挛牡馁|(zhì)量進(jìn)行有效的管理,從而能夠更好地支持普適應(yīng)用的需求。
2 基于中間件的上下文質(zhì)量管理框架
2.1 上下文感知中間件體系結(jié)構(gòu)
圖1所示為我們前期工作中建立的基于上下文感知的中間件的體系結(jié)構(gòu)。核心構(gòu)件管理模塊為我們在前續(xù)工作所開發(fā)的遵循CORBA構(gòu)件模型CCM的構(gòu)件化中間件,為基于構(gòu)件的應(yīng)用、構(gòu)件實例提供平臺無關(guān)的服務(wù),為執(zhí)行平臺資源提供了統(tǒng)一的平臺無關(guān)訪問。構(gòu)件在容器中執(zhí)行,為分布式應(yīng)用的事務(wù)、安全、一致性和資源管理提供隱式的支持,從而使應(yīng)用開發(fā)者能夠更著重于應(yīng)用本身的開發(fā)。同時可以提供有效的商業(yè)邏輯的重用,容器能夠提供包括生命周期管理和構(gòu)件發(fā)現(xiàn)在內(nèi)的非功能性特性。
圖1 用于構(gòu)件化應(yīng)用的上下文感知中間件結(jié)構(gòu)
同時,中間件提供下面3個核心服務(wù)模塊:
·上下文管理器模塊,對上下文進(jìn)行監(jiān)測和管理,以應(yīng)對相關(guān)的變化。
·適配管理器模塊,對上下文的變化進(jìn)行推理,并基于構(gòu)件屬性的體系結(jié)構(gòu)描述以決定相應(yīng)的構(gòu)件適配行為。
·配置器模塊,對應(yīng)用變量進(jìn)行重配置,以實現(xiàn)上下文相關(guān)的構(gòu)件適配。
·自主管理器模塊,通過一定的自主策略,實現(xiàn)對構(gòu)件和服務(wù)的動態(tài)綁定與替換。
上下文管理器負(fù)責(zé)傳感和捕捉上下文信息以及它們的變化,提供對上下文信息的訪問,并將上下文信息的變化通知適配管理器模塊。上下文管理器模塊同時負(fù)責(zé)存儲用戶對應(yīng)用服務(wù)的需求和偏好,它必須提供靈活的上下文監(jiān)測。我們將上下文管理器開發(fā)為一個構(gòu)件化的框架,從而可以插入新的上下文傳感器模塊。上下文管理器模塊可以為上下文提供高級的推理操作。例如,它可以從基本的上下文元素中聚合出復(fù)雜的上下文元素或從上下文中派生出用戶需求。上下文管理器模塊同時保存上下文變化的歷史信息。
適配管理器模塊通過一定的適配規(guī)則負(fù)責(zé)對上下文的變化對應(yīng)用所產(chǎn)生的沖擊進(jìn)行推理。并為當(dāng)前的上下文計劃和選擇最適合的應(yīng)用變量。作為推理的一部分,適配管理器模塊需要在當(dāng)前的上下文中訪問這些變量的應(yīng)用。適配管理器模塊動態(tài)產(chǎn)生一個最適合上下文的應(yīng)用變最的配置模板,通過這樣的配置模板來表示一個所有應(yīng)用變量均被解決的模型。
配置器模塊負(fù)責(zé)協(xié)調(diào)應(yīng)用的初始實例,并完成應(yīng)用或設(shè)備的蓖配置。配置器模塊通過應(yīng)用配置模板執(zhí)行適配管理器決定的適配。適配管理器和配置器模塊基于公共的信息元素——配置模板進(jìn)行操作,因而是緊耦合的關(guān)系。
2.2 基于本體的上下文質(zhì)量管理模型
基于本體的建模方式通過定義一個公共的詞匯表以在一個具體的領(lǐng)域中進(jìn)行上下文信息的共享,并且包括對領(lǐng)域中基本概念的可解釋的定義和這些概念之間的關(guān)系。因此,借助于本體對上下文信息進(jìn)行建模能夠通過在用戶、設(shè)備和服務(wù)之間共享上下文信息的結(jié)構(gòu),以實現(xiàn)語義的互操作性。
我們將上下文本體劃分為上層本體和領(lǐng)域相關(guān)本體。上層本體是一個高層本體,捕獲一般的上下文知識。每一個領(lǐng)域中的上下文共享使用一種一般化的上下文模型建模的公共的概念,和細(xì)節(jié)特性有巨大的差別。因此.應(yīng)用領(lǐng)域的分離鼓勵了一般概念的重用,并為定義應(yīng)用相關(guān)的知識提供了一個靈活的接口,能夠減少上下文處理的負(fù)擔(dān),并使得在移動客戶端上解釋上下文信息變得可能。領(lǐng)域相關(guān)的本體是一個定義了一般的概念細(xì)節(jié)和每個子領(lǐng)域的屬性的低層本體的集合。當(dāng)環(huán)境發(fā)生變化時,每一個子領(lǐng)域中的低層本體可以從高層本體被動態(tài)地插入和拔出。
在文獻(xiàn)中,我們詳細(xì)分析了上下文處理的一般流程和上下文管理器的組成模塊。要進(jìn)行上下文質(zhì)量管理,首先要從上下文建模的方式上進(jìn)行增強(qiáng)。
如圖2所示,在已有的基于本體的上下文的模型基礎(chǔ)上,我們?yōu)槊總上下文對象添加了6個參數(shù),通過這些參數(shù)中的一個或多個構(gòu)成上下文質(zhì)量管理元組。
圖2 基于本體的上下文質(zhì)量管理模型
上下文的安全度(Security):上下文的安全性用來表示上下文安全地投遞給消費者的概率。這個參數(shù)能夠很好地用來反映上下文在傳遞過程中安全性保持的程度。
上下文的精度(Precision):定義為上下文信息描述一個現(xiàn)實世界形態(tài)的粒度。出于精度量化的目的,上下文信息值可以分為4種類型:布爾型、數(shù)值型、遞增集、加權(quán)集。
上下文的完整性(Completeness):定義為相對收集到的所有上下文的可用上下文的比率。這個參數(shù)用來衡量用戶定義的不同上下文之間的關(guān)系。
上下文的新鮮度(Freshness):是指上下文信息確定到被投遞給請求者期問所消耗的時問。因為過時的上下文對請求者來說是沒有用的,同樣上下文的新鮮度和信息的私有敏感度息息相關(guān)。上下文感知服務(wù)將評估應(yīng)用的需求以及用戶的個人愛好,以決定所采取的緩存策略。
上下文的空間分辨度(Resolution):定義為上下文信息的實例可用的物理區(qū)域的精度?臻g分辨度是一個用于保護(hù)用戶私人性的霞要指標(biāo),因為更本地化的信息代表了更高的私人敏感度。例如,用戶可能允許一個大樓安全系統(tǒng)訪問大樓中的人數(shù)。但不允許訪問這些人分別在什么房間中,從而避免系統(tǒng)推斷用戶是否在開會。
上下文的確定性(Certainty):定義為上下文信息的確定性。
2.3 基于質(zhì)量管理的上下文處理流程
圖3所示為考慮質(zhì)量管理的上下文管理器的結(jié)構(gòu)。通過閾值、重復(fù)上下文檢測與消除、不一致上下文檢測與消除3個層次來完成對上下文的質(zhì)量管理。其中閾值管理通過對上下文質(zhì)量管理參數(shù)設(shè)定一定的閾值來對獲取的原始上下文進(jìn)行初步的篩選,接下來在上下文的解釋和聚合過程對重復(fù)上下文和不一致上下文進(jìn)行連貫的處理。
圖3 用于質(zhì)量管理的上下文管理器結(jié)構(gòu)
圖4給出了考慮質(zhì)量管理的上下文處理過程。第一步為收集原始上下文,即在較短的周定時間內(nèi)從不同的傳感器來源中收集原始的上下文信息。第二步是解析不一致性,我們之所以選擇在本步中解析不同原始上下文中存在的不一致性,是因為原始上下文中存在的不一致性將最終導(dǎo)致高層上下文中的不一致性,而這種高層的不一致性將是非常難以解決的。采用批處理的方式來處理原始的上下文,每一批原始上下文中的不一致性均在上下文推理之前清除完,從而使高層上下文的不一致性能夠被限制在一個特定的程度。第三步是重構(gòu)原始上下文,將使用原始上下文更新上下文池并對相關(guān)性進(jìn)行檢查。過時或不正確的高層上下文將在本步中被刪除。如果它們沒被刪除,將在推理后導(dǎo)致嚴(yán)重的上下文不一致性。然后,我們運用基于規(guī)則的推理以產(chǎn)生高層的上下文,這些推理器均配置為可追蹤,從而能夠在上下文池中對相關(guān)的圖進(jìn)行更新。
2.4 重復(fù)上下文的檢測與丟棄
當(dāng)系統(tǒng)完成基于閾值的原始上下文篩選后,接下來需要考慮的就是重復(fù)上下文的清除。在上下文模型中,為每個上下文設(shè)置了上下文ID。因此所謂蘑復(fù)上下文,就是具有相同的上下文ID,或者具有相同的上下文名/值對。
算法1給出了重復(fù)上下文的檢測方法。首先判斷新到達(dá)的上下文的ID號和名/值對。是否與現(xiàn)有的上下文重復(fù)。如果有上下文具有相同的ID號和名值對。則檢查這些上下文的來源。如果它們具有相同的來源,則它們分別來自不同的時段,根據(jù)相應(yīng)的質(zhì)量參數(shù)進(jìn)行丟棄即可。如果它們來源不同,則上下文的收集過程存在錯誤,需要采取一定的檢查措施。
算法1 重復(fù)上下文檢測算法
INPUT:新到達(dá)的上下文
1.獲得上下文ID
2.如果存在具有相同ID的上下文
3.如果相應(yīng)的上下文來源相同
4.如果具有相同的時間戳
5.找到重復(fù)的上下文,執(zhí)行丟棄
6.否則檢查上下文的收集
7.如果找到具有相同名值對的上下文
8.按質(zhì)量元組進(jìn)行丟棄
2.5 不一致上下文檢測與丟棄
對于所檢測到的重復(fù)上下文,我們采取了前期工作中提出的如下的幾種不一致丟棄算法:
(1)全丟棄不一致性消除:對于檢測出的沖突上下文,要通過刪除相應(yīng)的上下文來消除不一致性。所謂全丟棄不一致性消除是最為直觀的不一致性消除方法,即將產(chǎn)生沖突的上下文實例不加區(qū)分地完全刪除。
(2)最新上下文丟棄不一致性消除:相對于最新上下文丟棄不一致性消除算法來說,最新上下文丟棄不一致性消除并不丟棄所有發(fā)生沖突的上下文,因為很多沖突的發(fā)生是由于新進(jìn)入的上下文實例和已有的上下文實例之間的沖突,甚至這部分已有的上下文實例可能即將加入上下文池進(jìn)行存儲。因此通過比較上下文實例的starttime域和updatetime域,能夠判定上下文實例的新舊程度。
(3)基于確定性上下文丟棄:基于確定性上下文丟棄不一致性消除算法相對最新上下文丟棄算法具有更高的準(zhǔn)確性,同時相對全丟棄不一致性消除算法能夠為應(yīng)用保留更多的上下文信息。但基于確定性的上下文丟棄算法需要對每個上下文實例進(jìn)行確定性的判定和比較,從而會加大算法的額外開銷,降低算法的效率。
(4)基于相關(guān)性上下文丟棄:對于不同的上下文來說,更頻繁的原始上下文比不頻繁的那些上下文具有更高的優(yōu)先級,也可能是正確的上下文。然而。要為不同種類的上下文比較頻率是非常困難的。基于這個原因?紤]這些上下文彼此之間的相關(guān)性,也就是它們被使用的頻繁程度為每一個原始上下文進(jìn)行度量,具有更大的相對頻率值的上下文近來更為頻繁,因此它們更可能是正確的上下文。當(dāng)沖突發(fā)生時,丟棄具有較小的相對頻率值的上下文。下式為計算原始上下文的相對頻率的方法。
3 性能測試
如圖5所示,我們比較和分析了全丟棄、最新上下文丟棄、基于確定性上下文丟棄和基于相關(guān)性上下文丟棄幾種不一致性消除算法的作用。
圖5 非一致性解析的正確性概率分析
實驗中共使用3臺計算機(jī),一個4G RAM、2 Xeon CPUs的工作站和兩個通過局域網(wǎng)互聯(lián)的PC客戶端。一個客戶端負(fù)責(zé)充當(dāng)原始上下文的提供者,而另一個則充當(dāng)上下文的消費者。在實驗中,為了簡化對上下文信息正確性的分析,只使用了兩種類型的傳感器。要指出的是,在這個試驗中盡管只使用了兩種類型的傳感器。我們的體系結(jié)構(gòu)和算法也能夠不做任何修改地適用于更多的傳感器類型,因為它們針對語義上下文設(shè)計,而非物理傳感器。當(dāng)引入新的傳感器類型時,唯一需要做的就是增加特定的原始上下文提供者。
從圖5中可以看出,基于確定性和基于相關(guān)性的不一致性消除算法具有更好的性能。同時在工作站上對上述算法的性能進(jìn)行了比較和分析,發(fā)現(xiàn)隨著內(nèi)存中總的上下文的增加,算法的效率將會相應(yīng)地下降。
圖6以基于相關(guān)性的丟棄算法為例,當(dāng)緩沖區(qū)上下文實例為1000~2000時,使用的時間為1.5s~2.0s。而在上下文實例為3000~4000時,需要6s。同時,全丟棄算法和最新丟棄算法相對來說具有較低的不一致性處理時間,而基于確定性的丟棄算法由于需要對上下文實例的確定性進(jìn)行判定,因此具有相對最高的處理時間。
圖6 非一致性解析的性能分析
同時我們對幾種不同算法的錯誤率進(jìn)行了比較。為了進(jìn)行比較,我們將3個應(yīng)用分別運行了600次(總共30個大循環(huán),每個循環(huán)20次),并記錄了每一格循環(huán)的錯誤率。在試驗中,所有被記錄下來的錯誤是應(yīng)用的不協(xié)調(diào)的行為,而系統(tǒng)的錯誤,如內(nèi)存溢出等則不加以考慮。從試驗結(jié)果中同樣可以看出,隨著正確性概率的提高,各上下文不一致性管理機(jī)制能夠在不同程度上提高上下文感知應(yīng)用的健壯性,大量由于上下文沖突所產(chǎn)生的不協(xié)調(diào)的行為被減少,從而提高了上下文感知應(yīng)用的性能。
結(jié)束語上下文感知系統(tǒng)通常利用來自于不同的物理傳感器的感知上下文信息。而由于傳感器的易錯性,所產(chǎn)生的上下文信息的質(zhì)量無法得到有效的保證,F(xiàn)有的上下文質(zhì)量方面的研究往往只關(guān)注上下文質(zhì)量的某一方面。因此,在前期工作的基礎(chǔ)上,本文提出了基于中間件的上下文質(zhì)量管理框架,實現(xiàn)了對上下文質(zhì)量的多層次的管理。實驗證明,該方法能夠有效提高上下文質(zhì)量的管理效果。
核心關(guān)注:拓步ERP系統(tǒng)平臺是覆蓋了眾多的業(yè)務(wù)領(lǐng)域、行業(yè)應(yīng)用,蘊涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務(wù)管理理念,功能涉及供應(yīng)鏈、成本、制造、CRM、HR等眾多業(yè)務(wù)領(lǐng)域的管理,全面涵蓋了企業(yè)關(guān)注ERP管理系統(tǒng)的核心領(lǐng)域,是眾多中小企業(yè)信息化建設(shè)首選的ERP管理軟件信賴品牌。
轉(zhuǎn)載請注明出處:拓步ERP資訊網(wǎng)http://www.ezxoed.cn/
本文標(biāo)題:普適計算環(huán)境下基于中間件的上下文質(zhì)量管理框架研究
本文網(wǎng)址:http://www.ezxoed.cn/html/support/1112153136.html