灰色分析技术及程序实现
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.3 基本方法

1.3.1 系统研究内容

灰色系统主要研究的是系统分析,灰色建模,灰色预测,灰色决策,灰色控制等多个内容。

1)系统分析

灰色系统分析方法主要是根据具体灰色系统的行为特征数据,充分利用数量不多的数据和信息寻求相关因素自身与因素之间的数学关系,即建立相应的数学模型。

现在系统分析的量化方法,大部分都是数理统计方法,比如说回归分析,主成分分析,方差分析等。但它们都有一些缺点:①都要求大样本;②都要求样本有较大的分布规律;③它们的计算工作量都很大;④都可能出现量化的结果与定性分析的结果不符。

这些缺点说明回归分析有较大的局限性,特别是对我国的经济分析局限性就更大了,因此我们需要寻找一个更有效更合理的方法。

灰色系统理论就提出了一种新的分析方法,称为系统的关联度分析方法,这是依据因素间关系程度的方法。由于关联度的分析方法是对发展趋势做分析,因此对样本量的多少没有过分的要求,也不需要典型的分布规律,计算量小,且不致出现关联度的量化结果与定性分析不一致的现象。

目前关联度分析已用到各方各面,比如农业经济、水利、宏观经济等。对抽象系统、社会现象等进行关联度分析,首先必须找准数据序列,也就是说用什么数据来间接地反映系统的行为特征。找系统行为的映射量就是用某种数据来间接地表征系统行为。例如:法国的人口学家曾经统计和研究过中国的宋朝、元朝、明朝、清朝的人口。这些人口数字都不是直接统计的,而是根据食盐的销售量折算得到的。在当时的环境下,用食盐作为人口的映射量是恰当的。再比如:用学生人数来反映教育的发达程度,用大专以上文化程度的人数来反映教育水平的高低。用医院挂号费作为健康水平的映射量等等。

这些是各种社会现象的一些可能的映射量。当有了系统行为的数据列(即各时刻的数据)后,根据关联度计算公式便可算出关联程度,也可以将数据输入计算机,通过关联度计算软件算出结果。

2)灰色建模

如果一个家庭是一个系统,把这个家庭每个月收入的10%存入银行,那么这个家庭的银行存款便是收入的10%。银行存款与收入的这个数量关系,便是这个家庭的一个经济模型,因为这种模型是各因素(变量)之间的数学关系,我们常称它为数学模型。

递推的离散的模型有较大的局限性,它是建立一个按时间做逐段分析的模型。在某些研究领域中,人们常常希望使用微分方程模型。比如:生命科学、经济学、生物医学等。在这个领域中,微分方程的系数描述了我们所希望辨识的系统内部的物理或化学过程的本质。但是人们却不能建立微分方程模型,因为微分方程中的系统数据的出现是输入输出的导数,它们一般是不能测量得到的。但是,灰色系统理论解决了这一建模问题。为什么灰色系统理论能解决这个问题呢?其重点是灰色系统有一种新观点。

(1)任何随机过程都是在一定幅值范围,一定时区内变化的灰色量,我们称随机过程为灰色过程。

(2)在处理手法上,灰色过程是通过原始数据的整理来寻找数的规律的,称为数的生成,这就是一种就数找数的现实规律的途径。

概率统计的随机过程,则是按统计规律,按先验规律来处理问题。做这种处理,要求数据越多越好(大样本)。事实上,即使有了大样本也不一定能够找到统计规律,即使有统计规律也不一定典型,而非典型的过程(如非平稳,非高斯分布,非白噪声等)是难处理的。

而灰色过程则无此限制。事实上,将许多原始数据累加处理后便出现了明显的指数规律。为什么能做到这一点呢?

灰色系统认为:尽管客观系统表象复杂,数据离散,但它们总是有整体功能的,总是有序的。因此,它必然潜藏着某种内在规律。关键在于要用适当方式去挖掘它,然后利用它。

由于生成数据列有了较强的规律,有可能对变化过程做较长时间的描述,因此,有可能建立微分方程。建立微分方程模型,还要利用到灰色理论的其他成果,如:关联空间的知识,离散函数的收敛、根据离散函数的光滑度、灰导数,灰微分方程等概念。

下面就举一个例子,说明灰色过程如何通过生成来寻找规律。

