数学建模方法

  • 前言
  • 层次分析法(AHP)
  • 多属性决策模型
  • 模拟退火模型
  • 种群竞争模型
  • 遗传算法模型
  • 线性规划模型
  • 非线性规划模型
  • PCA主成分分析
  • 聚类分析
  • 多元回归分析

前言

这是我在进行初级的数学建模时进行的一些原理学习,网上资料显得比较杂乱无章,这里我对一些数学建模方法的文档和视频资料进行了收集并汇总了以下写的好的,在学习时跟着这些资料学习并看看我的汇总就可以达到一个比较好的效果啦~

层次分析法(AHP)

应用:决策。(择优选择方案、优劣等级划分…)

原理:根据问题的性质,使问题归结为最低层(供决策的方案、措施)到中间层(指标),中间层到最高层(总目标)的相对权值,通过一系列计算,来确定优劣性。
其中,中间层到最高层的相对权值,表示考虑方案的不同指标对最终结果选择的权重。最底层到中间层的相对权值,表示单个指标下,表现多个方案的好坏对比的权重。

基本步骤:
1、划分层次(层次模型):分为目标——准则层(指标)——方案层。
2、构造判断矩阵(又称成对比较矩阵)。根据1~9尺度进行相应填写。
3、一致性检验与求权重矩阵 。CR(一致性比率)<0.1则成对比较矩阵通过。一致性检验是检验判断构造的矩阵是否合格。权重矩阵是用来计算最终方案权值的。
4、根据权重矩阵求最优方案。

视频学习:
先看:
链接: AHQ初步学习
后看: AHQ加深理解

多属性决策模型

应用:决策。

原理:类似于一般的加权求总分。主要思想是把量纲不同的数值转化为同一个量纲,然后构建权重矩阵,计算加权分值进行决策。

基本步骤:
加权算数平均算子,属性值类型归一化。
1、根据属性类型,划分为效益型、成本型等,对决策矩阵(属性值构成的矩阵)进行归一化。
2、构建成对比较矩阵,得到各个属性指标权重矩阵。(同AHP,也要进行一致性检验)
3、根据权值矩阵与归一化的决策矩阵确定每个方案的最终权值,进行决策。

文档资料:多属性决策模型
视频资料:多属性决策模型

层次分析法和多属性决策模型的区别:层次分析法针对于定性问题定量分析,多属性决策模型则不然。即如果“属性值”并不是一个能用“数值”很好地表示的值的话,采用AHP的1~9尺度是更优方案。如果“属性值”全都是适合的“数值”的话,就用多属性决策模型的方案。

模拟退火模型

应用:无法确定能否在规定时间内找到最优解的NP问题——旅行商问题(TSP,访问每一座城市并回到最初城市的最短回路);背包问题(在限定的总重量下,如何选择物品使总价值最高);最大流问题(充分利用管道能力,使总流量最大);图着色问题(用最少的颜色,对地图进行着色);…

原理:一种寻找最优解的算法,传统的算法可能被局限于局部最优解,模拟退火算法给出一定概率使计算中能够跳出局部最优解继续求解,当求出更优解时可以得到答案。

基本步骤:
1、初始化。(T温度,S初始解状态,迭代次数)
2、如果计算的最新状态趋近于最优解,则把这个最优解作为下一次计算的起点。
3、如果计算的最新状态趋远于最优解,则根据方案取一定概率,使新的状态作为下一次计算的起点。
4、重复1、2、3步骤,直至达到平衡状态并满足条件。

文档资料:
模拟退火模型通俗理解
模拟退火模型加深理解

种群竞争模型

应用:种群之间的竞争,优胜劣汰;产品的市场竞争模型…

原理:当两个物种共同生存,相互会起到阻滞作用时建立的模型。种群竞争设置的参数为【初始数量,自然增长率,环境容量,种群对资源的消耗量】。

基本步骤:无。这个模型的资料大多都很简略。

文档资料:种群竞争模型

遗传算法模型

应用:对于同一个物种,有着个体之间性能的差异,遗传算法针对的是物种内的优胜劣汰。

原理:建立遗传算法模型,通过N代的遗传、交叉、变异、复制,找到问题的最优解。
基本步骤:

1、根据初始化种群个体来初始化编码和数据。
2、评估个体的适应度,作为优胜劣汰的评价标准。
3、通过选择、交叉、变异、复制(为了保证最优个体能存活,对当代最优个体直接复制到下一代)来决定下一代的种群群体。
4、重复步骤1~3,最好的迭代结果次数是种群群体性能趋于稳定时。

文档资料:
遗传算法通俗理解
遗传算法加深理解

线性规划模型

应用:对于有线性限制的问题求最优解。

