公務員期刊網 論文中心 正文

計算機數學素養(yǎng)培養(yǎng)思路

前言:想要寫出一篇引人入勝的文章?我們特意為您整理了計算機數學素養(yǎng)培養(yǎng)思路范文,希望能給你帶來靈感和參考,敬請閱讀。

計算機數學素養(yǎng)培養(yǎng)思路

一、前言

數學在人類文明的發(fā)展歷史中發(fā)揮著重要的作用,推動了重大的科學技術進步。尤其是到了二十世紀中葉以后,數學的理論研究與實際應用之間的時間差已大大縮短。當前,隨著計算機應用的普及,信息的數字化和信息通道的大規(guī)模聯(lián)網,依據數學所作的創(chuàng)造設想已經達到可即時試驗、即時實施的地步。數學技術一直是一種應用最廣泛、最直接、最及時、最富創(chuàng)造力的實用技術。數學為計算機的發(fā)明和發(fā)展壯大提供了堅實的理論基礎。早在1936年,英國數學家圖靈(Turing)發(fā)表了對計算機具有奠基意義的論文《論可計算數及其在判定問題上的應用》,里面提出了計算的圖靈機模型,該模型即為現代計算機模型的原型。為紀念數學家圖靈,美國計算機學會于1966年設立了計算機界最負盛名的“圖靈”獎,以表彰那些對計算機事業(yè)做出重要貢獻的個人。數學是所有工科的基礎,其中離散數學已經成為計算機科學發(fā)展的理論基礎。圖靈獎的獲得者中有不少是學數學或者數學家出身。1974年獲獎的DonaldE.Knuth被稱為現代計算機之父,之前在加州理工獲得數學博士學位,著有經典著作《計算機程序設計藝術》4卷。RichardM.Karp于1985年獲獎,之前在哈佛大學獲應用數學博士學位。1986獲獎的RobertE.Tarjan在斯坦福大學同時獲得數學和計算機的博士學位,主要研究圖論、算法和數據結構。當前計算機理論及應用的壯大和發(fā)展更是離不開近代數學的發(fā)展,將計算機與數學的發(fā)展分割開來既不合理也不現實,和所有學科一樣,計算機領域也有自己的問題,比如什么是可計算的,什么是實際可計算的,這些計算模型本質上是數學的應用。離散結構上的算法研究無疑是計算機科學中的重要領域,研究算法需有扎實的數學功底,就機器學習領域的研究而言,通常要對所處理的數據建立不同的數學模型如分類模型、回歸模型和排序模型。一般地,先針對這些問題建立特定的模型,然后采用有效的優(yōu)化算法來求解這些模型。應用數學如矩陣論、多元統(tǒng)計分析和最優(yōu)化理論可以為深入地研究機器學習領域提供理論基礎。在實際的工作中,會經??吹綌祵W基礎好、具有一定數學素養(yǎng)的人解決問題會游刃有余且后勁足,學習新事物和新東西會比較快,會表現出一定的創(chuàng)造性。但是當前大學的課程安排普遍存在對學生的數學學習的掌握程度不是很重視,導致學生對數學課的態(tài)度停留在學習時僅了解,一學完就全忘,到用時就迷惑的一知半解狀態(tài)。教師在教授專業(yè)課和專業(yè)基礎課的過程中,沒有引導學生深入地發(fā)掘理論背后的數學本質,導致學生對計算機科學理論的理解只能停留在表面,憑機械性記憶而沒有徹底理解。鑒于上述數學在計算機的發(fā)明發(fā)展和實際工作中的重要作用,因此,在計算機教育的過程中,迫切地需要培養(yǎng)學生的數學素養(yǎng)以滿足現實工作和學習中解決實際問題的需要。

二、數學素養(yǎng)的培養(yǎng)

《算法設計與分析》是計算機專業(yè)的一門重要的專業(yè)課,有利于培養(yǎng)學生分析問題和解決問題的能力,為學生學習后續(xù)課程打下堅實的基礎。下面結合這門課程來談談在計算機課程中如何提高學生的數學素養(yǎng)。

