您好, 访客   登录/注册

“G-A-C-O”范式:指向计算思维培养的编程教学策略建构与实践

来源:用户上传      作者:

  【摘要】本文以编程教育为出发点,结合计算思维的特征,以比例巡线算法为基点,构建编程教育中学生计算思维培育的“G-A-C-O”教学范式。通过教学实践解决存在的问题。从而达到培育计算思维的目标。希望此范式为计算思维的培养提供思路与方法。
  【关键词】计算思维  编程  比例巡线算法  “G-A-C-O”教学范式
  一、引言
  信息技术之所以得到进步和发展,其根本在于充足的信息技术人力资源支撑。培养信息技术人才成为世界需求,而计算思维又是信息技术人才的必备能力。这是当今时代对教育的新要求。新版《普通高中信息技术课程标准》提出:计算思维是信息技术核心素养的重要组成。计算思维作为解决问题的能力特征,渗透在整个问题解决过程中。
  二、思考:“G-A-C-O”范式的由来
  笔者认为编程是逻辑流动的体现。借助计算机领域的编程技术,形成合理的形式化方案将问题解决。可见,编程体现了计算思维。
  笔者以比例巡线算法为基点对中学生计算思维培育展开思考:如何提升学生解析能力,助力编程学习;如何训练学生思维严谨,适用学习生活;如何培养学生计算思维,适应信息社会发展?
  历经一年教学实践,资料汇总分析后,笔者总结归纳了编程教育“G-A-C-O”范式,即Gather-Abstract-Conclude-Optimize,将编程的抽象映射到具体的问题,实现复杂问题一般化,从而解决问题。
  三、发现:“G-A-C-O”范式中的计算思维
  以“乐高机器人比例巡线”为例——基于光电传感器调整巡线转向从而优化巡线过程的控制算法。
  (一)计算思维本质:人的思维主导计算机完成指令
  学生看到提示,首先想到路线的复杂度而非机器人如何巡线,这是人的思维决定的,图像优先。从机器人巡线看,就是通过乐高编程控制机器人自动完成。这对机器人而言是思维复刻,是一种机械化操作,是人的思维主导机器人完成。这说明计算思维虽在机器人中体现,本质上仍是人的思维。
  (二)计算思维要求:像计算机科学家那般严谨地思考问题
  完成比巡线算法,不单是编程,更重要的是将任务进行抽象分析,将任务一般化,通过思考形成结构化解决方案。一些学生会忽视“比例”,直接套用“Z字形巡线”。实际上前者主体是顺序结构,后者主体是选择结构,虽能实现巡线但与“优化”无关(如图2)。
  这归根结底是不严谨的思考导致。说明计算思维不只是需要我们学会编程,而是需要我们像計算机科学家那般严谨地思考问题。
  (三)计算思维核心:抽象与自动化
  根据图2描述,实现比例巡线算法需更多的数据,显得更复杂抽象,需要有良好的数学和逻辑思维能力为基础。从具象感官到抽象分析,再到模型建构形成自动化方案,探索比例巡线算法的过程可以辅助学生理解计算思维的自动化和抽象两个特点。
  四、探究:“G-A-C-O”范式使用
  理解巡线任务情境,明确巡线工作原理——让颜色传感器始终停留在线的边缘,保障机器人平稳巡线行进。这一点非常关键。类似数学学习,只有知道了某条定理或概念,才会运用相关知识解题。“G-A-C-O”范式遵循认知规律,有效辅助教学。
  (一)Gather:获取数据,形成图表
  为排除手动测量的误差,一般采用程序获取场地反射光强度,并记录于数据表格。
  (1)确定测量路径
  图中红圈表示传感器检测点,黑色长条表示路线。
  (2)编写测量程序
  编写程序控制从上往下对场地进行测量,电机旋转角度为前进距离。
  (3)记录测量数据
  将测量显示的结果记录在数据表格中,如表1。
  表1中,加粗部分表示点位3—点位7的反射光强度和对应电机转过角度。从表1可见,当传感器到达点位3之前,读数在60以上;到达点位3时读数立马下降;过了点位3直至传感器完全在黑线上(点位5),读数骤降,约为5;之后读数开始上升,直到过点位7,读数有恢复到60以上。
  至此,基本可以锁定巡线的关键数据在点位3-点位7产生。缩小分析范围后,借助本环节的数据采集技巧对该区间进行详细地测量并记录数据。
  (二)Abstract:处理数据,明确原理
  (1)生成数据折线图。借助Excel将记录数据生成平面坐标数据图(如图6,其中黑色长条表示黑线)。
  
  由图可以得出2号、3号区域读数变化近似一条直线,即传感器接近黑线读数慢慢变小,远离黑线读数渐渐增大。这就是传感器读数与检测点到黑线距离成正比例关系。
  (2)建立平面直角坐标系。为有效理解正比例关系。笔者将此图稍作改变,转换成熟悉的平面直角坐标图,如图7。
  
  以点(160,32)为原点,以电机旋转角度为X轴,反射光强度为Y轴,建立直角坐标系。
  (3)明确比例巡线工作原理。根据图7联想到一次函数,明白正比例关系,发现3号区域有类似结果。如何选择是关键。1号、4号区域传感器距离黑线太远,机器人会一直旋转根本无法前进;3号区域传感器在黑线上,理论上一直检测到黑线可保持直线前进,但由于自身结构、摩擦、黑线形状发生改变等因素无法保持直线行进,虽是正比例关系,可一旦走偏,就无法准确告诉机器人传感器与黑线的距离,导致无法平稳行进;2号区域左半边是白色区域,右半边是黑色区域,只要将传感器放在黑线边缘,一旦发生偏转或黑线形状改变,机器人便可根据读数确定调整幅度,继续沿着黑线边缘行进。这种控制方式就是比例巡线。
  (三)Conclude:建立模型,编写程序
  (1)建立模型。明确比例巡线工作原理,是建构模型的基础。传感器偏离距离大,转向幅度就大;反之,转向幅度就小。不难得出,“偏离距离”由传感器读数与边缘处读数之差来确定,前者为“误差值”,后者为“目标值(一般选择点位3与点位5读数的平均数)”。结合正比例函数解析式(y=k·x)可得到:   转向幅度=(传感器读数-目标值)×比例系数
  (2)编写程序。根据计算公式,完成编程:
  编程中的数据传递是关键,借助数学公式,构建计算模型,完成编程。
  (四)Optimize:优化程序,迁移类比
  调试是比例巡线程序重要部分。通过不断调试,验证目标值的可靠性,确定补偿值的有效性,保障机器人平稳行进。
  (1)优化程序:优化测量程序:驱动模块放到循环结束前,可获取初始光值,确定最大读数助力分析,显得思维过程更严谨;优化稳定性:如果将目标值增加到35,机器人将沿着边缘线稍偏左行进。这使机器人既可远离3号、4号区域,也可增大机器人的反应空间。测试路径决定目标值。如果路径是圆形,就需要将传感器放在3号、4号区域的边缘线,重新确定目标值,确保只朝一个方向转弯。补偿值则需尝试不同系数,以机器人稳定行进确定最佳补偿值。
  (2)迁移类比。学生根据“G-A-C-O”范式可以一步步去分析复杂的编程,将复杂的过程细分成单个编程步骤,由繁化简、由难变易,上一步做到位,就可进行下一步,最后都可以实现程序设计。学生可以借助范式解决问题后,习得相关技,实现解决一个问题到解决一批问题。
  五、总结:“G-A-C-O”范式的成效
  笔者历经一年实践验证范式的可行性。使用范式一步步对问题进行抽象分析,是对学生抽象思维锻炼,使学生面对问题时较快理清思路,更好参与到学习中。回到“G-A-C-O”范式,来看看取得的成效:
  (一)促进学生解析能力提升,助力编程学习。
  利用“G-A-C-O”范式学习编程,进行解析并推导数据间关系,最终完成编程。这意味着“G-A-C-O”范式促使形成一套基于信息技术编程解决问题的方法。从而知晓编程背后的机理,掌握编程解决问题的解析能力。
  (二)促进学生形成严谨的编程思维,适用学习方方面面。
  抽象思维将具体问题一般化,得到参数间的一般关系,从而建构模型。学生运用“G-A-C-O”范式解决编程问题,必须确保每个过程的各个参数都有根有據,每一步都要合理准确。这有利于形成严谨的编程思维。
  (三)促进计算思维培育,提升信息社会的生存能力。
  “G-A-C-O”教学范式帮助学生抽象分析问题,寻求本质。这有助于深化对信息技术的本质理解。往后遇到诸多品牌的教学机器人都可以实现比例控制算法。从而促进学生对信息技术的运用,甚至创造出新的信息技术,提升学生在信息社会的生存能力。
  参考文献:
  [1]郭伟,肖广德.论计算思维的培养对学生发展的价值[J].现代教育技术,2019.
  [2]李峰,赵健.高中信息技术课程标准修订:理念与内容[J].中国电气化教育,2016,(12).
  [3]周以真.Computational Thinking[J].Communications of ACM,2006,(3).
转载注明来源:https://www.xzbu.com/2/view-15159626.htm