国赛在即

2022年国赛在即,同学们准备的如何?备战时间已不足一个月,现在准备还来得及么?数学建模如何组队?需要哪些知识准备?数学建模比赛过程是什么样的?今天小编给大家梳理一下国赛赛前的准备经验。

数学建模需要学习的内容

算法:算法的目的是构建一道题的结题过程,主要学习的算法分为:预测类、评价类、优化类与分类四种类型,具体学习顺序是预测类算法(建议学习顺序为:灰色预测模型、多元线性回归预测、拟合预测、插值预测、时间序列预测、bp神经网络预测后续可自己安排)、评价类算法(建议学习顺序为:层次分析、熵权法、多元线性回归评价、Topsis优劣解距离法、主成分分析、因子分析后续可自我安排)、优化类算法(建议学习顺序为:单目标规划、多目标规划、梯度下降法后续可自我安排)、分类算法(建议学习顺序为:聚类分析、logistic二元及多元判定、fisher判别后续可自我安排)

编程:编程的主要目的有三个:(1)根据结题过程得出问题结论,可能用到的软件有: MATLAB(主要针对评价类、预测类算法)、SPSS(主要针对评价、预测类算法)、Stata(主要针对评价类算法)、lingo(主要针对优化类算法)(2)出优美的图形,用到的软件有MATLAB(高级图形如三维图等)、Origin(平常类图形如柱状图、条形图、折线图等)、Excel(平常类图形如柱状图、条形图、折线图)、PPT(组合图)、亿图图示(流程图)(3)进行数据预处理,可能用到的软件有MATLAB(针对数组矩阵运算很快) Python(有很多库在处理部分数据时直接调用) 。综上所述:建议学习的软件顺序为: MATLAB、SPSS、Origin、State(后续可自我安排)

论文:论文的目的是串联解题过程(算法)以及结果(编程),论文要求结构清晰,逻辑简单易懂。主要学习的部分为论文的整体结构与各个结构如何撰写与联系两个部分。

如何在数学建模中获奖

一.组队

无疑问,许多问题都需要合作来解决问题,一个好的团队更加有利于问题的解决。一般而言,团队成员可分为三类,一个擅长论文写作,文笔好,能够把复杂的模型写的既高级但又通俗易懂,一个擅长编程,对一些常用算法的原理和使用非常了解,毕竟,许多问题都是需要编程进行模拟的,最后一个擅长分析问题,抽象能力强,能够较好的建立初始的数学模型。注意,这里是初始,当然能够直接就建立好模型的大牛除外。当然这里强调的都是擅长,三人必须对于这三方面都熟悉。

不过,不要担心。还有这样的队伍在我看来也是不错的,一个人擅长建模与编程,把控整个进程(一般是队长),其它两个人擅长写作与搜集信息。同时三个人的信息及时共享。虽然听起来不是那么的靠谱,但这却是许多队伍的模式。总之,任何类型的队伍都有一定的缺陷,也都有各自的优点关键是是不适合自己,适合的,感到舒服的才是最好的。**这也就是有时,队伍中的每个人都不怎么强,但是配合默契,最后结果往往出人意料的原因。

二、知识准备

这里主要从数学方面,编程方面,写作方面,算法方面,学习途径四个角度来说:

1,数学方面:对于高等数学有一定的了解,比如求解方程组,数据处理中的归一化,方差,标准差,矩阵运算,积分求解,解高次方程,行列式求解,微分方程建立于求解等等。当然,最好也学过一些计算数学方面的知识。总之,这方面的知识越多,对模型的建立帮助就越大。不过,对于本科期间的建模,所需要的数学知识并不多深。

一些同学看了许多经验贴,资料也搜集了不少,但还是对于数学建模的学习一头雾水,这时候可以参加一些系统的课程,让老师带领同学们高效快速的学习数学建模,避免浪费时间。下面的数学建模夏令营正在火热报名中,有需要的同学可以点击图片,详细了解。

2,编程方面:在编程语言发展过程中,出现的语言有几千种,如今比较常用的有C语言(面向过程),python(面向对象),matlab(专用于数学计算)等等。对于C语言,个人认为,在建模中不建议用,主要原因是编程太复杂,且数据多时**,对C语言不精通的人编写的语言往往非常慢。对于python,我认为不错,它的numpy,pandas,matplotlib库等库专为计算而生,对于计算非常友好,而且易于编程,对于一些新手非常适合。最后的matlab可以说与python差不多,也适用于计算,而且语法更为简单,同时,功能也非常强大。所以,python和matlab在建模中都是比较适合的。

对于刚开始准备的同学来说,可能会觉得有点无从下手,同学们可以先收集一些资料,辅助自己的学习,帮助自己快速入门,比如下面这份资料包,总结的很全面,需要的同学们可以扫描领取:

