专利名称:一种多机器人系统的调度组织协作系统及方法
一种多机器人系统的调度组织协作系统及方法技术领域
本发明设计机器人控制领域,特别涉及一种多机器人系统的调度组织协作系统 及方法。
背景技术:
随着机器人功能和领域的不断扩展,柔性智能机器人已取代传统硬性、功能单一 的机器人,成为当今主要研究方向。然而,多机器人系统中,处于动态、不确定环境中的各机 器人间,在任务执行过程中需要有大量的信息交互和协商,然而随着机器人数量的增加,机 器人间的通信压力和协调难度也将大大增加。而传统多机器人系统通信存在着信息拥塞等 大量问题;组织方式上所采用的集中式或分层式模式,在适应主体能力及环境的动态变化 上,降低了整个系统的活跃性,而对管理者的高要求更是出现了瓶颈。此外,选择任务执行 者时还需要进行大量信息的重复处理和比较,不仅效率不高,而且还浪费了大量的系统资 源。
目前多机器人系统的研究已受到普遍的关注,比较经典的实验系统有 CEBOT(Cellular Robotic system)、ALLIANCE/L-ALLANCE 系统、SWARM 系统。这些研究 涉及到多机器人的群体体系结构、感知与多传感器融合、通信与协调机制、任务分配、学 习、运动规划系统实现等许多方面,而对于多个机器人的协调与合作的研究是多机器人系 统研究的主要内容。国外的最新研究主要有美国USC大学的学者建立soeiallyMObile 和TheNerdHerd实验系统;加拿大Alberta大学的C. R. Kube等人研制的Collective Robotics (集体机器人系统)以及美国Oak Ridge国家实验室的LyrmeE. Parker博士在 多Agent协作、自主Agent体系结构、多Agent通讯等方面做的许多工作。相对于国外,我 国对于多机器人系统的研究起步较晚,一般集中在多机器人协作与多机器人学习等方面, 而且多针对智能化制造系统和机器人足球的应用基础性研究。主要内容有中国科学院沈 阳自动化所建立的MACAS系统;上海交通大学研制的多移动机器人系统平台ActivMedia Robotics。然而这些研究在处理多机器人调度系统中任务分配及协作方面的问题时所采用 的诸多方法,在适应主体能力及环境的动态变化、降低通信量、提高整个系统的问题求解能 力和活跃性的全局性能优化等方面仍然存在着诸多问题。本设计在积累已有的研究成果的 基础上,并结合新的应用背景和技术,设计了新的适用于多机器人调度的柔性组织模型和 智能协作方案,此方案将有广阔的应用前景。发明内容
本发明的目的是针对当前多机器人系统中存在的种种瓶颈,设计了一种新的适 合于柔性机器人的调度组织模型,并基于模型提出了一种智能协作机制,以降低调度过程 中的通信量、减少系统开销、提高问题求解能力,提高系统整体性能。
本发明采用的技术方案是提供一种多机器人系统的调度组织协作方法,包括以 下步骤第一步,任务发布过程第一机器人Robotl的调度管理单元发现新任务到达后,任务 管理单元、资源管理单元及调度管理单元联合做出自我评价,给出评价结果,第一机器人 Robotl成为决策者,调度管理单元将任务信息连同评价结果一同发布到公告栏Bulletin。
第二步,执行者选择过程在选择任务执行者截至时间到达之前,有空闲资源的机 器人查看公告栏Bulletin的任务信息,进行自我评价,调度管理单元的评价结果比较模块 将评价结果与当前决策者的评价结果进行比较,如果此次评价结果优于当前决策者的评价 结果,则修改当前任务信息中的评价结果为新的评价结果,并且取代当前决策者成为新的 决策者,并通知原决策者放弃对该任务的决策权;否则,放弃该任务。
第三步,执行者确定过程若任务执行者的选择过程已结束,且此时决策者仍为 任务的发现者第一机器人Robotl,调度管理单元的任务能力判断模块判断第一机器人 Robotl具备完成该任务的能力,则当前决策者成为任务执行者,开始任务的执行,并就任务 的完成情况更新自身能力信息。
其中,所述第三步进一步包括若任务执行者的选择过程已结束,且此时决策者仍 为任务的发现者第一机器人Robotl,并且第一机器人Robotl不具备完成该任务的能力,则 由第一机器人Robotl的调度管理单元的任务分解模块对该任务进行分解,承担其中的部 分任务,并将剩余任务再次发布公告,重复第一步至第三步。
其中,所述自我评价的步骤包括首先,当调度管理单元发现新任务后,调度管理单元与任务管理单元及资源管理模块 进行协商若该任务是从现实世界中直接获得的,则由其调度管理单元根据任务管理单元 计算的当前任务负载信息及资源管理单元计算的资源负载信息进行评价,然后将评价结果 连同任务信息一起进行发布;以使其他机器人获知新消息,该机器人并成为当前决策者,并 开始实时监控该消息的状态。若接到其他机器人发出的通知,则放弃对该任务的决策权。
其次,任务管理单元及资源管理模块对当前任务进行预处理及处理能力的计算。
其中,预处理过程为任务管理单元中的任务信息收集模块收集监控和跟踪的所 有任务信息,包括优先级Ui、开始时限Si、处理时间Ti、与其它任务的通信量总和Ci、当前 所在节点Ni、任务执行所需的资源Ri等;资源管理模块中的资源信息监控模块动态收集实 时监控与处理能力相关的资源信息,包括控制器利用率Pi、指令就绪队列长度Li、存储空 间Mi、各接口的流量Ii和利用率Ei等。
其中,处理能力计算过程为任务管理单元中的任务信息计算模块根据收集到 的所有任务信息,并将它们综合起来计算当前的任务负载情况T_load= μ IUi + y2Si + μ3Τ + y4Ci + μ5Ν + μ 6Ri +……;资源管理单元中的资源信息计算模块根据 动态实时监控和收集的信息,并将它们综合起来计算当前的资源负载情况R_load= β IPi + i3 2Li + β3Μ + β4Ι + β5Ε +……;其中,μ i,β i分别为其中各个信息的权值, 兴=, 為=1,根据不同需求可具体设定。iai-L
最后,调度管理单元根据协商结果,并结合其他因素,包括反应力和通信能力,任 务的发现与接受的能力,以及任务的发布能力;通过与其他单元的通信协商完成能力的整 体评价工作,并给出最终自身评价结果F=f (T_ load, R_load,…),评价结果F为各个因 素的函数。
另提供一种多机器人系统的调度组织协作系统,所述调度组织协作系统包括 任务管理单元,用于监控和跟踪所有任务信息,所述任务信息包括优先级、开始时限、处理时间、与其它任务的通信量总和、当前所在节点、任务执行所需的资源,并将任务信息 综合起来计算当前的任务负载情况,根据任务要求,申请资源,执行其任务。
资源管理单元,用于管理所有与处理能力相关的资源,动态实时的监控和收集资 源信息,并将资源信息综合起来计算当前的资源负载情况;所述资源包括控制器利用率、 指令就绪队列长度、存储空间、各接口的流量和利用率等。
调度管理单元用于实现任务的发现与接受,以及任务的发布;与其任务管理单 元、资源管理单元进行协商,完成能力的整体评价工作,并给出评价结果;实现与其他机器 人之间的通信;在接受任务后可进行任务调度,根据任务发布情况完成大规模任务的分解。
所述任务管理单元、资源管理单元及调度管理单元通过通信接口相互连接。
其中,所述调度管理单元包括评价结果比较模块,用于将自身评价结果与当前决策者的评价结果进行比较若评价 结果优于原决策者,则修改公告栏中评价结果为新的评价结果,取代原决策者成为新的决 策者,向原决策者发出通知,以便于原决策者放弃对该任务的决策权,否则不参与竞争。
任务能力判断模块,用于判断第一机器人Robotl是否具备完成该任务的能力当 消息的有效时间到了无竞争者,任务能力判断模块根据其能力进行决策,能力足够,则执行 其任务,否则对任务进行分解。
任务的发布模块,将评价结果连同任务信息一起进行发布,以使其他机器人获知 新消息。
其中,所述调度管理单元进一步包括任务分解模块,用于将大规模任务进行分解当消息的有效时间到了无竞争者,第一机 器人Robotl又不具备完成该任务的能力,则对任务进行分解,执行分解后的部分任务,并 将剩余任务再次按该调度协作机制进行处理。
其中,所述任务管理单元包括任务信息收集模块,用于监控和跟踪的所有任务信息,包括优先级、开始时限、处理时 间、与其它任务的通信量总和、当前所在节点、任务执行所需的资源等。
任务信息计算模块,用于根据收集到的所有任务信息,将它们综合起来计算当前 的任务负载情MT_load= μ IUi + μ 2Si + μ 3Ti + μ 4Ci + μ 5Ni + μ 6Ri + ……;其中,μ i为权值,
权利要求
1.一种多机器人系统的调度组织协作方法,包括以下步骤步骤A,任务发布过程第一机器人Robotl的调度管理单元(300)发现新任务到达后, 任务管理单元(100)、资源管理单元(200)及调度管理单元(300)联合做出自我评价,给出 评价结果,第一机器人Robotl成为决策者,调度管理单元(300)将任务信息连同评价结果 一同发布到公告栏Bulletin;步骤B,执行者选择过程在选择任务执行者截至时间到达之前,有空闲资源的机器人 查看公告栏Bulletin的任务信息,进行自我评价,调度管理单元(300)的评价结果比较模 块(310)将评价结果与当前决策者的评价结果进行比较,如果此次评价结果优于当前决策 者的评价结果,则修改当前任务信息中的评价结果为新的评价结果,并且取代当前决策者 成为新的决策者,并通知原决策者放弃对该任务的决策权;否则,放弃该任务;步骤C,执行者确定过程若任务执行者的选择过程已结束,且此时决策者仍为任务的 发现者第一机器人Robotl,调度管理单元(300)的任务能力判断模块(320)判断第一机器 人Robotl具备完成该任务的能力,则当前决策者成为任务执行者,开始任务的执行,并就 任务的完成情况更新自身能力信息。
2.根据权利要求1所述的多机器人系统的调度组织协作方法,所述步骤C进一步包括 若任务执行者的选择过程已结束,且此时决策者仍为任务的发现者第一机器人Robotl,并 且第一机器人Robotl不具备完成该任务的能力,则由第一机器人Robotl的调度管理单元 (300)的任务分解模块(330)对该任务进行分解,承担其中的部分任务,并将剩余任务再次 发布公告,重复步骤A至步骤C。
3.根据权利要求1所述的多机器人系统的调度组织协作方法,所述自我评价的步骤包括首先,当调度管理单元(300)发现新任务后,调度管理单元(300)与任务管理单元 (100)及资源管理模块(200)进行协商若该任务是从现实世界中直接获得的,则由其调度 管理单元(300)根据任务管理单元(100)计算的当前任务负载信息及资源管理单元(200) 计算的资源负载信息进行评价,然后将评价结果连同任务信息一起进行发布;以使其他机 器人获知新消息,该机器人并成为当前决策者,并开始实时监控该消息的状态;若接到其他机器人发出的通知,则放弃对该任务的决策权;其次,任务管理单元(100)及资源管理模块(200)对当前任务进行预处理及处理能力 的计算;其中,预处理过程为任务管理单元(100)中的任务信息收集模块(110)收集监控和跟 踪的所有任务信息,包括优先级Ui、开始时限Si、处理时间Ti、与其它任务的通信量总和 Ci、当前所在节点Ni、任务执行所需的资源Ri ;资源管理模块(200)中的资源信息监控模块 (210)动态收集实时监控与处理能力相关的资源信息,包括控制器利用率Pi、指令就绪队 列长度Li、存储空间Mi、各接口的流量Ii和利用率Ei ;其中,处理能力计算过程为任务管理单元(100)中的任务信息计算模块(120)根据收 集到的所有任务信息,并将它们综合起来计算当前的任务负载情况T_load= μ IUi + y2Si + μ3Τ + y4Ci + μ5Ν + μ 6Ri +……;资源管理单元(200)中的资源信息计算模块 (220)根据动态实时监控和收集的信息,并将它们综合起来计算当前的资源负载情况R_ load= β IPi + ^2Li + β3Μ + β4Ι + β 5Ei +……;其中,μ i,β i分别为其中各个信息的权值,Σ/ -=,Σ/ =ι,具体值 Μ α根据不同需求可具体设定;最后,调度管理单元(300)根据协商结果,并结合其他因素,包括反应力和通信能力, 任务的发现与接受的能力,以及任务的发布能力;通过与其他单元的通信协商完成能力的 整体评价工作,并给出最终自身评价结果F=f (T_ load, R_load,…),评价结果?是乙 load, R_load等因素的函数。
4.一种多机器人系统的调度组织协作系统,其特征在于,所述调度组织协作系统包括任务管理单元(100),用于监控和跟踪所有任务信息,所述任务信息包括优先级、开始 时限、处理时间、与其它任务的通信量总和、当前所在节点、任务执行所需的资源,并将任务 信息综合起来计算当前的任务负载情况,根据任务要求,申请资源,执行其任务;资源管理单元(200),用于管理所有与处理能力相关的资源,动态实时的监控和收集资 源信息,并将资源信息综合起来计算当前的资源负载情况;所述资源包括控制器利用率、 指令就绪队列长度、存储空间、各接口的流量和利用率;调度管理单元(300)用于实现任务的发现与接受,以及任务的发布;与其任务管理单 元(100)、资源管理单元(200)进行协商,完成能力的整体评价工作,并给出评价结果;实现 与其他机器人之间的通信;在接受任务后可进行任务调度,根据任务发布情况完成大规模 任务的分解;所述任务管理单元(100 )、资源管理单元(200 )及调度管理单元(300 )通过通信接口相 互连接。
5.根据权利要求4所述的多机器人系统的调度组织协作系统,其特征在于,所述调度 管理单元(300)包括评价结果比较模块(310),用于将自身评价结果与当前决策者的评价结果进行比较 若评价结果优于原决策者,则修改公告栏中评价结果为新的评价结果,取代原决策者成为 新的决策者,向原决策者发出通知,以便于原决策者放弃对该任务的决策权,否则不参与竞 争;任务能力判断模块(320),用于判断第一机器人Robotl是否具备完成该任务的能力 当消息的有效时间到了无竞争者,任务能力判断模块(320)根据其能力进行决策,能力足 够,则执行其任务,否则对任务进行分解;任务的发布模块(340),将评价结果连同任务信息一起进行发布,以使其他机器人获知 新消息。
6.根据权利要求5所述的多机器人系统的调度组织协作系统,其特征在于,所述调度 管理单元(300)进一步包括任务分解模块(330),用于将大规模任务进行分解当消息的有效时间到了无竞争者, 第一机器人Robotl又不具备完成该任务的能力,则对任务进行分解,执行分解后的部分任 务,并将剩余任务再次按该调度协作机制进行处理。
7.根据权利要求4所述的多机器人系统的调度组织协作系统,其特征在于,所述任务 管理单元(100)包括任务信息收集模块(110),用于监控和跟踪的所有任务信息,包括优先级、开始时限、 处理时间、与其它任务的通信量总和、当前所在节点、任务执行所需的资源;任务信息计算模块(120),用于根据收集到的所有任务信息,将它们综合起来计算当前 的任务负载情MT_load= μ IUi + μ 2Si + μ 3Ti + μ 4Ci + μ 5Ni + μ 6Ri + ……;其中,μ i为权值,
8.根据权利要求4所述的多机器人系统的调度组织协作系统,其特征在于,所述资源 管理单元(200)包括资源信息监控模块(210),用于管理所有与处理能力相关的资源,包括控制器利用 率、指令就绪队列长度、存储空间、各接口的流量和利用率;资源信息计算模块(220),用于根据动态实时监控和收集的信息,并将它们综合起来计 算当前的资源负载情况R_load=i3 IPi + i3 2Li + β 3Mi + β4Ι + β 5Ei +……;其中,β i为权值,
全文摘要
本发明公开了一种多机器人系统的调度组织协作系统及方法,采用分布式的模式架构,减少信息交互,充分利用系统资源,提高整个系统的活跃性和问题求解水平,加强了多个机器人间的智能协调与柔性合作的能力。本发明采用动态决策者方案,即每一个机器人都可能成为任务的决策者,智能的进行调度与协作,降低通信量,减少系统消耗,并能更好的适应动态环境和复杂动态任务,提高了问题的求解能力。本发明引用了公告栏,采用让机器人在有资源空闲(能力)时主动查看公告栏来获得任务信息的方法,同时,查看的过程即可完成对于最优者的选择,从而减少信息交互,简化了信息处理比较过程,大大降低了通信量,有效解决信息阻塞和系统资源的浪费问题。
文档编号G05B19/418GK102033536SQ20101059972
公开日2011年4月27日 申请日期2010年12月22日 优先权日2010年12月22日
发明者王占杰 申请人:大连理工大学