常裕文档网    > 范文大全 > 公文范文 >

基于创新能力培养的算法设计与分析课程教学改革

时间:2022-03-21 10:13:31  浏览次数:

摘 要:学生创新能力的培养需要通过完善的课程体系来实现,教学内容、教学模式、实践环节和考核方式是课程建设中的四大基本要素。本文讨论了利用算法设计与分析课程教学强化计算机专业本科生程序设计能力与创新意识培养的问题,并提出了进一步加强教学改革的设想。

关键词:算法设计与分析;创新能力;教学改革;课程建设

素质教育是21世纪教育改革的重大主题,许多高校在制定培养目标时都把培养高素质创新型人才放到了首位。目前,我校也在教学改革中把培养学生的创新能力作为教学过程的突出重点,并为此已经做了各种努力,包括建立创新人才培养基地和开展研究性教学以及各种激发学生创新、创造兴趣的科技活动、科技竞赛等等。培养学生的创新能力,就是要培养学生善于学习新知识和运用知识解决实际问题的能力,成为适应能力强,富有创造才能的专门人才。对计算机专业的学生而言,就应在算法设计、实现和分析方面,具备更强的独立探求新技术和新方法的能力、创造能力和适应能力。

随着信息技术的发展,算法设计与分析课程不仅是计算机科学技术中处于核心地位的一门专业基础课,同时也是电子信息等其他理工科专业学生必备的基础知识。掌握该领域知识有助于理工科学生进一步学习和掌握计算机应用技术,适应更广泛的职业挑战。

目前,大多数高校越来越重视算法课程的教学, 将该门课程与数据结构课程分离,系统地介绍计算机算法的设计方法与分析技巧。同时,算法设计与分析又是一门年轻的学科,它还处在发展和探索中。算法学科的高速发展引起了学科教学知识体系的迅速变化,课程教学必须随之调整和更新,舍去已失去活力的内容,引入新理论、新方法和新技术,才能顺应学科发展的需求。

1教学内容

算法设计与分析所涉及的领域非常广泛,通常包括下面几方面的内容:1)是迄今为止人们所设计的各种基本和经典的算法,如排序、搜索、图的算法、组合算法和大量的數值计算算法;2)是关于算法分析和算法设计策略、可计算性理论和问题复杂性等方面的理论研究,如计算模型、NP完全问题和问题复杂度下阶等理论;3)是近年来在并行算法、随机算法、近似算法、加密算法、智能优化算法、模式识别算法、神经网络算法、遗传算法以及其他算法领域方面的最新研究成果。

作为面向计算机科学与技术专业和软件工程专业的必修课程,算法分析与设计在内容组织上应该体现理论与实际应用并重的原则,兼顾串行算法和并行算法两大部分,同时介绍一些本学科领域的最新进展,比如神经网络算法、遗传算法等。本课程的教学可以尝试从以下4部分展开,不同层次的学生可以进行相应的调整和取舍:1)介绍算法的基本概念、算法的数学基础以及算法复杂度分析;2)分针对排序问题和组合优化问题,讨论各种已有的算法,并介绍常用的算法设计方法包括分治法、贪心法、动态规划法、回溯法和分支限界法;3)讲述并行算法设计技术;4)介绍本学科领域的最新进展。

2教学模式

从面向21世纪计算机科学与技术专业人才培养需求出发,以培养创新精神和提高实践能力为目标,本课程可以采用多种教学方法,充分发挥学生学习的潜能和积极性。

1) 理论与实际相结合的教学。算法分析与设计理论是从解决实际问题中产生、总结并提高的,那么它也必然以解决更多实际问题为其归宿,所以算法分析与设计的理论学习和解决实际问题是紧密结合的。例如:基于动态规划的装箱问题、基于后缀树的搜索引擎设计、地图着色问题、网络优化设计问题、有监督分类和无监督聚类问题、串行算法的并行化问题等。这些程序的实现不仅有助于算法分析与设计课程的学习,更主要的是通过这些程序的实现,大大提高了学生编程能力和解决实际问题的能力。

