摘要:移動學習系統由于設備性能差異較大,對學習內容有較大的限制。利用設備適應Agent技術可以解決這一問題。文章主要介紹了移動學習系統架構、設備檢測的主要內容和方法以及設備適應性Agent的結構。
關鍵詞:移動學習;Agent;設備適應性;移動設備檢測
0 引言
移動學習是教育領域一種新穎的學習模式。在任何時間(Anytime)和任何地點(Anywhere)利用手持的無線移動通訊設備(如筆記本電腦、手機、PDA)學習任何內容(Anything)的學習方式是一種趨勢。
移動設備種類繁多,各手持設備之間也存在較大的差異,如屏幕尺寸、分辨率、顏色數、瀏覽器、操作系統、虛擬機版本等等全都不一樣。手持設備的計算能力、存儲能力、無線網絡傳遞內容的速率等對移動學習的內容有非常大的限制,成為移動學習發展的瓶頸。因此,有必要采用相應的技術根據不同設備特性提供適應的學習內容。
Agent技術是較前沿的軟件技術之一,它在各個應用領域的運用是計算機科學與技術的一個研究熱點。本文探討利用Agent技術解決移動設備適應性問題。


1 基于設備適應性Agent移動學習系統技術架構
移動學習系統的技術架構由四層組成:表示層、網絡層、邏輯層和數據層。其中表示層位于客戶端,網絡層是基于移動通信網和互聯網,邏輯層和數據層則位于服務器端。
第一層(表示層):是用戶和系統交互的界面,負責和用戶的會話處理。它的任務是通過瀏覽器訪問移動學習系統服務器,根據瀏覽器的請求返回數據給瀏覽器,客戶端利用相應的信息發布格式(如NHTML、XHTML、WML等)把所需的課程信息傳送給客戶端,客戶機接收傳來的符合該設備模式的文件,并把它顯示在瀏覽器上。
第二層(網絡層):客戶端通過GPRS或即將普及的3G網接入Internet,實現客戶端與移動學習服務器的實時通信與數據共享。
第三層(邏輯層):用于封裝系統的業務服務,是整個系統的核心部分。它負責處理表示層的應用請求,對其業務處理進行邏輯判斷;一旦邏輯判斷通過則調用數據庫的內容,進行數據處理,并將處理結果返回給表示層。
處理設備適應邏輯事務的Agent就位于這一層。它的任務是接收用戶的請求并分析用戶的設備性能,然后根據設備的性能將適合移動設備性能的內容反饋給移動設備瀏覽器。
第四層(數據層):為應用提供數據來源。
2 移動設備適應性檢測的主要檢測特性和檢測方法
2.1 主要檢測內容
2.1.1 移動設備的類型
首先要檢測的是移動設備的類型。常見的移動設備類型有:Notebook,PDA,smart phone,ceil phone。不同類型的移動設備有不同的支持系統,如操作系統和瀏覽器。表1為不同種類的移動設備的操作系統和瀏覽器。


