基于线性时序逻辑的移动机器人最优巡回路径设定方法与流程

文档序号:12040045阅读:253来源:国知局
基于线性时序逻辑的移动机器人最优巡回路径设定方法与流程
本发明涉及一种工厂巡回安全监测移动机器人的路径设定方法,具体是一种结合线性时序逻辑和图论算法的自动计算框架,采用循环移位法对巡回回路进行优化,从而使移动机器人高效地实现多个区域的巡逻和监测任务,确保工厂生产过程的安全。

背景技术:
移动机器人是一种具有高度自设定、自组织、自适应能力,适合于在复杂的非结构化环境中工作的机器人。移动机器人的路径设定作为指示移动机器人完成复杂任务的基础,近年来已受到了更多的关注。移动机器人路径设定是移动机器人技术研究中关键的问题之一,同时也是移动机器人实现智能化及完全自主的关键技术。传统的路径设定方法主要集中在解决环境复杂性和移动机器人动态问题上,大致有如下几种:1)人工势场法:把移动移动机器人在环境中的运动视为一种在抽象的人造受力场中的运动,目标点对移动移动机器人产生“引力”,障碍物对移动移动机器人产生“斥力”,最后通过求合力来控制移动移动机器人的运动。但是,由于势场法把所有信息压缩为单个合力,这样就存在把有关障碍物分布的有价值的信息抛弃的缺陷,且易陷入局部最小值。2)栅格解耦法:该方法将移动机器人的工作空间解耦为多个简单的区域,一般称为栅格。由这些栅格构成了一个连通图,在这个连通图上搜索一条从起始栅格到目标栅格的路径,这条路径是用栅格的序号来表示的。3)模糊逻辑算法:模糊逻辑算法基于对驾驶员的驾驶过程观察研究得出,驾驶员避碰动作并非对环境信息精确计算完成的,而是根据模糊的环境信息通过查表得到设定信息完成局部路径设定。优点是克服了人工势场法易产生的局部极小值问题对处理未知环境下的设定问题显示出很大优越性,其缺点是当障碍物数目增加时,该方法的计算量会很大且影响设定结果。4)神经网络法:将神经网络和模糊数学结合,先对移动机器人传感器信息进行模糊处理总结的经验形成模糊规则,再把模糊规则作用于样本对神经网络进行训练。通过学习典型样本,把规则融会贯通,是具有一定智能的设定方法。,5)遗传算法:遗传算法以自然遗传机制和自然选择等生物进化理论为基础,构造了一类随机化搜索算法,在某种程度上对生物进化过程作数学方式的模拟。它是一种多点搜索算法,故更有可能搜索到全局最优解。优点是克服了势场法的局部极小值问题,计算量不大,易做到边设定边跟踪,适用于时变未知环境的路径设定,实时性较好。缺点是运算速度不快,进化众多的规划要占据较大存储空间和运算时间。传统方法在运动设定方面各有所长,也各有其不足的方面,但在任务部署方面仅限于设定移动机器人“从A走到B并且避开障碍物”这一基本的命令上,即从起始点到终点的最优路径,而无法解决移动机器人在进行巡回监测和数据采集等实际应用中所描述的大型复杂巡回任务。中国专利文献CN103092204A是本发明最接近的现有技术,在实际的工厂安全监测管理中,移动机器人很可能需要执行到达若干区域中的其中一个、顺序到达多个区域、以最短路访问完所有区域、在指定的一些地点之间巡逻等逻辑上更为复杂的任务。其中,完成巡回任务时的路径设定问题是个相对复杂的问题,该类问题至今还尚未很好地解决。巡回任务要求算法能自动搜索多点间的最优路径,以在完成复杂高水平任务的前提下确保移动机器人的行走路径为最优路径,从而节省时间和成本,为移动机器人在工厂中的巡逻监测和数据采集等复杂任务的完成提供关键技术。

