CN104570738A - 基于Skinner操作条件反射自动机的机器人轨迹跟踪方法 - Google Patents
基于Skinner操作条件反射自动机的机器人轨迹跟踪方法 Download PDFInfo
- Publication number
- CN104570738A CN104570738A CN201410844504.1A CN201410844504A CN104570738A CN 104570738 A CN104570738 A CN 104570738A CN 201410844504 A CN201410844504 A CN 201410844504A CN 104570738 A CN104570738 A CN 104570738A
- Authority
- CN
- China
- Prior art keywords
- robot
- state
- eng
- probability
- action
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Manipulator (AREA)
- Feedback Control In General (AREA)
Abstract
本发明公开了一种基于Skinner操作条件反射自动机的机器人轨迹跟踪方法,涉及移动机器人轨迹跟踪领域,具体涉及一种基于Skinner操作条件反射自动机的机器人轨迹跟踪方法。本发明首先建立机器人的操作和状态集合,并建立相应的状态到操作的概率集合,并令其符合均匀分布;然后,随机选择一个操作,计算相应的位置变化,进而根据距离目标轨迹的距离计算取向函数,根据取向函数值按照操作条件反射理论调整动作概率分布,计算***熵;当***熵趋于最小值时,学***,是其具备较强的自学习、自组织、自适应能力,自主条件参数,成功进行轨迹跟踪。
Description
技术领域
本发明涉及移动机器人轨迹跟踪领域,具体涉及一种基于Skinner(斯金纳)操作条件反射自动机的机器人轨迹跟踪方法。
背景技术
随着自主移动机器人技术的发展,自主移动机器人的应用领域越来越广泛。它可以取代人类到达许多人类无法到达或有危险的环境,如火灾、地震搜救机器人;还可以代替人类做一些服务类工作,如博物馆导游等。移动机器人的轨迹跟踪运动控制不但可直接用于跟踪目标、机器人编队等领域,而且,循迹追线是对环境信息的一种简化,有利于开发出更有效的算法应用于复杂环境下的自主移动机器人上。
经典控制方法和现代控制方法是常用的移动机器人轨迹跟踪控制方法,虽然应用地比较成熟,但其不能自主调整参数,对于同一算法运用在不同机器人、不同环境中需要人工调整参数。本发明所采用的Skinner操作条件反射自动机的轨迹跟踪方法来源于1938年美国著名心理学家斯金纳(B.F.Skinner)在其著作《The Behavior of Organisms:an experimental analysis》中提出的操作条件反射(Operant Conditioning)的理论。通过刺激产生反应,反应影响刺激出现的概率,是斯金纳操作条件反射理论的核心。它体现了人或动物自学习能力,反映了智能体对环境的自适应性。如果能将斯金纳提出的操作条件反射原理应用于机器人轨迹跟踪方面,将会提高轨迹跟踪的智能化程度。
发明内容
本发明提出一种基于Skinner操作条件反射自动机的轨迹跟踪方法,对每个状态对应的操作赋予概率权值,权值的变化随抽样结果的反馈进行更新,从而使其抽样概率发生变化。本发明使机器人能够在没有导师信号的情况下,依靠环境对机器人的奖励与惩罚,建立操作条件反射,使机器人自主完成轨迹跟踪的学习。
基于Skinner操作条件反射自动机的机器人轨迹跟踪方法,其特征在于包括以下步骤:
步骤1:确定Skinner操作条件反射机的数学模型,SKCOA;
SKCOA自动机是离散的一个七元组,SKCOA=<S,A,f,δ,P,L,H>,S为离散状态组合集合,A为自动机可选择动作操作集合,f为状态转移函数,δ是取向函数,P为每一状态下选择操作的概率集合,令初始概率分布为均匀分布,L为自动机的操作条件反射学习机制,H为自动机操作行为熵;
步骤2:确定SKCOA自动机可选择的操作集合A;
操作集合A={vk,ωj|k=1,2,...,na1,j=1,2,...,na2},vk为机器人前进的速度,ωj为机器人转过的角速度,na1,na2分别为速度和角速度的操作集大小,na=na1*na2,na为操作集大小;
步骤3:获得机器人在t的时刻的状态集合S={ei|i=1,2,...,ns};
机器人t时刻在环境地图中的坐标位置,记作si|t=(xi,yi,θi);xi,yi分别为机器人t时刻所在的横纵坐标,θi为机器人与横轴夹角;期望轨迹坐标点为soi|t=(xoi,yoi,θoi),xoi,yoi分别为机器人期望轨迹在t时刻的横纵坐标,θoi为期望位姿与横轴夹角;机器人在t的时刻的状态集合为S1={ei|i=1,2,...,ns}=soi-si=(xoi-xi,yoi-yi,θoi-θi),ns为状态集合大小;将坐标转换为以机器人为坐标原点的坐标系中,S=T·S1,T为旋转矩阵;
步骤4:根据概率集合,从动作集中选择一组动作,即选择前行的速度vk和角速度ωk;
步骤5:计算状态转移,方法如下:
式中,xn、yn、θn分别代表动作选择后机器人新的横纵坐标以及机器人的朝向角度,xo、yo、θo分别代表动作选择前机器人新的横纵坐标以及机器人的朝向角度,ts为机器人传感器的采样时间;
步骤6:计算能量函数eng的值;
能量函数用于表示机器人当前位置与轨迹的距离关系,记作eng=eng(S)={eng(Si)|i=1,2,...,ns}∈R,距离越近,eng越小,反之,eng越大,方法如下:
步骤7:计算取向函数δ值;
取向函数δ=δ(S,A)={δik|i=1,2,...,ns;k=1,2,...,na},模拟了自然界中生物的取向性,方法如下:
δik=eng(Si)-eng(Si+1) (3)
其中δik表示si∈S执行动作(vk,ωk)∈A后***性能的变化;δ<0时,为负取向,说明***性能趋向变差;δ=0时,为零取向,说明***性能趋向不变;δ>0时,为正取向,说明***性能趋向变好;
步骤8:根据Skinner操作条件反射原理调整动作集概率分布P;
动作集概率分布的规则为:正强化时,动作概率增加;负强化时,动作概率减少;设t时刻状态sm,选择操作ak执行,通过状态转移到sn;
当δ>0时,
当δ<0时,
式中,η1>0,η2>0;α1(t),α2(t)为学习速率函数,0<α1(t)<1,0<α2(t)<1;pmk(t)为t时刻机器人在状态sm下选择动作ak的概率;pmk'(t)为t时刻机器人在状态sm下选择动作除ak外的其他操作的概率;
步骤9:计算t时刻***熵;
式中,pik(t)为机器人在状态si下选择动作ak的概率;
步骤10:判断熵是否趋于最小值Hmin,如果是,标志着***已达到自组织,机器人已形成操作条件反射习得最优动作,则本次学习结束,转到测试阶段;否则,转步骤2;
步骤11:测试阶段,载入期望轨迹和速度;
步骤12:在保持概率矩阵P不变,根据概率从操作集中选择操作执行,按照状态转移公式计算新的状态,循环往复;
步骤13:判断机器人当前位置是否为终点,如果是,则结束,否则,转步骤11,继续测 试阶段。
附图说明
图1本发明学习阶段流程图;
图2本发明测试阶段流程图;
图3机器人简化示意图;
图4学习阶段机器人轨迹仿真图;
图5测试阶段机器人轨迹仿真图。
具体实施方式
下面结合附图作进一步说明。
本发明所述方法的流程图如附图所示,包含以下几个步骤。
步骤1:初始化。令机器人状态集合S={ei|i=1,2,...,ns},区间划分如表1,ei(1)、ei(2)分别划分了5个区间,一共25个;操作集合A={vk,ωj|k=1,2,...,na1,j=1,2,...,na2}速度和角速度区间划分如表2,这里保持速度不变,角速度划分了5个区间。令机器人从起点出发,选择起点坐标为机器人当前状态。令初始概率集合P为均匀分布。
表1状态集合区间划分
表2操作集合区间划分
步骤2:机器人当前时刻的坐标位置,记作si|t=(xi,yi,θi)。期望轨迹坐标点为 计算当前状态S={ei|i=1,2,...,ns}=soi-si=(xoi-xi,yoi-yi,θoi-θi),依照表1,记录对应状态区间序号。
步骤3:这里设前行的速度vk保持不变,为0.1m/s,根据概率集合,从表2划分的操作集中选择一组动作,即选择角速度ωj;
步骤4:按照公式(1)计算按照速度为0.1m/s和选择的角速度ωj执行后的位置。
步骤5:按照公式(2)计算当前时刻能量函数eng的值;
步骤6:按照公式(3)计算取向函数δ值;
步骤7:按照公式(4)调整动作集概率分布P;
步骤8:按照公式(5)计算当前时刻***熵;
步骤9:判断熵是否趋于最小值Hmin,如果是,标志着***已达到自组织,机器人已形成操作条件反射习得最优动作,则本次学习结束,转到测试阶段;否则,转步骤2;
步骤10,测试阶段。载入期望轨迹和速度。
步骤11,在保持习得概率矩阵P不变,根据概率从操作集中选择操作执行,按照状态转移公式(1)计算新的状态,循环往复。
步骤12,判断机器人当前位置是否为终点,如果是,则结束,否则,转步骤10,继续测试阶段。
下面给出应用本发明进行轨迹跟踪的仿真实验。
仿真实验在MATLAB仿真软件中进行。机器人行走机构采用双轮差动式运动底盘,在机器人左右两侧安装有轮wL和wR,由直流电机驱动,前部有一个起支撑作用的万向轮wF。该机器人的机械结构简化示意图如图3。
环境为20m×20m大小的空间,追踪目标点初始位置为(-5,0),机器人初始位置随机给定,目标点和机器人速度都为0.5m/s。学习阶段如图4所示,粗线为目标点位置,细线为机器人轨迹。为了让每个状态下的学习更充分,目标点随机移动,在此次试验中,目标点位置在(-5,0)附近运动,如图4,机器人初始位置在(7,-3.5)左右。测试阶段如图5,目标点运动轨迹为半径为5m的圆,粗线为目标点运动轨迹,细线为机器人运动轨迹。从中可以看出,本发明中所述方法可以完成机器人的轨迹跟踪。
Claims (1)
1.基于Skinner操作条件反射自动机的机器人轨迹跟踪方法,其特征在于包括以下步骤:
步骤1:确定Skinner操作条件反射机的数学模型,SKCOA;
SKCOA自动机是离散的一个七元组,SKCOA=<S,A,f,δ,P,L,H>,S为离散状态组合集合,A为自动机可选择动作操作集合,f为状态转移函数,δ是取向函数,P为每一状态下选择操作的概率集合,令初始概率分布为均匀分布,L为自动机的操作条件反射学习机制,H为自动机操作行为熵;
步骤2:确定SKCOA自动机可选择的操作集合A;
操作集合A={vk,ωj|k=1,2,...,na1,j=1,2,...,na2},vk为机器人前进的速度,ωj为机器人转过的角速度,na1,na2分别为速度和角速度的操作集大小,na=na1*na2,na为操作集大小;
步骤3:获得机器人在t的时刻的状态集合S={ei|i=1,2,...,ns};
机器人t时刻在环境地图中的坐标位置,记作si|t=(xi,yi,θi);xi,yi分别为机器人t时刻所在的横纵坐标,θi为机器人与横轴夹角;期望轨迹坐标点为soi|t=(xoi,yoi,θoi);xoi,yoi分别为机器人期望轨迹在t时刻的横纵坐标,θoi为期望位姿与横轴夹角;机器人在t的时刻的状态集合为S1={ei|i=1,2,...,ns}=soi-si=(xoi-xi,yoi-yi,θoi-θi),ns为状态集合大小;将坐标转换为以机器人为坐标原点的坐标系中,S=T·S1,T为旋转矩阵;
步骤4:根据概率集合,从动作集中选择一组动作,即选择前行的速度vk和角速度ωk;
步骤5:计算状态转移,方法如下:
式中,xn、yn、θn分别代表动作选择后机器人新的横纵坐标以及机器人的朝向角度,xo、yo、θo分别代表动作选择前机器人新的横纵坐标以及机器人的朝向角度,ts为机器人传感器的采样时间;
步骤6:计算能量函数eng的值;
能量函数用于表示机器人当前位置与轨迹的距离关系,记作eng=eng(S)={eng(Si)|i=1,2,...,ns}∈R,距离越近,eng越小,反之,eng越大,方法如下:
步骤7:计算取向函数δ值;
取向函数δ=δ(S,A)={δik|i=1,2,...,ns;k=1,2,...,na},模拟了自然界中生物的取向性,方法如下:
δik=eng(Si)-eng(Si+1)
其中δik表示si∈S执行动作(vk,ωk)∈A后***性能的变化;δ<0时,为负取向,说明***性能趋向变差;δ=0时,为零取向,说明***性能趋向不变;δ>0时,为正取向,说明***性能趋向变好;
步骤8:根据Skinner操作条件反射原理调整动作集概率分布P;
动作集概率分布的规则为:正强化时,动作概率增加;负强化时,动作概率减少;设t时刻状态sm,选择操作ak执行,通过状态转移到sn;
当δ>0时,
当δ<0时,
式中,η1>0,η2>0;α1(t),α2(t)为学习速率函数,0<α1(t)<1,0<α2(t)<1;pmk(t)为t时刻机器人在状态sm下选择动作ak的概率;pmk'(t)为t时刻机器人在状态sm下选择动作除ak外的其他操作的概率;
步骤9:计算t时刻***熵;
式中,pik(t)为机器人在状态si下选择动作ak的概率;
步骤10:判断熵是否趋于最小值Hmin,如果是,标志着***已达到自组织,机器人已形成操作条件反射习得最优动作,则本次学习结束,转到测试阶段;否则,转步骤2;
步骤11:测试阶段,载入期望轨迹和速度;
步骤12:在保持概率矩阵P不变,根据概率从操作集中选择操作执行,按照状态转移公式计算新的状态,循环往复;
步骤13:判断机器人当前位置是否为终点,如果是,则结束,否则,转步骤11,继续测试阶段。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410844504.1A CN104570738B (zh) | 2014-12-30 | 2014-12-30 | 基于Skinner操作条件反射自动机的机器人轨迹跟踪方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410844504.1A CN104570738B (zh) | 2014-12-30 | 2014-12-30 | 基于Skinner操作条件反射自动机的机器人轨迹跟踪方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104570738A true CN104570738A (zh) | 2015-04-29 |
CN104570738B CN104570738B (zh) | 2017-09-08 |
Family
ID=53087108
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410844504.1A Active CN104570738B (zh) | 2014-12-30 | 2014-12-30 | 基于Skinner操作条件反射自动机的机器人轨迹跟踪方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104570738B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107479547A (zh) * | 2017-08-11 | 2017-12-15 | 同济大学 | 基于示教学习的决策树行为决策算法 |
CN108681243A (zh) * | 2018-05-03 | 2018-10-19 | 南京理工大学 | 一种机器人轨迹跟踪方法 |
CN109212975A (zh) * | 2018-11-13 | 2019-01-15 | 北方工业大学 | 一种具有发育机制的感知行动认知学习方法 |
CN115076019A (zh) * | 2022-06-24 | 2022-09-20 | 清华大学 | 一种用于波浪发电装置的控制方法、装置和电子设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101599137A (zh) * | 2009-07-15 | 2009-12-09 | 北京工业大学 | 自治操作条件反射自动机及在实现智能行为中的应用 |
CN101673354A (zh) * | 2009-06-12 | 2010-03-17 | 北京工业大学 | 操作条件反射自动机及其在仿生自主学习控制中的应用 |
CN103792846A (zh) * | 2014-02-18 | 2014-05-14 | 北京工业大学 | 基于Skinner操作条件反射原理的机器人避障导航方法 |
-
2014
- 2014-12-30 CN CN201410844504.1A patent/CN104570738B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101673354A (zh) * | 2009-06-12 | 2010-03-17 | 北京工业大学 | 操作条件反射自动机及其在仿生自主学习控制中的应用 |
CN101599137A (zh) * | 2009-07-15 | 2009-12-09 | 北京工业大学 | 自治操作条件反射自动机及在实现智能行为中的应用 |
CN103792846A (zh) * | 2014-02-18 | 2014-05-14 | 北京工业大学 | 基于Skinner操作条件反射原理的机器人避障导航方法 |
Non-Patent Citations (5)
Title |
---|
HONG-GE REN 等: "Applying of Recurrent Network Based on Skinner’s Operant Conditioning in Robot", 《INTERNATIONAL CONFERENCE ON INTELLIGENT HUMAN-MACHINE SYSTEMS AND CYBERNETICS》 * |
XIAOGANG RUAN 等: "Bionic Learning Algorithm Based on Skinner’s Operant Conditioning and Control of Robot", 《WASE INTERNATIONAL CONFERENCE ON INFORMATION ENGINEERING》 * |
任红格 等: "Skinner操作条件反射的一种仿生学习算法与机器人控制", 《机器人》 * |
任红格 等: "基于Boltzamnn机的机器人自主学习算法", 《北京工业大学学报》 * |
蔡建羡 等: "基于遗传算法的Skinner操作条件反射学习模型", 《***工程与电子技术》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107479547A (zh) * | 2017-08-11 | 2017-12-15 | 同济大学 | 基于示教学习的决策树行为决策算法 |
CN107479547B (zh) * | 2017-08-11 | 2020-11-24 | 同济大学 | 基于示教学习的决策树行为决策算法 |
CN108681243A (zh) * | 2018-05-03 | 2018-10-19 | 南京理工大学 | 一种机器人轨迹跟踪方法 |
CN108681243B (zh) * | 2018-05-03 | 2020-12-18 | 南京理工大学 | 一种机器人轨迹跟踪方法 |
CN109212975A (zh) * | 2018-11-13 | 2019-01-15 | 北方工业大学 | 一种具有发育机制的感知行动认知学习方法 |
CN115076019A (zh) * | 2022-06-24 | 2022-09-20 | 清华大学 | 一种用于波浪发电装置的控制方法、装置和电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN104570738B (zh) | 2017-09-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Wen et al. | Path planning for active SLAM based on deep reinforcement learning under unknown environments | |
CN110989576B (zh) | 速差滑移转向车辆的目标跟随及动态障碍物避障控制方法 | |
CN106843235A (zh) | 一种面向无人自行车的人工势场路径规划法 | |
CN105094124A (zh) | 基于操作条件反射进行自主路径探索的方法及模型 | |
CN103324196A (zh) | 基于模糊逻辑的多机器人路径规划与协调避碰方法 | |
CN104570738A (zh) | 基于Skinner操作条件反射自动机的机器人轨迹跟踪方法 | |
CN105700526A (zh) | 具有自主学习能力的在线序列极限学习机方法 | |
CN111506081A (zh) | 一种机器人轨迹跟踪方法、***及存储介质 | |
CN111645673B (zh) | 一种基于深度强化学习的自动泊车方法 | |
Singh et al. | Intelligent neuro-controller for navigation of mobile robot | |
kumar Panigrahi et al. | Navigation of autonomous mobile robot using different activation functions of wavelet neural network | |
CN103792846B (zh) | 基于Skinner操作条件反射原理的机器人避障导航方法 | |
CN108363393A (zh) | 一种智能运动设备及其导航方法和存储介质 | |
CN115469663A (zh) | 面向自动驾驶的基于深度强化学习的端到端导航避障方法 | |
CN103886367B (zh) | 一种仿生智能控制方法 | |
CN114037050B (zh) | 一种基于脉冲神经网络内在可塑性的机器人退化环境避障方法 | |
Galgamuwa et al. | Simplified controller for three wheeled omni directional mobile robot | |
Jiang et al. | Mobile robot path planning based on dynamic movement primitives | |
Boufera et al. | Fuzzy inference system optimization by evolutionary approach for mobile robot navigation | |
CN113829351B (zh) | 一种基于强化学习的移动机械臂的协同控制方法 | |
CN114997048A (zh) | 基于探索策略改进的td3算法的自动驾驶车辆车道保持方法 | |
Tang et al. | Reinforcement learning for robots path planning with rule-based shallow-trial | |
Khalajzadeh et al. | A review on applicability of expert system in designing and control of autonomous cars | |
Chen et al. | Imitating driver behavior for fast overtaking through Bagging Gaussian Process Regression | |
Krejsa et al. | Mobile robot motion planner via neural network |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |