李 蕓 陳榮平 陳建文
(湖南工商大學理學院 湖南·長沙 410008)
《新時代全國高等學校本科教育工作會議》[1]指出,要培養能擔當起民族復興大任的社會主義接班人,必須加快建設高水平本科教育、全面提高人才培養能力。人才培養是大學的本質職能,在高等教育中是具有戰略地位的教育。人才培養質量和效果是檢驗一切工作的根本標準。推動辦學理念創新、組織創新、管理創新和制度創新;用知識體系教、價值體系育、創新體系做,傾心培養建設者和接班人;提升學業挑戰度、激發學習動力和專業志趣,使學生求真學問、練真本領是每一個心懷天下的知識分子(教師)的教育強國夢。高質量人才的培養離不開“學生”和“教師”兩個主體,而課程是聯結“教師”和“學生”的主要橋梁。專業建設水平和課程教學質量是影響學生成才的兩個主要的方面。重塑教育教學形態,思想創新、理念創新、方法技術創新和模式創新,推進課程內容更新,推動課堂革命是當前人才培養任務的緊迫任務。
根據《習近平總書記關于教育的重要論述》[2]、“全國教育大會”[3]和《中國教育現代化2035》[4]精神,實現中華民族偉大復興的根本任務是培養全面發展的社會主義接班人。知識的傳授、能力的培養必須建立在正確的世界觀、人生觀和價值觀之上,這樣才可能培養出能擔負起民族復興和國家崛起大任的后繼者。如何建設高等學校課程思政,發揮課程育人作用,實現專業課程作為課程思政建設基本載體的功能,深入挖掘專業課程思政元素,增加課程除知識性外的人文性、時代性和開放性,是當前亟須解決的問題。
計算技術在大數據和人工智能時代的重要性不言自喻,以算法為核心的信息處理是其亙古不變的主題。算法在很多領域都有非常活躍的應用,如人類基因工程、互聯網信息檢索、電子商務安全問題中的數字簽名、稀有資源分配等。如何高效地設計算法對各個應用領域來說都是非常重要的事情。因此,我們選擇了《算法導論》這門專業核心課程開展了課程思政建設和教學創新研究與實踐。
《算法導論》課程主要介紹可計算問題的數學建模。我們把課程內容分成了常用算法、算法設計范式、算法分析方法、數據結構基礎以及高級智能算法/機器學習算法五大模塊。本課程的先修課程為高等數學、線性代數、概率論與數理統計以及離散數學,并要求熟悉一種編程語言。根據不同的專業需求,課程學分設置從2學分到4學分不等。我們建設了《算法導論》課程教學團隊,團隊成員均為具有豐富教學經驗、善于學習和樂于奉獻的優秀教師。
秉承“以學生為中心,全面發展學生能力”的理念,培養學生分析問題、解決問題的能力和實踐應用的能力。學習算法設計和分析的理想的狀態是學習實際工作中需要的各類算法理論,并能用數學方法對其進行分析,同時還能采用一種編程語言將思想或偽代碼變成實際可用的程序。探索算法的過程就是我們認知世界的方法,從最簡單的想法開始,通過“實驗”“失敗”“再實驗”循環錘煉,用數學的方法去嚴謹的推導與證明,用數據和案例去驗證,用代碼和程序去實踐,以數學為基石,以編程為工具,去分析去解決實際應用問題,達到理論與實踐的完美統一。
《算法導論》課程培養面向企事業需求的應用型人才,需要學生具備開放性思維,能夠在面對新問題時提出自己的思路和獨到的見解,或面對舊問題能獨辟蹊徑,采用更為高效的求解方法。具體教學目標分為四個階段,第一階段為算法基礎,目的是使學生(1)掌握最基本的算法,如排序算法、圖算法等;(2)學會選擇合適的數據結構實現算法,掌握從算法到程序的實踐過程。第二階段為設計范式,目的是使學生掌握分治策略、動態規劃、貪心算法和隨機算法等強大的算法設計范式。第三階段為算法分析,目的是使學生通過直觀理解和嚴謹數學推導證明方法相結合,打牢算法分析基本功,學會分析算法時間、空間復雜度。第四階段為算法進階,通過對智能算法如遺傳算法和機器學習算法如神經網絡等算法的學習,激發學生對高級算法的進一步探索。
學習解決實際應用問題所需要的各類算法范式和方法,學會用數學方法對算法進行理論分析,采用一種編程語言將思想或偽代碼變成實際可用的程序。本課程選擇Python語言編寫程序,有利于學生快速理解算法精髓,提高算法應用能力。
培養什么人、怎樣培養人、為誰培養人是教育的根本問題。立德樹人有道,勵學敦行無聲。本課程將課程思政與價值塑造、專業知識傳授和能力培養有機結合,將課程思政元素加入算法案例中,培養學生民族自豪感,培養學生家國責任感,培養學生探索未知的使命感。
課程教學內容反映學科前沿研究動態。動態規劃、貪心算法、分治策略是學科前沿文獻中解決疑難問題的常見啟發式方法。粒子群、遺傳算法、模擬退火等智能算法一般用來解決實際應用中的最優化問題,粒子群算法模擬了鳥群捕食、遺傳算法模擬了生物種群進化。智能優化算法一定程度上解決了大空間、非線性、全局尋優、組合優化等復雜問題。在實際應用中得到了廣泛的研究與使用。
為培養學生知行合一的能力,以賽促學,我們組織學生參加全國大學生數學建模競賽、ACM國際大學生程序設計競賽、Kaggle機器學習競賽等并取得了一定的成績。
基于算法的實用性特點,教學過程中應理論與實踐并重。理論教學包含課堂講授和專家講座。應做到基礎理論、算法設計、案例教學、輔助軟件相結合。實踐教學包含課堂實踐、課后個人實踐、團體實踐三個方面。激發學生的思考和探索,培養學生分析和解決實際問題的能力。教學模式創新如下,課堂引入案例、動畫、PPT講授算法原理,并利用Jupyternotebook的交互式編程功能向學生演示示例代碼。精心設計理論與實驗作業,打造頭歌Educoder平臺同步實訓課程(算法導論Python語言實現),發布實訓作業。
《算法導論》課程理論與實踐并重教學新模式、新方法可以推廣至《離散數學》《數據挖掘基礎》《金融大數據分析》《Python編程基礎》《運籌學》《數學建模》《數值優化》等核心專業課程的教學中,實現了專業課程的無縫銜接和層級推進,對培養應用型創新性人才具有較好的價值。