CN112734127A - 一种基于动态蚁群劳动分工模型的多auv任务分配方法 - Google Patents

一种基于动态蚁群劳动分工模型的多auv任务分配方法 Download PDF

Info

Publication number
CN112734127A
CN112734127A CN202110072473.2A CN202110072473A CN112734127A CN 112734127 A CN112734127 A CN 112734127A CN 202110072473 A CN202110072473 A CN 202110072473A CN 112734127 A CN112734127 A CN 112734127A
Authority
CN
China
Prior art keywords
task
auv
dynamic
tasks
model
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202110072473.2A
Other languages
English (en)
Inventor
王强
杨惠珍
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Northwestern Polytechnical University
Original Assignee
Northwestern Polytechnical University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Northwestern Polytechnical University filed Critical Northwestern Polytechnical University
Priority to CN202110072473.2A priority Critical patent/CN112734127A/zh
Publication of CN112734127A publication Critical patent/CN112734127A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06312Adjustment or analysis of established resource schedule, e.g. resource or task levelling, or dynamic rescheduling

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Human Resources & Organizations (AREA)
  • Theoretical Computer Science (AREA)
  • Economics (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Game Theory and Decision Science (AREA)
  • Marketing (AREA)
  • Development Economics (AREA)
  • Operations Research (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Molecular Biology (AREA)
  • Educational Administration (AREA)
  • General Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种基于动态蚁群劳动分工模型的多AUV任务分配方法,首先建立异构多AUV动态任务分配问题数学模型,然后采用动态蚁群劳动分工模型,将AUV对应为蚂蚁;根据动态蚁群劳动分工模型的刺激—响应原理,将动态蚁群劳动分工的环境刺激模型、响应阈值模型及转移概率模型在异构多AUV系统动态任务分配问题上进行一一映射;最后采用循环竞争方案,解决任务冲突问题,为每个AUV分配任务。本发明方法能高效地完成任务分配过程,与传统的群智能任务分配方法相比,具有很好的自组织性、鲁棒性及快速性且能得出无冲突的任务分配方案。

Description

一种基于动态蚁群劳动分工模型的多AUV任务分配方法
技术领域
本发明属于水下航行器技术领域,具体涉及一种多AUV任务分配方法。
背景技术
AUV任务分配通过构建科学健壮的数学模型,设计优化算法完成任务配置,使个体的资源得到充分利用,高效地完成任务,体现了多AUV系统的高层组织形式与运行机制。因此,针对异构多AUV系统和海洋环境的特殊性,为提升多AUV系统的智能化水平,开展多AUV系统协同任务分配方法的研究具有重要的意义。
传统的任务分配方法如数学规划法、遗传算法(GA)、蚁群算法(ACO)、粒子群算法(PSO)通过不断的扩展和改进已经成功应用于多旅行商问题、车间调度问题、多处理器资源分配问题、车辆路径问题等。如曾文权通过设置PSO算法中速度惯性权重和加速度系数的自动调整,以及引入GA中的变异操作,实现了对PSO算法的改进,运用改进的PSO算法解决虚拟企业中的任务分配问题。秦新立针对传统ACO求解多机器人任务分配收敛速度慢且易陷入局部最优问题,引入局部优化变异算子和改进模拟退火算法来解决多机器人任务分配问题。这类集中式算法虽然易于理解,理论上可以获得任务分配的最优方案,但巨大的计算复杂性对于中心节点来说是一个巨大的挑战,不适合大规模的任务分配系统。另外,战场具有高度的不确定性和动态性,在没有充分利用智能体自适应和协同特性的情况下,很难处理任务重新分配,集中式方法获得的结果具有非常普通的实时性能。
为了充分利用智能体的协同特性,许多分布式算法如面向协商的熟人网和合同网分配方式,对策论联盟形成策略,依据价格的市场拍卖,面向结构的自组织方法等是动态环境中常采用的任务分配方法。如Cheng Q研究了一种用于多AUV系统的基于拍卖的多约束任务分配算法,提出一种多层成本计算方法,其中根据四种类型的约束将成本的计算分为四层,解决了多个约束问题。Lee考虑到机器人的资源问题,提出了一种面向资源的分布式拍卖算法,在拍卖过程中具有有限通信范围的客户代理和机器人构建一个自组网络树,并以分散的方式相互协商进行任务分配。然而这类分布式算法过度依赖于系统中的信息交换和共享,对时延要求较高。故寻找一种具有良好的自组织性、鲁棒性以及快速性的任务分配方法在水下动态任务分配问题上尤为迫切。
群集智能是指众多行为简单的个体相互作用过程中涌现产生的整体智能行为。蚁群作为一类社会性群体,其劳动分工行为具有明显的自适应的特征。令人惊奇的是,蚂蚁是在并不知晓任何关于群体需求的全局信息的情况下,自动地对群体内的个体进行分工,并达到相对平衡,其结果不但使得每个蚂蚁都在忙碌地工作,而且任务的分工又恰好符合群体对各项任务的要求。这体现了蚁群劳动分工的一个显著特点就是由个体行为柔性产生群体分工的可塑性,即执行各项任务的蚂蚁的比率在内部繁衍生息的压力和外部侵略挑战的作用下是可以变化的。这种自下而上的机制强调个体对环境的动态响应,并通过个体的本地意识和响应交互来产生全局自组织行为。蚁群劳动分工在解决任务分配过程中有很好的柔性。在没有集中控制且不提供全局模型的前提下,蚁群劳动分工模型为寻找复杂的分布式问题的解决方案提供了基础。
发明内容
为了克服现有技术的不足,本发明提供了一种基于动态蚁群劳动分工模型的多AUV任务分配方法,首先建立异构多AUV动态任务分配问题数学模型,然后采用动态蚁群劳动分工模型,将AUV对应为蚂蚁;根据动态蚁群劳动分工模型的刺激-响应原理,将动态蚁群劳动分工的环境刺激模型、响应阈值模型及转移概率模型在异构多AUV系统动态任务分配问题上进行一一映射;最后采用循环竞争方案,解决任务冲突问题,为每个AUV分配任务。本发明方法能高效地完成任务分配过程,与传统的群智能任务分配方法相比,具有很好的自组织性、鲁棒性及快速性且能得出无冲突的任务分配方案。
本发明解决其技术问题所采用的技术方案包括以下步骤:
步骤1:建立异构多AUV动态任务分配问题数学模型;
步骤1-1:异构多AUV系统动态任务分配问题定义为在一定区域内,有N个异构AUV执行M个不同特性的任务,且在执行过程中,任务的数量和状态会发生变化,为保证任务执行的效率,需要异构多AUV系统实时进行动态任务分配;
步骤1-2:N个不同参数的AUV组成AUV群体,表示为AUV={AUV1,AUV2,…,AUVN};
将AUV的参数用集合进行描述,即:
{AUV_State AUV_Position AUV_Resource AUV_Speed AUV_Ability AUV_Scope}其中,AUV_State代表AUV的状态,指空闲或执行任务;AUV_Position代表AUV所处的位置;AUV_Resource代表AUV携带的资源总量,简化表示为RC;AUV_Speed代表AUV的航行速度;AUV_Ability代表AUV执行任务的能力;AUV_Scope代表AUV执行任务的范围;
步骤1-3:被AUV执行的不同任务集合表示为TASK={TASK1,TASK2,…,TASKM},M表示任务的个数;将各任务使用集合进行描述,即:
{TASK_State TASK_Position TASK_Resource TASK_Value}
其中,TASK_State代表任务的状态,指任务是否被完成;TASK_Position代表任务所处的位置;TASK_Resource代表任务的需求资源数量,简化表示为RT;TASK_Value代表任务的价值;
步骤1-4:将异构多AUV系统动态任务分配问题表示为集合{TASK,AUV,Utotai},即输入一组任务给多AUV系统,通过动态任务分配使得系统整体效能最大;其中Utotal表示系统的效能函数,即目标函数;
步骤1-5:建立异构多AUV系统动态任务分配问题的约束条件:
Figure BDA0002906369360000031
其中,决策变量x(i,j)表示AUVi是否执行任务TASKj,x(i,j)=1表示AUVi执行TASKj,x(i,j)≠1表示不执行;j表示任务序号,i表示AUV序号;C表示一个AUV执行同一任务的次数,c表示一个AUV执行同一任务的次数序号;
式(1)中第1个条件表示同一时刻,一个任务能被多个AUV执行;
式(1)中第2个条件表示同一时刻,任意一个AUV只能执行一个任务;
式(1)中第3个条件表示同一AUV对于同一任务只能执行一次;
式(1)中第4个条件表示单个AUV或多AUV自行组成的联盟执行任务时,其携带的资源总量RCk必须满足任务所需的资源数量TASK_Recource(t)才能完成该任务,其中λ(λ≥1)表示联盟中AUV的个数;
步骤2:采用动态蚁群劳动分工模型,将AUV对应为蚂蚁;根据动态蚁群劳动分工模型的刺激-响应原理,将动态蚁群劳动分工的环境刺激模型、响应阈值模型及转移概率模型在异构多AUV系统动态任务分配问题上进行一一映射:
步骤2-1:环境刺激模型映射;
用sj(t)表示t时刻任务TASKj所对应的环境刺激值;初始时刻任务TASKj的环境刺激值sj(0)大小仅取决于执行的任务价值,即:
Figure BDA0002906369360000041
其中,TASK_Value(j)表示第j个任务的价值;
各个AUV结合任务的环境刺激值与自身对任务的响应阈值决定是否执行该项任务,如果该项任务没有被执行,则该项任务的环境刺激值随时间变化而变化,其变化规则为:
sj(t+1)=(1-η)*(sj(t)+δj) (3)
其中,sj(t+1)表示t+1时刻任务TASKj所对应的环境刺激值,δj表示任务TASKj单位时间内环境刺激值的增量;η表示任务的完成度;
Figure BDA0002906369360000042
表示AUV从当前所执行任务
Figure BDA0002906369360000043
转去执行任务TASKj的相对环境刺激值:
Figure BDA0002906369360000044
当AUVi处于空闲状态时,则假定环境中存在一个虚任务TASK0与之对应且不对其状态进行更新,该任务TASK0的环境刺激值s0满足以下公式:
s0=min(s1,s2,…,sM) (5)
其中,s1,s2,…,sM分别表示第1个到第M个任务的环境刺激值;
步骤2-2:响应阈值模型映射;
用ξij(t)表示t时刻AUVi执行TASKj的响应阈值,其计算公式为:
Figure BDA0002906369360000045
其中,
Figure BDA0002906369360000046
Figure BDA0002906369360000047
分别表示t+1时刻AUVi到任务TASKj的下一预测步的的距离及到达所需时间;w1与w2为考虑距离和时间的权重;n表示剩余资源数量不为零的AUV个数,m表示任务所需资源不为零的任务个数;
φi表示学习因子,反映AUVi的学习能力,φi<1,φi的更新公式为:
Figure BDA0002906369360000048
其中,Nk(t-T)表明AUVi在时刻t之前执行相同类型任务k的次数;Stu∈(0,1)是初始学习因子;
Figure BDA0002906369360000051
为t时刻AUVi的资源消耗因子,表示AUVi的响应阈值随着资源消耗增大而增大,从而达到不执行任务的目的;
Figure BDA0002906369360000052
的计算如下:
Figure BDA0002906369360000053
其中,RCi(0)和RCi(t)分别表示AUVi最初携带的资源及t时刻自身所拥有的资源;
ψi(t)表示t时刻AUVi的剩余资源占有率,计算如下:
Figure BDA0002906369360000054
Figure BDA0002906369360000055
表示AUVi从当前所执行任务
Figure BDA0002906369360000056
转去执行TASKj的相对响应阈值:
Figure BDA0002906369360000057
AUVi对虚任务TASK0的响应阈值ξi0(t)满足以下公式:
ξi0(t)=max(ξi1,ξi2,…,ξiM) (11)
其中,ξi1,ξi2,…,ξiM分别表示AUVi对第1个到第M个任务的响应阈值;
步骤2-3:转移概率模型映射;
用pij表示下一时刻AUVi转去执行TASKj的转移概率pij
Figure BDA0002906369360000058
步骤3:采用循环竞争方案,解决任务冲突问题,为每个AUV分配任务;
步骤3-1:如果存在AUVi未被分配任务,则循环执行步骤3-2至步骤3-14,直至所有AUV均被分配任务;
当所有AUV均被分配任务时,分配过程结束,结束循环竞争方案;
步骤3-2:所有AUVi依据pij最大原则选择任务;
步骤3-3:当存在任务被多个AUV选择,则执行步骤3-4至步骤3-13;
当每个任务都被N个AUV中的一个选择时,则结束循环;
步骤3-4:如果任务TASKj在上次循环中已被分配AUV执行,则执行步骤3-5;否则跳至步骤3-6;
步骤3-5:提取已被分配任务TASKj的AUV,参与此次循环对任务TASKj的竞争;
步骤3-6:如果任务TASKj的需求资源数量RTj<min(RCi),则执行步骤3-7,否则跳至步骤3-8;
步骤3-7:分配ξij最小的AUV执行任务TASKj
步骤3-8:如果min(RCi)<RTj<max(RCi),则执行步骤3-9,否则跳至步骤3-10;
步骤3-9:在满足RCi>RTj的AUV中分配ξij最小的AUV执行任务TASKj
步骤3-10:如果max(RCi)<RTj<sum(RCi),则执行步骤3-11,否则跳至步骤3-12;
步骤3-11:将参与竞争的AUV按其对TASKj的响应阈值ξij从小到大排列并依次选择AUVi执行任务TASKj直到∑iRCi≥RTj
步骤3-12:将所有AUV分配去执行任务TASKj
步骤3-13:将竞争中淘汰的AUV对应的pij设置为0,表示下一次循环时不再考虑选择执行任务TASKj
步骤3-14:如果存在AUVi满足pij=0(j=1,2,…,M),则为任务AUVi分配虚任务。
本发明的有益效果如下:
本发明引入动态蚁群劳动分工中的刺激-响应原理,将任务的状态预测纳入响应阈值,建立了动态蚁群劳动分工与多AUV任务分配问题之间的映射关系,同时针对任务分配过程中可能出现的任务冲突现象,提出了新的循环竞争方案以实现最大限度地利用AUV资源。本发明提出的方法能高效地完成任务分配过程,与传统的群智能任务分配方法相比,具有很好的自组织性、鲁棒性及快速性且能得出无冲突的任务分配方案。
附图说明
图1为本发明方法流程图。
图2为本发明方法循环竞争方案流程图。
图3为本发明实施例DACLD的相对运动结果图。
图4为本发明实施例DACLD的动态任务分配结果图。
图5为本发明实施例任务所需资源变化图(与ACO、PSO及GA相比)。
具体实施方式
下面结合附图和实施例对本发明进一步说明。
本发明态蚁群劳动分工模型方法进行改进并将其应用于多AUV动态任务分配中,根据动态蚁群劳动分工中的刺激-响应原理,将动态蚁群劳动分工中的响应阈值模型、环境刺激模型及转移概率模型在多AUV任务分配问题上进行一一映射,从而实现动态任务分配。为了避免在解决任务冲突问题时AUV资源被闲置,提出了一种循环竞争方案以实现最大限度地利用AUV资源,同时确保了每一分配结果的任务完成效率最高。
如图1所示,一种基于动态蚁群劳动分工模型的多AUV任务分配方法,包括以下步骤:
步骤1:建立异构多AUV动态任务分配问题数学模型;
步骤1-1:异构多AUV系统动态任务分配问题定义为在一定区域内,有N个异构AUV执行M个不同特性的任务,且在执行过程中,任务的数量和状态会发生变化,为保证任务执行的效率,需要异构多AUV系统实时进行动态任务分配;
步骤1-2:N个不同参数的AUV组成AUV群体,表示为AUV={AUV1,AUV2,…,AUVN};
将AUV的参数用集合进行描述,即:
{AUV_State AUV_Position AUV_Resource AUV_Speed AUV_Ability AUV_Scope}其中,AUV_State代表AUV的状态,指空闲或执行任务;AUV_Position代表AUV所处的位置;AUV_Resource代表AUV携带的资源总量,简化表示为RC;AUV_Speed代表AUV的航行速度;AUV_Ability代表AUV执行任务的能力;AUV_Scope代表AUV执行任务的范围;
步骤1-3:被AUV执行的不同任务集合表示为TASK={TASK1,TASK2,…,TASKM},M表示任务的个数;将各任务使用集合进行描述,即:
{TASK_State TASK_Position TASK_Resource TASK_Value}
其中,TASK_State代表任务的状态,指任务是否被完成;TASK_Position代表任务所处的位置;TASK_Resource代表任务的需求资源数量,简化表示为RT;TASK_Value代表任务的价值;
步骤1-4:将异构多AUV系统动态任务分配问题表示为集合{TASK,AUV,Utotal},即输入一组任务给多AUV系统,通过动态任务分配使得系统整体效能最大;其中Utotal表示系统的效能函数,即目标函数;
对于传统的任务分配方法(如蚁群算法),Utotal用于迭代过程中任务分配结果的评定上,进而影响迭代过程(如蚁群算法中信息素的叠加),本发明中Utotal体现在冲突解决方案的评价指标(响应阈值)中,进而影响每只蚂蚁(AUV)对任务的竞争;
步骤1-5:异构多AUV系统的任务分配是一个多输入,多输出,多约束以及多目标的优化问题。输入包括各AUV参数、各任务参数,输出包括任务与AUV的分配关系,面向任务的AUV之间资源分配关系。建立异构多AUV系统动态任务分配问题的约束条件:
Figure BDA0002906369360000081
其中,决策变量x(i,j)表示AUVi是否执行任务TASKj,x(i,j)=1表示AUVi执行TASKj,x(i,j)≠1表示不执行;j表示任务序号,i表示AUV序号;C表示一个AUV执行同一任务的次数,c表示一个AUV执行同一任务的次数序号;
式(1)中第1个条件表示同一时刻,一个任务能被多个AUV执行;
式(1)中第2个条件表示同一时刻,任意一个AUV只能执行一个任务;
式(1)中第3个条件表示同一AUV对于同一任务只能执行一次;
式(1)中第4个条件表示单个AUV或多AUV自行组成的联盟执行任务时,其携带的资源总量RCk必须满足任务所需的资源数量TASK_Recource(t)才能完成该任务,其中λ(λ≥1)表示联盟中AUV的个数;
步骤2:采用动态蚁群劳动分工模型,将AUV对应为蚂蚁;根据动态蚁群劳动分工模型的刺激-响应原理,将动态蚁群劳动分工的环境刺激模型、响应阈值模型及转移概率模型在异构多AUV系统动态任务分配问题上进行一一映射:
步骤2-1:环境刺激模型映射;
用sj(t)表示t时刻任务TASKj所对应的环境刺激值;初始时刻任务TASKj的环境刺激值sj(0)大小仅取决于执行的任务价值,即:
Figure BDA0002906369360000082
其中,TASK_Value(j)表示第j个任务的价值;
任务环境刺激值大小反应任务的紧迫程度,刺激值越大,任务越紧迫,则越容易吸引蚂蚁(AUV)执行该项任务。各个AUV结合任务的环境刺激值与自身对任务的响应阈值决定是否执行该项任务,如果该项任务没有被执行,则该项任务的环境刺激值随时间变化而变化,其变化规则为:
sj(t+1)=(1-η)*(sj(t)+δj) (3)
其中,sj(t+1)表示t+1时刻任务TASKj所对应的环境刺激值,δj表示任务TASKj单位时间内环境刺激值的增量;η表示任务的完成度;
Figure BDA0002906369360000091
表示AUV从当前所执行任务
Figure BDA0002906369360000092
转去执行任务TASKj的相对环境刺激值:
Figure BDA0002906369360000093
当AUVi处于空闲状态时,则假定环境中存在一个虚任务TASK0与之对应且不对其状态进行更新,该任务TASK0的环境刺激值s0满足以下公式:
s0=min(s1,s2,…,sM) (5)
其中,s1,s2,…,sM分别表示第1个到第M个任务的环境刺激值;
步骤2-2:响应阈值模型映射;
用ξij(t)表示t时刻AUVi执行TASKj的响应阈值,其计算公式为:
Figure BDA0002906369360000094
其中,
Figure BDA0002906369360000095
Figure BDA0002906369360000096
分别表示t+1时刻AUVi到任务TASKj的下一预测步的的距离及到达所需时间;w1与w2为考虑距离和时间的权重;n表示剩余资源数量不为零的AUV个数,m表示任务所需资源不为零的任务个数;
φi表示学习因子,反映AUVi的学习能力,AUVi一旦积累了执行任务TASK的经验,AUVi执行类似任务的响应阈值降低,φi<1,φi的更新公式为:
Figure BDA0002906369360000097
其中,Nk(t-T)表明AUVi在时刻t之前执行相同类型任务k的次数;Stu∈(0,1)是初始学习因子;
Figure BDA0002906369360000098
为t时刻AUVi的资源消耗因子,表示AUVi的响应阈值随着资源消耗增大而增大,从而达到不执行任务的目的;
Figure BDA0002906369360000099
的计算如下:
Figure BDA0002906369360000101
其中,RCi(0)和RCi(t)分别表示AUVi最初携带的资源及t时刻自身所拥有的资源;
ψi(t)表示t时刻AUVi的剩余资源占有率,计算如下:
Figure BDA0002906369360000102
Figure BDA0002906369360000103
表示AUVi从当前所执行任务
Figure BDA0002906369360000104
转去执行TASKj的相对响应阈值:
Figure BDA0002906369360000105
AUVi对虚任务TASK0的响应阈值ξi0(t)满足以下公式:
ξi0(t)=max(ξi1,ξi2,…,ξiM) (11)
其中,ξi1,ξi2,…,ξiM分别表示AUVi对第1个到第M个任务的响应阈值;
步骤2-3:转移概率模型映射;
用pij表示下一时刻AUVi转去执行TASKj的转移概率pij,通过比较转移概率的大小,选取概率最大的状态预设为下一步的状态;
Figure BDA0002906369360000106
步骤3:如图2所示,采用循环竞争方案,解决任务冲突问题,为每个AUV分配任务;
一般情况下,AUV选择pij最大的任务作为下一步要执行的任务。而当有多个AUV同时选择同一任务(假设为TASKe)时,则出现了任务冲突。冲突解决方案涉及以下问题:(1)如何在冲突的AUV中选择某一个或某几个AUV来执行TASKe?评价标准是什么?(2)在对TASKe的竞争中落选的AUV是否有可能比在其余任务(假设为TASKf)的竞争中获胜的AUV更适合执行TASKf?如果“是”,则在对TASKe的竞争中落选的AUV与对TASKf的竞争中获胜的AUV便再一次构成了一次竞争关系,那么在第二次对TASKf竞争的中落选的AUV便又会依pij进行第三次的竞争,以此类推,此即为循环竞争。(3)循环竞争到什么地步便会停止?依据是什么?
以往的冲突解决方案大多只进行一次竞争,而被淘汰的智能体便不再参与此次任务分配,处于空闲状态。这种分配方案会造成AUV资源的浪费,且任务执行效率不高。因此针对以上问题提出如下冲突解决方案:
步骤3-1:如果存在AUVi未被分配任务,则循环执行步骤3-2至步骤3-14,直至所有AUV均被分配任务;
当所有AUV均被分配任务时,分配过程结束,结束循环竞争方案;这样做既保证了AUV资源的合理利用,又保证了AUV群执行任务的高效性;
步骤3-2:所有AUVi依据pij最大原则选择任务;
步骤3-3:当存在任务被多个AUV选择,则执行步骤3-4至步骤3-13;
在一次循环中会解决所有组对任务有冲突的AUV间的竞争,而在竞争中落败的AUV会依pij依次选择下一个最愿意执行的任务,如果下一个最愿意执行的任务在前面的循环中已分配好AUV去执行,则又会建立新的竞争,会在下一次循环中去解决。
当每个任务都被N个AUV中的一个选择时,则结束循环;
步骤3-4:如果任务TASKj在上次循环中已被分配AUV执行,则执行步骤3-5;否则跳至步骤3-6;
步骤3-5:提取已被分配任务TASKj的AUV,参与此次循环对任务TASKj的竞争;
步骤3-6:如果任务TASKj的需求资源数量RTj<min(RCi),则执行步骤3-7,否则跳至步骤3-8;
步骤3-7:分配ξij最小的AUV执行任务TASKj
当多个AUV均依转移概率选择某个任务时,优先选用AUV资源满足任务所需资源的AUV而不采取合作方案。此外,由于AUV的响应阈值ξij综合了AUV到任务的距离、AUV执行任务所需的时间、AUV的资源消耗因子、AUV的剩余资源占有率及AUV执行任务的能力,故采用ξij作为冲突解决指标。ξij越小代表AUV执行该任务更优,故原则上尽可能地为每个任务分配较小ξij的AUV。
步骤3-8:如果min(RCi)<RTj<max(RCi),则执行步骤3-9,否则跳至步骤3-10;
步骤3-9:在满足RCi>RTj的AUV中分配ξij最小的AUV执行任务TASKj
步骤3-10:如果max(RCi)<RTj<sum(RCi),则执行步骤3-11,否则跳至步骤3-12;
步骤3-11:将参与竞争的AUV按其对TASKj的响应阈值ξij从小到大排列并依次选择AUVi执行任务TASKj直到∑iRCi≥RTj;步骤3-12:将所有AUV分配去执行任务TASKj
步骤3-13:将竞争中淘汰的AUV对应的pij设置为0,表示下一次循环时不再考虑选择执行任务TASKj
步骤3-14:如果存在AUVi满足pij=0(j=1,2,…,M),则为任务AUVi分配虚任务。
当任务执行过程中剩余待执行的任务个数小于RCi>0的AUV个数时,可能出现有的AUV在对所有任务的竞争中均落败的现象,此时该AUV被分配为虚任务,表示该AUV暂时处于空闲状态且不对其状态进行更新。
具体实施例:
1、假设初始时刻有3个异构AUV和5个动态任务,每个AUV根据动态任务分配结果向所分配的任务移动,任务进入AUV的执行范围便会被执行,直到所有任务被完成,仿真结束。
AUV和任务的初始信息分别示于下表1和2中。
表1 AUV参数设置
Figure BDA0002906369360000121
表2 TASK参数设置
Figure BDA0002906369360000122
通过与基于ACO、PSO及GA的任务分配方法的结果进行对比,分析本文所提出的基于DACLD的任务分配方法的自组织性、鲁棒性和快速性。ACO、PSO及GA中的个体数目k为30只,每得到一次任务分配结果的迭代次数Nc为100次,目标函数是尽可能地使AUV群执行任务所需的时间及航程最小。本文所提DACLD中的公式(6)中,w1设置为0.7,w2设置为0.3。
2、图3为多AUV依据DACLD去自主分配跟踪目标而产生的相对运动结果图。图4为DACLD整个过程中的动态任务分配结果图。
结合两图分析可知,t=24s时AUV1原本跟踪TASK2,AUV3原本跟踪TASK1,此时AUV1转而更愿意跟踪TASK1,且根据冲突解决方案在与AUV3对TASK1的竞争中获胜(ξ11(24)=0.1887,ξ31(24)=0.2186),故AUV1转而执行TASK1,而AUV3转而执行转移概率较大的TASK2。从图3中可以很直观的看到,这是由于两个任务的位置发生了明显的变化,从而引起了响应阈值的变化,交换任务后的执行效率明显更高。这体现了所提的基于DACLD的任务分配方法具有良好的自组织性。
3、图5为采用不同算法的总的TASK所需资源变化图。在任务执行过程中,总的TASK所需资源会随着任务被执行而不断降低直至变为0。
由图5可知,基于ACO的任务分配方法执行完成所有任务用时51s,基于PSO的任务分配方法执行完成所有任务用时53s,基于PSO的任务分配方法执行完成所有任务用时52s,而基于DACLD任务分配方法执行完成所有任务用时45s且所有任务均于基于三种任务分配方法之前完成,表明所提出的DACLD任务分配方法具有更高的执行效率。
4、表3反应了不同算法在计算机中运行的仿真时间对比。仿真环境为MATLAB2018a,计算机配置为2.2GHz Intel(R)Core(TM)i5-5200U处理器,12G RAM,WIN10家庭中文版。
表3 算法仿真时间对比表
Figure BDA0002906369360000131
算法时间效率可表示为每一步得到一个任务分配结果计算机所需要运行的时间。由表3可知,本文所提方法的算法时间效率要远大于ACO等群智能搜索算法的时间效率。这是由于ACO、PSO及GA为了保证算法结果收敛,需完成Nc*k次任务分配才得到一次最终的任务分配结果,而DACLD只需要完成一次任务分配即可,因而算法复杂度要远小于ACO等群智能搜索算法。

Claims (1)

1.一种基于动态蚁群劳动分工模型的多AUV任务分配方法,其特征在于,包括以下步骤:
步骤1:建立异构多AUV动态任务分配问题数学模型;
步骤1-1:异构多AUV系统动态任务分配问题定义为在一定区域内,有N个异构AUV执行M个不同特性的任务,且在执行过程中,任务的数量和状态会发生变化,为保证任务执行的效率,需要异构多AUV系统实时进行动态任务分配;
步骤1-2:N个不同参数的AUV组成AUV群体,表示为AUV={AUV1,AUV2,…,AUVN};
将AUV的参数用集合进行描述,即:
{AUV_State AUV_Position AUV_Resource AUV_Speed AUV_Ability AUV_Scope}
其中,AUV_State代表AUV的状态,指空闲或执行任务;AUV_Position代表AUV所处的位置;AUV_Resource代表AUV携带的资源总量,简化表示为RC;AUV_Speed代表AUV的航行速度;AUV_Ability代表AUV执行任务的能力;AUV_Scope代表AUV执行任务的范围;
步骤1-3:被AUV执行的不同任务集合表示为TASK={TASK1,TASK2,…,TASKM},M表示任务的个数;将各任务使用集合进行描述,即:
{TASK_State TASK_Position TASK_Resource TASK_Value}
其中,TASK_State代表任务的状态,指任务是否被完成;TASK_Position代表任务所处的位置;TASK_Resource代表任务的需求资源数量,简化表示为RT;TASK_Value代表任务的价值;
步骤1-4:将异构多AUV系统动态任务分配问题表示为集合{TASK,AUV,Utotal},即输入一组任务给多AUV系统,通过动态任务分配使得系统整体效能最大;其中Utotal表示系统的效能函数,即目标函数;
步骤1-5:建立异构多AUV系统动态任务分配问题的约束条件:
Figure FDA0002906369350000011
其中,决策变量x(i,j)表示AUVi是否执行任务TASKj,x(i,j)=1表示AUVi执行TASKj,x(i,j)≠1表示不执行;j表示任务序号,i表示AUV序号;C表示一个AUV执行同一任务的次数,c表示一个AUV执行同一任务的次数序号;
式(1)中第1个条件表示同一时刻,一个任务能被多个AUV执行;
式(1)中第2个条件表示同一时刻,任意一个AUV只能执行一个任务;
式(1)中第3个条件表示同一AUV对于同一任务只能执行一次;
式(1)中第4个条件表示单个AUV或多AUV自行组成的联盟执行任务时,其携带的资源总量RCk必须满足任务所需的资源数量TASK_Recource(t)才能完成该任务,其中λ(λ≥1)表示联盟中AUV的个数;
步骤2:采用动态蚁群劳动分工模型,将AUV对应为蚂蚁;根据动态蚁群劳动分工模型的刺激—响应原理,将动态蚁群劳动分工的环境刺激模型、响应阈值模型及转移概率模型在异构多AUV系统动态任务分配问题上进行一一映射:
步骤2-1:环境刺激模型映射;
用sj(t)表示t时刻任务TASKj所对应的环境刺激值;初始时刻任务TASKj的环境刺激值sj(0)大小仅取决于执行的任务价值,即:
Figure FDA0002906369350000021
其中,TASK_Value(j)表示第j个任务的价值;
各个AUV结合任务的环境刺激值与自身对任务的响应阈值决定是否执行该项任务,如果该项任务没有被执行,则该项任务的环境刺激值随时间变化而变化,其变化规则为:
sj(t+1)=(1-η)*(sj(t)+δj) (3)
其中,sj(t+1)表示t+1时刻任务TASKj所对应的环境刺激值,δj表示任务TASKj单位时间内环境刺激值的增量;η表示任务的完成度;
Figure FDA0002906369350000022
表示AUV从当前所执行任务
Figure FDA0002906369350000024
转去执行任务TASKj的相对环境刺激值:
Figure FDA0002906369350000023
当AUVi处于空闲状态时,则假定环境中存在一个虚任务TASK0与之对应且不对其状态进行更新,该任务TASK0的环境刺激值s0满足以下公式:
s0=min(s1,s2,…,sM) (5)其中,s1,s2,…,sM分别表示第1个到第M个任务的环境刺激值;
步骤2-2:响应阈值模型映射;
用ξij(t)表示t时刻AUVi执行TASKj的响应阈值,其计算公式为:
Figure FDA0002906369350000031
其中,
Figure FDA0002906369350000032
Figure FDA0002906369350000033
分别表示t+1时刻AUVi到任务TASKj的下一预测步的的距离及到达所需时间;w1与w2为考虑距离和时间的权重;n表示剩余资源数量不为零的AUV个数,m表示任务所需资源不为零的任务个数;
φi表示学习因子,反映AUVi的学习能力,φi<1,φi的更新公式为:
Figure FDA0002906369350000034
其中,Nk(t-T)表明AUVi在时刻t之前执行相同类型任务k的次数;Stu∈(0,1)是初始学习因子;
Figure FDA0002906369350000035
为t时刻AUVi的资源消耗因子,表示AUVi的响应阈值随着资源消耗增大而增大,从而达到不执行任务的目的;
Figure FDA0002906369350000036
的计算如下:
Figure FDA0002906369350000037
其中,RCi(0)和RCi(t)分别表示AUVi最初携带的资源及t时刻自身所拥有的资源;
ψi(t)表示t时刻AUVi的剩余资源占有率,计算如下:
Figure FDA0002906369350000038
Figure FDA0002906369350000039
表示AUVi从当前所执行任务
Figure FDA00029063693500000312
转去执行TASKj的相对响应阈值:
Figure FDA00029063693500000310
AUVi对虚任务TASK0的响应阈值ξi0(t)满足以下公式:
ξi0(t)=max(ξi1i2,…,ξiM) (11)
其中,ξi1i2,…,ξiM分别表示AUVi对第1个到第M个任务的响应阈值;
步骤2-3:转移概率模型映射;
用pij表示下一时刻AUVi转去执行TASKj的转移概率pij
Figure FDA00029063693500000311
步骤3:采用循环竞争方案,解决任务冲突问题,为每个AUV分配任务;
步骤3-1:如果存在AUVi未被分配任务,则循环执行步骤3-2至步骤3-14,直至所有AUV均被分配任务;
当所有AUV均被分配任务时,分配过程结束,结束循环竞争方案;
步骤3-2:所有AUVi依据pij最大原则选择任务;
步骤3-3:当存在任务被多个AUV选择,则执行步骤3-4至步骤3-13;
当每个任务都被N个AUV中的一个选择时,则结束循环;
步骤3-4:如果任务TASKj在上次循环中已被分配AUV执行,则执行步骤3-5;否则跳至步骤3-6;
步骤3-5:提取已被分配任务TASKj的AUV,参与此次循环对任务TASKj的竞争;
步骤3-6:如果任务TASKj的需求资源数量RTj<min(RCi),则执行步骤3-7,否则跳至步骤3-8;
步骤3-7:分配ξij最小的AUV执行任务TASKj
步骤3-8:如果min(RCi)<RTj<max(RCi),则执行步骤3-9,否则跳至步骤3-10;
步骤3-9:在满足RCi>RTj的AUV中分配ξij最小的AUV执行任务TASKj
步骤3-10:如果max(RCi)<RTj<sum(RCi),则执行步骤3-11,否则跳至步骤3-12;
步骤3-11:将参与竞争的AUV按其对TASKj的响应阈值ξij从小到大排列并依次选择AUVi执行任务TASKj直到∑iRCi≥RTj
步骤3-12:将所有AUV分配去执行任务TASKj
步骤3-13:将竞争中淘汰的AUV对应的pij设置为0,表示下一次循环时不再考虑选择执行任务TASKj
步骤3-14:如果存在AUVi满足pij=0(j=1,2,…,M),则为任务AUVi分配虚任务。
CN202110072473.2A 2021-01-20 2021-01-20 一种基于动态蚁群劳动分工模型的多auv任务分配方法 Pending CN112734127A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110072473.2A CN112734127A (zh) 2021-01-20 2021-01-20 一种基于动态蚁群劳动分工模型的多auv任务分配方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110072473.2A CN112734127A (zh) 2021-01-20 2021-01-20 一种基于动态蚁群劳动分工模型的多auv任务分配方法

Publications (1)

Publication Number Publication Date
CN112734127A true CN112734127A (zh) 2021-04-30

Family

ID=75592555

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110072473.2A Pending CN112734127A (zh) 2021-01-20 2021-01-20 一种基于动态蚁群劳动分工模型的多auv任务分配方法

Country Status (1)

Country Link
CN (1) CN112734127A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113592162A (zh) * 2021-07-22 2021-11-02 西北工业大学 一种基于多智能体强化学习的多水下无人航行器协同搜索方法
CN114861856A (zh) * 2022-03-20 2022-08-05 西北工业大学 一种基于蜂群遗传混合算法的auv系统任务分配方法
CN115689252A (zh) * 2022-12-28 2023-02-03 杭州中安电子有限公司 基于自适应蚁群算法的任务分配方法和系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105302153A (zh) * 2015-10-19 2016-02-03 南京航空航天大学 异构多无人机协同察打任务的规划方法
WO2019196127A1 (zh) * 2018-04-11 2019-10-17 深圳大学 一种云计算任务分配方法、装置、设备及存储介质

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105302153A (zh) * 2015-10-19 2016-02-03 南京航空航天大学 异构多无人机协同察打任务的规划方法
WO2019196127A1 (zh) * 2018-04-11 2019-10-17 深圳大学 一种云计算任务分配方法、装置、设备及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
杨惠珍; 王强: "基于动态蚁群劳动分工模型的多AUV任务分配方法(网络首发)", 《控制与决策》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113592162A (zh) * 2021-07-22 2021-11-02 西北工业大学 一种基于多智能体强化学习的多水下无人航行器协同搜索方法
CN113592162B (zh) * 2021-07-22 2023-06-02 西北工业大学 一种基于多智能体强化学习的多水下无人航行器协同搜索方法
CN114861856A (zh) * 2022-03-20 2022-08-05 西北工业大学 一种基于蜂群遗传混合算法的auv系统任务分配方法
CN114861856B (zh) * 2022-03-20 2024-03-12 西北工业大学 一种基于蜂群遗传混合算法的auv系统任务分配方法
CN115689252A (zh) * 2022-12-28 2023-02-03 杭州中安电子有限公司 基于自适应蚁群算法的任务分配方法和系统

Similar Documents

Publication Publication Date Title
CN112734127A (zh) 一种基于动态蚁群劳动分工模型的多auv任务分配方法
CN110515732B (zh) 一种基于资源受限机器人深度学习推理的任务分配方法
CN110851272A (zh) 基于吞噬的粒子群遗传混合算法的云任务调度方法
CN109818786B (zh) 一种云数据中心应用可感知的分布式多资源组合路径最优选取方法
CN107831685B (zh) 一种群体机器人的控制方法和系统
CN105729491A (zh) 机器人任务的执行方法、装置及系统
CN113033970B (zh) 一种针对大规模任务的auv集群分层分配方法
CN102256369B (zh) 基于能量和通信开销的无线传感器网格任务调度方法
CN113504798B (zh) 一种仿生物群体协商行为的无人机集群协同目标搜索方法
CN113448703B (zh) 一种基于感知阵型的无人机蜂群动态侦察任务调度系统及方法
CN114721833A (zh) 一种基于平台业务类型的智能云端协调方法和装置
Chen et al. A cluster first strategy for distributed multi-robot task allocation problem with time constraints
CN110647398A (zh) 一种面向边缘计算的基于任务关键度和时效性的交叉口控制任务调度方法
CN114327811A (zh) 一种任务调度方法、装置、设备及可读存储介质
Cao et al. Multiple UAVs hierarchical dynamic task allocation based on PSO-FSA and decentralized auction
Zhang et al. Multi-population ant colony optimization algorithm based on congestion factor and co-evolution mechanism
Harwell et al. Broadening applicability of swarm-robotic foraging through constraint relaxation
Yi et al. Digital twin constructed spatial structure for flexible and efficient task allocation of drones in mobile networks
Liu et al. UAV-USV cooperative task allocation for smart ocean networks
CN115016537A (zh) 一种seda场景下异构无人机配置与任务规划联合优化方法
CN111352713A (zh) 边缘环境面向时延优化的自动驾驶推理任务工作流调度方法
CN113360245A (zh) 基于移动云计算深度强化学习的物联网设备任务下载方法
Yasuda et al. Response threshold-based task allocation in a reinforcement learning robotic swarm
Wu et al. Consensus based distributive task allocation for multi-AUV in searching and detecting
CN113391908B (zh) 一种车载边缘计算中针对时延优化的推理任务调度方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20210430

WD01 Invention patent application deemed withdrawn after publication