“算法与程序设计”和“智能机器人”课程整合初探,本文主要内容关键词为:程序设计论文,机器人论文,算法论文,课程论文,智能论文,此文献不代表本站观点,内容供学术参考,文章仅供参考阅读下载。
一、问题的提出
高中信息技术课程以提升学生的信息素养为根本目的,不仅注重学生的基础知识与基本操作技能的学习,而且注重学生对技术的思想和方法的领悟与运用,为学生应对未来挑战、实现终身发展奠定基础[1]。作为信息技术科目之一的“算法与程序设计”强调理论与实践的结合,提高解决实际问题的能力;而作为通用技术科目的“智能机器人”通过其创新性、综合性、实践性、探究性等特点,培养学生良好的信息素养、创新精神和实践能力,“智能机器人”是信息技术发展的综合体现,是中小学技术课程和综合实践课程的良好载体。目前,这两门课程的教学效果都还不甚理想,如何提高教学效果是我们迫切希望解决的问题。
二、“算法与程序设计”和“智能机器人”的教学状况分析
1.基本情况调查
目前北京市东城区25所中学中,信息技术选修课开设“算法与程序设计”的学校约占一半,而通用技术选修课开设“智能机器人”的只有3所学校。在开设“算法与程序设计”课程的学校中,选择该课程的学生大约占学生总数的一半,而在开设“智能机器人”课程的学校中,选择该课程的学生也相对少一些。从选择“智能机器人”的学生总体素质来看,这些学生的信息技术课成绩都不错,编程水平较高,都希望通过学习“智能机器人”进一步提高自己的编程水平。
在进行课程整合之前,我们从教师、学生、教学条件等几方面情况做了一些调查。
2.“算法与程序设计”教学中存在的主要问题
(1)教学内容比较抽象、枯燥,学习难度较大?
(2)教学内容与实际应用的联系不够密切。教材中的实例偏重于理论化,没有贴近生活实践,这也正是这门课教学效果不够理想的重要原因。
(3)教学内容多,课时紧张。对于“算法与程序设计”课程,32学时还不够充裕,教师没有足够时间将知识结构深入展开,难以很好地完成教学目标,而学生课外的复习时间又非常有限(见图1、图2)。
图1 “算法与程序设计”课时调查
图2 学生花在课外作业上的时间
3.“智能机器人”教学中存在的问题
(1)学习门槛较高。“智能机器人”的课程内容生动有趣,锻炼学生实际操作能力,非常吸引学生,但在程序设计过程中要求学生具备一定的算法基础和编程技巧,可是多数同学并不具备这个能力,所以他们在学习和实际操作活动中无从下手,结果对这门课程渐渐失去兴趣,最后使得机器人课成为少数学习能力较强的同学们的兴趣小组,教学效果两极分化情况严重,教学投资回报率不高。
(2)不影响学分,可有可无。通用技术课程完成必修课学习即可得到高中技术课程要求的4学分,所以很少有学校继续开设“智能机器人”课程。
(3)教学成本相对较高,普及缓慢。目前机器人及其配件价格都并不便宜,对于教育资金不足的学校,开设这门课还有困难(见图3)。
图3 信息技术教学硬件设备情况
(4)作为一门较新的课程,“智能机器人”的教材及教学方法还有待完善。
除了以上原因,信息技术教师的专业和教学能力也是关键问题。但是目前由于得不到足够的重视,师资力量自然也就参差不齐(见图4)。虽然新课改强调学生的自主学习,但教师的引导作用却不能忽视,信息技术教师对这两门课程的理解程度和教材的驾驭能力直接影响到教学效果。
图4 信息技术教师专业能力情况
三、“算法与程序设计”和“智能机器人”课程整合的可行性分析
1.现有的软硬件条件的可行性
根据前面的图表分析,目前全区各学校普遍具备开设“算法与程序设计”课程的软硬件条件,而对于“智能机器人”课程,硬件条件的要求稍微高一些,不仅需要电脑,还需配备一些机器人设备,所以要增加一些教学成本,但是这些困难还是可以想办法克服的,比如一些硬件条件稍差的学校,可以安装虚拟机器人教学平台等软件系统,再配备少量的机器人模型就可以进行正常教学。所以总体看来大多数中学都基本具备同时开设这两门课程的软硬件条件。
2.学生与教师需求对课程整合的要求
“算法与程序设计”是以“程序设计”为基础的新课程,“程序设计”课程已开设多年,因此对于信息技术教师来说,在“算法与程序设计”方面的教学经验还是比较丰富的,信息技术教师的专业技术水平和教学水平基本可以胜任教学任务。但是,就如前面已经提到的,由于作为信息技术的基础课程,这门课程自身的特点使它的教学内容比其他课程更加理论化,也更加抽象和枯燥,所以信息技术教师普遍认为这门课教学难度非常大,学生面对这么枯燥的学习内容自然也就没有什么兴趣了。
与“算法与程序设计”相比,“智能机器人”更能激发起学生的好奇心。“智能机器人”的教学理念就是寓教于乐。外形小巧可爱的机器人本:身就是个玩具,对于天性喜爱玩具的孩子们有着极强的吸引力,因而首先能够从感性上调动起学生的学习热情。但是机器人这个玩具是个高级玩具,需要通过编程才能“玩”起来,学生由于好奇心的驱使,为了让机器人动起来,进而对编程产生了强烈的学习欲望,希望把自己学到的编程知识马上应用到机器人上。通过学习编程使小小的机器人能够完成很多任务,这样可以引导学生们自主学习、边玩边学。因此学生对“智能机器人”课程还是非常感兴趣的。
3.课程的相关性支持课程整合
“算法与程序设计”的教学目标旨在使学生能从简单问题出发,设计解决问题的算法,并能初步使用一种程序设计语言编写程序实现算法解决问题[2]。“智能机器人”的教学目标是提升学生的科技素养,积极地应用和实践自己在其他学科学过的知识,进一步提高学生的动手实践能力和创新意识。作为普通高中技术课程,“算法与程序设计”和“智能机器人”同样都是立足实践的、具有高度综合性并且以创造为核心的课程,但是由于教学内容的侧重点不同而被人为地分成两个模块,使它们各自存在教学难度。
“算法与程序设计”的教学一直是信息技术教育中困难最大的部分,一方面要重视程序与算法在信息技术学科的基础地位,另一方面还要强调它对学生实践能力的要求,同时又不能忽视学生创造力的培养。但理论化的教学内容不符合他们现在的年龄特点,如果采用传统的教学方式,过于注重讲述理论知识,学生就很难理解。在教学过程中,应该以任务为驱动,在合理的任务环境下才能激发学生的兴趣,只是在“算法与程序设计”的教学过程中缺少这样一个合适的实践平台。
“智能机器人”的教学难度则体现在要求学生在学习之前需要掌握程序设计的基础理论,不过也正是因此使得“智能机器人”的教学成为“算法与程序设计”这类信息技术基础知识的有效延伸,成为信息技术教学体系中的有机组成部分。“智能机器人”正好是一个把算法的理论知识结合到实际应用的非常合适的平台,也是使学生提高编程技巧的非常有效的学习途径。通过学习“智能机器人”,让学生通过编程来控制机器人的行为,将抽象、枯燥的理论化为直观的表现,学生在提高编程技巧的同时又对算法的知识进行了巩固和更加深入的理解。因此作为通用技术的“智能机器人”与信息技术教学内容应该是融为一体的,它们有着紧密的联系,这两门课程在教学内容、教学方法和教学评价等方面都可以进行互补。所以“算法与程序设计”和“智能机器人”的教学整合有着充分的可行性,两者具有教学内容的连贯性,只要我们合理地进行教学设计就能在教学过程中让学生对这两门课程始终保持学习兴趣和信心,有效地完成教学任务。
4.课程整合后教学效率与教学效果的提升
“算法与程序设计”和“智能机器人”这两门课程单独进行教学时,教学任务往往都不能很好地完成:算法由于学习内容较多,教学时间比较紧张,因此教学效率很难保证,来不及讲完所有知识,再加上教学内容枯燥,很难让学生继续深入学习,教学效果很不理想;而“智能机器人”虽然教学内容比较吸引学生,但对学生的要求更高,由于多数学生没有编程基础,无法让学生一直保持学习兴趣,也就更难于进行教学,所以教学效率和教学效果更差。
整合后则能显著提高两门课程的教学效率和教学效果。将智能机器人作为算法实践的载体,会从根本上解决目前算法与程序设计教学中存在的问题。学生把在算法中学到的知识应用到控制机器人运动的编程实践中,更容易获得成功的喜悦,激发继续学习算法的兴趣,反过来又将在算法中学到的新知识应用到机器人的实验中,提高了学习效率,形成良性循环。所以将信息技术和通用技术中的这两门课程重新进行有机整合,相互渗透,取长补短,克服它们各自固有的不足之处,是一个可以尝试的办法。通过这种整合方式,还可以对学生的学习效果进行综合客观的评价,符合新课标的要求。再者,将两个模块的教学内容进行融合,也在一定程度上解决了课时紧张的问题(如图5所示)。
图5 对“算法与程序设计”和“智能机器人”进行整合
四、课程整合后的具体尝试方案
我们将“算法与程序设计”和“智能机器人”这两门课有机融合在一起,开设“算法在智能机器人中的实现”这门新课程,并进行了以下方面的整合实践:
1.课程目标的整合
培养学生对智能机器人的兴趣,让学生了解和掌握以智能机器人为载体的通用技术与信息技术的基本知识和技能,进一步体验算法思想,了解算法和程序设计在解决问题过程中的地位和作用[3];通过智能机器人课程使学生能从简单问题出发,设计解决问题的算法,并能初步使用一种程序设计语言编制程序实现算法解决问题,积极地应用和实践自己在其他学科学过的知识,进一步提高动手实践能力和创新意识,从而提升学生良好的信息素养、创新精神,教育学生树立正确的技术观[4]。
2.课程内容的整合
课程内容及课时安排见下页表1。
表1 整合后的课程内容及课时安排
(1)智能机器人概况:智能机器人概念、机器人的历史、机器人与人、机器人与社会的关系等内容。
(2)智能机器人的硬件组成及结构:了解智能机器人的系统结构,主要是机械系统、驱动系统、传感系统控制系统、通讯系统的原理与结构。
(3)智能机器人的软件系统结构:学会用智能机器人配套的开发软件设计机器人程序,了解程序设计语言、编辑程序、编译程序、连接程序以及程序开发环境等基本知识。
(4)机器人初级编程控制:理解并掌握一种程序设计语言的基本知识,包括语句、数据类型、变量、常量、表达式、函数。会使用程序设计语言实现顺序、选择、循环三种控制结构。
(5)机器人高级编程控制:理解模块化程序设计的基本思想,初步掌握其基本方法。在使用某种面向对象程序设计语言解决问题的过程中,掌握面向对象程序设计语言的基本思想与方法,熟悉对象、属性、事件、事件驱动等概念并学会运用。
(6)认识智能机器人的常用组件及配件并能组装。
(7)传感器的使用:红外、光敏、碰撞、灰度传感器的调试与使用。
(8)应用算法进行机器人灭火、机器人足球等设计实践。
3.教学方法与手段的整合
新课程从原先以教师为主体进行讲解的教学过程转变为以学生为主体,采用以项目设计为主线,以小任务为线索,开展在教师指导下的自主学习、探索实践的方法。信息技术教师要对这两门课程的教学内容非常熟悉,在教学过程中提出教学任务,进一步根据教学任务引出学习要点,不断调动学生的学习主动性,让学生按照任务要求不断进行学习实践和反馈,教师则根据学生的学习状况及时地进行引导(如图6所示)。
图6 以项目设计为主线,以小任务为线索的自主学习方法
4.教学评价的整合
可设定4个学分,并结合两个课程的教学评价方法,利用作业、试题、实际操作、综合性项目、作品等多种方式[5]。在阶段性评价中,教师在学期初设计一个综合性项目,在学期中的各个时期通过对项目完成情况作阶段性学习成果评价,期末对整个项目完成情况作综合评价。在评价内容上,综合学生各方面表现,包括编程能力、动手能力、协作能力,从而根据学生的个体差别,更加客观、合理地进行教学评价。
五、课程整合的教学效果分析
1.整合前后的选课情况比较(见图7)
图7 课程整合前后选课情况对比
2.整合前后学生学习兴趣的对比(见图8)
图8 整合前后感兴趣程度对比
3.整合前后教学效率与学习效果的对比(见图9、图10)
图9 完成教学任务情况对比
图10 学生掌握知识情况对比
从统计图表中看到,进行课程整合后,学生的学习兴趣和选课比例有明显的提高,学生掌握知识的情况也有大幅提升,教师的教学效率和效果也都得到了显著改善,说明这个整合过程是很有成效的。
六、课程整合后的思考
1.课程整合应该从点到面
在整合过程中,将“智能机器人”从功能上分解成各个小模块,同样也将算法的知识结构由易到难分成细小的知识点,渗透到“智能机器人”教学内容的各个模块中,从机器人的简单动作开始如走路,再到转弯、走八字等等,进一步渗入到复杂运动例如走迷宫,最后将机器人的各种活动进行整合以实现完整的有实际应用功能的活动如机器人灭火等,将算法中的知识点和“智能机器人”形成有机的融合,使学生始终保持学习兴趣,由浅入深、循序渐进地学习。
2.课程整合中有待改进的地方
进行课程整合实践之后,我区学生学习效果得到了明显的提高,对信息技术课程更加感兴趣,并在机器人编程竞赛中取得了非常不错的成绩。学生越来越喜欢信息技术课,但课上和课余时间毕竟有限,这还有待于信息技术课程在新课标中的重要度进一步提升。
3.信息技术课程整合的一些设想
在今后的整合实践中,我们准备逐步将“人工智能”的教学内容整合进来,进一步对机器人的自主学习能力进行研究,这才真正称得上是智能机器人了。
当然要将“算法与程序设计”和“智能机器人”这两门课程有机整合,信息技术教师的专业水平和教学水平起到了重要的作用。信息技术教师在教学设计中融入自己的创造性,灵活地使用教材,进行教材优化重组和信息技术课程的二次开发,是整合的关键之一。所以信息技术教师要不断提高自身综合素质,充实自己的专业知识,加强教育教学方法的学习,不能仅仅只局限于教材,要增强对教材的超越和整合能力。
本文获“中国移动校讯通杯”全国中小学教师信息技术与教育创新论文大赛一等奖,标题有修改。