查看原文
其他

经验分享 | APMCM、IMCM数学建模竞赛拿奖攻略

南昌大学软件学院 大学生学科竞赛 2024-02-06




搞数学建模的时间也算是不短了,从大一开始参加数学建模比赛到现在,陆陆续续参加了校赛、MathorCup挑战赛、小美赛、APMCM、IMCM以及美赛,也获得了大大小小的不少奖,在参加建模竞赛中积累了不少经验。


这篇文章以作者最近参加的APMCM和IMCM数学建模比赛为例,融合了作者的自身的参赛经验以及其他获奖者的经验,对数学建模做一个参赛经验总结和分享,倘若大家能做好文中所提到的内容,拿个APMCM和IMCM二等奖应该是问题不大的。


第一篇 赛前准备

 

1、阅读相关书籍,吃透经典模型

数学建模的基础本质还是数学,如何从具体问题中抽象得到一般的数学模型,再具体应用到所需要解决的问题,是整个比赛的重点和难点。所以对于小白来讲,一本好的入门书籍是必不可少的。


这里我强烈推荐姜启源的《数学建模》。这本书真的非常经典,书中讲的很多经典模型对于数模解题的时候帮助非常大。当然司守奎的《算学建模算法与应用》也是非常不错的选择。请选择其中一本,吃透它,一定要弄懂书中的模型。


之后,进阶阶段,可以尝试去阅读一些介绍现代算法(如:神经网络、遗传算法、模拟退火算法、粒子群算法等)的书籍。其实,认真掌握了其中的一种算法思想并能够熟练运用,其他的算法都可以触类旁通的,在比赛过程中现学现卖即可。


所以刚开始千万别囫囵吞枣,拼命学一大堆,学完后不用时间久了反而全忘了。最后,临近比赛,可以多看看别人写的优秀获奖论文,学习优秀论文的排版布局以及行文思路,最好能用小本本把一些优秀论文的亮点地方记录下来,看到时候自己比赛的时候是否也能运用。



2、熟练使用一到两种数学建模相关的软件

MATLAB必须掌握,这是在数学建模中使用频次最高的仿真软件,使用它来进行复杂的数值计算和仿真效果非常好。像一般的神经网络、差值拟合、小波分析等它都能做。并且如果你不会使用MATLAB编写具体的像诸如神经网络之类的算法,别慌~~MATLAB为你提供了一系列的工具箱,直接调用就好了。有木有感到特别的方便哈哈哈。至于像lingo、spass等软件,入门上手非常快,可以根据自己的情况,选择一种即可。当然也可以直接在比赛期间根据需要现学,问题不大。

 

3、掌握一种编程语言

这里推荐python,作为当前数据分析领域里的热门计算机程序设计语言,它拥有众多和数据分析与数值计算相关的库,比如pandas、scikit-learn、Wget 和 matplotlib等,这些库对于数学建模过程中的数据可视化、数据分析、清洗筛选、预测等工作提供了强有力的支撑。


其次,选择python还有一个重要的理由--方便编写爬虫脚本,爬取建模过程中所需的数据。因为数据在数学建模过程中占据了非常重要的作用,预测结果,训练神经网络、搭建模型等都离不开庞大的数据支持。而比较苦恼的是,比赛出题人往往不会给你提供相关的数据,而是让你自己去寻找,在之前的比赛中,4天时间比赛,找数据一般都占据了大约一天,可是当你会用python编写爬虫直接爬取数据,嘿嘿,想想就开心。



4、学习数学建模论文排版

千万不要认为排版是团队中某一个人的事情,因为数学建模比赛时间紧,短短四天,不仅要把模型算法结果搞出来,还要翻译,所以,团队内3个人必须都要求掌握一些排版技巧。


 排版软件:LaTeX>Word>Wps。会用LaTeX当然是最好的,网上也有一些针对各类数学建模比赛已经设计好的LaTeX模板,这里推荐一个良心网站https://www.latexstudio.net/(LaTeX工作室)。


如果觉得安装LaTeX太麻烦,Overleaf是一个非常好的在线编辑器,支持多人协作,非常方便。




5、找到合适的队友

找队友时先确定自己的分工,然后找互补的。比如你是计算机专业的,负责编程比较好,你再找就要找擅长建模型(数学系的当然是最好的啦)和擅长写论文的(英语专业的当然是最好的啦,再也不用担心我的翻译啦哈哈哈)。


下面是关于数模团队构成的一些具体标准(希望能帮助大家寻找到心仪的队友):