3,写作方面:对于word必须非常熟悉,尤其是插入公式,排版等,同时,最好学会latex(专业的论文写作排版软件)。还有,学会各种表述,比如问题分析如何表述,问题求解如何表述等等。总之,就是要达到能把复杂概念用简单易懂的语句表述出来。

4,算法方面:至少要知道且会运用各种插值方法,多元线性(非线性)回归,灰色预测,动态规划,贪心算法,层次分析,微分方程与偏微分方程,整数规划,排队论,时间序列分析,因子分析,动力系统,差分,最好再会设计神经网络。对于求解,则要会梯度下降,牛顿类算法等等。

5,学习途径:中国大学mooc平台,B站(本人常用)等等,主要是要找到适合自己的课程,并且坚持下去。最近发现了一个“数模乐园”up主更新了一期专题视频,特邀国赛一等奖得主推出国赛真题解析及获奖团队经验分享课程,讲述他们从省三到国一的数模逆袭之路。持续更新,配备完整版课件及源代码资料,感兴趣的同学可以去看看,直接点击下方小程序,即可直接跳转。

6,相关学习资源推荐

下面是小编给大家推荐一些常用的书籍,具体见下表:

打开网易新闻 查看精彩图片

在数学建模备战的过程中,理论知识很重要,但是实践出真知,实践才是检验学习成果的最好方法。

三,常见高含金量数模比赛

除国赛之外,以下为推荐的其他比赛:

1.MCM/ICM美国大学数学建模竞赛

报名方式:数模乐园

报名官网:http://www.nmmcm.org.cn/match_detail/23

2.华为杯中国研究生数学建模竞赛

3.深圳杯全国大学生数学建模竞赛

4.数维杯大学生数学建模挑战赛

5.数维杯国际大学生数学建模挑战赛

报名方式:数维杯官网

报名网址:http://www.nmmcm.org.cn/match_detail/24

四,比赛过程

1,拿到问题,三个人先独自分析,找出问题的关键,然后讨论交流,确定题目;

2,专注于确定的题目,通过搜索相关资料,确定问题意图,建立初步模型(如果一天后,仍然没有一丝进展,果断换题)

3,集全队之力,对初步模型进行修改,然后求解。

4,解决一问,就写一问的论文,与解题速度保持同步。

数学建模常见问题

1、数学建模国赛中的优秀论文如何阅读

数学建模入门和学习最快的方式就是去读优秀论文。我们需要从精读和泛读两个层次去读优秀论文,同时最好按一个专题去阅读论文,如连续性物理建模问题。首先是精读论文的过程,我们是要去弄懂在别人的论文中,他们的解题思路,他们的模型建立以及模型推导,甚至是去复现他们的代码;然后当完成精读过程后,我们针对这一专题,可以读一读其他的优秀论文,不需要我们一步步重现出来;最后将精读和泛读结合起来去看上三到四个专题,这样的过程下来,相信我们不管是对建模思路,还是编程、算法都有很大的提升。

2、建模国赛时套用模型好还是自己设计好?

首先数学建模不是套用模型,而是选择合适的方法去解决对应的问题。所以,我们首先需要去分析我们这个问题到底是一个什么问题?比如优化类型,然后是最大化还是最小化等,然后它的变量是离散的还是连续的?;然后我们需要对分析出来的问题寻找合适的方法,而这个方法也不是简单的套用模型,而是通过构建模型把原来一个朴素的描述变成一张数学表达的求解方程或者目标规划或者数学模型;最后我们使用一些对应的数学方法对它进行求解。总之,一开始拿到题目不要先入为主就说用啥啥模型,而是要分析问题,拆解问题,转化为数学表达式。

比赛总结

1、个人能力。

作为计算机的队员,肯定要承担一定量的编程任务,以及数学建模论文呈现的部分图标的绘制。所以,一定要熟练掌握Matlab或者Python其中一门语言,来应对数学模型的建立。除了编程语言,对Excel的一些方便操作也要学会使用,会快速很多。还有,编程任务是计算机学生需要承担的,但不是全都让计算机成员负责,理学院队友也对Matlab有课程学习,也要提供一些建设性帮助来编程。

2、团队合作。

数学建模是很考验团队合作的比赛,找队友很重要。不要只看成绩选队友,竞赛这种东西的准备看的是认真程度。另外,数学建模备赛是一个漫长的过程,所以队伍学习规划是很有必要做好的,一定要积极交流,敢于说出自己的想法。

3、养成良好备赛习惯。

例如,提前规定好几天看完一篇建模优秀论文,团队交流论文思路,学习编程模式。这样比赛才能临危不乱,在3天极其有限的时间,做出成果。

对数学建模常用算法要熟悉:

蒙特卡罗算法。该算法又称随机性模拟算法,也称统计实验方法。

数据拟合、参数估计、插值等数据处理算法。

规划类算法:线性规划、整数规划、多元规划、二次规划等。

图论算法:最短路、网络流、二分图等算法等。