什么是灰度模型?哪些实例可以采用了灰度模型预测?

2024-07-20 14:44

1. 什么是灰度模型?哪些实例可以采用了灰度模型预测?

灰色理论认为系统的行为现象尽管是朦胧的,数据是复杂的,但它毕竟是有序的,是有整体功能的。灰数的生成,就是从杂乱中寻找出规律。同时,灰色理论建立的是生成数据模型,不是原始数据模型,因此,灰色预测的数据是通过生成数据的gm(1,1)模型所得到的预测值的逆处理结果。
     河流的未来水质状况,股票的未来价格等等。

什么是灰度模型?哪些实例可以采用了灰度模型预测?

2. 2011电工杯数学建模竞赛A题答案

摘要
本文针对风电功率的预测问题,分别采用时间序列法、人工神经网络、灰色预测法对未来机组输出的电功率建立了三种合理预测模型,并通过对各种模型的误差分析,进一步提出了改进的方案使其预测更加的准确,在最后将模型推广到n台风电机组给出了合理的模型。
对于问题一,我们建立了三种不同的预测模型对未来的电功率进行预测并做了各自模型的误差分析。
模型一 我们取5月30号的输出风电功率数据作为一组时间序列,通过对初始数据的零均值转换,使得数据趋于平稳。然后运用统计软件 对数据分析计算得到相关系数,进而对模型进行确定与定阶,经过拟合最终得到合理的时间序列ARIMA模型.
模型二 我们首先构造了人工神经网络层结构图,根据时间序列得到的预测模型作为神经网络模型的输入层数据,隐层通过采用tansig转移函数以及输出层运用pureline转移函数,而后根据不同层的权重筛选及误差反映,最终我们运用matlab的LAMP算法得到了数据的期望值曲线及均方误差,进而得到了合理的预测模型。
模型三 我们采用灰色预测采集数据为4个历史数据进行预测,先通过构造关联矩阵从而对其进行累计加权,最终得到了合理的灰色预测模型。
对于问题二,我们主要根据在问题一中的误差分析,取一项误差分析(相对误差)指标进而对不同机组进行求解。根据不同模型不同机组的相对误差的分析,我们得到了电机组汇聚的误差相对单机来说误差较大,原因是因为多台电机同时运行时电刷端无法充分工作。
对于问题三,为了进一步使误差降低到最小,我们采用组合预测模型,通过对各模型的误差分析赋予不同的权值,从而使预测的期望结果更加精确。
通过上述三个问题的解答,我们分析了阻碍风电功率实时预测精度进一步改善的主要因素是因为实测数据本身就存在各种不可避免的误差,因此风电功率的预测精度无法得到无限提高。



关键词:风电功率 时间序列 人工神经网络 灰色预测 组合预测
 
一、	问题重述
风能是一种可再生、清洁的能源,风力发电是最具大规模开发技术经济条件的非水电再生能源。现今风力发电主要利用的是近地风能,但近地风具有波动性、间歇性、低能量密度等特点,因而风电功率也是波动的。
大规模风电场接入电网运行时,大幅度地风电功率波动会对电网的功率平衡和频率调节带来不利影响。因此,我们要实现对风电场发电功率的尽可能准确地预测,这样,电力调度部门就能够根据风电功率变化预先安排调度计划,保证电网的功率平衡和运行安全。
实时预测是风电功率预测的一种,它要求滚动地预测每个时点未来4小时内的16个时点(每15分钟一个时点)的风电功率数值。根据国家能源局颁布的《风电场功率预测预报管理暂行办法》中的要求,实时预测的误差不能大于15%。
某风电场由58台风电机组构成,每台机组的额定输出功率为850kW。附件2中给出了2006年5月10日至2006年6月6日时间段内该风电场中指定的四台风电机组(A、B、C、D)输出功率数据(分别记为PA,PB,PC,PD;另设该四台机组总输出功率为P4)及全场58台机组总输出功率数据(记为P58)。
问题1:风电功率实时预测及误差分析。
对给定数据进行风电功率实时预测并检验预测结果是否满足关于预测精度的相关要求。具体要求:
1)	采用不少于三种预测方法(至少选择一种时间序列分析类的预测方法);
2)	预测量:
a.PA, PB,  PC,  PD;        b.P4;        c.P58。
3)	预测时间范围分别为(预测用的历史数据范围可自行选定):
a.5月31日0时0分至5月31日23时45分;
b.5月31日0时0分至6月6日23时45分。
4)	试根据附件1中关于实时预测的考核要求分析你所采用方法的准确性;
5)	你推荐哪种方法?
问题2:试分析风电机组的汇聚对于预测结果误差的影响。
问题3:进一步提高风电功率实时预测精度的探索。

