1.动态环境下移动机器人的最优策略解决方法,具体如下:
步骤一:构建改进-加权切换系统;
将机器人所在的环境构建为一个改进-加权切换系统,加权切换系统是对环境的模型化,其定义为一个元组T:=(Q,q0,R,Π,L,wT),其中Q为一个有限的状态集合,把环境中选中的节点作为状态集合;q0∈Q代表了初始状态,即机器人所在的初始状态,运行起点;R→2Q代表了切换关系,表明了各个状态之间(路径点之间)的连通关系;Π代表原子命题,即每个状态点应该完成的动作;L:Q→2Π代表了标识函数集;wT代表切换权重,将其作为衡量值,即另一个标签。原子命题在加权切换系统中的作用是代表了各个状态的属性,当且仅当状态q处原子命题π为真时,π∈L(q)才成立,若q2∈R(q1),则q2为q1的后续状态;加权切换系统中的任意一条轨迹rT是由T中的有限个状态组成,即rT=q0q1q2...,其中对于任意的i≥0都有qi+1∈δ(qi)成立,轨迹rT包含了有限个标识函数o=o1o2o3...,其中oi∈L(qi);
步骤二:复杂任务数学表达化;
根据线性时序逻辑理论可以将复杂任务进行数学表达化,线性时序逻辑(LTL)是一种接近自然语言的高级语言,将时序逻辑算子G(始终),F(最终),X(接下来),U(直到)和布尔算子 (非),∧(与),∨(或),→(蕴涵), (等价于)组合起来可以准确的描述移动机器人的复杂任务;
步骤三:生成Büchi自动机;
为了使环境信息和任务信息相结合,需要通过LTL2BA工具包将线性时序任务公式φ转换为任务可行性图表的形式,即Büchi自动机。Büchi自动机是一个五元组B:=(SB,SB0,ΣB,δB,FB);其中,SB代表一个有限的状态集;SB0∈SB代表了初始状态;ΣB代表了输入的字符表;
δB∈SB×ΣB×SB代表了切换函数;FB∈SB代表了最终状态集;
步骤四:构建任务可行性网络拓扑图;
将加权切换系统和Büchi自动机进行笛卡尔乘积,得到包含环境信息和任务信息的任务可行性网络拓扑图P,即 P为一个元组(SP,SP0,δP,wP,FP),其中SP=Q×SB代表有限状态集; 代表了切换函数,其定义为当且仅当qj∈R(qi)并且sl∈δB(sk,L(qi))时,(qj,sl)∈δP((qi,sk))成立;wP为继承自T的权重,即当(qj,sl)∈δP((qj,sl))时,则wP((qi,sk),(qj,sl))=wT(qi,qj);FP=Q×FB代表一个最终的接收状态。在任务可行性网络拓扑图上选择有用的点来构建MDP,这样可以保证得到的决策策略即满足环境信息又满足任务需求;
步骤五:状态点删减;
在步骤四得到的任务可行性网络拓扑图上,将一些无用点率先剔除,即不可到达点,有一些只有输入或者只有输出,这样的点是不可到达的,因为选择这些点将导致策略的中断,无法得到最优结果;引入双标签,一个标签是状态标签,即在转折点之前,此状态的状态标签值将和上一个状态标签一致,即不同的状态之间不能相连,也就是一个状态只能拥有一个状态标签;另一个标签是衡量值,选择距离,即各个状态和另外状态的距离,行为约束准则的思想来自实际中的法律约束,当机器人的下一个状态使衡量值低于这一状态,那么下一状态将被舍弃;
步骤六:构建马尔科夫决策模型;
将剩余的状态点构建MDP,把五重组M:=(T,S,A(i),p(.|i,a),r(i,a))称为一个马氏决策过程(MDP),其中选取行动的时间点被称为决策时刻,并用T记所有决策时刻的点集;S为有限个状态空间集;在状态i处的可用行动集A(i)称为行动空间;p(.|i,a)称为下一决策时刻系统所处的状态的概率分布;r(i,a)为决策者获得的报酬;构建完成MDP,使用策略迭代算法进行求解,得到最优策略。