大学生数学建模竞赛心得(提高篇)
〇、 前言
受王春利老师的邀请,在国赛之后写一遍心得体会,给学弟学妹们一些适合 我们学校自身水平的心得体会。
首先还是感谢下王老师以及公共课程数学部对我以及我队友的支持,还有本 部朱老师以及毛老师的支持,没有他们对我的支持,我在数学建模以及数学竞赛 的道路上不会走得如此顺利。
我和韩绪已经合作了将近半年之久,从“好贷杯”一直到“国赛”我和他相 互配合相互促进,直到国赛进入国奖答辩取得了不错的成绩。韩绪同学的竞赛心 得更加接地气(他自己这么说的)。。。。。。我的建模心得更加从宏观的角度出发, 适合在看完韩同学的文章之后,对于我的看法进行一些思考,由于本人的水平有 限,所以欢迎大家批评指正。
一、 我本人的数学建模经历
我严格来说是大一下学期开始接触数学建模的(要是早一些接触我就可以参 加 2015 年的美赛了。。。)。一开始我不是数学建模协会的会员,那个时候是辅导员在年级群里面通知有数模校内赛开始举办了,问有无兴趣参加。于是我就跟着 报名了。那个时候也没有怎么准备校内赛,就随意读了几本书,比如司守奎老师 的数学建模算法与应用。读了之后,自己下载了 MATLAB 和 SPSS(这两个软件也成了我之后用得最为熟练的两个软件了)。对着司老师的那本书照葫芦画瓢,大 概做出了一些结果:比如拟合曲线,主成份分析,TSP 算法,神经网络等等,虽然不是太懂机理,但是在一些简单的问题中已经可以通过修改书中的源程序进行 求解了。校内赛的题目有关中国人食用蔬果的分析,其实这是一个前几年研究生 赛的题目。我参考了下别人的解法之后,自己对其中蔬果进行变量化,建立了多元线性回归模型(数模书上都有),预测使用了灰色预测(其实这个办法在国赛以及美赛上不建议使用,这种处理方法主要是我国科学家发明的办法)。对文章 进行拙劣的排版之后,就上交了论文。在答辩的时候,朱老师指出了我论文提出 了一定的批评意见,让我有很大的收获。
校内赛拿了一个 B 组二等奖,由于那三天我做得比较辛苦,觉得拿了一个二等奖并不是十分满意。王老师安慰我说,只要国奖拿一个好点的成绩,校内赛不 算什么事情。于是,在朱老师以及王老师的建议之下,决定参加 2015 年数学建模国赛。
暑期的培训就这样开始了,2015 年的暑期培训时间比较长,大概一共花了 3 周的时间。第一周主要是讲解一些理论知识,这些课程虽然不能很直接地帮助同 学们直接在国赛当中用到,但是可以给一种思考的方式,应该如何应用数学。如 果不出意外,朱宁教授应该还是会过来给大家上一到两次课程,大家可以抓住机 会,多问一些问题,毕竟平时很少碰到老师的。大家可以对这些课程有一定的取 舍,如果是坚持要建模的同学,那么建议所有课程都听一听,写作的同学还是安 心练习好写作,如果有必要的课程,则听一下即可。编程的同学主要还是要思考 如何讲模型程序化,这个是数学建模竞赛成败的关键所在。如果解不出答案,即 使混进去了国赛答辩,往往很容易打回来,因为如果程序跑不出来,评委就会质
疑你的答案是怎么样得出的,失去国奖的资格,是十分可惜的。
后两个星期的模拟赛则是我水平提高比较快的时候,首先进行了五轮高强度训练,练习了 10 篇国赛真题(5 篇自己做,答辩看 10 篇),从每次练习当中,我
不仅和队友磨合得比较不错,而且还大概知道自己的做题风格以及思维习惯:比 如我个人在这次训练当中,知道了我倾向于国赛 A 题(物理类,工程类,连续数学,微分方程居多),而对于国赛 B 题(经管类,规划类,方案类,离散数学,大数据居多)我个人是比较不太擅长。所以我在 2015,2016 两年的国赛均选择了 A 题,而且比赛结果也一般不错。韩绪则与我相反,他对于 B 题比较敏感,对于
数据处理的问题结果较好。我则更加倾向于建立一个更加数学的问题,比如方程, 比如函数的问题求解。虽然第一年我没有和韩绪组队,但是我在观察众多小组的 做题情况中,发现韩绪的编程能力在我们这些人当中属于佼佼者,希望在以后的 数模生涯中可以与他合作。我论文写作的一些毛病也是在这期间由老师们的共同 帮助下改善的,这让我在国赛中占了很大的便宜。
之后就是国赛了,国赛是三天三夜。这一年的 A 题是球面天文学+遥感问题
(其实我也不懂,完全是在查完众多参考文献后才慢慢学会了一些基础的理论知 识)。B 题是方案问题:主要涉及的问题是打车资费问题。我们在选择 A 题以及 B 题前首先去了中国知网,看了下哪一个问题的参考文献更多(不要以为人都是万
能的,绝大多数的国奖论文都是借鉴+创新出来的,源创新很难,一般 B 题有可
能)。由于是第一年参赛,因此选择保守做题方案,选择了参考文献较多的 A 题
来做。第一天上午,我们基本上就在选题,在决定选择 A 题之后,就开始认真筛
选资料,找出了十来二十篇不错的文献之后,就开始学习相关知识,对问题开始 建模大概在第一天晚上,就把第一问做好了。好的开始是成功的一半,基本上第 一问出来了,论文写得不差,拿一个省赛区三等奖(广西区三等奖)问题是不太 大的。所以无论你坚持与否,为了不要让自己打酱油(拿成功参赛奖)还是争取 把第一问做完吧。一般第一问都是比较基础的问题,国赛与美赛的不同就是,国
赛第一问一般都会给学生一个台阶上。去年的第一问就是一个拟合问题,而基础 模型一般的参考文献都给出来了。所以,只要细心完成,第一问还是不难做出来 的。
图 1:2015 国赛问题一解答
第二问的难度就上来了,因为杆子的初始值不知道了,这个时候模型的假设 威力就出来了。由于不知道杆子长度,所以我干脆就假设杆子长度继续沿用第一 问的条件。这样的假设有利也有弊。利是第二问几乎可以继续沿用第一问的思路 做题,弊是这样也失去的更加好的考虑情况。所以最终国一与我们失之交臂。第 二问通过求解太阳高度角以及正午影子长度所判断的地方时与北京时间的差得 到经纬度。这样便可以预测出测量地点了。
第三问的条件更加苛刻,于是只能在第二问的基础之上使用遍历的办法求解 出所给数据可能的地点,所以精度大大地下滑了。(一般第三问开始属于分水岭, 拿不拿国奖以及拿不拿国一基本上从这一问可以看出一些端倪。我们去年第三 问的结果还不错,所以还是保住了国奖,西大那篇国一的算法与我们差不多,都是使用蒙特卡洛算法(说白了就是猜))。
第四问我觉得是这么多年国赛较为创新(哪怕 2016 的国赛 A 题都无法与2015 年的 A 题相提并论)。这一问是视频以及图像处理的问题。说老实话,无论是老师还是学生我们在准备 2015 国赛的时候,都是没有想到这样出题的情况。不过好在这一类的文献较多(因为是比较前沿的问题),于是我快速学习了一些 MATLAB 算法,以及程序,将本题附件中的视频“扣取”出一幅幅的图像。
图 2:“扣取”出的图像
然后使用了一些参考文献中的算法,把失真图像给还原,也就是像素点平移 到与屏幕平行的位置,这样就可以采集影子的长度了。效果如下图:
图 3:图像处理之后的效果
然后继续使用前两问的解题思路,得出了一个地点。但是很遗 憾,第四问处理的结果一般,与参考答案存在一定的距离。这也是 A,B 题的区别,一般 A 题都有一个所谓的参考答案,也就是大伙如果做得不错,最终求得的值都差不多。 而 B 题一般就比较开放创新,几乎是没有标准答案的,言之有理即可。所以,一般 A 题容易保国二,B 题容易冲国一。但是 B 题在毫无想法的情况下,很容易一问也出不来。
然后这次参赛实际上是做了三天两夜,第一天睡了 4 个小时,第二天睡了 8