建模入门学习
建模十大算法
- 蒙特卡洛算法:又称随机性模拟算法,通过计算机仿真来解决问题的算法,同时可以通过模拟来检验自己模型的正确性(注:这个可以在我们没有数据的时候使用,类似于19年数学建模大赛的c题)
- 数据拟合、参数估计、插值等数据处理算法:在比赛中数据处理通常是模型最开始的一步,我们需要先将数据处理成我们需要的格式、量纲来建模
- 线性规划、整数规划、多元规划、二次规划等规划类问题:建模中大多数问题都是最优化问题,很多时候都可以使用数学规划算法来解决,一般使用lingo、lingdo软件实现(注:主要是来解决分配问题、选址问题等)
- 图论算法:有很多种类,最短路、网络流、二分图等算法
- 动态规划、回溯搜索、分治算法、分支定界:常用的基本算法
- 最优化理论的三大非经典算法:模拟退火法、神经网络法、遗传算法(这是目前我们需要去学的最火热的算法)
- 网格算法和穷举法(基本无用)
- 一些连续离散化方法:将连续离散化,类似于将连续的数据分段,变成离散的
- 数值分析算法:基本上就是利用numpy库进行的算法
- 图像处理算法:对于图像识别,边缘检测等算法,比赛开始向图像处理算法靠拢
数学建模步骤
- 抽象、简化问题,明确变量和参数
- 根据某种定律建立变量和参数间的数学关系
- 解析或近似的求解该数学问题
- 解释验证
- 实际应用
数学建模所需要的方法和知识
方法
解析几何、代数方程、微积分、微分方程、差分方程、概率统计、层次分析、插值与拟合、综合评价、优化方法、数据处理与计算
排队论、对策论、决策论、模糊评价
知识
高等数学、微分方程、运筹学、线性代数、概率统计、数值计算
数学规划模型
简单的说就是将经费等需要被分配物品合理分配。
模型划分
线性规划模型
类似于,有a,b,c三种类型有限原料,不同搭配变成三种A,B,C三种产品,三种产品的利润不同,什么情况下利润最大
举例
我们设定 x 1 , x 2 , x 3 x_{1},x_{2},x_{3} x1,x2,x3为最终产品生产量(决策变量,对结果直接影响的变量),因此我们可以得出一下目标方程(利润最大化、成本最小化,变现为变量的函数)和约束条件(资源、工期等,变现为决策变量的一些等式或者不等式),求z的最大值,以及三个不等式。
总结:
线性规划问题就是在满足一些线性等式和不等式组成的约束条件下,求决策变量的一组具体取值,是的目标函数的最大或最小
注:线性即为目标函数为线性方程式(就是没有幂)
整数规划模型
整数规划模型即决策变量只能是整数
非线性规划模型
非线性规划模型即约束条件或目标函数是非线性的
灰色预测模型
灰色预测法是一种对含有不确定因素的系统进行预测的方法,对在一定范围内变化,与时间有关的灰色过程进行预测
灰色时间序列预测
用观察到的反映预测对象特征的时间序列来构造灰色预测模型,预测未来某一时刻的特征量,或达到某一特征量的时间
畸变预测
通过灰色模型预测异常值出现的时刻,预测异常值什么时候出现在特定时区内
系统预测
通过对系统行为特征指标建立一组相互关联的灰色预测模型,预测系统中众多变量间的相互协调关系的变化(就是预测两种联系之间的减弱或者加强,例如某三个因素对于某一结果的影响程度的增强或减弱)
拓扑预测
将原始数据做曲线,在曲线上按定值寻找改定值发生的所有时点,并以该定值为框架构成时点数列,然后建立模型预测该定值所发生的时点(就是在时间序列中对某一事件发生的时间进行预测)
数模入门与常用算法汇总
数据处理问题
- 插值拟合:主要用于对数据的补全和基本的趋势分析
- 小波分析,聚类分析(高斯混合聚类,K-均值聚类):主要用于诊断数据异常值并进行剔除
- 主成分分析、线性判别分析、局部保留投影:主要用于多维数据的降维处理,减少数据冗余
关联与因果
- 灰色关联分析方法(适用于样本点个数较少时)
- Superman或kendall等级相关分析
- Person相关(适用于样本点的个数比较多时)
- Copula相关(比较难,金融数学,概率密度)
- 典型相关分析(因变量,自变量,各自变量组相关性比较强,问哪一个因变量与哪一个自变量关系比较紧密)
分类与判别
- 距离聚类(系统聚类,经常使用)
- 关联性聚类(经常使用)
- 层次聚类
- 密度聚类
- 其他聚类
- 贝叶斯判别(统计学的判别方式)
- 费舍尔判别(适用于训练样本比较少)
- 模糊识别(分好类的数据点比较少)
评价与决策
- 模糊综合评判:评价一个对象的层次评价,但是不能进行排序
- 主成分分析:评价多个对象的水平并排序,指标间关联性很强
- 层次分析法:做决策,通过指标,综合考虑决定
- 数据包络分析法
- 秩和比综合评价法:评价各个对象并排序,指标间关联性不强
- 神经网络评价:适用于多指标非线性关系明确的评价
- 优劣解距离法(TOPSIS法)
- 投影寻踪综合评价法:柔和多种算法,例如遗传算法、最优化理论
- 方差分析(看几类数据之间有无差异,差异性影响,例如:1992年作物生长的施肥问题—元素对麦子的产量有无影响,差异量的多少)、协方差分析(有几个因素,我们只考虑一个因素对问题的影响,忽略其他因素,但注意初始数据的量纲以及初始情况,例如:2006年,艾滋病疗法的评价以及预测问题)
预测与预报
问题种类
- 小样本内部预测
- 大样本的内部预测
- 小样本的未来预测
- 大样本的随机因素或周期特征的未来预测
- 大样本的未来预测
解决方法
- 灰色预测模型(必须掌控!!!)
- 微分方程预测(备用,没听说过。。。):无法直接找到原始数据之间的关系,但可以找到原始数据变化速度之间的关系,通过公式推导转化为原始数据之间的关系
- 回归分析预测(必须掌握!!!)
- 马尔科夫预测(备用):一个序列之间没有信息的传递,前后没有联系,数据域数据之间随机性强,相互不影响;今天的温度与昨天、后天没有直接联系,预测后天温度高、中、低的概率,只能得到概率
优化与控制
- 线性规划、整数规划、0-1规划(有约束、明确的目标)
- 非线性规划与智能优化算法
- 多目标规划和目标规划(柔性约束,目标含糊)
- 动态规划
- 图论、网络优化(多因素交错复杂)
- 排队论与计算机仿真
- 模糊规划(范围约束)
- 灰色规划(难!!!)
智能算法学习
- 模拟退火法
- 粒子群算法(PSO)