通过求解上述问题,分析论证阻碍风电功率实时预测精度进一步改善的主要因素。风电功率预测精度是否能无限提高?
二、	问题分析
1.	问题一
该问题是电功率的实时预测及误差分析,其主要研究目的是建立一定的数学模型来尽可能准确地做出风电功率的实时预测,并使的预测结果的误差在满足国家相关规定的基础上尽可能小,以便提供给电力调度部门,方便其优化调度安排。
该问题属于预测类的数学问题,且是直接利用历史数据,使用一定的数学模型进行预测。常见的方法有人工神经网络法 、时间序列法(AMAR) 、遗传算法 、灰色分析预测法、卡尔曼滤波法、及其它算法 。
问题一要求至少用三种预测方法对PA  PB   PC  PD  P4  P58这六个量在未来16个时点的风电功率数值进行预测,并对结果进行误差分析,确定实时预测的相对误差不能大于15%。由于题中所要求的16个预测结果是滚动预测所得,一般来说,风电功率的预测值与实测值之间存在相对较大的误差,这就需要我们对结果进行误差分析后再根据分析结果对模型进行进一步优化。
基于以上考虑,我们可以分别用时间序列法建立数学模型一,用灰色分析预测法建立数学模型二,用人工神经网络法建立数学模型三,对结果进行预测,并将预测结果进行比较,同时分别对各模型所的预测结果进行
2.	问题二
本问题要求分析风电机组的汇聚对与预测数据误差的影响。在我国主要采用集中开发的方式开发风电,各风电机组功率汇聚通过风电场或风电场群(多个风电场汇聚而成)接入电网。众多风电机组的汇聚会改变风电功率波动的属性,从而可能影响预测的误差。故而对风电机组的汇聚和其相应的预测数据误差进行分析,得出二者之间的关系,将对我们分析预测大规模的风电场群的风电功率提供参考。
即问题二实质上是研究风电机组的台数与对应的风电功率预测值的相对误差之间的关系。
因此,我们可以用问题一中预测结果的相对误差,比较单台风电机组功率(PA,PB,PC,PD)预测的相对误差与多机总功率(P4,P58)预测的相对误差,再用时序分析法建立模型四来拟合确定台数的风电功率预测值的相对误差与对应风电机组的台数之间的函数关系,进而对风电机组汇聚给风电功率预测误差带来的影响做预期。
3.	问题三
从问题一和问题二的结果我们可以看出模型一、模型二、模型三所得出的预测结果都存在一定程度的误差,而提高风电功率实时预测的准确程度对改善风电联网运行性能有重要意义。因而在模型一、模型二、模型三的基础上,构建有更高预测精度的实时预测方法是非常必要的。
通过对问题一的求解,我们可以分别得到模型一、模型二、模型三的拟合优度,再利用三个拟合优度的比值来确定三个模型所得预测值的权重,进而用组合预测的方法得出模型五,使得预测精度进一步提高。
三、	模型假设
1.	假设题目所给的数据真实;
2.	假设软件求解过程中系统不会产生误差;
3.	假设测数据时风电机组都运行正常;
4.	假设天气因素不影响风电功率。
四、	符号说明
1.	 :自相关函数;
2.	 ;偏自相关函数;
3.	 :样本序列;
4.	 :差分处理后的序列;
5.	 :自相关子数;
6.	 :偏自相关字数;
7.	 :延迟算子;
8.	 :预测值;
9.	 :方差;
10.	 :相对残差;
11.	 :均分根误差;
12.	 :平均绝对误差;
13.	 :第 个非线性变换单元“中心”向量;
14.	 :隐单元的变换函数;
15.	 :权重;
16.	 :数据残差 ;
17.	 :范数。
五、	模型建立与求解
(一)	问题一
模型一(非平稳时间序列模型)
1、数据预处理
首先取58台5月30号的96个样本数据序列 得到如下图(1)
 
              图1  序列曲线
