
摘要: 計算思維已成為當今國際學術界多學科領域關注的熱點議題,隨著人工智能等新一代信息技術的飛速發展,計算思維培養需要全新的教學策略框架。本文基于美國k-12人工智能教學指南,提出了人工智能時代培養計算思維的四類七種教學策略框架,并結合案例闡述七種教學策略及實施。文章基于我國計算思維教育的發展實際,提出中小學計算思維培養的若干實施建議,以供學校和教師開展計算思維教育參考。
關鍵詞:計算思維;教學策略;人工智能;翻轉教學;支架式教學
自周以真教授2006年在ACM通訊上提出計算思維的概念以來,計算思維逐步滲透到各級各類教學體系,并成為人工智能時代個體必備的基本素質。世界各國都在加快步伐開展培養計算思維的相關課程,以幫助學生更好地適應未來。英國皇家學會在《停止還是重啟:英國學校計算教育的前進方向》報告中就強調了計算思維對于學生認識世界的重要性,并主要在計算機科學中實施了一整套計算思維課程[1]。我國《普通高中信息技術課程標準(2017年版)》也將計算思維列為信息技術課程的核心素養之一[2]。如今,在大數據和人工智能的推動下,計算思維被賦予新的內涵,進一步深化了計算思維在科學與社會經濟領域的意義和價值[3],人工智能時代中小學計算思維培養需要全新的策略框架。
一、人工智能時代計算思維培養的策略框架
人工智能時代的個體核心能力體現在以計算思維為代表的高級思維能力。然而,中小學?,F有的計算思維教育理念沿襲了“計算機能力—編程能力—計算思維”的線性思維,高度依賴計算機學科教育或編程教育,忽視了計算思維培養的其他路徑。隨著人工智能技術的快速普及,嵌入人工智能系統的大量算法模式豐富了人類對算法的認知,也豐富了計算思維的教學內容和教學策略,更有助于提升學生的問題解決能力,培養他們的計算思維?;诖?,美國人工智能促進協會聯合美國計算機科學教師協會和卡梅隆大學研制了K-12人工智能教學指南[4]。該指南不僅設計了從小學到高中開展人工智能教學的目標與內容,還對中小學階段該如何教人工智能課程給出了具體清晰、可操作性強且符合學生學習規律的教學策略與活動建議。我們發現這些策略和活動也特別有利于對學生計算思維的培養,受此啟發,本文立足我國中小學技術類相關課程的教學實際,結合具體案例,闡述中小學計算思維培養的四類七種策略(見表1)。
二、解析中小學計算思維培養的教學策略
(一)實驗探究
教師組織學生使用各種類型的人工智能軟硬件資源,通過實驗探究教學,促進學生體驗和理解人工智能,在實驗中提高計算思維能力。
策略1:游戲化教學
游戲化教學包括數字化游戲和游戲活動兩類。有學者以Blockly游戲為平臺對學生進行計算思維訓練,證實了教育機器人可提高學生對科學、技術、工程和數學等學科知識的獲取能力,同時促進計算思維的培養。Garneli等人將學生分為兩組,一組通過包含科學內容的電子游戲情境,另一組通過設計適當的項目來學習相同的科學和計算課程。結果表明,游戲情境更有助于學生獲得計算思維技能[5]。這種跨學科的游戲化教育情境可以應用在典型的學校情境中,以促進學生獲得更多計算思維技能和學科內容。此外,AI機器人課程是游戲化教學應用最多的學科,在利用人工智能技術提高計算思維的研究中,Bers等人發現,由于機器人課程中包含游戲化的思維訓練,學齡前學生可通過與機器人一起學習獲得基本的計算技能[6]。Kahoot是一個基于游戲實現課堂實時反饋的網絡評估平臺,是包含智能批改和排行公告榜的自動化智能系統。由此衍生的Kahoot教育模式十分流行,將編程中的計算思維難點變成一個個游戲,學生完成教師的測試題就像在游戲中升級打怪,他們的計算思維會自然養成。
策略2:小組學習
小組學習包括合作學習和協作學習。根據Papert的建構主義學習理論,學生在虛擬環境中通過互動和合作完成學習任務,能有效提高學生的社會互動、認知、高階思維和計算思維。Wilkerson構建了一個協作學習系統,以幫助學生學習如何計算面積。從實驗結果可以看出,學生通過主導和分配角色合作完成學習任務,所得到的學習效果是最好的。計算思維是一種問題求解思維,它將問題求解的過程用“程序化”或“機械化”的方式表示出來。《普通高中信息技術課程標準(2017年版)》設立了“人工智能初步”選修模塊。其中,探究“機器人巡線問題”是使用機器人完成各種任務的一個重要環節。學生可通過小組合作探究,分析實際問題,提出解決問題的方法和步驟(算法),再通過流程圖轉化為實際程序編寫的過程。這一過程中,學生需要運用合理的算法形成各個小組的問題解決方案,由此鍛煉和提升了學生的計算思維。
策略3:翻轉教學
人工智能為翻轉教學注入了新的動力。一方面,基于語音識別、自然語言處理等技術的教學測評系統和智能問答系統,可以將教師從重復性、程序性的工作中解放出來;另一方面,人工智能技術為學生提供了更為精準、個性化的指導,凸顯了教學中學生的主體地位,增強了學生學習的自主性。例如,在以“計算機科學”為教學內容的翻轉課堂中,學生3/4的課程時間花在計算機實驗室,用以學習教師在學習管理系統中預先發布的學習材料,并通過個人實踐與線上測評等活動消化和吸收相關知識。剩下的1/4時間,教師引導學生討論學習的關鍵概念和技能,加強對所學和所實踐內容的理解[7]。研究表明,翻轉教學不僅提升了學生的計算思維技能,還激發了他們的學習動機,改善了他們的學習策略。
(二)不插電編程
算法是計算思維中必不可少的核心內容。通常情況下,算法與計算機、互聯網緊密相關,而不插電編程則讓學生不再依賴計算機設備開展開放性活動,是一種幫助學生理解問題解決思路與技術手段的新形式。
策略4:基于任務的教學
不插電編程就是通過各種生動有趣的任務活動或者開放式的學習環境,將編程知識和計算思維融入其中,讓學生不用電腦就能學習到計算機科學知識[8]。Havva等人在Bebras國際計算思維挑戰賽基礎上開發了不插電編程任務,包括簡單、中等、困難三個水平,讓學生在經歷抽象、分解、算法和泛化的思維過程中解決問題[9]。研究表明,不插電編程任務同樣可以提高學生的計算思維技能,當然,它也要求教師教學時緊扣知識內容與計算思維的內在銜接關系。在不插電編程的社區網站上經常更新一些與計算思維概念緊密相關的教學案例。例如,在“分解”活動中,學生得到的任務是將情景問題(如種樹)分解,并寫出解決問題的必要步驟;在“莫妮卡地圖”活動中,學生需要在一張地圖中使用上下左右(即↑,↓,←,→)找到兩個物體之間的最短路徑。之后,學會使用乘數(即→→→→=4x→)來表示解決問題過程。學生在完成這些任務的過程中,深入理解分解算法、模式識別、抽象等計算思維概念。
(三)設計類活動
在活動設計教學中,教師為學生提供不同形式的支架,引導和鼓勵學生設計出自己的作品,在設計和實踐中促進學生計算思維的發展。
策略5:隱喻教學
隱喻作為常見的修辭術語被大家所熟知,而在教學中,隱喻往往是用具體可感的事物來類比抽象的事物,避免了純粹的概念和枯燥的邏輯帶來的教學困難。Diana等人使用隱喻和圖形化編程軟件相結合的方式向小學生教授編程,即在教學過程中用學生可以理解的事物類比概念性較強的指令,如變量和輸入輸出指令、條件指令、循環指令。學生在理解了基本概念后,再用圖形化編程軟件練習并設計出一件作品。結果證明,隱喻和圖形化編程軟件相結合的方式有利于培養小學生的計算思維,并且更適合10~11歲的學生[10]。這是因為教師可以通過隱喻形象地呈現邏輯關系,清晰具體地描述問題,圖形化編程不強調復雜的代碼編寫功能,能夠降低學生的記憶難度。
策略6:支架式教學
人工智能技術能幫助教師更好地構建支架和創設情境,從而將復雜的問題分解,引導學生逐步發現和解決學習中的問題。北京大學學習科學實驗室提出以培養計算思維為核心開展人工智能教學的理念,其中,“AI積木編程”系列課程采用了AISpark人工智能編程實驗平臺的人工智能功能模塊。人工智能的基本原理是晦澀難懂的,該平臺卻以智能語音、智能翻譯等技術構建的支架緊扣學習主題,并要求學生以小組協作的方式設計出一個創意作品,為學生對人工智能原理的學習鋪設了階梯。計算思維測評結果發現,在智能技術的支持下,學生的計算思維技能有了明顯提高[11]。還有研究者關注性別差異,在基于人工智能的教學中使用了兩種不同形式的記憶系統作為腳手架,并發現男生更多地受益于個人主義、動覺空間導向和基于操縱的腳手架活動,而女生更多地受益于小組協作的腳手架活動[12]。
(四)案例研究
學習是一種復雜的心智活動,涉及背景和社會文化因素、學習者及其周圍環境,強調知識的主要來源是社會實踐活動。學習常常發生在學生為達到某種目標或解決某個現實問題而進行的活動中。教師可通過綜合性的社會實踐案例,引導學生從多個角度探索和解決問題,從而達到培養學生計算思維的目的。
策略7:社會文化教學
編程被認為是教授計算思維的最佳方法,但實際上,部分學生面臨著學習編程語言的挑戰。在編程學習困難者面前,編程不一定能有效地培養他們的計算思維。社會文化教學理論認為,學習是一套復雜的活動,涉及背景、社會文化因素、學習者及其周圍環境[13]。因此,計算思維的發展可以被描述為一個學生進入實踐社區的過程,其中專家位于社區的中心。在這個過程中,學生能夠分享經驗、概念、情境和實踐,積極參與并解決問題;學生能夠基于PBL練習開發解決方案,將與計算思維技能相關的概念轉換為經驗[14]。例如,有教師通過智能機器人模擬購物環境培養學生的計算思維——他創設了生活化的虛擬超市環境,提供智能機器人的視頻資料,引導學生思考并繪制出機器人的購物路線和流程圖。學生以小組為單位編寫機器人購物的程序,交流展示作品,在反思經驗的基礎上優化作品,將所學應用于實際生活中解決現實問題。這也表明,計算思維符合維果茨基提出的社會文化教育愿景,使學生能夠在PBL情境下積極參與社會互動[15]。
三、中小學計算思維培養的實施建議
(一)構建具有普適性和跨學科性的計算思維課程體系
如前文所述,培養計算思維不局限于編程一種方法,教師還可以與科學和數學等多學科融合,培養學生的邏輯概念、計算思維、解決問題的能力。換句話說,計算機編程是運用計算思維通過計算機解決問題的過程,而不是依賴于計算機的活動。美國IEEE計算機學會前任主席David Grier認為,未來10~15年,計算機教育面臨的挑戰是,如何構建一個課程體系來幫助人們更清晰地思考計算。Weintrop討論了將計算思維嵌入數學和科學語境中的方法,認為其有三個益處:①它建立在計算思維與數學、科學的相互學習關系之上;②它解決了觸及所有學生和擁有熟練教師的實際問題;③它使科學和數學教育更符合這些領域當前的專業實踐[16]。采用跨學科教學模式,使學生能夠通過計算思維來管理和分析各個學科的材料,從而加深他們對跨學科知識的理解,體驗跨學科知識和計算思維在解決現實世界復雜問題中所起的作用。交叉創新是普適性計算思維發展的根本途徑,將計算思維跨越計算機科學邊界應用于多學科領域(如STEM),是目前眾多計算思維教育研究者所尋求的實踐路徑。將計算思維發展與學科內容相結合,設置一套完整的計算思維培養課程體系,將有助于學習者了解計算思維的現實應用。
(二)建設人工智能技術賦能的、友好的計算思維教學環境
國內外研究表明,教育機器人作為一個積極的輔助工具,正越來越多地出現在教育環境中,用以培養學生的認知技能和計算思維。從本質上說,人工智能可以作為新興的教育技術,優化和改進傳統的信息技術課程。同時,嵌入人工智能系統的大量算法模式能增強學生對于算法的認知,豐富了計算思維的內容。當前,針對大數據分析以及各種人工智能體的研究、設計和應用,產生了許多新的計算模型、算法形式和計算技術。這些進展推動了人們對計算思維更加系統和深刻的認識。在教學實踐中,教師可利用這些技術和資源,建設一個規模適當的計算思維實踐基地,針對學生不同的學習需求,采取相應的教學策略,在實訓中提升學生提出問題、分析問題和合作探究的能力,培養學生的計算思維。
(三)完善具有動態適應性的計算思維評價指標體系
計算思維是一個抽象的術語。“讓學生像計算機專家那樣思考”,實際上就是讓他們盡可能充分地從計算機學科的視角思考。如何發展以“形式化思考、模塊化建構、自動化處理、系統化實現”為指向的計算思維教育,是目前困擾教育研究者的最大問題。要測評計算思維教學成果,這一維度又恰恰最為關鍵。國內外研究者采用了不同的方法和工具來評估教學策略對提升計算思維技能的效果,如測試、問卷、訪談等。但目前來說,大部分計算思維測評研究關注的是算法、模式、抽象、綜合、評估和自動化等計算機概念。在進一步的研究中,需要將數字素養、創新性思維等核心素養納入整體視野,并從思維的一般過程和思維的具體行為表現來構建測評體系,建立測評框架。
(四)提升教師計算思維素養與教學能力
計算思維可以在生活中被廣泛應用,而不僅限于被計算機工程師使用。然而,一些教師僅從表面理解了計算思維概念,不能設計出有意義的課程,將計算思維的概念和工具與學科內容或教學方法結合起來。為此,Bower等人舉辦了一系列k-8年級教師計算思維研討會。他們用實例說明,通過有針對性的專業學習,教師的計算思維理解、教學能力、技術知識和自信心可以在較短時間內得到提高[17]。教師在教學時需要考慮學生的學習狀況,或對不同的學生提供適當的幫助或反饋,引導學生通過學習教師設計的相關課程培養計算思維。
參考文獻
[1] BROWN N C, SENTENCE S. Restart: the resurgence of computer science in UK schools[J]. ACM Transactions on Computing Education,2014(6).
[2] 劉向永.普通高中信息技術課程標準(2017年版)概覽[J]. 中國信息技術教育,2018 (5):4-6.
[3] 陳國良,李廉,董榮勝.走向計算思維2.0[J].中國大學教學,2020(4):24-30.
[4] AAAI. AAAI Launches“AI for K-12”Initiative in collaboration with the Computer Science Teachers Association (CSTA) and AI4All [EB/OL].https://aaai.org/Pressroom/Releases/release-18-0515.pdf,2020-01-05.
[5] GARNELI V. The effects of video game making within science content on student computational thinking skills and performance[J].Interactive Technology and Smart Education,2019(16):301-318.
[6] BERS M U, FLANNERY L. Computational thinking and tinkering: exploration of an early childhood robotics curriculum[J].Computers & Education,214?3):145–157.
[7] HATICE Y D. The effects of using different tools in programming teaching of secondary school students on engagement, computational thinking and reflective thinking skills for problem solving[J]. Technology Knowledge & Learning,2018.
[8] NISHIDA T. A CS unplugged design pattern[J].ACM SIGCSE Bulletin,2009(1):231.
[9] DELAL H, ONER D. Developing middle school students' computational thinking skills using unplugged computing activities[J]. Informatics in Education,2020(1):1-13.
[10]PEREZ M D. Can computational thinking be improved by using a methodology based on metaphors and scratch to teach computer programming to children?[J]. Computers in Human Behavior,2020(4).
[11]肖海明,朱秋庭,王占秋.以計算思維培養為核心的人工智能課程設計與實踐[J].中小學信息技術教育,2020(9):59-62.
[12]ANGELI C,VALANIDES N. Developing young children's computational thinking with educational robotics: An interaction effect between gender and scaffolding strategy[J].Computers in Human Behavior,2019(3).
[13]VYGOTSKY L. Mind in the society: the development of higher mental process[M]. Cambridge, Ma: Harvard University Press,1978.
[14]BUITRAGO F, DANIES G. DesigR4/7SbXBwJf6BjGAeTrPOg==ning a Socio-Cultural Approach for Teaching and Learning Computational Thinking[J]. Nordic Journal of Digital Literacy,2020(2):106-124.
[15]吳憲辰,劉奎.面向計算思維培養的高中人工智能課程PBL教學模式研究[J].中國現代教育裝備,2020(10):33-35.
[16]WEINTROP D, BEHESHTI E. Defining computational thinking for mathematics and science classrooms[J]. Journal of Science Education and Technology,2015(10):127-147.
[17]BOWER M, WOOD L N. Improving the computational thinking pedagogical capabilities of school teachers[J].Australian Journal of Teacher Education,2017(3).
(作者尹以晴、李寧宇系溫州大學大數據與智慧教育研究中心碩士研究生;柳晨晨系溫州大學教育技術系副教授;王佑鎂系溫州大學教育技術系教授、博士生導師,溫州大學大數據與智慧教育研究中心主任)
責任編輯:牟艷娜