蘇兆品, 胡東輝, 張國富, 蔣建國
(合肥工業(yè)大學(xué)計算機與信息學(xué)院,合肥 230601)
隨著網(wǎng)絡(luò)信息系統(tǒng)在政治、經(jīng)濟、軍事等部門的廣泛應(yīng)用,信息安全變得越來越重要。信息安全的破壞,不僅會導(dǎo)致社會混亂,還會帶來巨大的政治、經(jīng)濟和軍事?lián)p失[1-2]。2016 年4 月,習(xí)近平總書記在“網(wǎng)絡(luò)安全和信息化工作座談會上的講話”中指出:“網(wǎng)絡(luò)空間的競爭,歸根結(jié)底是人才競爭。建設(shè)網(wǎng)絡(luò)強國,沒有一支優(yōu)秀的人才隊伍,沒有人才創(chuàng)造力迸發(fā)、活力涌流,是難以成功的。念好了人才經(jīng),才能事半功倍?!毙畔踩鳛榫W(wǎng)絡(luò)空間安全一級學(xué)科的重要學(xué)科專業(yè),承擔(dān)著為國家培養(yǎng)人才的重任,國內(nèi)很多高校均開設(shè)了信息安全專業(yè)。
信息論與編碼作為信息安全專業(yè)的一門基礎(chǔ)課程,在國內(nèi)外的教學(xué)體系中都處于非常重要的地位[3-4]。它以香農(nóng)三大定理為基礎(chǔ),研究信息傳輸理論和實際通信系統(tǒng)設(shè)計方法,主要介紹信息論與編碼理論的基本知識、方法和工具,包括信息度量、信源編碼、信道編碼等內(nèi)容[5-6]。各高校非常重視信息論與編碼課程的教學(xué)研究。
張平[7]分析了信息論與編碼理論課程的重要地位,并結(jié)合南京郵電大學(xué)計算機學(xué)院信息論與編碼理論課程的教學(xué)現(xiàn)狀,提出了在應(yīng)用型大學(xué)進行雙語教學(xué)、課程網(wǎng)站建設(shè)和考核方式等方面的建議。孫海欣等[8]將雨課堂應(yīng)用于信息論與編碼的課程教學(xué),通過課前預(yù)習(xí)-課堂互動-課后反饋的模式對教學(xué)進行設(shè)計及改革。陳婧等[9]探討了教學(xué)內(nèi)容、教學(xué)方法和教學(xué)手段,并給出了師資隊伍建設(shè)、考試命題和考核方式的改革方案。劉剛等[10]探討了探究式教學(xué)方法在信息論與編碼理論課堂教學(xué)中的應(yīng)用,旨在激發(fā)學(xué)生學(xué)習(xí)興趣,培養(yǎng)學(xué)生分析問題和解決問題的能力。張秋聞等[11]在分析傳統(tǒng)教學(xué)模式問題的基礎(chǔ)上,對信息論與編碼課程的課堂教學(xué)、上機實驗、課程考核等教學(xué)環(huán)節(jié)提出改革措施。劉亞榮等[12]將基于問題的教學(xué)模式(Problem-Based Learning,PBL)應(yīng)用在該課程的實踐教學(xué)中,從教學(xué)方案、項目組織實施形式及評估方法3 個方面進行改革。何瑾[13]設(shè)計信源編碼和信道編碼的編譯碼實驗,將實驗內(nèi)容與相關(guān)專業(yè)課內(nèi)容相結(jié)合,將理論教學(xué)內(nèi)容與應(yīng)用實際緊密聯(lián)系。高山等[14]將CDIO理念(構(gòu)思,設(shè)計,實現(xiàn)和運作)應(yīng)用于信息論與編碼課程的教學(xué)中,解決了理論學(xué)習(xí)與工程實踐能力的失衡問題。席在芳等[15]設(shè)計了基于Matlab 的信息論與編碼課程的實驗,并對其中的一個實驗作了詳細(xì)說明,并通過這些實踐環(huán)節(jié)的具體實施,激發(fā)了學(xué)生對理論知識的學(xué)習(xí)興趣。牛秋娜等[16]設(shè)計和開發(fā)了交互性好、后續(xù)開發(fā)性強的實驗教學(xué)系統(tǒng),將復(fù)雜的計算程序和代碼設(shè)計以M 語言回調(diào)函數(shù)的形式隱藏于后臺,借助于界面控件進行調(diào)用,有效地將抽象理論實例化,增加了學(xué)生學(xué)習(xí)興趣。
信源編碼是信息論與編碼的重要課程內(nèi)容之一,以香農(nóng)第一定理為基礎(chǔ),以提高通信有效性為目的,根據(jù)信源輸出符號序列的統(tǒng)計特性,用最短的碼字序列代替信源符號序列,使編碼后的各碼元含有最大的平均信息量,同時又能保證無失真地恢復(fù)原來的符號序列。常采用的信源編碼方法包括霍夫曼編碼、費諾編碼、游程編碼、算術(shù)編碼等。信源編碼理論和方法為后續(xù)課程密碼學(xué)、信息隱藏、信息系統(tǒng)安全、信息內(nèi)容安全等提供理論和方法基礎(chǔ),而且在圖象、音頻、視頻處理,通信系統(tǒng)等領(lǐng)域也有廣泛實際應(yīng)用。
通過近幾年反復(fù)思考和研討,課程組面向信息安全專業(yè),對信息論與編碼課程設(shè)計內(nèi)容進行了改革和探索,設(shè)計了一種多層次信源編碼設(shè)計內(nèi)容。
課程組在指定教學(xué)計劃和教學(xué)內(nèi)容時,制定了課程目標(biāo)(Course Objectives,CO),主要包括:
CO1掌握信息安全相關(guān)的信息編碼基本知識;
CO2掌握信息編碼的具體方法;
CO3獨立設(shè)計簡單的信息編碼系統(tǒng)。
課程目標(biāo)主要通過課程設(shè)計現(xiàn)場考核成績和實驗報告成績進行評估,具體評價依據(jù)及權(quán)重見表1。
表1 課程目標(biāo)達成情況評價依據(jù) %
信息安全專業(yè)培養(yǎng)培養(yǎng)從事計算機網(wǎng)絡(luò)、通信、電子政務(wù)、電子商務(wù)等領(lǐng)域的信息安全高級專門人才。根據(jù)學(xué)校本科培養(yǎng)要求,課程內(nèi)容需要支撐的畢業(yè)要求(Graduation Requirement,GR)指標(biāo)點主要包括:
GR1能夠根據(jù)實驗方案構(gòu)建實驗系統(tǒng),安全地開展實驗,正確地采集實驗數(shù)據(jù),能對實驗結(jié)果進行分析和解釋,并通過信息綜合得到合理有效的結(jié)論;
GR2能就復(fù)雜計算機工程問題,以口頭、文稿、圖表等方式,準(zhǔn)確表達自己的觀點,回應(yīng)質(zhì)疑,理解與業(yè)界同行和社會公眾交流的差異性;
GR3能在計算機科學(xué)與技術(shù)發(fā)展的大背景下,認(rèn)識到自主和終身學(xué)習(xí)的必要性。
課程目標(biāo)支撐畢業(yè)要求指標(biāo)點達成情況評價依據(jù)如表2 所示。
表2 課程目標(biāo)支撐畢業(yè)要求指標(biāo)點達成情況評價依據(jù)%
由于學(xué)生教育背景和自身發(fā)展的不同,每個學(xué)生具有不同的實際動手能力。如果采取“一刀切”的課程實驗?zāi)J?,會?dǎo)致部分同學(xué)因為無法完成實驗設(shè)計而喪失學(xué)習(xí)的興趣。因此,課程組根據(jù)信息安全專業(yè)的特點,探索并設(shè)計了多層次、多類型信息論與編碼課程設(shè)計內(nèi)容(見圖1),豐富課程設(shè)計內(nèi)容,學(xué)生可以根據(jù)自己的能力選擇合適的題目,從不同層次、不同的側(cè)重點鍛煉學(xué)生的能力,使每個學(xué)生都感受到設(shè)計成功的喜悅。此外,也采取一定的獎勵措施,鼓勵學(xué)生挑戰(zhàn)具有一定難度的題目。這樣可以調(diào)動學(xué)生的積極性和求知欲,為提高學(xué)生的創(chuàng)新能力奠定基礎(chǔ)。
圖1 信息論與編碼課程多層次設(shè)計內(nèi)容
每一層次題目難度不同,設(shè)計要求和課程成績也有所區(qū)別:
(1)第1 層次的基礎(chǔ)題目考察學(xué)生對基本編碼能力的掌握程度,要求4 道題目全部完成,最高課程成績?yōu)椤爸小保?/p>
(2)第2 層次拔高類題目要求學(xué)生具有舉一反三、主動學(xué)習(xí)的能力,在基礎(chǔ)編碼的方式上進一步提升,要求學(xué)生在4 道題目中選擇3 道,最高課程成績?yōu)椤傲肌保?/p>
(3)第3 層次創(chuàng)新應(yīng)用類題目進一步提高了要求,要求學(xué)生具有解決實際安全問題的能力,要求學(xué)生從4 道題目中選擇2 道,最高課程成績?yōu)椤皟?yōu)”。
每個題目設(shè)計內(nèi)容要求及所考察的能力見表3。
表3 實踐內(nèi)容及能力映射
以第3 層次中的題1 為例,說明設(shè)計過程對學(xué)生能力的培養(yǎng)和鍛煉。
題目要求 對一幅BMP格式的灰度圖像(或一段PCM語音)進行霍夫曼編碼。
設(shè)計要求 統(tǒng)計概率,并顯示相應(yīng)的灰度值和概率;對這幅圖像做霍夫曼編碼;并列出編碼結(jié)果;計算平均碼長和熵值,計算編碼效率;并設(shè)計相應(yīng)的譯碼。
考查內(nèi)容 對圖像或音頻多媒體數(shù)據(jù)的理解和基礎(chǔ)應(yīng)用;霍夫曼編碼的實現(xiàn)和在實際中的應(yīng)用;解決問題和處理問題的能力。
設(shè)計思想 分為兩大模塊,分別為:
(1)BMP圖片處理及初始化。讀取圖像文件的頭信息以及像素信息,并進行圖像編碼和解碼,以保證編碼和解碼的正確性。可以將其定義為Compress類,主要包括兩個函數(shù):①compressBMP (string openFilePath, string saveFilePath)。對指定路徑openFilePath的BMP 文件進行編碼,將編碼后的文件保存在saveFilePath 路徑。②deCompressBMP(string openFilePath,string saveFilePath)。對編碼后的文件進行解碼,將解碼得到的BMP圖像保存到對應(yīng)的路徑。
(2)霍夫曼編碼。其核心在于如何構(gòu)造霍夫曼樹。根據(jù)霍夫曼編碼的思想,可以通過設(shè)計4 個類進行實現(xiàn)。①Bnode 類。本質(zhì)上是一個結(jié)構(gòu)體,包括3個屬性,data代表像素值,weight表示權(quán)重,lChild表示結(jié)點的左孩子,rChild表示結(jié)點的右孩子,是構(gòu)成霍夫曼樹的基本結(jié)構(gòu)。②HuffCoding 類。主要作用是統(tǒng)計BMP圖像像素權(quán)值,存儲霍夫曼編碼的結(jié)果值等。③Queue類。主要作用是排序,定義了一個Bnode 隊列,將所有的像素結(jié)點按從小到大的順序排列。④HuffmanTree類。主要作用是構(gòu)造霍夫曼樹,對信源進行編碼,并將編碼后的結(jié)果值存入HuffCoding 類中的數(shù)組中。
測試要求 對不同大小和不同紋理復(fù)雜度的圖像均要進行測試,計算編碼效率,進行比較和分析,并給出分析結(jié)論。
信息論與編碼課程設(shè)計時間為24 學(xué)時,通常在理論內(nèi)容結(jié)束后進行設(shè)計內(nèi)容選題,在現(xiàn)場驗收結(jié)束后1周提交課程設(shè)計報告。從近3 年學(xué)生選題情況來看,38%的學(xué)生選擇第3 層次題目,35%的學(xué)生選擇了第2 層次題目。這說明該實踐內(nèi)容不僅可以培養(yǎng)學(xué)生掌握扎實的信息安全專業(yè)基本理論知識和核心知識,而且進一步培養(yǎng)學(xué)生具有一定的信息安全系統(tǒng)思維方法、科學(xué)研究方法和科學(xué)素養(yǎng),并具備將基礎(chǔ)知識與科學(xué)方法用于系統(tǒng)開發(fā)的初步能力。
設(shè)計內(nèi)容主要是針對霍夫曼編碼、費諾編碼、游程編碼和算術(shù)編碼4 個信源編碼。圖2 給出了4 種信源編碼方法的選題情況??梢?,由于霍夫曼編碼在MP3、JPEG中的廣泛應(yīng)用,學(xué)生對其有極大的學(xué)習(xí)興趣,能更好地發(fā)揮學(xué)習(xí)主動性。
圖2 4種信源編碼方法的選題情況
課程設(shè)計內(nèi)容設(shè)置的目的是為了更好地培養(yǎng)學(xué)生的綜合能力。為了衡量課程設(shè)計內(nèi)容對學(xué)生各項能力的培養(yǎng)情況,課題組設(shè)計了調(diào)查問卷,調(diào)查對象為近3年參與信息論與編碼課程設(shè)計的同學(xué)。
調(diào)查問卷將課程目標(biāo)和畢業(yè)要求指標(biāo)點作為問題,學(xué)生自我評價課程學(xué)習(xí)情況。圖3、4 所示分別給出了對課程目標(biāo)和畢業(yè)要求指標(biāo)點的支持程度(最高分為5,最低分為1)。
從圖3、4 可見,大多數(shù)學(xué)生認(rèn)為課程內(nèi)容能較好地支撐課程目標(biāo)和畢業(yè)要求指標(biāo)點,滿足信息安全專業(yè)的畢業(yè)需求。
圖3 設(shè)計內(nèi)容對課程目標(biāo)的支持程度
圖4 對畢業(yè)要求指標(biāo)點的支持程度
此外,結(jié)合企事業(yè)單位對信息安全本科畢業(yè)生的能力要求,也調(diào)查了信息論與編碼課程設(shè)計內(nèi)容對學(xué)生各種能力提升的培養(yǎng),如圖5 所示。
圖5 學(xué)生能力提升的調(diào)查結(jié)果
在參加調(diào)查問卷的80 位同學(xué)中,有69 位同學(xué)均認(rèn)為個人分析和解決問題的能力得到提升,有66 位同學(xué)認(rèn)為通過課程設(shè)計進一步加深了對理論課程中基礎(chǔ)知識的理解,有59 位同學(xué)認(rèn)為在設(shè)計過程中個人實踐能力得到了鍛煉。但是,由于課程設(shè)計要求每位同學(xué)獨立選題和完成,同學(xué)之間的合作、交流能力還需要進一步加強培養(yǎng)。
在調(diào)查問卷的最后,部分學(xué)生也給出了一些建議,為課程的持續(xù)改進提供了實用的素材。課程組結(jié)合學(xué)生建議、信息安全本科畢業(yè)要求以及社會對信息安全人才的需求等,對課程實施以下的持續(xù)改進措施:
(1)調(diào)研開設(shè)信息論與編碼相關(guān)課程的兄弟院校,了解課程及實踐內(nèi)容設(shè)計,學(xué)習(xí)優(yōu)秀的教學(xué)經(jīng)驗。
(2)廣泛調(diào)研信息論與編碼知識在工程實際中的應(yīng)用情況,根據(jù)這些應(yīng)用設(shè)置更加多樣的設(shè)計內(nèi)容,把信源編碼、信道編碼等知識都囊括在實踐環(huán)節(jié),做到理論與實踐的有機結(jié)合。
(3)做到設(shè)計題目每年更新,以適應(yīng)信息安全快速發(fā)展的需求。
(4)設(shè)計開放性題目,讓學(xué)生自由組隊,培養(yǎng)團隊合作精神。
信息論與編碼課程設(shè)計作為信息安全專業(yè)重要基礎(chǔ)課程的延伸和擴展,對信息安全人才的培養(yǎng)至關(guān)重要。課程組以培養(yǎng)信息安全應(yīng)用型人才為目的,改革課程設(shè)計內(nèi)容,對內(nèi)容進行優(yōu)化和整合,使得理論學(xué)習(xí)與實際實踐有機結(jié)合,培養(yǎng)學(xué)生具有創(chuàng)新實踐能力,盡可能滿足社會對信息安全人才的的需求和發(fā)展。