layer和线性产品层数。 在每层数之内的结
are充分地连接了到早先层数结。 输入变数其中每一被分配到在输入层数的结并且被连接直接地到暗藏的层数,不用重量。 暗藏的层数结是RBF单位。 结计算中心和网络输入传染媒介之间的欧几里德的距离,并且通过结果一个非线性作用[17]。 产品层数结是RBF的被衡量的线性组合在暗藏的层数的。 一个RBF神经网络的The结构与n输入的,
one输出了,并且q暗藏的结在图1.被给。
Where,输入x = [x1、x2,…, xn] T和w = [w1, w2,…, wq] T是神经网络重量。 ui是a
nonlinear作用和这里,它被选择作为高斯
activation作用
where ci = (ci1, ci2,…, cij) T, j=1, 2,…, n,是ith RBF暗藏的单位的中心,并且双是ith RBF暗藏的单位的宽度。 然后ith RBF网络产品可以代表作为q依据作用的一个线性地被衡量的总和
Let y (k)代表网络的指标值在时间k。 网络的The错误在时间k的被定义如下:
The网络的价值函数是被摆正的错误之间
the目标和被预言的价值,以下等式给:
The使被摆正的错误减到最小的学习算法目标
using梯度下降做法。 因此,变动的
output重量wi、中心cij和宽度双是坚定的 根据以下等式的 :
where α是动量期限,并且η是学习的率, α ∈ [0,1], η ∈ [0, 1]。 期限_wi、_cij和_bi被定义如下: 我们编程体会RBF算法的When,怎么
choose以下三个参量的最宜的原始价值在Eqs的。 (5)–(7) : 产品重量wi、中心cij和宽度双,是非常重要的。 如果他们没有适当地被选择, RBF神经网络也许贬低塑造的有效性和准确性。 因此一种基因算法被用于优选RBF神经网络参量。
Agenetic算法是维护的一个交互式做法 构成套候选人解答对具体串的a人口[第18个问题]。 在每个世代时,在当前人口的串为他们的有效率是额定的作为解答。 通过使用基因 *** 作,例如选择、天桥和变化,根据这些评估,候选人解答的新的人口被形成。 有要求的四主要步使用基因算法解决问题,包括,健身的编码,评估,基因 *** 作和终止标准。
Modeling a SOFC stack based on GA-RBF neural networks identificationAbstract
In this paper, a nonlinear offline model of the solid oxide fuel cell (SOFC) is built by using a radial basis function (RBF)neural network based on a genetic algorithm (GA). During the process of modeling, the GA aims to optimize the parameters of RBF neural networks and the optimum values are regarded as the initial values of the RBF neural network parameters. Furthermore, we utilize the gradient descent learning algorithm to adjust the parameters. The validity and accuracy of modeling are tested by simulations. Besides, compared with the BP neural network approach, the simulation results show that the GA-RBF approach is superior to the conventional BP neural network in predicting the stack voltage with different temperature. So it is feasible to establish the model of SOFC stack by using RBF neural networks identification based on the GA.© 2007 Elsevier B.V. All rights reserved. Keywords: Solid oxide fuel cells (SOFCs)Radial basis function (RBF)Neural networksGenetic algorithmsIdentification
译:基于GA-RBF神经网络识别技术建模SOFC堆栈
摘要
本文给出了如何基于基因算法(GA)使用径向基函数(RBF)建立一个固体氧化物燃料电池(SOFC)的非线性离线模型。建模时,GA的目标是优化RBF神经网络参数,而优化值则作为RBF神经网络参数的初始值。而且,我们利用梯度下降学习算法调整这些参数。采用模拟方法来检测建模的正确性和准确度。另外,与BP神经网络方法相比,模拟结果显示,在不同温度下预测堆栈电压时使用GA-RBF方法优于传统的BP神经网络。因此使用基于GA的RBF神经网络识别方法建立SOFC堆栈模型是可行的。
© 2007 Elsevier B.V。版权所有。
关键字:固态氧化物燃料电池(SOFC),径向基函数(RBF),神经网络,基因算法,识别
我参照《神经网络原理》的算法描述写的,不知道对不对,欢迎探讨。void CRBFNN::KMeansCluster(size_t K)
{
if( K >m_nPatternNum)
return
int* vecLabel= new int[m_nPatternNum]
//step1 初始化 选择K个初始不同的中心点
RandomSelCenter(K)
while(true)
{
memset(vecLabel,-1,sizeof(int)*m_nPatternNum)
size_t rnd = rand()%m_nPatternNum//抽取样本 以某种概率抽取样本向量
float fMin = (float)INT_MAX
float fNum = 0
//step2 相似匹配 _input[rnd]离_center[j]最近,则标记为j
for(int j=0j<(int)Kj++)
{
fNum = 0
for(size_t k = 0k<m_nInputNumk++)
fNum += (_input[rnd][k]-_center[j][k])*(_input[rnd][k]-_center[j][k])
if(fNum <fMin)
{
fMin = fNum
vecLabel[rnd] = j
}
}
//step3 更新中心 重新计算_center
CMatrix lastCenter = _center//一个对象需要通过另外一个对象进行初始化,调用拷贝初始化
for(int i=0i<(int)Ki++)
{
if(vecLabel[rnd] == i)
{
for(size_t j=0j<m_nInputNumj++)
_center[i][j] = _center[i][j] + (_input[rnd][j]-_center[i][j])*0.1f//学习率0.1
}
}
//step4 _center无明显变化退出
fNum = 0
for(int i=0i<(int)Ki++)
{
for(size_t k = 0k<m_nInputNumk++)
fNum += (_center[i][k]-lastCenter[i][k])*(_center[i][k]-lastCenter[i][k])
}
if(fNum <1e-3)
break
}
delete[] vecLabel
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)