数学建模是一项艺术,而不是一项技术
简单数学建模学习路线
📌 第一步:建立对数学建模的基本印象
完全没有经验的学生,可以先通过公开课和入门文章,对"什么是数学模型"形成一个基本印象。
- 🎓 看公开课 :清华大学公开课《数学模型------现实世界的理性视角》的前几课 "什么是数学建模",先对数学模型有个基本的印象。
- 📖 读入门文章 :也可以查看下面的三篇文章:
要对数学建模有个基本印象,不然比赛的那三天很难熬。
💻 第二步:准备好编程工具
代码方面,选择最适合自己的工具即可:
-
🐍 Python:如果 Python 用得比较熟练,可以直接使用 Python。
-
🧮 MATLAB:如果对 Python 的数据处理不太熟悉,可以下载一个 MATLAB。
- MATLAB 界面简洁,代码简单、接近自然语言,非常适合新生学习。
- 跟着菜鸟教程 或者MATLAB 基本语法指南 里的内容走一遍,基本就能上手 MATLAB 了。
-
🤖 AI 编程助手:现在是 AI 编程时代,常见的 AI 编程工具可以多准备几个,在比赛前配置好,多玩玩,多熟悉熟悉。
- 可以参考AI 编程助手完全指南,里面介绍了几种常见的 AI 编程助手,虽然这是很久以前的文章,但是里面的内容还是有用的。
现在编程基本只要会看、会改,会用AI写代码就能参赛了。
🧠 第三步:熟悉常见的数学模型和算法
- 📚 熟悉各类模型:数学模型可以分为:优化规划模型、微分方程模型、数据分析 / 统计模型、评价 / 决策模型等。至少做到知道每个模型都是解决哪一类问题的。这样当比赛看到题目的时候,能知道要使用哪一类模型。
- 🔍 熟悉算法适用场景:每一类数学模型都有多种不同的解法,算法本身没有优劣之分。但是每个算法适应的场景都不一样,熟悉每一类算法的适用场景,在比赛时候,能找到最合适的算法。
- 🎯 时间来不及就专攻一类:比如只看最优化和规划问题的算法。到比赛的时候,再结合网上的材料和 AI 来进行建模。
不理解每个模型和算法背后深奥的数学原理也没有关系。只需要对每个模型和算法的基本原理有个基本印象,在比赛中能找到对应的模型和算法就行。
📄 第四步:研读历年优秀论文
- 🏆 比赛前,把历年的优秀论文(可查看全国大学生数学建模竞赛论文展示 )找几篇出来看一看。
- 学习:要理解建模的思路,学习建模的每一个具体过程都做了什么。
- 分析:分析模型的假设是否合理。对模型的关键进行分析,看模型是否有创造性,结果是否合理。
- 研究和改进:模型是否有不合理的地方,是否有可以改进的地方。
📚 熟悉常用模型与算法
🎯 优化规划模型
核心是在满足约束条件的前提下,寻找使目标函数达到最优的决策方案。
- 适用场景:资源分配、路径规划、生产调度、设计优化、投资决策、运输问题等。
数学规划类
- 线性规划(LP):在满足一系列线性规则和资源限制(约束条件)的前提下,找到能让目标(如利润、效率)最大化或(如成本、风险)最小化的最佳方案
- 非线性规划 :约束条件至少有一个是非线性函数
- 整数规划(IP): 决策变量必须取整数值
- 0-1 规划(0-1 IP) :决策变量只能取0或1,用于解决二进制优化问题
- 动态规划 :将问题分解为更小的问题,通过重复求解子问题来构建最终解
智能优化算法
解决复杂、非线性、难以直接求解的优化问题
- 遗传算法(GA):求解传统数学方法难以处理的大规模、非线性、多峰且缺乏导数信息的复杂全局优化与搜索问题。
- 模拟退火(SA):基于概率的随机搜索启发式算法,专门用于在庞大且复杂的解空间中寻找问题的全局最优解
- 粒子群算法(PSO):连续空间下的中高维、非线性、非凸函数优化以及复杂的工程参数调优问题
- 蚁群算法(ACO):适用网络路由、车辆路径规划(VRP)以及旅行商问题(TSP)等基于图或网格结构的离散组合优化场景
典型真题
- 2023 A 题:定日镜场的优化设计
- 2024 B 题:生成中的决策问题
- 2025 B 题:碳化硅外延层厚度的确定
📊 数据分析 / 统计模型
从数据中挖掘规律,用于预测、分类、聚类,数据处理等。
- 适用场景:数据预测、分类识别、聚类分析、数据处理。
统计方法
- 相关分析:研究变量之间的相关程度,判断指标间是否存在依存关系
- 回归分析:建立因变量与自变量之间的数学关系式,用于解释与预测
- 假设检验:根据样本数据对总体参数的假设作出接受或拒绝的统计判断
- 主成分分析(PCA):通过正交变换将多个相关指标降维为少数综合指标
- 因子分析:从变量群中提取共性因子,用于降维与综合评价
聚类分类方法
从数据中自动发现分组结构,或依据已有类别对样本进行判别
- 层次聚类:按相似程度逐层分类
- 决策树:通过特征划分构造树形分类
- 随机森林:基于多棵决策树的集成学习
- 支持向量机(SVM) :通过核函数在高维空间 寻找最优分类超平面
- K-means :基于距离的划分式聚类算法
- 神经网络:通过多层非线性变换学习复杂模式,适合大规模数据
预测方法
- 回归预测:利用变量间的回归关系对未知样本进行预测
- ARIMA:基于历史时间序列预测未来趋势
- 灰色预测 :对"部分信息已知、部分未知"的小样本序列进行短期预测
⚖️ 评价 / 决策模型
对多个方案或对象进行综合评价、排序或优选,辅助决策。
- 适用场景:方案优选、综合评估、排序比较、风险评价、绩效评价、选址决策等。
主观赋权法
依靠专家经验或主观判断确定指标权重
- 层次分析法(AHP):将复杂问题分解为层次结构,通过两两比较确定权重
- 模糊综合评价:处理好、较好、一般这类模糊评价问题
客观赋权法
依据数据本身的离散程度与信息量确定权重
- 熵权法 :根据指标变异程度计算熵值确定权重,数据差异越大权重越高
综合排序法
对多指标进行标准化与聚合,实现方案排序优选
- TOPSIS:多方案优选,找最接近理想方案的对象
- 灰色关联分析:分析因素与目标之间的关联强弱
优化规划模型是最常见的数学模型,而且优化规划的相关算法在高中和大学课堂上也有涉及,对于一般学生来说是相对容易掌握的模型。如果你不是统计专业的学生,可以优先攻略优化规划方法再考虑其他模型。
🎓 数学建模应该具有的能力
进行数学建模需要具备以下五种能力,它们构成一条从基础到创造的递进链条:
💡 想象力
在已有形象的基础上,根据新的信息在头脑中创造出新形象的能力,是一种形象思维活动,可以通过细心观察、善于联想、勇于突破思维定势(如运用逆向思维、发散思维)等方式来培养。
👀 洞察力
透过现象看到本质,对复杂事物进行分析和判断的能力,需要集中注意力、刻苦工作、勤于思考,适应和创造浓厚的学术环境,培养对科学研究敏锐的"感觉"。
🔗 类比法
由一类事物具有的某种属性,推测类似事物也具有这种属性的推理方法,因为同一个数学模型可以描述不同领域的对象,所以联想、类比是建模中常用的方法。当然,类比的结果是否正确,需要由实践来检验。
📚 较广博的数学知识
对于已经学过微积分、线性代数、概率论等基础课的大学生来说,还需要了解数值计算、数理统计、数学规划、数值模拟等学科中那些直接与应用相关的内容,如怎样用这些方法建模、怎样在计算机上用数学软件实现、怎样解释模型求解的结果等,并不需要深入了解这些学科的数学原理。
🔍 深入实际调查研究的决心和能力
与埋头撰写纯数学论文不同,做数学建模首先要有到实际中去的决心和勇气,并且善于调查研究,掌握第一手材料。
🚀 如何提高数学建模能力
知道了应该具备哪些能力之后,更重要的是在实践中逐步提高这些能力,主要通过以下三个途径。
📖 案例研究:学习、分析、评价、改进和推广
案例研究是学习数学建模课程的主要方法之一,这与法学、管理学的学习方法有些相近。学习课堂上讲的和教材里写的别人做过的模型,不能听过、看过就算学了 ,应该通过学习 、分析 、评价 、改进和推广 几个步骤来逐步深化:
- 学习:首先是弄懂它,理解模型的思想和方法;
- 分析:再分析它为什么这样做,哪些地方是关键;
- 评价:评价有什么优缺点;
- 改进和推广:最后,如果可能的话,去尝试改进、推广它。
对具体的建模案例,还可以从以下角度做深入研究:
- 对模型假设进行分析
- 对建模的关键进行分析
- 对建模过程做深入研究
🏆 参加数学建模竞赛,做自己的模型
学习数学建模,如果只停留在学别人的模型上,是远远不够的,一定要亲自动手,踏踏实实地做几个实际题目。参加数学建模竞赛为同学们通过亲手做课题,更快地提高用数学建模方法分析、解决实际问题的能力,搭建了广阔的平台。
🔁 赛后继续
应该结合三天的参赛,总结一下整个竞赛准备过程的收获及经验教训。如果有兴趣和精力对赛题作进一步钻研,或者对赛题进行扩展研究,可以寻求教师和其他同学共同参加,更希望通过竞赛激发同学参与数学建模相关实践活动的兴趣。
作者:majorArcs
原文链接:https://k-hengzhou.github.io/posts/MATH-MODELING-SECOND-COURSE/