0基础小白,如何入门数学建模?

“单纯的看书、听课只会让人昏昏欲睡,实战中的紧张感才会让人效率倍增,因此,实战是最好的学习。”

很多同学第一次接触数学建模,感觉无从下手,那么零基础的小白该怎样入门数学建模呢?

先说答案:0基础小白入门数学建模最好的办法,就是直接参加竞赛。

遇到不会的,去百度或CSDN里搜,去翻书,现学现用,瞎编也要把论文编出来。放低心态,告诉自己不追求拿奖,只为练习。

这样做几次就入门了。大一大二往往是炮灰,拿奖一般是大三时的事了。

看一些高赞回答,给你罗列了一堆书单、课程,送了你一堆资源。

但是相信我,你压根看不了几页(真的!)

只需要平时认真上课,学好高数、线代、概率论,以及计算机专业的数据结构。

学好这四门课,你就能基本吃透数学建模!

本文将从以下几点详细讲述小白如何入门数学建模:

1、什么是数学建模竞赛?

2、平时该怎么学数学建模?

3、数模论文包括哪些内容?

4、参加比赛前需要做哪些准备?

5、关于数模的常见错误认识

1 什么是数学建模竞赛?

数学建模竞赛的基本要求:

不超过三个人的队伍(大佬一个人都行),在有限时间内(三或四天),从多个题目选1个,建立数学模型并求解问题,最终提交一篇包括思路、模型、解题过程和结论的完整论文。

简单来说,根据题目,交一篇解决问题的论文。

数学建模竞赛的特点:

  • 三人组队:数模不是单打独斗,合作很重要
  • 包罗万象:类似数学应用题,涉及各行各业的专业知识
  • 时间有限:通宵是家常便饭,红牛是深夜加餐
  • 完整论文:有模型、有算法、思路清晰、结论明确的学术论文
  • 学术竞赛:认可度高,是获奖者的科研学术能力的体现

都有哪些比赛?

等级最高的就是国赛美赛。国赛(高教社杯全国大学生数学建模竞赛)每年9月份举办,2020年共有45680队、13万多人报名参赛;美赛(美国大学生数学建模竞赛)在每年2月份左右(往往过年前几天)举办。

此外还有五一赛、电工杯、数维杯、mathorcup等省级竞赛。

如何参赛?

关注校内的数学建模协会/社团,各种竞赛报名都是由协会组织的。有些学校需要经过选拔才可以报名参加国赛和美赛,所以需要多关注协会的消息。

一定要保持好心态,感觉太难了做不出来也不要崩溃放弃,更不要想着再也不参加了。这只是比赛,拿不到奖又能怎样?大一大二往往都是炮灰,一般都是参加了多次比赛之后积累经验,到大三了拿大奖。

获奖有何用途?

一般高校都有“竞赛保研”制度,国赛一等奖可直接获得保研资格;在保考研/找工作时,简历里简述获奖论文也是亮眼的加分项。

2 平时该怎么学数学建模?

1、不要怂,直接淦

不用平时刻意去看书,直接参赛。因为平时看资料自学的效率是非常低的,往往看不到一页就满头雾水,进而不想看了。只有在比赛时的紧张感才会让你效率倍增。

无论是什么比赛,都报名参加,不会做不要紧,现学现用,是在学不会就照搬资料里的内容(稍微改改),编论文也要编完交上去。多做几次就能找到感觉了。

2、基础知识:高数、概率论、线代、数据结构

一般大一大二很难拿大奖,好好上课,把高数、概率论、线代学好;有空学学编程,推荐python或matlab;此外数模中的很多模型和算法都是数据结构中的内容,把这门课学好后基本就会数模了。

3、文献检索

另外学会文献检索也是很重要的,数模竞赛题目往往具有一定的专业性,需要学会查到相关领域的论文并加以利用。

4、绘图、排版

更进一步,学会绘图。建议从excel作图入手,再学习matlab和python绘图,有精力可以学更专业的origin

排版很重要,想必当年高中语文老师都强调过作文的书写,如果字写得差,内容再好别人也不愿看;数模论文同理,如果排版差,内容写得再好别人也不愿细读。

3 一篇数模论文,包括哪些内容?

形象地说,找一本大学物理课本,其中的某一节基本就是一篇数模论文,其中的推导公式就是模型,求解过程就是算法,得出的定理就是求解结果。

