数学建模经验分享

  • 2014国赛
司隽雅·山西大学
2015-02-17
阅读数1847

首先是身为队长的我:

2014年,作为一个准备参加数学建模国赛的队伍,我们从不懂到略微了解,从校赛到国赛,学到了很多东西。

记得第一次参加数学建模比赛,是在13年的12月,初生牛犊不怕虎的我们,参加了数学中国举办的第二届“认证杯”数学建模大赛。这个比赛被国内外的参赛队戏称为小美赛,可想而知这场比赛的情况:大部分的参赛者是为了准备美赛才报名参赛的,比赛的题目以及论文要求都与美赛一样。也就是说,我们要用英语写论文。整个比赛历时四天,我都感觉头昏脑涨的。面对着一堆abc,我深刻体会到什么叫做不作死就不会死。因为是第一次参赛,对于时间的安排没什么经验,导致我们前面两天太过松散,最后一天的时候就有些赶不及,险些没有交上论文,因此也就没有过多的时间去检查。但是我觉得这次比赛对我们三个人经验的积累和配合的默契程度是一次很好的锻炼。

一切都是越来越好的,第二次参加数学建模就是在145月了,深圳杯。这是一个夏令营选拔赛,这一次参赛,我们对建模已经有些熟悉了,审题、选择模型、程序处理、论文书写。一切都有条不紊的进行着。这次比赛同时也是山西省的高校联赛,我们队有幸获得了c题第一名,同时还进入了推往深圳杯全国组委会的名单。这对我们来说无疑是一种鼓励,让我们知道我们的论文不比别人差。

因此,在国赛刚开始,我们给自己的定位就是国家奖,毕竟省一等奖我们都已经拿过了。也是如此,我们一直以最高标准要求自己。在赛前,老师找我们谈过话,说对我们队抱了很大的期望。经历了两次数模比赛,我们对自己非常有信心,在时间安排上也比前两次比赛要有经验许多,在写论文的过程中更是轻车驾熟。第一天上午下载题目和选题,吃过午饭开始查找资料阅读文献,到晚上确定下模型,然后深入查找资料。要我说,数学建模竞赛其实就是一个现学现卖的过程,因为只有三天时间,根本不可能完成一个新模型的创造,更何况还要解释清楚,写出一篇清晰的论文,因此我们能够做的就是寻找合适的模型,并对它进行改进,这才是我们能做到的。从第二天开始,我们就在对模型进行改进,并利用改进后的模型解决问题。到第二天傍晚,我们已经解决了第一阶段的问题。第三天就是考验我们的时候了,从早上7点开始,我们就一直坐在教室,基本不动窝,连吃饭都是叫外卖在教室解决的,一直到凌晨两点钟才把论文组写完毕。然后便是排版、修改。

在这里要提到一点,虽然整个比赛过程中,组委会没有人监督老师是否参与,但是我的建议是最好不要让老师参与。不仅仅是因为这是比赛规章里面的要求,我个人认为,老师若是参加讨论,那么很明显大家就会怀疑自己的想法,同时也会限制自己的思维。辅导老师只是在前期培训时起作用,比赛一旦开始,就不要有依靠老师的想法。

我还要提到一点,那就是数学建模其实和你本身的文化成绩关系并不是特别密切,只要在做数模的过程中你认真的学习认真的做,就一定会有收获的!

数学建模是将数学和我们的实际生活联系起来的一种途径,对我们的思维能力和自我学习能力都是一种锻炼,它让我觉得,这么多年数学理论的学习并不是没有实际意义的。在这里,欢迎更多的学弟学妹参加到数学建模竞赛的大军中来!

然后是负责模型的队友:

首先是分组:队员之间需要有明确的分工:队员1(本人)负责模型的建立与计算,需要队员1需要有很广的知识面和对数学有极大的兴趣,其中一定要学好常微分方程和高等代数,这是最基本的。除此之外还可以学习一下其他几门学科比如运筹学、离散数学、概率论与数理统计等,其中离散数学对建模的帮助还是挺大的。这样可以在真正建模的时候能够把握大方向,知道问题该用什么数学模型来解决;队员2负责为建立的数学模型编程,常用的编程软件有MatlabLingoSPSS。队员2最好是计算机专业相关学生,因为编程语言都是相通的,计算机专业学生能很快接受一种新的编程语言;队员3需要才华横溢,能够用学术型语言写出建模论文,能够清晰表达出模型的建立过程;最后关于指导教师问题,不需要指导教师有多强的实力,但求能够对队员们认真负责,最好也成为一名队员和我们一起研究。

由于本人负责模型的建立与计算,那么下面将从这两方面提供经验:

