发明内容
目的:为了克服现有技术中存在的不足,本发明提供一种基于分布式多智能体自主决策的无人机资源管理方法,考虑了动态无线环境、无人机移动性与负载状态、MEC节点的任务能力等因素,致力于通过设计一种分布式在线学习算法,并利用局部观测信息,实现快速、准确的无人机任务卸载与资源分配,提高无人机系统性能。
一种基于分布式多智能体自主决策的无人机资源管理方法,包括如下步骤:
预构建马尔可夫博弈过程系统模型。
以最小化无人机能耗为目标,进行任务卸载与资源分配决策。
所述马尔可夫博弈过程系统模型,具体包括:
系统状态,具体如下:
其中,表示t时刻智能体m的系统状态,/>表示智能体m在t时刻的本地观测信息,表示其他智能体/>的观测信息,/>表示智能体的总数量,每个MEC服务器m都可被视为一个智能体m。
系统动作,具体如下:
=/>
其中,表示t时刻智能体m的系统动作,/>表示MEC服务器m对无人机n的任务卸载决策,当/>时,无人机n将任务卸载至服务器m中处理,/>0时,任务在无人机n本地执行,/>表示MEC服务器m对无人机n的补偿功率,/>表示边缘节点m对无人机n的带宽分配决策,/>表示为边缘服务器m为无人机n分配的计算资源。
奖励函数,具体如下:
其中,表示N个无人机总能耗统。
作为优选方案,当选择合适的变量值、变量值/>或者变量值/>时,系统动作/>满足如下约束:
其中,N表示无人机的总数量。
其中,表示任务卸载决策/>,任务模型/>处理总时延,/>表示无人机n的任务最大延时要求。
其中,N表示无人机的总数量,表示MEC服务器m的最大CPU频率。
其中,为MEC服务器m提供的最大发射功率。
作为优选方案,计算公式如下:
式中:表示无人机n总能耗,计算公式如下:
其中,表示无人机n对于任务模型/>本地处理能耗,/>表示无人机n上传任务至MEC服务器m的能耗,/>表示无人机n下载任务至MEC服务器m的能耗。
作为优选方案,计算公式如下:
其中,表示无人机n在本地处理任务的时延消耗,/>表示无人机n产生任务模型,并将任务上传至MEC服务器m的传输时延,/> 表示MEC服务器m计算的无人机n产生任务模型/>的计算时延,/>表示MEC服务器m处理的无人机n产生任务模型/>的下载延时。
作为优选方案,任务模型,计算公式如下:
其中,为/>的输入数据量,/>为完成任务所需的CPU周期数,/>为某任务的时延约束。
作为优选方案,计算公式如下:
其中,为/>的输入数据量,/>为无人机/>在/>时刻的上行链路传输速率。
式中,计算公式如下:
其中,为MEC服务器/>为无人机节点提供的通信带宽,/>为边缘节点m对无人机n的带宽分配决策。/>表示MEC服务器m对无人机n的补偿功率,/>为在接收处的加性高斯白噪声随机变量,/>为内部干扰,/>为无人机n与MEC服务器m在/>时刻的上行链路SNR参数。
作为优选方案,所述以最小化无人机能耗为目标,进行任务卸载与资源分配决策,具体包括:
步骤2-1:初始化每个智能体m的Actor网络和Critic网络,构建参数为的Actor网络/>。构建参数为w的Critic网络/>。
步骤2-2:当前智能体在t时刻的观测信息为,则基于策略/>选择一个动作。
步骤2-3:执行动作,并获得奖励 /> 和t+1时刻的观测集合/>。
步骤2-4:每个智能体m基于已获得信息,构建局部信息元组,将局部信息元组存储到本地经验回放池S中,并将局部信息元组发送给其它智能体。
步骤2-5:智能体m从S中随机采取样本数据,构建全局信息元组,其中,/>表示t+1时刻智能体m的系统状态。
步骤2-6:对于每个智能体m,基于全局信息,训练Critic网络,具体如下:
其中,表示智能体/>的Critic网络参数w,/>为关于函数/>的导数,/>为更新权重,/>表示如下:
其中,对所有元组信息/>求期望值。
其中,表示任务处理后与任务处理前的数据量比值,/>表示t+1时刻智能体m的系统动作。
步骤2-7:对于每个智能体m,基于局部信息,训练自身的Actor网络,具体如下:
其中,表示智能体/>的Actor网络参数/>,/>为函数/>关于参数/>的导数运算,具体如下:
其中,表示对函数/>关于/>的导数。
步骤2-8:对于每个智能体m,基于所获得的参数和参数/>,更新目标Actor网络和目标Critic网络。
步骤2-9:重复步骤2-2至步骤2-8整个迭代过程,每一轮迭代过后,Actor网络和Critic网络得到更新,最终策略趋于收敛。收敛后的策略/>即最优策略。智能体m基于策略/>,在局部观测/>信息下,做出动作/>。
有益效果:本发明提供的一种基于分布式多智能体自主决策的无人机资源管理方法,本方法考虑了无人机的动态无线网络环境、无人机的移动性与负载状态、MEC节点的任务处理能力。在此基础上,将无人机的任务卸载与资源分配问题建模为马尔科夫博弈过程,并提出基于MADDPG(Multi-Agent Deep Deterministic Policy Gradient)算法的分布式在线决策算法对马尔科夫博弈过程进行决策。该算法能够使每个MEC节点仅利用局部观测的动态环境信息,实现对全局MEC节点的任务卸载与资源分配决策的优化,提升对无人机集群的服务能力。
本发明能够充分利用边缘计算节点的计算能力,提高系统对无人机的服务能力。本方法基于分布式多智能体强化学习算法,决定无人机机算的计算任务是否在本地执行或将任务卸载到边缘计算服务器进行处理。这样以最小化无人机能耗为目标,考虑任务延时要求、边缘计算服务器处理能力、无人机的移动性、以及动态无线环境,进行任务卸载与资源分配的实时决策。同时,基于多智能体强化学习的分布式优势,通过边缘节点的局部观测信息,进行分布式模块化训练,实现对无人机集群的快速、准确任务卸载与资源分配,提高任务处理速度,并降低无人机的能耗。
具体实施方式
下面结合本发明实例中的附图,对本发明实例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域技术人员在没有做创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。
下面结合具体实施例对本发明作更进一步的说明。
实施例1:
本实施例介绍一种基于分布式多智能体自主决策的无人机资源管理方法,实现边缘计算辅助的无人机任务卸载与资源分配过程,其实质是综合考虑无人机任务处理要求,边缘计算节点资源容量状态,以及无线网络传输状态条件下,任务卸载与资源分配策略的设计问题。如图1所示,使用两层网络模型,该网络模型由M个MEC 服务器和N个无人机组成,M、N为整数。每个无人机的任务需要做出任务卸载决策。MEC服务器通过无线网络帮助无人机系统处理计算任务。
在该场景下,MEC辅助的任务卸载与资源分配算法,包括以下步骤:
步骤1:构建无人机系统任务卸载与资源分配系统模型,具体步骤如下:
系统模型由M个MEC服务器和N个无人机组成。
步骤1-1:构建任务模型。无人机随机产生计算任务(如图像识别、导航定位、动作展示等),任务模型包含完成任务所需的输入数据量、需消耗的计算量、以及任务时延要求。
无人机n的任务模型,定义为:
(1)
其中,为/>的输入数据量,/>为完成任务所需的CPU周期数,/>为某任务的时延约束。
步骤1-2:构建服务模型。服务模型指边缘计算服务器为无人机提供的资源状态。
MEC服务器m的资源状态的服务模型,定义为:
(2)
其中:为MEC服务器/>为无人机节点提供的通信带宽,/>(Hz)为MEC服务器m的最大CPU频率,/>为服务器/>的能够提供的最大发射功率。
步骤2:对无人机任务卸载传输环境进行建模,具体步骤如下:
步骤2-1:构建信道衰落参数,具体如下:
(3)
其中:为t时刻,MEC服务器m与无人机n之间的信道衰落参数,/>为MEC服务器m与无人机n之间的信道关联因子,/>为t-1时刻MEC服务器m与无人机n之间的信道衰落参数。
步骤2-2:构建无人机n与MEC服务器m在时刻的上行链路SNR(信噪比)参数/>,具体如下:
(4)
其中:为无人机n对应MEC服务器m的长期平均上行链路SNR。
步骤2-3:获取无人机n对应MEC服务器m在时刻的上行链路传输速率/>,具体如下:
(5)
其中:为MEC服务器/>为无人机节点提供的通信带宽,/>为边缘节点m对无人机n的带宽分配决策,且/>。/>表示MEC服务器m对无人机n的补偿功率,/>为在接收处的加性高斯白噪声随机变量,/>为内部干扰,具体如下:
(6)
其中:为MEC服务器m对无人机/>的补偿功率,/>为无人机/>与MEC服务器m在/>时刻的上行链路SNR。
步骤3:任务卸载延时量化,具体步骤如下:
任务卸载延时指的MEC服务器协助无人机完成其传输任务所产生的延迟。在边缘计算辅助下的无人机网络系统中,传输延迟包括任务传输到边缘服务器m的时间延迟,在MEC服务器m中的计算延迟/>,以及任务处理后的返回时延/>。
步骤3-1:任务上传时延统计:
无人机n产生任务模型,并将任务上传至MEC服务器m,任务上传过程的传输时延计算如下:
(7)
其中:为/>的输入数据量,/>为无人机/>在/>时刻的上行链路传输速率。
步骤3-2:MEC服务器的计算时延;
边缘节点的任务处理时延取决于当前时刻t可提供的计算资源。同一时刻每个MEC可能收到多个无人机任务卸载请求,同时,无人机任务可以卸载在任意一个MEC中。因此需要针对MEC的计算资源合理分配,在满足无人机任务时延要求的基础上,尽可能多的进行任务合理卸载在MEC上。任务处理时延:
(8)
其中:为边缘服务器m为无人机n分配的计算资源(如:CPU频率)。
步骤3-3:任务处理后的数据下载延时;
(9)
其中:为数据转换参数,表示任务处理后与任务处理前的数据量比值。/>为无人机n在/>时刻的下行链路的传输速率。
步骤4:无人机任务卸载时延统计,具体步骤如下:
基于步骤3所述的各部分传输时延,对无人机任务卸载与资源分配问题,构造优化模型。
步骤4-1:无人机系统任务处理总延时;
边缘计算辅助的无人机系统中,计算任务可能在无人机本地进行处理,也可能被卸载至MEC服务器m处理,取决于MEC服务器是否做出卸载决策。根据任务卸载决策,任务/>处理总时延/>统计如下:
(10)
其中:为无人机n在本地处理任务的时延消耗,/>为MEC服务器m对无人机n的任务卸载决策,当/>时,无人机n将任务卸载至服务器m中处理,/>0时,任务在无人机n本地执行。
步骤4-2:任务处理总延时约束;
无人机执行任务所需要消耗的总延时应在任务的时延要求范围内,即:
(11)
其中:为无人机n的任务最大延时要求。
步骤5:对资源使用状态进行量化;
任务卸载过程中,系统的资源配置须服从某些的限制条件:1)MEC服务器对无人机分配的发射功率不能超过其最大发射功率;2)MEC服务器分配给所有无人机的计算资源不能超过其最大处理能力;3)MEC服务器分配的带宽资源不能超过其最大可用带宽;4)同一时刻,任务模块只能选择一个卸载决策,同时卸载决策只能是二进制变量。具体如下:
(12)
(13)
(14)
(15)
,/> (16)
其中,为MEC服务器m提供的最大发射功率,/>为MEC服务器m的最大CPU频率。
步骤6:对无人机的任务负载状态进行量化,具体如下:
无人机负载状态取决于自身所处理的任务量,可通过计算能量进行量化。以节点能耗为量化指标,包含任务处理能耗和数据传输能耗。具体量化如下:
步骤6-1:任务本地处理能耗统计:
对于任务模型,无人机处理的能耗/>统计为:
=k/>(17)
其中:k 为CPU的能量消耗模型,单位为焦耳/CPU周期,/>为电容转换系数,/>为无人机n的完成任务所需的CPU周期数量。
步骤6-2:数据传输能耗、/>统计:
数据传输能耗包括无人机系统上传任务至MEC服务器m的能耗和下载任务数据的能耗/>,分别统计如下:
(18)
(19)
步骤6-3:无人机n总能耗统计:
(20)
步骤6-4:N个无人机总能耗统计如下:
(21)
其中,x为任务卸载决策变量,c为带宽分配决策变量,p为功率分配决策变量,F为计算资源分配决策变量。
本发明的创新点之一:传统的面向无人机的任务卸载与资源分配方法主要基于静态网络参数(瞬时信道条件)的集中式求解。本发明基于步骤6所构建的无人机能量消耗模型,建立以无人机能耗最小化为目标的优化问题。该问题考虑了无线网络的动态信道条件引发的时变传输速率(步骤2),无人机任务的延时约束条件(步骤4,式(11)),以及MEC系统的资源容量限制条件(步骤5,式(12)-(16)),通过联合优化任务卸载决策、带宽分配决策/>、计算资源分配决策/>和功率控制决策/>,达到无人机能耗最小化的目标,从而提升无人机工作时间。
步骤7:针对多个MEC服务器节点对无人机集群进行任务卸载的过程,构造马尔可夫博弈(Markov Game Process, MGP)过程:
MEC服务器根据上述步骤3至步骤6的数据公式构建MGP,MGP基本要素包括状态、动作,和奖励。具体如下:
步骤7-1:系统状态构建:
每个MEC服务器m都可被视为一个智能体m。智能体m的状态包含智能体m在t时刻的本地观测信息,以及其他智能体的观测信息/>,其中:/>为智能体m与无人机n的无线信道条件,/>为智能体r与无人机n的无线信道条件,/>的是随时间t变化的动态参数,表示无线信道的时变特征。定义t时刻智能体m的系统状态为/>,具体如下:
(22)
步骤7-2:系统动作构建:
智能体m的动作包含:任务卸载决策,带宽分配决策/>,功率分配决策/>,计算资源分配决策/>。构建系统动作/>,如下:
=/> (23)
其中,在构建动作时,通过选择合适的变量值/>,变量值/>满足步骤5中的式(15)。控制步骤4-1中的总延时/>满足步骤4-2中式(11)和步骤5中的式(13)。通过选择合适的变量值/>,使其满足步骤5中式(14)。通过选择合适的变量值/>,使其满足步骤5式(12)。
步骤7-3:构造MGP的奖励函数:
基于步骤6-4中的无人机总能耗,构建智能体m的奖励函数/>,具体如下:
(24)
步骤卸载8:任务卸载与资源分配决策;
边缘计算服务器根据步骤7所构建的马尔可夫博弈过程系统模型,以最小化无人机能耗为目标,进行任务卸载与资源分配决策算法设计。采用基于多智能体深度确定性策略梯度(Multi-agent DDPG, MADDPG)的分布式在线决策算法,具体步骤如下:
步骤8-1:构建目标网络;
在线决策算法的基本结构采用多智能体actor-critic结构,首先,初始化每个智能体的Actor网络和Critic网络,构建参数为的Actor网络/>,其中/>为智能体m在t时刻的局部观测信息,Actor网络/>可视为智能体m的初始化策略。构建参数为w的Critic网络/>,其中/>为系统状态,/>为系统动作。
步骤8-2:基于策略选择动作;
对于每个智能体m,基于所观测到的信息,选择相应的动作。当前智能体在t时刻的观测信息为,则基于策略/>选择一个动作/>;
步骤8-3:执行动作;
执行动作,即,执行任务卸载决策/>,带宽分配决策/>,功率分配决策/>,计算资源分配决策/>,并获得新的奖励 /> 和t+1时刻的观测集合/>。
步骤8-4:构建局部信息元组;
每个智能体m基于已获得信息,构造局部信息元组,将其存储到本地经验回放池S中,并将其发送给其它智能体。此时,每个智能体m均具有相应的局部信息元组/>。
步骤8-5:构建全局信息元组;
智能体m从S中随机采取一些样本数据,构造全局信息元组;
步骤8-6:训练智能体m的Critic网络;
对于每个智能体m, 基于全局信息,训练Critic网络,具体如下:
(25)
其中,为关于函数/>的导数,/>为更新权重,/>表示如下:
(26)
其中,对所有元组信息/>求期望值。
(27)
步骤8-7:训练智能体m的Actor网络;
对于每个智能体m,基于局部信息,训练自身的Actor网络,具体如下:
(28)
其中,为函数/>关于参数/>的导数运算,具体如下:
(29)
步骤8-8:对于每个智能体m,基于步骤8-6和步骤8-7所获得的参数和参数/>,更新目标Actor网络和目标Critic网络;
步骤8-9:重复步骤8-2至步骤8-8整个迭代过程,每一轮迭代过后,Actor网络和Critic网络得到更新,最终策略趋于收敛。收敛后的策略/>即最优策略。此时,智能体m基于策略/>,在局部观测/>信息下,做出动作/>,即为优化后的决策。
本发明的创新点二:在实现无人机任务卸载与资源分配优化问题时,所采用的算法具有分布式、自适应、高效率的特点。多个智能体(MEC服务器)基于局部有限的观测信息做出决策,各智能体通过共享局部观测信息,形成全局状态信息,进而对Critic网络进行集中训练。每个智能体m利用训练后的Critic网络对Actor网络(策略)进行更新,如此迭代,使Actor网络(策略)实现收敛,收敛后的Actor网络(策略)能够使智能体m做出优化后的动作。在这一过程中,Actor网络(策略)始终持续迭代更新,尽管面对动态的网络环境(无线传输条件),也能够实现对Actor网络(策略)的自适应强化训练。
实施例2:
本实施例介绍对本发明提出的边缘计算辅助的智能无人机任务卸载与资源分配算法的整体性能进行比较分析,具体如下:
图2为本发明一种实施例的决策算法收敛性能与训练周期关系曲线图。其中MADDPG算法是本发明所设计的基于多智能体模仿学习的强化学习算法。从图中可观察到,随着迭代过程的继续,三种算法的系统回报值均收敛到稳定。特别是MADDPG算法,它在大约40次迭代之后迅速趋于一个接近最优的状态。显然,本发明设计的MADDPG算法与DDPG(DeepDeterministic Policy Gradient)算法、策略梯度算法相比,具有更快的收敛速度和更高的奖励值。这是因为本发明提出的MADDPG算法在Critic网络模块中每个Agent能够获得其余所有智能体的策略信息。这样,智能体之间可以相互合作通过共享信息来优化整体的性能,因此具有更好的优化效果。
图3为本发明一种实施例的无人机数量与总能耗的关系曲线图。图中展示了无人机的数量递增时的变化情况。可以看出,随着无人机的数量的增加,4种算法的总能耗都显著增加。这是因为存在的无人机数量越多,需要执行的任务就越多,能耗就会增多。同时图3可以看出,本发明提出的方案与其他算法相比,随着无人机数量的增多具有更少的能耗。这是因为本发明提出的基于多智能体模仿学习的任务卸载与资源分配,可以为无人机提供灵活的选择。当MEC服务器的资源有限时,可以充分利用其他MEC服务器的资源,从而减少无人机能耗。
图4为本发明一种实施例的无人机数量与任务卸载的关系曲线图。从图4可以看出,随着无人机数量的增加,卸载任务百分比差异明显,除本地计算外,卸载率都在降低。这是因为无人机数量较少时,MEC服务器有足够的可用计算资源可供无人机卸载的任务使用,无人机将计算任务更多卸载在MEC服务器上,而随着无人机数量增多,需要执行计算的任务量越多,MEC服务器的计算能力有限,就会导致卸载任务率降低。本发明算法和其他方法相比,在满足时延,传输功率,卸载决策要求条件下,能更好利用MEC服务器计算资源,具有更好的卸载能力。
图5为本发明一种实施例的MEC服务器个数与MEC服务器分配给无人机计算资源百分比关系曲线图。从图5可以看出,本发明与其他方法相比MEC服务器分配给卸载任务的计算资源是最多的。这是因为本发明能够充分利用并合理协调不同MEC服务器的计算资源,使无人机灵活卸载,从而MEC服务器将提供更多的计算资源。
图6为本发明一种实施例的边缘服务器最大计算能力与能耗的关系曲线图。从图6可以看出,随着边缘服务器计算能力的提高,除本地计算的方法外,能耗都呈下降趋势。这是因为边缘服务器的计算能力越大,无人机可用的计算资源就越多,从而减少任务的能耗。
本发明提出一种基于分布式多智能体自主决策的无人机资源管理方法。该方法考虑了无人机的动态无线网络环境、无人机的移动性与负载状态、MEC节点的任务处理能力。在此基础上,将无人机的任务卸载与资源分配问题建模为马尔科夫博弈过程,并提出基于MADDPG算法的分布式在线决策算法对马尔科夫博弈过程进行决策。该算法能够使每个MEC节点仅利用局部观测的动态环境信息,实现对全局MEC节点的任务卸载与资源分配决策的优化,提升对无人机集群的服务能力。
克服的问题:现有方法局限于简单的任务卸载和,任务卸载过程中未考虑动态无线网络环境,以及无人机的移动性等影响因素。其次,现有的针对无人机的任务卸载与资源分配算法大多基于集中式方法,决策的准确性和实时性不高,无法适应无人机的实际应用环境。此外,现有的基于强化学习的决策算法,需依赖大量的系统全局观测信息来进行训练,增加了决策智能体的数据获取成本,且收敛速度慢。
以上所述仅是本发明的优选实施方式,应当指出:对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。