由图一表明:该样本构成的时间序列为非平稳时间序列。
由此对该样本值进行有序差分变换
差分算子 
对96个样本值进行一阶差分可得到如下 序列图(2)
 
图2 数据差分处理序列曲线
有图二表明:该序列已平稳,则原时间序列可表示为
 
即自回归-滑动平均模型 。
2、平稳随机时间序列模型的识别
2.1计算偏自相关系数及自相关系数
2.1.1自相关函数 
 
 
2.1.2偏自相关函数 
 
当 时,第 系数 为平稳序列 的偏自相关系数
运用统计学软件我们得到该平稳序列  、 如下图(3)
 
图3 差分处理数据的相关性分析
2.2模型识别与模型参数估计
2.2.1模型识别
我们运用经典的 模型识别方法
对于 模型,其偏自相关函数满足下式
 
对于 模型,其自相关函数满足下式
 
对于 模型,同时具备 和 模型的特征。
由此我们给出三种模型的基本特征如表一
表一 三种基本模型特征
类别	模型名称
	 
 
 

自相关函数	拖尾	截尾	拖尾
偏自相关函数	截尾	拖尾	拖尾
由上面 、 统计特性,我们可以判断该模型属于 
2.2.2模型参数估计
由2.2.1我们得到该模型属于 模型,因此我们对该模型进行参数估计,由该模型可推得
 
我们令 ,则 ,这样就将原 变成 模型,我们根据 的参数估计对 、 …, 进行估计
若 的阶数较低我们可直接求解。
若 的阶数较高,可运用线性跌代法求解。
2.3模型定阶
根据AIC最小信息准则法进行模型定阶,经过逐步的模型拟合,矩估计模型参数估计,我们最终得到当模型的阶数为 模型,拟合效果达到最优。如下图(4)
 
图4  模型的拟合
由此我们确定模型为 
2.4建立预测模型
对于 模型,由于样本个数h>p,因此残差项 =0,这里运用统计spss软件可求得则预测方程为
 = 19930.39216 + AR(1)=0.6752061645 +AR(2)=0.1657058252 +AR(3)=-0.04506977184 +AR(4)=-0.1007669642 +AR(5)=0.00320666507 +AR(6)=0.03881877566 
2.5实时预测
运用预测方程对5月31号的数据进行预测得到如下曲线图(5)
 
图5 预测数据与真实值的比较曲线图
从图5中表明:基本上符合了58台电机组5月31号的输出电功率的趋势。但预测明显存在延时性,以及预测精度不高,现在我们对其进行误差分析。
2.6误差分析
通常用三个指标来对模型进行评估:
均方根误差:
 
平均绝对误差:
 
平均相对误差:
 
在这里我们仅运用相对误差进行分析如下
将数据代入公式我们得到表二
表二 时间序列模型误差分析
P58电机组	真实值	预测值	绝对误差	相对误差
1	11634.84	10534.83	1100	0.094544

2	16696.88	10686.88	6010	0.359947

3	18568.59	12448.59	6120	0.329589

4	16420.41	11420.11	5000	0.304499

