基于操作条件反射进行自主路径探索的方法及模型的制作方法

文档序号:9374604阅读:325来源:国知局
基于操作条件反射进行自主路径探索的方法及模型的制作方法
【技术领域】
[0001] 本发明属于路径探索技术领域,具体涉及一种基于操作条件反射进行自主路径探 索的方法及模型。
【背景技术】
[0002] Skinner操作条件反射(Operant Conditioning)理论在人和动物的学习中,扮演 着重要角色,基本原理为:如果在一定的主客观条件下,生物的某种行为所导致的后果符合 生物的取向性,那么,在类似的主客观条件下,生物实施类似行为的概率将会上升。此外, Skinner十分强调强化的作用,他认为,人的学习是否成立关键在于强化。当一个操作发生 之后,紧接着呈现一个强化刺激时,那么,这个操作的强度就增加。这里所增加的不是"刺 激-反应"的联结,而是使反应发生的一般倾向性增强,即反应发生的概率增强了。他认为, 在学习中,练习虽然是重要的,但关键的变量却是强化。
[0003] 在未知环境状态下,由于机器人没有合适的教师信号,机器人的学习能力是完成 自主路径探索任务的关键所在。如申请号为200910044273. 5,名称为未知环境下移动机器 人导航安全的方法的发明申请,引入模糊神经网络智能技术实现机器人在未知环境中的自 主学习探索,以确保运动过程中的安全。虽然以模糊神经网络为基础的机器人研究已经将 机器人的控制行为同神经生理学和认知科学联系在一起,但这种联系还很松散和被动,机 器人主体的运动控制技能以陈述性控制规则为主,具有过多的设计成份,较少生物系统技 能仿生自主学习和自组织特征,还不能真正实现机器人的自主路径探索。
[0004] 操作条件反射学习具有较强的在线自适应性和对复杂系统的自学习能力,很适合 于未知环境下的机器人自主导航学习。基于这一优点,操作条件反射学习成为目前仿生自 主学习领域研究的热点。近些年,基于操作条件反射机制设计的学习模型,已取得了一定进 展,如申请号为200910086990. 4,名称为操作条件反射自动机及其在仿生自主学习控制中 的应用的发明申请,基于有限状态自动机,设计出一种具有自组织功能的操作条件反射模 型,并解决了倒立摆系统的控制问题;申请号为200910089263. 3,名称为自治操作条件反 射自动机及在实现智能行为中的应用的发明申请,同样设计了一种操作条件反射自动机, 并应用于两轮机器人的平衡控制。
[0005] 但是,上述专利申请设计的操作条件反射自动机的学习机制实质上还是遵循一般 有限状态自动机的学习机制,并且,只是应用于解决了简单的平衡控制问题,难以应用于机 器人路径探索这种复杂控制任务。

【发明内容】

