首页> 中国专利> 探索任务下基于分簇的多机器人任务分配方法

探索任务下基于分簇的多机器人任务分配方法

摘要

一种探索任务下基于分簇的多机器人任务分配方法。包括分簇结构的生成方法和簇间机器人的动态任务分配方法。(1)基于树型拓扑的分簇结构生成方法,①簇结构的判定,②根据初始任务和机器人获得的信息,确定动态簇结构形成的条件,③设计面向任务动态变化下的簇更新规则。(2)基于生物启发的簇间机器人任务分配方法,①针对不同任务类型,确立分簇协作探索中机器人的职能;②确立多机器人分簇模式下的交互机制,实现机器人的簇间任务分配。本发明使得机器人在协作的过程中具有更好的灵活性;使得单个机器人的设计简单化,可提高系统的鲁棒性;使得分配结果能够灵活地适应环境变化。

著录项

  • 公开/公告号CN102023571A

    专利类型发明专利

  • 公开/公告日2011-04-20

    原文格式PDF

  • 申请/专利权人 哈尔滨工程大学;

    申请/专利号CN201010297817.1

  • 申请日2010-09-30

  • 分类号G05B13/04(20060101);

  • 代理机构

  • 代理人

  • 地址 150001 黑龙江省哈尔滨市南岗区南通大街145号哈尔滨工程大学科技处知识产权办公室

  • 入库时间 2023-12-18 02:17:45

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-09-18

    未缴年费专利权终止 IPC(主分类):G05B13/04 授权公告日:20120509 终止日期:20170930 申请日:20100930

    专利权的终止

  • 2012-05-09

    授权

    授权

  • 2011-06-08

    实质审查的生效 IPC(主分类):G05B13/04 申请日:20100930

    实质审查的生效

  • 2011-04-20

    公开

    公开

说明书

技术领域

本发明涉及一种多机器人控制方法,具体地说是一种探索任务下基于分簇的多机器人任务分配方法。

背景技术

利用多机器人系统协作探索未知环境与单机器人相比具有很多优点:首先,多个机器人的传感器视野更加宽阔,信息冗余有利于提高机器人的定位精度和地图创建的质量;其次,多机器人系统的容错性可以防止由于单个机器人失效引起的任务失败;再次,多机器人系统的并行处理能力可以在更短的时间内完成特定的任务。最后,多个简单异构机器人之间的功能互补可以实现单个复杂机器人无法实现的功能。

经验表明在复杂环境中,所有机器人探索同一处环境并不一定能够快速实现探索任务。在不同的环境状态下,机器人如果能够根据环境的状态合理地、动态地产生不同的协作模式,能够大大增加机器人协作效率。可以说,多机器人协作探索中的自适应任务分配不仅能够增加系统的灵活性和适应性,还能够大大减少机器人因不合理协作模式下产生的资源浪费,具有一定的研究意义。

任务分配体现了多机器人系统高层的组织形式和运行机制,是系统实现未知环境探索任务的基础。分配机制合理与否直接关系到多机器人系统中各成员能否最大限度发挥自身潜力,直接影响系统任物完成的效率。所以在现有机制基础上,通过协调合作完成预定任务已经成为该领域的研究热点。

早期的多机器人任务分配方法多为集中式控制。多机器人系统存在集中分配者(主机器人或管理机器人),负责规划、决策和任务分配。任务分配时,机器人通过查询一张关于所有机器人信息的表格来直接指定或是协商完成任务的分配。其优点明显:协调简单、通讯开销少,可获得全局最优解,对于规模较小的系统而言,其任务的优化分配易于实现。但随着机器人数量的增加,系统性能将显著降低,且系统的实时性、容错性较差,不适于动态的任务分配。

随着分布式人工智能的快速发展,适用于动态、开放的任务环境的分布式任务分配方法以其反应速度快、灵活性高、适应性强等特点,受到人们的广泛关注。由于多机器人系统中没有中央节点,不依赖于全局知识机器人,机器人个体高度自治,因此系统有很强的冗余性,即使有个别机器人失效也不会影响系统整体的效能。机器人个体通过局部信息规划其行为,并通过协商合作完成任务,对于规模较大的系统,也可以通过优化任务分配的方式实现任务的实时处理。分布算法对动态环境的反应速度快,鲁棒性强。但由于缺乏全局核心的控制,所以全局协调性差,通讯开销巨大。虽然这种结构增加了系统的复杂性,难以得到全局最优的方案,但分布式的任务分配方法以其突出的柔性、高效性和鲁棒性仍不失是一种行之有效的任务分配方式。其典型的代表有合同网分配和熟人网分配。

在目前国内外大多数的专利中,关于生物协作行为启发多机器人任务分配方法很少报道,仅有的报道都是采用群体优化策略来实现分配的最优化,并没有考虑个体交互的局部性。而其他的任务分配方法多数采用协商式,具有复杂的设计模式,系统灵活性、实时性较差。