原理:根据限制建立线性关系,根据决策函数求最优解。高中的东西了。如果存在最优解,只能在可行域的边界找到(一般为顶点)。

基本步骤:
1、假设/寻找决策变量。(影响目标结果且有条件限制的变量)
2、建立目标函数。(需要求最优解的东西)
3、寻找约束条件。(变量之间的约束关系)
4、求解。

文档:线性规划

非线性规划模型

应用:对于有非线性限制的问题求最优解(约束函数或者目标函数含有非线性关系)。

原理:解决非线性规划模型,这种模型没有通用的解决方案,各个方法都有自己适用的范围。最优解可能在可行域的任意一点找到。通常非线性规划模型可以概括为:

其含义为:优化目标为f(x),受限于一个等式h(x)与一个不等式g(x)。

基本步骤:
1、同线性规划,找出决策变量;建立目标函数;寻找约束条件。
2、求解过程中,选定初始点x,构建点x在趋于最优解的搜索方向,以该搜索方向为基础,设定搜索步长,找到下一个迭代点。
3、以新迭代点为初始点,重复进行2步骤。

文档资料(比较多,稍微看看就好):非线性规划

PCA主成分分析

应用:降维。

原理:在损失较少信息的基础上实现降维。周志华西瓜书上提到的最近重构性和最大可分性,实际上是关于协方差与方差的问题。协方差代表维度之间的相关性,方差可以表示维度可以保留的信息。故PCA降维的优化目标为:在N维中选择R维作为“主成分”,这R维之间两两之间协方差尽量小,方差尽量大。

基本步骤:涉及线性代数、矩阵分析。文档资料中有兴趣自行了解。

文档资料:
PCA理解与基本概念
PCA维度的选择

聚类分析

应用:无监督分类。

原理:对没有标示性的数据,按照算法,进行簇划分。

基本步骤:
聚类算法分很多类别。最常使用是基于距离和基于密度的聚类方案,具体方案选择结合实际。
在基于距离聚类中比较典型的是k-means聚类,通过多次迭代更新中心点,找到多个中心点(簇的中心)与多个簇,实现:簇内点紧凑,簇间分离程度高。需要设置K(簇数)的值,效率高。
基于密度的聚类有DBSCAN和MeanShift(均值漂移)等,主要思路是根据数据点的紧凑程度,将聚合程度较高的数据形成簇。
基于密度的聚类相比于基于距离的聚类,可以找到数据点分布呈不规则形状的簇,效率要差一些,相比之下,基于距离的聚类,同一个簇中各个数据点都不会太偏离中心点,效率高。

鸢尾花分类的聚类代码,用来辅助学习与理解。
from sklearn import datasets
from sklearn import model_selection
from sklearn.cluster import KMeans
import matplotlib.pyplot as plt# step1.加载数据
iris = datasets.load_iris()# 2.取特征空间中的4个维度
X = iris.data[:,:4]  # 3.搭建模型,构造KMeans聚类器
estimator = KMeans(n_clusters=3)#开始聚类训练
estimator.fit(X)# 获取聚类标签
label_pred = estimator.labels_ # 绘制数据分布图(以花萼长度和宽度为展示依据)
# plt.scatter(X[:, 0], X[:, 1], c="red", marker='o', label='see')
# print(X[:,0])
# plt.xlabel('calyx length')
# plt.ylabel('calyx width')
# plt.legend(loc=2)
# plt.show()

以下为聚类结果图,针对两个维度进行了显示。

多元回归分析

应用:主要用于描述关系或进行预测。

原理:建立因变量和多个自变量之间的线性或者非线性关系。常见的回归分析是线性回归,在线性回归中因变量y也可以不作为结果,而作为另一个需要得到的结果g(x)的因变量,即:
,这样的的线性回归称为广义线性回归。
基本步骤:主要分为线性回归和非线性回归。就不总结了大伙自己看看吧。

文档资料:挺多的不找了,大部分都是线性回归,非线性回归资料少。

下面两个图分别是线性回归和非线性回归的图。

常见数学建模方法学习总结及资料汇总相关推荐

  1. 2023年(美赛)美国大学生数学建模竞赛ABCDEF题思路资料汇总【全网最全】

    文章目录 1 赛题思路 1.12023年美赛比赛日期和时间 1.2攻略 1.2.1美赛获奖最重要的因素是什么? 1.2.2你现在准备了哪些算法模型? 2 思路分享 1 赛题思路 (赛题出来以后第一时间 ...

  2. 2023年五一数学建模竞赛ABC题思路资料汇总贴

    下文包含:2023五一数学建模竞赛(五一赛)ABC题思路解析+代码+参考论文等及如何准备数学建模竞赛 C君将会第一时间发布选题建议.所有题目的思路解析.相关代码.参考文献.参考论文等多项资料,帮助大家 ...

  3. 2023年Mathorcup高校数学建模挑战赛ABCD题思路资料汇总贴

    下文包含:2023Mathorcup高校数学建模挑战赛(妈妈杯)思路解析.妈妈杯参赛时间及规则信息及Mathorcup高校数学建模挑战赛 C君将会第一时间发布选题建议.所有题目的思路解析.相关代码.参 ...

  4. matlab快速入门案例及常用技巧 | 《matlab数学建模方法与实践(第三版)》学习笔记

    目录 快速入门案例: 解决流程: 具体实现: 一.获取数据 二.数据探索和建模 三.分享结果 常用技巧 一.常用标点功能 二.常用操作指令 三.指令编辑操作键 四.matlab数据类型 五.开发模式 ...

  5. python三维建模需要用到哪些知识_参加数学建模需要学习哪些方面的知识?

    高数.线代这些数学课是基础,不过真的应用到数学建模当中是不需要很严谨的.对于打数学建模比赛来说,最重要的无非3点:数学 编程 论文 论文 论文比较简单,就是有一些论文写作的经验,能把自己的思路表达清楚 ...

  6. 数学建模算法学习笔记

    数学建模算法学习笔记 作为建模Man学习数学建模时做的笔记 参考文献: <数学建模姜启源第四版> 网上搜罗来的各种资料,侵删 1.线性预测 levinson durbin算法,自相关什么的 ...

  7. 数学建模matlab imread,《matlab数学建模方法与实践》第三章 数据的处理

    3.1数据的获取 3.1.1从Excel中读取数据 a= xlsread('路径',n(sheetn),'A(n-1):Bn(读入的数据范围)') 3.1.2从TXT中读取数据 3.1.2.1.1 同 ...

  8. 数学建模方法 —【06】拟合方法之curve_fit

    拟合方法--curve_fit 今天来说说curve_fit拟合方法,在前面的博文中,我也介绍了其他两种拟合方法以及拟合优度的计算,有兴趣的读者可以看看: 数学建模方法-[03]拟合优度的计算(pyt ...

  9. matlab建模总结,MATLAB 数学建模方法与实践(第 3 版)

    本书从数学建模的角度介绍了 MATLAB 的应用,涵盖了绝大部分数学建模问题的 MATLAB 求解方法.全书共 5 篇.第一篇是基础篇,介绍基本概念,包括 MATLAB 在数学建模中的地位.数学模型的 ...

  10. 数学建模方法(1)引言

    参考资料:<数学建模方法及其应用>by 韩中庚 解放军信息工程大学 https://wwb.lanzoul.com/iuDWt08191yj 密码:bztd 数学建模的步骤 数学建模的过程 ...

最新文章

  1. 用子函数的方法求一个3*4的数组的转置数组
  2. 10-03视图的优缺点及注意事项
  3. 解决win7 64位无法进入debug的问题
  4. 《学习之道》第六章关注过程,亦培养习惯
  5. Linux 运维工具
  6. 公开征集 | 每个人都可以成为 COSCon'21 主论坛的开源明星
  7. 开发springboot项目,遇到的一些问题总结
  8. android webview权限申请_Android WebView 获取定位权限的问题。
  9. 关闭rhel 6.5的selinux
  10. 25个学习要点帮助你从java菜鸟成为Java高手
  11. 测试团队成功适应敏捷的障碍
  12. mfc窗口右下角如何显示一个三角形图案_以C4D制作金属碳笼为例:安利一个友好的三维制图软件...
  13. Maven引入数据库JDBC驱动
  14. stmt php,PHP mysqli_stmt_free_result() 函数用法及示例
  15. xThunder —— 完美支持Firefox的迅雷,旋风调用扩展
  16. Qt中使用DirectX
  17. 超级玛丽3通关指南+隐藏点整理
  18. 电力电子技术简答题及其答案
  19. ^_^ 给力,找了好久,终让我找到了,好多VB源码免费下载,路过的朋友快看看吧
  20. OCV 、AOCV、POCV还在傻傻分不清吗

热门文章

  1. 华夏常春藤_这是您可以立即免费在线学习的450个常春藤盟军课程
  2. EasyX画动态时钟
  3. erp服务器慢_ERP系统服务器维护经验谈
  4. 如何在点击a标签下载文件的时候通过JavaScript动态的修改文件的名称?
  5. echarts引入china报错(The GeoJSON of the map must be provided)
  6. Java设计模式-工厂模式
  7. 使用Flash,HTML5和Unity开发网页游戏的对比
  8. VOSviewer 操作指南 简明
  9. 【180929】仿微信飞机大战游戏源码
  10. Pentest Wiki Part4 后渗透(二)