2) 启发式教学。创新思维是培养学生创造力的基础,是学生进行创新活动的前提。在教学中,有意识地培养学生的创新思维能力,可以提高学生理论联系实际、发现问题以及灵活独特地解决问题的能力。例如:以Internet上成功的搜索引擎Google为例,启发学生剖析Google中使用的算法及数据结构,使得学生更好地理解树和图数据结构,以及排序算法、查找算法和压缩算法在其中的成功应用,把教学内容设置到复杂的、有意义的实际问题环境中,让学生通过解决实际问题,来理解和掌握隐含于问题背后的知识,提高解决问题的能力,从而提高创新思维能力。

3) 网络互动教学。积极探索并综合使用多种先进的教学手段,建立网站和教师个人网页,在互联网上设立教学园地,提供教学辅助软件和素材的自由下载,设计一些实际项目的动态演示,在网上与学生交流讨论,解答学生的问题,接收学生的课程设计作业。

3实践环节

实践环节的设计是为了帮助学生更好地学习本课程,理解并应用算法解决实际问题。在实验过程中,每个问题的正确求解,都要通过分析问题、建立模型、设计算法、编制程序、调试优化等步骤。通过课程实验,大多数学生对算法分析与设计课程的内容有了较深入的理解,然后进一步通过程序设计竞赛活动引导学生加强实践动手能力的培养。近两年,我校计算机专业的学生在校级和cCPC程序设计竞赛中,均有优异的表现。在实践环节的具体设计上,我们考虑到学生的学习能力和动手能力存在着较大的差别,每次实验的内容都提供多种选择方案,难度上具备足够的区分度。因为如果实验的难度过高,大多数学生将失去学习的兴趣与信心。同时,学生为了完成学习任务,实验难度过高还会助长抄袭之风。而实验难度过低,使得部分学生不能在本门课程得到应有的训练,也会使他们失去学习兴趣。为此,对每次实验应精心编写实验指导书,实验内容按难易程度分成3类:

1) 验证型。对课堂上讲授及阅读理解的算法用高级语言加以实现并验证,此类实验将决定学生实验的及格成绩。

2) 拓展型。利用程序设计语言提供的新技术将实现的算法抽象拓展成为通用函数库(类库)。

3) 应用型。选择与本次实验内容相关且难度适中的应用型问题,引导学有余力的学生应用所学的知识解决实际问题。这些应用型问题一般都题材新颖、题面生动活泼,是训练学生的一个很好的教学资源。拓展和应用型实验的设置使部分学生能体会到创造和征服困难的快感,激发他们的学习和探索热情。

4结论

算法设计与分析课程是一门非常重要的计算机专业课程,具有理论和实践并重的特点,如何利用学生已有的知识和经验,使其快速掌握一些经典算法的设计思想,进而能够创造性地解决一些实际应用问题,是我们在教学中关注的重点。本文就算法设计与分析这门课程,提出了教学内容、教学形式、实践环节以及考核方法等方面的改革措施,这些措施还需要在今后的教学过程中不断完善,使算法设计与分析的教学质量提高到新的水平。

项目名称:2017年河北省高等学校创新创业教育教学改革研究与实践项目:基于培养创新创业人才程序设计能力的教学改革

项目编号:2017cxcy245 河北科技学院

参考文献

[1] 徐子珊. 普通院校计算机学科本科人才培养道路探索[J]. 计算机教育,2017(5):77-78.

[2] 刘汝佳,黄亮. 算法艺术与信息学竞赛[M]. 北京:清华大学出版社,2016:1-15.

[3] 陈慧南.算法能力与培养:C++语言描述[M]. 北京:高等教育出版社,2015:1-10.

推荐访问:教学改革 创新能力 算法 培养 课程


[基于创新能力培养的算法设计与分析课程教学改革]相关文章