基于模糊三角数模糊神经网络的软件质量评价方法

2014-08-03 01:06李克文马竟峰刘洪太
计算机工程与科学 2014年7期
关键词:非对称特性神经网络

李克文,张 郁,马竟峰,刘洪太

(中国石油大学(华东)计算机通信与工程学院,山东 青岛 266580)

1 引言

随着工业化和信息化的推进,软件产品作为信息时代的产物逐渐成为各行各业不可或缺的工具,成为某些行业的“大脑”或“中枢神经系统”,软件质量的高低甚至影响到人民的生命财产安全。

为了保证软件质量,很多学者以提高软件质量为目的对软件质量评价的方法进行了大量卓有成效的研究,既包括传统的统计学方法,也包括现代智能计算方法等。然而,在过去的研究中,大都忽略了用户需求对软件质量评价的影响,仅仅关注软件本身的一些质量特性,造成评价结果不全面、不客观。软件产品不同于其他实体产品,往往是由用户的需求驱动的。因此,在软件质量评价中,用户对于软件的满意程度对于软件质量的影响是不可忽视的,也就是说,如果生产出的软件不能很好地满足用户需求则意味着软件质量差[1~3]。评价软件质量时,很多学者利用质量功能展开QFD(Quality Function Deployment)将现阶段用户需求转化为具体的软件特性要求,以指导软件开发[4]。质量功能展开是采用一定的规范化方法将顾客所需特性转化为一系列工程特性,所用的基本工具是质量屋。Frank Liu等人[4]将QFD应用于Web service系统中,将用户的服务需求同Web service系统的设计属性联系起来,充分表达了用户对于系统的需求;Sener Z等人[5]将QFD与模糊回归相结合进行软件质量的评价,提出了基于对称模糊三角数的模糊回归方法来评价软件质量,将用户需求和软件特性用关系式表达出来;文献[6]利用对称三角模糊数来确定顾客需求和工程特性之间的关联关系。文献[7]将带有对称三角型模糊系数的模糊回归理论引入到QFD系统中,以确定顾客需求和工程特性之间的关联关系。而后,文献[8]将对称三角模糊数扩展为非对称三角模糊数和梯形模糊数,并将最小二乘回归和模糊线性回归相结合,提出了两组混合的非对称模糊线性规划模型来确定产品规划质量屋中顾客需求和工程特性之间的关联关系。文献[9]利用模糊专家系统方法来确定顾客需求和工程特性之间的关联关系。通过上述文献分析结果可以看出:质量屋中顾客需求和工程特性之间的关联关系大多是非线性的。模糊神经网络作为一种并行的计算模型,具有并行处理、自适应、联想记忆及容错和鲁棒性强等特点,有很好的非线性映射能力。因此,本文对前期研究中提出的基于非对称模糊三角数的模糊回归方法进行了改进,引入了模糊神经网络,提出了一种基于非对称模糊三角数的模糊神经网络方法来模拟用户需求同软件特性之间的非线性关系,更加符合现实情况中软件质量评价的复杂性。

2 基于非对称模糊三角数的模糊神经网络

2.1 模糊神经网络的结构

在传统的基于神经网络方法的软件质量评价中,大都将可靠性、可维护性等软件评价指标作为模型输入,利用神经网络结构建立评价指标与软件质量之间的非线性关系,最终得到软件质量的一个综合评价值来衡量软件的好坏。本文将通过模糊神经网络将线性回归模型扩展为非线性模型模拟用户需求同软件特性之间的非线性关系,得到用户对某一软件性能评价值。本文构建了一个三层前向反馈神经网络,将基于非对称模糊三角数的线性回归模型扩展为非线性的模型。由于系数是非对称模糊三角数,因此我们构建的神经网络是有n个输入、h个隐藏层及一个输出的模糊神经网络[2,10]。 该模糊神经网络构建了一个非线性模糊模型,将n个非模糊的输入向量映射到一个模糊输出。我们设F(x)为非线性映射函数,那么通过该模糊神经网络得到的模糊输出Op可以表示为Op=F(x),我们通过模糊神经网络,将线性模糊回归模型扩展为非线性模糊回归模型F(x)[11]。

2.2 基于非对称三角模糊数的模糊神经网络的学习训练算法

2.2.1 误差代价函数的确定