例:记x(0)(1),x(0)(2),x(0)(3),x(0)(4),其值如表1-3所示。

表1-3 灰色序列举例表

将上述数据作图,如图1-1所示。

图1-1 灰色序列举例图

图1-1表明原始数据X(0)没有明显的规律,其发展趋势是摆动的。

如果将原始数据累加生成,记第k个累加生成数为X(1)(k)而且

X(1)(1)=X(0)(1)=1;

X(1)(2)=X(0)(1)+X(0)(2)=1+2=3;

X(1)(3)=X(0)(1)+X(0)(2)+X(0)(3)=1+2+1.5=4.5;

X(1)(4)=X(0)(1)+X(0)(2)+X(0)(3)+X(0)(4)=1+2+1.5+3=7.5。

这样生成后,得数据列X(1),如表1-4所示,将上述数据作图,如图1-2所示。

表1-4 原始数据累加序列表

图1-2 原始数据累加序列图

无规律的原始数据生成后,得到较规律的数据,即无摆动的递增规律数据。

在建立系统各要素的关联模型时,灰色理论是以五步建立的,分别是:语言模型、网络模型、量化模型、动态量化模型、优化模型。

五步建立模型的思路与模型的特点如下。

(1)定性分析是建立模型的前提。

(2)定量模型是定性分析的具体化、规格化、关系化、数量化。

(3)定性与定量紧密结合。

(4)明确系统潜在的显露的因素,弄清要素间的因果关系是系统研究的基本任务、建模的基础。

(5)要素间的关系:

♦事理系统中,是“前因、后果”关系

♦技术系统中,是“输入、输出”关系

♦经济系统中,是“投入、产出”关系

(6)要素间的关系是相对的、多重的。

(7)要素分析和系统行为研究,不应该停留在一种关系上,而应该考虑其发展变化,即动态变化。

(8)为了将控制理论中卓有成效的方法、成果推广到社会、经济等系统,模型应控制化。

(9)要通过模型了解系统的基本控制性能,如是否可控,变化过程是否可以观测。

(10)应从模型获得尽可能多的信息,特别是发展变化的信息。

(11)建立模型要为使用先进的实验科学手段及自然科学方法研究社会、经济等系统提供基础,特别要为电子计算机对抽象系统进行数字仿真模拟提供条件。

(12)建立模型常用的数据:科学实验数据、统计数据、经验数据、生产数据(实验室化验分析)、决策数据。前三种数据有较大局限性,生产数据较易获得,包涵难以用语言文字描述的全部因素,有丰富的内涵。

(13)建模的目的不仅仅是为了认识世界,更重要的是为了改造世界。

(14)五步建模的基本任务,是沟通社会科学与自然科学,使社会科学研究做到数学化、计算机化、自然科学化。

(15)五步建模的灰色建模思路(如图1-3所示),用原始数据X(0),经生成得到X(1),对X(1)按GM建模,得模型计算值(1),将计算值(1)与X(1)进行比较,得到差△X(1),用残差对模型GM作修正。

图1-3 灰色建模思路图

(16)所建立的模型是多要素的、关联的、整体的,决定系统发展态势的,不是某个因素,而是所有因素协调发展的结果。

3)灰色预测

一般预测方法有300种,通常用回归分析法、德尔菲法、趋势外推法、最小方差预测法、马尔克夫预测法、模型法、指数平滑法、残差辨识方法等。三种类型:回归―马尔可夫(又称为统计型),灰色预测与模型法属于连续型,指数平滑与残差辨识则属于递推型。

灰色系统模型的预测,称为灰色预测。

灰色预测可分为如下五类。

(1)数列预测。

对系统行为特征值大小的发展变化进行预测,称为系统行为数据列的变化预测,简称数列预测。如下预测都属于数列预测。

♦粮食产量的预测

♦商品销售量发展变化的预测

♦年平均降水量发展变化的预测

♦人口的预测

♦货运量的预测

♦外贸额发展变化的预测

这种预测的特点是:对行为特征量进行等时距的观测。预测的任务是:了解这些行为特征量在下一个时刻有多大。

(2)灾变预测。

对系统行为特征量超出某个阈值(界限值)的异常值将在何时出现的预测称为灾变预测。所以说,灾变预测即对异常值出现时刻的预测。由于异常值往往会使人们的生活、生态环境、农业生产等的正常活动带来异常结果,造成灾害,所以也称这种预测为灾变预测。如下预测都属于灾变预测。

