APP下载

BP神经网络在无人机成本估算中的应用

2009-07-16李燕军

中国经贸 2009年12期
关键词:BP神经网络

李燕军

摘要:无人机系统是一种新型的作战武器系统,是当今航空界研究的一个热点。这种武器系统在飞机作战效能方面随着科学技术的进步有着很好的发展潜力,在全寿命周期费用方面与有人机相比极具优势。本文主要讨论的是无人机定价中成本估算的问题,并使用BP神经网络构建了一个无人机成本估算模型。

关键词:BP神经网络;成本估算;武器装备

一、我国常用的军品成本估算方法

针对武器系统的成本估算,国内外常用的一般方法有四种:参数估算法、工程估算法、类推估算法和专家判断估算法。

1.参数估算法,又称经验公式法。这种方法实际上是使武器系统的费用与武器系统的特点或重要参数之间建立起费用估算关系。而这些费用变量都有一个数学值范围,并不只是一个值。它的函数形式就是成本估算关系式。简言之,它是利用类似系统的历史费用数据去推导新型武器系统的费用。

2.工程估算法,又可称之为单价法或直接法。它的主要做法是根据工作分解结构在对各个独立部分和系统零部件的料、工、费进行详细估算的基础上,再将各单项估算值综合为总的成本费用。所以,该方法有时又被称为“自下而上”的成本估算法。

3.类推估算法实际上是将拟议中的产品、装备、系统功能与以前的某个系统的可比部分或类似部分进行直接比较。这种方法既可用于直接与具有同样操作或工作特性的类似系统进行比较,也可将被估系统直接与具有许多相同费用特性的不同系统进行比较。

4.专家判断法类似于专家推测法。它要求估算者拥有关于系统或系统部件的综合知识。在经验数据不足或没有足够统计资料的情况下,往往需要用这种方法。

除以上常用的4种方法之外,目前讨论的比较多的方法还包括以下3种:

1.灰色系统方法。通过对主导因素建立GM(1,1)模型,对关联因素建立GM(1,N)模型,最后得到系统的状态方程模型,按状态模型对系统进行预测。通常采用GM(1,1)和GM(1,N)相结合的方式。大致步骤为:一是确定系统的主导因素和关联因素;二是建立GM模型群,对主导因素建立GM(1,1)模型,其余因素建立GM(1,N)模型,组成线性方程组;三是根据GM模型组得出状态方程矩阵求解状态方程。灰色系统能够适应样本数较少的情况。如孙本海(2002)在他的硕士论文中使用灰色系统理论中的残差模型和改进的G-N迭代法构建了炮兵武器装备费用的参数模型。郭继周等人(2004)用灰色系统理论进行费用预测的方法,建立了GM(1,1) 模型及GM(1,1) 预测模型。陈尚东等人(2008)针对地空导弹维修费用数据量有限规律性不同的特点,选用灰色理论进行维修保障费用预测:首先,简要分析了GM(1,1)模型,讨论了维修费用数据的处理;然后,以某新型地空导弹武器系统为例,具体探讨了灰色预测模型的应用,并对比分析了老信息灰色预测、新信息灰色预测和新陈代谢预测模型的精度。

2.模糊综合评价方法。模糊综合评价方法(FCE)是一种应用非常广泛和有效的模糊数学方法。它应用模糊数学的有关方法和理论,通过建立隶属度函数,考虑不可量化因素的影响,进行综合分析和评价。如郭建华等人(2004)利用模糊综合评价模型对武器装备项目的研制费用进行了估算。

3.人工神经网络(Artificial Neural Network, ANN)方法。目前采用较多的是BP(Back Propagation)神经网络预测模型法,具体步骤:一是选取学习样本,对权值进行初始化;二是训练学习样本;三是用测试样本进行数据仿真。可以证明,对于任何一个在闭区间内的连续函数都可以用带一个隐层的3层BP网络来逼近。如刘铭等人(2000)提出了一种基于BP神经网络的防空导弹采购费估算模型,并对典型的防空导弹采购费进行了估算。刘国利等人(2003)根据导弹武器系统研制的特点,分析并确定了影响导弹武器系统研制费用的主要因素,提出了基于人工神经网络的费用预测模型。

军品的费用估算是一项持续性的工作,贯穿于军品研制的全过程,随着研制工作的进展,采用的估算方法应越来越详细、精确。以上介绍的7种方法各有各的特点,在不同的条件下都具有特定的使用价值,具体对比情况见表1。

二、ANN方法和BP网络的优点

神经网络的建模能力也是由参数决定的,但它有别于回归分析方法,它只限制所包含多项式的整体个数,不限制它们的阶数,即在参数一定的情况下,可以通过学习(即各分量的竞争)来合理选择任意阶数的项。这体现了神经网络的非线性特性,因而在总体上其精度由于传统的回归分析方法。