(1)

上文中构建的基于模糊三角数的模糊神经网络的学习训练目的就是最大程度地满足上述不等式。为了实现模糊神经网络的训练目的,定义了以下三种情况下的误差代价函数:

Figure 1 Relationship between actual output values and fuzzy output values when [Op≤yp≤[Op图1 [Op≤yp≤[Op时实际输出与模糊输出之间的关系

此时,我们定义如下误差代价函数:

(2)

其中,

(3)

(4)

上式中,ε称为惩罚系数,是一个很小的正数(如ε=0.01)。

Figure 2 Relationship between actual output values and fuzzy output values when yp<[Op≤[Op图2 yp<[Op≤[Op时实际输出与模糊输出之间的关系

此时,我们定义如下误差代价函数:

(5)

Figure 3 Relationship between actual output values and fuzzy output values when [Op≤[Op

此时,我们定义如下误差代价函数:

(6)

使用以上误差代价函数,可以训练该模糊神经网络最大程度地满足不等式(1)。

由于训练神经网络时,给出的标准输出是非模糊的,因此在隐藏层和输出层之间,我们定义如下误差函数:

epl=(yp-[Op]h=1)2/2

(7)

在训练该模糊神经网络时,我们同时运用了两个误差函数eph和epl,因此我们定义该模糊神经网络输入输出之间的误差函数为:

ep=eph+epl

(8)

2.2.2 学习算法

根据eph的h截集的定义衍生出模糊神经网络的学习算法。由于模糊三角数由三个参数决定,因此我们衍生的学习算法就是模糊三角数三个参数的更新算法[10]。我们假设隐藏层与输出层之间的权重为Wj,输入层与隐藏层之间的权重为Wji,且Wj和Wji用如下形式表示:

(9)

其中,大写字母L、C、U作为参数的上标,分别表示模糊三角数的下限值、最可能值和上限值。另外,为了简化算法,我们假设模糊三角数是对称的,因此,

(10)

(11)

模糊权重通过下面的规则调整:

(12)

(13)

(14)

根据公式(12)~公式(14)调整后,模糊权重Wj的下限值可能会比上限值大,因此我们用下面的公式进行调整:

(15)

(16)

模糊神经网络的输入层第i个节点和隐藏层第j个节点之间的模糊权重Wji的调整方法和Wj的方法相同。

3 仿真实验

根据Frank Liu等人搜索引擎的资料,以软件生产厂商生产的搜索引擎软件为例,利用质量屋将收集到的用户需求与软件特性信息表示出来,实验数据[5]采用Sener Z等人表述的质量屋形式。本实验使用Matlab工具进行模拟仿真实验,通过模糊三角数的模糊神经网络模拟本实例中用户需求与各生产厂商生产的搜索引擎软件特性之间的非线性关系,仿真结果会得到各厂商搜索引擎软件对于某一用户需求的竞争力指标值,通过该指标值来评价各厂商搜索引擎软件竞争力差异,也可为软件开发人员提供参考。该实例通过对用户的需求分析得到了五个用户需求,分别是可扩展性、可靠性、速度、正确性以及易用性。根据经验及软件生产人员的分析得出可能对用户需求产生影响的八个软件特性分别是响应时间、数据库大小、精确性、语言数、特殊点击、死链接、更新时间和格式数。

为了统一量纲,将该质量屋软件特性的数值进行了归一化处理,与Sener Z等人计算的结果一致,用如下矩阵A表示。

A=

我们以y2和x3,x6及x7之间的关系为例构建一个三个输入、一个输出的非线性模糊神经网络模型。输入值X为:

目标输出值T=[5.0 3.7 3.6 4.7]T,归一化后T=[0.2947 0.2177 0.2118 0.2765]T。我们用本文中介绍的学习算法进行Matlab仿真,算法中用到的参数如下:

(1)隐藏层节点数:3个节点;

(2)h的取值:h=0.5;

(3)迭代次数:250代;

(4)学习常量:η=0.5;

(5)动量系数:α=0.9。

训练算法迭代250次时的实验结果如图4所示。

Table 1 Actual output and target output of the fuzzy neural network表1 模糊神经网络的实际输出和目标输出值

而后,我们运用文献[5]中模糊回归和最优化方法对软件的用户需求与软件特性之间的关系进行定量,实验数据依然采用Sener Z等人[5]表述的质量屋形式,如图4所示。实验中模糊参数h的值依然取0.5。通过计算得到参数结果如表2所示。

我们仍以y2和x3,x6及x7之间的关系为例,由表2可构建线性关系表达式如下:

y2=2.611+2.612x3+(-0.130)x6+0.086x7

通过计算可得各软件厂商对于可靠性用户需求方面竞争力归一化后的指标值:O(0.2986,0.2202,0.2163,0.2647)。通过对比实验结果可以看出,运用模糊回归和最优值方法来模拟用户需求与软件特性之间的关系精确度差于本文所提出的方法。通过实验可以看到该模糊神经网络的训练效果比较好,较好地逼近目标输出,能够为软件开发人员调整开发策略,最大程度地满足用户需求。

4 结束语

本文构建了基于非对称模糊三角数的模糊神经网络模型,以处理软件质量评价中用户的需求与软件特性之间的非线性关系。该模型考虑到软件在软件质量评价中的复杂性,将用户需求作为一种特殊的软件特性应用于软件质量评价,采用模糊三角数作为模糊神经网络各层次之间的权重,更加符合现实情况。通过具体的实例对模糊神经网络进行了训练,得到了较好的训练结果,为软件质量评价提供了一种更加客观的方法。

[1] Fung R Y K,Chena Y, Tang Jia-fu. Estimating the functional relationships for quality function deployment under uncertainties[J]. Fuzzy Sets and Systems, 2006, 157(1):98-120.

[2] Abraham A,Vasant L,Bhattacharya A. Neuro-fuzzy approximation of multi-criteria decision-making QFD methodology[M]∥Fuzzy Multi-Criteria Decision Making, Berlin:Springer,2008:301-321.

[3] Xiong Wei,Wang Juan-li,Cai Ming. Trustworthy software evaluation based on QFD[J]. Application Research of Computers, 2010,27(8):2991-2994.(in Chinese)

[4] Liu Xiao-qing(Frank),Zhu Lian-zhang.Design of SOA based web service systems using QFD for satisfaction of quality of service requirements[C]∥Proc of International Conference on Web Services, 2009:567-574.

[5] Sener Z, Karsak E E. A fuzzy regression and optimization approach for setting target levels in software quality function deployment[J]. Software Quality Jouranl, 2010, 18(3):323-339.

[6] Chan L K ,Wu M L.A systematic approach to quality function deployment with a full illustrative example[J] . Omega, 2005,33(2):119-139.

[7] Kim K J, Moskowitiz H, Dhingra A, et al. Fuzzy multi- criteria models for quality function deployment [J] . European Journal of Operational Research, 2000,121(2):504-518 .

[8] Fung R Y K ,Chen Y, Tang J F. Estimating the functional relationships for quality function deployment under uncertainties[J]. Fuzzy Sets and Systems, 2006,157(1):98-120.

[9] Kwong C K, Chen Y, Bai H, et al. A methodology of determing aggregated importance of engineering characteristics in QFD [J]. Computers and Industrial Engineering, 2007, 53(4):667-679.

Table 2 Software feature parameters when fuzzy parameter h=0.5表2 模糊参数h=0.5时软件特性参数表

[10] Ishibuchi H,Kwon K,Tanaka H. A learning algorithm of fuzzy neural networks with triangular fuzzy weights[J]. Fuzzy Sets and Systems, 1995, 71(3):277-293.

[11] Kutschenreiter-Praszkiewicz I.Application of neural network in QFD matrix[J]. Journal of Intelligent Manufacturing, 2013,24(2):397-404.

附中文参考文献

[3] 熊伟,王娟丽,蔡铭. 基于QFD技术的软件可信性评估研究[J].计算机应用研究, 2013,24(2):397-404.

猜你喜欢
非对称特性神经网络
谷稗的生物学特性和栽培技术
色彩特性
神经网络抑制无线通信干扰探究
非对称Orlicz差体
进一步凸显定制安装特性的优势 Integra DRX-5.2
Quick Charge 4:什么是新的?
点数不超过20的旗传递非对称2-设计
基于神经网络的拉矫机控制模型建立
复数神经网络在基于WiFi的室内LBS应用
非对称负载下矩阵变换器改进型PI重复控制