♦年平均降水量大于某个阈值(可容许值)便是涝灾

♦年平均降水量小于某个阈值是旱灾

♦年产量大于某个指定值,是丰年

♦年产量小于某个指定值,是欠年

♦环境中某种物质含量超出某个阈值,是污染

♦人体中某个参数(如体温、血压、血中成分)超出一定范围就发生病变

♦银行存款超出某个值是经济跃变

灾变预测的特点是:对异常值出现的时间进行预测。预测的任务不是确定异常值的大小(因为异常值的大小是指定的灰数),而是确定异常值出现的时间。灾变预测建模所用数据已不是行为特征量本身,而是异常行为特征值发生的时间,这对时间来说不是等间距的,或者说建模数据的序列是按序号给出的时间间隔。

(3)季节灾变预测。

如果行为特征量异常值的出现,或者某种事件的发生是在一年中某个特定时区,则这种预测称为季节灾变预测。如下预测都属于季节灾变预测。

♦云南春雨是在春天出现

♦临西早霜是在秋末冬初的9、10、11月出现

♦洪水是在汛期出现

季节灾变预测,是一种特定时区内的灾变预测。其特点是:灾变一般仅仅发生在一年的某个特定时段。

(4)拓扑预测(亦称波形预测、整体预测)。

拓扑预测是对一段时间内行为特征数据波形的预测。拓扑预测在不同的场合有不同的意义。

♦对水利方面年径流量曲线来说,拓扑预测意味着在对未来某段时间内总径流量的预测。

♦对气象方面年平均降水量曲线来说,拓扑预测是对某几年总降水量的预测。

♦对生产系统来说,拓扑预测可以是对几年内生产总产值、总产量的预测。

而从本质来看,拓扑预测则是对一个变化不规则的行为数据数列的整体发展进行预测。

(5)系统综合预测。

将某一系统各种因素的动态关系找出,建立系统动态框图。系统的行为特征量是系统的输出。总系统行为特征量是系统总输出,系统中各环节的行为特征量是系统的中间输出。

系统综合预测,是控制系统动态研究的内容。其预测模型与前述数列预测、灾变预测的预测模型不同。它不是一个孤立的GM(1,1)模型,而是一串相互关联的GM(1,N)模型,即控制理论中的状态模型,或者传递函数模型,这是一种输出输入关系,不是单一数列的变化关系。它不但可以了解整个系统的变化,还可以了解系统中各个环节的发展变化,一般属于系统的综合研究,因此称为系统综合预测。做系统综合预测时,必须有某些量是自主的,是可以用GM(1,1)表征的。

4)灰色决策

决策就是指选定一个合适的对策,去对付某个事件的发生,以取得最佳效果。事件与对策的配合称为局势。例如:农业作物的合理布局问题、农业中的区划问题、运筹学中的整数规划问题。又例如:区域劳动力、资金、资源如何调配,使劳动力、资金、资源得到有效利用,得到最大效益,这也是局势。在农业上是产业结构调整的问题,在数学上是线性规划的问题,这些称为灰色决策,是因为规划模型都是按GM得到的。例如对局势决策作简要介绍:下雨是一个事件,为了对付下雨,可以带雨伞、穿雨衣、戴斗笠。三个目标:经济、美观、方便。

5)灰色控制

决策的执行称为控制。所谓灰色控制是指本征性灰色系统的控制,或系统中含灰参数的控制,或用GM(1,1)模型构成的预测控制。

1.3.2 关联度分析

关联分析是动态过程发展态势的量化分析。说得确切一点,是动态发展态势的量化比较分析。

灰色关联分析,从其思想方法上来看,属于几何处理的范畴,其实质是对反映各因素变化特征的数据序列所进行的集合比较。用于度量因素之间关联程度的灰色关联度,就是通过对因素之间的关联曲线的比较而得到的。例如:某一地区1998―2004年总收入、工业收入、农业收入如表1-5所示(单位:亿元)。

表1-5 某地区1998—2004年收入表

用图来映应表1-5,如图1-4所示。

