APP下载

聚焦创新实践能力培养的算法分析与设计课程教学改革探索

2024-12-12徐亮杨瑞英

电脑知识与技术 2024年29期

关键词:创新思维;算法实践;课程思政;多维考核;四位一体

0 引言

算法作为计算机科学的核心支柱之一,其重要性不言而喻。图灵奖得主Niklaus Wirth的著名论断“算法+数据结构=程序”深刻揭示了算法在计算机领域的核心地位[1]。正因如此,算法分析与设计课程在国内外众多高校的计算机专业培养方案中均被设置为专业必修课程,它建立在高级程序设计和数据结构等先导课程的基础上,为学生未来的职业发展和科研深造提供了坚实的支撑。在培养学生的专业技能的同时,更应注重思想道德教育的开展,坚持教书与育人并重,实现协同育人的目标,确保学生在掌握算法知识的同时,也具备良好的道德品质和社会责任感[2]。

算法不仅仅是学习过程中的一门必修课程,更是未来考研、就业面试中不可或缺的重要内容。掌握扎实的算法基础,能够让学生在激烈的竞争中脱颖而出,获得更多的机会和选择。在科学研究领域,算法研究同样是最活跃、最前沿的方向之一。算法是许多高级课程如人工智能课程的基础,需要理论与实践相结合。因此有必要在课程教学中聚焦创新和实践能力的培养,多措并举提升学生的算法能力。

1 现状分析

1.1 存在的问题

算法课程不仅要求学生掌握扎实的理论基础,更强调动手实践能力与创新思维的培养。然而,在实际教学过程中,仍然存在一系列问题亟待解决。

1) 学生基础水平的显著差异是教学中的一大挑战。部分学生由于前导课程学习不扎实,导致在后续学习中知识储备不足,难以应对新的学习内容。这种差异使得教师难以找到平衡点,既要满足基础薄弱学生的需求,又要满足基础扎实学生的学习进度。因此,实施精细化教学策略,灵活调整教学方法,成为提升教学效果的关键。

2) 算法课程理论深度和逻辑性强,学生在学习过程中往往遇到诸多困难,产生畏难情绪。一旦某个环节跟不上进度,整个学习链条可能中断,导致后续学习受阻。因此,需要优化教学内容与方法,提高学生的学习兴趣与积极性。

3) 学生动手实践能力不足也是教学中的一大问题。算法课程要求学生能够熟练运用编程语言实现算法,并应用于解决工程问题。然而,由于缺乏实践锻炼,学生的动手能力普遍较弱。为此,应加强实践教学环节,提供更多的实践机会,以提升学生的动手实践能力。

4) 学生对算法分析能力的不足也是值得关注的问题。在解决实际工程问题时,算法的设计与分析是相互促进的。然而,由于缺乏对算法性能的评估与优化能力,学生在解决问题时往往难以达到理想效果。应加强算法分析能力的培养,提高学生的问题解决能力。

5) 学生对创新能力的培养重视不够也是一个需要关注的问题。优化算法的过程需要创新思维和灵活应对变化的能力。然而,学生在算法学习中往往缺乏对创新性的深入培养和足够重视。因此,应强调创新在算法学习中的重要性,鼓励学生勇于尝试新思路,提升创新能力。

6) 课程在思政元素融入方面尚显不足。课程思政的融入对于引导学生形成正确观念至关重要,应深入挖掘算法课程中的思政元素,将其有效融入教学中,以培养学生的社会责任感和职业道德。

1.2 相关工作

在算法课程的教学改革方面,众多教师已经从多个维度,包括教学模式的创新、计算思维的深化、创新能力的培养以及课程思政的融入等方面,进行了广泛而深入的探索研究。这些努力不仅丰富了教学手段,提升了学生的参与度,还有效地培养了学生的计算思维与创新能力,为算法课程的教学质量带来了显著的提升。

为了激发学生的学习热情,文献[3]提出了“以赛励教、以赛督学”的教学模式,以程序设计竞赛为引导,提升学生的算法创新和实践能力。陈英等提出在算法分析与设计课程中引入OBE教学模式,改革教学目标和任务,与竞赛相结合,推进“师导生学”和线上线下混合教学方式,制定长效激励机制,构建面向学生综合产出的考核方式[4],教学效果明显提升。

在计算思维的深化方面,何高奇等人提出基于计算思维培养的算法分析与设计教学改革思想,从教学内容设计、计算资源开发、计算思维全方位训练3个方面介绍具体教改措施[1]。此外,文献[5]提出课堂全程育人的启发式教学模式,从教学方法、课程思政、课程建设多个维度阐述了该课程的教学改革。

在专业课程的教学过程中,要把思政教育贯穿始终。算法不仅要正确,更要符合法律规范。曹珊珊等人提出基于三维立体运行机制的课程思政教学思路,实现知识与能力的传授和价值引领相结合[6]。张伟娜等人提出算法设计与分析课程思政内容体系结构及思政元素的系统分析方法,并阐述了在教学的各个环节进行课程思政的主要方法和措施[7]。

