数学建模的教学战略探究

时间:2022-01-08 09:53:57

数学建模的教学战略探究

本文作者:刘学艺王义康柴中林工作单位:中国计量学院理学院

数学建模竞赛培训中数学软件教学方法研究现状

随着上世纪80年代数学建模竞赛以及相关课程的开展,高校教育工作者逐渐意识到将数学建模思想以及计算机实现融入到大学数学基础课教学中的重要性,进行相关教学改革的研究并取得了许多研究成果。如王高峡[2]进行了大学生数学建模竞赛软件教学内容安排的研究;胡建伟[3]对数学建模课程中的软件教学进行了探讨;陈陵[4]讨论了如何利用Matlab软件推进高职数学建模教学;周甄川[5]介绍了Lingo软件在数学建模中的应用等。这些研究侧重于从不同角度对建模竞赛培训中数学软件教学进行了研究。但研究研究的深度、系统性还有所不足。本文从数学软件课程本身的特点出发对其教学方法进行了更加细致、全面的讨论。

数学建模竞赛培训中数学软件教学的特点分析

数学软件是数学理论算法的计算机程序实现。与理论课程相似,数学软件的学习在内容和难度上都是前后衔接、循序渐进的过程。数学软件的学习可分为基础入门、巩固深入以及综合提高三个阶段。第一阶段专门针对数学软件知识点进行教学,后两个阶段则分别在理论算法补充和实际应用问题的模拟练习过程中同步进行。同时,两者也存在若干不同之处:在理论知识层面,数学软件涉及到更多的数学理论知识(不管是代数几何、概率统计等基本理论,还是人工智能、模式识别等现代算法都归入其中);在教学方式上,数学软件的上机实践环节比课堂知识讲授更重要;在计算机实现上,数学软件更注重严谨性和规范性;在实际应用中,数学软件更注重创新性和适用性。数学建模中数学软件的培训与教学应根据这些不同特点采取针对性的措施,以提高学习效果。目前,我国大多数普通高校的竞赛数学软件培训与教学中表现出的一些较普遍问题,大都是由于对这些特点的认识不足或处理不当导致,如日常教学中相关课程设置不够合理、上机实践环节的重视力度不够以及集中培训环节培训相关内容和难度安排不够合理等。

数学建模竞赛培训中数学软件教学策略

