郭甲天 陳婷 向陽
摘要:在當今信息技術(shù)不斷創(chuàng)新的背景下,學生身心健康問題越來越引起人們的關(guān)注。為了提高學生在校的幸福指數(shù)以及對宿舍的整體滿意度,該系統(tǒng)在傳統(tǒng)的宿舍管理系統(tǒng)中加入了基于MBTI測試的舍友匹配功能,該功能使用決策樹算法,通過學生MBTI測試問卷的結(jié)果,進行算法預(yù)測分類,最后匹配出人格相似的室友,這樣可以大大降低室友因性格不合而引發(fā)的身心健康問題,同時也體現(xiàn)了大學的人文關(guān)懷。該系統(tǒng)采用SpringBoot、VUE、MyBatis框架和MySQL數(shù)據(jù)庫技術(shù)以及數(shù)據(jù)可視化技術(shù)相結(jié)合完成系統(tǒng)設(shè)計,同時設(shè)計了人員信息管理、宿舍信息管理、室友匹配管理、申請管理、測試問卷管理等功能模塊。
關(guān)鍵字:軟件開發(fā);宿舍管理;SpringBoot;決策樹算法;MBTI
中圖分類號:TP311? ? ? 文獻標識碼:A
文章編號:1009-3044(2024)07-0037-04
開放科學(資源服務(wù))標識碼(OSID)
0 引言
隨著高校招生規(guī)模不斷擴大,學生人數(shù)逐漸增多,宿舍中人際矛盾也愈發(fā)明顯。近年來不斷有高校惡性事件發(fā)生,如校園霸凌、宿舍傷人事件等,而宿舍作為學生在大學生活中最重要的場所之一,也是在校停留時間最長的地方,對大學生日后的發(fā)展以及心理有著極為重要的作用。
因此,宿舍管理工作需要改變思維方式,改革服務(wù)模式,以更好地滿足學生需求,提高管理效率,并推動校園信息化建設(shè)。所以,本系統(tǒng)旨在通過學生的MBTI測試,建立一個能夠分配室友的宿舍管理系統(tǒng),以達到改善宿舍工作管理的效果。本系統(tǒng)的優(yōu)勢在于:提高學生學習效率,改善宿舍整體滿意度;減少宿舍的矛盾與沖突,提升學生幸福感;提高宿舍管理效率,體現(xiàn)大學的人文關(guān)懷。
1 國內(nèi)外研究現(xiàn)狀
2023年Han H等在“Research on the Intelligent Distribution System of College Dormitory Based on the Decision Tree Classification Algorithm”文獻中,根據(jù)大學生個人偏好收集大一新生數(shù)據(jù),進行分類比較,采用基于信息增益原理的決策樹分類算法作為宿舍分配的核心算法,確定學生個人偏好和決策樹分類偏好的描述規(guī)則,滿足學生個性分類對宿舍的要求,為智能宿舍分配系統(tǒng)奠定了基礎(chǔ)[1]。
2020年Fosnacht K等在“The Relationship of First-Year Residence Hall Roommate Assignment Policy with Interactional Diversity and Perceptions of the Campus Environment”文獻中提出學生宿舍是進行多樣化互動的場所,并且一個多元化的學生群體是有價值的,能夠促進他們之間的學習和發(fā)展。研究了室友分配過程中如何影響學生的互動多樣性和校園環(huán)境的看法,以及這些關(guān)系是否因種族或民族而異[2]。
2021年吳志豐等在《一種基于學生特性的智能宿舍分配方法與系統(tǒng)》文獻中,設(shè)計了KMeans算法模型對學生進行統(tǒng)一的宿舍分配,包括學生客觀信息提取,學生主觀信息提取,綜合學生各項信息形成學生特性模型,宿舍預(yù)分配并生成宿舍屬性,學生選擇是否愿意入住,結(jié)合學生實際意愿重新調(diào)整宿舍分配。幫助學校更高效,更合理地分配學生宿舍資源,體現(xiàn)以人為本的理念[3]。
2021年蔣晟等在《基于SpringBoot的學生宿舍管理系統(tǒng)的設(shè)計與實現(xiàn)》文獻中,設(shè)計了SpringBoot架構(gòu)模式與EasyUI前臺框架相結(jié)合的學生宿舍管理系統(tǒng),實現(xiàn)了學生的入住寢室與交換寢室管理、寢室衛(wèi)生與日常的評級管理、宿舍的報修管理等功能,降低了管理宿舍的難度[4]。
2023年李鏡煥等在《基于學生偏好的宿舍分配系統(tǒng)的設(shè)計與構(gòu)建》文獻中,針對學生自身住宿偏好,提出“生活習慣差異”等四類調(diào)查問題,以調(diào)查問卷的回收數(shù)據(jù)作為分析依據(jù),采用基于信息增益原則的決策樹分類算法作為宿舍分配的核心算法,確定基于學生自身偏好與決策樹分類的偏好狀態(tài)描述規(guī)則,得出最佳分類方法,以期滿足學生對住宿分配的個性化需求,為高校宿舍智能分配系統(tǒng)奠定基礎(chǔ)[5]。
2 算法設(shè)計
2.1 設(shè)計MBTI問卷
2.2 MBTI測試規(guī)則
通過對表1中用戶選擇的同類字母進行統(tǒng)計,選出個數(shù)最大的字母(共4個字母),作為最終的MBTI測試結(jié)果。本系統(tǒng)使用Java來調(diào)用Wake包中的J48決策樹算法,以預(yù)測學生的MBTI人格類型,并且如果四個字母中有三個相同,也就是相似度大于或等于75%,就將其視為性格相似,匹配為舍友。具體匹配步驟如下。
1) 數(shù)據(jù)預(yù)處理,首先,需要將MBTI問卷結(jié)果轉(zhuǎn)化為可以被J48算法接受的格式。每個字母可以作為一個特征,所以你需要將每個MBTI類型轉(zhuǎn)化為一個特征向量。
2) 訓練決策樹模型,使用Java語言調(diào)用Wake包中的J48算法,根據(jù)學生MBTI測試的結(jié)果,對所有數(shù)據(jù)庫中MBTI類型和對應(yīng)的學生等數(shù)據(jù)來訓練決策樹模型。
3) 進行分類預(yù)測,對于每個學生,使用他們的MBTI類型和訓練好的模型來進行預(yù)測。模型將返回一個預(yù)測的人格類型。
4) 根據(jù)預(yù)測的MBTI類型匹配舍友,檢查每個學生預(yù)測的人格類型,當四個字母相似度大于等于75%時,進行舍友匹配,也可通過申請換宿,宿管進行審核后成為舍友。
2.3 決策樹算法
2.3.1 熵
在信息論和概率統(tǒng)計中,熵表示隨機變量不確定性的度量。設(shè)X是一個取有限個值的離散隨機變量,其概率分布為:P(X=Xi)=pi,i=1,2,...,n。則隨機變量X的熵定義為H(X)=-∑pi log pi。因熵只依賴于X的分布,而與X無關(guān),所以可將X的熵記作H(p),即H(p)=-∑pi log pi。熵越大,隨機變量的不確定性就越大。
當pi=1或pi=1時,H(p)等于0,此時隨機變量是完全沒有不確定性的。當pi=0.5時,H(p)等于1,此時熵取值最大,隨機變量不確定性最大。
2.3.2 信息增益與ID3算法
信息增益是一種用來衡量特征對數(shù)據(jù)集分類能力的指標。在ID3算法中,特征選擇準則是最大化信息增益。信息增益是通過計算數(shù)據(jù)集在某個特征上的條件熵與數(shù)據(jù)集的熵之間的差異得到的。具體步驟如下。
1) 計算數(shù)據(jù)集的熵H(D),即所有樣本的類別分布的不確定性。
2) 計算特征A上進行劃分后的條件熵HA(D),即對特征A每個取值下,數(shù)據(jù)集的平均不確定性。計算方式為:
[HA(D)=i=1mDiD×H(Di)]
式子中,m是特征A的取值個數(shù),|Di|是特征A取值的i種情況下的樣本數(shù)量,H(Di)是根據(jù)特征A的取值把數(shù)據(jù)集劃分后得到的子集信息熵。
3) 通過將數(shù)據(jù)集的熵減去特征A的條件熵,得到該特征的信息增益Gain(A)。
[Gain(A)=H(D)-HA(D)]
信息增益越大,表示特征對于數(shù)據(jù)集的分類能力越強,能夠減少數(shù)據(jù)集的不確定性。根據(jù)其大小選擇最優(yōu)的特征進行節(jié)點劃分。ID3算法使用信息增益作為特征選擇指標,可以幫助決策樹算法確定最佳的特征來進行節(jié)點劃分,從而構(gòu)建出具有較好分類能力的決策樹模型。
2.3.3 剪枝
決策樹生成算法是一種通過遞歸過程構(gòu)建決策樹的方法,這個過程會持續(xù)進行直到無法進一步分割或者達到預(yù)設(shè)的停止條件。在構(gòu)建決策樹的過程中,每個內(nèi)部節(jié)點代表一個特征測試,每個分支表示該特征的一個可能取值,而每個葉子節(jié)點則對應(yīng)一個決策結(jié)果。為了防止過擬合并提高模型的泛化能力,剪枝技術(shù)被廣泛應(yīng)用。剪枝主要分為兩種策略:預(yù)剪枝和后剪枝。
預(yù)剪枝是在決策樹生長過程中實施的。該過程基于一些預(yù)先設(shè)定的規(guī)則或啟發(fā)式策略來判斷是否應(yīng)繼續(xù)分裂某個節(jié)點。預(yù)剪枝的優(yōu)點是操作簡單,但其缺點是可能會導致模型過于簡化,從而丟失一些重要的細節(jié)和模式。
后剪枝則是在決策樹完全生長之后進行的優(yōu)化步驟。該過程首先構(gòu)建出一棵完整的決策樹,然后從底部的葉子節(jié)點開始,逐層向上檢查是否可以通過刪除某些子樹或葉節(jié)點來改善模型的性能。如果刪除某個節(jié)點后,整體模型的復雜性降低且預(yù)測精度沒有明顯下降,那么就會保留這個剪枝操作。后剪枝的優(yōu)點是可以更精細地控制模型的復雜度,減少過擬合的風險,但其缺點是計算成本較高[6]。
3 系統(tǒng)設(shè)計
3.1 用例圖設(shè)計
通過需求分析,本系統(tǒng)的總用例圖如圖1所示,共有3個參與者,分別為學生、宿舍管理員、超級管理員。
3.2 功能設(shè)計
1) MBTI問卷測試:學生在本模塊進行填寫屬于自己的人格特質(zhì)測試問卷,填寫完后可顯示自己的人格類型。
2) 生活問卷測試問卷:學生可以在此模塊填寫自己的生活習慣。
3) MBTI舍友匹配:學生可以在此模塊匹配與之相似的舍友,具體是通過問卷中的4個字母組合進行分類預(yù)測。
4) 調(diào)宿管理:宿舍管理員可以在此模塊查看并批閱學生所提交的調(diào)宿申請。
5) 樓宇房間信息管理:宿舍管理員在模塊管理各個樓宇及房間信息。
6) 寢室人員分配:宿舍管理員通過后臺對未住滿的宿舍進行分配管理。
7) 學生信息管理:宿舍管理員在此模塊進行學生的賬號分配,學生信息等管理。
8) 宿管信息管理:超級管理員在此模塊進行宿管的賬號分配等管理。
9) 報修管理:宿舍管理員在此模塊可以查看學生所提交的報修申請并進行審核。
10) 公告管理:宿舍管理員可以在此模塊發(fā)送公告。
11) 訪客管理:宿舍管理員在此模塊可以進行訪客的信息管理。
本系統(tǒng)的功能結(jié)構(gòu)圖如圖2所示。
3.3 數(shù)據(jù)庫設(shè)計
根據(jù)分析,可得到本系統(tǒng)的部分E-R圖如圖3所示。舍友分配需要7張表,分別存儲學生信息、舍友分配信息、樓宇房間信息、換宿信息、MBTI信息等。
1) 學生信息表:用來存儲學生基本信息,其中有性別、年齡、學號、姓名、聯(lián)系方式等。
2) 宿舍表:用來存儲整個學校宿舍的信息,其中記錄著宿舍的房間號、樓層號、可容納數(shù)。
3) 宿舍樓表:用來存儲學校有多少個宿舍樓的信息,其中有樓棟信息和樓棟屬性,樓棟屬性有3個,分別為:男生宿舍樓、女生宿舍樓、教職工宿舍樓。
4) 換宿表:用來存儲通過MBTI類型進行舍友匹配結(jié)果的信息,學生通過該匹配結(jié)果,選擇合適的室友,申請換宿,宿舍管理員可以進行對換宿的狀態(tài)進行修改。
5) 舍友分配表:用來存儲每個學生的宿舍分配情況,主鍵是學生學號,外鍵是宿舍表的id,床位位號是一個多值屬性,也就是多少個床位,床位數(shù)是根據(jù)宿舍表中的可容納數(shù)來決定。
6) MBTI測試結(jié)果表:用來存儲每個學生進行MBTI問卷測試得出結(jié)果的信息。
7) MBTI類型表:用來設(shè)置MBTI類型,其中需要設(shè)置16中MBTI類型,分別為INTJ、INTP、ENTJ、ENTP、INFJ、INFP、ENFJ、ENFP、ISTJ、ISFJ、ESTJ、ESFJ、ISTP、ISFP、ESTP、ESFP這16種人格特質(zhì)類型。
4 系統(tǒng)實現(xiàn)
本系統(tǒng)的首頁會對學生的人數(shù)、宿舍等信息進行統(tǒng)計并可視化展示。其次,在我的宿舍里可以看到自己的宿舍信息,以及舍友MBTI類型。通過MBTI測試的結(jié)果對舍友進行匹配,若是匹配到的舍友不在同一個宿舍,也通過點擊“申請成為舍友”,最終宿管在后臺進行審核后成為舍友。舍友匹配實現(xiàn)如圖4所示。
5 結(jié)束語
本系統(tǒng)采用B/S模式進行開發(fā),后端使用SpringBoot框架,前端使用VUE框架,數(shù)據(jù)庫使用MySQL進行開發(fā)本系統(tǒng)。先在首頁利用可視化技術(shù)進行數(shù)據(jù)展示,再根據(jù)學生MBTI的測試結(jié)果,結(jié)合決策樹算法進行相似度比較并分類預(yù)測,得出與之類型相似的室友,希望能有效地解決傳統(tǒng)管理方式存在的問題,提升高校宿舍管理效率,促進校園信息化建設(shè)的發(fā)展。
參考文獻:
[1] HAN H,WANG B.Research on the Intelligent Distribution System of College Dormitory Based on the Decision Tree Classification Algorithm[J].當代教育研究(百圖),2023,7(2):7-14.
[2] FOSNACHT K,GONYEA R M,GRAHAM P A.The relationship of first-year residence hall roommate assignment policy with interactional diversity and perceptions of the campus environment[J].The Journal of Higher Education,2020,91(5):781-804.
[3] 吳志豐,劉晨旭,姚金偉,等.一種基于學生特性的智能宿舍分配方法與系統(tǒng):CN112766832A[P].2021-05-07.
[4] 蔣晟,陳科.基于SpringBoot的學生宿舍管理系統(tǒng)的設(shè)計與實現(xiàn)[J].現(xiàn)代信息科技,2021,5(12):6-9.
[5] 李鏡煥,韓慧萍.基于學生偏好的宿舍分配系統(tǒng)的設(shè)計與構(gòu)建[J].高校后勤研究,2023(8):28-31.
[6] 鄭力嘉,宋冰.決策樹分類算法的預(yù)剪枝與優(yōu)化[J].自動化儀表,2023,44(5):56-62.
【通聯(lián)編輯:朱寶貴】