2 教学改革

算法课程重点是能够通过分析问题设计相应的求解方法,并用代码实现所提出的算法,之后结合具体的场景对实现的算法从时间和空间复杂度等方面分析,根据分析结果优化算法,是一个迭代的过程,在此过程中,要求学生具有设计、分析、实现和创新等多方面的综合能力。总结教学过程中的问题,本文以创新思维培养、实践能力提升为焦点,围绕课堂教学目标、教学内容、练习资源、实践途径和评价机制为主线开展教学改革探索,培养知识、能力、素质同步提升的高素质人才。课程教学改革总体架构如图1所示。

2.1 重构课程目标,完善教学内容

以培养创新思维、提升实践能力为目标,明确课程的知识、能力和素质核心要求,并挖掘思政元素,践行结果导向,以学生为中心,持续改进的核心理念,培养学生创新思维能力,将专业教学、能力培养和价值观引领协同发展,培养社会主义建设需要的德才兼备的新工科人才。“算法分析与设计”课程目标如下:

1) 知识目标。掌握递归、分治、回溯、动态规划、贪心法等算法的基本原理,掌握经典算法的设计、分析和应用。

2) 能力目标。根据问题设计算法并分析其性能,提出创新性的优化方法。

3) 素质目标。有良好的创新思维,有正确的价值观和良好的职业素养。

以提升学生的工作能力为导向,持续改进和完善教学内容,内容要与时俱进、常备常新。从以下4个方面入手优化教学内容:基础理论和方法的分析,典型问题的建模和抽象,解决方案的实现,知识的创新运用。教学内容依据此理念重新设计,融合知识点、实验、在线题库、抽象思维能力为一体,实施课程教学。

2.2“ 课堂、实践、资源、评价”四位一体的算法课程教学思路

在算法分析与设计课程的整体设计思路上,以学生为中心,构建“课堂、实践、资源、评价”四位一体的教学思路。

课堂上拓展多样化的教学模式、手段,提供多种学习途径,方便学生随时学习实践。采用线上线下混合式教学,结合案例教学,对知识点深度剖析,同时融入思政元素,为后续实施翻转课堂奠定基础。线上采用超星学习通等网络平台,发布算法课程的视频、课件、习题等资源,供学生自主学习。线下教学重点讲解算法的原理、设计和分析方法。通过案例分析、小组讨论等形式,引导学生深入理解算法思想,培养学生的逻辑思维能力。

算法课程是一门非常注重实践的课程,通过拓展多渠道实践方式,提升实践水平。通过专题实训进行从问题分析、建模、实现、报告全方位练习,辅助以开放式算法平台自主练习,设置开放性题目锻炼创新能力,结合线上判题平台(如OJ系统),开展线上竞赛,以赛促学,激发同学们学习算法的热情。

提供多种形式的教学资源,除了传统的课程大纲、教案、PPT以外,借助两个平台:线上教学平台和在线判别平台(OJ) ,提供多媒体教学资源以及算法练习试题库,并选取典型题目形成专题实训库。

算法课程从多方面评价课程的教学效果。课程评价包括:1) 学生对课堂教学效果的评价;2) 改变传统的评价模式,将评价标准向实践能力倾斜,由平时考核、实验考核和期末考核组成,实现学习效果的全面考核;3) 通过问卷调查了解学生对课程的掌握情况,持续优化教学过程;4) 通过举办模拟算法竞赛和学生参加程序设计竞赛成绩反馈教改效果。

2.3 多措并举提升创新实践能力

除完善课堂教学内容外,通过不断拓展育人渠道。挖掘生活中的算法问题,尝试学生为主的翻转课堂增强学生的参与度,探索课程实践、模拟算法竞赛、企业名师课堂等模式,多措并举提升学生创新实践能力,实现知行合一。“算法分析与设计”课程多项举措如表1所示。

3 结论

算法作为一门课程,深深根植于创新和实践的沃土之中,各类算法竞赛更是这一特性的生动体现。在教学过程中,充分借助线上线下多种教学手段,深入剖析算法原理,帮助学生构建扎实的理论基础。同时,借助丰富的资源和专题竞赛,强化学生的动手实践能力,让其在实践中深化对算法的理解和应用。为了全面培养学生的创新意识,采取多种举措,鼓励其勇于探索、敢于创新。在考核环节,特别设置开放性题目,着重考查学生的创新实践能力,以此激发学生的创新思维,提升他们的实际解决问题的能力。此外,我们还注重思想教育与专业知识的协同育人。通过一系列举措的实施,旨在培养出既具备扎实算法理论基础,又拥有出色创新实践能力的学生,为其全面发展奠定坚实的基础。