
数学建模
文章平均质量分 62
Icy Hunter
如果我真的存在,也是因为你需要我
展开
-
熵权法Python代码实现
熵权法做实证的好像很爱用,matlab的已经实现过了,但是matlab太大了早就删了,所以搞一搞python实现的,操作空间还比较大。原创 2024-02-10 13:29:42 · 1131 阅读 · 0 评论 -
2023美赛C题Wordle二三问分布预测和难度分类预测
2023美赛选了C题,应该很多人会选,一看就好做,一看拿奖也难,没事,注重过程就好。能点开这篇博客的应该都知道题目吧…(随便截点题目意思意思)这里主要对于二三问,对于这个单词困难模式下的的人数分布百分比预测以及对这个单词的难度分类的预测。首先看到他给的数据是这样的第二问中有让我们预测EERIE这个单词的1-7try人数的百分比,因此思路很简单:单词特征作为输入,人数百分比作为输出,可以看作一个回归问题。原创 2023-02-22 13:36:00 · 2137 阅读 · 2 评论 -
pulp求解简单线性规划问题
使用PULP求解简单线性规划问题(整数约束或非整数约束都可)原创 2022-09-12 11:16:29 · 3433 阅读 · 0 评论 -
线性代数的一些知识点
线性代数还是很重要的!以后还会再来补。原创 2022-09-06 17:37:23 · 1461 阅读 · 2 评论 -
机器学习之线性回归
一元的情况确实特殊,用各种方法都能乱解,但是多元的情况才是更加符合实际的,因此计算起来还是需要通过矩阵运算会比较有效率,之前遍历套公式就显得效率低下不太行了。这里我们可以考虑成有那么一个wxi + bi的解析式,带入我们数据的x得出的y与真实的y越接近那么这个模型肯定拟合的越好的。SSR为回归平方和,是指预测值和真实值之间的波动情况。以我们一元的数据为例,那么就是一元线性回归,比较简单。看图我们可以发现,拟合出的直线k一定是大于0的。不过计算的思路还是一样的,只不过换成矩阵运算了。原创 2022-09-05 22:01:16 · 2003 阅读 · 2 评论 -
遗传算法C语言实现以及思路详解简单易懂
目录前言实例代码解释1.初始化参数以及变量设置2.定义环境(定义目标函数)3.DNA解码(计算x,y)4.初始化种群(初始化解,考虑定义域)5.计算适应度(计算误差,考虑定义域)6.适者生存(挑选误差较小的答案)7.生殖、变异(更改部分二进制位,取反部分二进制位,可能生成误差更小的答案)8.copy函数(将选择的selected_animal赋值回animal以便迭代遗传进化)9.遗传进化以及结果选择10.完整代码总结前言前几天刚用python实现了遗传算法用于求解函数最值,详见遗传算法详解pytho原创 2022-05-15 13:40:17 · 6851 阅读 · 13 评论 -
遗传算法详解python代码实现以及实例分析
遗传算法文章目录遗传算法前言一、遗传算法是什么?二、实例讲解例题11.初始化种群2.优胜劣汰3.根据优胜劣汰的结果,交配生殖、变异5.生物遗传进化例题21.初始化参数1.定义环境(定义目标函数)2.DNA解码(计算x,y)3 .初始化种群(初始化解,考虑定义域)4 .计算适应度(计算误差,考虑定义域)4 .适者生存(挑选误差最小的答案)5 .生殖、变异(更改部分二进制位,取反部分二进制位,可能生成误差更小的答案)6 .查看最终的答案7 .生物遗传进化8 .完整代码总结前言因为老师布置作业,需要我们原创 2022-05-10 20:05:58 · 20170 阅读 · 28 评论 -
CRITIC权重法附实例及matlab代码实现
CRITIC权重法是一种客观赋权法,但是它所反应的权重和熵权法中的权重有所不同。一篇文章里看到的,感觉蛮不错。关于CRITIC的计算过程,感觉已经有蛮不错的博客了,而且计算起来也比较简单,例如这个就讲的不错客观赋权法——CRITIC权重法过程挺清晰明了的。下面展示一道例题。题目链接:http://www.doc88.com/p-4082292004105.html但是感觉他的结果可能算错了。下面是我的结果下面上代码clc,cleardata = [0.4830 13.2682 0 4.原创 2022-01-28 12:38:54 · 10264 阅读 · 15 评论 -
python实现因子分析及用于综合评分且配上碎石图(实例分析)
由于感觉因子分析不是很懂,因此又通过python把因子分析(factor analysis)案例(matlab实现)这题又给打了一遍。这里加上了碎石图,用来选择辅助选择因子个数,但是我感觉这里没啥用吧。这里可能由于数据标准化的方式有些不同,因此计算出来的数值和之前那个不太一样,但是综合评分的排名还是一样的。数据的话我上传到资源里了,因为有一次聚类数据太大了,博客里放不了,因此就想着试试上传资源了。数据链接:https://download.youkuaiyun.com/download/qq_5278547原创 2022-01-27 22:48:06 · 4750 阅读 · 2 评论 -
因子分析(factor analysis)案例(matlab实现)
模型介绍:值得注意的是,特殊因子是不能被公共因子包含的。载荷矩阵的几个统计性质:下面通过一个例题来展示。ssgs = [43.31 7.39 8.73 54.89 15.35 17.11 12.13 17.29 44.25 29.69 21.11 6.03 7 89.37 13.82 29.55 8.62 10.13 73 14.88 11 8.41 11.83 25.22 25.49 17.63 13.86 15.41 36.44 10.0.原创 2022-01-24 18:18:49 · 11736 阅读 · 6 评论 -
时间序列预测之ARMA、ARIMA序列及季节性序列matlab实现
ARMA是一种平稳时间序列模型,即均值和协方差不随时间的平移而改变。ARMA有三种类型AR序列MA序列ARMA序列但是由于ARMA只能处理平稳序列,而现实中的问题往往有趋势性或周期性等。为了得到平稳序列,我们对数据进行差分运算,使得新序列成为平稳序列,就能够进行ARMA分析,因此ARIMA模型,是在ARMA的基础上多了差分运算,使得其能够处理的序列范围增加了。ARIMA序列例题1:clc,cleara = [17.0 16.6 16.3 16.1 17.1 16.9 16.8原创 2022-01-24 14:39:52 · 12184 阅读 · 11 评论 -
时间序列预测之差分指数平滑法及有季节性特点的序列预测
差分指数平滑法差分就是后一个数据减去前一个数据得到的差值,为什么说如果有直线趋势便改变了趋势呢?因为例如y = a * x + b,那么每个差分的值就相当于a了,当然因为误差存在,肯定是围绕a上下波动的,因此便转换为一种围绕a变化的趋势而不是直线趋势了,便改变了数据的趋势。即我们先对数据的趋势作预测,预测完了之后再在原来数据的基础上加上这个趋势值就能够较好地预测出需要的值了。一阶差分指数平滑法例题:clear, clcyt = [24 26 27 30 32 33 36 40 41 44]'原创 2022-01-24 11:17:29 · 3183 阅读 · 0 评论 -
时间序列预测之指数平滑法(ES)
指数平滑法,就可以理解成一种变种的加权移动平均法吧α越大,表明最近的数据所占的权重就越大一次指数平滑法例题clc,clearyt = [50 52 47 51 49 48 51 40 48 52 51 59]'; % 列向量n = length(yt);alpha = [0.2 0.5 0.8];m = length(alpha);yhat(1, [1:m]) = (yt(1) + yt(2))/2;for i = 2:n yhat(i, :) = alpha * yt(i原创 2022-01-23 18:34:53 · 9609 阅读 · 2 评论 -
时间序列预测之移动平均法(MA)
移动平均法一般的移动平均法主要用于平稳序列,其主要思想就是通过对近期几个(例如五个)的数据求平均作为下一个即这五个之后的那个数据的预测值。二次移动平均法的话就是在一次平均移动法的基础上对一次平均移动计算出来的值再进行一次移动平均。思路还是十分简单明了的,只是公式看起来就有点乱七八糟了。下面展示一道例题:clc,cleary = [533.8 574.6 606.9 649.8 705.1 772.0 816.4 892.7 963.9 1015.1 1102.7];m = length(y原创 2022-01-23 16:55:10 · 13364 阅读 · 0 评论 -
BP神经网络与RBF神经网络matlab代码实现
BP神经网络,主要有误差正向传播和误差反向传播两个过程RBF神经网络例子:首先需要对数据进行规格化然后再进行训练预测。代码如下:clc, cleardata = [15.6 5.6 3.5 25.5 22.9 27.8 4.3 1.0 7.7 23.4 35.2 3.0 38.1 3.7 36.8 10.2 3.4 3.5 7.4 22.0 29.1 33.2 1.6 24.0 6.4 10.2 11.6 2.2 26.7 29.4 35.4原创 2022-01-23 15:42:36 · 3767 阅读 · 7 评论 -
机器学习之支持向量机之线性可分型原理介绍及代码实现(SVM)
支持向量机(Sport Vector Machine,SVM)是经典的机器学习方法之一,其核心思想主要是找到一个超平面,使得它能够尽可能多地将两类数据点正确分开,同时使分开地两类数据点距离分类平面最远。如图...原创 2022-01-14 23:07:31 · 4855 阅读 · 0 评论 -
人口模型(Malthus+Logistic)
Malthus模型6.15很明显可以知道当x(0) = x0,对x(t)对t求导之后导数为r * x0 * e^rt = r * x(t),符合6.14的条件。但是很明显,这样的模型肯定是不符合实际规律的,因为人口不可能随时间无限增长的,需要对模型进行修正。阻滞增长型(Logistics模型)即将原来人口增长的常数变为随基数而递减的线性关系,表明当人口达到一定数量时,人口便不会再继续增长下面展示一道例题直接建立对应模型即可。clc, clear% 非线性最小二乘估计data原创 2022-01-19 20:50:06 · 7789 阅读 · 3 评论 -
灰色预测模型GM(1,1)
本文参考的是司守奎,孙兆亮主编的数学建模算法与应用(第二版)灰色预测的主要特点时模型使用的不是原始数据序列,而是生成的数据序列。其核心体系时灰色模型,即对原数据作累加生成得到近似指数规律再进行建模的方法。优点:不需要很多数据,一般只需要4个数据,就能够解决历史数据少。序列的完整性及可靠性低的问题,能利用微分方程充分挖掘系统的本质,精度高;能将无规律的原始数据进行生成得到规律性较强的生成序列,运算简便,便于检验,不考虑分布规律,不考虑变化趋势。缺点:只使用于中短期的预测,只适合指数增长的预测。这里主要原创 2022-01-12 20:51:25 · 19551 阅读 · 16 评论 -
数学建模之层次分析法(AHP)
本文参考老师课上的PPT层次分析法(AHP),是一种解决多目标的复杂问题的定性与定量相结合的决策分析方法。由于其系统灵活简洁的优点,迅速地在我国社会经济各个领域内,如工程计划、资源规划、政策指定等,得到了广泛的重视和应用。层次分析法大体可以分为四个步骤:1.建立层次结构模型2.构建判断(成对比较)矩阵3.一致性检验**1.建立结构模型。**需要将决策的目标、考虑的因素(决策准则)和决策对象按它们之间的相互关系分为最高层、中间层和最低层,绘出层次结构图。2.构建判断(成对比较)矩阵。构建原则原创 2022-01-11 23:25:13 · 2298 阅读 · 0 评论 -
数学建模之秩和比综合评价方法(RSR)
本文参考的是司守奎,孙兆亮主编的数学建模算法与应用(第二版)秩和比综合评价方法(RSR)在医疗卫生领域的多指标综合评价、统计预测预报、统计质量控制等方面已经得到了广泛应用。其中秩序和比是行或者列秩次的平均值,是一个非参数的统计量,具有0-1连续变量的特征。下面介绍秩和比综合评价方法的一般步骤:第一步,数据预处理。凡是评价方法中,都需要面对效益型、区间型、成本型等指标。一般的情况都是将非效益型指标转换为效益型指标,因为这样能够直接通过数值大小进行指标优劣的评判,方便后续工作的展开。第二步,编秩。由于原创 2022-01-11 20:18:51 · 11174 阅读 · 12 评论 -
数学建模之灰色关联分析(GRA)
本文参考的是司守奎,孙兆亮主编的数学建模算法与应用(第二版)灰色关联分析不仅能够用做关联分析,也能够用于评价。其具体分析步骤如下:第一步,需要确定评价对象和参考数列。评价对象一般指的就是待分析的各个特征组,例如需要评价一个同学的成绩,那么他的语文成绩、数学成绩、英语成绩等就是一个特征组,即一个评价对象。参考数列有两种选择,一种是从各个特征组中抽取出各自特征最优的值,构成一个虚拟的最优方案,并将此作为参考数列,那么其他方案都是参考最优方案得出的关联系数,即能够作为方案的评价,这也很容易理解,与最优方原创 2022-01-11 11:12:25 · 22962 阅读 · 5 评论 -
数学建模之数据包络分析(评价投入产出比的模型)
本文参考的是司守奎,孙兆亮主编的数学建模算法与应用(第二版)数据包络法是用于评价多指标输入和多指标输出的一种较为有效的方法。即对投入产出做出一个评价。数据包络分析模型如下:模型评价标准:在lingo中Objective value即为目标值,其值为1是DEA有效的必要条件之一只有当目标值为1且存在Omega和mu都大于0时,才能认为此刻投入产出评价DEA有效,即投入产出的效率达到较好的效果。下面展示一道例题lingo代码如下,只需要修改对应的维度数及数据就能够直接分析其他类似的投入原创 2022-01-10 23:06:15 · 4734 阅读 · 0 评论 -
数学建模之理想解法(TOPSIS)
本文参考的是司守奎,孙兆亮主编的数学建模算法与应用(第二版)TOPSIS的基本思路就是从各个特征中各自抽取出最优的特征值构成一个虚拟实际不存在的解,称之为正理想解;再从各个特征中各自抽取出最劣的特征值构成另一个实际不存在的解,称之为负理想解。最后将原有的每个特征组视作实际的解,通过比较实际解与正理想解的欧式距离和负理想解的欧式距离来评判此解的优劣,即一个实际解距离正理想解最近,距离负理想解最远,可认为此解为实际最优解,同时通过这种方法,能够得出每一个实际解的评判值,通过对这个值大小排序,即可完成对事物优原创 2022-01-10 12:38:19 · 7242 阅读 · 0 评论 -
数学建模之熵权法(EWM)matlab实例实现
本文参考http://blog.sina.com.cn/s/blog_710e9b550101aqnv.html熵权法是一种客观赋值的方法,即它通过数据所包含的信息量来确定权重,形象的说如果每个人考试都能考100分,那么这个指标对于这些人的评价是毫无意义的,因为没有任何区分度,熵权法就是通过区分度来确定对于特征的权值,从而能够对事物进行综合的评价。一般来说,若某个指标的信息熵指标权重确定方法之熵权法越小,表明指标值得变异程度越大,提供的信息量越多,在综合评价中所能起到的作用也越大,其权重也就越大。相反,原创 2022-01-09 13:03:02 · 24484 阅读 · 0 评论 -
数学建模之主成分分析(PCA)
由于在学习数学建模的过程中,复现建模书上的题目代码有点小麻烦,因为我找不着书上的数据,因此得一个个手打,本来已经复现了好几个模型,结果因为机械硬盘坏了,里面的东西全没了,很是无语,因此决定在这里记录我的复现代码,主要是给自己看的,等到想用的时候就可以直接拿来用了。主成分分析可以用于降维,可以用于评价下面展示一道例题这是书上的一道例题,需要使用主成分分析的方法进行评价。以前我一直以为PCA就是用来降维的,没想到还可用来评价,究其原因,我们都知道PCA降维会计算特征向量,其特征向量与原特征的积就是计算原创 2022-01-08 17:55:33 · 7140 阅读 · 0 评论