制定有效的数学软件培训与教学策略对于高校教学改革研究、学生实践能力的培养以及数学建模竞赛成绩的提高具有重要作用。当然,它本身是一个系统工程,应该从多方面综合入手,有计划的展开相关工作,具体列举如下:加强竞赛指导教师的算法实现指导水平在数学软件教学过程中,学生会有各种相应的问题需要教师帮助解决。竞赛指导教师的软件指导水平对于培训效果十分重要。为此,需要按计划请专家讲学、举行与数学软件教学相关的教师培训班等方式提高指导教师的业务水平。同时,通过优化竞赛指导团队的成员组成,使各教师的专业背景能大体覆盖数学建模所涉及的问题领域。这样能够保证对不同问题领域中较复杂算法实现以及具有较深专业背景的问题都有充足的师资保证,从广度和深度上保障数学软件的教学和培训效果。合理安排数学软件的教学内容和进度应该从两个方面对对数学软件的教学内容进行合理安排。首先,在数学软件教学内容的选择上。当前的数学软件相关产品数量众多,但大致上可分为通用型和专业型两类。通用型如Matlab、Mathematic、Maple、MathCAD等;专业型如统计软件SPSS和SAS、图论软件Pajek、数据挖掘软件Weka等。面对品种众多,特点各异的软件产品,可以采用深入学习与大致了解相结合的方式。需要深入学习的应该包括一门通用型数学软件(如,Matlab、Mathematic等)、两门最常用的专业数学软件(如Lingo、SPSS或SAS);而对于其它软件,可根据学生自己的兴趣作简单了解。其次,在数学软件教学进度的安排上。在软件学习三个阶段的上机实践环节中,学生会遇到不同层次的问题,对知识进行消化吸收的时间也有较大差异。一般来说,基础入门使学生掌握相关软件的基本操作知识,可在日常教学中安排相应的理论和实践学时进行讲授;巩固深入阶段应针对各种数学算法展开,本阶段应该适当增加上机实践学时,可在学期中间以周末辅导班的形式进行(半天理论学习,半天上机实践);综合提高阶段利用假期集中培训的形式对复杂的实际应用专题展开讲授,本阶段应该以上机实践环节为主,教师可在集中讨论环节进行适当地点评和讲解。相关课程的统筹开设S在高等数学、线性代数、概率统计等数学基础课程等课程开设的基础上,适当增加开设相关课程:针对数学专业学生开设《数学软件与数学实验》专业课,而其它专业学生开设《数学实验》和《Matlab入门》等全校或学院选修课;同时,进一步增加《数学实验课程设计》课程,利用集中两周的实践学习巩固软件基础知识和解决问题的能力;开设《数学建模竞赛指导》周末提高班,采取半天理论学习,半天上机实践的方式,具体六个专题的内容:数学规划(基于Lingo和Matlab)、回归拟合(基于Matlab)、微分方程模型与案例分析(基于Matlab)、多元统计回归(基于Matlab与SPSS)、蒙特卡洛模拟与仿真(基于Matlab)、图论入门(基于Lingo和Matlab);组织校级数学建模竞赛,进一步增加学生对数学软件重要性的认识以及学习数学软件的热情。注重对经典程序算法以及优秀范例的精读与积累精读一些重要算法的经典程序代码和优秀范例会产生很好的学习效果。首先,经典算法程序代码的精读能够强化学生对算法思想的理解,在竞赛或实际应用中能更正确地应用甚至改进这些算法来解决问题。其次,经典算法的程序代码一般比较规范,深入阅读理解可以提高程序编写的规范性。再次,对于一些优秀范例的精读以及程序重现对学生解决问题能力和程序编写能力的提高会起到重要作用。最后,对常用的重点算法代码的掌握和积累对竞赛过程中问题的准确快速地分析和求解具有重要作用。对于经典算法的精读和讲解可在进行算法专题补充阶段同步完成。此外,实际应用容易看出,要很好的完成这些工作合理地选择一门综合型数学软件非常重要。为此,我们选择Matlab作为教学中使用的综合软件,利用其工具箱以及互联网上的资源可以获得很多重要算法的程序实现代码。强化学生自学和互相讨论提高的环节数学软件的学习主要集中于相关命令、算法工具的使用方法上,其难度偏小,非常适合学生自学和互相交流讨论。因此,在数学软件教学过程中强调各种软件在线帮助文档的学习和相应的网络资源的利用,如Matlab的在线帮助文档中几乎包含了入门阶段可能遇到的所有问题。同时,鼓励学生之间相互讨论和答疑可以充分调动学生的学习主动性和竞争意识,并更高效地完成学习任务。在软件学习第三阶段,即三人一组的模拟练习阶段,不仅要鼓励同组的三人积极讨论,还要提倡组与组之间多交流讨论。因为,组与组的交流和讨论能产生更充分地挖掘他们的竞争意识并产生更大的动力。使数学软件回归其本身的“工具”属性在数学竞赛培训中数学软件教学过程中,应该始终强调数学软件是实现数学建模思想的有效“工具”。只有这样才可使学生在数学软件的学习过程中,始终关注于模型的构造和算法的设计,而不是程序代码本身,这在软件学习的第二、三阶段更为重要。模型和算法是程序代码的灵魂,而程序代码是实现模型和算法的工具。明白这一点,在数学软件学习过程中才更有方向感和针对性。

数学建模竞赛培训中数学软件教学策略的实践效果

笔者所在学校从2008年底开始进行数学建模竞赛数学软件教学与培训策略的研究工作,并同时进行相应的课程改革实践工作,成绩逐年上升,近几年成绩更为突出。在之前的2007与2008学年,国家奖和省一等奖的获奖项数为零,而在之后的2009至2011三学年中国家奖的获奖数量分别为3、4、7;同时,参赛队伍数从2007年的15支增加到2011年的35支;参赛获奖率也有从2007年的40%提高到2011年的92%。不管是学生的参与度还是获奖率都有了很大的提高。当然,数学软件在数学建模竞赛中仅起到部分作用,这些竞赛成绩得益于学校教学质量和人才培养模式的改革探索,是参赛学生和教师共同努力的结果。此外,经过多年数学软件教学策略的研究探索和实践,指导教师的算法软件指导水平显著提高,相关课程设置日趋完善并完成相关课程和培训文档的积累,形成了逐渐形成一套较稳定的数学软件教学和培训策略。这对于提高学生动手实践能力和探索高校教学方法以及人才培养模式具有重要意义。