(一)結合算法的發(fā)明史來講解算法

深入學習計算機科學需要有良好的數學基礎,對于算法的學習更是如此。研究算法的圖靈獎獲得者中有很多是數學家或者學數學出身,如圖論中有很多算法是以前面提到的RobertE.Tarjan的名字命名的,著名的Dijkstra最短路徑算法由EdsgerW.Dijkstra發(fā)明,而他2000年退休前一直是美國Taxas大學的計算機科學和數學教授。前面提到的DonaldE.Knuth則是字符串匹配算法KMP算法的發(fā)明人。給學生講解算法的發(fā)明歷史一方面幫助學生了解發(fā)明算法的背景和發(fā)明過程,激發(fā)學生的創(chuàng)新欲望;另一方面讓學生認識到數學的重要性和其在該課程所涉及的領域中發(fā)揮的重要作用。

(二)結合學生所掌握的數學知識來講解算法

修讀該門課程的對象一般為大學高年級學生,他們之前應該修過其他的數學課程,如高等數學(數學分析)、線性代數和離散數學。通常教師在講授該課程的過程中會認識到離散數學在其中發(fā)揮的作用,會有意識地提及離散數學的知識,但實際上學生學習的高等數學或線性代數的知識對理解該門課程也是有幫助的。下面通過一個例子來說明數學知識對理解算法正確性的重要作用。設計完算法如何證明算法的正確性呢?對于順序結構和選擇結構比較好驗證,而對于循環(huán)結構就使用循環(huán)不變量(LoopInvariant)來證明。而循環(huán)不變量的證明實際上借鑒了數學歸納法的思想:循環(huán)發(fā)生前某個循環(huán)不變量為真,循環(huán)進行的過程中保持為真,那么循環(huán)結束時,該循環(huán)不變量仍然為真。因此可以斷定:無論循環(huán)體循環(huán)多少次,該循環(huán)不變量總為真。其他的例子,包括:比較算法的時間復雜度時可以引入高等數學中的無窮小量來講解;計算時間復雜度也會涉及到利用無窮級數的估計等等。

(三)結合數學工具來可視化算法

理論的發(fā)明通常是從簡單直觀的例子中歸納得來的,數學工具可以幫助我們理解和可視化算法。

(四)結合數學抽象思維來幫助學生理解算法

數學的抽象思維可以幫助學生站在更高的角度來看待問題和算法之間的聯(lián)系。算法通常是針對某一類問題的,而如何對問題進行歸類,如何選擇合適的算法解決是值得學生去探究的問題。講解算法時,應該幫助學生抽象出問題的本質,同時注意算法之間的聯(lián)系與區(qū)別。計算點對之間的距離是算法設計中一個經典問題,如果源點單一,可采用Dijkstra最短路徑算法,而計算圖中任意點之間的最短路徑,使用Floyd-Warshall最短路徑算法會合適一些,但是如果圖上的權重存在負值,那就要用帶松弛操作的Bellman-Ford算法求解。了解了這些知識后,學生在把問題抽象成特定的算法模型時,就可以正確地使用合適的算法了。其他問題包括使用矩陣胚理論來證明貪心算法的正確性以及靈活應用動態(tài)規(guī)劃來求解離散結構上的最優(yōu)化問題等等。

三、總結

數學在計算機的發(fā)展和應用中的重要作用表明了數學素養(yǎng)的培養(yǎng)在計算機教育中的重要性。通過算法設計與分析課程的例子,第二節(jié)給出了4種方法闡述了如何在教學中培養(yǎng)學生的數學素養(yǎng)。然而,方法的最終目標是通過數學這個工具培養(yǎng)學生的自學能力,如同著名的教育家陶行知指出的那樣:“我以為好的先生不是教書,不是教學生,而是教學生學”。因此,通過學生的數學素養(yǎng)的培養(yǎng)能起到鍛煉學生思維能力和自學能力的目的。從這個意義上講,在計算機教育中培養(yǎng)數學素養(yǎng)具有一定的積極作用和參考價值。