由图1-4可以看出,工业收入的形状与总收入的形状相近,而农业收入与总收入相差较大。这说明,该地区对收入影响较直接的可以说是工业,而不是农业。在制定该地区经济发展规划时,显然应着重发展工业。

图1-4 某地区1998—2004年收入图

这种因素分析的比较,实质上是几种曲线间几何形状的分析比较,即认为几何形状越接近,则发展变化态势越接近,关联程度越大。因此按这种观点作因素分析,至少不会出现异常。此外,对数据量也没有太高的要求。不过直观分析并不能算是一种方法,只能说是一种观点。

但这种方法仍然存在一些问题:比如说如果这几条曲线相差不大,有些虽然有差别,但各区段情况不一样,难以用直接观察方法来判断个别曲线之间的关联程度,而且这和直观的几何形状的判断比较,是不能量化的。因此我们有必要找出一种衡量因素间关联程序大小的量化方法。

关联分析包括许多内容,其中有数据列的表示方法、关联系数的计算公式、关联系数的计算、关联度的解释、数列的增值性,以及它的优势分析。这些概念会在第3章为大家详细阐述。

1.3.3 生成数

研究抽象系统,即社会系统、经济系统,将遇到随机干扰,大都用概率统计方法。但概率统计方法有如下不足。

♦需要大量数据

♦要求数据间存在统计规律

♦要求统计规律是典型的(如正态分布、平稳过程)

♦若信息量不足,结论不直观

灰色系统的基本观点是:一切随机量都可看做是在一定范围内变化的灰色量。比如大气气温的变化是随机量,气温高低,可将它当做是在±50℃范围内变化的灰色量。对灰色量的处理不是找概率分布、求统计规律,而是用数据处理的方法来找数据间的规律。我们称某种数据处理方式为一种数生成方式,数据生成即数据处理,这就是一种就数找数的规律的途径。那么为什么可以这样来处理灰色量呢?客观世界尽管复杂,表述其行为特征的数据可能是杂乱无章的,然而它必然是有序的,有某种功能的,有某种因果关系的,或者说任何系统本身都有某种内在规律的,不过这些规律被复杂的现象所掩盖,被数据间这种杂乱无章的表象所迷惑,对系统的行为特征数据进行集成,就是企图从杂乱无章的现象中去发现内在规律。灰色系统常用的生成方式一般有三类:累加生成,记为AGO(Accumulated Generating Operation);累减生成,记为IAGO(Inverse Accumulated Generating Operation);映射生成。

1)累加生成

如果有原始数据X(0)=(X(0)(1),X(0)(2),…,X(0)(n)),

记生成数列为X(1),X(1)=X(0)(k)(k=1,2,…,n)=(X(1)(1),X(1)(2),…,X(1)(n))

如果X(0)和X(1)之间满足如下关系,即

X(X(0)(1),…,X(0)(k)=X(1)(k)(k=1,2,…,n)

则称为一次累加生成。X(1)(k)的上标(1)表示1次累加生成,记为1-AGO。

如果X(2)为X(0)的二次累加生成,依此类推,X(0)(1)就是X(r)的r次累加生成。

x(0)(k)>0

举例说明:x(0)=(x(0)(k)︱k=1,2,3,4,5)=x(0)(1),x(0)(2),x(0)(3),x(0)(4),x(0)(5)=(3.2,3.3,3.4,3.6,3.8)

求x(1)(k)

解:k=1,x(1)(1)=x(0)(1)=3.2

2)累减生成

将原始数列前后两个数据相减,所得数据称为累减生成。累减生成是累加生成的逆运算。

令x(r)为r次生成数列,对x(r)作i次累减生成记为α(i),其基本关系式为:

α(0)(x(r)(k))=x(r)(k)

α(1)(x(r)(k))=α(0)(x(r)(k))-α(0)(x(r)(k-1))

α(2)(x(r)(k))=α(1)(x(r)(k))-α(1)(x(r)(k-1))

α(i)(x(r)(k))=x(i-1)(x(r)(k))-α(i-1)(x(r)(k-1))

式中,α(0)为0次累减,即无累减,从而有下述关系式:

α(1)为1次累减

α(i)为i次累减

从上式我们可以得到下述关系:

1.3.4 GM(1,1)模型