当然数模论文还有自己的套路。一篇完整的数模论文,包括摘要(最重要)、问题重述、模型假设和符号说明、模型建立与求解(最长)、模型的优缺点与改进方法(不必要)和附录。

3.1 摘要

摘要部分是最重要的!

摘要部分是最重要的!

摘要部分是最重要的!

摘要就是把整篇论文的内容梗概地写出来,不宜太短或太长,一般控制在2/3页到1页。好的摘要是成功的一半!

要让读者看完摘要,就知道整篇论文研究的问题、用了什么方法、求得了什么结果,以及每一部分的大致步骤

因为评阅老师在看论文时,会先读摘要,如果摘要里提到的模型/算法/思路引起老师兴趣,才会去后文找这部分详细的文字,其他部分都是略读,评分基本就出来了。如果摘要都写的云里雾里,老师是不会耐心去读全文的。

摘要整体框架:
本文针对XXXX问题,运用XXXX方法,建立XXXX模型,通过XXXX求得XXXX,较好地解决了本问题。

针对问题一,首先……;其次……;同时……;利用……;最终求解出XXXX;

针对问题二,……

本文所运用的模型优点有XXXX,但同时具有XXXX的缺点。可考虑XXXX来进行改进。

关键词:XXX XXX

其中一定要描述清楚建立的模型、使用到的算法求得的结果,不必写原理,但一定要讲清楚解决问题的一步步过程和特点。

3.2 问题重述

这部分并不重要。只需要将题目简述一遍即可,不需要把题目中的具体解释和数据等写出来。

3.3 模型假设与符号说明

好的模型假设能帮你事半功倍。因为赛题都是取自现实中的实际问题,但在三天时间内不可能完美解决,因此模型假设就是将问题合理地简化

例如2015年国赛A题是关于太阳下物体的影子长度变化。地球自转一天24小时影子长度会变化,但现实中地球每时每刻都在公转,一天内公转也会影响影子长度。

但是一天中公转不超过1°,带来的影响远远小于自转,而考虑公转的话会大大增加难度。因此可以做出合理假设:因地球一天内公转角度不超过1°,则假设地球一天内太阳直射维度不变。

符号说明则是将论文里用到的重点变量罗列出来,这一点可以参考一些物理课本上类似的部分,一般是具有全局变量意义的才在符号说明里列出来,局部变量就不必了。

3.4 模型的建立与求解

这一部分就是正文了,字数最多,有文字有图。第一次参赛的小白可以看往年的获奖论文,照着获奖论文的格式去写。

模型的建立:究竟什么是模型?

举一个简单的例子:

最简单形式:一组公式,和对公式中每个变量的解释,就是一个模型。

当然在实际做题过程中,我们往往需要先查阅资料,照搬资料写出一个简单的模型,再根据题目中的约束条件去一步步修改模型,把题目中的变量代入模型中去。

如果能画出形象的图来展示模型的思路就更好了:

模型的求解:算法就是求解方法

例如上文我们所建立的最短路径模型,该如何求解呢?查阅资料可知单源最短路径的常用算法是Dijkstra算法,那么模型的求解过程可以这样写:

算法原理:(以下内容可以百度或从常见资料里找到)

  • 从起始点开始,将起点放进一个集合N中,查找所有与其相连的节点及到达下一节点的花费,并且记录下来;
  • 接下来选择花费最短的一条路径,到这条最短路径指向的节点去,把这个点也放进集合N中,然后查找所有与这个节点相连的其他不在集合N中的点,并且也计算到达下一点所需要的花费并记录下来。保存花费最小的一条记录;
  • 继续选择花费最短的路径重复执行第2步,一直到所有的点都已有了最短路径,完毕。

代入题目数据:
题目中究竟哪个点是起点,哪个是终点,每条路径的权值是多少,是否有负值,是否符合Dijkstra算法的使用条件,都要一一写清楚。

求解

一般是使用matlab或python、C++等编程求解,有些数据题使用excel反而更简单,注意这些都是工具,使用什么工具不重要,也不必在论文里细说,怎么好求怎么来。具体的代码要放在论文最后的附录部分,不要写在正文。

写明结果:

求解结果是哪一条路径,该路径是否符合题目要求,若不符合又该如何改进模型,或是否该使用其他算法。最好使用图或表格的形式展示结果,让读者能形象地看到结果。作图和求解过程一样可以使用任何工具,而有些示意图使用PPT反而更简单。

关注微信公众号:数学建模BOOM,回复“群”,在群文件有各种数模资料;

b站up主:数学建模BOOM,不定期发布数模教程视频;

要注意一点:并不是针对题目的每一问都要建立一个模型。如果每小问之间具有相似性、仅仅是增加了约束条件的话,完全可以全文建立一个模型,再针对每一小问进行模型改进。当然若每小问之间区别较大则需要单独建立模型。

例如2021年mathorcup的D题前两问:

可以看到,问题1和问题2基本一样,只是问题1要求生产5种卷料而问题2要求全部卷料,仅仅是目标变量变了而已,因此可以建立一个模型解决这两问,在第2问时更改目标函数即可。

3.5 模型的优缺点与改进方法

注意这一部分不是必须的,可以简单分析下前文模型的优缺点,若没有改进方法也可不写。

一般该部分可以结合查到的文献,分析正文中模型常用在什么哪种问题,又与本文所求解的问题有何区别,以及本文求解的问题具有哪些特别的约束条件,在该约束条件下模型有哪些缺点或优点,针对缺点该如何改进、针对优点又该如何推广(简述即可)。

3.6 参考文献

该部分一定要格式规范!

若要引用一篇文献,可以在百度文献中搜索论文标题,点击引用

就可看到常用格式的引用,根据比赛要求的格式,点击复制即可。

3.7 附录

附录里要写出正文中求解时用到的代码。注意竞赛官方的要求,有些竞赛要求必须把用到的代码写到附录而且会查重,有些竞赛则不要求。

一定不要把网上搜到的代码直接复制粘贴!即使这些代码可以直接用也不行,至少也要改改变量名!曾出现过参加国赛,在省内被推到国奖,但查重发现代码是复制的,结果被取消获奖并官网通报的先例。

4 参加比赛前需要做哪些准备?

1、组队

数模竞赛不是单打独斗,需要队友的分工与合作。一般最开始是和室友/同学/男(女)朋友(如果有的话)组队,建议同年级的组队。

什么都不会不要紧,态度认真即可。因为自己也什么都不会,菜鸡之间组队就不要挑三拣四了。

如果参加比赛时发现队友态度消极、划水不靠谱、遇到点难的就放弃,下次比赛就换队友。多参加比赛才能找到长期合作靠谱的队友

2、休息

数模竞赛时间有限,不仅靠脑力还要靠体力,最后一晚基本要通宵。赛前休息好,养精蓄锐,同时竞赛第一天晚上一定不要熬夜。

3、关注竞赛官方消息

一定要关注竞赛官网以及官方的QQ群,注意论文提交事项,以及其他竞赛要求,不同的比赛还是有所区别的,每年都会有人因为各种小问题而遗憾。

4、队友间沟通

有些竞赛可能从周四、周五开始,队友可能有课或其他事情,要赛前商量好什么时候一起讨论、一起做题,否则可能会闹得不愉快。

5 关于数模的常见错误认识

1、求推荐数模相关的书?

没有人能在从未参赛的情况下看完一本数模资料书(确信)。书是工具,不必在平时去看,比赛的时候需要用到具体的模型再去翻书。

2、多看往年获奖论文?

直接看论文是看不懂的,而且会打击自信,还没入门到放弃。只需要在参赛时找一找往年获奖论文有没有类似问题,当做文献来看。

3、如何学习Matlab等软件或python编程?

编程只是工具,不必刻意去学。如果本科课程里有编程最好,没有的话可以优先考虑excel、matlab或python。注意工具只有哪个合适、没有哪个更好,不必执拗于先学哪个。

4、竞赛期间三人分工,分别负责建模、写论文、编程?

完全错误!正确的做法是每人会什么就做什么。可能有人会第一问的模型和第二问用到的算法,或者有人擅长表述第一问的模型但不懂第二问的算法,强行分工只会使效率更低。

每个人会哪些就做哪些,而不是死板地按照建模、写论文、编程来分工。如果都感觉自己什么都不会,那就一起商量出个模型,再每个人都分配些任务去完成。

猜你喜欢

转载自blog.csdn.net/qq_37345758/article/details/119030664
今日推荐