与本发明相关的公开报道有:董炀斌,1、蒋静坪,何衍.基于适应度的多机器人任务分配策略.浙江大学学报(工学版),2007(2);2、黎萍,杨宜民.多机器人系统任务分配的研究进展.计算机工程与应用,2008(17);3、齐心跃,田彦涛,杨茂,杨永明.基于市场机制的多机器人救火任务分配策略.吉林大学学报(信息科学版),2009(5);4、张嵛,刘淑华.多机器人任务分配的研究与进展.智能系统学报.2008(2);5、CN101685309,多机器人协调队形控制方法;6、CN101515179,一种多机器人队形变换方法;7、CN101618543,异构多机器人系统的任务分配方法;8、CN101136081,基于蚁群智能的无人作战飞机多机协同任务分配方法等。

发明内容

本发明的目的在于提供一种能够提高多机器人协作任务的效率,增加系统的灵活性和鲁棒性的探索任务下基于分簇的多机器人任务分配方法。

本发明的目的是这样实现的:

包括分簇结构的生成方法和簇间机器人的动态任务分配方法;

(1)任务开始,每个机器人查找是否存在于某个簇结构中,即多个机器人之间产生能够信息共享和交流的通信网络,并具有同一个任务目标,当系统中存在簇结构,则转到(3),否则转到(2);

(2)基于树型拓扑的分簇结构生成算法生成新簇,

当独立机器人遇到其他机器人后,判断机器人之间能否能够协作,当两个机器人满足协作条件时,在某个簇内的机器人会向簇头即具有决策能力的机器人发出请求,簇头根据任务的难度和当前簇内节点数量来判断是否需要该机器人加入簇中,如果允许新的机器人加入簇中,则按照簇结构创建和管理规则生成新簇结构,新的簇结构为树型,父亲节点负责信息的交流、融合和管理子节点的功能,当父节点连接数超过2时,树型结构继续生长,产生下一层次节点,这样产生了新的簇结构,进而转入(5);

(3)判断任务是否更新、并需要更新新的簇型结构,如果没有需要更新的簇结构,则转到(5),否则转到(4);

(4)根据任务的变化,采用簇间任务分配策略更新簇结构,当簇结构得到更新后,转到(5);

(5)判断任务是否结束,如果任务没有结束,则转到(1),否则结束任务。

所述簇间任务分配策略是在局部信息的交互下由不同职能机器人相互转换来实现的;所有的机器人共有两类职能:主动探索职能机器人即主动机器人和被动引导职能机器人即被动机器人;执行主动探索职能的机器人构成主动机器人簇,执行被动引导职能机器人构成被动机器人簇;主动机器人簇执行探索功能,根据被动机器人组成的网络选择全局环境中的目标区域,进行全局搜索任务;被动机器人按照分离漫游规则散落到环境各处,并判断环境的复杂性,在被动机器人漫游的过程中,机器人之间仍然保持局部的相互连接关系,当被动机器人分散到一定程度后,开始判断局部环境的复杂性,并在簇网络中传递该信息,在完成当前局部搜索任务后,此时该簇机器人转化为被动机器人簇,对环境中新的任务进行评价,而被动机器则转化为主动机器人,更新环境地图并探索新的环境;如此往复,通过各个主动机器人簇和被动机器人簇之间的专职转化使得机器人实现任务分配下的多机器人协作探索。

本发明是一种基于分簇的任务分配方法,包括分簇结构的生成方法和簇间机器人的动态任务分配方法。不同于已有技术中的协商式或集中式任务分配方法,本质上是基于自组织原理的分布式任务分配方法。当发现任务信息时,为了便于机器人的协作,通过簇结构的生成方法建立适合当前任务的机器人分簇结构;当任务发生改变时,通过不同子簇间机器人的动态任务分配,实现各子任务中机器人数量的动态均衡,提高协作任务的有效性。

本发明的优点是:

(1).采用基于局部的信息交互机制,使得机器人在协作的过程中具有更好的灵活性。

(2).借鉴了群居生物的交互模式,使得单个机器人的设计简单化,可提高系统的鲁棒性。

(3).采用了基于分簇的动态任务分配方法,提高了机器人的任务分配适应环境变化的性能,使得分配结果能够灵活地适应环境变化。

附图说明

图1是本发明的方法流程;

图2是本发明实施环境图;

图3是簇更新规则中各个行为的有限状态机;

图4是生物协同启发下的簇间任务分配方法。

具体实施方式