2.1.2 屏幕特性
(1)分辨率:這是一個非常重要的特性,因為不同的移動設備的分辨率差別較大。
(2)屏幕模式(portrait/landscape):許多新的PDA支持屏幕顯示模式的轉換。
2.1.3 支持的標記語言和腳本
HTML或者XHTML網頁使用javascript腳本,有些PDA、智能手機的測覽器不支持javascript。WAPl.x的手機支持WML和WMLScript,WAP2.x的手機支持XHTML。因此,支持的標記語言和腳本也是一個重要特征。
2.1.4 多媒體文件格式
為了讓多媒體文件能正常地呈現在移動設備的特定瀏覽器上,確定多媒體文件格式也是較重要的。
2.2 主要檢測方法
2.2.1 http user-agent報頭
瀏覽器和服務器基于HTIP協議在WWW上傳送信息。User-agent簡單地說就是HTTP協議中的一個關鍵詞,在HTTP頭中允許加入這個字段的數據來描述發出HTTP請求的終端的一些信息,這樣服務器端就可以實現對終端用戶的識別。User-agent中包含移動設備的操作系統、瀏覽器和一些硬件的信息。
隨著聯接到Internet的移動設備的數量和種類的不斷增長,對可以依照不同的設備能力而傳送對應內容的需求也有相應的增加,僅僅用user-agent是不夠的。
2.2.2 能力組合/喜好特征(cc/PP)
CC/PP設置文件(profile)是對移動設備的性能和使用者偏好的一種描述。CC/PP是W3C以基于XML的資源描述框架為基礎的RDF。CC/PP設置文件包含許多的CC/PP屬性名和相關值,服務器可據以選擇最適合的資源形式
并將其傳送到客戶端。
2.2.3 用戶代理輪廓規范(UAPROF)
UAROF是無線應用協議WAP論壇在CC/PP的基礎上制定的無線設備在WAP客戶端、中間網絡點(網關)和服務器間傳送無線設備信息的標準和協議,采用“屬性——值”的方式來描述移動設備的信息,主要包括:①硬件平臺:包含設備的硬件屬性,如屏幕大小、色彩能力、像素縱橫比、支持的字符集等;②軟件平臺:包含設備的應用環境,如操作系統、是否接受下載軟件、是否裝有音視頻解碼器等;③網絡特征:包含描述網絡環境的屬性,如載體特征、支持的安全機制、支持的藍牙版本等;④用戶代理瀏覽器:包含運行在設備上的瀏覽器屬性,如瀏覽器版本、支持的XHTML版本、是否具備顯示表格的能力;⑤WAP特征:包含設備支持的無線應用協議的環境,如WAP版本、WAP設備類型等;⑥PUSH特征:包含設備對PUSH的支持能力,如支持PUSH的語言、字符集等。
2.2.4 Wireless Universal Resource File(WURFL)
HTTP協議提供了user-agent header,借助于它可以獲得終端的具體型號,根據這個型號找到終端的各種規格屬性。WURFL正是做這個事情的,它的全稱是Wireless UniversalResource File,主頁架在Source Forge上,http://wurfl.sourceforge.net/。WURFL是一個開源的免費的XML文件,里面收集了世界上所有手機的技術參數。
3 設備適應性Agent的結構
設備適應性Agent由兩個模塊組成:設備檢測模塊和內容適應模塊。設備檢測模塊負責檢測移動設備的特性(存儲能力、屏幕尺寸等),并將這些信息傳給內容適應模塊。內容適應模塊主要負責產生適應的內容,根據相應的規則將學習內容轉換成不同的內容,如將PNG文件轉換為GIF文件。設備適應性Agent結構如圖2所示。
3.1 設備檢測模塊
設備檢測模塊負責檢測移動設備的類型、內存、屏幕尺寸、操作系統、瀏覽器等特性,然后將設備的特性送給適應內容模塊。由于每天涌現出不同種類的新設備,設備檢測模塊不可能識別世界上所有的設備,如果沒有檢測出相應的設備,設備檢測模塊應該為用戶提供相似的性能。其處理過程如下:
第一步:基于學習者的請求,從設備信息庫獲得設備的特征。可以從用戶的請求中得到user-agent。例如:從三星D500C型手機,可以得到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和設備信息庫的匹配采用來文史特距離(Levenshtein distance)算法。具體算法如圖3所示。
當用戶使用移動設備通過Internet訪問學習內容,設備瀏覽器特征是非常重要的。當不能從設備信息庫檢測出設備特征時,可以用瀏覽器特性來代替移動設備的特性。檢測模塊盡量使用來文史特距離從設備信息庫中獲得瀏覽器的特征。例如從三星D500C型手機,檢測出瀏覽器是UP.Browser。因此系統可以根據瀏覽器的特性提供適應的內容。
雖然系統能從用戶請求的user-agent獲得移動設備的特征,在很多時候只能取得移動設備的相似性能。為了取得更精確的性能,一個改善的算法在第二步進行。
第二步:利用用戶請求的其他報文(如CC/PP、UAPROF、WURFL)中的信息修改特征。除了user-agent,用戶能從其他報文獲得移動設備信息,例如標記語言、圖像格式、屏幕尺寸等。對于移動設備的同一個特性,不同的服務提供不同的報文,例如:屏幕尺寸有的報文用HTTP_X_JPHONE_DISPLAY,有的報文用HTTP_X UP DEVCAP_SCREENPIXELS。所以在規則庫中應該定義不同的規則去檢測用戶報文信息。改善算法見圖4。
3.2 內容適應模塊
規則庫包含不同的媒體轉換規則,例如文本、圖像、音頻等。在適應內容模塊取得移動設備的性能后能產生適合移動設備特性的內容,這些內容盡量適應設備。例如移動學習系統中有個圖片(格式:JPEG,像素:200*200),當檢測到移動設備支持圖片的特性(格式:PNG,像素:180*120),如果移動學習系統將原始的JPEG圖片文件發送給移動設備,圖片將在移動設備上不能正常顯示。應該將原始JPEG圖片文件轉換成PNG文件。這種轉換規則記錄在規則庫中。另外移動設備支持不同的標記語言,如WML,XHTML等,為了顯示學習內容,應該用適應的標記語言標記嵌入的對象。
4 結束語
現代信息技術為移動學習提供了豐富的教學媒體資源,而性能各異的移動設備終端對媒體資源的選擇有一定的局限性。將設備適應性Agent技術引入移動學習系統,可以讓設備自動適應教學資源,提高移動學習系統的普及性。