关键词:计算机导论;教学内容;教学方法;计算学科;课程构建;导引
中图分类号:G642
文献标识码:B
1引言
“计算机导论”课程是计算机专业者要学习的一门非常重要的专业基础课,也是入门课。应该就学科特点、学科形态、历史渊源、发展变化、典型方法、学科知识组织结构和分类体系、各年级课程的重点,以及如何认识计算机科学,学好计算机科学等问题从科学哲学和高级科普的角度去回答学生的疑问,因而起到后续课程导引的作用,从而让学生对计算机系统有一个全面的初步了解,并为深入学习计算机学科的各专业课奠定“以全局指导局部”的基础。
但是计算机科学发展日新月异,新方法、新技术不断涌现。因此很难找到一本与时俱进的教材,既满足学生的理论课需求,又满足实践课需求。同时传统教学模式中有些内容已不适应新时期人才培养的要求,需要进行变革,针对上述情况,笔者对教学内容和教学方法等方面进行探讨自己的看法。
2存在问题
通过大三、大四学生调查,发现当问及你对计算机学科的体系结构怎么理解?80%的学生对此问题回答模棱两可,笔者对这种现状震惊了。相当一部分学生对计算科学缺乏比较全面的认识,科学思维能力、创新能力、工程知识、分析和解决实际问题的工作能力较差,一些学生经过四年的学习后还没有建立起一些专业学习的方法,甚至有些同学认为计算机专业学习就是熟练掌握电脑的基本操作,而对于一些理论方面的知识缺乏兴趣。这样必然导致学生在以后的专业学习和自我学习能力培养方面出现很大的障碍。究其以上情况,教与学的目前状况值得我们深思了。
鉴于存在以上的现象,诚然与学生本身的学习能力、态度、兴趣有关,但另一方面对“计算机算计导论”这门课程的内容、教学目标要求以及对教师的要求等都发起了挑战,如何解决这门入门课程对学生、后续课程的引导作用,是目前亟待解决的问题。
3教学目标
4教学内容
近年来,虽然很多高等学校开设了“计算机导论”课,但要区别计算机科学与技术专业学生与非计算机专业学生在培养目标和方向上的不同,;还要明确课程内容设置目的,作为计算机方向的入门课程,应把握教学内容的深度和广度。按照“CCC2002教程”的描述,按照上述对内容的描述,“计算机导论”课程的内容可分为下列几大部分:
(1)计算机学科概述,包括学科的背景、发展历程、名称的来历等;
(2)对计算机硬件知识的描述,包括计算机的产生和发展,冯诺伊曼结构计算机的基本组成,计算机的体系结构,计算机硬件技术的发展等;
(3)对软件知识的描述,包括软件的分类、程序设计的基础知识、面向对象程序设计的思想、算法与算法分析、数据结构与操作系统的基本知识、数据库和软件工程;
(4)对通信与网络知识的描述,主要介绍数据通信的基本概念和计算机网络的基本原理,包括网络的体系结构、数据通信的基本方法和网络协议以及网络系统的安全和管理知识;
(5)人与计算机,包括人机交互知识、人工智能技术的研究领域及取得的主要成果、人脑与电脑的关系;
(6)计算机和社会,包括计算机系统的应用、计算机专业与社会的关系、知识产权与职业道德等;
(7)学科的未来,在每一部分中穿插介绍计算机发展史上著名的事件、公司、人物、产品,我国计算机技术的发展历程,使学生全面了解本学科。
5教材选择
5.1适当补充新的信息
在课程内容的选择上,既要有基础性又必须有先进性。既然计算机导论是一门正规的基础课程,课程内容就不能带有随意性。课程的性质和目的也决定了不仅要向学生介绍计算机的感性知识,还要介绍计算机的理性知识,即要“领进门”,又要“送一程”,所以课程内容的基础性是十分重要的,这一部分内容应该相对稳定。但是计算机导论又是一门实践性极强的课程,由于计算机技术的发展和软件的更新换代十分迅速,如果授课内容陈旧、肤浅,不但学生会失去学习的兴趣,而且上机实习也会遇到障碍(找不到过时版本的软件),所以课程内容必须“吐故纳新”,要适当介绍一些计算机技术的新知识和一些流行的优秀软件,使课程内容始终保持先进性。所以不仅教学大纲要不断修订,而且教材也要及时更新。
5.2防止两个倾向
在计算机导论课的内容选择上还要防止两个倾向:一个是过于简单,另一个是过于复杂。如果课程内容简单化,降低要求,就容易把这门课降格为社会上一般的计算机操作培训班。把计算机基础教育系列课程的第一门课程混同于计算机扫盲,是对该课程采取实用主义态度的结果,也是对课程性质和任务的一种误解。反之,如果课程内容复杂化,一再加码,就会把这门课提升到计算机原理课的水平,学生听不懂,吃了夹生饭,会给后续计算机专业课程的学习造成障碍,同样也会使学生对计算机的学习“望而却步”。
6教学方法的探讨
6.1教学融入“故事性、趣味性、启迪性”
“计算机导论”课程的教学会涉及到计算机科学发展的很多人和事物,如果将一味地将一些枯燥的知识简单的传授给学生,学生的接受能力和兴趣并不能达到理想的效果,把涉及到的专业术语知识等所关联的到人物事件讲述成一个个生动的故事,提高学生的学习兴趣,通过他们的成功与贡献来启迪我们的学生对计算机科学学习的兴趣,增强专业认识。比如讲到计算机体系结构时,就会提到冯诺依曼,他的人生经历,事件发展背景;讲到计算机网络时就会提到,美苏争霸等重大事件;比如讲到人工智能方面可以引出“深蓝大战”。这样集故事性、趣味性、启迪性结合古板的知识让学生充满兴趣开拓自己的知识面。
6.2直观的教学法
比如,当涉及到一些硬件知识时候,教师可以在课堂一边拿着一些硬件部件进行现场讲解。在做实验时,让学生亲自动手来实践课堂教学的理论知识,比如进行硬件组装,让学生通过真实地触摸硬件的元器件及产品来加深他们对知识的理解;再如,当讲到计算机网络的有关知识时,就可以到实验室去,让学生从专业的角度来学习网络,进行现场简单的认识网络的组成。这种感性的教学方法能带给学生直接的专业学习体验以及更新颖的感观认识。
6.3善用现代计算机多媒体技术教学法
(2)在讲解到操作系统等软件进行操作时,可以用视频展现操作系统的安装过程,然后再带学生进行实验室进行现场安装,进一步巩固课堂教学。
(3)在讲到一些抽象的基本原理时,如在讲解到CPU的工作原理时,可以用制作的Flash小动画展现CPU的工作原理。
6.4语言表述具体化
因为计算学科中抽象性的内容较多,所以教师在授课过程中,如果语言表述不通俗易懂的话,抽象性越高,学生会在刚刚了解一个内容的基础上,再尽全力去理解这晦涩的专业术语等抽象的表达,这样学生陷入一个恶性循环中,就会有云里雾里的感觉,听课效果肯定会受影响。
6.5精讲多练是授课的重要方法
6.6对授课教师的要求
“计算机导论”课程作为计算机专业学生的入门课程,内容广泛且与后续课程关系密切,因此讲授起来有一定难度,本课程要求教师必须站在学科的高度看问题,将复杂的、抽象的内容简单化、形象化,因此对教师的要求很高。“良好的开端是成功的一半”,但也有“万事开头难”,授课教师不仅要有极大的热情,能够带动学生的学习积极性,更要对本学科有全面了解,要变传统的知识型教学为研究型教学,选择适当的知识为载体,通过对知识点的讲授,让学生学会思维。这就需要教师自身先把知识“嚼出味儿”,然后再在课堂上使学生形成科学的思维习惯,掌握有效的学习方法。教师还应该根据自己所在学校对学生的培养目标定位、根据学生的特点,有机地组织和确定课程内容,把握教学计划的总体安排,强化能力培养的意识,使学生能通过对学科的理解和认知进入学科领域。
参考文献:
[1]中国计算机科学与技术学科教程2002研究组.中国计算机科学与技术学科教程2002[M].北京:清华大学出版社,2002.
关键词:计算机导论;教学内容;教学方法
0引言
《计算机导论》是计算机科学与技术专业的一门基础课程,是该专业的前驱课程和核心课程,是计算机专业完备知识体系的概述。国内许多高校在大一都开设了该课程,然而不同高校在计算机导论教学内容上具有明显的层次性,不同类型学校及学生具备的基础知识差异性较大。在教学中发现,该专业学生对专业知识缺乏全面认识,没有一个整体逻辑体系,学习能力、解决问题能力较差。随着信息技术的发展、知识更新的加快、学科知识的交叉融合,为使学生更好地建立专业思想和学习方法,本文对《计算机导论》的教学内容进行了研究。
1教学目标
不同类型、层次的高校培养目标各不相同,地方本科院校培养的是应用型技术人才,因此,应符合实际制定专业培养目标,把握计算机导论在应用型的专业培养目标中的定位,发挥计算机导论的“五导”作用:导知识、导方法、导思维、导意识、导职业。
计算机导论涉及的知识范围大而广,新生不可能掌握所有内容,尤其是具体理论及实现能力,教学目标应切合实际。在研究教材及调研基础上提出了如下目标:①系统了解该专业的基本知识与技能和应用前景,为后续课程学习、发展奠定基础;②新生面对一切既新鲜又充满疑惑,应为其学习方向进行良好的引导,激发对专业的兴趣;③培养学生的思维、团队协作、创新及知识重建能力和探究精神;④认知计算机领域解决问题的一般技术方案,从理论上升到应用,注重综合能力的提高,追踪当前热点课题和研究方向;⑤培养良好的职业素养和习惯,了解就业岗位的特性,具备改善就业的能力。
2教学内容
计算机导论课程构建是计算机教育面临的一个重大问题,教学内容应以全局的视野将知识进行整体串联,学科框架、课程知识、重要知识点、实践能力及相互逻辑联系向学生讲明白透彻,深刻理解计算机对人类社会的推动作用,培养学生的认知能力,树立科学的方法论,达到教育目标。
2.1教材内容与特点
(1)课程以专业课为一章构成。将基础知识、计算机组成原理、操作系统、计算机网络、软件工程等各为一章节进行编写,专业课缩合拼凑成教材,没有逻辑体系。
(2)将“计算机基础”教材的内容添加进去。没有把握计算机导论的专业基础性质,与课程要求不符。
(3)强调理论、实践少,知识与实验教材内容更新滞后;前沿理论和新技术涉及少、更新慢。
(4)有的侧重广度,强调对计算机和计算机科学的广泛理解;有的侧重深度,以程序设计为主线并解决问题,强调计算机编程;有的则兼顾广度和深度,强调广度的中心主题,深度贯穿于广度之间。
(5)以科普体裁体例编写。与传统教材不同,它采取通俗的文字,以普通故事或典型问题等方式介绍。
2.2教学内容构建
计算机导论课程比较抽象,教学内容构建没有统一的规范。教材的选择不应拘于某种标准,应通过比较选取一本主要教材,辅以参考教材,优化整合教学内容,合理进行课堂设计。采取72学时进行教学,教学内容构建采取理论―实验―实践相结合的模式,用自顶向下的方法设计,以高屋建瓴的方式提出课题,再追求细节,结合教学实践,在学生反馈的基础上进行充实、改进,确定课程教学内容。
(1)理论教学内容。计算机导论理论内容包括:①计算机基础知识。主要有计算机产生和发展、计算机系统、数据编码和存储、冯诺依曼模型、计算机体系结构与数据组织、多核技术、计算机应用领域等;②计算学科。主要有计算机学科定义、计算学科划分、知识体系、教学计划与课程体系的核心内容、计算机产业与创新;③操作系统与网络计算。主要有操作系统体系结构、通信与组网、网络协议、安全、网格计算等;④程序设计语言。主要有程序概念、程序设计方法、数据基本结构、算法与复杂性、语言实现等;⑤数据库。主要有模型与信息系统、数据库系统、关系数据库与设计、数据挖掘等;⑥软件工程。主要有软件工程学科、软件开发模型、设计方法、测试与文档编制等;⑦智能系统与人工智能。主要有智能与机器、知识与推理、语言处理、智能计算等;⑧图形学与可视化计算。主要有图形学、图形系统、虚拟现实技术、人机交互与设计、多媒体技术;⑨离散结构与数值计算。主要有集合论、代数结构、图论、数值计算、高性能计算、数学建模与计算机模拟等;⑩社会和职业道德。主要有计算机与道德、职业方向等。
(2)实验教学内容。开设实验教学内容是必不可少的,实验教学内容要突出专业课程特色,针对大一学生,需编写实验指导书,并对原理进一步讲解,通过丰富实例,从实验向实践过渡。理论教学与实验教学可以灵活进行,包括内容与实验顺序。设计的实验如下:①计算机部件认识与组装,网络硬件,组网与环境配置;②安装虚拟机,在虚拟机上安装操作系统与驱动程序,操作物理磁盘上的文件;进程调度、进程管理实验;基于Windows的网络通信验证程序;③信息安全实验,比如以流行的杀毒软件为实例;④程序设计实验(开发平台与语言环境)、数据结构实验等。主要包括数据操作,理解指令系统的组成,掌握机器指令的格式,理解程序的执行过程;结构化程序设计,熟悉程序结构,掌握C语言编写的方法;加深理解递归及迭代的概念,掌握用C语言编写递归及迭代程序的方法;算法综合练习,熟悉结构化程序设计在算法中的应用;理解二分查找法的思想;⑤数据库实验:建立数据库程序、数据库编程;⑥软件开发过程;⑦计算机图形绘制与动画制作;⑧设计网页、构建简单的网站、操作数据库表等内容,认识HTML。
3教学方法
计算机导论的特点及在计算机专业中承担的角色,决定了在教学中需要采取多种灵活的教学方法。课程对授课的教师自身素质和专业能力有更高的要求,需对计算机科学发展、学科特点、知识结构等有一个整体把握,需长期从事一线教学科研工作的经验体会,以教学目标为基础深化教学方式,对学生进行更好的引导,理清思路,转变学习观念与方法。
(1)基于知识背景的教学方法。在教学过程中将讲授的知识与其背景结合起来,使学生具有探求知识的欲望,为其提供更为广阔的想象与思维空间,有利于培养学生的学科思维和学科意识。
(2)问题式教学方法。通过提出问题引导学生思索。例如,计算机学科的基本问题哥尼斯堡七桥问题引入图论,梵天塔问题引入递归、算法复杂性问题等,将问题抽象形式化,通过数学方法来解决。
(3)专题式教学方法。涉及到计算机专业的核心课程知识,可由不同的老师做专题讲座。建议在有条件的情况下由学科带头人或骨干教师担任主讲,并使用多种教学手段进行教学。该方法可将密切联系的课程进行整合,体现教师的专业性,获得系统性的知识,打破以往孤立的授课方式。
4考核方式
课程的考核方式是检查教学效果的基本手段,反过来又促使教学的改进。计算机导论课程重在“导”,强调总体上的理解,而不是试图要对每一个知识点都详细讲解,因此,应建立多元的课程考核方式,改变过去那种依赖“平时成绩+考试成绩”的模式。适应培养应用型人才目标,加大平时成绩(60%)的考核力度,如问题式教学时的课堂表现、资料收集与整理、团队教学参与情况及总结报告、实验操作技能等;考试成绩(30%);学习该课程后个人总结及未来规划(10%)。在多元考核体系下使学生自主的参与进来,提高了学习的积极性,既轻松学习,又培养了各方面的能力,取得了良好的效果。
5结语
《计算机导论》是一门基础课程,但在教学上却是一个难点。本文结合我校的实际情况,根据计算机导论课程的特点及教学中问题的反馈,在教学目标、教学内容及方式上进行了一定的探索和实践。从学生反映来看,普遍认为新的教学方法能有助于更好地吸收课程知识,在学习该课程后对计算机专业有了一个宏观的认识,改变了过去被动式的学习方式。
\[1\]袁方,王兵,等.改革教学方法,发挥计算机导论的“五导”作用\[J\].计算机教育,2011(1).
\[2\]张晓如,张再跃.计算机课程教学与计算科学思想史研究\[J\].计算机教育,2008(19).
\[3\]任子亭.地方本科院校软件专业课程建设与实践\[J\].电脑知识与技术,2012(14).
1.1UIUC计算机工程专业本科课程设置
UIUC计算机工程专业学生需要修满128个学分,这些课程分为如下7大类:1)科学基础与数学课程(31学分),包括数学、物理、化学在内的10门课程。2)计算机工程核心课程(34学分),这些课程重点介绍计算机工程领域的基本概念、基本原理、基本实验方法和技术,共有10门课程。3)专业基础数学课程(6学分),包括离散数学和概率、工程应用两门数学课程。4)写作课程(4学分),1门写作原理课程,主要讲授研究报告的写作方法。5)专业技术选修课(23学分),其中1门必须选自计算机工程和计算机科学专业技术选修课程之外的课程,其他必须均选自计算机工程和计算机科学专业技术选修课程。这些课程强调计算机工程实践中用到的主要分析方法和设计原则。6)社会科学与人文科学课程(18学分),这些课程被工学院认可并满足学校对学生社会科学与人文科学课程通识教育的要求。7)自由选修课程(12学分),这些几乎没有限制的选修课可以让学生学习任何领域的知识。学生可以在计算机工程专业深入学习课程,也可以学习生物工程、技术管理或语言等课程。
1.2普度大学计算机工程专业本科课程设置
普度大学计算机工程专业学生需要修满125个学分,这些课程分为如下6大类:1)通识教育课程(24~25学分),包括6~7学分的两门交流技巧课程和18个学分的社会与人文学科选修课程。2)数学课程(21~22学分),数学课程有两种套餐,各6门课,学生可以根据自己的情况任选一种。3)科学基础课程(18~19学分),包括物理、化学、生物及面向对象编程等5门课程。4)工程基础课程(7学分),包括工程导论两门课程及计算机工程和计算机科学以外学科的工程学科选修课1门。5)计算机工程专业课程(49学分),包括32~33学分的13门计算机工程专业核心课程;两门共计1学分的研讨课程;2门3~4学分的高级设计课程;2门8学分的研究生课程;1~2门计算机专业选修课程,使计算机工程专业课程总学分达到49学分。6)任选课程(4~6学分),根据辅修要求或个人兴趣,任选课程可以从理学院或文理学院中适合工科学生的数学、科学课程中选择,目的是使总学分达到125学分。
1.3伊利诺伊理工学院计算机工程专业本科课程设置
IIT计算机工程专业学生需要修满130~134个学分,这些课程分为如下3大类:1)限选课程(109学分),学分分配如下:计算机工程专业限选课程47学分,包括计算机工程和计算机科学两类课程;数学限选课程24学分;物理限选课程11学分;化学限选课程3学分;工程科学限选课程3学分;社会科学与人文学科限选课程21学分。2)选修课程(15~19学分),包括专业选修课程9~12学分,其中含1门硬件设计选修课;科学选修课程3学分。3)跨专业实践项目课程(6学分),包括IPROI跨专业实践项目I和IPROII跨专业实践项目II两门课程。
1.4西北大学计算机工程专业本科课程设置
24所大学计算机工程课程设置特色
4所大学计算机工程本科专业的课程设置都通过美国工程教育认证机构ABET的EC2000指标体系认证,有如下特点:
1)注重基础知识的学习,在贯彻通识教育中培养学生的各种能力。基础知识直接决定学生未来的发展潜力[7-8],而基础知识的掌握通常是通过通识教育实现的。与我国高校通识教育不同的是,这4所美国大学按照各种完整的项目组织基础知识,让学生在基于项目的学习中形成各种能力。他们还特别重视人际沟通能力的培养和学生对广泛深入的人文社科知识的理解,使所有工科学生在数学、物理、信息、物质、生命、技术和能源科学方面及人文社科方面打下广泛的基础。这种比知识更重要的能力是学生取之不尽、用之不竭的资源。普度大学第一年的工程基础培养及UIUC第一年的计算机工程训练从一开始就围绕能力培养,使学生能更好地理解和应用所学的基础科学和数学知识。
关键词:人工智能;教学内容;教学方法
中图分类号:G642文献标识码:A
人工智能(AI)是二十世纪五十年代后期兴起的利用计算机模拟人类智能活动去求解问题的学科,与空间技术、原子能技术一起被誉为二十世纪三大科学技术成就,目前广泛应用于专家系统、机器翻译、语音识别、文字识别、计算机视觉、机器人、电子游戏等方面,已经成为计算机技术发展以及许多高新技术产品中的核心技术。
由于人工智能是交叉学科,涉及面广、内容抽象、不易理解,学生往往有望而生畏的感觉,在教学过程中,老师教、学生学都比较吃力。为了更好地实现上述教学目标,提高本课程的教学质量,协调好教与学的双边关系,使学生由望而生畏的感觉,变为有用有趣的感觉,根据已有人工智能课程在教学与实践方面的经验和方法,结合“人工智能导论”课程的近几年教学实践,对课程的教学体系、教学内容、教学方法、教学手段、考核方式等方面进行了探索总结。
2调整与优化教学体系和教学内容
3加强课程立体化建设和系列教材研究
在课程的立体化建设中,教材充当了地基的角色,所有的课程内容安排,无不体现出以教材为基本,以教材为模板。所以本着基础、实用的原则,我们先后编著出版了《人工智能及其应用》课程教材导论部分概括性强,引人入胜;基础部分系统全面,叙述深入浅出,循序渐进;应用部分密切理论与实际关系,典型形象。其中第二版在第一版的基础上,增加了证据理论、模糊推理、神经网络等理论的一些典型应用,使学生能够更深入地理解和应用这些理论;另一方面,又新增了自然语言理解及其应用内容,以适应目前计算机翻译、人机自然语言交互等技术日益广泛应用的需要。系列教材适应了人工智能导论新课程开设的需要,反映了人工智能学科的发展,为人工智能课程确立了基本框架,发挥了重要作用。系列教材的问世不仅解决了本校“人工智能导论”课程教学用书的问题,而且也被各兄弟院校普遍采用,促进了该课程的普遍开设,推动人工智能学科的发展。
包括主教材、电子教案、教学视频录像、网络课程及教学资料库等在内的课程立体化建设符合二十一世纪高校教学的要求,支持教师提高教学手段现代化的水平,更贴合学生的学习需求。
4改革与创新教学模式和教学方法
在“人工智能导论”课程教学的过程中,我们积极探索教学新路,经过数年辛勤试验,结合蔡自兴教授等对人工智能课程的建设经验,对课程的教学模式和教学方法进行了如下一些的改革与创新。
(1)通过多种途径激发学生的学习兴趣
“兴趣是最好的老师”,“人工智能导论”课程的学习效果,直接受到学生兴趣和参与意识的影响。由于这是一门导论性前沿课程,一般来说,学生开始学习兴趣很大。但是,当一些学生开始接触到抽象概念和算法时,往往感到不易接受。我们通过各种途径和方法,激发和培养学生的学习兴趣。例如,鼓励学生参与课堂讨论、布置读书报告和课外实验、以问题为导向的启发式教学、专题讨论/辩论等形式。特别,我们精心组织和准备了模糊控制技术及其应用、智能机器人技术与应用、智能交通、BCI(脑机交互接口)等专题,以及智能调度软件、语音识别系统、动物识别系统、足球机器人比赛、机器人轨迹跟踪、倒立摆的智能控制等课内演示,使学生扩大了眼界,增加了感性知识,达到提高学生学习兴趣的目的与效果。
(2)面向问题的启发式教学
(3)课堂辩论与交互式教学
(4)个性化学习与因材施教
(5)多媒体与网络教学的使用
(7)理论与实践结合
在教学内容安排上,注意理论联系实际,适时布置一些人工智能实验给学生进行课外练习。设计的课外实验包括产生式系统实验,归结反演实验,主观Bayes推理网络实验,A搜索实验,以及基于Maltab工具箱的模糊控制位置跟踪系统、两车追赶模糊控制系统、神经网络模式识别仿真、遗传算法优化计算等实验。通过实践和参与,保持学习兴趣,有助于学生对人工智能基本概念和难点的理解,掌握基本方法和技术,为从事智能系统应用开发打下基础,从而达到教学目的。例如,我们组织学生参观我们的研究生综合自动化实验室,观看机器人臂取物、倒立摆控制、语音识别软件、指纹识别软件、智能调度软件等演示,密切理论与实际的关系。
我们在教学改革实践中探索的这些教学方法,有利于充分激励学生的学习积极性和主动性,有利于鼓励学生发挥独立思考和创新思维,有利于多方位培养学生学习发现问题、分析问题和解决问题的能力。
5运用多样化的教学手段和考核方式
5.1多样化的教学手段
采用现代信息技术进行教学,构筑“人工智能导论”课程的现代教学模式,是本课程的主要特点之一。教学过程中采用了多媒体教学课件和网络课程相结合的方法,充分利用多媒体的丰富表现形式,利用网络课程的交互性、情景化等,进行教学。采用的方法包括:
(1)抽象知识内容的多媒体表示
通过动画和视频来演示抽象的概念、算法和过程,包括机器人轨迹跟踪、机器人臂取物、足球机器人比赛、倒立摆控制、“人工鱼”等录像片段,以及智能调度软件、语音识别系统、指纹识别系统、动物识别系统等软件演示。
(2)通过PPT撰写教案
精心编制PPT,组织好课件内容,做到图文并茂,提纲挈领,便于学生理解,便于教师讲授。
(3)开发与应用网络课程
“人工智能导论”网络课程较好的实现了交互性、在一定程度上实现了学习过程的情景化。在交互性方面,通过网络课程的课堂练习和章节练习,评价学生的学习情况,并给学生提出学习建议。在情景化方面,采用了在线答疑形式,使得学习过程丰富有趣。
(4)先进实验系统的观摩与演示
利用我们的研究成果等有利条件,有针对性地对学生进行成果演示(包括智能调度软件、语音识别系统、指纹识别系统、动物识别系统等软件),使学生知道学了有用,而且很有用,很有趣,很有意义,从而进一步诱导学生的学习兴趣,巩固了课堂所学知识,提高了教学质量。
教学效果通过上述先进的现代信息技术的应用,不仅极大地提高了学生的学习兴趣和主动性,而且也取得很好的实际教学效果,提高教学质量。
5.2作业、考试等教改举措
(1)改革作业方式与方法
改变过去那种单纯的书面习题作业,发展成为必须交给教师评阅的书面家庭作业、不必交给教师的课外思考题目、口头布置的思考题或阅读材料以及大型作业等。其中上交作业通过网络进行,教师批阅后的作业也通过网络返回给学生,实现了作业呈交和返回的网络化。
(2)改革考试方式与方法
如何对本课程的考试方式进行改革一直是我们探索的问题。我们综合考虑课堂出勤情况(10%)、平时正式作业成绩(20%)和期末课程考试(70%),进行综合评分。期末考试有时采用综合试题考试,出几个大题目让学生选择其中几个进行开卷笔试,当面交卷后评分;有时采用课外开卷论文结合或口试面试。最近,我们还对部分学生结合实验或实际问题提问等进行考核。我们正进一步改革、试验和探索,使考试成为衡量与培养创新能力,促进学生学习主动性和提高课程教学质量的重要环节。
关键词:计算思维;通识教育;计算机基础教学
一、计算思维提出的意义
计算思维和计算问题关系密切,美国在2005年6月,通过一份报告《计算科学:确保美国竞争力》中明确阐述了计算科学的重要性,提出计算科学中的先进技术可以在经济以及其他的前沿研究中发挥重要作用[1],21世纪科学研究中的难题可以通过计算找到相应的解决办法。2007年美国科学基金会启动了“大学计算教育振兴的途径”计划,投入巨资进行美国计算教育的改革。美国政府开始实行CPATH计划进一步宣传了计算思维在社会生活各领域以及人才培养中的重要作用,在高等教育中提出了具体的以计算思维能力培养为核心的课程改革[2,3]。2008年,美国麻省理工学院还向全球开放公开课程《计算科学与编程导论》,重点讲解计算思维训练,让全球的读者都可以自由免费学习计算思维的本质。
新生的事物出现还是需要一个普及的过程,目前多数高校教师对于计算思维价值的认识和重视程度还远远不够,因此培养计算思维的实践也甚少。针对这个问题本文探讨计算思维在科学研究、哲学方法论以及人才培养等方面的价值,提出在计算机通识教育中培养学生计算思维能力的教学改革措施,使非计算机专业学生像具备读、写、算能力一样,具备计算思维的普适能力。
二、计算思维的定义及解读
2006年周以真教授的《ComputationalThinking》给出了计算思维系统定义,在国际上被广泛认同。计算思维涉及运用计算机科学的基础概念去解问题、设计系统并理解人类行为。计算思维涵盖反映了计算机科学之广泛性的一系列思维活动。强调计算思维是所有人必需具备的基本技能,在阅读、写作及算术之外,应将计算思维添加到每个孩子解析能力之中。周以真从多个角度给出了计算思维的细致描述[5]。具备计算思维能力,是在信息化社会中创新的需要。各领域中的科学研究都需要有高效思维的正确引导,要培养出具有创造性的人才,我们在思想方法上就必须重视思维能力的培养,让学习者运用高效的思维去思考。
三、计算思维对于科技创新的价值
人类历史上的许多重大科学发现也与计算思维有关。19世纪海王星的发现就是通过计算得来的,在20世纪爱因斯坦的广义相对论开创物理学的新纪元,充分体现计算思维对于科学史的贡献。前人未能证明的“四色定理”也通过计算机的数值计算得到了证明。
很多科学发现的过程充分说明了计算思维在科技创新中的重要价值。
四、计算思维的哲学价值
计算机科学家、图灵奖获得者EdsgerDijkstra曾说:我们使用的工具影响着我们的思维方式及习惯,从而也将影响我们的思维力。思维的方式、方法是人类认识论研究的一项重要内容,恩格斯说过:每一时代的理论思维,包括我们时代的理论思维,都是一种历史的产物,在不同的时代具有不同的形式,并因而具有不同的内容。所以,有关于思维的科学,和其他的任何科学是一样,是一种历史科学,是关于人的思维的历史发展的科学[7]。
五、计算机的计算思维对于人才的培养价值
六、计算机通识教育课程中培养计算思维
计算思维本质上是一种利用计算机去解决问题的思维方式,是基于不同计算环境的问题求解,而这和计算机基础教学的教学目标相吻合。计算机基础课程作为各高校的通识教育课程,面向广大的非计算机专业的学生,不仅要扩展学生的计算机方面的知识面,更重要的是展示计算机科学的思维方式。其核心目标就是培养学生应用计算机解决专业问题的能力,因此,在计算机基础教学中培养学生的计算思维能力是很顺理成章的,也应该作为计算机基础教学的核心任务,特别可以在大学的第一门计算机课程――《大学计算机基础》课中着力培养计算思维。
目前由于对于《大学计算机基础》课程的错误认识,出现了“狭义工具论”的说法,甚至有人质疑《大学计算机基础》课程开设的必要性。问题的产生可能是因为多数《大学计算机基础》课程的教学内容偏重知识的介绍和流行软件的使用方法,仅注重实用而没有提升到计算机科学的思维方式,即教学过程中仅将计算机作为一个普通的工具使用,而并没有重视计算机科学本身自有的思想方法、方式,导致学生感觉不到新知识而失去学习的兴趣。因此,在《大学计算机基础》以及其他计算机通识课程教学课程中加强计算思维能力的培养不仅关系到学生的综合素质和能力,也关系到《大学计算机基础》课程本身的出路,重新审视计算机基础教学的定位,将计算思维能力培养作为计算机基础教学的核心任务,是一个明智的选择。
计算思维的培养可以贯穿于教学活动的过程中,《大学计算机基础》课程的基本教学内容大部分可以保留,思维方式的培养可以渗透到每一教学环节中,例如课程实施中通过讲解案例分析,让学生感受思维方式对问题有效解决的影响,再通过实践环节中问题的有效解决让学生体验计算的愉悦,培养学生将现实问题转化为可计算问题的思维习惯,训练学生针对问题规模选择或发掘计算工具和算法的敏锐性,在教学过程和实践过程培养学生创新思维和创新能力。
计算机基础课程作为通识教育课程在培养学生综合素质和能力方面应该承担更多的责任,特别应充分发挥学科优势在培养学生综合能力方面有所作为,更好地体现杨玉良所说的通识教育的特征:通识教育要同时传递科学精神和人文精神;要展现不同文化、不同学科的思维方式;要充分展示学术的魅力[8]。通识教育课程受众面大,影响广泛,认真研究通识教育规律将对人才培养质量有深入的影响。现在已有几所高校针对计算思维能力做了对应的培养,将大学生入学的第一门计算机基础课《大学计算机基础》课程改名为《计算思维导论》,从内容到形式都聚焦在计算思维上,明确的为基础课程的改革做了示范。希望更多的高校能认识到计算思维对于人才培养的价值,继而在计算机基础教学及计算机通识教育中开展计算思维能力培养的实践。
[5]JeannetteputationalThinking[J].CommunicationsoftheACM.2006,49,(3).
[6]朱亚宗.论计算思维[J].计算机科学,2009,(4).
[7]恩格斯.自然辩证法[M].北京:人民出版社,1971.
[8]杨玉良.实施通识教育,培养未来社会中坚[Z].教育部直属高校工作咨询委员第二十次全体会议大会交流发言材料,2010.