开放环境下多智能体协作方法与流程

文档序号:12804075阅读:457来源:国知局
开放环境下多智能体协作方法与流程
本发明涉及多智能体协作
技术领域
,具体涉及一种开放环境下多智能体协作方法。
背景技术
:智能体协作技术是人工智能领域多智能体系统研究的重要组成部分,当单个智能体无法完成任务时,就需要多个智能体协作来完成某一任务。整个协作过程通常是由承诺协议来控制执行的。通常情况下,承诺协议不是动态生成的,而是在执行任务前就已经定义好,并且嵌入到多智能体执行任务过程中。然而,这种预定义承诺协议的方式有很多限制与不足:(1)智能体发生改变时由于系统的开放性,新的智能体随时会进入系统中,而预定义的承诺协议往往不能满足新智能体的要求;每当增加新的智能体时,预定义承诺协议需要进行修改,以适应新的系统。(2)环境发生改变时即使没有新智能体进入系统,环境依然会发生变化,比如说一个智能体的执行结果会对当前环境造成影响并使其发生变化,此时也可能使预定义承诺协议失效。(3)目标任务发生变化时在执行任务的过程中,任务本身有时也会动态变化,比如说在某一任务执行过程中,一个优先级更高的任务被分配下来,这时也需要提供新的承诺协议来完成新的任务。基于上述原因,在开放环境下,动态生成承诺协议对于多智能体协作过程是完全有必要的。目前动态生成承诺协议主要有以下三种方法:(1)gerards.n.,singhm.p.在2013年aamas国际会议上发表了名为“evolvingprotocolsandagentsinmultiagentsystems”(inproceedingsofthetwelfthinternationalconferenceonautonomousagentsandmultiagentsystems,pp.997–1004)的论文,提出使用变量修改机制来对已经存在的承诺协议进行修改。这种方法假设系统中存在一条承诺协议和一个协议修改器,通过协议修改器修改已经存在的承诺协议,从而生成新的承诺协议。(2)telangr.p.,meneguzzif.,singhm.p在2013年aamas国际会议上发表了名为“hierarchicalplanningaboutgoalsandcommitments”(inproceedingsofthetwelfthinternationalconferenceonautonomousagentsandmultiagentsystems,pp.997–1004)的论文,提出使用htn(层级任务网)方式来生成承诺协议。这种方法假设系统中有一个中央控制器,这个控制器知道所有智能体的所有优先项、目标和服务,从而根据这些信息生成承诺协议。(3)akingunay,michaelwinikoff,pinaryolum在2014年发表的论文“dynamicallygeneratedcommitmentprotocolsinopensystems”(autonagentmulti-agentsyst,doi10.1007)提出基于目标的算法来动态生成承诺协议。这种方法假设每一个智能体都知道其它智能体的一切信息,通过自身知识库使智能体与智能体之间能自发生成承诺协议,而不借助中央控制器的控制。方法1需要预先提供一条承诺协议,然后根据环境或任务的不同对承诺协议进行修改,不能根据动态环境的变化,自动对承诺协议进行修改,适应性差而且工作量大。方法2与方法3数据处理量大,计算繁琐并且需要占据强大的系统内存。技术实现要素:本发明所要解决的技术问题是针对现有技术的状况,提供一种在开放环境下能自动根据环境生成承诺协议并完成协作任务的方法。本发明解决上述技术问题所采用的技术方案为:开放环境下多智能体协作方法,其特征在于,包括如下步骤:s01,输入一个需要协作完成的目标任务;s02,系统自动检测并记录当前环境下完成目标任务的前置条件;s03,根据输入的目标任务和当前环境下的前置条件,在当前能力库中寻找能够完成任务的智能体;若没有找到符合要求的智能体则转入步骤s04;若存在能够完成任务的智能体则转入步骤s05;s04,暂停当前任务的执行,并添加新的能够完成任务的智能体之后,转到步骤s02继续执行;s05,智能体执行所需完成的任务,执行完成后转步骤s02继续执行,直到所有任务完成为止;s06,根据上述的执行顺序生成相应的承诺协议并存储到能力库中,若下次还有类似任务可以直接调用。所述前置条件可以是一个,也可以是多个。所述步骤s03中一个前置条件可对应一个或多个符合条件的智能体。所述承诺协议为完成目标任务所执行的一系列操作步骤。本发明提出了基于能力匹配的开放环境下动态生成承诺协议的方法,将以往的bdi理论与能力模型相结合,同时扩展了智能体协作中承诺协议的定义,使其能动态高效地生成承诺协议。在给出需要完成的目标任务后,系统自动扫描当前环境,使用能力匹配算法,在能力库中选择能够完成任务的智能体。当智能体完成属于自己的任务之后,再次动态扫描当前环境,根据新的环境变化继续选择符合条件的智能体来完成相应任务,直到整个任务完成为止。附图说明图1为本发明的流程图;图2为本发明能力匹配模型;图3为本发明实施例1的架构图。具体实施方式现结合附图对本发明做进一步详细描述。如图1所示,开放环境下多智能体协作方法,包括如下步骤:s01,输入一个需要协作完成的目标任务;s02,系统自动检测并记录当前环境下完成目标任务的前置条件;前置条件可以是一个或多个,多个指两个及两个以上;s03,根据输入的目标任务和当前环境下的前置条件,在当前能力库中寻找能够完成任务的智能体;若没有找到符合要求的智能体则转入步骤s04;若存在能够完成任务的智能体则转入步骤s05;一个前置条件可对应一个或多个符合条件的智能体(如图2所示,图中ii代表前置条件,ci代表能力库中的智能体,oi代表完成任务后的输出结果);s04,暂停当前任务的执行,并添加新的能够完成任务的智能体之后,转到步骤s02继续执行;s05,智能体执行所需完成的任务,执行完成后转步骤s02继续执行,直到所有任务完成为止;s06,根据上述的执行顺序生成相应的承诺协议并存储到能力库中,若下次还有类似任务可以直接调用。所述承诺协议为完成目标任务所执行的一系列操作步骤。实施例1:为了更清楚地解释承诺协议是如果生成的,下面用实施例进行详细说明。一、场景描述一个房主买了一栋新房子,他想装饰自己的书房。在书房中,他需要放一个书柜和一台电脑桌,同时也需要粉刷墙壁和安装木质地板。目前他已经支付了购买书柜的钱,购买电脑桌的钱,装修用的材料费以及装修工人的工钱。然而,装修用的材料还没发货,因此装修工人无法完成粉刷和安装地板的过程。同时书柜和电脑桌也没发货,因此房主无法放置书柜和电脑桌。在这个场景中,我们将通过能力匹配算法来完成整个协作过程。二、具体步骤步骤1:输入目标任务,这个案例中的目标任务就是装修房主的书房;步骤2:系统自动扫描当前环境中完成该任务的前置条件,目前的前置条件就是书柜费已支付(bkpaid),电脑桌费已支付(cmppaid),装修材料费已支付(mtrpaid),装修工的工钱已支付(dcrpaid);步骤3:根据当前环境中的目标任务和前置条件,在能力库中寻找满足条件的智能体来完成任务。表1:能力匹配的场景描述表2:实施例中各关键词的意义bkpaid书柜费已支付cmppaid电脑桌费已支付mtrpaid装修材料费已支付dcrpaid装修工的工钱已支付bkprovided书柜已提供cmpprovided电脑桌已提供mtrprovided装修材料已提供dcrfinished粉刷已完成表3:实施例中智能体的对象bkmer书柜店可以提供书柜cmpmer电脑桌店可以提供电脑桌mtrmer装修材料店可以提供装修材料decorator粉刷匠可以粉刷房间结合表1-表3可以看出能力库中c1,c2,c3满足前置条件,因此被选出;步骤4:当c1,c2,c3分别完成各自任务之后,当前环境发生改变,书柜,电脑桌,装修材料都已送到,系统检测到当前环境尚未到达目标状态,此时转至步骤3,由于装修费已付,装修材料已到,装修工可以开始装修;因此能力库中c4满足当前环境被选出(见图3);步骤5:当c4完成任务后,系统检测环境发现已达到目标状态,于是任务完成;步骤6:根据上述执行过程生成相应的承诺协议,并存储到能力库中,如果下次还有类似任务可以直接调用。本发明提出了基于能力匹配的开放环境下动态生成承诺协议的方法,将以往的bdi理论与能力模型相结合,同时扩展了智能体协作中承诺的定义,使其能动态高效地生成承诺协议。在给出需要完成的目标任务后,系统自动扫描当前环境,使用能力匹配算法,在能力库中选择能够完成任务的智能体。当智能体完成属于自己的任务之后,再次动态扫描当前环境,根据新的环境变化继续选择符合条件的智能体来完成相应任务,直到整个任务完成为止。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1