張怡萱,陳光喜,蔣意堅(jiān),陳煜坤
(桂林電子科技大學(xué),廣西桂林,541004)
該項(xiàng)目開發(fā)的服務(wù)于桂電新生Android和雙平臺(tái)的智慧信息服務(wù)軟件“新生智慧校園服務(wù)平臺(tái)”,有以下幾個(gè)主要模塊:基于人工智能算法的“選課指導(dǎo)”構(gòu)建論壇模塊、使用Unity3D并接入高德地圖API的“校園導(dǎo)航”模塊、由智能算法進(jìn)行分析推送的“日常攻略”模塊、提供入學(xué)常識(shí)的“新生專區(qū)模塊”、導(dǎo)入校園要聞,幫助新生了解學(xué)校的“校園記事”模塊以及通過智能算法對(duì)學(xué)生喜好進(jìn)行預(yù)測(cè)分析和推送的“商家服務(wù)”模塊。
隨著網(wǎng)絡(luò)技術(shù)不斷發(fā)展,社會(huì)信息化程度逐步提高,智能化和信息化的概念走入校園。但目前大部分高校數(shù)字化資源存在信息分散,缺漏,獨(dú)立等缺點(diǎn),導(dǎo)致學(xué)生無法充分高效地利用好已有信息。如何匯集和補(bǔ)充獨(dú)立的信息資源并智慧地利用,同時(shí)整合成一個(gè)統(tǒng)一的接入平臺(tái)成為了很多高校亟待解決的重要問題之一。并且隨著人工智能領(lǐng)域不斷發(fā)展,數(shù)據(jù)集成分析以及大數(shù)據(jù)時(shí)代的降臨,促使計(jì)算機(jī)不斷向著更加智慧的方向發(fā)展,此時(shí)基于Web開發(fā)一款綜合性智慧信息服務(wù)平臺(tái)軟件便是尤為重要。
本項(xiàng)目基于桂林電子科技大學(xué),由項(xiàng)目組開發(fā)一款針對(duì)桂電新生的智慧校園服務(wù)平臺(tái)。平臺(tái)可以實(shí)現(xiàn)信息的傳遞、獲取和交流,且融合了商務(wù)推薦、情景可視化、交流論壇等功能,并集成以往孤立的高校數(shù)字化資源,成為一個(gè)統(tǒng)一的智慧接入平臺(tái)。平臺(tái)為單入口單出口式,能夠最大限度利用資源服務(wù)廣大新生。加上人性化的交互界面,方便新生更好更快融入校園生活。項(xiàng)目的具體實(shí)施方案將主要在以下幾個(gè)方面:
(1)用戶界面
web端主要采用HTML標(biāo)簽結(jié)合CSS樣式布局前端頁面,通過JavaScript實(shí)現(xiàn)網(wǎng)頁動(dòng)態(tài)效果。網(wǎng)頁按照head-bodyfooter的縱向模式進(jìn)行設(shè)計(jì),各頁面風(fēng)格保持一致。
(2)地圖導(dǎo)航
在Unity3d上構(gòu)建建筑物及場景3D模型。其中室內(nèi)導(dǎo)航需通過硬件設(shè)備(藍(lán)牙布點(diǎn)設(shè)備)進(jìn)行定位,而室外定位需要獲取兩個(gè)坐標(biāo)點(diǎn)。一個(gè)是使用高德地圖API進(jìn)行坐標(biāo)拾取,再導(dǎo)入自定義地圖實(shí)時(shí)更新定位信息,并與后臺(tái)SQL數(shù)據(jù)庫進(jìn)行數(shù)據(jù)交流,之后通過后臺(tái)數(shù)據(jù)庫更新Unity3d中用戶點(diǎn)位置坐標(biāo)。同樣用戶選擇目標(biāo)點(diǎn),從數(shù)據(jù)庫導(dǎo)出位置坐標(biāo)標(biāo)記在模型上。這樣確定兩個(gè)點(diǎn)位置坐標(biāo)后利用Unity3d中NavMeshObstacle組件生成自動(dòng)導(dǎo)航路線,通過DrawLine將引導(dǎo)線可視化,再添加First Person Controller于用戶所在點(diǎn)來進(jìn)行第一人稱視角控制(或者改為添加Third Person Controller實(shí)現(xiàn)第三人稱視角控制)從而實(shí)現(xiàn)可視化與交互性極高的3D實(shí)景地圖導(dǎo)航。
(3)用戶信息交互
用戶操作流程為:啟動(dòng)—登錄界面—認(rèn)證—主界面—選擇功能—獲取數(shù)據(jù),此處選用了開源且速度快的MySQL主從服務(wù)器進(jìn)行數(shù)據(jù)交互。我們選擇基于瀏覽器制作網(wǎng)站從而構(gòu)建Web客戶端。網(wǎng)站前端通過HTML5進(jìn)行設(shè)計(jì),后臺(tái)框架使用 SSM 框架(Spring、Spring MVC、MyBatis)。網(wǎng)站后臺(tái)使用WebAPI模型作為服務(wù)器端,并采用具有三層模式的Browser/Server結(jié)構(gòu)(即瀏覽器/服務(wù)器結(jié)構(gòu)),利用JSON進(jìn)行數(shù)據(jù)流入交互。當(dāng)Web客戶端向服務(wù)器端發(fā)起請(qǐng)求時(shí),Web服務(wù)器端快速響應(yīng),與數(shù)據(jù)庫交互并獲取數(shù)據(jù)后,向客戶端返回請(qǐng)求數(shù)據(jù)。若用戶想要進(jìn)行信息交互(話題發(fā)布等)需驗(yàn)證登錄,即將用戶名密碼發(fā)送至服務(wù)器端校驗(yàn),若該用戶存在則返回確認(rèn)信息。除開這種傳統(tǒng)驗(yàn)證還可以使用第三方驗(yàn)證登錄模式,比如手機(jī)加短信驗(yàn)證,QQ登錄等。該用戶信息可由客戶端保存至SharedPreference類里,這樣就不需要重復(fù)登錄了。
選課指導(dǎo)包括一級(jí)索引—學(xué)院、二級(jí)索引—專業(yè)、三級(jí)索引--課程類別等等,同時(shí)存儲(chǔ)學(xué)院、專業(yè)、課程名、課程代碼及對(duì)應(yīng)教師等屬性,為每門課提供選課指導(dǎo)、教學(xué)反饋等信息。
商家服務(wù)主要包括商家名、地址、銷售商品及價(jià)格、菜品評(píng)分等信息,再實(shí)現(xiàn)分級(jí)索引,逐級(jí)細(xì)化再結(jié)合用戶常點(diǎn)菜品為用戶推送匹配菜品。
用戶信息包括注冊(cè)的信息,如用戶名、密碼、手機(jī)號(hào)等。

