【数学建模】基础知识
- 第 113篇 -
Date: 2025 - 07 - 22
Author: 郑龙浩(仟墨)
一 数学建模基础介绍
1 数学建模基本了解
(1)原型与模型
- 原型就是原始的模型
- 模型就是为了某个特定的目的将原型的某一部分信息简缩、提炼构造的原型替代物。说白了就是缩小的模子
举例说明:汽车设计图就是模型,汽车就是原型
(2)数学建模是什么?
数学建模的书比较多,但是很难深入研究,看网课效率更高
目前市面上的资料都是由很多缺陷的
晦涩难懂,理论推导为主
数学建模是个工具,根本无需知道原理,只需要知道如何使用工具即可,无需了解每个工具的原理
经验老套,说白等于白说
通用性差,难以培养思维
大神的专属,小白很难懂
数学建模是利用数学方法解决实际问题的一种实践。即通过抽象、简化、假设、引进变量等处理过程后,将实际问题用数学方式表达,建立起数学模型,然后运用先进的数学方法及计算机技术进行求解。简而言之,建立数学模型的这个过程就称为数学建模。
用通俗的话来解释就是
(3)对数学建模的误区
-
高大上,入手及其困难
-
学习时间长,一年才能入手(实际上三个月就能准备差不多)
-
人难找,队友飘忽不定
-
没啥用,拿奖万事大吉
数学建模可以为以后科研打好基础(比如考研以后的论文)
-
资料难,整理及其不易
-
背景很多,高数线代全都有
(4)你为何成不了数学建模大神
-
没能形成一套完整的建模思维
每个算法适合于哪个模型,哪个课题
-
没能组建属于自己的模型库
最好自己构建一套算法库:一些算法,代码,应用案例
-
没能找到两个固定的且可靠的交流伙伴
- 一个人带不了两个人,三人都要有一定的支持
- 不是每个队员都会建模和编程
另外两个人可以去查资料,去专门写论文 - 队友之间要互相合作,而非互相争吵必须听谁的
-
没能学会各类通用的获奖技巧
-
没能突破自己原有的学术认知
-
没能端正吃苦耐劳的积极态度
比赛的时候会经常熬夜,比赛期间十分痛苦
-
没能下定发自内心的集体荣誉
-
没能下定发自内心的集体荣誉(8)没能树立真诚友好的伙伴理念
-
没能制定科学完善的建模时间
-
没能培养乐观向上的参赛心态
(5)数学建模举例
-
请为我预测一下明天的气温?(环境类)
-
请帮我分析一下理财产品的最优组合(财经类)
-
请帮我评价一下这项政策的优缺点(实证类)
-
请帮我对北京市的土地利用情况进行合理的划分(城市规划类)
-
请帮我预测一下小麦的产量(农业类)
-
请帮我找出标枪运动员最佳的投掷点(力学类)
几乎所有的行业都要用到数学建模
很多事情无法直接凭借主观经验获取,需要用科学的方法进行解算,此过程便是数学建模
(6)数学建模国赛是什么?
每年举办一次
目前数学建模比赛主要分为下面几个档次:
-
一级(最高一级):美赛、国赛
-
二级:电工杯、APMCM、MatorCup、网挑赛(推荐参加)
-
三级:五一赛、华东杯、华中杯、小美赛、数维杯、中青杯
主要是一些地区赛为主,或者是刚举办的比赛
2 数学建模各模块备战及组队策略
(1)数学建模一般模块(一般步骤)
基本都是下面这些步骤
-
模型假设
如果不假设直接预测的话,可能效果并不是那么好,分析的内容并不是那么全面,有一定的瑕疵
假设:各种万一什么什么之类的
针对问题特点和建模目的
作出合理的、简化的假设
在合理与简化之间作出折中 -
建立模型
- 尽量不要先自己构建模型
- 当自己构建的模型效果不好,无法实现某种功能的时候,再构建自己的模型
- 不要自己死钻研,应该先去知网等网站去查找资料,否则搞了半天可能搞出来的东西是早就研究过且可以查到的
用数学的语言、符号描述问题
发挥想像力
尽量采用简单的数学工具
(2)数学建模的全过程
现实对象的信息 | – 表述(归纳)–> | 数学模型 |
---|---|---|
↑(验证) | ↓求解(演绎) | |
现实对象的解答 | <– 解释 – | 数学模型的解答 |
-
表述:根据建模目的和信息将实际问题“翻译”成数学问题
不要把题目的问题直接复制到论文里,这样的话是很难获奖的
-
求解:选择适当的数学方法求得数学模型的解答
利用
matlab
或**计算机语言
** 来求解 -
解释:将数学语言表述的解答“翻译”回实际对象
求解以后进行解释,告诉这个解到底是好还是坏,能够得到什么信息,浅层的是什么,深层的是什么
-
验证:用现实对象的信息检验得到的解答
验证前面求出的结果是否准确,对模型进行一定检验
实践 –> 理论 –> 实践
(3)完整的数学建模论文内容
-
1个题目(点睛之笔)
-
摘要、关键词
评审获奖往往就看摘要,摘要决定获奖与否
评审如果觉得摘要如果可以传达出基本的信息,可以让他获奖了,就可以是三等奖以上了
-
问题重述
将题目中的问题转换成一个数学语言来表示的问题
-
问题假设
对模型建立一个合理的假设,可以提高模型准确率
-
问题分析
这个问题准备怎么做,准备怎么求解
-
符号说明
为了防止一些通用的符号或者常见的符号在论文里表述一遍的话,否则啰嗦
-
模型建立
通过一些数学符号或公式建立某个功能的数学模型
-
模型求解
利用计算机语言或者其他的方法进行求解的过程
-
模型优缺点评价
评价模型优缺点,它是否经得起检验
-
参考文献
参考标准文献的写作格式
(4)如何分模块学习?
-
数学建模的各模块备战是非常重要的,只有进行模块化备战,才能掌握各模块应该在比赛的时候如何去做,不至于临场手忙脚乱,从而逐个击破,斩获大奖!
-
题目备战:掌握固定模式即可
-
基于
_____
模型的_____
研究与分析补充的时候一般只需要写一个论文中写的最多的最关键的一个模型就行了,不要太冗余;或者写一些诙谐幽默的题目,或者一些范文的句子
Eg: 基于灰色预测模型的小麦产量的研究与分析;基于线性规划….
-
摘要备战:总结归纳能力,通过看高水平论文 或优秀论文掌握
可以多看一些优秀的论文
切忌大篇幅的摘要,摘要一般不超过整个页面的四分之三
-
问题假设:明确假设点是关键,只要对我们的结果有影响,但又是小概率事件;或者对结果有影响,但难以计算获取这类的
-
问题分析:动脑能力是关键,先将问题进行定性,然后说明如何求解这类问题
-
符号说明:主要说明文中出现了哪些符号,需说明清楚,用希腊字母
-
模型建立:讲常见模型进行归纳整理,形成算法库
-
模型求解:对编程语言熟练掌握,如
Matlab, Lingo, Python
(Python
比Matlab
好用多了) -
模型有缺点评价:对模型的不足提前掌握,并对应用中不足的地方进行阐述
每一个模型都有自己的优点和缺点,不要到最后再去总结模型的有缺点,要提前总结好模型的有缺点
(5)备战准备什么?
- 必须找好两个靠谱的队友,定期组织研讨和交流
- 必须每三天看一篇优秀的数模论文,重点看摘要和问题分析及建模过程
- 必须明确三人的分工,确保写作/建模/编程 团队都具备
- 必须清晰的明白建模各部分到底应该写什么
- 必须对所有常见算法进行系统的学习,明确算法用途和实现过程
备战建议
- 每天拿两个小时学习数学建模:按照 算法、编程(Matlab、Python)、写作(整理优秀论文对语言进行学习)、排版(LATEX、Word软件)的顺序进行
- 每人每三天阅读完一篇获奖优秀论文,并和队友沟通分享经验每半月适当开一次总结会,发表自己的学习收获和下一步的工作中心
- 每月进行一次全真模拟,寻找老师进行论文评估
(6)团队中队长的作用?
- 训练中积极组织、安排、监督大家的日常学习和讨论
- 比赛前做好运动员和准备工作,如确定比赛场地、吃饭问题和休息问题
- 比赛开始后,安排好大家任务
- 比赛结束前,认真阅读比赛规则,防止出现明显的Bug
- 比赛结束后,组织队员做好比赛总结及改进
(7)团队如何协作?
首先,队长事先分配好每个人的任务,为了保险起见,建议每个人任务不要太单一,可以以定期组织讨论的形式相互传授学习经验,确保比赛时的完备性
每个人任务尽量不要单一,比如有一个人突然有事情的时候,来不了了,另外两个人也要会
然后,比赛开始后,三人应首先集中力量准备一套切实可行的思路,不可盲目直接建模
因为如果第一天上午随便选一个进行建模的话,第二天突然发现第二问第三问不会,但是此时再换题,已经晚了,切忌来回换题
一旦敲定思路,论文写作成员要尽快寻找该模型所涉及到的原理知识,编程人员及时调试对应代码,建模人员要及时找出赛题与该模型的结合点
最后,建模与论文撰写应该是同步的,队长要做好信息汇总与结果结论反馈工作,确保不会出现信息延迟等失误
3 数学建模的6个步骤
用数学模型解决实际问题
(1)模型准备
了解问题的实际背景,明确其实际意义,掌握对象的各种信息。以数学思路来解释问题的精髓,数学思路贯穿问题的全过程,进而用数学语言来描述问题。要求符合数学理论,符合数学习惯,清晰准确。理解实际问题后,搜集资料,快速阅读和理解参考文献。
大白话说的话就是在建模之前,做好需要准备一切,比如搜集资料,了解问题背景
(2)模型假设
根据实际对象的特征和建模的目的,对问题进行必要的简化,并用精确的语言提出一些恰当的假设。对涉及到的变量、?变量的单位、相关假设进行定义,用表达式将其表达出来
研究的问题往往比较复杂,所以无法对所有的条件都进行查找,所以可以对一些短期内无法进行研究的东西进行约束,这样研究起来就能简单点
(3)模型建立(最重要)
在假设的基础上,利用适当的数学工具来刻划各变量常量之间的数学关系,建立相应的数学结构。选择建模方法,由题目得到的关系式,将目标转化为某一变量的函数。
利用假设和问题本身,用数学语言来建立模型,这个模型可以用来求解这个问题
(4)模型求解
利用获取的数据资料,对模型的所有参数做出计算(或近似计算)。推导模型的公式,将数学表达式变形为建模方法的标准形式,通过限制条件,对这个模型进行求解。此时可以编程用数学软件进行计算。
数据资料很重要,没有数据资料的话,很难建模,往往需要利用**
Matlab
或者Python
**进行求解
(5)模型分析
对所要建立模型的思路进行阐述,对所得的结果进行数学上的分析。包括误差分析、数据稳定性分析等。
包括结果的分析,对模型本身的分析,分析一下说明地方做的好,什么地方做的不好
(6)模型检验
用非技术性的语言回答实际问题。将模型分析结果与实际情形进行比较,以此来验证模型的准确性、合理性和适用性。如果模型与实际较吻合,则要对计算结果给出其实际含义,并进行解释。如果模型与实际吻合较差,则应该修改假设,再次重复建模过程。
若模型不好,就要改进模型
4 如何高效备战数学建模比赛?
(1)建模员
学习顺序:
基础知识
高数什么的
算法知识
优秀论文
知道算法怎么和论文结合出来的就要看论文
需要系统掌握各类模型,做到
-
该模型的主要功能是什么?
-
该模型的适用场景是什么?
什么算法适合什么场景
-
实现该模型需要哪些条件?
数据需要哪些条件,哪些参数
-
模型有哪些缺点或不足
对模型进行有缺点分析的时候可以用的到
模型有哪些缺点
-
可以做出那些改进?
(2)程序员
学习顺序:
编程知识
Matlab
或Python
常用模型
还要会对一些优秀论文中的模型进行调试
优秀论文
需要掌握Matlab/Python做至
一个团队中不要出现两个程序员
-
能够数量掌握编程基础
能够熟练的掌握数学建模的编程基础,熟练相关的语法函数
-
能够实现各类常见算法
对于算法必须非常的熟悉,特别是关于数学建模的一些相关的算法
-
能够对程序Bug做出改正
对于程序中的bug进行修改
-
能够熟练利用编程或软件
Matlab
或者Python
-
制作精美图片
图片对于数学建模的论文非常重要
(3)写作员
学习顺序:
写作要求
模型分析,模型假设应该怎么写学术语言
不要用大白话来写作
排版技巧
借助模拟赛题进行模拟,模拟就可以提高排版技巧
需要熟练撰写论文各模块内容
(很重要)论文写的好坏,直接影响获奖的好坏!!!!!!!!!!
-
能够掌握学术语言规范
必须掌握学术语言,切忌使用大白话(比如我们团队怎样怎样,太Low)
-
明白论文各模块写作要求
论文当中一定要有学术语言,一定要知道如何写作
-
能够对论文进行排版
规范排版
-
若撰写英文论文,需要能翻译并检查论文错误
可以用AI进行查找错误等等
5 数学建模的赛题类型
一共分为四种赛题类型
(1)预测类
① 基本介绍
-
指通过分析已有的数据或者现象,找出其内在发展规律,然后对未来情形做出预测的过程。
-
根据已知条件和求解目的,往往将预测类问题分为:小样本内部预测,大样本内部预测小样本未来预测,大样本随机因素或周期特征的未来预测,大样本的未来预测。
小样本内部预测:比如一个班的同学,已知身高和体重的数据,利用身高和体重对性别进行预测
大样本内部预测:比如样本量非常的大,已知第1年到第10年的数据,通过前十年的数据预测第11年的数据(比如对股市做预测,对气温做预测,对未来的信号做预测)
② 解决预测类赛题的一般步骤
比如预测未来十年的问题
绝对不是建立新的模型!!!而是选择一个合适的模型
预测往往有误差在里边,我需要看一下这个误差大不大,如果误差超过三倍的标准差的话,这个误差就是不好的,需要修正预测结果,最终给出正确的预测结果
- 确定预测目标;
- 收集、分析资料;
- 选择合适的预测方法进行预测;
- 分析评价预测方法及其结果;
- 修正预测结果:
- 给出预测结果
③ 预测的方法
- **插值与拟合方法:**适合小样本内部预测
- **回归分析法:**适合中、大样本内部预测
- **灰色预测方法:**适合小样本的未来预测(有固定趋势)
- **时间序列方法:**适合中、大样本的随机因素或周期特征的未来趋势未来预测
- **神经网络方法:**适合大(特大)样本未来预测
(2)评价类
① 基本介绍
评价类基本上没有标准的答案,没有标准的体系,需要我们阅读各种资料,进行构建
- 指按照一定的标准对事物的发展或者现状进行划分的过程在数学建模中题点可体现在对生态环境社会建设,方案策略等进行评价。评价类赛题往往没有明确的指标体系和评价标准,往往是需要查阅各类资料进行构建的,因此评价类赛题也没有明确的答案
- 赛题分析: 解决评价类赛题的关键是指标体系的构建,构建完评价体系后在选择合适的评价方法即可,体系建立应秉承全面,准确,独立的三要素
② 解决评价类赛题的一般步骤:
-
明确评价目的
比如水资源环境安全的目的就是,评价某一个地区的水环境资源环境是否安全
-
确定被评价对象
比如,山东、河南、江苏的水环境怎么样
-
建立评价指标体系
建立合理的评价体系,比如针对水中的含硫量,含氧量,含煤量建立一个合理的评价体系
-
确定各指标相对应的权重系数
比如,含硫量的权重系数是什么,含氧量的权重系数是什么,含煤量的权重系数是什么
-
选择或构造综合评价模型
比如,选择合适的方法对长江的水质进行评价,就需要建立一个合适的评价指标体系
-
计算各系统的综合评价值
-
给出综合评价结果
(3)机理分析类赛题
① 基本介绍
- 这个类型的题目前在国赛或美赛中出的比较多
- 并不是一个传统的数学建模题目,需要强大的知识储备,往往需要很强的逻辑分析能力,才能来做这道题目
- 所机理分析是根据对现实对象特性的认识,分析其因果关系,找出反映内部机理的规律。在求解机理分析类问题时首先需要探寻与问题相关的物理,化学,经济等相关的知识,然后通过对已知数据或现象的分析对事物的内在规律做出必要的假设,最后通过构建合适的方程或关系式对其内在规律进行数值表达
(4)优化类赛题
① 基本介绍
- 国赛非常喜欢考,基本上每一年都考
- 有一定的约束的情况下,如何让结果最优的一个过程
- 比如,一个城市当中,公交车数量是优先的,我如何安排线路,让我的盈利最大,且拉更多的人(比如老人)。也就是可能不只是一个优化
-
指在现有现有条件固定的情况下,如何使目标效果达到最佳。如在一座城市公交车公司拥有的公交车数量是固定的,问如何安排线路能够使盈利达到最高。优化类问题往往需要分析三个关键因素:目标函数,决策变量和约束条件,三者往往缺一不可。
- 目标函数:需要建立目标函数进行求解
- 决策变量:比如线路的安排
- 约束条件:比如公交车数量是固定的
-
赛题分析:解决优化类赛题必须知道优化的目的,约束的条件和所求解的关键变量,需要有较强的编程能力和赛题分析挖掘能力
② 解决优化类赛题的一般步骤
-
确定优化目标;
-
确定决策变量;
-
构建目标函数;
-
根据已知条件构建约束条件;
约束条件一般包含一已知变量
-
选择合适的方法求解目标函数;
比如使用编程来求解目标函数
-
给出优化结果。