- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于粒子群―BP神经网络陀螺温漂建模
基于粒子群―BP神经网络陀螺温漂建模 摘要:针对哥氏振动陀螺的温漂问题,本文采用基于粒子群的BP神经网络算法对压电振动陀螺的温度漂移现象进行建模,并在算法中加入高斯噪声干扰;相对于传统的单BP神经网络算法,含有噪声的粒子群―BP神经网络算法,在精度和收敛速度两个方面有了较大提高,所构建的温漂模型具有更好的非线性描述能力,从而能为哥氏振动陀螺提供了更高精度的零电位误差补偿。 关键词:压电陀螺 性能优化 粒子群算法的BP神经网络 高斯噪声 中图分类号:V241.5 文献标识码:A 文章编号:1007-9416(2013)03-0058-02 虽然压电振动陀螺因其体积小,成本低,可靠性高等优点被广泛应用在军用和民用领域[1],但压电振动陀螺仍是一种低精度的陀螺,为了使压电振动陀螺能在中高精度的领域被广泛的使用,我们必须对其零位漂移进行有效的补偿。陀螺零位漂移的产生是由于环境温度与陀螺内部器件温度的变化造成。目前,抑制零位漂移主要方式是建立合适的数学模型进行补偿。但是由于压电振动陀螺的漂移是非线性的,其模型的建立一直是难点问题[2-4]。 针对这一问题,本文采用基于粒子群算法的BP神经网络模型对陀螺的漂移进行补偿[5-8],实验结果证明了比单个BP神经网络在精度和计算效率方面有了较大的提高。 1 粒子群-BP神经网络算法模型 1.1 粒子群算法和BP神经网络简介 粒子群算法是根据已有信息交流的粒子网络,对解空间进行全域搜索[9]。每个粒子可以得到它所在区域局部范围的信息,通过信息交换还可以掌握整体的全局信息,而且得到的全局信息比较全面。因此,粒子群算法具有较好的全局搜索能力。 而BP神经网络的网络结构是一个前向多层网络,网络层数至少有三层,主要有一个输入层,一个输出层和至少一个隐含层,通过连接权值实现每一层之间信息的传递。若预期值输出值与网络实际输出值存在很大的差别,利用误差梯度下降法修正每一层神经元的权值和阈值,直到差值修正为允许的最小值时再正向传播,这一过程就是学习的过程,即误差的反向传播过程。 1.2 基于粒子群算法的BP神经网络改进 虽然BP神经网络泛化能力突出,但是存在不足:因为梯度下降算法,在不恰当的初值条件下,学习过程会造成网络权值不收敛甚至产生振荡,不能得到预期的结果,而且实际问题在数学上经常被抽象成具有多维曲面的复杂问题,因为多个局部极值点存在,算法很容易收敛到局部极小值,而不能得到全局最优解。 对于BP神经网络易陷入局部最小解的问题,主要通过加入随机噪声模拟真实的人脑和与粒子群算预收敛两种方法解决[10,11]。其中,我们在BP神经网络每一轮学习过程中加入噪声干扰,这样不仅可以防止过度拟合,而且模拟了自然神经网络的特性,后续的实验结果也证实了这种人为干扰的有效性。另外,我们将粒子群算法和BP神经网络有机结合,利用粒子群算法在全局搜索上的优势帮助BP神经网络越过局部最小解,具体实现方案如下: (1)粒子群算法和BP神经网络各参数初始化,每个粒子的最大飞翔速度用表示,最小飞翔速度用表示,介于最大飞翔速度和最小飞翔速度之间的速度为粒子随机产生的速度,加速常数,,惯性因子,粒子群的数目为m,迭代次数为n; (2)寻找局部粒子最优解和全局粒子最优解,计算粒子的适应值,对于任意一个粒子,令其适应值为,局部最优解,若,那么,此时位置为粒子最佳位置;令全局最优值为,若,,此时位置为最佳位置; (3)持续更新粒子的飞翔速度和位置,重复步骤2,一直到误差允许的范围或迭代次数的最大值为止; (4)输出BP神经网络的阈值和权值。由以上步骤得到的阈值和权值将作为BP神经网络结构参数的初始值,而随机噪声将在BP神经网络每一轮学习过程中叠加。 2 仿真结果与分析 2.1 实验数据的采集与预处理 利用高低温箱,分别得到在-40℃到50℃的温度条件下,陀螺的零位电压输出,实验中发现30分钟后,陀螺输出电压达到稳定值,我们选取这一组稳定数据作为模型的原始数据,实验数据如表1所示。在具体使用时,我们采用MATLAB软件中的premnmx函数进行数据归一化和还原处理。 2.2 模型结构与参数的确定 因为理论上已经证明BP神经网络输入层、隐含层、输出层三层结构能够逼近任何非线性函数,所以本文中使用的BP神经网络为三层结构。输入和输出都是一维数据,容易知道输入层和输出层的神经元个数为一。而且因为这两层的神经元不参与梯度下降计算,只承担数据的输入和输出工作,所以激励函数选用线性函数purelin。仿真实验发现网络精度随着隐含层神经元个数的递增不断提高,当神经元个数为30时,网络精度不再增加,因此确定隐含层神经元个数为30,激励函数选用函数logsig。 学习速率是BP神经
原创力文档


文档评论(0)