5	18146.06	18100.06	46	0.002535


为了减小误差我们将采用组合预测的方法使误差达到最低。
模型二(人工神经网络模型RBF)
2.1.构造神经网络结构图
一般的我们选取隐层为3的结构图,它能更好地对误差进行反向修正。由此我们构造如下 






	
图6 神经网络结构图
2.2、输入变量的的选择
我们利用模型一建立好的时间序列模型选择输入变量。
在模型一中表明:原始的电功率序列 进行1阶差分处理的序列 可识别为
 模型。
由此我们选择输入的变量为最近的6个历史数据及最近的一个残差 为组
2.3、网络输入输出数据的归一化处理
对输入输出的数据 采用以下公式
 
 
进行归一化处理使其落在[-1,1]区间
2.4、网络训练及预测结果输出
对输入选择的变量进行网络函数训练
第一步我们对输入的变量从输出层得到输出值 
 
第二部从隐含层输出函数为
 
由此我们根据LAMP算法可得到如下曲线图(6)(7)
 
 
图6、7 样本真实值与预测值曲线
2.5、模型误差分析
我们同样取P58台电机组的5个数据进行误差分析得到如下表格三
表三 神经网络误差分析
P58	相对误差
1	0.26102
2	0.126504

3	0.113031

4	0.069922

5	0.0538867

模型三
3.1灰色预测矩阵
同理我们仅取P58 台机组的6个历史数据运用灰色预测法进行预测。
灰色预测基本原理如下:
首先,进行一次累加 
 
 
其中,显然有 , 表示累加后的数列。
然后,参数估计 
 
其次,累加数列 的灰色预测模型
 
由此,求原始数列的灰色预测模型
 
最后,进行模型精度的方差检验
历史数据残差为:
 

相对残差为:    
 

预测结果:
对模型的预测结果。
得到真实观测与拟合曲线的对比
 

同理我们对模型进行误差分析得到如下表四

表四 灰色模型预测误差分析
P58电机组	真实值	模拟值	绝对误差	相对误差
1	28560.56	3.04E+04	1805.44	0.06 
2	17980.03	2.18E+04	3855.97	0.21 
3	19235.06	1.76E+04	1605.06	0.08 
4	21874.5	1.88E+04	3072.50	0.14 
5	29787.38	2.84E+04	1416.38	0.05 
(二)	问题二
我们分别运用三种模型对PA、PB、PC、PD、P4、P58进行误差分析,我们仅取相对误差进行分析如下表(五)
表五PA、PB、PC、PD、P4、P58相对误差分析
相对误差分析
	PA 	PB	PC	PD	P4	P58
模型一	0.023	0.0156	0.142	0.0245	0.0206	0.013
模型二	0.0102	0.1203	0.106	0.102	0.0135	0.0112
模型三	0.125	0.156	0.179	0.194	0.113	0.06
图表五表明:多机组的误差总体上小于单机组的误差。
因此我们期望为了尽可能准确预测,尽量使多台电机共同运作,以使能够更好的对未来发电输出功率进行预测。
(三)	问题三
为了进一步提高风电功率的预测精度,我们建立了组合预测模型其表达式如下
设 三种模型分别表示为P1、P2、P3则组合预测模型为
 
 
3种预测模型的方差、误差分别为 、 、 、 、 、 则
组合预测误差的方差为 
当三种预测方法的预测误差分别服从零均值正太分布时,可用以下式估计
 
由此我们可得出 的估计值为
 