运用神经网络方法建模的另一个原因是,在实践中,我们虽然可能拥有已研制军品的相关费用数据,但这些信息常常是不完整的,而且往往含有伤残结构及错误成分,且具有不确定性,这些问题给以往的处理方式造成很大的困难。而神经网络可以通过不断地学习,从典型型号研制相关费用数据中学会处理这些问题,且能补全不完整的信息,并根据已学会的知识和经验对复杂问题做出合理的判断,以做出有效的预测和估计。

运用神经网络方法建模的一般过程包括确定系统需求描述、选择神经网络模型(包括神经网络结构、训练方法等)、数据预处理、确定神经网络的可执行代码、训练和测试等过程,具体情况见图1。

这里需要特别说明的是神经网络模型的选择问题。目前,在数于种网络结构、上百种训练学习算法中,应用最广泛、技术最成熟的是多层前向式网络结构,应用误差反向传播算法(Error Back Propagation Learning Algorithm),简称为BP网络。这主要归结于基于BP算法的多层感知器具有以下一些重要能力。

1.非线性映射能力。BP网络学习能学习和存储大量输入-输出模式映射关系,而无须事先了解这种映射关系的数学方程。

2.泛化能力。BP网络训练后将所提取的样本对中的非线性映射关系存储在权值矩阵中,在其后的工作阶段,当向网络输入训练时未曾见过的非样本数据时,网络也能完成有输入空间向输出空间的正确映射。

3.容错能力。BP网络允许输入样本中带有较大的误差甚至个别错误。因为对权矩阵的调整过程也是从大量的样本对中提取统计特性的过程,反映正确规律的只是来自全体样本,个别样本中的误差不能左右对权矩阵的调整。

三、某型号无人机成本估算的BP模型

1.确定样本集。为了验证前文所说的BP神经网络在成本估算中的准确性,本文选择了八中型号的无人机来进行模拟运算。具体的数据见下表(表2)。

由表2可知,本文选择了与最后的整机价格有主要关系的6个性能指标,分别是导航定位精度、飞行高度、控制半径、最大平飞速度、续航时间和任务载荷。这六个性能指标是作为BP神经网络模型的输入项(in)存在的,而最后一项整机价格则是作为模型的输出项(out)。需要说明的是,根据前文的思路,本部分使用BP神经网络估算的应该是军品的成本,而不是军品的整机价格。在表5中之所以使用整机价格,主要是因为表中的价格是按照目前的军品定价模式计算出来的,即只要在整机价格的基础上除以(1+5%)就是飞机的成本。根据神经网络和本文研究的特点,此处使用整机价格并不影响最终结论的正确性。另外,为了保证结果的真实性,表中的整机价格在军方审价完成之后,承制方与军方最终的成交价格。还需要说明的是,有两个因素可能会影响本案例研究的精确性:一是为了搞好保密工作,本表格提供的数据是经过了脱密处理的。二是本文样本的数量不大,只有用来供神经网络学习的样本只有6个(前面6个型号),用来测试的只有2个(最后的2个型号),这必然会影响结果的精度。但是只要误差在本文认为的可接受的范围内(≤20%),本文就认为研究结果有效。

2.确定网络结构和算法。本案例的BP神经网络结构如图2。

由上图可知,该BP神经网络的结构由6个性能指标构成输入层,输出层只有一个节点即整机价格。中间的隐层包含7个神经元节点。

本文采用的是MATLAB的BP神经网络工具箱中的Trainlm函数建立的模型,它采用的是L-M算法。

3.数据标准化、训练和测试。本文采用的MATLAB版本是MATLAB7.70(R2008b),该版本的功能比较强大,对数据的要求不像以前的那么严格(以前版本的MATLAB要求节点输入和输出值的大小在[0,1]),所以笔者在并不需要对数据进行标准化。这样不仅能够减少模型的计算量,而且还有利于提高最终结果的精确度。

对案例中BP神经网络的训练和测试,本文大致经过了以下过程:

第一步在MATLAB中命令窗口中输入:

in=[250,200,150,120,100,100;1000,4000,5000,5000,5500,6500;10,40,150,150,200,400;90,350,200,200,210,220;1,1.5,4,5,4,10;1,10,25,60,35,60];

out=[5,50,120,150,180,300];

x=[80,10000,500,600,2,50];

y=[20,15000,300,700,5,200];

第二步:

net=newff(in,out,7)%7个神经元;

net=train(net, in, out)%训练;

p=sim(net, in)%查看训练效果;

px=sim(net, x)%预测第7组数据;

py=sim(net, y)%预测第8组数据;

如果经过上面的运行没能获得满意的结果,可进行第三步,运行如下程序:

