培养小学生计算思维的“6C”模式与实践
2022-05-05黄静
黄静
[摘 要]在K-12教育(即从幼儿园到12年级的教育)中,计算思维被广泛地与编程教育联系在一起。然而,一线教师对于如何将计算思维与课堂教学相融合缺乏深入的理解,在教学实施、活动组织方面具有很大的随意性和盲目性。为此,研究者通过梳理国内外相关研究,立足基于设计的学习理念,对已有的计算思维培养教学模型进行本土化实践,构建基于情境感知、概念知识学习、协作方案设计、算法编程、改进完善作品、交流与评价作品的计算思维培养“6C”教学模式。该模式融合计算思维的基本要素,围绕解决真实生活情境中的问题进行具体的教学设计与实施。
[关键词]计算思维;编程教育;基于设计的学习;“6C”教学模式
一、引言
计算思维是当今信息社会除阅读、写作、计算之外,所有公民都应熟练掌握的基本技能。2018年11月,国际教育技术协会(International Society for Technology in Education,ISTE)在《教育者标准:计算思维能力》(ISTE Standards for Educators: Computational Thinking Competencies)中,明确将计算思维列为K-12学习者必不可少的技能之一[1]。在K-12教育中,计算思维被广泛地与编程教育联系在一起。2017年7月,国务院发布《新一代人工智能发展规划》,全面布局我国人工智能发展战略。其中,在保障措施中提及中小学阶段设置人工智能相关课程,逐步推广编程教育,实施全民智能教育[2]。
所谓计算思维,包含问题解决能力、批判性思维、创造力、协作思维以及算法思维,需要借助真实的问题情境来培养。而人工智能課程的综合性与跨学科特性,使其可以担当发展学生计算思维的重任。在中小学人工智能教学过程中,学生在通过编程解决实际问题的过程中可以转变传统的思维模式,学会从计算思维的角度去分析问题,并找出使用计算机解决问题的路径。然而,如何将计算思维更好地融入K-12教学,构建本土化的教学模式,促进学生计算思维的发展,是教育工作者亟需解决的重要问题。
二、相关研究
1.人工智能教育与基于设计的学习
在中小学开展人工智能教育,旨在为培养符合智能化社会要求的、具备良好技术创新思维和综合能力的新时代人才奠定基础。人工智能课程作为一门前沿技术课程,对学生的相关学科知识和实践能力都提出了较高要求。小学生的生活经验是其学习的起点,根据学生的生活经验进行教学设计,引导其利用软硬件解决实际问题,能够激发其学习兴趣。教师应带着问题解决的教学设计走进课堂,而这些问题不仅是学科知识问题,更有可能是生活中的问题,从而引导学生学会思考,培养解决问题的能力。
“基于设计的学习”(Designing Based Learning)理念来源于佐治亚理工学院教授科洛德纳(Kolodner)在1997年提出的“基于案例的推理学习”(Case-Based Reasoning),即:学生在解决复杂的现实问题时,通过丰富的经验或参考已有案例来学习;当旧的经验不能解决新问题时,会产生新的解释;基于案例推理的学习注重学习过程中产生的反馈、迭代改进,从问题解决的经验中学习[3]。此后,科洛德纳教授立足基于案例推理的学习和基于问题的学习,提出了设计型学习(Learning by Design),即:建立模型并测试、分析、重新思考、修改,然后重复之前的步骤继续前进,直至找到解决问题的方案;学习者在参与设计的过程中学习解决问题所需要的知识和技能,并获得培养沟通、表达、决策和协作技能的机会[4]。福特斯(Fortus)等人于2004年提出了基于设计的科学(Design-Based Science)教学模型,即:通过识别和定义情境、背景研究、设计方案、产品制作、反馈五个步骤,让学生参与工艺品的设计,构建科学理解和解决现实世界问题的技能[5]。
问题解决是人工智能课程教学中的关键要素,而设计是解决现实世界问题的典型方式。一些研究发现,基于设计的学习对问题解决能力、批判性思维能力、创造力、协作思维能力均有显著的提升作用[6],在编程教学中采用设计型学习模式有利于培养学生的算法思维、解决问题的能力和创造力[7]。因此,在人工智能课程教学中可以引导学生使用基于设计的学习方式,培养学生的计算思维。
2.计算思维培养的教学模型
计算思维是使用计算机和其他信息技术设计和解决问题的一套推理技巧[8],也是一种解决真实世界复杂问题的能力,一种涵盖算法思维、创造力、批判性思维等多元能力的高阶应用型技能[9]。计算思维问题的解决方案包含抽象、算法、分解、数据表示、测试、评估等元素,具有普遍适用性[10]。对于年龄较小的学生来说,如果没有掌握适当的学习策略,会很难习得计算思维[11]。
国内一些学者从关注学习情境创设、深度学习等角度出发,构建了面向K-12阶段的计算思维培养模型。例如,杨文正提出了基于学习情境链创设的计算思维培养模式,以设计多元情境要素为核心,在小学开展Scratch编程教学活动,将探究问题的产生和算法思想的应用还原到真实情境中[12]。杨伊等人建构了“面向计算思维发展的深度学习模型”,以真实情境中的问题为载体,以教师行为、学生行为、思维过程和评价总结四个维度为主线,对小学可视化编程教学进行了教学实验[13]。
三、面向小学生计算思维培养的“6C”教学模式
计算思维包括算法思维和基于设计的思维,其实践包括协同设计、开发产品、制作模型,或者通过计算技术解决问题等。由此,计算思维的培养可以采取多种形式,如简单的手工制作,复杂的动画制作、网站设计等。在教学中利用软硬件资源解决生活问题,能够将学习活动与真实世界联系起来,更好地激发学生的学习兴趣。因此,教师可以在人工智能课程教学中创设生活化的问题情境,让学生基于解决问题设计产品,从而促进学生计算思维的培养。
如前所述,福特斯等人于2004年提出了基于设计的科学教学模型,该模型由识别和定义情境、背景研究、设计方案、产品制作、反馈五个阶段组成[14](见图1),并遵循迭代循环。在第一个阶段,创设学习情境,帮助学生理解和观察,了解问题;在第二个阶段,定义问题及了解背景,帮助学生理解原理或者概念,为解决问题和进一步学习做好准备;在第三个阶段,学生将想法、构思转化为解决问题的方案;在第四个阶段,进行原型设计,实践问题解决方案;在第五个阶段,学生反思和表达他们所完成的作品,并对解决方案的可行性和适用性进行检验。
在此,参考基于设计的科学教学模型,结合AI4K12理论框架[15]中的感知、表示与推理、人机交互、社会影响的理念进行教学设计,构建了基于设计的“情境感知(Contextual perceived)、概念知识学习(Concept knowledge learning)、协作方案设计(Collaborating design plan)、算法编程(Computing and programming learning)、改进完善作品(Correcting and optimizing product)、交流与评价作品(Communicating and evaluating product)”的“6C”教学模式(见图2),帮助学生开展人工智能课程的学习。
所谓情境感知,是指教师以真实的与生活息息相关的情境知识为核心,利用人工智能技术设计整体教学主题,让学生在鉴定真实的情境问题后明确学习任务,并对问题进行分解。概念知识学习则旨在使学生了解解决问题所需的基础知识和基本原理,为解决问题打好基础。协作方案设计则表现在通过头脑风暴设计产品方案,绘制解决问题的流程图;在设计过程中融合计算思维实践,如数据分析、数据呈現、并行处理。算法编程即让学生利用所学的编程与算法知识构建物理实物与虚拟编程相结合的产品原型,其中融合较多计算思维实践,如数据收集、数据分析、算法与过程、自动化与模拟等。改进完善作品即迭代完善产品,通过测试产品的编程部分以及物理构建部分,确保迭代改良产品。交流与评价作品即由小组开展评价反馈工作,包括梳理和总结学科知识、汇报产品制作过程以及自己的收获。
学生在分析与设计的过程中,收集数据,评估方案,形成想法,最终建构自己的知识体系。在设计流程图和编辑程序的过程中,学生通过思考“如何做”“需要什么”“为什么”“是怎样”等问题,对程序进行设计,并借助计算机解决现实问题。学生在收集与分析信息的过程中,培养批判性思维;在小组讨论、协作学习的过程中设计产品方案,培养协作思维和创造力;借助计算机将真实世界中的问题转换成编程设计,并在编程中培养算法思维;在作品的修改与迭代中,提升创造力和设计思维;在作品的展示与交流中,进行反思和深化,培养智能社会责任。学生通过整个学习过程培养计算思维。
四、基于设计的人工智能教学实践
以学校人工智能课程中的“智能植物养护系统”一课为例,主要引导学生为学校生态种植园的盆栽植物设计智能养护小助手,实现自动养护、远程监控等功能。该课面向小学三年级学生,教学使用的器材包括语音识别、图像识别、温湿度等多种传感器设备,以及若干积木模块和平板电脑。学生可以使用积木模块搭建结构件,通过图形化编程软件编写程序,并通过控制电子元器件的工作来解决问题。学习活动包括:介绍学习主题及要解决的问题;设计问题解决方案;课内和课外进行自由探索;作品展示交流和反思。本节课要求学生能够在情境体验中明确要解决的问题;在自主探究中形成想法,建构知识;在小组讨论中形成产品设计方案,并借助计算机将真实问题转换成编程设计;在协作交流中迭代改进,创新制作;在展示交流中进行反思与深化。具体的教学流程如图3所示。
1.情境感知
在这一阶段,教师展示植物枯死的视频,要求每组学生通过实验和产品制作来解决植物长时间无人养护的问题。首先,学生必须了解植物的生长习性,理解智能系统对于保障植物生长的重要性,以及如何制作智能植物养护系统。然后,他们需要考虑解决这些问题的方案并进行尝试,从而确定其中最优的解决方案并进行准确描述。在这个过程中,学生有必要分解问题,并明确必须遵循的问题解决步骤。
2.概念知识学习
在这一阶段,教师为学生提供解决问题的学习资源,包括学习单、微视频等,帮助学生了解植物生长的必备条件、智慧种植系统的工作原理和模型搭建的基本方法,以明确解决问题的思路,为设计智能产品制作方案做好准备。
3.协作方案设计
在这一阶段,学生通过绘图设计原型,将想法转化为解决现实世界问题的方案。学生先单独绘制模型设计图,然后在小组讨论交流中发现不足,思考如何让模型正常运行,并由教师来确认或解释设计方案的合理性。各小组综合组员和教师的意见进行协商,选择最佳方案进行模型设计与实施。
4.算法编程
在这一阶段,学生将问题解决分解为小的步骤,选择合适的传感器模块,并用侦测、判断、重复执行等编程语句实现对环境温度、土壤干湿度、光照强度等的判断,然后通过启动电机、水泵、灯泡等输出功能,实现自动化控制。学生将设计方案变成现实,初步实现让机器完成自动养护的过程,体现了计算思维中“抽象”“分解”“概括”等重要内容。
5.改进完善作品
在这一阶段,学生通过测试其作品的可行性和适用性,发现存在的问题,并以小组为单位,针对问题进行调试和改进,形成完善的解决方案,优化作品功能。学生在测试过程中需要检验的作品功能包括:能否准确判断土壤的干湿情况,浇水量是否适中,补光元件是否真正起到补光作用,等等。
6.交流与评价作品
在这一阶段,各小组在教室交流与展示本组的智能作品,介绍设计思路,展示作品的功能。学生主要从外观、功能、实用性等方面对作品进行自我点评和互评。学生展示的作品功能包括:通过摄像头远程监控植物的生长状态;通过语音命令水泵、电机等模块工作,实现自动浇水、补光等功能;通过土壤湿度传感器监测土壤湿度,当湿度低于设定值时,水泵自动工作,为植物浇水;通过温度传感器监测温度,当温度大于设定值时,风扇启动,实现自动通风,等等。
五、结语
学生通过情境感知、概念知识学习、协作方案设计、算法编程、改进完善作品、交流与评价作品六个学习步骤,在解决实际生活问题的过程中培养了问题意识,习得了新知识与新技能,增强了与同伴的合作交流,同时在修改完善作品的过程中提升了创新能力和批判性思维水平。在某种意义上,可以将学习目标视为建立一个挑战,学生们在这个挑战中不是互相竞争,而是与设计说明书竞争——能否设计出一款满足现实需求的产品。达到设计目标的挑战感使学生们产生了强大的学习动力,他们在课堂上几乎全情投入。一些担心不能很好地完成作品的学生在前期会反复修改设计方案,也会非常认真地学习教师提供的学习资料;部分追求完美的学生则希望多一点参与的时间,以便进一步修改他们的设计程序。與学生们生活密切相关的问题激发了学生们的学习兴趣,他们很乐意学习新的知识来解决这个问题。不过,未能达到设计目标的挑战也让一部分学生感到很受挫,尤其是那些不善于沟通和表达的学生,他们在小组讨论和作品分享环节表现得很沉默,参与度也很低。如何让这部分学生也能积极参与到设计活动中,需要继续思考和研究。
参考文献
[1][9]International Society of Technology in Education. ISTE standards for educators: Computational thinking competencies[EB/OL]. https//www.iste.org/standards/computational-thinking,2018-05-10.
[2]国务院.国务院关于印发新一代人工智能发展规划的通知[EB/OL]. http://www.gov.cn/zhengce/content/2017-07/20/content_5211996.htm.
[3]Kolodner J L. Educational implications of analogy: A view from case-based reasoning[J]. Am Psychol, 1997, 52(1): 57-66.
[4]Kolodner J L, Camp P J, Crismond D, et al.Problem-based learning meets case-based reasoning in the middle-school science classroom: Putting learning by design into practice[J]. Journal of the Learning Sciences, 2003, 12(4): 495-547.
[5][14]Fortus D, Dershimer R C, Krajcik J, et al. Design-based science and student learning[J]. Journal of Research in Science Teaching, 2004, 41(10): 1081-1110.
[6]Eunyoung C, Ruth L, Yeoungsuk S. Effects of problem-based learning vs. traditional lecture on Korean nursing students’ critical thinking, problem-solving, and self-directed learning[J]. Nurse Education Today, 2014, 34(1): 52-56.
[7]Saritepeci M. Developing computational thinking skills of high school students: Design-based learning activities and programming tasks[J]. The Asia-Pacific Education Researcher, 2019, 29(1): 35-54.
[8]Wing J. Computational thinking[J]. CACM, 2006(3): 33–36.
[10]Kelly N, Gero J S. Design thinking and computational thinking: A dual process model for addressing design problems[J]. Design Science, 2021, 7(8): 1-15.
[11]Tikva C, Tambouris E. Mapping computational thinking through programming in K-12 education: A conceptual model based on a systematic literature Review[J]. Computers & Education, 2021, 162(1): 104083.
[12]杨文正.学习情境链创设视域下的计算思维培养模式[J].现代远程教育研究,2021,33(5):72-81.
[13]陈兴冶,马颖莹,杨伊.面向计算思维发展的深度学习模型建构——以可视化编程教学为例[J].电化教育研究,2021,42(5):94-100+121.
[15]AAAI and CSTA. AI4K12[EB/OL]. https://ai4k12.org/resources/big-ideas-poster/.
(责任编辑 郭向和 校对 姚力宁)