1.建模∶学习过较多数模相关的方法、知识。有比较多的模型储备,微积分、线性代数、概率论与数理统计、规划模型、微分方程模型、图论模型、计算机仿真方法、博弈论模型、微观经济学基本原理、元胞自动机模型、群体决策模型、智能计算(遗传算法、模拟退火算法、蚁群算法等)、基本的数字图像处理方法、常见的模式识别算法(聚类算法、神经网络、支撑向量机等)有了这些模型的储备,粗略估计可以应对80%以上的问题。


2.编程∶负责实现建模同学的想法,一些程序细节编程的必须非常明白,需要岀图,岀数据的地方必须能够非常迅速地给岀。实际上一般数学建模比赛对编程水平的要求并不是很高,况且许多算法的源代码网上到处都是,可以在学习中自己收集一些模型的代码,在实际比赛中可以通过修改代码得到可供自己使用的程序。


3.论文:将所有的图表,文字以一定的结构形式予以表达,注意要从评委的角度考虑问题,在全文中形成一个完整地逻辑框架。同时要做好排版的工作。一个好的论文能够清晰地分辨岀模型中重要和次要的部分。因为论文是评委能够唯一看到的成果,所以写作者的水平直接决定了获奖的高低,重要性也不言而喻了。大多情况下,后期编程和建模的同学也参与到了论文写作当。可以自己找美赛的论文的模板,在模板上进行修改。


PS:请记住一点,有时候不是队友实力越强就越稳,选队友最重要的是有责任感,时刻记得不能坑队友,三个人是荣辱一体的队伍,任何时候不说丧气话,不指责队友。比赛时可以调侃题目,但绝对不能抱怨团队中的队友。


6、科技文献的检索

(1)中外文期刊数据库+Google引擎+书。

(2)中文文献:CNKI(中国知网)和超星图书、万方。

(3)英文文献:英文数据库(注意特色和优劣)google学术搜索。

(4)英文数模论文有时需要通过科学上网去查找一些数据文献,可以采用以下两种方式。



 至于其他的,可以自己去数学中国论坛http://www.madio.net/里看看。


7、提前整理一些比较常用的网站

以美赛为例(APMCM和IMCM也大同小异),下面这些网站在英文数学建模比赛找数据时是非常有用的:

8、学有余力可以继续进阶

如果上面所说的你都已经做好了,那还可以去学习一些其他的杂项,以备数模比赛不时之需。比如:数据可视化方面百度开源的Echart也是非常不错滴,谷歌开源的TensorFlow人工智能计算框架能帮你在跑数据时更快更方便。这些对于计算机专业的同学来说快速上手应该是小case吧。至于还有其他的,自己可以去数学中国论坛http://www.madio.net/里看看。



第二篇  实战记录


1.IMCM实战记录

最近刚参加的IMCM比赛出题比较常规,我们在官网发布题目后只花了一个小时,就确定了选题。选取了最熟悉也是最容易入手的C题--预测未来人口分布和老龄化趋势类问题,基本上没有遇到非常棘手的问题。

但是,最后一天,论文排版翻译的时候,遇到了大麻烦,由于第一次写英文论文,碰到了很多生词,我们使用的是Google翻译,一段一段地翻,翻完后校对时态语法,不得不说--两个字(痛苦)。

更要命的是,整篇论文翻译完后,超页数了,特别是论文的“门面担当”--摘要,翻完后发现居然整整占了一页半emmm...

没办法,只好再详细阅读,把冗余的地方给删减了,就这样一直忙到距离提交通道关闭只剩下一个小时,匆忙提交。


最后比赛结果出来,4天的努力换来了一个H奖(选C题的队伍占了总参赛队伍的一半多,要是当初选别的题目,或许能混个M奖......)。



2.  APMCM实战记录

最有意思的还是亚太地区数学建模比赛,下面详细介绍。2019年的赛题一共两道,A题是关于目标跟踪检测的计算机视觉类问题,B题是关于区域经济活力及其影响因素的分析与决策,属于经济学类问题。


第一天

选题:由于IMCM选题上欠考虑,这次我们认真考虑分析,认为A题对计算机知识技能以及图像数据处理的能力要求比较高,选此题的人数会比较少,所以我们在中午吃饭之前,选定了A题,当然选A题还有一个重要的原因是我们队全是计算机专业的,对于B题这种人文社科类的题接触不多。


下午,团队分工协作(我们的任务划分是:两个人一起建模和编程,另一个人写论文,但是三大块分别有一个人占据主导地位,这种分工模式应该是建模过程中比较合适的),我和其中一个队友开始查找相关的资料,熟悉题目,确定解题方向,注意,查找文献一定要到正规的学术网站去查找,比如学校购买的各大数据库资源,这可是个宝库啊。另一个队友开始构建论文基本框架,把背景问题重述之类的能先写的都先大致弄好。