由此证明 ,表明组合预测的方法优于单一预测方法。
六、	模型评价与推广
1.	模型一的评价
优点:对于短、近期预测比较显著。
缺点:延伸到更远的将来,就会出现很大的局限性,导致预测值偏离实际较大而使决策失误。
不适用于对长远数据的预测。
2.	模型二的评价
优点:BP神经网络是一种有效的非线性建模方法;具有很强的容错性和很快的处理数据能力。
缺点:网络结构的选择尚无一种统一而完整的理论指导,理解起来比较费劲,对模型学习速度慢。
3.	模型三的评价
优点:算法简单、可利用较少数据建模。
缺点:对于复杂的非线性系统来说预测的效果不是很理想
4.	模型推广
对于风电机组群问题我们同样采用问题三的模型,即 时我们采用组合预测模型。
参考文献
[1] 张新房,徐大平,吕跃刚,柳亦兵,风力发电技术的发展及若干问题。现代电力。2003,20(5)。
[2] 雷亚洲,王伟胜,任永华等。含风电场电力系统的有功有化潮流,电网技术。2002,26(8)。
[3]楼顺天,施阳。基于MATLAB的系统分析与设计——神经网络。西安电子科技大学出版社,2000。
[4] 董安正,赵国潘。人工神经网络在短期资料风速估计方面的应用。工程力学。2003,20(5)。
[5] 潘迪夫,刘辉,李燕飞。给予时间序列分析和卡拉曼滤波法的风电场风速预测优化模型。中南大学 交通运输学院。2008。
[6] 丁明,张立军,吴仪纯。给予时间序列分析的风电场风俗预测模型。电力自动化设备。200525(6)。
[7] 刘玉。基于实测数据分析的大型风电场风电功率预测研究。东北电力大学电气工程学院。2011.
[8 ]刘纯,范高锋,王伟胜,戴慧珠。风电场输出功率的组合预测模型。中国电力科学研究院。2009.

3. 灰色预测误差概率多大合适

灰色预测误差概率有四个等级:
一级:0.95
二级:0.80
三级:0.70
四级:0.60
一般要用模型来预测的话,至少误差概率要在二级以上。

灰色预测误差概率多大合适

4. GM灰色预测中级比偏差值什么用?

检验,几乎没用。
小样本不可能有高精度的,都差不多。

5. 旁置法和留一法在对模型预测误差有什么不同,应用条件有何区别

汇总趋势外推中的常见的曲线模型,建议采用增长特征法选择最优的曲线模型,最好采用最小二乘法或者三和法识别参数,建立模型,外推预测。

旁置法和留一法在对模型预测误差有什么不同,应用条件有何区别

