一:评价模型
评价模型主要分为加权平均,层次分析,以及模糊综合评价
1.加权平均
顾名思义就是每个部分给与固定的权值
代码
Wi = [0.3 0.3 0.2 0.2];
Pi = [95 90 82 85 ;85 95 85 90 ];
P = Wi * Pi'
输出结果
P =
88.9000 89.0000
2.层次分析
简单可以分为,目标层(结果),准则层(评价标准),备选层(备选对象)
步骤:
(1):构造判断矩阵A
其中一个矩阵元素aij=Ci/Cj,其值越大,则分子越重要
注意:比较结果必须前后一致,不能出现矛盾
即a>b,b>c,则必有a>c
(2):一致性检验:即A>>C,且B>C,则有A>B
一般用CI表示一致性指标,CR表示一致性比例,RI表示平均随机一致性指标
(3):层次单排序
对于上一层某因素而言,本层次某因素重要性的排序
上一层次某因素相对重要性:A最大特征值对应的特征3向量(权值)
(4):层次总排序
代码
function ahpactor
%判断矩阵共有四个需要比较的指标
A = [1/1 2/1 5/1 3/1
1/2 1/1 3/1 1/2
1/5 1/3 1/1 1/4
1/3 2/1 4/1 1/1];
[w, CR] = AHP(A);
% face
A1 = [1/1 1/2 3/1
2/1 1/1 5/1
1/3 1/5 1/1];%(对象face之间两两比较)
[w1, CR1] = AHP(A1);%w1:对象face得分矩阵
% body
A2 = [1/1 1/3 2/1
3/1 1/1 5/1
1/2 1/5 1/1];
[w2, CR2] = AHP(A2);
% voice
A3 = [1/1 2/1 1/5
1/2 1/1 1/7
5/1 7/1 1/1];
[w3, CR3] = AHP(A3);
% acting
A4 = [1/1 2/1 1/3
1/2 1/1 1/5
3/1 5/1 1/1];
[w4, CR4] = AHP(A4);
CRs = [CR1 CR2 CR3 CR4]
P = [w1 w2 w3 w4] * w
% ------------------------------------------------------------------------
function [w, CR] = AHP(A)
% n= [ 1 2 3 4 5 6 7 8 9
RI = [ 0.00 0.00 0.58 0.90 1.12 1.24 1.32 1.41 1.45];%检验
n = size(A,1);
[V, D] = eig(A);%计算特征值D和特征向量V:A*V=V*D
[lamda, i] = max(diag(D));%取最大特征值与位置
CI=(lamda-n)/(n-1);%一致性指标
CR = CI/RI(n);%一致性比例
W = V(:,i);%最大特征值的特征向量
w = W/sum(W);%归一化
使用需要自己构造判断矩阵A A1 A2 A3 A4以及平均随机一致性指标
3.模糊综合评价
啥是模糊:事物之间无明显界限,因此用程度来代替属于和不属于例他是好人的概率为0.8;
评价要素:
因素集U与评语集V
模糊合成:按照不同准则层对象权值W与对象评语集百分比矩阵R进行合成运算
M(·,v)表示先乘再取大
代码
W = [0.4 0.2 0.1 0.3];
R = [0.38 0.34 0.17 0.11 0.00
0.26 0.41 0.20 0.13 0.00
0.27 0.23 0.21 0.15 0.14
0.14 0.19 0.22 0.12 0.33];
B = max(R .* W')
注意:上面是对一个对象进行的操作
所得结果
B =
0.1520 0.1360 0.0680 0.0440 0.0990
可以看出第一个评语元素对应的值最大,故该对象的评价为第一个评语元素
总结:
加权平均适用于每项权值与平均比较容易获得
层次分析适用于权重,评分不容易获得
模糊综合评价多用于问卷类分级别,但权值的获得可用层次分析
二:预测模型
主要有,拟合,时间序列,灰色预测
1.拟合是最基本的预测方法,主要用fit与polyfit函数
多适用于有明显规律,(线性,一阶,二阶等)、
2.时间序列
就是把预测对象按照时间顺序排列而成的序列(由以前数据推将来数据)
其变化形式有长期趋势变动(T),季节变动(S),循环变动(C),以及不规则变动(R)
模型常见(加法,乘法,混合)如加法模型即为多个函数的叠加
方法:
(1)移动平均法
cumsum:cumsum是matlab中一个函数,通常用于计算一个数组各行的累加值,函数用法是B = cumsum(A,dim),或B = cumsum(A)。
如果A是一个向量, cumsum(A) 返回一个向量,该向量中第m行的元素是A中第1行到第m行的所有元素累加和;
如果A是一个矩阵, cumsum(A) 返回一个和A同行同列的矩阵,矩阵中第m行第n列元素是A中第1行到第m行的所有第n列元素的累加和;
此外还有平滑法
3.灰度预测 GM
特点:使用生成数据,且数据不需很多,一般大于四个就行,只使用中短期和我指数增长的预测
表示形式GM(a,b),a阶微分方程,b个变量
步骤:
原始序列->可行性检验->数据平移(不满足可行性检验条件)->一次累加生成序列(cumsum)->均值生成序列->灰微分方程->白化微分方程->最小二乘估计->白化微分方程求解->模型还原->残差检验->级比偏差值检验
t0 = [1999:2003]';
X0 = [89, 99, 109, 120, 135]';%原始序列
n = length(X0);
lambda = X0(1:n-1)./X0(2:n);
range = minmax(lambda')%检验
exp([-2/(n+1), 2/(n+2)])
X1 = cumsum(X0);%累加生成序列
Z1 = (X1(1:n-1)+X1(2:n))%均值序列
%最小二乘估计
B = [-Z1, ones(n-1,1)];j
Y = X0(2:n);
u = B\Y; a = u(1); b = u(2);
k = 0:n+4;%向后预测4个
xhat1 = (X0(1) - b/a).*exp(-a*k) + b/a;%白化微分方程求解
xhat0 = [X0(1) diff(xhat1)]%还原
plot(t0,X0,'o',t0(1)+k, xhat0,'-+')
对于一些模型 后面的检验步骤可以通过图像看出
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删