2. 北方工程设计研究院有限公司, 石家庄 050011;
3. 清华大学 智能技术与系统国家重点实验室, 北京 100084
2. Norendar International LTD, Shijiazhuang 050011, China;
3. State Key Laboratory of Intelligent Technology and Systems, Tsinghua University, Beijing 100084, China
随着人工智能以及机器人技术的蓬勃发展,机器人逐渐在工业、航天、医疗等众多领域具有举足轻重的影响。在机器人领域中,移动机器人的室内方向估计仍然是一个具有挑战性的任务。移动机器人需要具有一定的能力,能够依据已知的环境特征判断出自身当前所在的位置,并且定位的精度直接关系到机器人是否能够准确又高效地完成任务。但是在许多情况下,移动中的机器人得到的方向往往存在一定的误差,主要是由于车轮打滑以及位置的不确定性等众多因素[1-3]。
Monte Carlo定位算法[4]是一种粒子滤波,也是一种常用的机器人定位方法。Zheng等[5]采用联合核稀疏编码方法融合多个声纳数据进行移动机器人定位。Zingaretti等[6]通过视觉与声纳传感器完成对机器人工作环境特征信息的提取,利用Monte Carlo算法融合视觉与声纳信息对机器人定位。Ullah等[7]提出通过SIFT(scale invariant feature transform)描述子和Harris特征检测子,提取视觉局部特征并送入支持向量机进行机器人定位。文[8]提出运用GPS数据差把机器人之间的距离关联起来从而实现多机器人的相对定位。科研人员对移动机器人的定位技术开展了广泛的研究并且取得了不错的成绩,但是关于确定移动机器人方位的算法较少。
为了获得移动机器人的精确定位,Cao等[9]提出了通过单个全方位相机实现移动机器人方位的估计,Silverman等[10]提出了使用Bayesian滤波器来估计水下机器人的位置和方位。
基于以上内容,本文提出一种基于雷达信息的支持向量回归(support vector regression, SVR)方法研究移动机器人方位的模型,并且与基于极限学习机回归模型进行对比。虽然支持向量机在许多领域取得了巨大的成功,但它在移动机器人的室内环境定位中的应用仍然未得到广泛研究。本文针对建立回归模型时面临的难题,如选取合适的输入量、数据是否归一化等问题进行了研究,建立了有效的回归模型,并在数据集上验证了回归模型的有效性。
1 回归模型与数据处理 1.1 支持向量机支持向量机是模式识别中一种常用的算法,不仅成功地应用于分类任务[11-12],也在回归问题中取得了不菲的成绩[13-14]。建立机器人室内方位估计模型的基本思想是将低维数据映射到高维空间并进行线性回归。支持向量回归结构图如图 1所示。
在支持向量回归模型中,回归函数表示为
$ f\left( \mathit{\boldsymbol{x}} \right) = {\mathit{\boldsymbol{w}}^{\rm{T}}}\varphi \left( \mathit{\boldsymbol{x}} \right) + b. $ | (1) |
其中:xi⊂R是激光雷达采集的机器人工作的环境信息,f(xi)⊂R是输出量,函数φ(x)将低维空间中的非线性对应于高维特征空间的线性回归,b是阈值,w是权重向量,wTφ(x)为在高维空间中wT与φ(x)的内积。
$ \min \;\frac{1}{2}{\mathit{\boldsymbol{w}}^{\rm{T}}}\mathit{\boldsymbol{w}} + C\sum\limits_{i = 1}^N {{\zeta _i} + C\sum\limits_{i = 1}^N {\zeta _i^{\rm{g}}} , } $ | (2) |
约束:
$ \begin{array}{l} {\mathit{\boldsymbol{w}}^{\rm{T}}}\varphi \left( \mathit{\boldsymbol{x}} \right) + \mathit{\boldsymbol{b}} - {\mathit{\boldsymbol{y}}_i} \le \zeta _i^{\rm{g}} + \varepsilon , \\ {\mathit{\boldsymbol{y}}_i} - \left( {{\mathit{\boldsymbol{w}}^{\rm{T}}}\varphi \left( {{\mathit{\boldsymbol{x}}_i}} \right) + {\mathit{\boldsymbol{b}}_i}} \right) \le {\zeta _i} + \varepsilon , \\ \zeta _i^g, {\zeta _i} \ge 0, i = 1, 2, \cdots , N. \end{array} $ | (3) |
其中ζig和ζi是松弛变量。引入Lagrange函数将上述问题转化为对偶问题,将得到如下的回归函数:
$ f\left( \mathit{\boldsymbol{x}} \right) = \sum\limits_{i = 1}^N {\left( {{\alpha _i} - a_i^g} \right)} k\left( {{\mathit{\boldsymbol{x}}_i}, \mathit{\boldsymbol{x}}} \right) + b. $ | (4) |
其中k(xi, x)是一个内核函数,RBF(radial basis function)核函数经常应用到支持向量机回归模型中。但在本文中,使用线性核函数建立支持向量回归模型,SVR实现机器人室内方位估计步骤如图 2所示。
1.2 极限学习机
极限学习机是由Huang等[15-16]提出的一种单隐层前馈神经网络。ELM随机生成输入权重和隐含层神经元的偏置,通过最小二乘法得到相应的输出权重,并且计算速度快。极限学习机神经网络的模型如图 3所示。
已知N个不同训练样本{X, T}={Xj, tj}j=1N, 其中xj∈
(1) 随机设置输入权重Wi和隐含层神经元的偏置bi;
(2) 计算隐含层输出矩阵H;
(3) 计算输出权重β:β=H†T.
1.3 数据分析及处理本文使用的数据来源于公开DR(domestic rooms)数据集,DR数据集由文[17-18]提供,DR数据集是借助Pioneer3-DX机器人平台、驱动机器人进入不同的房间,并通过激光测距传感器采集房间的特征信息,其中激光测距传感器视角为240°,测量范围为5.6 m,安装在距离地面约30 cm高的位置,Pioneer3-DX机器人如图 4所示。
DR数据集包含了4个不同城市的房屋与公寓的雷达信息,其中DR数据集内包括21个居室(living room)、6个走廊(corridor)、35间浴室(bathroom)、21个厨房(kitchen)、28间卧室(bedroom)和12个厕所(toilet),共123个房间的雷达信息。每个房间内激光雷达信息的多少,主要取决于房间特征的不同。如图 5所示,展示了DR数据集中一些房间的信息,其中机器人的路径显示为浅灰色,而检测到的障碍物显示为深灰色。
为确保室内机器人方位估计的可靠性并降低异常数据的干扰,需要对原始数据进行必要的预处理。在DR数据集中包含非常丰富的信息如雷达扫描的特征信息、扫描的最小值、机器人航向角、时间戳等等,需要提取出所需的雷达信息与机器人的航向角信息。为了提高回归模型的精度,避免数据集出现大数吃小数的现象,对数据进行归一化的处理,将其归一化到[0, 1]区间内。
为了研发具有鲁棒性的回归模型,同时也为了实验的严谨性,本文数据按照6:4的比例划分为训练样本与测试样本。
将数据分别送入支持向量回归模型(SVR)与极限学习机回归模型(extreme learning machine regression, ELMR),估计机器人在室内环境中的方位。为了便于对这2种回归模型进行评价,采用均方误差(mean-square error, MSE)和训练时间2个指标来分析ELMR和SVR模型的优劣。MSE可以衡量一个样本波动的大小,值越大则波动越大,即拟合的准确率不高,MSE表达式为
$ \text{MSE=}\sqrt{\frac{1}{n}\sum\limits_{t=1}^{n}{{{\left( {{y}_{t}}-\overset\frown{y_{t}^{g}} \right)}^{2}}}}. $ | (5) |
其中:yt为第t个样本的估计值,
将SVR和ELMR应用于室内机器人的方位估计,将得到的拟合结果进行比较,如表 1所示,可以看出2种回归模型都有较好的预测精度,其中ELMR的训练时间相对较短,但SVR的精度要优于ELMR算法,SVR模型的MSE为0.113 rad,ELMR模型的MSE为0.320 rad,SVR模型比ELMR模型预测精度高0.207 rad。虽然SVR的训练时间相对于ELMR增加了,但是模型的预测精度有一定的提高。
SVR的参数对模型的影响较大,在此模型中选择了线性核参数,不敏感损失参数的取值为0.1,主要分析了惩罚常数C对回归模型预测性能的影响,如图 6所示。
SVR模型训练完成后进行测试,基于SVR机器人方位估计的测试集结果见图 7。
从图 7可以看到,基于SVR测试集的均方误差为0.113 rad,使用SVR模型估计室内机器人的方位取得了较好的结果,估计机器人方位的曲线与实际机器人方位的曲线较为接近。
通过交叉验证方法寻找极限学习机的最优参数N与C,参数N的搜索空间为(101, 104)区间,参数C的搜索空间为(10-4, 104)。参数对模型的影响,机器人方位的估计结果见图 8和9。
从图 9可以看到,基于ELMR测试集的均方误差为0.320 rad,通过ELMR模型估计室内机器人的方位效果并不是很理想,与SVR模型相比估计曲线与实际曲线相差较大,但是预测结果仍在可接受范围内。
通过比较图 7、图 9和表 1可以看出,采用SVR模型预测机器人方位的均方误差要明显小于ELMR模型的。虽然采用SVR模型预测机器人方位具有较高的预测精度,能满足机器人的定位需求,但是使用SVR模型预测机器人的方位还是存在一定的误差,可能是由于房间之间的相似性(比如浴室和厕所的房间尺寸比较相似,容易混淆)。
3 结论本文围绕室内机器人的方位问题,提出通过支持向量机、极限学习机回归模型将低维非线性输入量映射到高维线性输出,设计并实现了基于雷达信息的回归模型估计室内机器人的方位。实验结果表明,基于SVR机器人方位估计的均方误差为0.113 rad,基于ELMR机器人方位估计的均方误差为0.320 rad,验证了SVR模型在机器人方位中的优势。未来只需获得机器人的激光雷达数据并使用基于SVR模型,就可以估计室内移动机器人的方位,这对提高移动机器人的定位精度具有一定的意义。下一步将通过改进支持向量机模型降低模型的训练时间。
[1] | HSU C C, WONG C C, TENG H C, et al. Localization of mobile robots via an enhanced particle filter incorporating tournament selection and nelder-mead simplex search[J]. International Journal of Innovative Computing, Information and Control, 2011, 7(7): 3725–3737. |
[2] | HSU C C, WONG C C, TENG H C, et al. Dual-circle self-localization for soccer robots with omnidirectional vision[J]. Journal of the Chinese Institute of Engineers, 2012, 35(6): 619–631. DOI:10.1080/02533839.2012.701835 |
[3] | NELDER J A, MEAD R. A simplex method for function minimization[J]. The Computer Journal, 1965, 7(4): 308–313. DOI:10.1093/comjnl/7.4.308 |
[4] | DELLAERT F, FOX D, BURGARD W, et al. Monte Carlo localization for mobile robots[C]//Proceedings of the International Conference on Robotics and Automation. Detroit, MI, USA: IEEE, 1999: 1322-1328. http://doi.ieeecomputersociety.org/resolve?ref_id=doi:10.1109/ROBOT.1999.772544&rfr_id=trans/tp/2002/02/ttp2002020237.htm |
[5] | ZHENG X M, LIU H P, SUN F C, et al. Sonar-based place recognition using joint sparse coding method[C]//Proceedings of the International Joint Conference on Neural Networks. Vancouver, BC, Canada: IEEE, 2016: 3877-3882. http://ieeexplore.ieee.org/document/7727701/ |
[6] | ZINGARETTI P, FRONTONI E. Vision and sonar sensor fusion for mobile robot localization in aliased environments[C]//Proceedings of the International Conference on Mechatronics and Embedded Systems and Applications. Beijing, China: IEEE, 2006: 1-6. http://ieeexplore.ieee.org/document/4077798/ |
[7] | ULLAH M M, PRONOBIS A, CAPUTO B, et al. Towards robust place recognition for robot localization[C]//Proceedings of the IEEE International Conference on Robotics and Automation. Pasadena, CA, USA: IEEE, 2008: 530-537. http://ieeexplore.ieee.org/xpls/icp.jsp?arnumber=4543261 |
[8] | JO K H, LEE J, KIM J B. Cooperative multi-robot localization using differential position data[C]//Proceedings of the International Conference on Advanced Intelligent Mechatronics. Zurich, Switzerland: IEEE, 2007: 1-6. http://www.researchgate.net/publication/4303033_Cooperative_multi-robot_localization_using_differential_position_data |
[9] | CAO J, LABROSSE F, DEE H. An evaluation of image-based robot orientation estimation[M]. NATRAJ A, CAMERON S, MELHUISH C, et al. Towards autonomous robotic systems. Berlin, Heidelberg: Springer, 2014: 135-147. |
[10] | SILVERMAN Y, SNYDER J, BAI Y, et al. Location and orientation estimation with an electrosense robot[C]//Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems. Vilamoura, Portugal: IEEE, 2012: 4218-4223. http://ieeexplore.ieee.org/xpls/icp.jsp?arnumber=6386167 |
[11] | HUANG G B, ZHU Q Y, SIEW C K. Extreme learning machine:Theory and applications[J]. Neurocomputing, 2006, 70(1-3): 489–501. DOI:10.1016/j.neucom.2005.12.126 |
[12] | SCHÖLKOPF B, BURGES C, VAPNIK V. Extracting support data for a given task[C]//Proceedings of the 1st International Conference on Knowledge Discovery and Data Mining. Montréal, Québec, Canada: AAAI Press, 1995: 252-257. http://dl.acm.org/citation.cfm?id=3001377 |
[13] | VAPNIK V, GOLOWICH S E, SMOLA J. Support vector method for function approximation, regression estimation, and signal processing[C]//Proceedings of the 10th Annual Conference on Neural Information Processing Systems. Denver, Colorado: MIT Press, 1996: 281-287. https://www.researchgate.net/publication/2595572_Support_Vector_Method_for_Function_Approximation_Regression_Estimation_and_Signal_Processing |
[14] | COLLOBERT R, BENGIO S. SVMTorch:Support vector machines for large-scale regression problems[J]. Journal of Machine Learning Research, 2001, 1(2): 143–160. |
[15] | HUANG G B, CHEN L, SIEW C K. Universal approximation using incremental constructive feedforward networks with random hidden nodes[J]. IEEE Transactions on Neural Networks, 2006, 17(4): 879–892. DOI:10.1109/TNN.2006.875977 |
[16] | HUANG G B, ZHU Q Y, SIEW C K. Extreme learning machine: A new learning scheme of feedforward neural networks[C]//Proceedings of the International Joint Conference on Neural Networks. Budapest, Hungary: IEEE, 2004: 985-990. |
[17] | URŠIČ P, TABERNIK D, BOBEN M, et al. Room categorization based on a hierarchical representation of space[J]. International Journal of Advanced Robotic Systems, 2013, 10(2): 94. DOI:10.5772/55534 |
[18] | URŠIČ P, LEONARDIS A, SKOČAJ D, et al. Hierarchical spatial model for 2D range data based room categorization[C]//Proceedings of the IEEE International Conference on Robotics and Automation. Stockholm, Sweden: IEEE, 2016: 4514-4521. http://ieeexplore.ieee.org/document/7487650/ |