摘要:移動(dòng)學(xué)習(xí)系統(tǒng)由于設(shè)備性能差異較大,對(duì)學(xué)習(xí)內(nèi)容有較大的限制。利用設(shè)備適應(yīng)Agent技術(shù)可以解決這一問題。文章主要介紹了移動(dòng)學(xué)習(xí)系統(tǒng)架構(gòu)、設(shè)備檢測(cè)的主要內(nèi)容和方法以及設(shè)備適應(yīng)性Agent的結(jié)構(gòu)。
關(guān)鍵詞:移動(dòng)學(xué)習(xí);Agent;設(shè)備適應(yīng)性;移動(dòng)設(shè)備檢測(cè)
0 引言
移動(dòng)學(xué)習(xí)是教育領(lǐng)域一種新穎的學(xué)習(xí)模式。在任何時(shí)間(Anytime)和任何地點(diǎn)(Anywhere)利用手持的無線移動(dòng)通訊設(shè)備(如筆記本電腦、手機(jī)、PDA)學(xué)習(xí)任何內(nèi)容(Anything)的學(xué)習(xí)方式是一種趨勢(shì)。
移動(dòng)設(shè)備種類繁多,各手持設(shè)備之間也存在較大的差異,如屏幕尺寸、分辨率、顏色數(shù)、瀏覽器、操作系統(tǒng)、虛擬機(jī)版本等等全都不一樣。手持設(shè)備的計(jì)算能力、存儲(chǔ)能力、無線網(wǎng)絡(luò)傳遞內(nèi)容的速率等對(duì)移動(dòng)學(xué)習(xí)的內(nèi)容有非常大的限制,成為移動(dòng)學(xué)習(xí)發(fā)展的瓶頸。因此,有必要采用相應(yīng)的技術(shù)根據(jù)不同設(shè)備特性提供適應(yīng)的學(xué)習(xí)內(nèi)容。
Agent技術(shù)是較前沿的軟件技術(shù)之一,它在各個(gè)應(yīng)用領(lǐng)域的運(yùn)用是計(jì)算機(jī)科學(xué)與技術(shù)的一個(gè)研究熱點(diǎn)。本文探討利用Agent技術(shù)解決移動(dòng)設(shè)備適應(yīng)性問題。
1 基于設(shè)備適應(yīng)性Agent移動(dòng)學(xué)習(xí)系統(tǒng)技術(shù)架構(gòu)
移動(dòng)學(xué)習(xí)系統(tǒng)的技術(shù)架構(gòu)由四層組成:表示層、網(wǎng)絡(luò)層、邏輯層和數(shù)據(jù)層。其中表示層位于客戶端,網(wǎng)絡(luò)層是基于移動(dòng)通信網(wǎng)和互聯(lián)網(wǎng),邏輯層和數(shù)據(jù)層則位于服務(wù)器端。
第一層(表示層):是用戶和系統(tǒng)交互的界面,負(fù)責(zé)和用戶的會(huì)話處理。它的任務(wù)是通過瀏覽器訪問移動(dòng)學(xué)習(xí)系統(tǒng)服務(wù)器,根據(jù)瀏覽器的請(qǐng)求返回?cái)?shù)據(jù)給瀏覽器,客戶端利用相應(yīng)的信息發(fā)布格式(如NHTML、XHTML、WML等)把所需的課程信息傳送給客戶端,客戶機(jī)接收傳來的符合該設(shè)備模式的文件,并把它顯示在瀏覽器上。
第二層(網(wǎng)絡(luò)層):客戶端通過GPRS或即將普及的3G網(wǎng)接入Internet,實(shí)現(xiàn)客戶端與移動(dòng)學(xué)習(xí)服務(wù)器的實(shí)時(shí)通信與數(shù)據(jù)共享。
第三層(邏輯層):用于封裝系統(tǒng)的業(yè)務(wù)服務(wù),是整個(gè)系統(tǒng)的核心部分。它負(fù)責(zé)處理表示層的應(yīng)用請(qǐng)求,對(duì)其業(yè)務(wù)處理進(jìn)行邏輯判斷;一旦邏輯判斷通過則調(diào)用數(shù)據(jù)庫的內(nèi)容,進(jìn)行數(shù)據(jù)處理,并將處理結(jié)果返回給表示層。
處理設(shè)備適應(yīng)邏輯事務(wù)的Agent就位于這一層。它的任務(wù)是接收用戶的請(qǐng)求并分析用戶的設(shè)備性能,然后根據(jù)設(shè)備的性能將適合移動(dòng)設(shè)備性能的內(nèi)容反饋給移動(dòng)設(shè)備瀏覽器。
第四層(數(shù)據(jù)層):為應(yīng)用提供數(shù)據(jù)來源。
2 移動(dòng)設(shè)備適應(yīng)性檢測(cè)的主要檢測(cè)特性和檢測(cè)方法
2.1 主要檢測(cè)內(nèi)容
2.1.1 移動(dòng)設(shè)備的類型
首先要檢測(cè)的是移動(dòng)設(shè)備的類型。常見的移動(dòng)設(shè)備類型有:Notebook,PDA,smart phone,ceil phone。不同類型的移動(dòng)設(shè)備有不同的支持系統(tǒng),如操作系統(tǒng)和瀏覽器。表1為不同種類的移動(dòng)設(shè)備的操作系統(tǒng)和瀏覽器。
2.1.2 屏幕特性
(1)分辨率:這是一個(gè)非常重要的特性,因?yàn)椴煌囊苿?dòng)設(shè)備的分辨率差別較大。
(2)屏幕模式(portrait/landscape):許多新的PDA支持屏幕顯示模式的轉(zhuǎn)換。
2.1.3 支持的標(biāo)記語言和腳本
HTML或者XHTML網(wǎng)頁使用javascript腳本,有些PDA、智能手機(jī)的測(cè)覽器不支持javascript。WAPl.x的手機(jī)支持WML和WMLScript,WAP2.x的手機(jī)支持XHTML。因此,支持的標(biāo)記語言和腳本也是一個(gè)重要特征。
2.1.4 多媒體文件格式
為了讓多媒體文件能正常地呈現(xiàn)在移動(dòng)設(shè)備的特定瀏覽器上,確定多媒體文件格式也是較重要的。
2.2 主要檢測(cè)方法
2.2.1 http user-agent報(bào)頭
瀏覽器和服務(wù)器基于HTIP協(xié)議在WWW上傳送信息。User-agent簡(jiǎn)單地說就是HTTP協(xié)議中的一個(gè)關(guān)鍵詞,在HTTP頭中允許加入這個(gè)字段的數(shù)據(jù)來描述發(fā)出HTTP請(qǐng)求的終端的一些信息,這樣服務(wù)器端就可以實(shí)現(xiàn)對(duì)終端用戶的識(shí)別。User-agent中包含移動(dòng)設(shè)備的操作系統(tǒng)、瀏覽器和一些硬件的信息。
隨著聯(lián)接到Internet的移動(dòng)設(shè)備的數(shù)量和種類的不斷增長(zhǎng),對(duì)可以依照不同的設(shè)備能力而傳送對(duì)應(yīng)內(nèi)容的需求也有相應(yīng)的增加,僅僅用user-agent是不夠的。
2.2.2 能力組合/喜好特征(cc/PP)
CC/PP設(shè)置文件(profile)是對(duì)移動(dòng)設(shè)備的性能和使用者偏好的一種描述。CC/PP是W3C以基于XML的資源描述框架為基礎(chǔ)的RDF。CC/PP設(shè)置文件包含許多的CC/PP屬性名和相關(guān)值,服務(wù)器可據(jù)以選擇最適合的資源形式
并將其傳送到客戶端。
2.2.3 用戶代理輪廓規(guī)范(UAPROF)
UAROF是無線應(yīng)用協(xié)議WAP論壇在CC/PP的基礎(chǔ)上制定的無線設(shè)備在WAP客戶端、中間網(wǎng)絡(luò)點(diǎn)(網(wǎng)關(guān))和服務(wù)器間傳送無線設(shè)備信息的標(biāo)準(zhǔn)和協(xié)議,采用“屬性——值”的方式來描述移動(dòng)設(shè)備的信息,主要包括:①硬件平臺(tái):包含設(shè)備的硬件屬性,如屏幕大小、色彩能力、像素縱橫比、支持的字符集等;②軟件平臺(tái):包含設(shè)備的應(yīng)用環(huán)境,如操作系統(tǒng)、是否接受下載軟件、是否裝有音視頻解碼器等;③網(wǎng)絡(luò)特征:包含描述網(wǎng)絡(luò)環(huán)境的屬性,如載體特征、支持的安全機(jī)制、支持的藍(lán)牙版本等;④用戶代理瀏覽器:包含運(yùn)行在設(shè)備上的瀏覽器屬性,如瀏覽器版本、支持的XHTML版本、是否具備顯示表格的能力;⑤WAP特征:包含設(shè)備支持的無線應(yīng)用協(xié)議的環(huán)境,如WAP版本、WAP設(shè)備類型等;⑥PUSH特征:包含設(shè)備對(duì)PUSH的支持能力,如支持PUSH的語言、字符集等。
2.2.4 Wireless Universal Resource File(WURFL)
HTTP協(xié)議提供了user-agent header,借助于它可以獲得終端的具體型號(hào),根據(jù)這個(gè)型號(hào)找到終端的各種規(guī)格屬性。WURFL正是做這個(gè)事情的,它的全稱是Wireless UniversalResource File,主頁架在Source Forge上,http://wurfl.sourceforge.net/。WURFL是一個(gè)開源的免費(fèi)的XML文件,里面收集了世界上所有手機(jī)的技術(shù)參數(shù)。
3 設(shè)備適應(yīng)性Agent的結(jié)構(gòu)
設(shè)備適應(yīng)性Agent由兩個(gè)模塊組成:設(shè)備檢測(cè)模塊和內(nèi)容適應(yīng)模塊。設(shè)備檢測(cè)模塊負(fù)責(zé)檢測(cè)移動(dòng)設(shè)備的特性(存儲(chǔ)能力、屏幕尺寸等),并將這些信息傳給內(nèi)容適應(yīng)模塊。內(nèi)容適應(yīng)模塊主要負(fù)責(zé)產(chǎn)生適應(yīng)的內(nèi)容,根據(jù)相應(yīng)的規(guī)則將學(xué)習(xí)內(nèi)容轉(zhuǎn)換成不同的內(nèi)容,如將PNG文件轉(zhuǎn)換為GIF文件。設(shè)備適應(yīng)性Agent結(jié)構(gòu)如圖2所示。
3.1 設(shè)備檢測(cè)模塊
設(shè)備檢測(cè)模塊負(fù)責(zé)檢測(cè)移動(dòng)設(shè)備的類型、內(nèi)存、屏幕尺寸、操作系統(tǒng)、瀏覽器等特性,然后將設(shè)備的特性送給適應(yīng)內(nèi)容模塊。由于每天涌現(xiàn)出不同種類的新設(shè)備,設(shè)備檢測(cè)模塊不可能識(shí)別世界上所有的設(shè)備,如果沒有檢測(cè)出相應(yīng)的設(shè)備,設(shè)備檢測(cè)模塊應(yīng)該為用戶提供相似的性能。其處理過程如下:
第一步:基于學(xué)習(xí)者的請(qǐng)求,從設(shè)備信息庫獲得設(shè)備的特征??梢詮挠脩舻恼?qǐng)求中得到user-agent。例如:從三星D500C型手機(jī),可以得到user-agent,SAMSUNG-SGH-D500C/1.0Profile/MIDP-2.0 Configuration/CLDC-1.1 UP.Browser/6.2.3.3.c.1.101(Gui)MMP/2。用戶的user-agent和設(shè)備信息庫的匹配采用來文史特距離(Levenshtein distance)算法。具體算法如圖3所示。
當(dāng)用戶使用移動(dòng)設(shè)備通過Internet訪問學(xué)習(xí)內(nèi)容,設(shè)備瀏覽器特征是非常重要的。當(dāng)不能從設(shè)備信息庫檢測(cè)出設(shè)備特征時(shí),可以用瀏覽器特性來代替移動(dòng)設(shè)備的特性。檢測(cè)模塊盡量使用來文史特距離從設(shè)備信息庫中獲得瀏覽器的特征。例如從三星D500C型手機(jī),檢測(cè)出瀏覽器是UP.Browser。因此系統(tǒng)可以根據(jù)瀏覽器的特性提供適應(yīng)的內(nèi)容。
雖然系統(tǒng)能從用戶請(qǐng)求的user-agent獲得移動(dòng)設(shè)備的特征,在很多時(shí)候只能取得移動(dòng)設(shè)備的相似性能。為了取得更精確的性能,一個(gè)改善的算法在第二步進(jìn)行。
第二步:利用用戶請(qǐng)求的其他報(bào)文(如CC/PP、UAPROF、WURFL)中的信息修改特征。除了user-agent,用戶能從其他報(bào)文獲得移動(dòng)設(shè)備信息,例如標(biāo)記語言、圖像格式、屏幕尺寸等。對(duì)于移動(dòng)設(shè)備的同一個(gè)特性,不同的服務(wù)提供不同的報(bào)文,例如:屏幕尺寸有的報(bào)文用HTTP_X_JPHONE_DISPLAY,有的報(bào)文用HTTP_X UP DEVCAP_SCREENPIXELS。所以在規(guī)則庫中應(yīng)該定義不同的規(guī)則去檢測(cè)用戶報(bào)文信息。改善算法見圖4。
3.2 內(nèi)容適應(yīng)模塊
規(guī)則庫包含不同的媒體轉(zhuǎn)換規(guī)則,例如文本、圖像、音頻等。在適應(yīng)內(nèi)容模塊取得移動(dòng)設(shè)備的性能后能產(chǎn)生適合移動(dòng)設(shè)備特性的內(nèi)容,這些內(nèi)容盡量適應(yīng)設(shè)備。例如移動(dòng)學(xué)習(xí)系統(tǒng)中有個(gè)圖片(格式:JPEG,像素:200*200),當(dāng)檢測(cè)到移動(dòng)設(shè)備支持圖片的特性(格式:PNG,像素:180*120),如果移動(dòng)學(xué)習(xí)系統(tǒng)將原始的JPEG圖片文件發(fā)送給移動(dòng)設(shè)備,圖片將在移動(dòng)設(shè)備上不能正常顯示。應(yīng)該將原始JPEG圖片文件轉(zhuǎn)換成PNG文件。這種轉(zhuǎn)換規(guī)則記錄在規(guī)則庫中。另外移動(dòng)設(shè)備支持不同的標(biāo)記語言,如WML,XHTML等,為了顯示學(xué)習(xí)內(nèi)容,應(yīng)該用適應(yīng)的標(biāo)記語言標(biāo)記嵌入的對(duì)象。
4 結(jié)束語
現(xiàn)代信息技術(shù)為移動(dòng)學(xué)習(xí)提供了豐富的教學(xué)媒體資源,而性能各異的移動(dòng)設(shè)備終端對(duì)媒體資源的選擇有一定的局限性。將設(shè)備適應(yīng)性Agent技術(shù)引入移動(dòng)學(xué)習(xí)系統(tǒng),可以讓設(shè)備自動(dòng)適應(yīng)教學(xué)資源,提高移動(dòng)學(xué)習(xí)系統(tǒng)的普及性。