·954· 智能系统学报 第13卷 根据受到的抗原和抗体的综合激励值来选择。综 如果出现冲突,则冲突的机器人中次优任务激励 合激励由某个任务对该机器人的激励以及在该任 低者获得最优任务,次优任务激励相同时,随机 务上处于等待的机器人对该机器人的激励共同构 分配最优任务,其余机器人重新选择任务。在任 成,以此来完成机器人的任务分配与协作,设 务分配时,每个机器人同一时刻只能得到一个任 A为任务T对机器人R的综合激励,将其定义为 务,且当机器人处于闲暇状态时才能被任务所激 A=之m+g 励,任务处于等待和空闲状态时才可以对机器人 (5) 产生激励作用。 k=1 式中:a、B为相应部分调整参数,N为在任务T上 2.2动态任务分配 等待的机器人数目,m:为机器人间产生的激励, 静态任务分配方法只可以解决多机器人任务 g为任务T,和机器人R,之间的激励值。机器人 的一次分配,在此基础上引入事件驱动的机制, 根据模型选择任务,如有任务处于待协作状态, 当系统需要再次进行任务分配或是有新的任务产 等待在某个任务上的机器人越多,此任务被选择 生时,通过事件触发重新进行分配,以满足环境 的概率越大,从而能尽快地得到协作。 动态性的要求。 系统中,定义如下事件: 2事件驱动的多机器人动态任务分 ①系统中有新的任务产生: 配算法 ②系统中有机器人状态由工作转变为空闲: ③系统中有机器人状态由等待转变为空闲: 利用文中提出的分配和协作模型,能实现任 ④系统中有机器人状态由被激励转变为等待: 务的一次分配,在此基础上引入事件驱动的机制) ⑤系统中有机器人发生故障。 使多机器人系统可以自适应地处理动态任务,并 根据事件驱动的机制,当系统中有如上事件 引入焦躁模型来解决任务死锁。 发生时,触发系统,处于空闲状态的机器人进行 2.1静态任务分配 再次任务选择。 系统中设定机器人和任务的状态转移如图1 2.3任务死锁解除 所示,任务状态和机器人的状态相互对应,待分 对于一个多机器人系统而言,常常会发生任 配任务激励空闲机器人转变为已分配状态,如果 务死锁,即区域中所有机器人都因无法完成任务 此机器人可以自行完成任务,则任务转变为执行 而处于等待状态。对于智能系统而言,需要机 态;否则任务转变为待协作,处于待协作状态的 器人能够自主地解除死锁,尽快恢复到工作状态。 任务获得协作转变为已分配状态,若等待协作的 为了使机器人能够自主解除死锁状态,引入 机器人由于长时间没有得到协作而放弃任务,则 一种焦躁模型。当机器人长时间由于无法完成任 任务由待协作状态重新回到待分配状态。 务而处于等待,激素分泌使其产生焦躁情绪,当 待分配 已分配 达到一定的上限时,其将会放弃对该任务的等 待,从而重新回到空闲状态,使其能够协助其余 完成 处于等待状态的机器人完成任务。 执行 、待协作 借鉴L.S.Farhy提出的激素分泌的规律,定 (a)任务状态转移图 义系统中引起焦躁情绪的激素分泌模型为 空闲 被激励 1 F(=TI+1 (6) 式中:T为阈值,1为时间变量,n为Hll系数,且 工作 等待 n≥l。 (b)机器人状态转移图 机器人处于等待状态而分泌激素,当其超过 图1机器人和任务状态状态转移图 设定阈值C时,机器人会放弃等待的任务,回到 Fig.1 Robot and task state transition diagram 空闲状态,且机器人会对该任务产生记忆,避免 初始时刻,所有任务处于未分配状态,机器人 在该任务处于未分配状态时再次选择,陷入循环 都处于空闲状态,每个机器人按照激励值选择最 死锁状态。若该任务处于协作状态时,其对该机 适合自己的任务,如果每个机器人选择的任务都 器人的激励将会被弱化,表达式如式(7)所示: 不重复,则直接获得相应任务,转变为被激励态; 8=1"8 (7)根据受到的抗原和抗体的综合激励值来选择。综 合激励由某个任务对该机器人的激励以及在该任 务上处于等待的机器人对该机器人的激励共同构 成,以此来完成机器人的任务分配与协作,设 Aij 为任务 Tj 对机器人 Ri 的综合激励,将其定义为 Ai j = α ∑N k=1 mik +βgi j (5) 式中:α、β 为相应部分调整参数,N 为在任务 Tj 上 等待的机器人数目,mik 为机器人间产生的激励, gij 为任务 Tj 和机器人 Ri 之间的激励值。机器人 根据模型选择任务,如有任务处于待协作状态, 等待在某个任务上的机器人越多,此任务被选择 的概率越大,从而能尽快地得到协作。 2 事件驱动的多机器人动态任务分 配算法 利用文中提出的分配和协作模型,能实现任 务的一次分配,在此基础上引入事件驱动的机制[13] , 使多机器人系统可以自适应地处理动态任务,并 引入焦躁模型来解决任务死锁。 2.1 静态任务分配 系统中设定机器人和任务的状态转移如图 1 所示,任务状态和机器人的状态相互对应,待分 配任务激励空闲机器人转变为已分配状态,如果 此机器人可以自行完成任务,则任务转变为执行 态;否则任务转变为待协作,处于待协作状态的 任务获得协作转变为已分配状态,若等待协作的 机器人由于长时间没有得到协作而放弃任务,则 任务由待协作状态重新回到待分配状态。 待分配 已分配 执行 待协作 完成 (a) 任务状态转移图 空闲 被激励 工作 等待 (b) 机器人状态转移图 图 1 机器人和任务状态状态转移图 Fig. 1 Robot and task state transition diagram 初始时刻,所有任务处于未分配状态,机器人 都处于空闲状态,每个机器人按照激励值选择最 适合自己的任务,如果每个机器人选择的任务都 不重复,则直接获得相应任务,转变为被激励态; 如果出现冲突,则冲突的机器人中次优任务激励 低者获得最优任务,次优任务激励相同时,随机 分配最优任务,其余机器人重新选择任务。在任 务分配时,每个机器人同一时刻只能得到一个任 务,且当机器人处于闲暇状态时才能被任务所激 励,任务处于等待和空闲状态时才可以对机器人 产生激励作用。 2.2 动态任务分配 静态任务分配方法只可以解决多机器人任务 的一次分配,在此基础上引入事件驱动的机制, 当系统需要再次进行任务分配或是有新的任务产 生时,通过事件触发重新进行分配,以满足环境 动态性的要求。 系统中,定义如下事件: ① 系统中有新的任务产生; ② 系统中有机器人状态由工作转变为空闲; ③ 系统中有机器人状态由等待转变为空闲; ④ 系统中有机器人状态由被激励转变为等待; ⑤ 系统中有机器人发生故障。 根据事件驱动的机制,当系统中有如上事件 发生时,触发系统,处于空闲状态的机器人进行 再次任务选择。 2.3 任务死锁解除 对于一个多机器人系统而言,常常会发生任 务死锁,即区域中所有机器人都因无法完成任务 而处于等待状态[14]。对于智能系统而言,需要机 器人能够自主地解除死锁,尽快恢复到工作状态。 为了使机器人能够自主解除死锁状态,引入 一种焦躁模型。当机器人长时间由于无法完成任 务而处于等待,激素分泌使其产生焦躁情绪,当 达到一定的上限时,其将会放弃对该任务的等 待,从而重新回到空闲状态,使其能够协助其余 处于等待状态的机器人完成任务。 借鉴 L.S.Farhy 提出的激素分泌的规律[15] ,定 义系统中引起焦躁情绪的激素分泌模型为 F (t) = 1 (T/t) n +1 (6) 式中:T 为阈值,t 为时间变量,n 为 Hill 系数,且 n≥1。 机器人处于等待状态而分泌激素,当其超过 设定阈值 C 时,机器人会放弃等待的任务,回到 空闲状态,且机器人会对该任务产生记忆,避免 在该任务处于未分配状态时再次选择,陷入循环 死锁状态。若该任务处于协作状态时,其对该机 器人的激励将会被弱化,表达式如式(7)所示: g ′ i j = η · gi j (7) ·954· 智 能 系 统 学 报 第 13 卷