自主认知机制及在机器人中的应用
蔡建羡,李立新,高琴
(防灾科技学院 防灾仪器系,河北 燕郊,065201)
摘要:在学习自动机理论的框架中,基于条件反射理论,建立一种具有自主认知机制的自主认知自动机。该自动机是一个五元组,包括内部集合、取向核、认知核、自主认知单元和操作熵。从理论上证明自主认知机制的收敛性。采用设计的自主认知自动机作为机器人的数学抽象和形式化工具,描述机器人的自学习行为,应用于自平衡机器人的运动控制。自主认知自动机的状态集合用于描述机器人的倾角和倾角速度,操作行为集合用于描述施加到机器人左右轮电机上的控制信号。随着学习的进行,机器人逐渐掌握运动平衡技能。
关键词:条件反射;学习自动机;自主认知;运动控制
中图分类号:TP273 文献标志码:A 文章编号:1672-7207(2011)S1-0486-07
Bionic autonomous learning mechanism study and applied on robot
CAI Jian-xian, LI Li-xin, GAO Qin
(Department of Disaster Prevention Instrument, Institute of Disaster Prevention, Yanjiao 065201, China)
Abstract: Based on the conditioned reflex theory a self-cognitive automaton which has autonomous cognitive mechanism is constructed under the learning automaton frame. The bionic self-learning automaton has a 5-tupe structure and mainly contains inner sets, oriented core, cognitive core, autonomous cognitive unit and operant entropy. Theoretical proof is made for the convergence of autonomous cognitive mechanism. And the designed self-cognitive automaton which is used as the mathematical abstraction and formal tool of robot is used to describe the self-learning behavior of robot and is applied to the motion control of self-balanced robot. The state sets of self-cognitive automaton are described by tilt angle and tilt angle rate of robot, and the operant sets are described by control signals of left motor and right motor. Robot gradually learned the motion balanced skill with the learning proceeding.
Key words: conditioned reflex; learning automaton; autonomous cognitive; motion control
随着机器人学和机器人技术的发展和深入,认知机器人学逐渐成为智能机器人研究的重要内容。1997年,Brooks提出了认知机器人学(Cognitive robotics)的概念[1]。认知机器人学旨在赋予机器人认知能力,使机器人能在与环境交互的过程中,通过认知自主地和渐进地形成和发展知识和技能。Chatila认为[2],自主渐进学习是认知机器人的基本要素。依据具体化原则,认知机器人的学习需要具备实时和在线的特性,这是认知机器人学习与其他离线学习方法的重要区 别[3]。尽管已经有诸如符号计算模型、神经计算模型、进化计算模型、行为计算模型以及各种认知结构理论,机器人的认知行为及其设计原则的抽象和形式化描述仍然是一项具有挑战性的工作。自动机理论是自动机器的数学抽象和形式化工具。在学习自动机理论的框架中建立和发展认知自动机,将为认知机器人提供一种描述其认知发育行为及其设计原则的逻辑结构。目前,有关学习自动机在机器人学领域中应用的文献报道不多,最近的工作包括:1994年,Pierce和Kuipers用有限状态自动机描述机器人世界,包括机器人及其环境,并称其为机器人世界的离散抽象[4];1995年,Dean等构造了1种具有随机输出函数的推理有限自动机,用于机器人环境勘测,绘制环境地图[5];2002年,EI-Osery和Jamshidi采用随机学习自动机帮助多机器人学习,并在虚拟实验环境中进行了仿真实验[6];2004年,Wang等运用确定性有限状态自动机,结合Q学习,帮助机器人进行行为选择和最优控制[7];2008年,Cattinelli等采用概率有限状态自动机描述机器人与人之间的情感交流,同时,采用强化学习技术,让智能体学习如何促使父辈智能体朝向期望状态[8];国内较为相关的文献报道来自于闫保英和赵合计的工作,提出用状态自动机模型实现Robocup机器人角色的决策过程[9]。
其实,机器人的认知是1个渐进的过程和终身的任务。认知科学和认知心理学认为,人不可能1次或同时学习所有的知识或技能。Pfeifer等认为,机器人的认知过程需要遵循生物的渐进学习原则[10]。1938年,Skinner提出了“操作条件反射”(Operant Conditioning, OC)[11]机理,操作条件反射原理不仅对于理解人和动物的学习行为有重要意义,而且对于在机器人或机器系统中“复制”人和动物的学习行为也具有重要意义,被视为生物系统最基本的学习形式。所以,基于Skinner OC理论来构造仿生自主学习自动机,更贴近生物的行为,更具有仿生自主特性。
本文作者在学习自动机理论的框架中,基于条件反射理论,建立一种具有自主认知机制的自主认知自动机。该自主认知自动机是一个五元组,包括:(1)内部集合,主要指感知状态集合和操作集合;(2)取向核,指导自主学习的方向;(3)认知核,作为认知单元的基元;(4)自主认知单元,实施学习计算;(5) 操作熵,衡量自主认知自动机的自学习程度。本文作者对自主认知自动机进行了理论分析,从理论上证明了其自主认知机制的收敛性,即操作熵随着学习进程收敛至极小。采用自主认知自动机作为机器人的数学抽象和形式化工具,描述机器人的自学习行为,应用于两轮机器人的运动平衡控制。自主认知自动机的状态集合用于描述机器人的倾角和倾角速度,操作行为集合用于描述施加到机器人左右轮电机上的控制信号。仿真和实验结果均验证了设计的自主认知自动机的可行性和有效性。
1 自主认知自动机设计
在学习自动机理论的框架中,建立具有自主认知机制的自主认知自动机(Self-Cognitive Automaton, SCA)的结构如图1所示。
图1 SCA自动机的结构示意图
Fig.1 Structure sketch map of SCA automaton
定义1: SCA自动机是一个五元组离散计算模型
SCA = < Ω, φ, Γ, L, H >。各元素含义如下。
(1) Ω:BSLA自动机的内部集合,包括:感知状态集合S={si | i=1, 2, ···, n},S为系统所有可能离散状态组成的非空集;操作集合A={ak | k=1, 2, ···, r},A表示仿生自学习自动机的所有可能操作。
(2) :SCA自动机的取向核,这里的取向核是从生物学意义上定义的,用来指导自主学习的方向。一般地,取向核的范围。其中,和分别定义为取向性最差和最好的取向函数值。
(3) Γ:SCA自动机的认知核,作为认知单元的基元,Γ代表1对随机自主学习映射。其中,
表示映射的激发概率,满足:,。
(4) L:SCA自动机的自主学习单元,作用是依据取向核提供的取向信息,实施学习计算。
(5) H:SCA自动机的操作熵,衡量SCA自动机的自学习程度。表示仿生自学习自动机在状态条件下的操作熵:
(1)
2 取向核和认知单元的设计
2.1 取向核的设计
令SCA自动机的取向核 ,其设计应满足如下条件:
(1) ;
(2) 假设系统的期望输出为x*,定义输出误差:e=x-x*。则t时刻,在状态si(t)前提下,若选取操作ak后,状态转移为,并且使得误差降低:e(t+1)-e(t)<0,则说明系统对“状态-操作”这一映射对的取向性大;反之,取向性小。
基于上述条件,设计取向函数表达式如下:
(2)
其中:相当于操作行为作用下,系统的即时性能指标;为误差的权重系数;为取向函数的系数,学习的目标就是使性能指标函数趋于极小。
2.2 认知单元的设计
假设t时刻的状态为,取向值为,认知核Γ实施操作,观测到t+1时刻状态为,取向值为。由于执行操作后,取向函数值的变化量可用来判断该操作的好坏,因此,OC认知单元设计如下:
(3)
其中:;
;
;。
,,为学习系数;和为学习速率函数,满足:,。
由上式可以看出:若取向值的变化量 >0,则在以后的学习中,在状态下实施操作的概率倾向于减小;反之,倾向于增大。具体学习流程见图2。
图2 SCA自动机的学习流程
Fig.2 Learning flow chart of SCA automaton
3 在机器人运动控制中的应用
本研究以两轮自平衡机器人为研究对象,其简化图如图3所示,基于SCA自动机实现平衡控制的示意图如图4所示。其中:SCA自动机的状态集合用于描述机器人的状态倾角和角速度;操作集合A用于描述施加到机器人左右轮上的控制信号;表示SCA自动机学习到的最优操作;;分别为机器人的倾角期望值和角速度期望值,它们输入到SCA自动机中,作用是为取向值的生成提供依据。
3.1 仿真实验
SCA自动机的仿真参数设置如下:采样时间ts= 0.01 s;θ的上限值θmax=0.5 π,下限值θmin=-0.5 π;的上限值,下限值;初始状态,其他均为0;取向核计算公式中,;学习单元的学习系数 ;用电压表示的操作集合A={-24, -5, -1, 0, 1, 5, 24};每个行为的初始概率为,对应的初始操作行为熵 ,由熵的特性可知此时熵最大。
图3 两轮机器人系统
Fig.3 Two-wheeled robot system
图4 基于SCA自动机的平衡控制
Fig.4 Balance control based on SCA automaton
图5中给出了30轮训练学习过程中,状态(0, 0)对应的操作行为熵的变化情况。由仿真结果可以看出:在实验初始时,机器人没有任何先验信息和知识,操作熵给定最大值;随着学习的进行,操作熵开始下降,大约经过25轮训练后,操作熵基本不变,并且达到最小值。操作熵的变化曲线表明:SCA自动机的主要特征就是模拟了生物的OC机制,其学习过程是一个变化的动态学习过程;随着学习经验的积累,自组织程度越来越高。因此,具有仿生的自组织和自学习功能,可以用于描述和模拟各种自学习自组织系统。为了清晰地表现出SCA自动机的自学习和自组织的仿生学习过程,从中取出了初始学习阶段、中期学习阶段和学习结束阶段等3轮成功训练的结果。图6分别给出了两轮机器人倾角、角速度、位移和前进速度在上述3轮训练情况下的仿真结果。由图6可以看出:在第1轮训练阶段,由于一开始机器人没有任何经验,所以学习是盲目的,学习误差较大,但趋势是向着好的方向发展;进入第2轮训练阶段后,由于机器人通过与环境交互,已经积累了一些经验,所以,学习效果明显变好;进入第3轮训练阶段后,这时机器人已经积累了丰富的经验,具备了对平衡控制技能认知和自学习的能力,学习结果达到了预期的效果。仿真结果表明:在仿生自学习自动机的作用下,机器人自己学会了如何站立并保持平衡,其学习是一个由初始的盲目学习到后期的确定学习的过程。
图5 操作熵的变化曲线
Fig.5 Change curve of operant entropy
3.2 物理实验
为进一步验证SCA自动机的有效性,在实际的两轮机器人系统上进行了实时在线的实验研究。硬件控制流程如图7所示。机器人通过倾角传感器和陀螺仪获得倾角θ和角速度的模拟值,经A/D转换后,采用仿生自学习自动机对倾角和角速度的信息进行处理,以得到控制机器人的驱动电机的姿态平衡控制信号。编码器获得左右轮的速度信号的和与差分别构成PID控制器,结合SCA自动机学到的控制信号,即:,实现两轮机器人的平衡控制。
在实验过程中,控制器的采样周期为5 ms。其他参数设置如下:倾角θ的离散化集合为S1={1 600, 1 400, 1 500, 1 555, 1 610, 1 710, 1 900},角速度的离散化集合S2={1 750, 1 875, 1 975, 2 025, 2 080, 2 180, 2300};取向值计算公式中,;OC学习机制的学习系数;操作行为集合A={-2 000, -360, -100, 0, 100, 360, 2 000};PID控制器设置参数分别为:。
图6 机器人自平衡控制的仿真结果
Fig.6 Simulation results of robot self-balance control
图7 硬件控制流程图
Fig.7 Flow chart of hardware control
实验结果如图8所示。从图8可以看到:实验结果和仿真结果类似;在实验初期,同样由于机器人没有任何经验知识,再加上机器人惯性和轮子驱动等因素的影响,机器人的倾角变化出现了较大的波动。但学习单元的收敛速度很快,大约1.5 s后,晃动幅度明显下降(下降幅度约为60%),机器人通过一段时间的学习积累了一定的经验,开始慢慢适应环境;2 s后,机器人晃动幅度基本达到了允许的控制精度,可以近似认为达到了平衡状态。机器人平衡后,依然有微小的晃动,主要是机器人惯性和轮子驱动等因素所致。
图8 机器人自平衡控制的实验结果
Fig.8 Experiment results of robot self-balance control
通过实验可以看出:SCA自动机是一种比较激进的控制,它在控制的初期,系统的输出会有较大的超调,但能够很快地恢复平衡,且稳态误差在允许的范围内。实验结果同时表明:在SCA自动机的作用下,机器人不仅自主学会了如何站立,而且具有在线实时学习的能力,从而为复杂和不确定对象的控制器优化设计提供了一条新的途径。
4 结论
(1) 在学习自动机理论的框架中,基于条件反射理论,建立一种具有自主学习机制的仿生自学习自动机,其主要特征在于模拟了生物的操作条件反射机制,具有仿生的自组织、自学习和自适应功能,有效地的将仿生学、心理学和生物学应用于控制系统,具有实现仿生自主学习控制的功能。
(2) 通过对仿生自学习自动机进行理论分析,证明了仿生自学习自动机的操作条件反射学习机制的 收敛性,即:最优操作出现的概率随学习进程趋于1,操作行为熵随学习进程收敛至极小。
(3) 通过对两轮机器人运动平衡控制的仿真和实验研究,表明仿生自学习自动机收敛速度快,实现过程简单;可以使自平衡机器人像人或动物一样,具有学习能力,并可被训练,通过操作条件反射学习和训练,自组织地渐进形成、发展和完善其运动平衡控制技能。
参考文献:
[1] Brooks R A. From earwigs to humans[J]. Robotics and Autonomous Systems, 1997, 20(2/3/4): 291-304.
[2] Chatila R. Robot mapping: an introduction[J]. Springer Tracts in Advanced Robotics, 2008. 38: 9-12.
[3] Ude A, Omrcen D, Cheng G. Making object learning and recognition an active process[J]. International Journal of Humanoid Robotics, 2008, 5(2): 267-286.
[4] Pierce D, Kuipers B. Learning to explore and build maps[C]// Proceedings of the National Conference on Artificial Intelligence. Cambridge: MIT Press, 1994: 264-1271.
[5] Dean T, Angluin D, Basye K et al. Inferring finite automata with stochastic output functions and an application to map learning[J]. Machine Learning, 1995, 18(1): 81-108.
[6] EI-Osery A, Jamshidi M. A stochastic learning automaton based autonomous control of robotic agents[C]// Proceedings of the IEEE International Conference on Systems, Man and Cybernetics, Yasmine Hammamet. Tunisia: Institute of Electrical and Electronics Engineers Inc, 2002: 100-105.
[7] Wang Xi, Ray A, Lee P, et al. Optimal control of robot behavior using language measure[J]. International Journal of Vehicle Autonomous Systems, 2004, 2(3/4): 147-167.
[8] Cattinelli I, Goldwurm M, Alberto Borghese N. Interacting with an artificial partner: Modeling the role of emotional aspects[J]. Biological Cybernetics, 2008, 99(6): 473-489.
[9] 闫保英, 赵合计. 机器人足球中角色决策的有限状态自动机模型[J]. 山东轻工业学院学报, 2008, 22(2): 98-101.
YAN Bao-ying, ZHAO He-ji. The finite state automaton model of the decision-making of robocup based on role[J]. Journal of Shandong Institute of Light Industry, 2008, 22(2): 98-101.
[10] Pfeifer R, Lungarella M, Iida F. Self-organization, embodiment, and biologically inspired robotics[J]. Science, 2007, 318(5853): 1088-1093.
[11] Skinner B F, The Behavior of Organisms[M]. New York: Appleton-Century-Crofts, 1938: 457-473.
(编辑 何运斌)
收稿日期:2011-04-15;修回日期:2011-06-15
基金项目:防灾减灾青年科技基金(201014);国家自然科学基金资助项目 (61004012)
通信作者:蔡建羡(1978-),女,河北衡水人,博士,讲师,从事机器学习、智能控制研究;电话:13700369469;E-mail: cjxlaq@163.com