技术实现要素:
本发明要克服现有技术不能满足高水平任务特性的缺点,针对移动机器人在工厂安全监测和数据采集方面的应用,本发明提出了一种基于循环移位、且能满足高水平任务特性的最优巡回路径方法,以枚举的方式搜索路径,进行巡回路径的最优设计,从而有效地实现移动 机器人的复杂巡回任务。首先,将机器人在工厂环境中的运动建模成一个加权转换系统,利用线性时序逻辑(LTL)语言表达指定的高水平任务特性,同时用一个成本函数(总的移动距离)来衡量路径的最优性。接着,采用LTL2BA工具产生一个其轨迹满足时序逻辑特性的自动机(它可以被认为是一个图表);然后提出一个能计算出移动机器人最优路径相应轨迹的图表算法,根据该算法获得能够满足任务指示的最优巡回路径。从而实现移动机器人在工厂网络平台上的循环监测和数据采集。具体步骤如下:步骤1,将工厂环境建立成转换系统模型将移动机器人所在的工厂环境划分为有限多个方块区域,每个独立的区域用字母qi∈Q表示,其中i∈{1,2,3,...},Q是区域的集合,Q0表示机器人的初始位置(充换电工作站),机器人在工厂中的移动对应区域的变化,表示为→。从一个区域到相邻区域的移动距离或是机器人移动的成本(权值),表示为ω,移动机器人在特定区域所执行的任务表示为πi∈Π,其中i∈{1,2,3,...},Π是所有任务的集合。如此构成一个转换系统模型,用字母T表示:T=(Q,Q0,→,∏,ω);步骤2,采用时序逻辑表达式表达待巡回监测与数据采集的区域线性时序逻辑是一种与自然语言相似的高级语言,可用于表达移动机器人的巡回监测和信息采集等任务特性,线性时序逻辑语言产生的表达式基于转换系统的任务集合πi∈Π,线性时序逻辑语言的语法包括如下:线性时序逻辑语言的谓词包括(非)、∨(或)、∧(与)、(全局)、(最终)、∪(直到);用线性时序逻辑语言表述的任务需求用字母φ表示,φ是由转换系统模型中的子任务πi∈Π和谓词所组成的表达式;假设φ1和φ2为两个任务需求表达式,表示不能执行φ1,φ1∨φ2表示执行φ1并执行φ2,表示执行φ1和φ2并最终执行φ2,表示循环执行φ1和φ2;采用线性时序逻辑语言表述的移动机器人巡回监测与数据采集任务为:其中,O为工厂范围内需要全局避开的区域,qi∈Q为工厂范围内需定时进行安全监测的区 域;步骤3,将任务需求表达式转化为区域序列可行性图表为了构建包含工厂环境与巡回任务需求信息的可行道路图表,首先要将任务需求表达式转化为区域序列可行性图表,采用LTL2BA工具将任务需求表达式φ转换成对应的Büchi自动机,Büchi自动机是可判断输入的路径序列是否满足任务需求的图表,用字母B表示:B=(S,S0,∑B,δB,F),其中S是有限状态集合,是初始状态集合,∑B是输入字母表,δB是转换函数,是最终状态集合。Büchi自动机可以保证路径满足任务需求;步骤4,构建包含工厂环境与巡回任务需求信息的可行道路图表为了在工厂环境中获取满足任务需求的路径,还要确保环境中存在这条路径,因此将转换系统和Büchi自动机作笛卡尔乘积,得到满足任务需求的所有路径的图表,用字母P表示,即P=T×B,其中T=(Q,Q0,→,∏,ω),B=(S,S0,∑B,δB,F),P=(SP,SP0,→P,FP),SP=Q×S为有限状态集合,SP0=Q0×S0是初始状态集合,为转换函数,FP=Q×F为最终状态集合;步骤5,在可行道路图表上采用基于循环移位的算法搜索最优巡回路径根据循环监测和数据采集需求,在工厂所有可行道路当中搜索一条可以循环对q1,q2,q3,...等多个区域进行定时安全监测和数据采集的最短巡回路径,在包含了环境与任务需求信息的可行道路图表上,采用循环移位的算法搜索最优巡回路径,算法具体思想如下:1.寻找表达式φ中的算子,定义一个变量k=表达式中的算子数;2.构建一个数组I,令其中的元素I[i],i∈{1,2,3,...,k}等于(1)中第i个算子后的待巡逻区域,定义一个变量n=(k-1)!和一个数组D[j],j∈{1,2,3,...,n};3.令D[1]=I[2],D中其余元素为0;4.从I中取第m∈{3,4,...,k}个元素加入到D中非0元素的尾部,每次循环时m+1;5.循环左移D中的元素,每次左移都构成新的元素,将新的元素替换掉D中的0元素;6.重复(4)(5)过程,直到D中元素都不等于0,此时D中每一个元素都表示一个重新排列后的区域顺序;7.从I[1]的区域出发,规避全局障碍物,采用Dijkstra算法按照D[j]中区域出现的顺序,搜索一条依次经过D[j]中区域并最终回到I[1]的相对最优路径,每次循环j+1;8.重复(7)过程,直到获取到n=(k-1)!条相对最优路径;9.比较(8)中的n=(k-1)!条相对最优路径的成本,获得一条全局最优回路巡逻路径,令其为全局路径的后缀,表示为suffix;10.采用Dijkstra算法搜索一条初始状态到(9)中最优回路的最短路径,去掉最后一个状态,令其为全局路径的前缀,表示为prefix;11.获得全局路径rP=prefix,suffix,suffix,...;12.根据定理1,将在可行道路图表上获取的最短路径映射回转换系统T上,得到转换系统的最优路径;步骤6,将计算所得的最优巡回路径(区域序列)输出,供机器人平台使用。附图说明图1为本发明的转换系统图2为本发明的区域序列可行性图表图3为本发明的可行道路图表图4为本发明的可行道路图表上的最优路径图5为本发明的映射到转换系统的最优路径图6为本发明的实际环境示意图图7为本发明的环境抽象(a)示意图图8为本发明的环境抽象(b)示意图图9为本发明的多个区域的巡逻路径的示意图具体实施方式以下结合附图对本发明新型的技术方案作进一步描述。首先以简单情况为例,假设一个有5块区域的化工厂环境,对算法过程进行演绎:步骤1,将工厂环境建立成转换系统模型转换系统如图1所示,Qi,i∈{0,1,2,3,4}代表5个区域,标有权值的有向线段表示区域间的移动成本。例如移动机器人从Q1处移动到Q3处的过程是下坡行驶,而从Q3回到Q1过程就是上坡行驶,因此往返两区域的移动成本可能不同。步骤2,采用时序逻辑表达式表达待巡回监测与数据采集的区域针对图1的转换系统,如任务需求是循环监测Q1、Q3和Q4区域,则用线性时序逻辑语言描述为“全局最后访问Q1”“全局最后访问Q3”“全局最后访问Q4”,并且三者间是“与”的关系,其对应的表达式为步骤3,将任务需求表达式转化为区域序列可行性图表采用LTL2BA工具将表达式φ转换成对应的Büchi自动机。如图2所示,其中S0为初始状态,S3为最终状态,其中一个状态到另一个状态的转换用转换系统的状态表示,它接受所有包含后缀Q1...Q3…Q4的区域序列(省略号中不包含Q1,Q3,Q4状态),确保算法产生的路径满足任务需求。步骤4,构建包含工厂环境与巡回任务需求信息的可行道路图表图1的转换系统与图2的Büchi自动机构成的笛卡尔乘积如图3所示,由于转换系统有5个状态、Büchi自动机有4个状态,根据定义其对应的P自动机就有20个状态,其中状态Q0S0为初始状态,状态Q0S3、Q1S3、Q2S3、Q3S3、Q4S3为最终状态。步骤5,在可行道路图表上采用基于循环移位的算法搜索最优巡回路径基于循环移位的最优回路巡逻算法具体过程如下:a)寻找得表达式(1)中的算子个数为k=3;b)令数组I=[Q1,Q3,Q4],变量n=(3-1)!=2,D=[Q3,0];c)将I[3]=Q4加入到D中非零元素的尾部得D=[Q3Q4,0];d)循环左移D中元素将新构成的元素替换掉D中的0元素得D=[Q3Q4,Q4Q3];e)从I[1]=Q1出发按D[1]=Q3Q4的顺序搜索路径,即搜索Q1S0到Q3S1的最短路径为(1,3),最小成本为3,Q3S1到Q4S2的最短路径为(3,4),最小成本为5,Q4S2到Q1S3的最短路径为(4,3,1),最小成本为5,总成本为3+5+5=13;f)从I[1]=Q1出发按D[2]=Q4Q3的顺序搜索路径,即搜索Q1S0到Q4S1的最短路径为(1,2,4),最小成本为7,Q4S1到Q3S2的最短路径为(4,3),最小成本为1,Q3S2到Q1S3的最短路径为(3,1),最小成本为4,总成本为7+1+4=12;g)比较e)和f)中成本大小,取最小成本后缀suffix=Q1S0,Q2S0,Q4S1,Q3S2,Q1S3,成本为12。h)若初始状态为Q0,则从Q0搜索到Q1、Q2、Q3、Q4的最短路径,Q0→Q1:最短路径为(0,1),最小成本为5;Q0→Q2:最短路径为(0,1,2),最小成本为10;Q0→Q3:最短路径为(0,1,3),最小成本为8;Q0→Q4:最短路径为(0,1,2,4),最小成本为12;取最小成本前缀preffix=Q0i)获得可行道路图表上的最优路径如图4所示,映射回转换系统的全局路径r=preffix,suffix,suffix...=Q0,Q1Q2Q4Q3,Q1Q2Q4Q3,...如图5所示。步骤6,将计算所得的最优巡回路径(区域序列)输出,供机器人平台使用首先采用摄像头定位技术采集工厂各区域和机器人的坐标信息,接着根据1)的方法建立转换系统模型,同时接收基于2)的外部任务需求输入,最后将所获的路径设定的结果(区 域序列),可转化为相对应区域的中心坐标,构成一个坐标序列,通过无线通信技术传递给移动机器人,使移动机器人依据坐标序列完成巡回安全监测任务。最后以实际工厂环境为例,如图6所示,移动机器人将从右上角的充换电工作站出发,避开树林,对图中的多个生产车间进行循环安全监测与数据采集,首先将环境划分成如图7所示的方块区域:其中蓝色部分表示移动机器人的初始位置(充换电工作站);黑色部分表示障碍物(树林),即要规避的区域;红色部分表示要巡逻的区域(生产车间);白色为可行区域。最终建立成的转换系统如图8所示,有42个状态,分别用qi,i∈{1,2,3,...,42}表示,假设某个状态只能转换至其相邻的上、下、左、右的状态。为了简化问题,假设每个转换的权值为1,即移动机器人从一个区域到其周围某个区域所花费的成本是1。采用线性时序逻辑对移动机器人进行任务指示,巡逻q6,q30,q2,q27,q19五个区域,规避障碍物区域O={q10,q11,q16,q17,q20,q25,q26,q28,q29,q34},线性时序逻辑语言表示为:最终得路径如图9所示,其中蓝色表示前缀路径,红色表示后缀路径。其中前缀成本为2,后缀成本为22,为满足表达式(2)的全局最优巡逻路径。以上阐述的是本发明给出的实例,仿真结果体现了本发明所提出的技术方案的有效性。需要指出的是,本发明不只限于上述实施例,对于其他存在障碍物的复杂工厂环境,采用本发明的技术方案,均能有效实现最优巡逻路径设定。本发明所涉及的路径设定方法,首先克服了传统路径设定方法在任务部署方面的不足,能够使用高级语言输入外部任务需求,避免了工厂管理人员对机器人内部代码的操作,减少了人力劳动量并增加了系统的安全性;其次,对于移动机器人循环安全监测多个区域和信息采集任务具有最优的设定效果,并且能够有效避开障碍物。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1