


摘要:計算思維是科學思維的基本方式之一,也是當前計算機教育中重點研究的課題。針對如何在教學中培養學生計算思維的問題,結合多年的“離散數學”課程教學經驗,分析基于計算思維任務驅動式教學模式,闡述在“離散數學”教學活動中執行該教學模式的可行性,為培養學生的計算思維能力和邏輯思維創新能力提供新的思路。
關鍵詞:計算思維;離散數學;任務驅動
0.引言
21世紀是社會競爭更加激烈的知識經濟時代,高校如何適應時代的發展和社會的需要,培養具有創新意識和創新能力的應用型人才,是當前各高校需要解決的迫在眉睫的問題。
計算思維是當前國際計算機界廣為關注的一個重要概念,也是當前計算機教育需要重點研究的課題。對應于目前自然科學領域公認的理論方法、實驗方法與計算方法3大科學方法,計算思維、理論思維和實驗思維并列為3大科學思維Ⅲ。計算思維作為3大科學思維方式之一,實現開拓創新并進行實際運用,是關系到計算機事業的發展前景乃至國家綜合實力競爭的重大戰略課題。交叉學科是體現計算思維創新的一條根本途徑,世界數學界著名的“華一王方法”就是數論思想與計算機模擬相結合的方法,蜚聲國際數學界的吳方法,是數學機械化思想、多項式方程計算方法和計算機方法相結合的產物。
計算思維對各學科大學生創新能力的培養具有重要的作用,復合型、創新性人才離不開計算學科的手段。學會計算思維,是在信息社會中創新的需要。教育工作者在教學過程中實現基于計算機技術的問題求解思路和方法,為未來大學生應用計算手段進行相關的學科研究與創新奠定堅實的基礎。
1.國內外研究現狀
計算思維由美國卡內基·梅隆大學計算機系主任周以真教授于2006年在權威雜志Commlmication of the ACM上提出的一種新的思維方式。她提出計算思維是每個人的基本技能,不僅僅屬于計算機科學家。我們應當使每個孩子在培養解析能力時,不僅掌握閱讀、寫作和算術,還要學會計算思維。運用計算機科學的基礎概念去求解問題、設計系統和理解人類行為,它包含了涵蓋計算機科學之廣度的一系列思維活動。
國外計算機教育界、社會學界以及哲學界的廣大學者圍繞“計算思維”進行了積極的探討和相關研究,各種學術團體加入到此項研究中。在美國計算思維得到教育界的廣泛支持,不僅有微軟資助的卡內基·梅隆大學的計算思維研究中心,更有包括美國計算機協會(ACM)、美國國家計算機科學技術教師協會(CSTA)等眾多團體參與。ACM在CC2001(CS2001)的審查報告中明確將計算思維與計算機導論課綁定,要求該課程講授計算思維的本質。2008年CSTA發布報告“計算思維:一個所有課堂問題解決的工具”(Computational thinking:a problem solving tool forevery classroom),總結了計算思維。
我國高等學校計算機教育研究會召開“計算思維與計算機導論”學術研討會,根據計算思維在教育教學中的作用,探討在教學過程中如何以課程為載體講授面向學科的思維方法。文獻[4]提出了基于培養學生計算思維的任務驅動式離散數學教學模式,通過教學案例對計算思維在離散數學教學中的應用進行了探討。文獻[5]探討了人工智能主要理論知識體系結構與計算思維的對應關系。文獻[6]提出基于計算思維培養的任務驅動教學模式的理論體系結構,并以“數字影像與合成技術”課程為例探討非計算機專業課程同樣可以運用計算思維解決問題。
計算思維的研究已經展開并取得了一定的成果,但目前對于如何在教學中培養計算思維尚未形成一套完整的方法體系,還一直處于一個摸索階段,目前只是小規模的、探索性的實驗教學。計算思維具有強大的創新能力,如何應用計算思維進行創新以及如何在教學過程中實現計算思維能力的培養是一個有待探索的問題。
2.計算思維的基本理論
2.1計算思維的基本概念
周以真教授從以下幾個方面對計算思維的基本特征作了介紹。“計算思維”是概念化,不是程序化。計算機科學不僅是計算機編程,還要像計算機科學家那樣去思維,并能夠在抽象的多個層次上思維;“計算思維”是根本的,不是刻板的、機械的技能,只有使計算機像人類一樣思考之后,思維才可以真正地變成機械的;“計算思維”是人的,不是計算機的思維。計算思維是人類求解問題的一條途徑,我們可以利用計算機工具,用自己的智慧去解決那些計算時代之前不敢嘗試的問題;“計算思維”是思想,更重要的是計算的概念,這種概念被人們用于問題求解、日常生活的管理;“計算思維”是數學和工程思維的互補與融合。計算機科學在本質上源于數學思維。計算機科學又從本質上源自工程思維,因為我們建造的是能夠與現實世界互動的系統,基本計算設備的限制迫使計算機學家必須計算性地思考。這段話極其精煉地闡述了計算機科學根源的本質,說明了計算思維的來源。針對高校計算機專業的學生,如何培養和發展他們的計算思維,提高他們應用計算機知識分析和解決問題的能力,是一項需要深入研究和探索的工作。
計算思維描述成“數學與工程思維的互補與融合”,計算思維的本質(Essence)概括為抽象(Abstraction)和自動化(Automation)。這讓我們隱約感覺到計算思維的“內涵”與“外延”。“離散數學”是計算機專業核心專業基礎課,授課對象主要面向計算機應用專業大一下學期或大二上學期的低年級學生。“離散數學”采用抽象的數學符號系統作為知識的表現形式,在教學過程中注重學生對抽象知識綜合運用的靈活性和探索性能力的培養。從計算思維培養的角度看,“離散數學”的教學目的和計算思維能力的培養其實是高度統一的,即訓練學生運用離散結構構建問題的抽象模型,并在其基礎上構造算法和解決問題的能力。而這恰好是計算思維能力的核心所在,是計算思維創新的重要途徑。
2.2基于計算思維的任務驅動式教學模式
基于計算思維的任務驅動教學模式強調以學生為中心,強調學生的學習過程必須與學習任務相結合,通過完成任務來激發學生的興趣和動機。文獻[2]根據任務驅動式教學過程的3個要素(教師、學生、任務)、計算思維方法和任務驅動的理論基礎提出圖1所示的基于計算思維的任務驅動式教學模式(TDTMCT)。
該模式在任務驅動的主線下把教師的教學活動和學生的學習活動以任務為主線貫穿起來,通過任務來驅動教學活動,并在整個教學活動中貫穿計算思維的一系列方法:遞歸、抽象、分解、在不確定性情況下的規劃和利用啟發式的推理來尋求解答等,通過教學內容的選擇、教學過程設計和教學評價體系的構建實現對計算思維能力的培養。
3.教學案例設計
結合“離散數學”課程教學,以計算思維能力培養為目的,結合TDTMCT教學模式就提高教學效果和培養計算機專業學生的創新能力和綜合素質方面進行實踐研究。“離散數學”主要包括4個部分的內容:數理邏輯、集合論、代數系統和圖論,其中每一個部分各自成體系。我們選擇數理邏輯部分中的命題邏輯部分為例,采用基于計算思維的任務驅動模式設計教學流程。
3.1準備工作
學習者要進行課前預習,閱讀相關數學史內容,了解數理邏輯的起源并對數理邏輯部分的內容有一個大致的了解。教學者對命題邏輯這一章的教學目標、教學任務進行總體策劃,并搜集相關資料。教師對命題邏輯部分的內容給出圖2所示的本章各小節內容關系概圖及該章節知識內容在實際生活中和計算機科學領域的應用,激發學生的主動性和興趣。
3.2問題設計
利用數學方法來模擬人們思維中的邏輯推理過程是數理邏輯的核心思想。命題邏輯是數理邏輯中的一部分基礎教學內容,教學者應結合問題的應用領域設計相關問題并創設問題情境,呈現問題。學習者在任務驅動下進行相關的學習活動,明確任務,查閱相關的資料。教育者針對命題邏輯部分內容的教學給出一個生活中的問題,如一個邏輯學家誤入某部落,被囚于牢獄,酋長欲放行,他對邏輯學家說:“今有兩門,一為自由,一為死亡,你可任意開啟一門。現你從兩個戰士中選擇一人負責解答你所提的任何一個問題(Y/N),其中一人天性誠實,一人說謊成性,今后生死任你選擇。”邏輯學家沉思片刻,即向一戰士發問,然后開門從容離去。邏輯學家應如何發問?
3.3分析問題
在分析問題過程中如何融入計算思維的抽象和自動化的概念。抽象是精確表達問題和建立模型的方法,也是計算思維的一個重要本質。命題邏輯中的很多概念和方法都體現了抽象的思想。命題邏輯的主要思想是用數學方法模擬思維推理,那么首要的問題是如何將思維過程用數學符號的形式表示出來。針對以上問題教學者引導學生對教材內容進行命題及表示,學習命題聯結詞、命題公式及翻譯部分內容,以小組討論的形式實現協作學習,深入探究問題的解決方案。例如,上述問題可以這樣表述,如果被問者是說謊戰士,則有如下分析結果:邏輯學家指一扇門,問其中一名戰士“這扇門是死亡門,另一名戰士將回答‘Y’,對嗎?”A:被問戰士是誠實人;B:被問戰士回答“Y”;C:另一名戰士回答是“Y”;D:這扇門是死亡門。
3.4解決問題
在問題解決過程中,我們要體現計算思維自動化思想的應用。以上抽象結果需要用數學的方法進行等價推理,自動化隱含了需要某類計算機(可以是機器或人,或兩者的組合)去解釋抽象。結合教材內容,教學者給出教材內容命題公式之間的關系等價式和蘊含式,以及如何用標準的公式一范式去統一公式的形式。教學者應用計算思維中利用啟發式尋求解答的思想,指導學習者基于教學內容利用啟發式規則和推理來尋求更好的解答。例如,上述問題的分析可以結合命題邏輯中基本的命題符號化、真值表示法、主范式法和邏輯等價演算的方法以及命題演算推證的方法得出D→B,被問戰士回答“Y”,此門不是死亡門;被問戰士回答“N”,此門是死亡門。
學習者在教學者的引導下,以任務為驅動,逐步掌握命題邏輯整個章節的內容,并在此基礎上將新知識進行鞏固推展。離散數學一般開設在大二上學期,這時計算機相關專業學習者一般至少學習了一門編程語言。教學者可以設計相關的實驗內容,將離散數學中的一些經典問題采用編寫程序實現的形式表現出來。通過設計實驗內容,作為課外實踐要求,通過計算機技術解決經典數學問題。如將程序代碼化簡,實現基礎驗證性的實驗以及綜合性的實驗。關于此實驗的內容,我們將在后續研究中繼續關注。
3.5總結評價
在“離散數學”教學過程中我們采用基于計算思維能力培養為目的的“離散數學”教學模式。為了客觀評價學生的學習效果和學生計算思維能力培養的結果,在評價體系方面,我們要一改傳統的以單一的學業成績評價制度。傳統考核方式基本是以平時習題作業+考勤+期末考試成績的方式對學生的學業情況進行評價。學生大多數情況下考前突擊,考試內容大多是對知識的記憶和簡單的復制。我們認為應減弱應試機制,建立多維度的教學評估機制(見圖3),即最終評價=過程性評價(40%)+終結性評估(60%)。其中過程性評價可以以多種形式展開,如課堂互動、通過網絡教學平臺自主化學習以及小組評價的形式。總結性評價結果可以是1篇研究論文、1個小程序、1個試驗設計、1個數學模型等,改革傳統單一的期末考試形式。這種評估方式強化了對學生平時學習的管理和監督,調動了學生的學習積極性。
4.結語
計算思維是創新型人才的基本素質和要求之一。計算思維具有強大的創新能力,培養計算思維能力的最高目標是為了創新。對于計算機專業教育來說,在各專業課程中開展計算思維的培養,強調從思維方法的高度培養學生,使學生能夠從實際應用中抽象得到問題、分析問題以及運用所學知識解決問題。筆者以“離散數學”課程為例,依據計算思維的形成特點,對基于計算思維的任務驅動式教學模型進行了研究,后續將以現有的“離散數學”課程教學改革為基礎,進一步探索培養學生計算思維能力的教學模式。
(見習編輯:劉麗麗)