[0006] 针对现有技术存在的缺陷,本发明提供一种基于操作条件反射进行自主路径探索 的方法及模型,可有效应用于机器人路径探索领域。
[0007] 本发明采用的技术方案如下:
[0008] 本发明提供一种基于操作条件反射进行自主路径探索的方法,包括以下步骤:
[0009] St印1,设置初始参数值,包括:机器人起点位置信息;迭代学习步数初值t = 0 ; 迭代学习次数tf;采样时间ts;学习算法相关参数,包括权重系数βρ β2、β3、β4,退火初 始温度Τ。,退火参数f,折扣因子η ;
[0010] 设置机器人离散化的环境状态空间S = Is1Ii = 1,2,…,η},其中,每一个S1均 用五个状态量表示,即=S1 = {d~rob cibs l,d~roMbs f,d~roMbs_r,d~rob tar,Θ~};其中:
[0011] CTrobcibsl --机器人左侧距障碍物的距离状态;
[0012] cTroMbsf --机器人前方距障碍物的距离状态;
[0013] d ^robobsr --机器人右侧距障碍物的距离状态;
[0014] d^rob_tar --机器人与目标点之间的距离状态;
[0015] Θ~一一机器人当前运动方向和目标点的夹角状态;
[0016] 对于每一个状态量,均采用模糊法划分为有限个级别状态,每一个级别状态为一 个距离区间;
[0017] 设置动作空间A= {ak|k= 1,2,…,r};其中,如表示移动机器人路径探索的第 k个可选动作;机器人最初从动作空间中选取任意一个动作ak的概率均相等,为Ι/r ;设置 安全距离d_和最小危险距离d_ ;
[0018] Step2,机器人配备有多个声纳传感器,在机器人行走过程中,在第t步时,通过声 纳传感器采集机器人当前环境参数值,包括:距左侧障碍物距离Cl trab cibs l、距右侧障碍物距 离Cltrab cibs l^距前方障碍物距离Cltrob cibs f、与目标点之间距离Cltrab>、当前运动方向和目标点 夹角Θ ';
[0019] 判断机器人当前各环境参数值所属的级别状态,从而得到机器人在第t步时所处 的环境状态 S1U) = f,cTrcib-tar,Θ e环境状态空 间S;
[0020] 依据公式(3)计算当前状态S,_⑴下的信息熵值H,_⑴:
[0021]
[0022] 其中,ake A= {ak|k= 1,2,···,γ}表示移动机器人路径探索的第k个可选动作, A表示机器人路径探索的可选动作集合,r为可选动作的个数;p lk = p (ak I S1 (t)) e P1表示 处于环境状态S1 (t)的条件下实施动作ak的概率值,也被称为"状态S1-动作ak"对的激发 概率值,满足:〇 < Plk < 1,.£朽:::S Plk e P1 = {Ρι1,Ρι2,…,Piij,P1表示第i个状态对应 > 的概率矢量,P1=Ip11, Pl2, ...,pJ e p,p代表总的概率矢量;
[0023] Step3,依据Boltzmann分布,从动作空间A选择概率最大一个动作ak(t)执行;最 优动作的学习目标为:
[0024] ①如果机器人与左方、前方和右方障碍物的距离均大于安全距离,即:draMbs l > d_且droMbs f > dnax且drob> dnax,则执行动作需使机器人倾向直接向目标点移动;
[0025] ②如果机器人与左方、前方和右方障碍物的距离中,存在介于安全距离与最小危 险距离之间的数值,即满足以下关系式:d_ < draMbs l或draMbs f或CU cibs l^ < dnax,则执行 对应动作需使机器人能实现避障;
[0026] St印4,当实施选取的动作ak(t)后,机器人状态发生转移,计算新状态S 1 (t+Ι)下 的信息熵值Hjt+l);
[0027] 判断当前的训练轮数是否超过预先设定的训练轮数N,如果超过,则剔除信息熵值 始终保持最大的状态,并转向Step5 ;否则,直接转向Step5 ;
[0028] Step5,首先,获取新状态下机器人与障碍物之间的距离:
[0029] 若 draMbs l > Clniax 且 draMbs_f > Clniax 且 draMbs_r > Clniax,按照式⑷计算"状态 S1 ⑴-操 作如(〇"的评价信号Vlk(t);
[0030] 若d_ < draMbs」< d_,按照式(5-1)计算"状态S1 (t)-操作ak (t) "的评价信号 Vlk (t);
[0031 ] 若d_ < Clrab cibs f < d_,按照式(5-2)计算"状态S1⑴-操作ak⑴"的评价信号 Vlk (t);
[0032] 若d_ < cU_。^ < d_,按照式(5-3)计算"状态S1⑴-操作ak⑴"的评价信号 Vlk (t);
[0033] 若 droMbs l < dninordroMbs f < (IninOrdrKr < dnin,学习失败,给予惩罚值,令 Vlk (t) = -1 ;
[0034] V(drob tar, θ) = -β lSign( Adrob tar (t)) Δ2drob tar (t)-β 2sign( Δ θ (t)) Δ2Θ (t) (4)
[0035] 其中,β!、β2 为权重系数,0 < βρ β2< 1 ;Δ θ ⑴=θ (t+l)-0 (t) ;Adrob- tar (t) dr〇b-tar (?+1) dr〇b-tar (?);
[0036] V (drob obsJ, drob tar) = β 3sign ( Δ drob obs l (t)) Δ 2drob obsJ (t) - β 4sign ( Δ drob tar (t)) A2drob-tar(t) (5-1)
[0037] 其中,β 3, β 4 为权重系数,0 < β 3, β 4 < I ; Λ drab-i (t) = drob-i (t+1) -drob- obs」(t);
[0038] V (drob obs f, drob tar) = β 3sign ( Δ drob obs f (t)) Δ 2drob obs f (t) - β 4sign ( Δ drob tar (t)) A2drob-tar(t) (5-2)
[0039] 其中,β 3, β 4 为权重系数,0 < β 3, β 4 < I ; Λ drab-f (t) = drob-f (t+1) -drob- obs-f (t);
[0040] V (drob obs r, drob tar) = β 3sign ( Δ drob obs_r (t)) Δ 2drob obs_r (t) - β 4sign ( Δ drob tar (t)) Δ 2dr〇b_tar (t) (5-3)
[0041 ]其中,β 3, β 4 为权重系数,0 < β 3, β 4 < I ; Λ drob-obs-r (t) = drob-obs-r (t+1) -drob- obs-r (t);
[0042] 所计算的评价信号Vlk (t)实质用于评价在状态S1 (t)下,实施操作ak (t)的作用效 果,根据评价信号Vlk (t),决定是否需要更新"状态S1 (t)-操作ak (t) "的原Q值,如果不需 要,则表明本步学习失败,放弃本次学习经验,保留"状态S1⑴-操作ak⑴"的原Q值;并执 行Step6 ;否则,按照式(6),计算"状态S1⑴-操作ak⑴"的新Q值,并将"状态S1⑴-操 作a k (t) "的原Q值更新为新Q值,即保留了本步的学习经验;以及,按照式(8),更新"状态 Si⑴-操作a k⑴"的概率值pik (Si (t),ak⑴),并执行Step6 :
[0043] :: (1-/-0? | ( 6 ) :!. \ J
[0044] 其中,η为折扣因子,表示学习系统对动作的关注程度;Y (plk)为t时刻的学习
[0045] 率函数;学习率函数表示式为式(7):
[0046]
[0047] 其中,T是温度系数,T。为初始温度值,随着时间t的增加,T由T。衰减,参数f用 于控制退火的速度;
[0048] St印6,判断机器人新状态下是否到达目标点或超过初始设置的迭代学习次数tf, 如果判断结果为是,则结束本轮学习;如果判断结果为否,则令t = t+1,按照调整后的Q值 和概率值机器人继续进行路径探索,重复进行Step2-Step6的步骤,直到到达目标点或超 过初始设置的迭代学习次数t f时,结束本轮学习。
[0049] 本发明还提供一种基于操作条件反射进行自主路径探索的自主探索认知模型,包 括:感知器、执行器、状态编辑器、参数设置模块、终止条件判断模块和探索学习策略模块; 其中,所述探索学习策略模块包括:倾向单元、学习核和动作选择策略模块;
[0050] 所述参数设置模块用于设置初始参数值,包括:机器人起点位置信息;迭代学习 步数初值t = 0 ;迭代学习次数tf ;采样时间ts ;学习算法相关参数,包括权重系数β p β 2、 β3、β4,退火初始温度Τ。,退火参数A折扣因子η ;
[0051] 设置机器人离散化的环境状态空间S = Is1Ii = 1,
当前第1页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1