CN116974751A - 一种基于多智能体辅助边缘云服务器的任务调度方法 - Google Patents
一种基于多智能体辅助边缘云服务器的任务调度方法 Download PDFInfo
- Publication number
- CN116974751A CN116974751A CN202310704103.5A CN202310704103A CN116974751A CN 116974751 A CN116974751 A CN 116974751A CN 202310704103 A CN202310704103 A CN 202310704103A CN 116974751 A CN116974751 A CN 116974751A
- Authority
- CN
- China
- Prior art keywords
- agent
- network
- task
- patrol car
- agents
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 65
- 238000012549 training Methods 0.000 claims abstract description 49
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 39
- 238000004364 calculation method Methods 0.000 claims abstract description 27
- 230000007246 mechanism Effects 0.000 claims abstract description 22
- 239000003795 chemical substances by application Substances 0.000 claims description 265
- 230000009471 action Effects 0.000 claims description 57
- 230000005540 biological transmission Effects 0.000 claims description 45
- 230000006870 function Effects 0.000 claims description 35
- 238000011156 evaluation Methods 0.000 claims description 31
- 238000012545 processing Methods 0.000 claims description 29
- 230000003993 interaction Effects 0.000 claims description 21
- 230000008569 process Effects 0.000 claims description 19
- 238000005265 energy consumption Methods 0.000 claims description 18
- 239000011159 matrix material Substances 0.000 claims description 13
- 238000004891 communication Methods 0.000 claims description 12
- 230000004069 differentiation Effects 0.000 claims description 9
- 230000000694 effects Effects 0.000 claims description 6
- 230000007613 environmental effect Effects 0.000 claims description 5
- 230000008859 change Effects 0.000 claims description 4
- 239000010410 layer Substances 0.000 claims description 4
- 230000004913 activation Effects 0.000 claims description 3
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 230000008034 disappearance Effects 0.000 claims description 3
- 238000013507 mapping Methods 0.000 claims description 3
- 238000010606 normalization Methods 0.000 claims description 3
- 230000008054 signal transmission Effects 0.000 claims description 3
- 239000002356 single layer Substances 0.000 claims description 3
- 230000006641 stabilisation Effects 0.000 claims description 3
- 238000011105 stabilization Methods 0.000 claims description 3
- 238000012360 testing method Methods 0.000 claims description 2
- 230000033001 locomotion Effects 0.000 abstract description 5
- 230000000875 corresponding effect Effects 0.000 description 7
- 230000002787 reinforcement Effects 0.000 description 7
- 230000003190 augmentative effect Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000001351 cycling effect Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000035755 proliferation Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5072—Grid computing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
- G06F9/5088—Techniques for rebalancing the load in a distributed system involving task migration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/092—Reinforcement learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N7/00—Computing arrangements based on specific mathematical models
- G06N7/01—Probabilistic graphical models, e.g. probabilistic networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
- G06Q10/047—Optimisation of routes or paths, e.g. travelling salesman problem
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0823—Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
- H04L41/083—Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability for increasing network speed
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/502—Proximity
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Business, Economics & Management (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Human Resources & Organizations (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- Computer Networks & Wireless Communication (AREA)
- Evolutionary Computation (AREA)
- Molecular Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- Computational Linguistics (AREA)
- Medical Informatics (AREA)
- Game Theory and Decision Science (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Development Economics (AREA)
- Algebra (AREA)
- Mathematical Optimization (AREA)
- Probability & Statistics with Applications (AREA)
- Entrepreneurship & Innovation (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种基于多智能体辅助边缘云服务器的任务调度方法,包括描述多智能体辅助MEC系统场景,构造用户、服务器、与多智能体的任务调度问题;建立多智能体马尔可夫模型,重新构造任务调度问题;通过TD3算法进行集中训练处理,同时采用Attention机制,构造改进的多智能体TD3算法;采用改进的多智能体TD3算法、处理后的多智能体进行重新训练,使得每个智能体得到一个全局最优策略模型;通过每个智能体独立的执行最优策略,完成系统的调度任务;本发明方法有效的减少用户任务的计算时延,减轻边缘云服务器的负担,大大提高用户的体验质量,并且能够更有效的处理用户移动的问题。
Description
技术领域
本发明属于深度强化学习以及边缘计算的交叉技术领域,具体涉及一种基于多智能体辅助边缘云服务器的任务调度方法。
背景技术
近年来,以智能手机为代表的智能移动终端被广泛普及,直接推动了数字生活的繁荣,随之而来的是海量的用户需求,其中包括了大量的计算密集型任务以及对延迟敏感的任务,这些任务会给计算能力有限的用户设备带来巨大的压力,可能无法满足用户需求。
为了解决上述问题,开始引入多址边缘计算MEC技术,用于移动网络环境中的数据计算和通信,用户无需将任务经过层层路由转发到具体的应用服务器上,而是直接发送给就近的接入点,如WIFI接入点或者蜂窝基站,在接入点上部署通用服务器,及时快捷地处理用户的任务、满足用户需求,从而达到延迟低,响应快的效果,大大提高了用户的体验质量。
然而,处于热点地区时,大量的用户同时进行计算密集型任务请求,可能会使MEC服务器无法满足需求,也无法保证提供给用户的服务质量;同时,由于地理环境等因素,MEC服务器的部署可能会较为稀疏,也无法达到预期要求。
进而引入移动多智能体作为辅助MEC系统的“移动MEC服务器”,具有高灵活性和覆盖范围广等特点的移动多智能体,可以弥补MEC服务器的不足;近年来关于移动多智能体辅助MEC系统的研究已经得到很多成果,如无人机方向,但大多数研究都是在单架无人机的场景下进行任务卸载或者都是基于固定移动终端的场景,但在实际中的用户可能具有高移动性,同时,单架无人机计算能力有限,无法满足需求,所以需要引入多架无人机。
需要同时考虑用户的移动性和多架无人机的移动性,以及多架无人机之间的协同配合,包括联合运动轨迹、计算任务卸载和能量消耗等问题,在实际使用中,多架无人机需要能够根据实际的环境(包括用户位置,用户数量)变化做出决策,以达到系统成本最少,同时满足用户的需求。
现在已有一些研究期望使用强化学习的方法来解决上述问题,但是当移动多智能体的数量或者移动用户的数量很大时,智能体的状态空间和行动空间是成指数增长的,导致收敛效率较差。
深度强化学习是一种end-to-end的感知和控制系统,在每个时刻t,智能体和环境进行交互得到一个观察,并利用深度学习的方法来感知观察,得到具体的状态特征;然后基于预期的回报评价智能体动作的价值函数,通过某种策略对于当前状态选择对应的动作;做出动作后,环境会给这个动作做出反应,奖励或惩罚,并得到下一个观察;通过不断循环上述过程,最终可以得到实现目标的最优策略。
针对多智能体的深度强化学习场景而言,通过训练得到的多智能体的策略处于不断变化之中,导致每个智能体都处于不稳定的环境;在这种不稳定的环境中学习到的策略将是毫无意义的,所以不能将单智能体强化学习的方法之间移植到多智能体场景。
深度强化学习一般有三种主要的学习算法;第一种是独立式学习,通过把单智能体方法直接移植到多智能体场景,把其他智能体看成环境的一部分,不去管别人,一般在小规模的多智能体问题中有一定的效果,但是对于高维度-动作空间的复杂问题就无法得到有效的结果;第二种是集中式学习,通过把所有智能体的状态和动作集中到一起,形成一个增广augmented的状态-动作空间,使用单智能体算法直接学习,一旦智能体的数量很大,那么这个增广空间的大小将以指数级增长,以至于难以进行充分的探索,并且将耗费大量的资源;第三种方法就是集中式训练-分布式执行,在训练期间,所有的智能体能看到全局信息,但执行的时候每个智能体仅依靠局部的状态信息做决策;这种算法结构在训练时相对费力,但是可以实际部署应用,因为每个智能体仅依赖局部信息就能够作决策,不需要复杂的通讯网络和所有其他智能体保持联络。
对于巡逻车而言,由于移动能力有限,所以巡逻车的运动存在物理限制,在t时刻确定了坐标后,通过计算得到t+1时刻的位置;并且多个巡逻车之间需要满足存在的物理约束,包括信号区域不能重叠,不能碰撞,否则存在一定的惩罚;综合考虑上述因素,现有的研究针提出,在多智能体之间进行广播通信,保证所有智能体都能够接收到来自其他智能体的所有信息,然后对多智能体进行集中训练;但在实际情况下,单个智能体作出有效决策,可能并不需要所有智能体的信息,甚至关联性不大的信息会影响智能体的学习效率,增加通信负担。
综上所述,当前的任务调度方法并不能够独立的满足用户的需求,通过多智能体辅助边缘云服务器共同完成任务的方法在满足用户需求的同时也存在一定的问题。
发明内容
本发明的目的在于提供一种用户需求充分满足、系统总成本最小的基于多智能体辅助边缘云服务器的任务调度方法。
本发明提供的这种基于多智能体辅助边缘云服务器的任务调度方法,包括如下步骤:
S1.描述多智能体辅助MEC系统场景,构造用户、服务器、与多智能体的任务调度问题;
S2.采用步骤S1描述的系统场景,和构造的任务调度问题,建立多智能体马尔可夫模型,重新构造步骤S1提出的任务调度问题;
S3.采用步骤S2构建的多智能体马尔可夫模型,通过TD3算法进行集中训练处理,同时采用Attention机制,构造改进的多智能体TD3算法;
S4.采用步骤S3构造的改进多智能体TD3算法和集中训练处理后的多智能体进行重新训练,使得每个智能体得到一个全局最优策略模型;
S5.采用步骤S4训练后的多智能体,通过每个智能体独立的执行最优策略,完成系统的调度任务;
步骤S1所述的描述多智能体辅助MEC系统场景,构造用户、服务器、与多智能体的任务调度问题,具体包括:
在一个多智能体辅助MEC系统的场景中,假定存在M个用户,N辆巡逻车,以及K个边缘云服务器;在所述场景中,考虑多智能体为巡逻车;M个用户会不断产生计算密集型任务Mm={Dm,Cm,λm},Dm表示任务数据大小,Cm表示CPU周期数,λm表示任务到达率;当用户无法独自处理所有的任务时,会将若干任务卸载到巡逻车上,通过巡逻车完成相应任务的计算;如果仍不能够满足用户需求,将若干任务卸载到边缘云服务器上,最后通过边缘云服务器计算后将计算结果返回给巡逻车,巡逻车将结果整合后返回给用户;
采用二维坐标Lm(t)={xm(t),ym(t)}表示用户的位置,Ln(t)={xn(t),yn(t)}表示巡逻车的位置,得到二者的距离为dmn(t)=||Lm(t)-Ln(t)||;
采用下述公式得到二者之间的任务传输速率:
其中,Bu是带宽;Mn(t)表示巡逻车n在t时刻服务的用户数量;Pm是用户的传输功率;是高斯噪声;hmn(t)是用户m与巡逻车n之间的信道增益,计算公式如下所示:
其中,g0表示参考距离为1米时的信道增益;dmn(t)表示用户m与巡逻车n之间的距离;
在任务卸载过程中,假设带宽平均分配给每个用户;
从而得到用户m与巡逻车n之间的传输延迟、能量消耗,计算公式如下所示;
其中,是用户m与巡逻车n之间的传输延迟;Dm是任务的数据大小;Rmn(t)是传输数据速率;
其中,是用户m与巡逻车n之间的能量消耗;Pn是巡逻车n的接收功率;
巡逻车n和边缘云服务器k之间的任务传输速率采用下述公式表示:
其中,Rnk(t)是传输速率;Bk是提前分配给边缘云服务器k的带宽;hnk(t)是巡逻车n和边缘云服务器k之间的信道增益;Pn(t)是巡逻车n在t时刻的传输功率;是每个边缘云服务器的高斯噪声功率;
进而得到巡逻车n和边缘云服务器k之间的传输延迟、能量消耗,计算公式如下所示:
其中,是巡逻车n和边缘云服务器k之间的传输延迟;Dm是任务的数据大小;/>是任务比例;Rnk(t)是传输速率;
其中,是巡逻车n和边缘云服务器k之间的能量消耗;Pn是巡逻车n的接收功率;
当巡逻车和边缘云服务器接收到任务后开始进行计算延迟、能量消耗的计算;
步骤S2所述的采用步骤S1描述的系统场景,和构造的任务调度问题,建立多智能体马尔可夫模型,重新构造步骤S1提出的任务调度问题,具体包括:
针对步骤S1描述的多智能体场景,进行多智能体马尔可夫建模:
①智能体集合(Agent Set)N:每辆巡逻车能够学习自己的行动路线、信号传输功率和任务分配比,以达到最小化系统成本的目的,得到N={1,…,N};
②状态空间(State Space)S:由人员操控所有的巡逻车,巡逻车学习最佳路线,并根据实际情况给出最佳建议;状态空间需要考虑所有智能体的位置以及障碍物的位置,包括用户位置;
③行动空间(Action Space)An:每辆巡逻车需要决定自身的行动距离L,行动方向θ,传输功率P和任务卸载率γ;根据物理限制,得到变量的取值范围,基于速度有限,使得行动距离L≤Lmax,Lmax为最大行动距离;行动方向θ∈{前,后,左,右};传输功率P∈[0,Pmax],Pmax为最大传输功率;任务卸载率γ∈[0,1];
④奖励函数Rn:在场景里,每个智能体需要协同合作,满足用户需求并且最小化系统成本,同时需要满足物理约束比如不能和其他智能体和障碍物发生碰撞;对于智能体n,如果满足所有约束,定义系统总成本的负数-Un(t)为奖励,如果不满足某些约束,将会受到惩罚,采用下述公式定义Rn(t):
其中,η1是不满足重叠约束时的惩罚,或认为两个智能体信号覆盖范围有重叠;η2是两个智能体碰撞的惩罚;η3是智能体和障碍物碰撞的惩罚;是存在没有被信号覆盖的用户时,所有智能体受到的惩罚,其中,η4是惩罚系数,M是总的用户数量,Mn(t)表示巡逻车n在时刻t服务的用户数量,n是智能体n,N是智能体数量;
步骤S3所述的采用步骤S2构建的多智能体马尔可夫模型,通过TD3算法进行集中训练处理,同时采用Attention机制,构造改进的多智能体TD3算法,具体包括:
(3-1)针对TD3算法中的参数进行初始化设置:
TD3算法包括actor、critic两种角色;在actor网络中,包括:一个评估网络(evulation net)μ,其中,μ是evulation net的网络参数;一个目标网络(target net)μ′,其中,μ′是target net的网络参数,μ′用于稳定训练;在critic网络中,包括:两个评估网络(evulation net)θ1、θ2,评估网络θ1、θ2通过对actor网络输出的状态-动作对进行打分来判断actor网络执行的策略的好坏;两个目标网络(target net)θ′1、θ′2,目标网络θ′1、θ′2用于稳定训练;
初始化TD3算法中actor网络的一个评估网络和critic网络的两个评估网络,参数分别为μ、θ1、θ2;将三个网络的参数分别复制给对应的target网络,对应的参数分别为μ′、θ′1、θ′2,进而完成target网络的初始化处理;初始化每一个智能体的经验回放池replaybufferβ,经验回放池存储智能体与环境交互产生的经验,并用于后续的训练;
采用协作式多智能体架构,将最大预期折扣定义为所有智能体的奖励之和;
(3-2)智能体与环境的交互过程:
基于步骤(3-1)初始化处理后的网络,智能体i能够根据环境状态si(t)作出动作ai(t),通过actor网络完成与环境的交互,其中,网络输入为环境状态si(t),网络输出为智能体的动作ai(t),采用下述公式描述交互过程:
ai(t)=πμ(si(t))+ξ
其中,ξ~clip(N(0,σ2),-c,c),clip(x,a,b)是一个函数,表示将x的大小限制在(a,b)之间,ξ为均值为0、标准差为σ的截断噪声,用于保证网络的探索性;πμ(·)表示actor网络的评估网络;
交互完成得到的状态动作对为(si(t),ai(t)),作为输入传递给critic网络,通过critic网络进行打分处理;
(3-3)智能体与智能体的通信:
智能体之间通过通信,使得所有的智能体能够得到处自身外的其他所有智能体的状态动作对,获得全局状态s(t)、全局动作a(t);
(3-4)智能体与环境的交互过程:
智能体通过与环境交互产生奖励R(t),同时由于环境变化产生下一状态为s(t+1),进而获得一条经验为(s(t),s(t+1),a(t),R(t)),并存放到经验回放池β中;
针对每一个智能体而言,均从β中获取数据,通过critic网络计算Q值,并更新网络的参数;
(3-5)采用Attention机制,构造改进的多智能体TD3算法:
(1)引入Attention机制:
每一个智能体能够对自己的状态动作对进行编码处理,并发送到中央attention机制,同时接收其他智能体编码处理后得到的加权和,中央attention机制部署在地面云服务器上;
针对智能体i,采用下述公式计算Q值:
其中,表示智能体i的第j个critic网络在输入(s,a)为的情况下的Q值;fi是一个双层MLP网络;gi是一个单层embedding编码网络;xi是其他智能体对智能体i所得奖励的贡献大小的加权和,采用下述公式表示:
xi=∑(j≠i)αjvj=Σ(j≠i)αjh(Vgj(sj,aj))
其中,αj是加权系数,计算公式如下所示:
其中,exp(·)表示以自然数e为底的指数函数;αj∝exp(·)表示αj正比于exp(·);是向量ej的转置;/>是矩阵Wk的转置,表示键值key的线性权重矩阵,通过训练得到;Wq是查询query的线性权重矩阵,通过训练得到;ei是通过编码网络embedding得到的编码向量;
通过双线性映射比较ei和ej,Wq将ei转换为“查询”query,Wk将ej转换为“键”key,将这两个嵌入之间的相似度值传递给softmax,针对上述的两个矩阵的维数进行归一化处理,防止梯度消失;智能体的特征提取器、键和值在多个智能体之间进行共享;
vj是智能体j对i的影响,是对智能体j的embedding,表达式如下所示:
h(Vgj(sj,aj))
其中,g函数定义了embedding函数,g函数的输出左乘一个线性的共享矩阵V;h函数是一个非线性激活函数;
多个attention机制头部的每个头计算ei、以及集合中除i外的其他智能体的ej,并将得到的结果拼起来作为计算Q值的输入;智能体i对于其他智能体的关注程度通过attention的各个头部进行学习获得,同时使用多头平均每个头的关注偏差;
(2)网络更新:
智能体之间能够共享critic网络参数,所有critic网络能够同时被更新,从而定义一个最小化的联合回归函数,采用下述公式表示回归函数:
其中,是智能体n的第i个critic网络;M是总用户数量;Mb表示从经验池中β取出的经验条数;/>是通过两个evaluation critic网络得到的Q值;sj是第j条经验中的状态;aj是第j条经验中的动作;yj表示target目标网络的估计值,计算公式如下所示:
其中,rj是经验池中的回报R(t);δ是折扣回报率;是目标target网络计算得到的Q值;s′j是经验池中的下一状态;a′j是目标动作,通过目标actor网络产生;
通过策略梯度算法更新每一个智能体的策略,采用下述公式表示更新过程:
其中,表示对μn求微分处理,/>表示对μn求微分处理,/>表示对an求微分处理;
针对每一个智能体n而言,采用下述公式表示更新过程:
其中,λ表示学习率;μn表示第n个智能体的actor网络中的评估网络;表示第n个智能体的第i个critic网络的评估网络;
通过软更新的方式更新目标网络的参数,更新公式如下所示:
μ′n=τμn+(1-τ)μ′n
其中,μ′n表示第n个智能体的actor网络中的目标网络;表示第n个智能体的第i个critic网络的目标估网络;τ是更新率;
步骤S4所述的采用步骤S3构造的改进多智能体TD3算法和集中训练处理后的多智能体进行重新训练,使得每个智能体得到一个全局最优策略模型,具体包括:
采用步骤S3构造的改进多智能体TD3算法,针对多智能体进行集中训练,按照设定的轮数进行重复训练,直到奖励惩罚函数收敛时,训练结束;
结束训练的每一个智能体,对应得到一个最优的策略模型;
得到最优策略模型的智能体在分布式执行阶段,根据环境s(t)作出最优动作;
步骤S5所述的采用步骤S4训练后的多智能体,通过每个智能体独立的执行最优策略,完成系统的调度任务,具体包括:
每个智能体独立的执行最优策略,在分布式执行阶段冻结critic网络,同时固定actor网络的参数;
各个智能体根据本地状态信息sn(t)、训练后得到的actor网络、通过学习得到的参数μ,执行决策,完成系统的调度任务。
本发明提供的这种基于多智能体辅助边缘云服务器的任务调度方法,通过引入多智能体辅助边缘云服务器计算,有效的减少用户任务的计算时延,减轻边缘云服务器的负担,提高用户的体验质量,并且更有效的处理用户移动的问题;通过深度强化学习使得智能体能够在与环境交互的过程中学习到有效的知识,帮助联合规划行动路线、传输功率、任务分配比,能够在满足用户需求的情况下最大限度地减少系统的总能耗;引入注意力机制为智能体的信息提供权重占比;基于集中训练和分布式执行的策略,减少的通信的时延以及能量的消耗;而且本发明的能够充分满足用户需求、系统总成本消耗最少。
附图说明
图1为本发明方法的方法流程示意图。
具体实施方式
如图1所示为本发明方法的方法流程示意图:本发明提供的这种基于多智能体辅助边缘云服务器的任务调度方法,包括如下步骤:
S1.描述多智能体辅助MEC系统场景,构造用户、服务器、与多智能体的任务调度问题;具体包括:
在一个多智能体辅助MEC系统的场景中,假定存在M个用户,N辆巡逻车,以及K个边缘云服务器;在所述场景中,考虑多智能体为巡逻车;M个用户会不断产生计算密集型任务Mm={Dm,Cm,λm},Dm表示任务数据大小,Cm表示CPU周期数,λm表示任务到达率;当用户无法独自处理所有的任务时,会将若干任务卸载到巡逻车上,通过巡逻车完成相应任务的计算;如果仍不能够满足用户需求,将若干任务卸载到边缘云服务器上,最后通过边缘云服务器计算后将计算结果返回给巡逻车,巡逻车将结果整合后返回给用户;
采用二维坐标Lm(t)={xm(t),ym(t)}表示用户的位置,Ln(t)={xn(t),yn(t)}表示巡逻车的位置,得到二者的距离为dmn(t)=||Lm(t)-Ln(t)||;
采用下述公式得到二者之间的任务传输速率:
其中,Bu是带宽;Mn(t)表示巡逻车n在t时刻服务的用户数量;Pm是用户的传输功率;是高斯噪声;hmn(t)是用户m与巡逻车n之间的信道增益,计算公式如下所示:
其中,g0表示参考距离为1米时的信道增益;dmn(t)表示用户m与巡逻车n之间的距离;
在任务卸载过程中,假设带宽平均分配给每个用户;
从而得到用户m与巡逻车n之间的传输延迟、能量消耗,计算公式如下所示;
其中,是用户m与巡逻车n之间的传输延迟,Dm是任务的数据大小,Rmn(t)是传输数据速率;
其中,是用户m与巡逻车n之间的能量消耗,Pn是巡逻车n的接收功率;
巡逻车n和边缘云服务器k之间的任务传输速率采用下述公式表示:
其中,Rnk(t)是传输速率;Bk是提前分配给边缘云服务器k的带宽;hnk(t)是巡逻车n和边缘云服务器k之间的信道增益;Pn(t)是巡逻车n在t时刻的传输功率;是每个边缘云服务器的高斯噪声功率;
进而得到巡逻车n和边缘云服务器k之间的传输延迟、能量消耗,计算公式如下所示:
其中,是巡逻车n和边缘云服务器k之间的传输延迟;Dm是任务的数据大小;/>是任务比例;Rnk(t)是传输速率;
其中,是巡逻车n和边缘云服务器k之间的能量消耗;Pn是巡逻车n的接收功率;
当巡逻车和边缘云服务器接收到任务后开始进行计算延迟、能量消耗的计算;
S2.采用步骤S1描述的系统场景,和构造的任务调度问题,建立多智能体马尔可夫模型,重新构造步骤S1提出的任务调度问题;具体包括:
针对步骤S1描述的多智能体场景,进行多智能体马尔可夫建模:
①智能体集合(Agent Set)N:每辆巡逻车能够学习自己的行动路线、信号传输功率和任务分配比,以达到最小化系统成本的目的,得到N={1,…,N…,N}};
②状态空间(State Space)S:由人员操控所有的巡逻车,巡逻车学习最佳路线,并根据实际情况给出最佳建议;状态空间需要考虑所有智能体的位置以及障碍物的位置,包括用户位置;
③行动空间(Action Space)An:每辆巡逻车需要决定自身的行动距离L,行动方向θ,传输功率P和任务卸载率γ;根据物理限制,得到变量的取值范围,基于速度有限,使得行动距离L≤Lmax,Lmax为最大行动距离;行动方向θ∈{前,后,左,右};传输功率P∈[0,Pmax],Pmax为最大传输功率;任务卸载率γ∈[0,1];
④奖励函数(Reword Function)Rn:在场景里,每个智能体需要协同合作,满足用户需求并且最小化系统成本,同时需要满足物理约束比如不能和其他智能体和障碍物发生碰撞;对于智能体n,如果满足所有约束,定义系统总成本的负数-Un(t)为奖励,如果不满足某些约束,将会受到惩罚,采用下述公式定义Rn(t):
其中,η1是不满足重叠约束时的惩罚,或认为两个智能体信号覆盖范围有重叠;η2是两个智能体碰撞的惩罚;η3是智能体和障碍物碰撞的惩罚;是存在没有被信号覆盖的用户时,所有智能体受到的惩罚,其中,η4是惩罚系数,M是总的用户数量,Mn(t)表示巡逻车n在时刻t服务的用户数量,n是智能体n,N是智能体数量;
S3.采用步骤S2构建的多智能体马尔可夫模型,通过TD3算法进行集中训练处理,同时采用Attention机制,构造改进的多智能体TD3算法;具体包括:
(3-1)针对TD3算法中的参数进行初始化设置:
TD3算法包括actor、critic两种角色;在actor网络中,包括:一个评估网络(evulation net)μ,其中,μ是evulation net的网络参数;一个目标网络(target net)μ′,其中,μ′是target net的网络参数,μ′用于稳定训练;在critic网络中,包括:两个评估网络(evulation net)θ1、θ2,评估网络θ1、θ2通过对actor网络输出的状态-动作对进行打分来判断actor网络执行的策略的好坏;两个目标网络(target net)θ′1、θ′2,目标网络θ′1、θ′2用于稳定训练;
初始化TD3算法中actor网络的一个评估网络和critic网络的两个评估网络,参数分别为μ、θ1、θ2;将三个网络的参数分别复制给对应的target网络,对应的参数分别为μ′、θ′1、θ′2,进而完成target网络的初始化处理;初始化每一个智能体的经验回放池replaybufferβ,经验回放池存储智能体与环境交互产生的经验,并用于后续的训练;
采用协作式多智能体架构,将最大预期折扣定义为所有智能体的奖励之和;
(3-2)智能体与环境的交互过程:
基于步骤(3-1)初始化处理后的网络,智能体i能够根据环境状态si(t)作出动作ai(t),通过actor网络完成与环境的交互,其中,网络输入为环境状态si(t),网络输出为智能体的动作ai(t),采用下述公式描述交互过程:
ai(t)=πμ(si(t))+ξ
其中,ξ~clip(N(0,σ2),-c,c),clip(x,a,b)是一个函数,表示将x的大小限制在(a,b)之间,ξ为均值为0、标准差为σ的截断噪声,用于保证网络的探索性;πμ(·)表示actor网络的评估网络;
交互完成得到的状态动作对为(si(t),ai(t)),作为输入传递给critic网络,通过critic网络进行打分处理;
(3-3)智能体与智能体的通信:
智能体之间通过通信,使得所有的智能体能够得到处自身外的其他所有智能体的状态动作对,获得全局状态s(t)、全局动作a(t);
(3-4)智能体与环境的交互过程:
智能体通过与环境交互产生奖励R(t),同时由于环境变化产生下一状态为s(t+1),进而获得一条经验为(s(t),s(t+1),a(t),R(t)),并存放到经验回放池β中;
针对每一个智能体而言,均从β中获取数据,通过critic网络计算Q值,并更新网络的参数;
(3-5)采用Attention机制,构造改进的多智能体TD3算法:
(1)引入Attention机制:
每一个智能体能够对自己的状态动作对进行编码处理,并发送到中央attention机制,同时接收其他智能体编码处理后得到的加权和,中央attention机制部署在地面云服务器上;
针对智能体i,采用下述公式计算Q值:
其中,表示智能体i的第j个critic网络在输入(s,a)为的情况下的Q值;fi是一个双层MLP网络;gi是一个单层embedding编码网络;xi是其他智能体对智能体i所得奖励的贡献大小的加权和,采用下述公式表示:
xi=∑(j≠i)αjvj=∑(j≠i)αjh(Vgj(sj,aj))
其中,αj是加权系数,计算公式如下所示:
其中,exp(·)表示以自然数e为底的指数函数;αj∝exp(·)表示αj正比于exp(·);是向量ej的转置;/>是矩阵Wk的转置,表示键值key的线性权重矩阵,通过训练得到;Wq是查询query的线性权重矩阵,通过训练得到;ei是通过编码网络embedding得到的编码向量;
通过双线性映射比较ei和ej,Wq将ei转换为“查询”query,Wk将ej转换为“键”key,将这两个嵌入之间的相似度值传递给softmax,针对上述的两个矩阵的维数进行归一化处理,防止梯度消失;智能体的特征提取器、键和值在多个智能体之间进行共享;
vj是智能体j对i的影响,是对智能体j的embedding,表达式如下所示:
h(Vgj(sj,aj))
其中,g函数定义了embedding函数,g函数的输出左乘一个线性的共享矩阵V;h函数是一个非线性激活函数;
多个attention机制头部的每个头计算ei、以及集合中除i外的其他智能体的ej,并将得到的结果拼起来作为计算Q值的输入;智能体i对于其他智能体的关注程度通过attention的各个头部进行学习获得,同时使用多头平均每个头的关注偏差;
(2)网络更新:
智能体之间能够共享critic网络参数,所有critic网络能够同时被更新,从而定义一个最小化的联合回归函数,采用下述公式表示回归函数:
其中,是智能体n的第i个critic网络;M是总用户数量;Mb表示从经验池中β取出的经验条数;/>是通过两个evaluation critic网络得到的Q值;sj是第j条经验中的状态;aj是第j条经验中的动作;yj表示target目标网络的估计值,计算公式如下所示:
其中,rj是经验池中的回报R(t),δ是折扣回报率,是目标target网络计算得到的Q值,s′j是经验池中的下一状态,a′j是目标动作,通过目标actor网络产生;
通过策略梯度算法更新每一个智能体的策略,采用下述公式表示更新过程:
其中,表示对μn求微分处理,/>表示对μn求微分处理,/>表示对an求微分处理;
针对每一个智能体n而言,采用下述公式表示更新过程:
其中,λ表示学习率;μn表示第n个智能体的actor网络中的评估网络;表示第n个智能体的第i个critic网络的评估网络;
通过软更新的方式更新目标网络的参数,更新公式如下所示:
μ′n=τμn+(1-τ)μ′n
其中,μ′n表示第n个智能体的actor网络中的目标网络;表示第n个智能体的第i个critic网络的目标估网络;τ是更新率;
S4.采用步骤S3构造的改进多智能体TD3算法和集中训练处理后的多智能体进行重新训练,使得每个智能体得到一个全局最优策略模型;具体包括:
采用步骤S3构造的改进多智能体TD3算法,针对多智能体进行集中训练,按照设定的轮数进行重复训练,直到奖励惩罚函数收敛时,训练结束;
本发明方法中选择设定的轮数为100轮;
结束训练的每一个智能体,对应得到一个最优的策略模型;
得到最优策略模型的智能体在分布式执行阶段,根据环境s(t)作出最优动作;
S5.采用步骤S4训练后的多智能体,通过每个智能体独立的执行最优策略,完成系统的调度任务;具体包括:
每个智能体独立的执行最优策略,在分布式执行阶段冻结critic网络,同时固定actor网络的参数;
各个智能体根据本地状态信息sn(t)、训练后得到的actor网络、通过学习得到的参数μ,执行决策,完成系统的调度任务;
本发明方法中选择智能巡逻车作为智能体,以大流量交通道路作为实际场景进行案例实施说明,具体包括:
模拟训练阶段:在模拟训练阶段内,搭建模拟交通环境的系统用于智能车的集中训练;
1)初始化预处理:
初始化系统为400*400m2的区域,其中,道路为宽度10m的双行道,两条平行道路之间间隔30m,并作为不可行驶区域,区域整体形成一个棋盘状的交通系统;初始化UE用户终端数量为90,随机分布在道路上3个热点区域;初始化2个边缘服务器或基站,固定于地图上2个随机点位;初始化3个智能巡逻车,随机位于地图上的位置,为UE提供计算服务,随机生成UE计算任务的大小,区间范围为[2,10]Mbits;随机生成CPU周期数,区间在[100,200]cycles/bit;设置任务到达率为1;初始化智能车的最大速度,智能车和用户UE以及其他小车之间的最大安全距离;初始化上行带宽和下行带宽B,设置为10MHz;设置智能车的最大传输功率为5w,接收功率为0.1w,UE的传输功率为0.1w;初始化智能车和用户的计算资源;初始化噪音功率为-100dBm;初始化网络的相关参数,设置权重矩阵,以及惩罚项的值;初始化其他参数;
2)集中训练阶段:
初始化结束后,对每个智能车应用TD3算法,使得智能小车开始集中训练,并且通过Attention来优化训练过程;训练收敛后获得每个智能车的本地网络参数,智能小车能够根据本地参数独立进行决策,无需和其它智能车通信;进行网络可扩展性验证,评估不同UE数量和智能车数量下的网络性能;测试在固定智能小车数量的情况下,网络所能承受的最大用户数量;增加用户数量,进行实验对比判断需要增加的智能车数量,如果增加的智能车带来的性能或者成本优化的效果有限,那么可以选择不增加智能车,减少总成本;
3)实际部署阶段:将训练的网络模型部署在智能巡逻车上,进行实际的工作;为巡逻车安装车载系统,把训练好的网络模型部署在车载系统上;巡逻车获取地面固定基站的位置信息,同时获取基站处理请求数量和请求到达速率,用于确认用户的数量,以及热点区域的位置;系统做出响应,确认需要的智能车数量并且派发智能巡逻车,巡逻车由驾驶员驾驶;巡逻车根据当前环境信息作为输入,利用本地网络做出决策,确定行进方向、速度以及任务处理或分发率;驾驶员根据智能巡逻车做出的决策建议进行人工判断,选择下一步行动;智能巡逻车根据新的环境信息重新作出决策,实时提供建议;根据路况调整时间间隔,每个时间间隔内,智能小车询问一次当前的全部路况信息,进行策略调整以及智能小车数量的调整。
Claims (7)
1.一种基于多智能体辅助边缘云服务器的任务调度方法,包括如下步骤:
S1.描述多智能体辅助MEC系统场景,构造用户、服务器、与多智能体的任务调度问题;
S2.采用步骤S1描述的系统场景,和构造的任务调度问题,建立多智能体马尔可夫模型,重新构造步骤S1提出的任务调度问题;
S3.采用步骤S2构建的多智能体马尔可夫模型,通过TD3算法进行集中训练处理,同时采用Attention机制,构造改进的多智能体TD3算法;
S4.采用步骤S3构造的改进多智能体TD3算法和集中训练处理后的多智能体进行重新训练,使得每个智能体得到一个全局最优策略模型;
S5.采用步骤S4训练后的多智能体,通过每个智能体独立的执行最优策略,完成系统的调度任务。
2.根据权利要求1所述的基于多智能体辅助边缘云服务器的任务调度方法,其特征在于步骤S1所述的描述多智能体辅助MEC系统场景,构造用户、服务器、与多智能体的任务调度问题,具体包括:
在一个多智能体辅助MEC系统的场景中,假定存在M个用户,N辆巡逻车,以及K个边缘云服务器;在所述场景中,考虑多智能体为巡逻车;M个用户会不断产生计算密集型任务Mm={Dm,Cm,λm},Dm表示任务数据大小,Cm表示CPU周期数,λm表示任务到达率;当用户无法独自处理所有的任务时,会将若干任务卸载到巡逻车上,通过巡逻车完成相应任务的计算;如果仍不能够满足用户需求,将若干任务卸载到边缘云服务器上,最后通过边缘云服务器计算后将计算结果返回给巡逻车,巡逻车将结果整合后返回给用户;
采用二维坐标Lm(t)={xm(t),ym(t)}表示用户的位置,Ln(t)={xn(t),yn(t)}表示巡逻车的位置,得到二者的距离为dmn(t)=||Lm(t)-Ln(t)||;
采用下述公式得到二者之间的任务传输速率:
其中,Bu是带宽;Mn(t)表示巡逻车n在t时刻服务的用户数量;Pm是用户的传输功率;是高斯噪声;hmn(t)是用户m与巡逻车n之间的信道增益,计算公式如下所示:
其中,g0表示参考距离为1米时的信道增益;dmn(t)表示用户m与巡逻车n之间的距离;
在任务卸载过程中,假设带宽平均分配给每个用户;
从而得到用户m与巡逻车n之间的传输延迟、能量消耗,计算公式如下所示;
其中,是用户m与巡逻车n之间的传输延迟,Dm是任务的数据大小,Rmn(t)是传输数据速率;
其中,是用户m与巡逻车n之间的能量消耗,Pn是巡逻车n的接收功率;
巡逻车n和边缘云服务器k之间的任务传输速率采用下述公式表示:
其中,Rnk(t)是传输速率;Bk是提前分配给边缘云服务器k的带宽;hnk(t)是巡逻车n和边缘云服务器k之间的信道增益;Pn(t)是巡逻车n在t时刻的传输功率;是每个边缘云服务器的高斯噪声功率;
进而得到巡逻车n和边缘云服务器k之间的传输延迟、能量消耗,计算公式如下所示:
其中,是用户m与巡逻车n之间的传输延迟,Dm是任务的数据大小,Rmn(t)是传输数据速率;
其中,是用户m与巡逻车n之间的能量消耗,Pn是巡逻车n的接收功率;
当巡逻车和边缘云服务器接收到任务后开始进行计算延迟、能量消耗的计算。
3.根据权利要求2所述的基于多智能体辅助边缘云服务器的任务调度方法,其特征在于步骤S2所述的采用步骤S1描述的系统场景,和构造的任务调度问题,建立多智能体马尔可夫模型,重新构造步骤S1提出的任务调度问题,具体包括:
针对步骤S1描述的多智能体场景,进行多智能体马尔可夫建模:
①智能体集合N:每辆巡逻车能够学习自己的行动路线、信号传输功率和任务分配比,以达到最小化系统成本的目的,得到N={1,…,N};
②状态空间S:由人员操控所有的巡逻车,巡逻车学习最佳路线,并根据实际情况给出最佳建议;状态空间需要考虑所有智能体的位置以及障碍物的位置,包括用户位置;
③行动空间An:每辆巡逻车需要决定自身的行动距离L,行动方向θ,传输功率P和任务卸载率γ;根据物理限制,得到变量的取值范围,基于速度有限,使得行动距离L≤Lmax,Lmax为最大行动距离;行动方向θ∈{前,后,左,右};传输功率P∈[0,Pmax],Pmax为最大传输功率;任务卸载率γ∈[0,1];
④奖励函数Rn:在场景里,每个智能体需要协同合作,满足用户需求并且最小化系统成本,同时需要满足物理约束比如不能和其他智能体和障碍物发生碰撞;对于智能体n,如果满足所有约束,定义系统总成本的负数-Un(t)为奖励,如果不满足某些约束,将会受到惩罚,采用下述公式定义Rn(t):
其中,η1是不满足重叠约束时的惩罚,或认为两个智能体信号覆盖范围有重叠;η2是两个智能体碰撞的惩罚;η3是智能体和障碍物碰撞的惩罚;是存在没有被信号覆盖的用户时,所有智能体受到的惩罚,其中,η4是惩罚系数,M是总的用户数量,Mn(t)表示巡逻车n在时刻t服务的用户数量,n是智能体n,N是智能体数量。
4.根据权利要求3所述的基于多智能体辅助边缘云服务器的任务调度方法,其特征在于步骤S3所述的采用步骤S2构建的多智能体马尔可夫模型,通过TD3算法进行集中训练处理,同时采用Attention机制,构造改进的多智能体TD3算法,具体包括:
(3-1)针对TD3算法中的参数进行初始化设置:
TD3算法包括actor、critic两种角色;在actor网络中,包括:一个评估网络μ,其中,μ是评估网络的网络参数;一个目标网络μ′,其中,μ′是目标网络的网络参数,μ′用于稳定训练;在critic网络中,包括:两个评估网络θ1、θ2,评估网络θ1、θ2通过对actor网络输出的状态-动作对进行打分来判断actor网络执行的策略的好坏;两个目标网络θ′1、θ′2,目标网络θ′1、θ′2用于稳定训练;
初始化TD3算法中actor网络的一个评估网络和critic网络的两个评估网络,参数分别为μ、θ1、θ2;将三个网络的参数分别复制给对应的target网络,对应的参数分别为μ′、θ′1、θ′2,进而完成target网络的初始化处理;初始化每一个智能体的经验回放池replaybufferβ,经验回放池存储智能体与环境交互产生的经验,并用于后续的训练;
采用协作式多智能体架构,将最大预期折扣定义为所有智能体的奖励之和;
(3-2)智能体与环境的交互过程:
基于步骤(3-1)初始化处理后的网络,智能体i能够根据环境状态si(t)作出动作ai(t),通过actor网络完成与环境的交互,其中,网络输入为环境状态si(t),网络输出为智能体的动作ai(t),采用下述公式描述交互过程:
ai(t)=πμ(si(t))+ξ
其中,ξ~clip(N(0,σ2),-c,c),clip(x,a,b)是一个函数,表示将x的大小限制在(a,b)之间,ξ为均值为0、标准差为σ的截断噪声,用于保证网络的探索性;πμ(·)表示actor网络的评估网络;
交互完成得到的状态动作对为(si(t),ai(t)),作为输入传递给critic网络,通过critic网络进行打分处理;
(3-3)智能体与智能体的通信:
智能体之间通过通信,使得所有的智能体能够得到处自身外的其他所有智能体的状态动作对,获得全局状态s(t)、全局动作a(t);
(3-4)智能体与环境的交互过程:
智能体通过与环境交互产生奖励R(t),同时由于环境变化产生下一状态为s(t+1),进而获得一条经验为(s(t),s(t+1),a(t),R(t)),并存放到经验回放池β中;
针对每一个智能体而言,均从β中获取数据,通过critic网络计算Q值,并更新网络的参数。
5.根据权利要求4所述的基于多智能体辅助边缘云服务器的任务调度方法,其特征在于步骤S3所述的采用Attention机制,构造改进的多智能体TD3算法:
(1)引入Attention机制:
每一个智能体能够对自己的状态动作对进行编码处理,并发送到中央attention机制,同时接收其他智能体编码处理后得到的加权和,中央attention机制部署在地面云服务器上;
针对智能体i,采用下述公式计算Q值:
其中,表示智能体i的第j个critic网络在输入(s,a)为的情况下的Q值;fi是一个双层MLP网络;gi是一个单层embedding编码网络;xi是其他智能体对智能体i所得奖励的贡献大小的加权和,采用下述公式表示:
xi=∑(j≠i)αjvj=∑(j≠i)αjh(Vgj(sj,aj))
其中,αj是加权系数,计算公式如下所示:
其中,exp(·)表示以自然数e为底的指数函数;αj∝exp(·)表示αj正比于exp(·);是向量ej的转置;/>是矩阵Wk的转置,表示键值key的线性权重矩阵,通过训练得到;Wq是查询query的线性权重矩阵,通过训练得到;ei是通过编码网络embedding得到的编码向量;
通过双线性映射比较ei和ej,Wq将ei转换为“查询”query,Wk将ej转换为“键”key,将这两个嵌入之间的相似度值传递给softmax,针对上述的两个矩阵的维数进行归一化处理,防止梯度消失;智能体的特征提取器、键和值在多个智能体之间进行共享;
vj是智能体j对i的影响,是对智能体j的embedding,表达式如下所示:
h(Vgj(sj,aj))
其中,g函数定义了embedding函数,g函数的输出左乘一个线性的共享矩阵V;h函数是一个非线性激活函数;
多个attention机制头部的每个头计算ei、以及集合中除i外的其他智能体的ej,并将得到的结果拼起来作为计算Q值的输入;智能体i对于其他智能体的关注程度通过attention的各个头部进行学习获得,同时使用多头平均每个头的关注偏差;
(2)网络更新:
智能体之间能够共享critic网络参数,所有critic网络能够同时被更新,从而定义一个最小化的联合回归函数,采用下述公式表示回归函数:
其中,是智能体n的第i个critic网络;M是总用户数量;Mb表示从经验池中β取出的经验条数;/>是通过两个evaluation critic网络得到的Q值;sj是第j条经验中的状态;aj是第j条经验中的动作;yj表示target目标网络的估计值,计算公式如下所示:
其中,rj是经验池中的回报R(t),δ是折扣回报率,是目标target网络计算得到的Q值,s′j是经验池中的下一状态,a′j是目标动作,通过目标actor网络产生;
通过策略梯度算法更新每一个智能体的策略,采用下述公式表示更新过程:
其中,表示对μn求微分处理,/>表示对μn求微分处理,/>表示对an求微分处理;
针对每一个智能体n而言,采用下述公式表示更新过程:
其中,λ表示学习率;μn表示第n个智能体的actor网络中的评估网络;表示第n个智能体的第i个critic网络的评估网络;
通过软更新的方式更新目标网络的参数,更新公式如下所示:
μ′n=τμn+(1-τ)μ′n
其中,μ′n表示第n个智能体的actor网络中的目标网络;表示第n个智能体的第i个critic网络的目标估网络;τ是更新率。
6.根据权利要求5所述的基于多智能体辅助边缘云服务器的任务调度方法,其特征在于步骤S4所述的采用步骤S3构造的改进多智能体TD3算法和集中训练处理后的多智能体进行重新训练,使得每个智能体得到一个全局最优策略模型,具体包括:
采用步骤S3构造的改进多智能体TD3算法,针对多智能体进行集中训练,按照设定的轮数进行重复训练,直到奖励惩罚函数收敛时,训练结束;
结束训练的每一个智能体,对应得到一个最优的策略模型;
得到最优策略模型的智能体在分布式执行阶段,根据环境s(t)作出最优动作。
7.根据权利要求6所述的基于多智能体辅助边缘云服务器的任务调度方法,其特征在于步骤S5所述的采用步骤S4训练后的多智能体,通过每个智能体独立的执行最优策略,完成系统的调度任务,具体包括:
每个智能体独立的执行最优策略,在分布式执行阶段冻结critic网络,同时固定actor网络的参数;
各个智能体根据本地状态信息sn(t)、训练后得到的actor网络、通过学习得到的参数μ,执行决策,完成系统的调度任务。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310704103.5A CN116974751A (zh) | 2023-06-14 | 2023-06-14 | 一种基于多智能体辅助边缘云服务器的任务调度方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310704103.5A CN116974751A (zh) | 2023-06-14 | 2023-06-14 | 一种基于多智能体辅助边缘云服务器的任务调度方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116974751A true CN116974751A (zh) | 2023-10-31 |
Family
ID=88483973
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310704103.5A Pending CN116974751A (zh) | 2023-06-14 | 2023-06-14 | 一种基于多智能体辅助边缘云服务器的任务调度方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116974751A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117350515A (zh) * | 2023-11-21 | 2024-01-05 | 安徽大学 | 一种基于多智能体强化学习的远洋海岛群能量流调度方法 |
CN117580105A (zh) * | 2024-01-15 | 2024-02-20 | 南京信息工程大学 | 一种面向电网巡检的无人机任务卸载优化方法 |
CN117648174A (zh) * | 2024-01-29 | 2024-03-05 | 华北电力大学 | 基于人工智能的云计算异构任务调度和容器管理方法 |
CN117956523A (zh) * | 2024-03-22 | 2024-04-30 | 北京新源恒远科技发展有限公司 | 一种面向车联网边缘计算的任务处理方法 |
CN118082890A (zh) * | 2024-04-26 | 2024-05-28 | 广汽埃安新能源汽车股份有限公司 | 一种自动驾驶的控制指令优化方法、装置、电子设备和存储介质 |
-
2023
- 2023-06-14 CN CN202310704103.5A patent/CN116974751A/zh active Pending
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117350515A (zh) * | 2023-11-21 | 2024-01-05 | 安徽大学 | 一种基于多智能体强化学习的远洋海岛群能量流调度方法 |
CN117350515B (zh) * | 2023-11-21 | 2024-04-05 | 安徽大学 | 一种基于多智能体强化学习的远洋海岛群能量流调度方法 |
CN117580105A (zh) * | 2024-01-15 | 2024-02-20 | 南京信息工程大学 | 一种面向电网巡检的无人机任务卸载优化方法 |
CN117580105B (zh) * | 2024-01-15 | 2024-04-19 | 南京信息工程大学 | 一种面向电网巡检的无人机任务卸载优化方法 |
CN117648174A (zh) * | 2024-01-29 | 2024-03-05 | 华北电力大学 | 基于人工智能的云计算异构任务调度和容器管理方法 |
CN117648174B (zh) * | 2024-01-29 | 2024-04-05 | 华北电力大学 | 基于人工智能的云计算异构任务调度和容器管理方法 |
CN117956523A (zh) * | 2024-03-22 | 2024-04-30 | 北京新源恒远科技发展有限公司 | 一种面向车联网边缘计算的任务处理方法 |
CN118082890A (zh) * | 2024-04-26 | 2024-05-28 | 广汽埃安新能源汽车股份有限公司 | 一种自动驾驶的控制指令优化方法、装置、电子设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN116974751A (zh) | 一种基于多智能体辅助边缘云服务器的任务调度方法 | |
CN110673649B (zh) | 基于拓扑优化的时变信道下无人机编队一致性控制方法、系统、装置及存储介质 | |
CN114422056B (zh) | 基于智能反射面的空地非正交多址接入上行传输方法 | |
WO2021036414A1 (zh) | 一种低轨移动卫星星座下星地下行链路同频干扰预测方法 | |
CN114554459B (zh) | 一种近端策略优化辅助的车联网联邦学习客户端选择方法 | |
CN113033072A (zh) | 一种基于多头注意力指针网络的成像卫星任务规划方法 | |
CN113051815A (zh) | 一种基于独立指针网络的敏捷成像卫星任务规划方法 | |
CN113613301A (zh) | 一种基于dqn的空天地一体化网络智能切换方法 | |
Juang et al. | A self-generating fuzzy system with ant and particle swarm cooperative optimization | |
Wang et al. | Robotic wireless energy transfer in dynamic environments: system design and experimental validation | |
CN113905049A (zh) | 一种基于多分类和分布式强化学习的卸载决策优化方法 | |
CN116009590B (zh) | 无人机网络分布式轨迹规划方法、系统、设备及介质 | |
CN116757249A (zh) | 一种基于分布式强化学习的无人机集群策略意图识别方法 | |
CN115173926B (zh) | 基于拍卖机制的星地融合中继网络的通信方法和通信系统 | |
CN114916013B (zh) | 基于车辆轨迹预测的边缘任务卸载时延优化方法、系统及介质 | |
CN116896777A (zh) | 基于强化学习的无人机群通感一体能耗优化方法 | |
Fu et al. | Dense Multi-Agent Reinforcement Learning Aided Multi-UAV Information Coverage for Vehicular Networks | |
CN114115342B (zh) | 一种基于冲突处理的无人集群多域协同系统及方法 | |
Yu et al. | Real-time holding control for transfer synchronization via robust multiagent reinforcement learning | |
CN112765892B (zh) | 一种异构车联网中的智能切换判决方法 | |
CN116243717A (zh) | 考虑海流不确定性的水下机器人时间最优路径规划方法 | |
Li et al. | Multi-intersections traffic signal intelligent control using collaborative q-learning algorithm | |
Lu et al. | Intelligently Joint Task Assignment and Trajectory Planning for UAV Cluster with Limited Communication | |
Basile et al. | Deep Deterministic Policy Gradient Virtual Coupling control for the coordination and manoeuvring of heterogeneous uncertain nonlinear High-Speed Trains | |
Zhao et al. | Deep reinforcement learning based UAVs trajectory optimization for maximum communication coverage of users |
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 |