数学建模学习心得 时光如梭,很快十天的数学建模培训就结束了。这十天里和小伙伴间的默契越来越好,很明显,我们组是所有组中唯一由三个女孩子组成的组。我们组没有特别厉害的编程高手,但是我们凭着上课学到的Matlab知识,从网上下载相关代码修改成自己需要的,徐晶京同学主要负责这块儿,虽然模拟中她花了很多时间在研究代码这方面,但是最终我们都成功改版成我们需要的了。同时这也提醒了我们要进一步深入学习,多了解些算法,加强自己的编程能力。
模拟的第一天白天我们三个一起查阅相关论文文献,讨论交流问题的数学模型和相关算法。到了晚上徐晶京一般开始算法研究,我和李双青接着查阅论文,一起讨论。
第一轮模拟,我们明白有时候方程组是没有解析解的,我们想了很多,但是都不能付诸编程求解,最后只能简化再简化。而且各个参数的选取只是根据文献值大概选取,并没有能很好的结合题目情境,但我们做的好的一点是没有固定参数,而是研究了参数变化对模型结果的影响。另一个缺点是没有一步步先仔细分析题目,从江老师对题目的讲解中,我们发现很多字眼都有所暗示,“老人孩子感染更易死亡”暗示了年龄结构的数学模型、“研究者返回国内出现症状”提示了该病具有潜伏期,很多情境看似简单,实则是对模型的进一步改进和完善。从第一轮模拟中我们明白了读题分析题的重要性,及时互相交流可以拓宽个人思维,防止走上偏道。
第二轮我在第二天上午先把老龄化问题模型建好,把需要处理的数据和获得的图像按条列出,给徐晶京用Matlab处理。然后我使用SPSS做人口城镇化问题,但是由于数据不够全,对SPSS研究也不深入,数据处理不够成熟,没有做出太多成果。双青同学主要负责人口就业问题的数学建模,并使用SPSS和EXCEL处理。到了晚上我开始写论文,构建好论文的主要框架,将徐晶京做好的老龄化问题写好,到了第三天下午她们和我一起写论文,她们主要是把她们负责的那块再修修补补,最后我修改格式,检查总体。两次模拟我们都没有按时提交,第一次误了二十多分钟,第二次误了四分钟,没有按时提交,感觉很不好,很明显我们的时间安排还是有问题的。我们考虑了这个问题,如果我提前一点写论文,所需要的东西没有及时做好也没法写,推迟写则会有逾期的危险,调整好时间安排是亟待解决的问题。而最关键的地方,是根本问题,就是我们编程不好,不精通Matlab,导致很多好的想法不能付诸行动,因为都没办法运行求解。这也是暑期我们的主要任务,认真学习Matlab,使一些算法运行成功。
在过去的十天里我们学习了论文写作、图论、微分方程、回归分析等。对于高维数据的处理采用相关性分析,同时使用聚类分析和判别分析,回归分析,看指标之间的关系。非线性回归的时间序列模型可用过去值预测未来值。SIR模型可用于流行病的模拟预测和网络信息的传播。Leslie模型按年龄分组的人口预测模型。BP神经网络对某些指标进行有限的分类、评估和预测。在使用前必须对数据进行归一化处理,否则一点点改变将导致训练结果偏差极大。元胞自动机用于研究经济危机的形成与爆发过程、个人行为的社会性,流行现象,如服装流行色的形成等。元胞自动机用于肿瘤细胞的增长机理和过程模拟、传染病的感染过程、自组织、自繁殖等生命现象的研究。
第二篇:数学建模之心得体会
数学建模之心得体会
一年一度的全国数学建模大赛在每年的9 月的第三个周末的周五上午8 点拉开战幕,各队将在3 天72 小时内对一个现实中的实际问题进行模型建立,求解和分析,确定题目后,我们队三人分头行动,一人去图书馆查阅资料,一人在网上搜索相关信息,一人建立模型,通过三人的努力,在前两天中建立出两个模型并编程求解,经过艰苦的奋斗,终于在第三天完成了论文的写作,在这三天里我感触很深,现将心得体会写出,希望与大家交流。
1. 团队精神
团队精神是数学建模是否取得好成绩的最重要的因素,一队三个人要相互支持,相互鼓励。切勿自己只管自己的一部分(数学好的只管建模,计算机好的只管编程,写作好的只管论文写作),很多时候,一个人的思考是不全面的,只有大家一起讨论才有可能把问题搞清楚,因此无论做任何板块,三个人要一起齐心才行,只靠一个人的力量,要在三天之内写出一篇高水平的文章几乎是不可能的。
2. 有影响力的leader
在比赛中,leader 是很重要的,他的作用就相当与计算机中的CPU,是全队的核心,如果一个队的leader 不得力,往往影响一个队的正常发挥,就拿选题来说,有人想做A 题,有人想做B 题,如果争论一天都未确定方案的话,可能就没有足够时间完成一篇论文了,又比如,当队中有人信心动摇时(特别是第三天,人可能已经心力交瘁了),leader 应发挥其作用,让整个队伍重整信心,否则可能导致队伍的前功尽弃。
3. 合理的时间安排
做任何事情,合理的时间安排非常重要,建模也是一样,事先要做好一个规划,建模一共分十个板块(摘要,问题提出,模型假设,问题分析,模型假设,模型建立,模型求解,结果分析,模型的评价与推广,参考文献,附录)。你每天要做完哪几个板块事先要确定好,这样做才会使自己游刃有余,保证在规定时间内完成论文,以避免由于时间上的不妥,以致于最后无法完成论文。
4. 正确的论文格式
论文属于科学性的文章,它有严格的书写格式规范,因此一篇好的论文一定要有正确的格式,就拿摘要来说吧,它要包括6 要素(问题,方法,模型,算法,结论,特色),它是一篇论文的概括,摘要的好坏将决定你的论文是否吸引评委的目光,但听阅卷老师说,这次有些论文的摘要里出现了大量的图表和程序,这都是不符合论文格式的,这种论文也不会取得好成绩,因此我们写论文时要端正态度,注意书写格式。
5. 论文的写作
我个人认为论文的写作是至关重要的,其实大家最后的模型和结果都差不多,为什么有些队可以送全国,有些队可以拿省奖,而有些队却什么都拿不到,这关键在于论文的写作上面。一篇好的论文首先读上去便使人感到逻辑清晰,有条例性,能打动评委;其次,论文在语言上的表述也很重要,要注意用词的准确性;另外,一篇好的论文应有闪光点,有自己的特色,有自己的想法和思考在里面,总之,论文写作的好坏将直接影响到成绩的优劣。
6. 算法的设计
算法的设计的好坏将直接影响运算速度的快慢,建议大家多用数学软件(Mathematice,Matlab,Maple, Mathcad,Lindo,Lingo,SAS 等),这里提供十种数学建模常用算法,仅供参考:
1、 蒙特卡罗算法(该算法又称随机性模拟算法,是通过计算机仿真来解决问题的算法,同时可以通过模拟可以来检验自己模型的正确性,是比赛时必用的方法)
2、数据拟合、参数估计、插值等数据处理算法(比赛中通常会遇到大量的数据需要处理,而处理数据的关键就在于这些算法,通常使用Matlab 作为工具)
3、线性规划、整数规划、多元规划、二次规划等规划类问题(建模竞赛大多数问题属于最优化问题,很多时候这些问题可以用数学规划算法来描述,通常使用Lindo、Lingo 软件实现)
4、图论算法(这类算法可以分为很多种,包括最短路、网络流、二分图等算法,涉及到图论的问题可以用这些方法解决,需要认真准备)
5、动态规划、回溯搜索、分治算法、分支定界等计算机算法(这些算法是算法设计中比较常用的方法,很多场合可以用到竞赛中)
6、最优化理论的三大非经典算法:模拟退火法、神经网络、遗传算法(这些问题是用来解决一些较困难的最优化问题的算法,对于有些问题非常有帮助,但是算法的实现比较困难,需慎重使用)
7、网格算法和穷举法(网格算法和穷举法都是暴力搜索最优点的算法,在很多竞赛题中有应用,当重点讨论模型本身而轻视算法的时候,可以使用这种暴力方案,最好使用一些高级语言作为编程工具)
8、一些连续离散化方法(很多问题都是实际来的,数据可以是连续的,而计算机只认的是离散的数据,因此将其离散化后进行差分代替微分、求和代替积分等思想是非常重要的)
9、数值分析算法(如果在比赛中采用高级语言进行编程的话,那一些数值分析中常用的算法比如方程组求解、矩阵运算、函数积分等算法就需要额外编写库函数进行调用)
10、图象处理算法(赛题中有一类问题与图形有关,即使与图形无关,论文中也应该要不乏图片的,这些图形如何展示以及如何处理就是需要解决的问题,通常使用Matlab 进行处理)
以上便是我这次参加这次数学建模竞赛的一点心得体会,只当贻笑大方,不过就数学建模本身而言,它是魅力无穷的,它能够锻炼和考查一个人的综合素质,也希望广大同学能够积极参与到这项活动当中来。