第一天,没有什么头绪,也没有熬夜,都晚上11点就睡了。

 

第二天

重新聚集到一起,首先团队成员依次分析自己的见解,有新的思路及时用记录下来,然而还是没什么头绪。上午继续思考,找资料,构建解决方案。下午,我突然想到可以把所给的100多张SIO2颗粒运动状态图滚动播放,再结合计算机视觉中的多目标跟踪检测模型来解决问题,于是就有了第一问的基于核相关滤波器的二氧化硅质心目标跟踪模型,模型建好后试着在MATLAB中仿真了一下,果然不出所料,跟踪精度达到了80%(因为CCD拍摄过程中存在抖动问题,会导致目标跟踪丢失)。之后,进行灵敏度分析的时候又结合贝叶斯优化将精度提高到了95%。

第三天

开始解决剩下的两问。由于第二问和队友之间存在分歧,双方提出的方案都各有特点,于是不停地争论,闹得有点不愉快(PS:建模比赛过程中千万不能出现这种现象,一定要心平气和地讨论,这中现象往往会造成团队内部消极的局面,严重影响进度)。


所幸的是经过一天的缓和,最终还是勉强确定了一种方案,但由于时间比较紧,没有进行灵敏度分析验证,这算是一个比较失败的地方。吃一堑长一智!


第四天

距离官网提交通道关闭仅剩下不到20个小时,可是我们还有一问没有解决,论文初稿及翻译都没有弄完。于是我们采取同步进行的做法。我一边构建第三问模型,而一位队友则负责编程实现并跑好数据得出结果,另一位队友负责赶论文写作(有点像流水线作业,其实我也想边喝着茶边做的,没办法时间不允许鸭QWQ)。

就这样一直熬到凌晨7点,翻译也弄好了,这次我们换用WPS自带的翻译功能进行翻译,它有一个优点:一些夹杂数学公式的地方也能给你翻出来(果然超级VIP用户就是香啊)。之后,我们针对机器翻译的文章再次进行语法拼写逻辑校验,确认无误后,放心的提交了。至此,本次建模之旅结束。当然,后面也拿到了二等奖。感谢队友的不离不弃和老师为我们提供的比赛场地,给力!

 

最后附上肝了四天的论文: 


 

第三篇  一些比赛时的注意事项


(1)英文数学建模论文中不要出现中文、学校等身份信息。

(2)如果是采用邮箱发送的方式提交论文,建议不要用qq邮箱发送论文,可能会被当做垃圾邮件被屏蔽,尽量使用学校或事业单位为你注册的正式邮箱来发送,这在今后学术论文投稿时也是必须遵循的。

(3)不要随便加入一些比赛资料分享群,原因嘛,自己品喽。

(4)比赛期间注意关注官网,可能会有对竞赛问题的一些说明与更新。

 

最后引用约翰逊的一句话,与大家共勉:

伟大的作品不是靠力量,而是靠坚持来完成的。

祝大家比赛都拿O奖

~~冲冲冲~~

QQ扫码入群,交流数学竞赛心得,分享资料。


近期赛事:

2020年优质赛事合集

10场优质计算机类赛事汇总

10场优质英语类赛事汇总

2020全国大学生国家安全教育知识竞赛

第十七届“上译”杯翻译竞赛

普译奖含金量如何?

2020中国设计红星原创奖

2020年创新创业竞赛时间表、赛事简介

2020年第十四届全国大学生化工设计竞赛

2020年第14届“西门子杯”中国智能制造挑战赛

第八届全国高校数字艺术设计大赛


相关知识

高校学科竞赛评估

全国大学生学科竞赛分类名单

2017中国高校学科竞赛评估发布

2018学科竞赛项目一览表

2019全国普通高校学科竞赛排行榜

2020年重要考试时间表出炉了!

这些证书含金量最高!附考试日历!

各专业哪些大学最好?教育部各学科高校最新排名,请收藏!

27个最值得参加的商赛时间表,大学4年千万别错过!

如何高质量地走完大学四年


考研知识

大学生保研加分学科竞赛汇总

专硕排名,考研人必看!

哪些证书对考研有“加分”效果?

觉得不错,请点个在看👇👇

继续滑动看下一个

经验分享 | APMCM、IMCM数学建模竞赛拿奖攻略

南昌大学软件学院 大学生学科竞赛
向上滑动看下一个

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存