6. 灰色预测模型GM(1,n)模型的matlab源代码,包括预测模型的建立,以及模型的精度检验 (主要是精度的检验c,p

  function GM1_1(X0)
  %format long ;
  [m,n]=size(X0);
  X1=cumsum(X0);   %累加
  X2=[];
  for i=1:n-1
  X2(i,:)=X1(i)+X1(i+1);
  end
  B=-0.5.*X2 ;
  t=ones(n-1,1);
  B=[B,t]  ;      % 求B矩阵
  YN=X0(2:end)  ;
  P_t=YN./X1(1:(length(X0)-1)) %对原始数据序列X0进行准光滑性检验,
  %序列x0的光滑比P(t)=X0(t)/X1(t-1)
  A=inv(B.'*B)*B.'*YN.' ;
  a=A(1)
  u=A(2)
  c=u/a  ;
  b=X0(1)-c ;
  X=[num2str(b),'exp','(',num2str(-a),'k',')',num2str(c)];
  strcat('X(k+1)=',X)
  %syms k;
  for t=1:length(X0)
  k(1,t)=t-1;
  end
  k
  Y_k_1=b*exp(-a*k)+c;
  for j=1:length(k)-1
  Y(1,j)=Y_k_1(j+1)-Y_k_1(j);
  end
  XY=[Y_k_1(1),Y]    %预测值
  CA=abs(XY-X0) ;    %残差数列
  Theta=CA       %残差检验 绝对误差序列
  XD_Theta= CA ./ X0   %残差检验 相对误差序列
  AV=mean(CA);       % 残差数列平均值

  R_k=(min(Theta)+0.5*max(Theta))./(Theta+0.5*max(Theta)) ;% P=0.5
  R=sum(R_k)/length(R_k)  %关联度

  Temp0=(CA-AV).^2 ;
  Temp1=sum(Temp0)/length(CA);
  S2=sqrt(Temp1) ;    %绝对误差序列的标准差
  %----------
  AV_0=mean(X0);     % 原始序列平均值
  Temp_0=(X0-AV_0).^2 ;
  Temp_1=sum(Temp_0)/length(CA);
  S1=sqrt(Temp_1)   ;     %原始序列的标准差
  TempC=S2/S1*100;      %方差比
  C=strcat(num2str(TempC),'%')   %后验差检验  %方差比
  %----------
  SS=0.675*S1 ;
  Delta=abs(CA-AV) ;
  TempN=find(Delta<=SS);
  N1=length(TempN);
  N2=length(CA);
  TempP=N1/N2*100;
  P=strcat(num2str(TempP),'%')   %后验差检验    %计算小误差概率

7. 灰色预测的matlab代码怎么写?

clc
clear all
% 本程序主要用来计算根据灰色理论建立的模型的预测值。
% 应用的数学模型是 GM(1,1)。
% 原始数据的处理方法是一次累加法。
 y=[1662.87 2163.4 1965.35 2472.48 2900.66 3034.93 2755.5 3207 3462];%已知数据
n=length(y);
yy=ones(n,1);
yy(1)=y(1);
for i=2:n
    yy(i)=yy(i-1)+y(i);
end
B=ones(n-1,2);
for i=1:(n-1)
    B(i,1)=-(yy(i)+yy(i+1))/2;
    B(i,2)=1;
end
BT=B';
for j=1:n-1
    YN(j)=y(j+1);
end
YN=YN';
A=inv(BT*B)*BT*YN;
a=A(1);
u=A(2);
t=u/a;
t_test=4;  %需要预测个数
i=1:t_test+n;
yys(i+1)=(y(1)-t).*exp(-a.*i)+t;
yys(1)=y(1);
for j=n+t_test:-1:2
    ys(j)=yys(j)-yys(j-1);
end
x=1:n;
xs=2:n+t_test;
yn=ys(2:n+t_test);
plot(x,y,'^r',xs,yn,'*-b');
det=0;
for i=2:n
    det=det+abs(yn(i)-y(i));
end
det=det/(n-1);
disp(['百分绝对误差为:',num2str(det),'%']);
disp(['预测值为: ',num2str(ys(n+1:n+t_test))]);
输出结果:
百分绝对误差为:228.3113%
预测值为: 3710.152      3978.2142      4265.6442      4573.8413

灰色预测的matlab代码怎么写?

8. matlab的灰色模型预测怎么编程

自己编的,希望对你有帮助

clear
x0=[89677,99215,109655,120333,135823,159878,182321,209407,246619,300670];
pre_num=10;

n=length(x0);
disp('级比检验')
lambda=x0(1:end-1)./x0(2:end);
range=minmax(lambda)
x1=cumsum(x0);

z=0.5*(x1(2:end)+x1(1:end-1));
Y=x0(2:end)';
B=[-z(1:end)' ones(n-1,1)];
u=B\Y; 閯(B'*B)*B'*Y
a=u(1)
b=u(2)
x0_pre=[x0(1) ones(1,n+pre_num-1)];
for k=1:n-1+pre_num
    x0_pre(k+1)=(x0(1)-b/a)*(exp(-a*k)-exp(-a*(k-1)));
end

err=[x0 - x0_pre(1:n)];
epsilon=abs(err)./x0(1:n).*100

disp('预测值')
disp(x0_pre)
disp('相对误差')
disp(epsilon)

t1=1999:2008;
t2=1999:2018;
plot(t1,x0,'d',t2,x0_pre,'LineWidth',2)  %原始数据与预测数据的比较
xlabel('年份')
ylabel('利润')