MATLAB课程教学模式改革探索
范羚
(厦门工学院福建·厦门361021)
摘要Matlab是本科教学和学习中较为重要的仿真软件之一,也是一门实践性较强的学科。为提高教学效果,培养学生解决实际问题的能力,更好的与实际应用接轨,提出将Matlab编程与相关课程结合,进行Matlab模块化教学模式和分级实验的改革和探讨。实践证明,这种综合性教学模式有效的提高了学生的学习积极性,收到了较好的教学效果。
关键词Matlab模块化教学分级实验教学方法
中图分类号:G712文献标识码:A
1存在问题
Matlab是目前国际上应用较广泛的科学与工程类计算软件,也是本科教学中理工科学生较为重要的一门基础工具课。现在,在我国各大高校中,Matlab已经成为大学生必须掌握的基本技能之一,人工智能,神经网络的学习更是离不开Matlab 的仿真和验证。如何让Matlab技能课程的特点得到充分发挥,并区别于我系
其他电子信息类专业课程,成为我系本科教学改革的主要内容之一。所谓技能课程,应该将实际应用放在首位,以提高学生的实际编程应用能力为主,而相关课程的理论学习可以为辅,或安排在高年段进行系统的理论学习。如大学生计算机基础,C语言等课程在我国多数高校中,已均在大一或大二完成教学,为学生后续相关课程的学习打下计算机及编程基础。因此,本次改革旨在提高Matlab课程的实用性,更好发挥其技能课的优势,辅助学生其他课程的学习。
目前,我系Matlab课程的教学安排较后,主要作为高年段学生的选修课程开设,而大部分与之关联的课程,如“信号与系统”,“数字信号处理”,“图像处理”,“语音信号处理”等均在大二或大三进行教学,这些课程理论性相对较强,学生缺少实际应用,对课程掌握深度不够。如何利用Matlab强大的矩阵处理与科学计算功能,帮助学生更深入掌握这些课程的理论知识,且利用Matlab中相关函数进行实际演示,便成为此次Matlab教学探讨的主要内容。本次教学改革将Matlab课程提前至第3学期开课,超前于数字信号处理,语音信号处理等课程,在学生学习完高等数学,线性代数的基础上,便进行Mat-lab软件的编程学习,让学生先学会用工具解决问题,再慢慢领会各种函数的编程原理,以突出Matlab技能课程的特点。
2课程改革的主要内容
针对Matlab课程的这些特点,本次教学改革的内容主要包括以下几个方面:
2.1适当提前Matlab课程教学学期
将Matlab课程开课学期提前至第3学期进行,更好的与“信号与系统”,“数字信号处理”及“语音信号处理”等课程相结合。第3学期的“信号与系统”课程中,涉及的傅里叶变换,拉普拉斯变换和z变换等理论,均可利用Matlab强大的编程能力进行编程和仿真。若将Matlab课程提前,可更好地将Matlab编程和相关的信号与系统理论相结合,让学生更深入理解傅里叶变换,拉普拉斯变换和z变换的原理,并将枯燥的理论公式,用形象具体的二维图像进行显示和处理,同时也可提高学生Matlab编程的能力。
2.2以模块化和分级实验为主进行教学方法改革
该课程在我系的教学计划中,理论学时为16学时,分别讲述Matlab的常用窗口和文件管理,数值计算,符号计算,可视化和图形用户界面(GUI)设计,及Matlab综合程序设计五大内容,并配以16学时的实验课。在实验课中以教材的这5个独立章节为基础,分别设计完成5个独立的实验,以教师指定实验题目为主,且大部分属于编程验证型实验,5个实验间并没有明显的相关性,也缺少和电子信息类其他课程的关联,绝大多数实验内容用独立的语句即可编程实现,学生自主发挥的余地较少。这样的实验设计虽然可以让学生掌握Matlab 的基本编程原理,但与其他课程的关联性较小,独立的综合型实验较少,学生缺少主动创新性设计,较难区分学生思维及编程能力的高低。
因此提出以模块化为主的教学方法改革,旨在增强学生的学习兴趣和独立创新的能力,给不同学习程度的学生不同的发挥空间,尽可能做到因材施教。在理论课时中,除按教材给定的章节进行讲解外,注重
与电子信息类相关课程进行适当结合,让学生体会到课程的连贯性和相互结合性,再配以相关实验进行辅助学习,以提高学生对课程的理解和运用能力。具体实验设计如图1
所示。
模块化教学图1:实验模块化设计
在Matlab符号计算和数值计算两章中,将“Matlab”与“线性代数”结合,完成第一模块“Matlab在线性代数中的应用”实验,具体可设计线性代数方程的求解,方程特征值和特征向量的求解,多项式的拟合和插值等实验内容,属于基础验证型实
课|程|教|学
—科教导刊(电子版)·2019年第9期/3月(下)—78
验,旨在让学生熟悉Matlab的基本编程思路和编程模式,学习独立调试程序的方法。
在Matlab计算可视化和GUI设计章节中,将“Matlab”与“信号与系统”结合,完成第二模块“Matlab在信号处理中的应用”实验。该模块将结合信号与系统中的三大重要变换:傅里叶变换,拉普拉斯变换和z变换,分别选取时间域,频率域,S 域和Z域为主要研究对象,对相关函数fft(),ifft(),laplace(),il-aplace(),ztrans(),iztrans()等进行详细分析,并结合Matlab的可视化工具,利用GUI进行用户图形界面编程,设计完成一个可以和信号与系统课程相结合的辅助学习平台,加深学生对三大主要变换的理解,并在完成的用户图形界面中,分别对时域信号,频域信号,s域和z域信号进行展示。学生不仅可以掌握Matlab的可
视化编程方法,更将信号与系统的课程进行了渗透,增强了课程间的相互关联性,提高了学生学习兴趣。
在Matlab程序设计章节中,根据教材内容,主要讲解Mat-lab程序设计中的流程控制,M函数文件和脚本文件的编程,函数调用和参数传递等高级编程方法。在此基础上,完成第三模块“Matlab在图像处理中的应用”实验。此前第二模块实验以处理一维信号为主,因此在第三模块实验中,以处理二维图像信号为主,将实验进行进一步提升。该模块实验以M函数文件和脚本文件编程为主,通过图像的打开,读取,变换,显示和保存等步骤,进一步强化Matlab的编程思路,培养学生严谨认真的编程习惯和编程风格。该模块实验分级进行,基础模块中主要实现数字图像处理的一些基本操作,如利用直方图完成图像的统计特性分析,利用点运算和代数运算完成图像的伪彩处理和图像融合,根据图像时频变换的特点,完成二维图像的傅里叶变换和离散余弦变换等,并结合第二模块中的GUI设计完成基于数字图像处理的图形用户界面设计;提高模块中,设计一些较复杂的图像处理课题进行实验,如在学习图像处理的相关基础理论后,进行图像分割,图像边缘检测等综合型开放型实验,充分发挥学生的主动性,进行自主的多元化编程探索。实验过程中,教师将对编程过程中用到的理论知识进行讲解和指导,具体的实现步骤和处理过程则交由学生自主设计,以此来调动学生的学习积极性和自主创新的能力。
3总结
本次Matlab课程教学改革提出以模块化为基本教学手段的改革思路。在我系之前的教学安排中,Matlab课程理论课部分全部按教材的章节顺序进行授课,实验课程安排在理论课程全部结束之后,以各章节内容为依托,设计相关5个实验,但各实验间并无明显的相互联系和提高。此次教学模式探索,将在理论部分适当引入相关课程,如信号与系统,语音信号处理,图像处理等的基础知识,并结合高等数学,信号与系统,图像处理三大模块进行实验,将原来独立的验证型实验提升为设计型,综合型实验,同时也增加了各模块间的相互关联性。第一模块以Matlab在线性代数中的应用为主,进行一些多项式的变换,线性方程的求解等,旨在让学生熟悉Matlab的编程思路和编程方法;第二模块将Matlab和信号与系统课程结合,以一维信号变换为主,并进行相关GUI设计;在此基础上,进行第三模块设计,对二维图像进行变换编程,进一步提高学生的动手能力。在第三模块中,我们还将进行学生分级实验的改革,基础模块中进行图像处理的初级操作,提升模块中,完成较复杂的图像处理,如图像分割,边缘检测算法的实现等,并为后期的毕业设计课题做准备,以此做到因材施教。但此部分实验设计较难,需根据学生的学习水平进行实时调整和指导,课题需具备一定难度,但又必须在学生可以完成的范围内,不能超出。因此,需要教师对学生的学习情况进行综合了解,全面掌握学生的学习能力。
总之,如何根据Matlab语言的特点,进行有针对性的教学,是培养电子信息类应用型、创新型人才的一个重要任务。实践证明,根据Matlab课程特点提出的模块化教学改革,及分级型实验较好的结合了我系学生的具体实际,增加了学生学习的积极性和Matlab
课程教学的实际效果。
基金项目:本文系“厦门工学院教学改革项目”(项目编号:JG2018017)的研究成果。
参考文献
[1]张兴莉,刘勇.《MATLAB语言》课程教学过程改革的研究[J].科技创新导报,
2018,15(18):208-209.
[2]何海浪,林峰,黄乘顺.基于Matlab的《信号与系统》课程教学改革[J].教育
教学论坛,2018(31):119-120.
课|程|教|学
—科教导刊(电子版)·2019年第9期/3月(下)—79
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论