首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

大学生数学建模竞赛前的准备!

2019年全国大学生数学建模竞赛将于9月12日举行!

竞赛倒计时6天!!

为了能帮助大家更充分地备赛,数模君为大家整理了建模前应该做的准备,小伙伴们检查下自己都做好了吗?

1

组队

一支参赛队一般由三个人组成,比较理想的情况是有人擅长建模,有人擅长编程,有人擅长英文写作。

这也是传统的数学建模比赛分工。但是在正式比赛中,分工往往不会这么死板。负责建模的同学可能也需要编程来处理一些数据;负责编程的同学往往需要写一部分论文来分担队友的工作量。

所以,个人建议,每个人都尽量让自己全能一点,一定不能抱着“不在其位,不谋其职”的态度。不是自己负责的部分就一概不管,这种态度是相当有害的。即使自己能力很弱,在比赛过程中也一定要有担当,不能老想着把麻烦的事推给队友。一些队在比赛的过程中效率高的原因,很大一部分是每个人都很有责任心,都想着尽力帮队友分担任务。这种主人翁意识能让团队的战斗力更强,使比赛过程轻松愉快。

组队是一个很重要的环节,会受环境和人脉的限制,很多时候无法按照心意组一支理想的队伍。所以,我觉得在这里写太多经验也没多大意义。数模君强调一点,队友可以没有经验,可以能力弱一些,但一定要有认真的态度。

数学建模比赛是一个需要参赛期间全身心投入的比赛,如果队友无法做到全力以赴和全神贯注,绝对是一个大坑。找人组队的原则就是队友不需要是高手,但一定要靠谱。所以希望大家组队的时候一定要找靠谱的人,在这个基础上再看能不能找到大神。

2

建模

数学建模比赛一个很重要的特点:有广度,无深度。

因为没深度,所以门槛低,三个综合素质比较高的人组队,即使没经过任何数学建模训练,也能做出一个不错的结果。他们可以在比赛过程中查找资料,自学需要的模型和算法,写出像样的论文。因为有广度,即使是那些Outstanding得主甚至数学建模老师,也无法通晓比赛中可能涉及的模型和算法。

所以,即使你是从未参加过比赛的新手,面对比赛也不用心虚,“兵来将挡,水来土掩”碰到没学过的东西不用怕,你可以现学嘛;即使你是拿过无数大奖的老手,也不要自满,因为你掌握的东西仅仅是数学建模中的沧海一粟。

既然数模的范围这么广,那我们还需要准备吗?答案是当然需要。

如果你的准备时间很短,没有时间系统地学习那个教程里面的各种算法。那有个建议,数学建模中的问题通常分为这么几个大类:优化、预测、分类、评价。最好保证能大概清楚每一个大类里有哪些常用的模型和算法,并且至少熟悉其中的一种。

在建模方面,推荐DC学长的一篇博文《数模中国大学生数学建模竞赛前一天总结》。DC学长获得过中国大学生数学建模竞赛的国家一等奖,这篇博文是他赛前准备工作的清单,甚至还列出了部分代码清单。如果你们队准备到这个程度,那应该也可以对比赛胸有成竹。

3

编程

编程是高手各显神通的环节了。比赛没有任何限制,你可以使用你熟悉的任何编程语言。但是依照我的经验,在绝大多数情况下,MatLab足以解决问题。所以数模中编程语言首选MatLab。下面分析一下MatLab的优缺点以及它为什么适合数学建模比赛。

优点:

各种函数和工具箱。基本上数模中所需要用到的成熟算法都能在MatLab中找到函数和工具箱。比如拟合之类的问题,使用MatLab工具箱简直轻松愉快。所以,熟练使用MatLab会大大提高数学建模中的编程效率。

画图功能非常强大。在数学建模比赛中,需要画大量的图形。用MatLab再合适不过了,很容易用MatLab画出各种高大上的图形。

缺点:

效率低,计算慢。我觉得这点在数学建模比赛中甚至算不上缺点。因为比赛对程序时限要求不高,只要能出结果就行了。即使MatLab花一分钟才能算出C语言几秒就算出的东西,也没多大关系。

但还是有极少数的一些情况,可能用别的语言或者工具比较合适。比如对于一些其他格式的数据(带有文字)进行读入或者转换的时候,我更习惯用C++或者python。

比如规划问题,虽然MatLab的工具箱已经足够强大;但Lingo这样的工具更为简便。学会使用Lingo大概只需要几个小时,所以还是建议学一下。比如一些统计方面的问题,用SPSS和EViews更加方便。这些也建议一支队伍中的三个人至少有一个人会,毕竟这些都比较容易学,并且技多不压身嘛。

总结一下我觉得数学建模中负责编程的同学需要会的技能

基本:能熟练使用Word、Excel、Visio这些基本软件进行数据处理和画图,熟悉MatLab的基本编程,可以写程序处理数据和画各种图形。

进阶:熟悉MatLab的一些常用函数和工具箱,熟悉Lingo。在数学建模中遇到拟合、回归、规划以及其他调用函数就能解决的问题,能够迅速用MatLab这种工具有效地求解。

高级:遇到求解方面的问题,能通过各种手段(不管是自己写代码还是用MatLab工具箱或是用小众软件)迅速解决。

另外,对于常见的模型和算法,建议在平时准备好代码,等到比赛时再到处找代码、写代码,那就比较费时间了。好的习惯就是平时将各种代码搜集整理好,并且保证自己调试过。

这里说一个血的教训,一些队在中国大学生数学建模竞赛的时候需要用到主成分分析这种方法。但平时准备的主成分分析代码是从网上下载的,并没有用过;在比赛中使用的时候发现代码出现了问题,在这个本应该几分钟解决的问题上耗费了几个小时。

总的来说,数学建模中的编程并不需要非常强的编程能力,很多时候甚至不需要自己写多少代码,更重要的是能熟练使用各种工具迅速解决问题。个人认为有过ACM经验(即使还没到铜牌水平)的同学承担数学建模中的编程任务已经绰绰有余了。

4

写作

因为评委们看不到你们辛辛苦苦推导公式的过程,也看不到你们精妙的代码,他们能看到的只有呈现在眼前的一篇论文,所以论文的写作非常重要!!

有很多实力很强的队伍,模型和求解都非常漂亮,但是论文没写好,最终结果不如意。这是相当遗憾的一件事。所以一定不要忽视论文的写作,尤其是摘要的写作。

第一个问题,大学生数学建模竞赛中用LaTeX还是用Word?

我觉得都可以。虽然熟悉LaTeX之后效率会很高,但我觉得如果没时间学LaTeX或者不想学LaTeX,用Word也没问题。也有很多队伍就是老老实实用的Word。

第二个问题,关于论文的格式和排版。

这些东西一定要提前准备好模板,不要拖到比赛的时候去做,太浪费时间了。队伍里那个负责写作的同学,一定要非常熟悉LaTeX或者Word的操作,尽量不要在比赛的过程中遇到不会解决的排版问题。负责排版的同学一定要细心,保证精益求精。一些队伍在比赛中拿到Outstanding很大程度是因为有一个强迫症队友。他对细节的追求可谓苛刻,他无法容忍任何一个地方排版不好看,哪里多了一个空格,哪里行距看着不舒服,哪里的公式格式不太对,他都会精心改正。在数学建模比赛中,这是非常繁琐的工作,但是确实需要有人去做。

对自身要求很高,想要用LaTeX排版提高效率的同学可以戳下方的LaTeX课程链接,原价79,三人拼团只要19.9,并赠送数学建模资料包2019国赛论文LaTeX模板,最后6天,加油冲刺丫!!

——文章部分内容摘自《大学生数学建模竞赛指南》

转载是一种动力,分享是一种美德~

我就知道你“在看”

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190906A0MFBI00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券