新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于神经网络的自主吸尘机器人混合视觉研究

基于神经网络的自主吸尘机器人混合视觉研究

作者:时间:2012-06-29来源:网络收藏

BP算法框图

图4给出了BP算法的程序流程图。在执行算法之前,首先要设置变量和参量。其中:Wmi(n)为第n次迭代时输入层与隐层I之间的权值向量;Wip(n)为第n次迭代时输出层与隐层I之间的权值向量;n为迭代次数,K为训练样本的下标,Maxloop为最大迭代次数,Maxtrain为训练样本的总数,ξ为能量最小误差。

仿真结果

用FoxPro建立输入样本的数据库,用VC编程训练网络。训练时用了72组输入样本,并且循环4000次训练网络,训练时间15s。表1给出了部分训练样本的示例(P0表示样本0,以下同)。


表1 训练样本示例

初始权值为-0.01~0.01的随机数值。下面给出了网络训练的权值输出。

输入层与隐层权值

0.251,-9.187,2.347
0.231,-9.225,2.373
0.266,-9.213,2.331
4.722,-1.479,-1.470
0.214,2.520,-9.067
0.293,2.512,-9.013
0.275,2.442,-8.890

输出层与隐层权值

-11.843,-5.154,-4.722,6.348
9.970,10.696,-10.990,-11.535
9.938,-9.617,10.613,-12.470

为了验证训练权值的正确性与强壮性,对大量的输入样本(包括没有经历训练过程的样本)进行实验,网络产生相匹配的输出。实验结果表明,网络的训练是成功的。

部分实验数据如下:

输入数据组数:6
第0组输入数据:0000000
第0组输出为:1000
第1组输入数据:0001000
第1组输出为:0001
第2组输入数据:1101000
第2组输出为:0010
第3组输入数据:1110000
第3组输出为:1010
第4组输入数据:0001100
第4组输出为:0100
第5组输入数据:1101001
第5组输出为:0001

最后利用Matlab提供的Neural Network工具箱,对训练网络的输出和相应的期望输出进行衰退分析,以测定训练网络的性能。图5为前面训练所用的72组输入数据产生的输出A和期望输出T的衰退分析图。其中虚线为最佳线性拟合曲线A=T,实线为72组输出A与相应的期望输出T的线性拟合。由图5可以看出,拟合效果理想,因此训练网络的性能可靠。

实际应用过程的思路为:将BP网络训练的权值移植到机器人的处理器中;7组传感器按顺序轮流工作,每循环一次得到一组输入作为的输入;通过计算得到匹配的实时输出;行走电机根据输出信号作出相应的避障行为。

本文将融合进自主吸尘机器人的视觉系统,从而获得相对于单一传感器更加准确和全面的障碍物信息。采用了基于神经网络的多传感器信息融合算法,通过网络训练,机器人能够对训练过程中没有经历的实际情况做出合理的反应。这种算法的鲁棒性和容错性很强,能够适应自主吸尘机器人非结构化的工作环境。


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