1.建模型是最为关键的一步,新手往往是无从下手,这是因为知识面不光,缺乏背景知识,背景知识对建模型来讲是很重要的,一般情况下,问题的背景是所不熟悉的领域,这个时候就需要查资料了解这个问题的背景和了解问题的发展,特点,关键所在以及前人是怎么解决的等等。因此需要训练查找资料和查找文献的能力。这了解一定的背景知识后仍然无从下手,这个就是相关知识的缺乏了。比如需要做人口模型,需要用遗传算法,需要做相关线性规划等等的时候不知道该怎么做?这个就是对一些经典模型了解太少。当然知道了解掌握全部的算法和知识是不现实的,但是常用的算法和知识是必备的,也是必须的,我们可以对如下算法做一定了解:蒙特卡罗算法,数据拟合、参数估计、插值等数据处理算法,线性规划、整数规划、多元规划、二次规划等规划类算法,图论算法,动态规划、回溯搜索、分支定界等计算机算法,最优化理论的三大经典算法:模拟退火算法、神经网络算法、遗传算法,网格算法和穷举法,一些连续数据离散化方法,数值分析算法,图像处理算法。以上基本涵盖了数模中几乎所有的算法了,但是随着近些年的发展我们可以发现概率统计的手段在数模中的作用越来越大,所以除了上述几种算法之外还应当对概率分析以及数理统计有相当的了解和掌握。

2.解模型:模型建好了,该怎么解是个常常令人头痛的问题,这个不仅时新手,而且一般是令绝大多数同学头痛的问题,辛辛苦苦把模型建了,但是解不出结果,这个时候往往最让人无奈了。在此过程中,建立模型的人一定要与程序员能建立起沟通的桥梁,即建立模型的人能读懂一些基本的程序,程序员有一定的数学功底,能看懂一些微分方程。两个人沟通好,建立模型的人尽量用机器语言的思维及逻辑程为程序员解释清楚模型的思路及意图,然后程序将其付诸实际,之后模型建立者查看最终结果是否正确并及时优化。本人在做数模期间一度与程序员产生代沟(我看不懂他的程序,他看不懂我的模型),希望各位朋友不要重蹈覆辙。

最后是本队主要负责程序的队友:

1,与数学建模的邂逅

在我刚到大学报到的时候,就看到数学学院张贴的数学建模的宣传单。对我来说数学建模是个崭新的名词。后来,在校园群里认识了现在的队长,她问我是否愿意参加数学建模,我怀着对它的好奇就答应了队长。在我们的队员里,两个是数学学院的,我是计算机与信息技术学院的。就这样,一个数学建模队伍建立了。

2,第一次实战

第一次参加的比赛是小美赛。拿到比赛题时,我就遇到了第一个困难,对题意的理解。不同与一般数学题的表述以及英文描述。我们清楚的知道如果题意没有理解透彻,再怎么努力也是白费。于是,花了几乎一天的时间去确定题意和答题方法。在这个过程中,我们寻找各种资料来帮助我们对题的把握。

分工明确才能发挥最大战斗力。我们根据自己的特长分配任务。我是主要负责算法设计与实现;队长主要负责论文整体把握与排版;另一个队友负责问题解决方案的数学表达与实现。当然,对问题的讨论是大家一起进行。

用了三天时间,虽然,感觉不知道自己究竟干了什么,我们还是成功的把论文写完了。比赛的结果是三等奖,这算是鼓励奖了。我也有了长期做数学建模的想法。

3,国赛

国赛是我所在学校最重视的一个比赛,我们队里也非常看重这次比赛。比赛前期,根据指导老师给的资料和自己在网上书上找的资料开始了针对性的训练。这一点是很重要的,它可以扩展知识,加强解决问题的能力。一个队伍所用的软件一定要是一样的,这可以避免比赛时由于软件版本不同所带来的不必要的麻烦。

比赛开始后,根据以往的经验,我们首先确定选择哪一个题。这和队员的兴趣和优势决定。我们选择了最感兴趣的a题。接着就是收集资料,阅读资料寻找解决问题的灵感。根据问题的特点,我们又将其分为几个阶段,每个人负责一个阶段,这有利于问题解决的速度提升。我是负责图像处理的。我个人非常喜欢图像处理,也擅长算法设计,这个任务对于我来说非常适合。

创新在数学建模中是必须的。你可以自己想出一个独特的方法解决问题,也可以借鉴资料里的想法,去综合它们,改进它们以适合当前问题的解决。我喜欢自己想,这有好处也有坏处。从零开始想会浪费大量时间,在短短三天时间里,这种做法尽量不要采取,除非你觉得时间充分。我是先看了一些资料,再根据自己的理解设计的算法。事实证明,效果还是挺好的。

在自己的任务完成后,如果还有余力去帮助其他队员,或者是做整合工作,千万不要浪费时间。

当所有队员都完成后,就是把每个人的成果整合一起形成一个完整的论文。这一般是在比赛最后要做的工作。整合论文是非常关键的一环,不能因为觉得问题都解决了就放松,你提交的是一个完美的论文,不是解决问题的方法。

经过三天一夜的努力,我们完成了论文。当确定成功提交论文后,我才放松下来,此时的感觉就是瞌睡。

本文由 司隽雅 授权 赛氪网 发表,并经赛氪网编辑。转载此文章须经作者同意,并请附上出处(赛氪网)及本页链接。原文链接https://www.saikr.com/a/1351
收藏
分享
别默默的看了,快来和大家聊聊吧,登录后发表评论~ 登录 立即注册
打赏
司隽雅
打赏金额(金额:¥0)
给Ta留言
赏金已入袋,多谢!(*^__^*)
温馨提示

非常抱歉!本站不支持旧版本IE浏览器~~建议使用IE10/IE11/Chrome/Firefox/Safari等高级浏览器浏览。

温馨提示
温馨提示
帮助与反馈

热门问题

0
在线咨询