为验证方法有效性,以及从不同角度分析机器人协作探索的性能,使用分簇任务分配方法实现多机器人在未知环境下的协作探索。实验环境大小为9m×18m的室内复杂环境,选取栅格数量为100×200,如图2所示。图中有不同复杂程度的局部区域,主要依赖环境中的局部障碍物密度。为了能够较为完全地探索环境,机器人探索环境的路线仍然采用除草机路线。假设机器人声纳传感器感知误差和里程计误差为0,环境建模方法采用简单的贝叶斯规则来更新环境地图。由于分簇方式采用的是局部交互下的多机器人自组织任务分配策略,这里规定机器人之间的有效通信范围为3m,限制了机器人之间的信息交互能力。每个机器人具有自己的局部地图信息,当有机器人到达附近时,可以通过机器人之间的直接通信获得相应的地图信息,并做出拼接,具体实施方案如下。

(1)基于树型拓扑的分簇结构生成方法

①动态簇结构形成的条件。当一组机器人形成一簇后,首先需要确定簇头,以便信息的传播和管理。在一个存在M个机器人的簇里,这里产生簇头的产生来自三个标准:(a)与目标区域的距离di;与目标区域越近的机器人可以更好地引导其他机器人的运动实现合适的协作方案。(b)感知视野的区域视角比率φi;视角比率越大,说明机器人的视野宽阔,行为受环境的影响较小,更容易指导其他机器人行为的稳定。(c)最大通信跳数Ni,其中0<i≤M为机器人编号;最大通信跳数越小的机器人发出的信息可经过较少的转发次数就覆盖整个网络,更容易使得其他机器人响应及时,节省大量任务时间。机器人与目标区域的距离可以根据目标点选择方法确定的目标点进行计算。在180°的视角内记录范围内小于机器人感知距离返回值的数量K,那么机器人的区域视角比率可以用下述公式计算:

φi=1-KNs---(1)

其中Ns为声纳扫描点的个数。

簇内的机器人向通信范围内所有发送带有自己编号、初始跳数为0的信息,直接收到该机器人信息的其他机器人将通信跳数增加1,并发送出去。簇内所有机器人只存储收到的最小的跳数信息。经过一定时间间隔后,每个机器人将所收到的机器人编号及对应的最小跳数信息发送给簇内其他机器人,得到最终簇内关于每个机器人到达其他节点的最大通信跳数:

Countij=maxj(Countij)---(2)

其中Countij表示簇内第i个机器人到第j个机器人跳数,上式的含义为机器人i实现所有簇内机器人信息传播所需要的最大跳数。

根据上述分析对每个机器人计算簇头合适性判定:

Si=1/[α·di+β·(1-φi)+γ·Counti]    (3)

Si越大,说明机器人i越不适合做为簇头机器人。由于上述各个标准变量数量级不同,这里采用α,β,γ同时作归一化和权值的处理。如果对机器人i≠j,有Si=Sj,则最终从这些机器人中随机选择一个机器人作为簇头机器人。

②设计簇更新规则。基于环境的变化、系统的灵活性要求,本发明采用基于行为的有限状态自动机可以有效地解决机器人的协作和探索之间的关系。机器人的行为有:探索、等待、链接、观察和移动行为。图3给出了上述行为的有限状态机结构。下述为各个行为功能和转移条件:

探索行为:按照一定的空间结构到达目标点。当簇内机器人遇到障碍物的时候,按照探索路径规划方法进行探索环境。一旦一个机器人因为通信阻断或者超出协作范围,该独立机器人就会进入等待或探索状态。当簇内其他机器人网络结构没有断开时,这些机器人连接状态保持不变,否则簇内机器人就会生成新的网络结构。此时,簇头当重新选取。当该区域探索完成后,簇内机器人就会选择下一个边界点,进行新的探索行为。

等待行为:独立机器人在遇到其他机器人后,会进入等待状态。当机器人在脱离簇后,也会进入等待状态一段时间,当超过时间就会转入搜索状态,进行独自搜索。此时,机器人收到其他簇机器人的链接请求时,就会进入链接状态。

链接状态:在观察状态的机器人首先搜索等待状态的机器人,如果等待状态机器人作出响应,两者就会进入链接状态,并更新簇内网络结构。如果没有等待机器人,该机器人就会搜索其他父节点的空闲状态(子节点数少于最大连接数)。如果有更高层次的父节点具有更好节点,该机器人进入移动行为,移动到该父节点附近,形成更为合理的新的网络结构。

观察行为:父节点进入观察行为时,一方面是为链接行为作出准备,等待独立机器人或者簇内其他机器人进行链接请求。在观察行为的机器人会有一段时间的停留,当超过该时间后,机器人仍然恢复之前的行为,进行探索或者链接行为。

移动行为:该行为又分成两类:一类表明机器人同簇内的其他机器人为建立成功新的链接达成协议时,该机器人就会移动到新父亲节点的周围并建立新的链接。另一类,就是簇内机器人选择共同边界点后,共同按照路径规划策略移动到目标点。

总之,机器人簇结构形成和更新过程如下:

(2)基于生物启发的簇间机器人任务分配方法

①确立分簇协作探索中机器人的职能安排。在本系统中,定义所有的机器人共有两类职能:主动探索职能机器人(以下简称主动机器人)和被动引导职能机器人(以下简称被动机器人)。定义执行主动探索职能的机器人构成主动机器人簇,同样也有被动机器人簇。主动机器人簇主要执行探索功能。而被动机器人分散到一定程度后,开始判断局部环境的复杂性,并在簇网络中传递该信息。在完成当前局部搜索任务后,该簇机器人可以转化为被动机器人簇,对环境中新的任务进行评价。而被动机器则转化为主动机器人,更新环境地图并探索新的环境。如此往复,通过各个主动机器人簇和被动机器人簇之间的专职转化使得机器人实现任务分配下的多机器人协作探索。

②明确基于分簇方法的多机器人通信内容。为了配合簇间机器人的任务分配,机器人之间需要通信如下信息:

A.机器人当前的位置信息,用于簇内机器人结构的形成和机器人协作。

B.机器人的局部信息,由主动机器人传递,用于不同簇机器人的协作。

C.请求加入簇信息。当独立机器人遇到机器人簇后,会向簇节点发出请求,用于簇的动态生成。该请求经簇头判别后,会给出相关的同意和拒绝加入簇结构的信息。若独立机器人接收到独立信息后,则按照簇更新规则更新该簇结构,形成的簇结构。如果收到拒绝信息,该机器人就会离开簇附近,继续独立探索环境,直到可以加入新的簇。

D.机器人节点编号。

E.针对不同任务区域的指向信息。当每个被动机器人获得的平均任务难度发生变化时,机器人所产生的指向信息会实时的发生改变,而不是像自然界信息素那样可以持续一定的时间。主动机器人簇会根据指向信息,选择相应的任务区域,移动到目标位置。不同目标的该信息可以被同时传播,形成多重信息素。

F.任务难度信息。表示需要协作探索的紧迫程度和复杂程度,该信息是被动机器人在移动过程中计算的平均环境复杂程度。

G.跳数。用于主动机器人的动态分配。从信息源即距离目标区域的被动机器人发出的信息跳数为1。每当相邻被动机器人接收到其他机器人发送的信息,就会产生一个指向信息,并且该指向信息所对应的机器人跳数增加1变为自己的跳数。这样就形成了到达不同目标区域的被动机器人网络。

③确立多机器人分簇下的交互机制,实现机器人的簇间任务分配,这是本算法的核心所在,流程如图4所示。主动机器人簇在移动的过程中,根据簇内机器人数量的大小和任务难度信息,按照一定的概率选择相应的任务区域。当被动机器人簇形成后,会形成一条单线路结构,并朝向簇内节点共同的未知区域移动。当有一个机器人到达未知区域后,对区域的复杂程度和大小进行判定,此时该机器人成为簇头,并向簇内其他机器人发出该区域的任务难度,最终该簇机器人群体产生一条到达该区域的长链路,并提供到达该任务区域的引导路线。

被动机器人簇头发出自己所在区域相应的任务难度信息后传递给簇内其他节点。随后,该信息在簇内网络中传递开来。被动机器人在传递该信息的过程中,会将其到达簇头的跳数信息加入到广播通信的内容中去。当一个主动机器人簇接收到拥有两个任务信息时,它就会根据二者的信息进行比较并选择较优的目标区域,即朝着较优簇头所在的位置移动。当主动机器人到达探索区域后,任务难度根据当前主动机器人数量进行削减。若当前区域任务未完成,则被动机器人簇仍然可以保留,吸引独立的主动机器人到达区域,进行协作。

主动机器人达目标区域同样需要机器人之间的信息交互和融合。当主动机器人簇移动的过程中,其通信范围内可以出现多条梯度向量,这些向量可能来自一个被动机器人,也可能来自多个被动机器人。这些主动机器人就会以概率phi选择第i条梯度向量。

令ηi表示第i条梯度向量所对应的任务难度梯度(指向信息)。因此,根据群居生物协作灵活性,设计主动机器人选择不同任务的概率

phi=[(k+ηi)αΣj=1n(k+ηj)α·NiN+1]2并做归一化处理

ni=Dcounti---(4)

其中,Ni为第i簇机器人数量,N为所有机器人数量。D为任务难度,这里用局部环境中机器人传感器遮挡率乘以局部障碍物所在区域面积估计给出。传感器遮挡率在第三章中已经给出,局部障碍物所在区域面积有机器人的感知范围r和局部范围机器人数量Ni得到,即Ni×r。counti为该路线上的跳数信息,α和β分别为相对变量的敏感参数,k为响应阈值。

采用上述操作,最终可以实现多机器人协作探索的任务动态分配,提高了系统的性能和适应性。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号