net=train(net, in, out)%训练;

p=sim(net, in)%查看训练效果;

px=sim(net, x)%预测第7组数据;

py=sim(net, y)%预测第8组数据;

反复进行第三步直到得到满意的结果;

4.结果。根据前文构建的军品成本估算BP模型,以及上文确定的算法和过程,在经过了5次迭代后得到结果见表3。

由上面的结果可知,对高速无人机1和高速无人机2测试的误差都在20%以内,是在前文限定的范围内,因而笔者认为这个结果是可以接受的。并且,测试结果表明目前的定价还是略高于计算值。

四、存在的问题

在将BP神经网络模型应用于无人机的过程中,笔者认为以下几个方面的问题是比较难把握的。

1.输入层节点个数的控制。就本案例来说,输入层有6个节点,也就是6个性能指标。正如前文所言,选择的这6个性能指标是因为它们与最后的整机价格有主要关系。这个判断主要是根据专家的判断和实际的做法得出来的,所以其中的主观性很大。如果选择的尺度或标准稍微有所变化,那么指标的个数就会发生变化。而且我们如果要判断到底需要几个指标才能达到最好的预测效果。

2.隐层节点数的控制。这里包括两个问题:一是包括几个隐层?二是隐层中包括几个节点。一般来说一个隐层的BP神经网络就能很好的学习和测试,就笔者看到的文献而言,也主要是一个隐层。关于隐层中节点的个数,没有具体的规则,只能根据结果调整,这就对研究者使用MATLAB进行BP神经网络建模的经验和技术提出了挑战。

3.样本集大小和精度的控制。理论上来说,样本集的规模越大,数据越充足,最终获得的结果会越精确。在样本集大小给定的情况下,将BP神经网络学习和测试的精度(误差)设置在那个范围内比较合适,这个问题也是需要反复拟合才能找到比较合适的。

4.如果样本集中涉及资金的时间跨度较大,那么必须考虑资金时间价值的影响,应将样本集中数据的时间应统一起来。此外,如果有批量采购的情况存在,还应该考虑生产熟练程度的影响。

参考文献:

[1]刘 建:航天型号寿命周期费用估算及报价系统研究与实现[D].长沙:国防科学技术大学,2004.

[2]刘 铭 赵保军 杨建军等:基于GA和BP融合算法的装备费用估算方法[J].系统工程与电子技术,2002.24(2):2-65.

[3]李 波 许 诚 王君珺:导弹武器系统采办费用估算有关问题分析[J].海军航空工程学院学报,2006,21(5):585-588.

[4]孙本海:炮兵武器装备估算方法的研究与实现[D].长沙:国防科学技术大学,2002.

[5]郭继周 宋贵宝 彭绍雄:装备使用保障费用灰色建模分析[J].系统工程与电子技术,2004,26 (1):64-67.

[6]陈尚东 张 琳 陈永革:地空导弹武器系统维修费用灰色预测模型[J].空军工程大学学报(自然科学版),2008,9(2):72-75.

[7]郭建华 白 桦 蒋宜勋等:模糊综合评价方法在武器装备项目研制费用估算中的应用[J].兵工学报,2004,25(6):726-729.

[8]刘 铭 陈 杨 陈永革:BP网络在防空导弹采购费用研究中的应用[J].系统工程与电子技术, 2000,22(2):63-65.

[9]刘国利 唐晓兵 刘远亮:基于BP网络的导弹研制费用预测[J].战术导弹技术, 2003,(1):23-58.

[10] Sonmez,Rifat. Conceptual cost estimation of building projects with regression analysis and neural networks[J].Canadian Journal of Civil Engineering,2004,31(4):677-683.

[11] Bode,Jurgen. Neural networks for cost estimation[J].Cost Engineering,1998,40(1):25-30.

[12]张洪辰:适应市场经济需要,转换军品价格模式[J].价格理论与实践,1994,9(5):35-37.

[13]Werbos P J. Beyond regression: New tools for prediction and analysis in the behavioral sciences[D]. Cambridge, MA: Harvard University,1974.

[14]韩力群:人工神经网络理论、设计及应用[M].第2版.北京:化学工业出版社,2007:47-70.

猜你喜欢

BP神经网络
基于神经网络的北京市房价预测研究
一种基于OpenCV的车牌识别方法
基于遗传算法—BP神经网络的乳腺肿瘤辅助诊断模型
一种基于改进BP神经网络预测T/R组件温度的方法
基于BP神经网络的光通信系统故障诊断
提高BP神经网络学习速率的算法研究
就bp神经网络银行选址模型的相关研究
基于DEA—GA—BP的建设工程评标方法研究
复杂背景下的手势识别方法
BP神经网络在软件质量评价中的应用研究 