【摘 要】結合數值分析的特點以及應用型人才培養的要求,分析了數值分析課程實驗課的重要性及現狀。從教學內容、編程語言、教學方式、外部環境以及課程考核方式等方面提出了數值分析實驗課教學探索與改革的方向。
【關鍵詞】應用型人才 數值分析 實驗課 教學探索
【中圖分類號】G420 【文獻標識碼】A 【文章編號】1674-4810(2015)19-0031-02
一項針對“用人單位人才需求與當前大學教育模式下人才培養的差異”網絡調查顯示,大學生實踐能力的缺乏、應用能力不強是制約大學生就業的關鍵問題,63.5%的被調查者認為用人單位需要實用型人才,但大學教育偏理論,大學生實踐能力缺乏。因此,高校教育的發展必須更加注重學生理論聯系實際,加強實踐能力、應用能力的培養。數值分析課程是信息與計算科學專業和應用數學的一門重要的專業必修課程,它是研究用計算機解決數學問題的數值解的一門科學,具有很強的應用價值,是實用性很強的一個數學分支,因此本課程對于學生應用能力和實踐能力的培養具有重要意義。本文從契合應用型人才培養的角度,以信息與計算科學專業為例探討該門課程的實驗課教學和實踐方案。
一 數值分析課程實驗課的重要性及現狀
數值分析是一門運用計算機解決數學計算問題的學科,在科學與工程的計算中發揮著重要作用。計算機與計算技術的發展使計算方法的研究和應用有了更廣闊的前景,數值模擬方法已成為實驗與理論兩大科學研究方法之后的第三種方法。因此,學習和掌握計算方法的基本理論,對于將來從事相關計算工作或者從事科學研究的學生來說是必不可少的。在教師引導下,學生逐步通過研究式的鉆研、探索乃至犯錯誤的過程中,培養自身在科學研究和事理處理上百折不撓、持之以恒的毅力和意志,提高他們的數學素質和數學修養,培養學生運用較高層次的數學觀點和數學知識,對實際問題進行分析、歸納、提煉和建模,選擇適當的算法編寫計算機程序來實際求解,并且對計算結果進行分析和解釋,從而提高學生解決實際問題的能力。而這些能力的培養和提升光靠理論學習只能是紙上談兵,解決不了實際的問題,實驗課的開設就顯得尤為必要了。通過實驗教學、學生實踐不僅使學生掌握了計算的方法、原理,更重要的是提高了他們解決問題的能力。
目前,由于課程教學內容多、課時少,教師忙于理論教學的講解和方法、原理的介紹,壓縮實驗課時,導致學生自以為學懂的知識其實還是不能應用于實際問題的解決,忽視了對學生實踐應用能力的培養。另外,受“重理論、輕實踐”的傳統教學觀念的影響,實驗課流于形式,沒有得到足夠重視和貫徹。很多學校考核方式存在不足,實驗所占的比例偏低,導致學生不重視實驗,認為只要復習好課本知識,考試一樣可以過關。因此,實驗課教學在培養學生應用能力方面,沒有真正發揮它的作用,執行起來存在一定的局限性。
二 數值分析實驗課教學的探索與改革
1.優化實驗內容,明確實驗要求
根據本課程的理論教學內容,將實驗教學內容分成六個大實驗:非線性方程的求根、線性代數方程組的求解、插值逼近、最佳擬合、積分與微分的數值解、常微分方程數值解。每一個大實驗又分為若干個小實驗,根據教學時間安排分為必做和選做,必做實驗在課堂實驗時間內完成,計入實驗成績評定的一部分,選做實驗在課外完成,教師抽查。實驗類型分為驗證性實驗和“雙性”試驗,驗證性實驗主要以理解教材內容為目的,對書本介紹的經典算法進行模仿驗證操作,同時培養學生的動手實踐能力;“雙性”試驗包括設計性和綜合性實驗,主要針對以工程為背景的實際應用型問題,學生自己設計算法進行求解,以培養學生知識綜合能力和分析解決問題的能力為目的,同時培養學生的科學研究能力和創新能力。進行“雙性”實驗時,三人一組,以小組為單位,學生進行合作交流,共同解決問題,這樣既能促進學生主動學習、主動鉆研,也培養了學生的團隊寫作能力。根據教學內容和實驗要求,教師在實驗課之前應該編寫適合學生的實驗指導書或者實驗教材供學生使用。合理選擇實驗內容,避免實驗教學的隨意性,保證實驗教學的質量,以達到培養能力的目的。
2.結合軟件,合理選擇編程語言
算法實現需要編程,C/C++等高級語言編程有利于學生熟悉算法原理,但對于語法的要求很高,學生需要具備較強的編程能力,而且即使是非常簡單的問題也要耗費很多精力與時間在語法的修改上。對于一些編程基礎薄弱的同學無疑增加了他們的學習難度,以至于他們害怕實驗課,甚至對課程學習失去信心。結合我校的具體情況,信息與計算科學專業的學生在開設數值分析課程之前已學習了Matlab軟件,所以在教材選擇上,可以選擇基于Matlab的數值分析教材。由于Matlab簡單易學、代碼短小高效、計算功能強大、圖形繪制容易等特點,而且Matlab軟件包含許多的工具箱,對于大型應用性問題的編程大大降低了難度。因此,實驗課可以借助Matalb這一軟件平臺,利用Matlab編程,大大提高實驗的效率,也將學生從乏味的高級語言編程中解放出來,讓學生學習算法時不至于為編程而傷腦筋,讓即使編程能力不強的同學也能相對輕松地學習數值計算方法,保證試驗課順利地進行。而且Matlab軟件逐漸成為理工科學生必須掌握的一門工具,在他們專業課程學習中越來越發揮著重要作用,所以在其他課程中應用Matlab軟件進行科學計算已成為一種趨勢。
3.改革教學方式,突出學生的主體地位
教學過程中教師明確自己的作用和學生的地位,教師始終只是教學過程的組織者和參與者,教師在教學過程中起引導者的作用,學生是教學的主體,所以教學過程中應該突出學生的主體地位。
有些教師實施實驗課教學時為了簡化程序,往往先介紹方法、原理,再提供一個現成的程序供學生參考,學生再模仿編程,得出實驗結果就算完事,但這不利于學生創新能力的培養。實驗過程中應該突出學生的主體地位,以小組為單位進行試驗,讓學生自己理解算法,小組合作探究,根據問題設計算法,主動應用算法,改進算法進行試驗以理解算法原理并解決問題。比如,做“Newton迭代法解非線性方程的根”實驗時,在理論教學中我們講到Newton迭代法雖然收斂速度快,但是對初值的要求較高,一般要求初值在根的附近迭代序列才能快速收斂。這時可以讓學生自己試著取不同的初值觀察收斂性以及收斂速度,同時啟發學生克服算法的局限性,根據已學知識,先用二分法或者簡單迭代法迭代幾步得出一個比較接近真實值的近似解作為Newton迭代法的初值,使之快速收斂于真實解。學生通過不斷嘗試,自己體會算法的優缺點和改進思路,這樣學到的知識比教師直接教給他們體會要深刻得多,而且更加增強他們的興趣和自信。我們在教學過程中也發現,學生的想象力和創造力是無窮的,教師能想到的學生也能想到,教師沒想到的學生也有新的發現,所以教學過程中我們不能局限于學生的思維,要讓學生按照自己的思路設計實驗,突出他們的主體地位。
4.創設外部環境,與數學建模相結合
數值分析的實驗課教學除了課堂實驗以外,還應創造外部條件讓學生利用所學算法解決實際問題,以提高他們的學習興趣。可以組織學生成立數學建模興趣小組,積極參加數學建模競賽,讓學生自己建立模型,自己設計算法,自己編程求解。通過自己解決實際問題,感受到所學課程的作用,不僅提高他們的實踐應用能力,更重要是提高他們學習的熱情、增強他們的自信。
5.革新課程考核方式,提高學生實驗的參與度
由于傳統考核通常是以試卷答題的形式進行筆試,很多學生為了應付考試只認真學習理論知識而忽視實驗。筆試只是對學生掌握算法思想、算法原理的一種檢驗,數值分析課程的教學目的不僅要求學生掌握原理,更要能解決實際問題,因此非常有必要改革考試模式。筆者認為考核方式可以增加實驗課考核內容,提高實驗課教學占課程成績的比例,實驗課考核分兩個部分:一是機試,設計科學的機試試題要求學生在實驗室規定時間內完成,學生現場編寫程序運用算法原理求解事先設計好的數學問題;二是科技小論文的形式,要求學生選取與實際背景相關的問題或者結合專業特點選題,撰寫研究報告,要求學生通過查閱資料利用數值分析算法或者對算法進行改進解決實際問題。這不僅考查了學生科學計算能力,還考察了學生的創新能力和解決實際問題的能力,同時可以督促學生平時參與實驗、認真完成實驗。通過革新考核方式可以督促學生重視實驗課教學,不至于讓實驗課教學流于一種形式,真正起到培養學生能力的作用。
結合學校的辦學特點以及人才培養目標方案的要求,傳統的教學模式以及流于形式的實驗課教學已經不符合應用型人才培養模式下的課程教學,尤其像數值分析這種應用性較強的課程,實驗課教學改革已取得了一定的成就,比如,不少學生在全國大學生建模建賽中取得過較好成績,但仍然存在很多值得進一步探究的地方,比如實驗難度的把握,必做和選做實驗內容的選取等,都有必要在實踐中不斷改革和改進。
參考文獻
[1]曾金平主編.數值計算方法[M].長沙:湖南大學出版社,2004
[2]王兵賢、胡康秀.信息與計算科學專業《數值分析》課程實驗教學研究[J].東華理工大學學報(社會科學版),2010(4)
〔責任編輯:龐遠燕〕