徐國(guó)保
(廣東海洋大學(xué) 電子與信息工程學(xué)院,廣東 湛江 524088)
近年來(lái),國(guó)內(nèi)外大多數(shù)高校都在理工科專(zhuān)業(yè)開(kāi)設(shè)MATLAB語(yǔ)言及應(yīng)用課程,MATLAB語(yǔ)言已經(jīng)成為本科生和研究生學(xué)習(xí)基礎(chǔ)課、專(zhuān)業(yè)課、科技競(jìng)賽和畢業(yè)論文中最常用、最有效的工具之一[1]。國(guó)內(nèi)很多高校教師對(duì)MATLAB語(yǔ)言在不同課程教學(xué)中的應(yīng)用做了很多嘗試,取得一定的效果[2-6]。此外,很多高校教師對(duì)MATLAB語(yǔ)言及應(yīng)用課程的教學(xué)方法、教學(xué)內(nèi)容、教學(xué)模式、考核方式等方面進(jìn)行研究和探討,也取得了一定的成效。文獻(xiàn)[7]研究MATLAB語(yǔ)言與應(yīng)用課程教學(xué)設(shè)計(jì);文獻(xiàn)[8]研究基于教學(xué)目標(biāo)的MATLAB語(yǔ)言課程教學(xué)方法;文獻(xiàn)[9]研究MATLAB課程中的“引導(dǎo)式面向?qū)ο蟆苯虒W(xué)法;文獻(xiàn)[10]探討任務(wù)驅(qū)動(dòng)式教學(xué)法在MATLAB教學(xué)中的應(yīng)用。
MATLAB語(yǔ)言及應(yīng)用課程特點(diǎn)是學(xué)時(shí)少,教學(xué)內(nèi)容多,實(shí)踐性強(qiáng)。教師如何在學(xué)時(shí)越來(lái)越少的情況下,讓學(xué)生盡可能多地掌握MATLAB語(yǔ)言的內(nèi)容,利用MATLAB解決基礎(chǔ)課和專(zhuān)業(yè)課的學(xué)習(xí)問(wèn)題,提高編程能力和解決實(shí)際問(wèn)題的能力,是MATLAB語(yǔ)言課程教學(xué)改革面臨的迫切需要解決的問(wèn)題。
現(xiàn)有MATLAB語(yǔ)言及應(yīng)用課程的教學(xué)內(nèi)容、教學(xué)手段、考核形式、教材和教學(xué)模式已不能適應(yīng)應(yīng)用型人才培養(yǎng)的計(jì)算機(jī)語(yǔ)言課程教學(xué)要求,MATLAB語(yǔ)言及應(yīng)用課程教學(xué)主要存在4方面問(wèn)題。
隨著教育部對(duì)各個(gè)專(zhuān)業(yè)的總學(xué)時(shí)不斷壓縮,各高校MATLAB語(yǔ)言及應(yīng)用課程的學(xué)時(shí)數(shù)大多為24~48,而且學(xué)時(shí)越來(lái)越少,如廣東海洋大學(xué)《2009級(jí)本科人才培養(yǎng)方案》中該課程是36學(xué)時(shí),而《2017級(jí)本科人才培養(yǎng)方案》中該課程是24學(xué)時(shí),學(xué)時(shí)壓縮了33.3%。
MathWorks公司幾乎每年會(huì)推出1~2個(gè)MATLAB新的版本,功能越來(lái)越強(qiáng)大,軟件的功能覆蓋數(shù)學(xué)分析、數(shù)值計(jì)算、符號(hào)計(jì)算、優(yōu)化分析、自動(dòng)控制、系統(tǒng)仿真、信號(hào)處理、圖像處理、數(shù)理統(tǒng)計(jì)、人工神經(jīng)網(wǎng)絡(luò)、人工智能、電力電子系統(tǒng)、通信工程、生物化學(xué)、金融系統(tǒng)等各個(gè)領(lǐng)域。隨著MATLAB功能不斷地完善和補(bǔ)充以及新工具箱的開(kāi)發(fā),MATLAB的課程內(nèi)容也越來(lái)越多。
MATLAB軟件更新非???,該課程的教學(xué)內(nèi)容明顯滯后于新技術(shù)的發(fā)展,教學(xué)手段仍是以傳統(tǒng)的多媒體教學(xué)為主,教學(xué)手段單一。
目前市面上有很多MATLAB語(yǔ)言及應(yīng)用課程的教材,但高水平的優(yōu)秀教材很少,一般很難找到一本特別讓高校滿(mǎn)意的教材。
面對(duì)學(xué)分制改革,學(xué)時(shí)越來(lái)越少,MATLAB軟件功能越來(lái)越強(qiáng)大和完善,課程教學(xué)內(nèi)容越來(lái)越多的矛盾,教師要根據(jù)不同專(zhuān)業(yè)的特點(diǎn),在授課過(guò)程中優(yōu)化和更新教學(xué)內(nèi)容,篩選和提煉教學(xué)內(nèi)容;教會(huì)學(xué)生使用MATLAB語(yǔ)言完備的強(qiáng)大的幫助系統(tǒng)功能,會(huì)使用help和look for 幫助函數(shù)以及在線幫助系統(tǒng)。lookfor函數(shù)可以幫助查找MATLAB庫(kù)里是否已有函數(shù)的功能;help函數(shù)可以幫助了解函數(shù)的功能、語(yǔ)法、參數(shù)說(shuō)明,并給出具體例子;在線幫助系統(tǒng)可以讓學(xué)生全方位了解MATLAB幫助系統(tǒng),找到自己感興趣的工具箱或者專(zhuān)業(yè)方向的例題,通過(guò)學(xué)習(xí)給出的問(wèn)題幫助文檔,能快速了解MATLAB語(yǔ)言解決問(wèn)題的具體用法。教師在每個(gè)章節(jié)講授完理論知識(shí)和MATLAB函數(shù)之后,要根據(jù)不同專(zhuān)業(yè)學(xué)生的背景,選取一定數(shù)量的解決本專(zhuān)業(yè)實(shí)際問(wèn)題的例子進(jìn)行講解,提高學(xué)生分析和解決實(shí)際問(wèn)題的能力。另外,在MATLAB語(yǔ)言基本內(nèi)容講解完后,要結(jié)合不同專(zhuān)業(yè)背景,選取MATLAB在不同專(zhuān)業(yè)應(yīng)用內(nèi)容進(jìn)行講解,構(gòu)建任務(wù)驅(qū)動(dòng)、問(wèn)題導(dǎo)向?yàn)榛A(chǔ)的新型課程知識(shí)體系,提高學(xué)生實(shí)際動(dòng)手能力,達(dá)到培養(yǎng)應(yīng)用型人才的目的。
目前市面上各個(gè)出版社出版的MATLAB語(yǔ)言教材很多,很多教材僅僅是介紹MATLAB的語(yǔ)法和基本知識(shí),很少涉及專(zhuān)業(yè)的應(yīng)用,因此,高水平的獲得認(rèn)可的優(yōu)秀教材很少。結(jié)合豐富的教學(xué)經(jīng)驗(yàn),筆者主編的《MATLAB/Simulink實(shí)用教程:編程、仿真及電子信息學(xué)科應(yīng)用》教材在清華大學(xué)出版社出版,深入淺出地介紹MATLAB語(yǔ)言的基礎(chǔ)知識(shí)以及MATLAB在電子信息處理、控制系統(tǒng)和通信系統(tǒng)中的應(yīng)用,書(shū)中還專(zhuān)門(mén)設(shè)計(jì)了10個(gè)MATLAB基本實(shí)驗(yàn),便于學(xué)生學(xué)習(xí)和實(shí)踐。全書(shū)以最新MATLAB 2016a版本介紹其基本功能和應(yīng)用,注重電子信息類(lèi)相關(guān)學(xué)科領(lǐng)域相結(jié)合,突出應(yīng)用,內(nèi)容涉及較廣,滿(mǎn)足一般用戶(hù)使用的各種功能。本書(shū)編排邏輯結(jié)構(gòu)合理,先基礎(chǔ)后應(yīng)用,先理論后實(shí)驗(yàn),循序漸進(jìn),全書(shū)內(nèi)容共分為11章,包括MATLAB語(yǔ)言概述、矩陣及其運(yùn)算、程序設(shè)計(jì)、數(shù)值計(jì)算、符號(hào)計(jì)算、繪圖及圖像處理基礎(chǔ)、Simulink仿真、MATLAB在電子信息處理中應(yīng)用、MATLAB在控制系統(tǒng)中應(yīng)用、MATLAB在通信系統(tǒng)中應(yīng)用和MATLAB實(shí)驗(yàn)。本書(shū)尤其適合作為電子信息工程、通信工程、自動(dòng)化、電氣工程及其自動(dòng)化等電子信息類(lèi)各專(zhuān)業(yè)本科生或者研究生的教學(xué)用書(shū)。
為了學(xué)生學(xué)習(xí)MATLAB語(yǔ)言,共享課程建設(shè)的成果,構(gòu)建和完善MATLAB語(yǔ)言及應(yīng)用精品資源共享課程網(wǎng)站是非常有必要的。網(wǎng)站內(nèi)容主要分為教學(xué)資源展示模塊、互動(dòng)交流模塊、作業(yè)模塊和考試系統(tǒng)模塊。教學(xué)資源模塊主要是展示該課程的相關(guān)教學(xué)資源,如課程簡(jiǎn)介、課程目標(biāo)、授課對(duì)象、課程實(shí)驗(yàn)指導(dǎo)、課程教學(xué)視頻和課程公告。網(wǎng)站界面美觀,內(nèi)容豐富,功能較為齊全,其網(wǎng)址為http://210.38.137.11:10086/MatlabCourse/。
考慮到MATLAB軟件的函數(shù)、程序代碼、幫助文件信息等都是英文字母,課件盡量用英文,少用中文制作,盡量用英文表述例題,以便學(xué)生更快、更容易地使用MATLAB軟件。課件中示例的程序代碼要晚一會(huì)兒顯示出來(lái),給學(xué)生留出思考的時(shí)間,然后,教師在黑板上給學(xué)生重點(diǎn)講解關(guān)鍵函數(shù)的使用技巧和注意事項(xiàng),通過(guò)MATLAB軟件,實(shí)時(shí)演示程序代碼,這樣更能激發(fā)學(xué)生學(xué)習(xí)MATLAB語(yǔ)言的積極性。
為了調(diào)動(dòng)學(xué)生的學(xué)習(xí)興趣,在制作MATLAB語(yǔ)言第一次課件時(shí),可以重點(diǎn)介紹MATLAB軟件的作用。通過(guò)舉例介紹相關(guān)專(zhuān)業(yè)課程中的經(jīng)典仿真案例,如求解矩陣方程的解、符號(hào)運(yùn)算、用MATLAB繪制同個(gè)坐標(biāo)軸下不同曲線、Simulink仿真、MATLAB軟件自帶的Demo 和 Example等,并演示每個(gè)例題的實(shí)驗(yàn)結(jié)果,給學(xué)生直觀地展示MATLAB軟件強(qiáng)大的功能,簡(jiǎn)單易學(xué)等特性。另外,還可以簡(jiǎn)單講解教師在該領(lǐng)域的相關(guān)研究,如筆者在課堂上向?qū)W生展示自己在碩士論文中用MATLAB編程實(shí)現(xiàn)數(shù)字水印算法的思路,以及演示算法結(jié)果;在博士論文中用MATLAB編程實(shí)現(xiàn)機(jī)器人視覺(jué)導(dǎo)航里的道理分隔和邊緣檢測(cè)算法的思想,以及演示算法的結(jié)果??紤]到大一和大二學(xué)生還未開(kāi)始學(xué)習(xí)專(zhuān)業(yè)課程,缺乏對(duì)專(zhuān)業(yè)知識(shí)的認(rèn)識(shí),課件在介紹實(shí)際例子和仿真案例時(shí)不宜過(guò)細(xì),應(yīng)以簡(jiǎn)單介紹原理和思路、重點(diǎn)演示結(jié)果為主,讓學(xué)生知道MATLAB語(yǔ)言對(duì)今后課程學(xué)習(xí)和專(zhuān)業(yè)實(shí)際問(wèn)題解決的重要性,激發(fā)學(xué)生學(xué)習(xí)MATLAB的興趣。
課件按照章節(jié)進(jìn)行制作,給出本章的內(nèi)容提綱、重點(diǎn)、難點(diǎn)、作業(yè)等信息,以便學(xué)生預(yù)習(xí)和復(fù)習(xí)。在介紹完基本內(nèi)容和常用函數(shù)后,每章課件還要結(jié)合學(xué)生的專(zhuān)業(yè),介紹相應(yīng)的實(shí)際問(wèn)題,講解具體代碼,演示結(jié)果,提高學(xué)生學(xué)習(xí)MATLAB語(yǔ)言的積極性,增強(qiáng)學(xué)生應(yīng)用MATLAB解決實(shí)際問(wèn)題的能力。最后一次課件中,重點(diǎn)講解MATLAB語(yǔ)言解決本專(zhuān)業(yè)的課程學(xué)習(xí)問(wèn)題和專(zhuān)業(yè)的科學(xué)問(wèn)題,讓學(xué)生知道MATLAB語(yǔ)言可以用于今后學(xué)習(xí)專(zhuān)業(yè)課和解決專(zhuān)業(yè)的科學(xué)問(wèn)題。
MATLAB語(yǔ)言及應(yīng)用課程的理論教學(xué)可以采用多媒體授課為主、板書(shū)為輔的授課模式。教師要在黑板上推導(dǎo)一些簡(jiǎn)單的數(shù)學(xué)公式,這樣有助于培養(yǎng)學(xué)生的邏輯思維和邏輯推理能力。授課地點(diǎn)應(yīng)在實(shí)驗(yàn)室電腦機(jī)房里進(jìn)行,這樣學(xué)生可以在教師講解MATLAB函數(shù)時(shí),在自己電腦的MATLAB環(huán)境上調(diào)用函數(shù),查看函數(shù)幫助文件,更容易、更直觀地學(xué)習(xí)和掌握MATLAB函數(shù)的使用技巧;另外可以通過(guò)實(shí)驗(yàn)室管理軟件,同步廣播和傳送文件,在教師講解完例題后,學(xué)生可以在電腦里運(yùn)行例題程序代碼,很直觀地看到例題的結(jié)果,激發(fā)學(xué)習(xí)MATLAB語(yǔ)言的興趣,提高學(xué)習(xí)效果。
課堂上教師可以使用實(shí)例教學(xué)法,如圖1所示,根據(jù)學(xué)生專(zhuān)業(yè)方向,多引入實(shí)例。首先,教師提出實(shí)際問(wèn)題,讓學(xué)生思考;然后在黑板上畫(huà)出程序流程圖,給出MATLAB程序代碼;最后,對(duì)程序代碼進(jìn)行詳細(xì)講解,演示程序運(yùn)行結(jié)果,總結(jié)歸納。這種實(shí)例教學(xué)模式既能提高學(xué)生的學(xué)習(xí)興趣和學(xué)習(xí)效率,又能培養(yǎng)學(xué)生分析和思考問(wèn)題的能力。
圖1 MATLAB實(shí)例教學(xué)模式
MATLAB語(yǔ)言及應(yīng)用課程的考核可以采用編程和大論文相結(jié)合的形式,讓學(xué)生結(jié)合專(zhuān)業(yè)背景和感興趣的問(wèn)題,利用MATLAB語(yǔ)言編程實(shí)現(xiàn),完成一份大論文。論文內(nèi)容包括問(wèn)題描述、理論分析、程序代碼、程序結(jié)果及分析、學(xué)習(xí)體會(huì)及建議和參考文獻(xiàn)。注重過(guò)程考核,平時(shí)考核采用多種途徑,包括課程實(shí)驗(yàn)(上機(jī))、小測(cè)驗(yàn)、作業(yè)、課堂討論等。課程考核內(nèi)容和考核方式的改革能夠體現(xiàn)學(xué)生知識(shí)、能力和綜合素質(zhì)的整體考核。
廣東海洋大學(xué)在電子信息工程、通信工程、自動(dòng)化和電氣工程及其自動(dòng)化4個(gè)專(zhuān)業(yè)2016級(jí)和2017級(jí)的MATLAB語(yǔ)言及應(yīng)用課程中進(jìn)行課程改革實(shí)踐,學(xué)生反饋的意見(jiàn)整體不錯(cuò),理論聯(lián)系實(shí)際緊密,教材使用效果好。2016級(jí)電子信息工程專(zhuān)業(yè)6個(gè)班190名學(xué)生對(duì)MATLAB語(yǔ)言及應(yīng)用課程的評(píng)價(jià)成績(jī)是93.461,學(xué)生對(duì)教師上課效果和教學(xué)改革模式是充分認(rèn)可的。
據(jù)不完全統(tǒng)計(jì),MATLAB語(yǔ)言及應(yīng)用教材出版不到一年時(shí)間,全國(guó)已經(jīng)有沈陽(yáng)工業(yè)大學(xué)、貴州大學(xué)、南華大學(xué)、江漢大學(xué)、湖南工程學(xué)院、廣東第二師范學(xué)院、西南科技大學(xué)、北京建筑大學(xué)、吉林工程技術(shù)師范學(xué)院等10多個(gè)本科院校選用,并得到相關(guān)院校的師生認(rèn)可。此外,我們構(gòu)建的MATLAB語(yǔ)言及應(yīng)用精品資源共享課程網(wǎng)站和MATLAB語(yǔ)言及應(yīng)用多媒體課件可以供校內(nèi)外學(xué)習(xí)MATLAB語(yǔ)言的師生隨時(shí)隨地學(xué)習(xí)使用,用戶(hù)使用后評(píng)價(jià)較好。
基于多年使用MATLAB軟件和教授MATLAB語(yǔ)言課程的經(jīng)驗(yàn),提出的MATLAB語(yǔ)言及應(yīng)用課程的多元化立體化教學(xué)改革措施,在廣東海洋大學(xué)電子信息工程、通信工程、自動(dòng)化、電氣工程及其自動(dòng)化4個(gè)專(zhuān)業(yè)試用和實(shí)踐取得了較好的成效,下一步可以繼續(xù)完善,推廣到更多高校使用。