羅銘
摘要:針對高級算法課程的特點及存在的教學問題,在課程教學中引入計算思維,并探討其在課程教學中的需求與體現,闡明基于計算思維的軟件類研究生高級算法課程在教學內容、教學方法及課程考核等3個方面的改革思路。
關鍵詞:計算思維;高級算法;課程教學;改革
0.引言
近年來,隨著大數據、云計算及物聯網技術的發展,計算思維能力在軟件類研究生人才培養中的作用愈發重要,是軟件類高級人才能力培養體系不可缺少的部分。軟件類研究生如何在應用問題與計算問題之間進行轉換、如何對問題建模與程序設計進行抽象、如何對多種算法策略和計算復雜性進行分析,這些思維的培養都與計算思維能力密切相關。最近,楊曉云基于計算思維對高校研究生計算機公共課程的改革進行了研究與實踐,指出計算思維對培養創新性人才與加快人才強國戰略具有推動作用。
高級算法是訓練軟件類研究生問題轉換能力、算法設計和分析能力、程序實現與計算思維能力的必修課程,如何使計算思維的培養滲透到高級算法的課程教學中是本文研究的重點。
1.高級算法課程特點及問題
(1)課程難度較大。課程內容主要涉及數學算法理論、算法復雜性分析及算法編程實現等知識。如何理解各種算法的優缺點,并針對實際問題選擇合適的算法是該課程教學的一個難點。
(2)學生的學習積極性不高。該課程大部分學時以授課為主,實驗學時安排較少,對研究生的自主學習能力及主動實踐能力的要求較高。
(3)教學方法落后。由于高級算法課程教學內容繁多,課堂上主要采用填鴨式教學,對研究生的算法設計、有效性分析以及編程實踐能力的培養較少。
2.高級算法課程中計算思維的體現
2010年10月陳國良院士倡議將計算思維引入大學計算機基礎教學以后,計算思維得到了國內計算機教育界的廣泛重視。2013年7月教育部高校計算機課程教學指導委員會發布《計算思維教學改革白皮書(征求意見稿)》,強調計算思維對研究生全面素質與綜合能力培養的重要性。近年來,復旦大學、北京郵電大學及哈爾濱工業大學等高校就計算思維對計算機或軟件類專業學生實踐創新能力的培養進行了探索與實踐。
從計算思維的概念可以看出,該思維強調實際問題的數字化、可計算化及可執行化。這與高級算法課程教學中的算法思維特征具有很高的耦合性。我們將討論幾種典型的算法思維,并結合實際問題揭示其計算思維特征。進行相關理論知識講解,然后引導學生按照自己的思維自主解決問題,有意識地培養研究生的獨立思考、邏輯推理以及處理問題的能力,從而逐步鍛煉和提高研究生的計算思維能力。
3.3課程考核改革
課程考核的目的不僅僅是對研究生最終考試成績的評價,還應體現對研究生平時學習積極性、能力培養以及知識總體掌握程度的考核,還能起到督促研究生主動學習和獨立思考的作用。而傳統的考核方式主要采用試卷考核方式評價研究生對課程內容的掌握情況,忽略了對研究生計算思維的考核。這樣的考核方式很難調動學生的學習熱情,造成學生重理論輕實踐、重分數輕能力的學習態度,很難達到較好的教學效果。
基于計算思維的軟件類研究生高級算法課程考核包括三種方式:試卷考核、實踐考核與階段考核。
(1)試卷考核通過理論考試實施,主要包括期中考試和期末考試。重點考核研究生對高級算法課程總體知識點的掌握,考核的重點是給出數學問題,讓研究生分析問題并自主利用所學知識點選用合適的算法策略來解決問題,試卷考核占整體考核比率為40%。
(2)實踐考核是考核研究生利用高級語言程序對算法的設計和編碼實現。實踐考核是一種過程考核,考核的內容是對研究生實踐過程中提出問題、分析問題、解決問題、成果展示以及團隊合作所表現出的綜合能力的考核。該考核的目的是提高研究生的計算思維。實踐考核占整體考核比率為40%。
(3)階段考核的目的主要有兩個,一是促進研究生的學習積極性,二是教師和學生可以對每個階段的教學和學習效果總結改進。針對高級算法課程的階段考核分為四個階段:課程內容前三章為一個階段,后面六章每兩章為一個階段。階段考核結合學生自我考核、團隊考核以及教師考核的多維考核方式。學生自我考核是對每個階段自身知識掌握程度以及應用熟練度的評估,可以及時發現自己的不足。團隊考核是對團隊整體表現的考核,團隊考核的主要目的是培養研究生的團隊合作精神,促進學生之間互幫互助,互相發現問題以及互相提高的良好學習氛圍。教師考核包括兩方面,一是結合學生自我考核和團隊考核對每個研究生在每個階段的表現進行合理的評價,二是總結在教學過程中每個階段出現的教學問題以及評估每個階段的教學效果,為在下一個階段達到更好的教學質量做準備。階段考核占整體考核比率為20%。
4.結語
在當今的信息化時代,計算思維逐漸成為軟件類研究生解決問題的基本能力之一。目前高校計算思維的培養理念和手段跟不上新信息化時代對高級人才的要求。通過近幾年的實踐,基于計算思維的軟件類研究生高級算法課程教學改革,使學生的學習積極性明顯增強,對計算機算法設計和實現的理解更為透徹,教學效果得到明顯提高。未來我們還將借鑒國內外學術機構和研究型大學計算思維應用成果,不斷改革創新,形成基于計算思維的軟件類研究生課程體系,進而培養出更多適應時代發展的軟件類高級人才。