圖1 客戶端與服務(wù)端數(shù)據(jù)庫關(guān)系(MVC模型)
其中使用到的MVC模型是一種使用Model-View-Controller設(shè)計(jì)創(chuàng)建 Web 應(yīng)用程序的模式。
MVC分層有助于管理復(fù)雜的應(yīng)用程序,同時(shí)也簡化了分組開發(fā)。不同的開發(fā)人員可同時(shí)開發(fā)視圖、控制器邏輯和業(yè)務(wù)邏輯。
(4)智能交互

圖2 數(shù)據(jù)結(jié)構(gòu)化框圖
通過獲取用戶的信息存儲(chǔ)數(shù)據(jù)及本地瀏覽信息,得到原始的數(shù)據(jù),之后對(duì)數(shù)據(jù)進(jìn)行特征構(gòu)建,包括數(shù)據(jù)清洗、數(shù)據(jù)合并和數(shù)據(jù)特征結(jié)構(gòu)化。數(shù)據(jù)清洗主要對(duì)一些錯(cuò)誤信息進(jìn)行清洗,比如數(shù)據(jù)傳輸不當(dāng)導(dǎo)致的亂碼等。清洗過后即數(shù)據(jù)合并。最后進(jìn)行數(shù)據(jù)結(jié)構(gòu)化處理,也是根據(jù)特征進(jìn)行數(shù)據(jù)融合,比如歸類用戶對(duì)某項(xiàng)信息的檢索持續(xù)時(shí)間,檢索次數(shù)等存儲(chǔ)到數(shù)據(jù)庫中。之后對(duì)信息進(jìn)行篩選,我們已知item—based協(xié)同過濾算法在計(jì)算用戶對(duì)一個(gè)物品的興趣時(shí)十分經(jīng)典(默認(rèn)用戶對(duì)物品打分均為1)。先構(gòu)建物品的同現(xiàn)矩陣而后利用公式:



將預(yù)測(cè)評(píng)分排序,取topN對(duì)應(yīng)的物品推薦給用戶從而進(jìn)行信息的智能推送。作為協(xié)同過濾算法,Slope One也有著稀疏性,擴(kuò)展性,冷啟動(dòng)問題。同時(shí),如何實(shí)現(xiàn)增加一個(gè)商品而重新進(jìn)行推送也是一個(gè)亟待解決的問題。對(duì)此,本項(xiàng)目針對(duì)冷啟動(dòng)問題,先通過用戶的基礎(chǔ)信息(年齡,性別等)找到同類用戶集,系統(tǒng)計(jì)算同類用戶級(jí)對(duì)某個(gè)項(xiàng)目的平均評(píng)分即為新用戶的初始評(píng)分。針對(duì)稀疏性問題,利用IBCF思想,認(rèn)為用戶對(duì)類似項(xiàng)目有相同的的意見,即用戶偏好可由用戶的歷史模式看到。至于擴(kuò)展性問題,平臺(tái)規(guī)模較小,受影響程度不大,不置以考慮。而大量的校園數(shù)據(jù),也代表著有統(tǒng)計(jì)回歸的用武之地,最經(jīng)典的邏輯回歸(Logistic Regression)分析算法可以預(yù)測(cè)一些有用的信息,其用于兩分類問題(即輸出只有兩種)。它需要先找到一個(gè)預(yù)測(cè)函數(shù)(h),顯然,該函數(shù)的輸出必須是兩個(gè)值(分別代表兩個(gè)類別),所以利用了Logistic函數(shù)(或稱為Sigmoid函數(shù)),其對(duì)應(yīng)的函數(shù)圖像是一個(gè)取值在0和1之間的S型曲線。此時(shí)暫時(shí)考慮影響因素為線性的。通過推導(dǎo)算法得:

由于邏輯回歸模型是一個(gè)經(jīng)驗(yàn)訓(xùn)練性模型,前期我們已有數(shù)據(jù)結(jié)構(gòu)化、特征值提取的步驟,此時(shí)很快就能得到部分需求預(yù)測(cè)的數(shù)據(jù)。
(5)校園信息
若獲得學(xué)校校組織授權(quán),以HTML5構(gòu)建良好的UI界面,通過直接訪問學(xué)校及校組織相應(yīng)管理部門的數(shù)據(jù)庫,對(duì)其緩存,并解析分類其信息放在不同板塊顯示動(dòng)態(tài)傳遞校園信息。用HTML5構(gòu)建測(cè)試服務(wù)系統(tǒng)頁面,與小型本地?cái)?shù)據(jù)庫連接,動(dòng)態(tài)考察,統(tǒng)計(jì)新生的入學(xué)概念掌握。