王偉征
摘要:為了提升MATLAB這門公共選修課的教學效果,從教學內容設計、教學過程實施、課程成績評定等方面進行了探究與實踐。提出的教學實施方案以興趣培養為基本出發點,以項目驅動為主要教學手段,以多樣化考評為重要激勵方式。實踐證明它能夠激發學生的學習動力,發揮學生的學習主體作用,提高學生的創造性學習能力,取得了非常好的教學效果,為高校MArLAB公選課程的教學提供了新的思路。
關鍵詞:MALAB教學;創造性學習;學習主體;興趣培養;項目驅動
中圖分類號:G642
文獻標志碼:A
文章編號:1006-8228(2017)01-73-03
0.引言
MATLAB是一款數學類科技應用軟件,不但具有很強的數值計算和數據處理能力,而且還具備繪制函數圖像、對非線性動態系統建模與仿真等功能,其廣泛應用于數學分析、工程計算、自動控制、圖像處理、信號處理與通訊、人工智能、金融建模設計與分析等領域。它不僅功能強大,而且簡單易學、編程效率高,深受廣大工程師、學者等科技工作者的喜愛,現已成為公認的最優秀的工程應用開發環境之一。
鑒于MATLAB強大的功能和廣泛的應用背景,我國很多高校把MATLAB編程列為本科生、甚至研究生需要掌握的基本編程技能之一。大部分理工科專業都開設了這門選修課,因此在很多高校MATLAB是一門全校性的公共選修課。在其教學實施過程中,任課教師應該根據學生的專業、年級等特點組織教學內容,設計教學方式,因材施教,以達到教學效果的最優化。本文作者結合自己多年的教學實踐,對該課程的實施方案進行了探究。
1.當前MATLAB課程教學中普遍存在的問題
(1)目前高校的MATLAB公選課教學通常采用理論講授與上機實踐相結合的方式。理論講授占用的課時一般大于上機實踐課時。一般來說,學生對選修課的重視程度沒有必修課那么高。而像MATLAB這種計算機語言類課程的理論課普遍采用“填鴨式”的教學方式,學生沒有主動思維的空間,課聽起來枯燥乏味,導致學生的學習興趣不大,學習動力不足,甚至產生厭學情緒。另一方面,沒有充足的上機實踐訓練,學生的動手能力就無法提升。
(2)學生對MATLAB的實用性認識不夠。教學內容沒能與專業知識接軌,大部分學生不明白學習這門課程能為他們將來的學習和工作帶來什么幫助,學習時不知道應該重點掌握什么。相當一部分學生學習的目的只是通過考試,拿到學分。這也在很大程度上影響了學生的學習效果。
(3)考核形式不能有效激勵學生認真學習。MATLAB課程慣用的考核大都采用平時考試(課外作業、實驗作業、考勤等)和期末考試(理論考試和上機考試)相結合的方式。這種考核結果通常不能準確地反應學生對MATLAB的實際掌握程度,也不能有效地激勵學生深入系統地學習MATLAB。2強調MATLAB的美和實用性,激發學習興趣
在授課過程中可以利用MATLAB強大的繪圖和動畫功能,向學生展示MATLAB繪制的優美圖片或絢麗的動畫。例如:編寫代碼繪制優美的螺旋曲面圖;利用MATLAB程序演示煙花之美,如墨的夜空,煙花朵朵綻放,進射出璀璨奪目的光彩,絢麗至極。癡迷于煙花之美的同學,會對MATLAB留下美好的印象。能讓學生覺得MATLAB可以創造出美的東西,給人以愉悅的精神享受,就容易激發學生的學習興趣。
除此之外,還應強調MATLAB的實用性。學生在學習MATLAB時,已經或正在學習線性代數,在第—堂課時可以講一些MATLAB求解線性方程組的解、求矩陣的秩和行列式等例題。還可以根據學生的專業,講解MATLAB工具箱在專業領域的應用。例如,土木工程專業的學生經常要做一些結構實驗,實驗后需要對獲取的大量數據進行處理、誤差分析、數據回歸等操作,教師可以講解應用MATLAB提供的數理統計工具箱statistic Toolbox對實驗數據處理的成功案例。讓學生體會到MATLAB可以幫助他們學習其他課程或者解決一些實際問題,有利于吸引學生對MATLAB的重視。
3.項目驅動,提升教學效果
3.1采用項目驅動教學法激發學生主動學習
MATLAB程序設計課程作為專業選修課或公共選修課,課時相對較少,要完成MATLAB所有內容的講授,難度非常大,而且講授太快往往欲速不達。另外,對于程序設計類課程來說單純的講授往往枯燥乏味,學生聽起來昏昏欲睡。因此,要想更好地完成MATLAB這門課程的教學任務需要借助于項目驅動教學法,促使學生課下自學完成項目,課上講解,以項目講解開展知識點的傳授。
項目驅動教學是一種用項目把教學內容貫穿起來的教學方法,它能激發學生的主觀學習能動性和培養學生創造性學習能力。教師根據教學內容,合理有效地設計項目內容。項目應是一個寬泛的概念,可以來自教師的科研項目、橫向項目或者根據教學內容設計的仿真題目。學生在做項目的同時能夠完成課程相關知識和技能的積累。這種教學方法通過讓學生自學、自我探索、團隊合作,改變了傳統的學生被動接受知識的模式,發揮了學生的學習主體作用,培養了學生的研究性學習能力。它能讓學生體驗到任務完成的成就感,增強了學生學習的趣味性。
實施基于項目的教學法對教師提出了更高的要求。教師需要對課程體系重新梳理,將課程內容重新整理,然后按照課程內容設計若干個項目(或若干個項目模塊)。項目的難度要恰到好處,難度太大會讓學生畏難止步,而項目過于簡單學生就體檢不到探索的樂趣。同時項目的設計也要考慮學生的專業。例如在為自動化專業學生講授MATLAB課時,為了讓學生掌握M文件編寫的基本輸入方式、程序控制結構、矩陣運算、靜態及動態圖形的繪制等知識,可以選擇工業機械手項目作為教學使用項目。此項目要求將機械手各臂視為質量分布均勻的桿臂,通過受力分析構建數學模型,利用M文件完成機械手端抓取重物移動的數學模型分析仿真。為了讓學生掌握simulink的使用技巧,亦可要求學生用Simulink工具箱完成整個機械臂的設計與仿真。為了順利完成項目,學生首先要通過自學進行相關知識的積累,然后嘗試編寫MATLAB代碼來實現項目要求的模型分析與仿真。整個教學過程以學生為主體,教師的作用只是引導,適當的時候給予提示,最后給予講解以強化知識和技能的掌握。
3.2基于項目引導提升學生的編程思維能力
教師在下達項目任務后,引導學生自學、分析、探索,最終找到問題的解決方法。在項目的引導階段,應著重培養學生的編程邏輯思維能力。教師引導學生對項目化大為小、化整為零,把大目標分解成小目標逐個解決,然后整合為整個項目的解決方案。教師鼓勵學生在MATLAB程序設計過程中大膽地進行想象和聯想,幫助學生解開定勢思維的枷鎖,力爭在項目求解中運用新的思路和方法。例如在求解排序問題時,學生往往感覺問題似乎不難,但也難以形成清晰的思路。教師要引導學生總結排序時數據之間位置變化的規律,然后讓學生對其進行大膽的猜想和驗證。
3.3利用項目講解強化學生對知識的系統掌握
在學生完成項目后,教師應對學生的解決方案(源代碼)進行批閱,并予以適當講解,以強化學生對MATLAB知識和技巧的掌握,講解可采用對比教學法。大部分學生都學習過c語言,合理利用學生已經掌握的c語言知識,可以大大提高學生學習MATLAB的效率。對于同一個項目,把相應c代碼和MATLAB代碼放在一起比較,使學生利用新舊知識之間的聯系,加深理解,增強記憶。通過與c語言進行比較,也能讓學生體會到MATLAB的簡潔和強大。4改革課程考核形式。激發學生的學習動力
學生選修一門課,除了關心這門課能學到什么知識外,還會關心這門課結束時能獲得多少分數。常規的考核模式大都采用課外作業、實驗作業、理論考試和上機考試等相結合的形式。這種考核通常不能準確地反應學生對MATLAB的實際掌握程度,也不能有效地激勵學生平時認真學習。基于項目的教學法可取消結課考試,僅把平時完成項目的情況作為基本依據為學生打分;亦可增加理論考試或上機操作,進一步考查學生對MATLAB的掌握情況。此時需要設定平時成績和結課考試成績的比例。為保證學生平時學習的積極性,以項目完成情況作為依據的平時成績所占比例不宜太低。為進一步提升學生的學習主動性和創造性,還可以建立多樣化的考評機制,增設加分項,結課時讓學生自愿提交MATLAB相關的作品,根據作品的質量給予不同的加分。作品可強調創新或創意,可以是用MATLAB編寫的小系統、小軟件,亦或是用MATLAB建立的一些數學模型。
5.結束語
本文結合對MATLAB程序設計這門全校選修課的教學體會,提出了教學內容設計、教學過程實施、課程成績評定等方面的一些觀點。通過采用項目驅動教學、對比式的項目講解和不拘一格的成績考核措施等,成功激發了學生的學習興趣與潛能,增強了學生的自學和創新能力,提升了學生利用MATLAB編程解決實際問題的能力,為我校MATLAB公選課程的教學提供了新的思路。考慮到學生的專業多樣性,我們還需要進一步研究,合理設計適用于各個專業的教學項目。