GM模型建模机理:灰色理论的微分方程性模型称为GM模型,G表示grey(灰),M表示model(模型)。GM(1,N)表示1阶的,N个变量的微分方程型模型,而GM(1,1)则是1阶的,1个变量的微分方程型模型。GM模型的机理和特点有如下几点。

(1)一般系统理论只能建立差分模型,不能建立微分模型。而灰色系统理论建立的是微分方程型模型。差分模型是一种递推模型,只能按阶段分析系统的发展,用于短期分析,只能了解系统显露的变化。正如美国加利福尼亚大学T.C.Hsia在他专著Systems Identification中所指出:“尽管连续系统的离散近似模型对许多工程应用来讲是有用的,但在某些研究领域中,人们却常常希望使用微分方程模型。比如生命科学、经济学、生物医药学等。在这些领域中,微分方程的系数描述了我们所希望辨识的系统内部的物理或化学过程的本质。”然而人们没有找到建立这种模型的方法与途径,正如T.C.Hsia指出“实际上由于导数信号是很难获得的,所以解不存在”。而灰色理论,基于关联度收敛原理、生成数、灰导数、灰微分方程等观点和方法建立了微分方程型模型。

(2)系统行为数据列往往是没有规律的,是随机变化的。对随机变量、随机过程,人们往往用概率统计的方法进行研究。而概率统计的方法要求数据量大,必须从大量数据找统计规律,只便于处理统计规律中有较典型的概率分布,有平稳过程的这一类,对其他非典型分布、非平稳过程、有色噪声的处理,都感到很棘手。总之,概率统计的研究方法计算工作量大,且可以解决和处理的问题较少,而灰色理论则将一切随机变量看做是在一定范围内变化的灰色量,将随机过程看做是在一定范围内变化的、与时间有关的灰色过程。对灰色量不是从统计规律的角度,通过大样本量进行研究,而是用数据处理的方法(灰色理论称为数据生成),将杂乱无章的原始数据整理成规律较强的生成数列再做研究。灰色理论认为尽管系统的行为现象是朦胧的、数据是复杂的,但它毕竟是有序的、是有整体功能的,因此杂乱无章的数据后面,必然潜藏着某种规律,而灰数的生成,就是从杂乱无章的原始数据中去开拓、发现,寻找这种内在规律,这是一种现实规律,不是先验规律。

(3)灰色理论通过多个GM(1,N)模型来解决高阶系统的建模问题。

(4)灰色理论通过模型计算值与实际值之差(残差)建立GM(1,1)模型,作为提高模型精度的主要途径。残差的GM(1,1)模型,一般只注重现实规律,最新数据的修正,因此残差GM(1,1)与主模型之间在时间上一般是不同步的。所以灰色预测模型经常是差分微分模型。

(5)用灰色理论建模,一般都采用三种检验方式。

a.残差大小(或平均值、或最近一个数据的残差值)的检验,按点检验。

b.关联度检验,建立模型与指定函数之间近似性的检验。

c.后验差检验,是残差分布统计特性的检验。

(6)GM模型所得数据必须经过逆生成做还原后才能用。

设有特征灰色系统Xi(0)=[X(0)(1),X(0)(2),∧,X(0)(n)],

有X(1)=(x(1)(1),x(1)(2),…,x(1)(n))=(x(0)(1),x(1)(1)+x(0)(2),…,+x(1)(n-1)+x(0)(n))

X(1)可以建立下述白化形式的方程:

这是一个一阶一个变量的微分方程,所以记作GM(1,1)

在(1-1)式中,a和u可以通过如下最小二乘法拟合得到:

在(1-2)式中,YM为列向量YM=[x(0)(2),x(0)(3),…,x(0)(M)]T;B为构造数据矩阵:

微分方程(1-1)式所对应的时间响应函数为:

(1-3)式就是数列预测的基础公式,由(3)式对一次累加生成数列的预测值:

举例:原始数据x(0)-AGO数据x(1),建立GM(1,1)序列。

(1)建立矩阵B

Y=(13.278,3.337,3.39,3.679)

(2)计算(BTB)-1

(3)计算

(4)建立模型:微分方程

(5)求时间响应函数

(6)生成数误差检验

t=1,x(1)(2)=6.106;t=2,x(1)(3)=9.46.58依此类推

(7)还原数列检验

根据x(0)(t)=x(1)(t)-x(1)(t-1)可得下列计算数据