CN116263681A - 移动边缘计算任务卸载方法、装置、设备及存储介质 - Google Patents

移动边缘计算任务卸载方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN116263681A
CN116263681A CN202211507176.7A CN202211507176A CN116263681A CN 116263681 A CN116263681 A CN 116263681A CN 202211507176 A CN202211507176 A CN 202211507176A CN 116263681 A CN116263681 A CN 116263681A
Authority
CN
China
Prior art keywords
task
representing
optimal
edge server
strategy
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
CN202211507176.7A
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.)
China Mobile Communications Group Co Ltd
China Mobile Suzhou Software Technology Co Ltd
Original Assignee
China Mobile Communications Group Co Ltd
China Mobile Suzhou Software Technology Co Ltd
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 China Mobile Communications Group Co Ltd, China Mobile Suzhou Software Technology Co Ltd filed Critical China Mobile Communications Group Co Ltd
Priority to CN202211507176.7A priority Critical patent/CN116263681A/zh
Publication of CN116263681A publication Critical patent/CN116263681A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44594Unloading
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5038Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/12Computing arrangements based on biological models using genetic models
    • G06N3/126Evolutionary algorithms, e.g. genetic algorithms or genetic programming
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/18Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
    • H04N7/181Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast for receiving images from a plurality of remote sources
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Biophysics (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Biology (AREA)
  • Signal Processing (AREA)
  • Mathematical Physics (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Genetics & Genomics (AREA)
  • Data Mining & Analysis (AREA)
  • Physiology (AREA)
  • Multimedia (AREA)
  • Artificial Intelligence (AREA)
  • Biomedical Technology (AREA)
  • Computational Linguistics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Warehouses Or Storage Devices (AREA)

Abstract

本发明公开了一种移动边缘计算任务卸载方法、装置、设备及存储介质,该方法包括:计算视频监控设备的任务的本地执行时间、本地能耗代价、任务传输的传输能耗代价和任务在边缘服务器的处理时间;基于预设的任务缓存决策变量、任务卸载决策变量、本地执行时间、本地能耗代价、传输能耗代价、处理时间构建约束条件;利用免疫克隆算法对约束条件进行迭代计算,得到最优任务缓存策略和最优任务卸载策略;根据最优任务卸载策略对各个任务进行分配,并根据最优任务缓存策略对被执行后的目标任务进行缓存。本发明通过任何缓存、任务卸载问题建立算法模型,再利用免疫克隆算法求解最优任务缓存策略和任务卸载策略,以降低任务处理的总体能耗。

Description

移动边缘计算任务卸载方法、装置、设备及存储介质
技术领域
本发明实施例涉及智能视频分析技术领域,具体涉及一种移动边缘计算任务卸载方法、装置、设备及存储介质。
背景技术
智能视频分析的移动边缘计算构建了一种基于边缘计算的视频图像处理技术,通过对视频图像进行预处理,去除图像冗余信息,使得部分或全部视频分析迁移到边缘处。智能视频分析的移动边缘计算所研究的一个主要焦点是将计算密集型的任务卸载到MEC服务器中进行处理。目前已经有很多的工作研究MEC的卸载问题,现有的研究均主要分析MEC网络场景下将任务卸载到MEC上的时延以及能耗进而得到卸载策略。大部分研究均假设边缘服务器具有足够的计算和存储,然而实际上,边缘服务器在计算和存储上均是有限制的,导致最终得出的任务卸载策略并非最佳,难以兼顾任务处理的时延需求和设备的总能耗需求,造成能耗损失或时延长。
发明内容
鉴于上述问题,本发明实施例提供了一种移动边缘计算任务卸载方法、装置、设备及存储介质,用于解决现有边缘计算的任务卸载方式难以兼顾总能耗需求和时耗需求的问题。
根据本发明实施例的一个方面,提供了一种移动边缘计算任务卸载方法,包括:计算获取到的各个视频监控设备的任务的本地执行时间、本地能耗代价、任务传输至边缘服务器的传输能耗代价和任务在边缘服务器处理时的处理时间;基于预设的任务缓存决策变量、任务卸载决策变量、本地执行时间、本地能耗代价、传输能耗代价、处理时间构建对任务缓存决策变量和任务卸载决策变量的约束条件;利用免疫克隆算法对约束条件进行迭代计算,得到最优任务缓存策略和最优任务卸载策略;根据最优任务卸载策略对各个任务进行分配,并根据最优任务缓存策略确定需要进行缓存的目标任务并在目标任务执行后进行缓存。
作为本发明的进一步改进,利用免疫克隆算法对约束条件进行迭代计算,得到最优任务缓存策略和最优任务卸载策略,包括:获取边缘服务器的任务缓存;基于任务缓存和约束条件构建第一目标函数;利用免疫克隆算法对第一目标函数进行迭代计算,得到最优任务卸载策略;基于最优任务卸载策略和约束条件构建第二目标函数;利用免疫克隆算法对第二目标函数进行迭代计算,得到最优任务缓存策略。
作为本发明的进一步改进,约束条件表示为:
Figure BDA0003969564480000021
Figure BDA0003969564480000022
Figure BDA0003969564480000023
C3:Tn,≤Dn
C4:xk∈{0,1};
C5:an∈[0,1];
Figure BDA0003969564480000024
Figure BDA0003969564480000025
Figure BDA0003969564480000026
Figure BDA0003969564480000027
Figure BDA0003969564480000028
Figure BDA0003969564480000029
Figure BDA00039695644800000210
Figure BDA00039695644800000211
其中,x表示任务缓存策略,xk表示预先定义的任务缓存决策变量,xk∈{0,1},表示任务k是否在边缘服务器缓存,若是,xk=1,否则xk=0,任务缓存策略表示为x=(x1,x2,...,xk),a表示任务卸载策略,an表示预先定义的任务卸载决策变量,an∈[0,1],1表示视频监控设备n的任务在本地执行,0表示视频监控设备n的任务卸载至边缘服务器执行,0到1则表示视频监控设备n的任务部分在本地执行,任务卸载策略表示为a=(a1,a2,...,an),N表示视频监控设备的总数量,K表示任务的总数量,un,k表示视频监控设备n请求任务k,sk表示任务un,k的数据量,单位为bit,wk表示任务un,k请求的计算资源数量,以每bit的CPU周期数表示,即完成该任务需要的CPU周期总数,Dn表示视频监控设备n的任务完成截止时间,ce表示边缘服务器的缓存大小,cs表示边缘服务器的计算能力,
Figure BDA0003969564480000031
表示分配给视频监控设备n的CPU计算能力,Tn,k表示总执行时间,/>
Figure BDA0003969564480000032
表示本地执行时间,/>
Figure BDA0003969564480000033
表示视频监控设备n的CPU计算能力,/>
Figure BDA0003969564480000034
表示任务在边缘服务器上的处理时间,/>
Figure BDA0003969564480000035
表示任务上传时间,
Figure BDA0003969564480000036
表示边缘服务器执行任务的时间,rn表示视频监控设备n的上传数据速率,Pn表示视频监控设备n的发送功率,Hn表示视频监控设备n与边缘服务器间的信道增益,B和σ表示预设常数,/>
Figure BDA0003969564480000037
表示本地能耗代价,En,k表示总能耗代价,k表示能量因子,/>
Figure BDA0003969564480000038
表示传输能耗代价,C1表示任务的数据量不能大于边缘服务器的缓存能力,C2表示卸载任务的总的资源请求不能大于边缘服务器的计算能力,C3表示视频监控设备n的任务执行需在截止时间前完成,C4表示任务缓存决策变量为二进制变量,C5表示任务是可分割的,可部分在本地执行,部分在边缘服务器上执行。
作为本发明的进一步改进,第一目标函数:
Figure BDA0003969564480000039
第二目标函数:
Figure BDA00039695644800000310
其中,f(a)表示第一目标函数,g(x)表示第二目标函数,
Figure BDA00039695644800000311
表示边缘服务器给定的任务缓存,/>
Figure BDA00039695644800000312
表示最优任务卸载策略。
作为本发明的进一步改进,利用免疫克隆算法对第一目标函数或第二目标函数进行迭代计算,得到最优任务卸载策略或最优任务缓存策略,包括:以任务的总数作为初始抗体种群;根据第一目标函数或第二目标函数计算初始抗体种群的第一抗体种群适应度值;根据第一抗体种群适应度值对任务进行排序后进行克隆,得到第一抗体种群;对第一抗体种群进行交叉和变异基因操作,得到第二抗体种群;将初始抗体种群与第二抗体种群合并,得到第三抗体种群;根据第一目标函数或第二目标函数计算第三抗体种群的第二抗体种群适应度值;基于第二抗体种群适应度值结合锦标赛选择规则选出下一代初始抗体种群,并迭代执行上述过程直至迭代次数达到预设次数时为止,输出最优任务卸载策略或最优任务缓存策略。
作为本发明的进一步改进,当迭代计算第一目标函数时,对第一抗体种群进行交叉操作表示为:
ch1=λ×parent2+(1-λ)×parent1;
ch2=λ×parent1+(1-λ)×parent2;
其中,λ为[0,1]区间的随机分布数,parent1、parent2表示第一抗体种群中的两个个体,ch1、ch2表示根据两个个体的线性组合生成的新的两个个体;
对第一抗体种群进行变异操作表示为:
V1=-0;
V2=1-v;
当λ>0.5时,对进行变异的基因执行以下操作:
Figure BDA0003969564480000041
Vnew=+Δv;
当λ<0.5时,对进行变异的基因执行以下操作:
Figure BDA0003969564480000042
Vnew=-Δv;
其中,pi表示当前进化数,p表示种群最大进化代数,v表示遗传算法被选中需要进行变异的基因,v取值范围为[0,1],Vnew表示进行变异得到的新的基因。
作为本发明的进一步改进,当迭代计算第二目标函数时,对第一抗体种群进行交叉操作包括:从第一抗体种群中随机选取两个个体,使用多点交叉,在该两个个体中随机设置多个交叉点,然后对该两个个体进行基因交换;
对第一抗体种群进行变异操作包括:从第一抗体种群中随机选取一个个体,在该个体中随机选取一个变异点进行变异操作。
根据本发明实施例的另一方面,提供了一种移动边缘计算任务卸载装置,其包括:计算模块,用于计算获取到的各个视频监控设备的任务的本地执行时间、本地能耗代价、任务传输至边缘服务器的传输能耗代价和任务在边缘服务器处理时的处理时间;构建模块,用于基于预设的任务缓存决策变量、任务卸载决策变量、本地执行时间、本地能耗代价、传输能耗代价、处理时间构建对任务缓存决策变量和任务卸载决策变量的约束条件;迭代模块,用于利用免疫克隆算法对约束条件进行迭代计算,得到最优任务缓存策略和最优任务卸载策略;分配模块,用于根据最优任务卸载策略对各个任务进行分配,并根据最优任务缓存策略确定需要进行缓存的目标任务并在目标任务执行后进行缓存。
根据本发明实施例的另一方面,提供了一种计算机设备,包括:处理器、存储器、通信接口和通信总线,处理器、存储器和通信接口通过通信总线完成相互间的通信;存储器用于存放至少一可执行指令,可执行指令使处理器执行如上述任意一项的移动边缘计算任务卸载方法的操作。
根据本发明实施例的又一方面,提供了一种计算机可读存储介质,存储介质中存储有至少一可执行指令,可执行指令在计算机设备/装置上运行时,使得计算机设备/装置执行如上述任意一项的移动边缘计算任务卸载方法的操作。
本发明的移动边缘计算任务卸载方法通过根据总执行时延和总能耗代价建立算法模型,将时延满足服务质量同时最小化视频监控设备能耗作为算法模型的目标,利用免疫克隆算法获取算法模型的最优解,该最优解即为综合考虑任务缓存问题和任务卸载问题后,得到的最佳的本地和边缘服务器任务占比策略,其引入任务缓存概念,综合考虑任务卸载问题和任务缓存问题,利用免疫克隆算法求解上述问题,最终得到的任务缓存策略和任务卸载策略能够在满足时延需求的同时最小化视频监控设备的总体能耗。
上述说明仅是本发明实施例技术方案的概述,为了能够更清楚了解本发明实施例的技术手段,而可依照说明书的内容予以实施,并且为了让本发明实施例的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
附图仅用于示出实施方式,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了本发明实施例提供的移动边缘计算任务卸载方法的流程示意图;
图2示出了本发明实施例步骤103的具体流程示意图;
图3示出了本发明实施例提供的移动边缘计算任务卸载装置的结构示意图;
图4示出了本发明实施例提供的计算机设备的结构示意图。
具体实施方式
下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。
智能视频分析技术,是一种基于目标行为的智能影像分析技术。区别于传统的移动侦测技术,智能视频分析首先将场景中背景和目标分离,识别出真正的目的,去除背景干扰(如树叶抖动、水面波浪、灯光变化),进而分析并追踪在摄像机场景内出现的目标行为。
移动边缘计算(Mobile Edge Computing,MEC)技术的核心思想是将云计算中部分的处理和存储能力迁移到网络边缘的设备中。从而可以使移动应用程序产生的及时数据通过附近的网络边缘服务器进行处理并将结果返回,而无需通过核心网和较远的云计算中心进行处理。
智能视频分析的移动边缘计算构建了一种基于边缘计算的视频图像处理技术,通过对视频图像进行预处理,去除图像冗余信息,使得部分或全部视频分析迁移到边缘处,这不仅极大地缓解了核心网的网络负担,同时也能明显的降低各种应用的网络延迟,提高视频分析的速度。因此,智能视频分析的移动边缘计算,研究的一个主要焦点是将计算密集型的任务卸载到MEC服务器中进行处理,以满足应用程序超低延时的需求。
任务卸载是指计算能力有限的用户设备将其不能完成的计算任务传送到MEC服务器中,由MEC服务器代替用户设备执行计算任务,当计算完成后将计算结果返回到用户设备内。目前已经有很多的工作研究MEC的卸载问题。
部分研究将时延作为优化目标,根据移动边缘计算卸载架构,设计计算资源分配策略,在计算任务的时延约束下,提高资源利用率。或者根据任务卸载决策问题进行建模,使之便于处理。或者将时延作为系统性能指标,提出合适的算法。部分研究将系统的时延与能耗进行综合考虑,解决方法也一般通过建模与算法。这些研究均主要分析MEC网络场景下将任务卸载到MEC上的时延以及能耗进而得到卸载策略。
当前智能视频分析技术的移动边缘计算中的任务卸载,主要分析MEC网络场景下将视频分析任务卸载到MEC服务器上的时延以及能耗进而得到卸载策略。在任务卸载的相关研究中,大部分研究均假设边缘服务器具有足够的计算和存储,然而实际情况,边缘服务器在计算和存储上均是有限制的,导致最终得出的任务卸载策略并非最佳,难以兼顾任务处理的时延需求和设备的总能耗需求,造成能耗损失或时延长。
图1示出了本发明移动边缘计算任务卸载方法一个实施例的流程图,该方法由计算机设备执行。如图1所示,该方法包括以下步骤:
步骤101:计算获取到的各个视频监控设备的任务的本地执行时间、本地能耗代价、任务传输至边缘服务器的传输能耗代价和任务在边缘服务器处理时的处理时间。
本实施例中,该移动边缘计算任务卸载方法应用于智能视频分析系统,该智能视频分析那个包括多个视频监控设备和一个边缘服务器组成。具体地,在获取到各个视频监控设备的拍摄的视频后,需要对这些视频进行各种智能分析任务,以获得各种数据信息。需要说明的是,各个视频监控设备的任务可以由视频监控设备本身执行,也可交由边缘服务器执行,当任务由视频监控设备本身执行时,即可计算得到任务的本地执行时间和本地能耗代价,而当任务上传至边缘服务器执行时,则可计算得到将任务上传至边缘服务器的传输能耗代价和边缘服务器处理该任务时的处理时间。
步骤102:基于预设的任务缓存决策变量、任务卸载决策变量、本地执行时间、本地能耗代价、传输能耗代价、处理时间构建对任务缓存决策变量和任务卸载决策变量的约束条件。
具体地,本实施例以任务缓存决策变量来表示任务是否需要进行缓存,以任务卸载决策变量来表示任务是在视频监控设备本身进行处理还是上传至边缘服务器进行处理,而根据约束条件建立的目的则是为了对任务缓存决策变量和任务卸载决策变量进行约束,以对任务缓存决策变量和任务卸载决策变量求取最优解。
其中,假设视频监控设备的数量是N,计算任务的数量为K,定义un,表示视频监控设备n请求任务k,利用三元组定义计算任务模型,将un,定义为un,={wk,sk,Dn},wk表示任务un,请求的计算资源数量,以每bit的CPU周期数表示,即完成该任务需要的CPU周期总数,sk表示任务un,的数据量,单位为bit,Dn表示视频监控设备n的任务完成截止时间,假设边缘服务器的缓存大小和计算能力分别为ce和cs。假设Hn表示视频监控设备n与边缘服务器间的信道增益,通常视频监控设备不发生移动,则信道增益为常量。Pn表示视频监控设备n的发送功率,则视频监控设备n的上传数据速率可定义为:
Figure BDA0003969564480000091
其中,rn表示视频监控设备n的上传数据速率,B和σ表示预设常数。
本实施例将任务分为本地任务和边缘服务器任务。对于本地任务计算,定义
Figure BDA0003969564480000092
为视频监控设备n的CPU计算能力,则任务unk的本地执行时间为:
Figure BDA0003969564480000093
其中,
Figure BDA0003969564480000094
表示本地执行时间。
单个CPU计算周期的能耗可表示为:ε=κf2,则在本地执行时的本地能耗代价为:
Figure BDA0003969564480000095
其中,
Figure BDA0003969564480000096
表示本地能耗代价,κ表示能量因子,大小取决于CPU芯片工艺。
对于边缘服务器上的任务计算,定义
Figure BDA0003969564480000097
为分配给视频监控设备n的CPU计算能力,此时任务执行时间包括视频监控设备卸载任务的时间和边缘服务器执行任务的时间,则任务在边缘服务器上的处理时间为:
Figure BDA0003969564480000098
其中,
Figure BDA0003969564480000099
表示任务在边缘服务器上的处理时间,/>
Figure BDA00039695644800000910
表示任务上传时间,/>
Figure BDA00039695644800000911
表示边缘服务器执行任务的时间。
若任务卸载至边缘服务器,视频监控设备的能耗仅为任务卸载时间通信能耗,因此,发送skbit的任务至边缘服务器时的传输能耗代价为:
Figure BDA00039695644800000912
需要理解的是,本实施例通过任务缓存和卸载可以在满足时延需求的同时降低视频监控设备的能耗。因此,在构建约束条件时,对于任务缓存问题,定义一个任务缓存决策变量xk∈{0,1},表示任务k是否在边缘服务器缓存,若是,xk=1,否则xk=0,因此,任务缓存策略可表示为x=(x1,x2,...,xk);对于任务卸载问题,定义任务卸载决策变量an∈[0,1],1表示视频监控设备n的任务在本地执行,0表示视频监控设备n的任务卸载至边缘服务器执行,0到1则表示视频监控设备n的任务部分an在本地执行,任务部分1-an在边缘服务器执行,任务卸载策略可表示为:a=(a1,a2,...,an)。
根据以上定义,考虑任务缓存、任务的本地和边缘服务器执行,视频监控设备n的任务k的总执行时间为:
Figure BDA0003969564480000101
总能耗代价为:
Figure BDA0003969564480000102
算法的目标是在确保服务质量的同时最小化视频监控设备的总能耗代价,问题可形式化为:
Figure BDA0003969564480000103
Figure BDA0003969564480000104
Figure BDA0003969564480000105
C3:Tn,≤Dn
C4:xk∈{0,1};
C5:an∈[0,1];
Figure BDA0003969564480000106
其中,C1表示任务的数据量不能大于边缘服务器的缓存能力,C2表示卸载任务的总的资源请求不能大于边缘服务器的计算能力,C3表示视频监控设备n的任务执行需在截止时间前完成,C4表示任务缓存决策变量为二进制变量,C5表示任务是可分割的,可部分在本地执行,部分在边缘服务器上执行。
步骤103:利用免疫克隆算法对约束条件进行迭代计算,得到最优任务缓存策略和最优任务卸载策略。
具体地,在构建好约束条件后,该约束条件即给定了两个问题:任务卸载问题:当给定边缘服务器的任务缓存,即x=x0时,问题转换为关于a的最优化问题,使用免疫克隆算法获取最优解a*。任务缓存问题:当a*固定时,问题转换为0-1整数规划问题。
具体地,如图2所示,步骤103具体包括:
步骤201:获取边缘服务器的任务缓存。
具体地,该任务缓存为边缘服务器能够提供的缓存大小。
步骤202:基于任务缓存和约束条件构建第一目标函数。
其中,第一目标函数:
Figure BDA0003969564480000111
f(a)表示第一目标函数,
Figure BDA0003969564480000112
表示边缘服务器给定的任务缓存。
步骤203:利用免疫克隆算法对第一目标函数进行迭代计算,得到最优任务卸载策略。
需要说明的是,在人工免疫系统中,抗体以受体的形式存在于细胞表面,抗原可与之选择性地反应,抗原与相应抗体受体相互刺激可导致细胞克隆性增殖。在整个过程中,人体免疫系统借助克隆使免疫细胞激活、分化和增殖,以此来增加抗体的数量,从而达到清除体内抗原的作用。克隆选择算法对优势群体进行克隆增殖,增殖后的群体进行基因操作生成新的种群,并对基因操作后的种群进行选择操作,最终达到优化的目的。不同抗体之间的目标函数值不同,即抗体抗原亲和度不同,为了使得更优的抗体拥有较大的克隆规模,在克隆之前对种群进行排序,克隆规模公式如下:
Figure BDA0003969564480000113
其中Mc代表克隆群体的总规模,round()是取整函数,M表示抗体的总数量,β为克隆系数,用来控制克隆的规模。亲和力越好的抗体,克隆的规模越大,可以使得亲和力好的个体中的优秀基因得以更好的保存和发展,以此来达到优化的目的。
对于克隆后的种群进行基因操作,假设原种群规模为m,在进行克隆操作之后的种群规模为l,对克隆群体进行基因操作之后,克隆种群的规模依然为l,将种群规模为l的原种群和进行基因操作规模为l的克隆种群合并,选出种群规模为n的下一代种群。最终的种群规模保持在n。
具体地,利用免疫克隆算法对第一目标函数进行迭代计算,得到最优任务卸载策略,包括:
1、以任务的总数作为初始抗体种群。
2、根据第一目标函数计算初始抗体种群的第一抗体种群适应度值。
3、根据第一抗体种群适应度值对任务进行排序后进行克隆,得到第一抗体种群。
4、对第一抗体种群进行交叉和变异基因操作,得到第二抗体种群。
具体地,当迭代计算第一目标函数时,对第一抗体种群进行交叉操作表示为:
ch1=λ×parent2+(1-λ)×parent1;
ch2=λ×parent1+(1-λ)×parent2;
其中,λ为[0,1]区间的随机分布数,parent1、parent2表示第一抗体种群中的两个个体,ch1、ch2表示根据两个个体的线性组合生成的新的两个个体;
对第一抗体种群进行变异操作表示为:
V1=-0;
V2=1-v;
当λ>0.5时,对进行变异的基因执行以下操作:
Figure BDA0003969564480000121
Vnew=+Δv;
当λ<0.5时,对进行变异的基因执行以下操作:
Figure BDA0003969564480000122
Vnew=-Δv;
其中,pi表示当前进化数,p表示种群最大进化代数,v表示遗传算法被选中需要进行变异的基因,v取值范围为[0,1],Vnew表示进行变异得到的新的基因。具体地,本实施例采用的是一种非均匀、自适应的变异操作。在进行变异操作时,遗传算法被选中需要进行变异的基因为v,v的取值范围为[bound1,bound2],根据移动边缘计算任务卸载问题,v对应于任务卸载策略问题中的a,顾取值范围为[0,1]。
5、将初始抗体种群与第二抗体种群合并,得到第三抗体种群。
6、根据第一目标函数计算第三抗体种群的第二抗体种群适应度值。
7、基于第二抗体种群适应度值结合锦标赛选择规则选出下一代初始抗体种群,并迭代执行上述过程直至迭代次数达到预设次数时为止,输出最优任务卸载策略。
具体地,该克隆选择算法对所有的抗体进行克隆,针对不同抗体在抗体群中的位置来确定抗体的克隆数量。
可以根据以上克隆免疫算法求得a的最优解,即最优的任务卸载策略。
步骤204:基于最优任务卸载策略和约束条件构建第二目标函数。
其中,第二目标函数:
Figure BDA0003969564480000131
g(x)表示第二目标函数,
Figure BDA0003969564480000132
表示最优任务卸载策略。
步骤205:利用免疫克隆算法对第二目标函数进行迭代计算,得到最优任务缓存策略。
具体地,利用免疫克隆算法对第二目标函数进行迭代计算,得到最优任务缓存策略,包括:
1、以任务的总数作为初始抗体种群。
2、根据第二目标函数计算初始抗体种群的第一抗体种群适应度值。
3、根据第一抗体种群适应度值对任务进行排序后进行克隆,得到第一抗体种群。
4、对第一抗体种群进行交叉和变异基因操作,得到第二抗体种群。
具体地,当迭代计算第二目标函数时,对第一抗体种群进行交叉操作包括:从第一抗体种群中随机选取两个个体,使用多点交叉,在该两个个体中随机设置多个交叉点,然后对该两个个体进行基因交换。
对第一抗体种群进行变异操作包括:从第一抗体种群中随机选取一个个体,在该个体中随机选取一个变异点进行变异操作。
5、将初始抗体种群与第二抗体种群合并,得到第三抗体种群;
6、根据第二目标函数计算第三抗体种群的第二抗体种群适应度值;
7、基于第二抗体种群适应度值结合锦标赛选择规则选出下一代初始抗体种群,并迭代执行上述过程直至迭代次数达到预设次数时为止,输出最优任务缓存策略。
步骤104:根据最优任务卸载策略对各个任务进行分配,并根据最优任务缓存策略确定需要进行缓存的目标任务并在目标任务执行后进行缓存。
具体地,在得到最优任务缓存策略和最有任务卸载策略后,根据任务卸载策略将任务分配给自身或边缘服务器进行执行,并在没执行完一个任务时,根据最优任务缓存策略确认该任务是否需要进行缓存,若需要则在该任务执行完成之后,将该任务以及该任务的执行结果缓存,当再次执行相同的任务时,直接读取边缘服务器缓存中存储的对应任务的执行结果并返回视频监控设备。
本发明实施例通过根据总执行时延和总能耗代价建立算法模型,将时延满足服务质量同时最小化视频监控设备能耗作为算法模型的目标,利用免疫克隆算法获取算法模型的最优解,该最优解即为综合考虑任务缓存问题和任务卸载问题后,得到的最佳的本地和边缘服务器任务占比策略,其引入任务缓存概念,综合考虑任务卸载问题和任务缓存问题,利用免疫克隆算法求解上述问题,最终得到的任务缓存策略和任务卸载策略能够在满足时延需求的同时最小化视频监控设备的总体能耗。
图3示出了本发明移动边缘计算任务卸载装置实施例的结构示意图。如图3所示,该移动边缘计算任务卸载装置300包括:计算模块301、构建模块302、迭代模块303和分配模块304。
计算模块301,用于计算获取到的各个视频监控设备的任务的本地执行时间、本地能耗代价、任务传输至边缘服务器的传输能耗代价和任务在边缘服务器处理时的处理时间;
构建模块302,用于基于预设的任务缓存决策变量、任务卸载决策变量、本地执行时间、本地能耗代价、传输能耗代价、处理时间构建对任务缓存决策变量和任务卸载决策变量的约束条件;
迭代模块303,用于利用免疫克隆算法对约束条件进行迭代计算,得到最优任务缓存策略和最优任务卸载策略;
分配模块304,用于根据最优任务卸载策略对各个任务进行分配,并根据最优任务缓存策略确定需要进行缓存的目标任务并在目标任务执行后进行缓存。
可选地,迭代模块303执行利用免疫克隆算法对约束条件进行迭代计算,得到最优任务缓存策略和最优任务卸载策略的操作,包括:获取边缘服务器的任务缓存;基于任务缓存和约束条件构建第一目标函数;利用免疫克隆算法对第一目标函数进行迭代计算,得到最优任务卸载策略;基于最优任务卸载策略和约束条件构建第二目标函数;利用免疫克隆算法对第二目标函数进行迭代计算,得到最优任务缓存策略。
可选地,约束条件表示为:
Figure BDA0003969564480000151
Figure BDA0003969564480000152
Figure BDA0003969564480000153
C3:Tn,≤Dn
C4:xk∈{0,1};
C5:an∈[0,1];
Figure BDA0003969564480000161
Figure BDA0003969564480000162
Figure BDA0003969564480000163
Figure BDA0003969564480000164
Figure BDA0003969564480000165
Figure BDA0003969564480000166
/>
Figure BDA0003969564480000167
Figure BDA0003969564480000168
其中,x表示任务缓存策略,xk表示预先定义的任务缓存决策变量,xk∈{0,1},表示任务k是否在边缘服务器缓存,若是,xk=1,否则xk=0,任务缓存策略表示为x=(x1,x2,...,xk),a表示任务卸载策略,an表示预先定义的任务卸载决策变量,an∈[0,1],1表示视频监控设备n的任务在本地执行,0表示视频监控设备n的任务卸载至边缘服务器执行,0到1则表示视频监控设备n的任务部分在本地执行,任务卸载策略表示为a=(a1,a2,...,an),N表示视频监控设备的总数量,K表示任务的总数量,un,k表示视频监控设备n请求任务k,sk表示任务un,k的数据量,单位为bit,wk表示任务un,k请求的计算资源数量,以每bit的CPU周期数表示,即完成该任务需要的CPU周期总数,Dn表示视频监控设备n的任务完成截止时间,ce表示边缘服务器的缓存大小,cs表示边缘服务器的计算能力,
Figure BDA0003969564480000169
表示分配给视频监控设备n的CPU计算能力,Tn,k表示总执行时间,/>
Figure BDA00039695644800001610
表示本地执行时间,/>
Figure BDA00039695644800001611
表示视频监控设备n的CPU计算能力,/>
Figure BDA00039695644800001612
表示任务在边缘服务器上的处理时间,/>
Figure BDA00039695644800001613
表示任务上传时间,
Figure BDA00039695644800001614
表示边缘服务器执行任务的时间,rn表示视频监控设备n的上传数据速率,Pn表示视频监控设备n的发送功率,Hn表示视频监控设备n与边缘服务器间的信道增益,B和σ表示预设常数,/>
Figure BDA00039695644800001615
表示本地能耗代价,En,k表示总能耗代价,k表示能量因子,/>
Figure BDA0003969564480000171
表示传输能耗代价,C1表示任务的数据量不能大于边缘服务器的缓存能力,C2表示卸载任务的总的资源请求不能大于边缘服务器的计算能力,C3表示视频监控设备n的任务执行需在截止时间前完成,C4表示任务缓存决策变量为二进制变量,C5表示任务是可分割的,可部分在本地执行,部分在边缘服务器上执行。
可选地,第一目标函数:
Figure BDA0003969564480000172
第二目标函数:
Figure BDA0003969564480000173
其中,f(a)表示第一目标函数,g(x)表示第二目标函数,
Figure BDA0003969564480000174
表示边缘服务器给定的任务缓存,/>
Figure BDA0003969564480000175
表示最优任务卸载策略。
可选地,迭代模块303执行利用免疫克隆算法对第一目标函数或第二目标函数进行迭代计算,得到最优任务卸载策略或最优任务缓存策略的操作,包括:以任务的总数作为初始抗体种群;根据第一目标函数或第二目标函数计算初始抗体种群的第一抗体种群适应度值;根据第一抗体种群适应度值对任务进行排序后进行克隆,得到第一抗体种群;对第一抗体种群进行交叉和变异基因操作,得到第二抗体种群;将初始抗体种群与第二抗体种群合并,得到第三抗体种群;根据第一目标函数或第二目标函数计算第三抗体种群的第二抗体种群适应度值;基于第二抗体种群适应度值结合锦标赛选择规则选出下一代初始抗体种群,并迭代执行上述过程直至迭代次数达到预设次数时为止,输出最优任务卸载策略或最优任务缓存策略。
可选地,当迭代计算第一目标函数时,对第一抗体种群进行交叉操作表示为:
ch1=λ×parent2+(1-λ)×parent1;
ch2=λ×parent1+(1-λ)×parent2;
其中,λ为[0,1]区间的随机分布数,parent1、parent2表示第一抗体种群中的两个个体,ch1、ch2表示根据两个个体的线性组合生成的新的两个个体;
对第一抗体种群进行变异操作表示为:
V1=-0;
V2=1-v;
当λ>0.5时,对进行变异的基因执行以下操作:
Figure BDA0003969564480000181
Vnew=+Δv;
当λ<0.5时,对进行变异的基因执行以下操作:
Figure BDA0003969564480000182
Vnew=-Δv;
其中,pi表示当前进化数,p表示种群最大进化代数,v表示遗传算法被选中需要进行变异的基因,v取值范围为[0,1],Vnew表示进行变异得到的新的基因。
可选地,当迭代计算第二目标函数时,对第一抗体种群进行交叉操作包括:从第一抗体种群中随机选取两个个体,使用多点交叉,在该两个个体中随机设置多个交叉点,然后对该两个个体进行基因交换;对第一抗体种群进行变异操作包括:从第一抗体种群中随机选取一个个体,在该个体中随机选取一个变异点进行变异操作。
关于上述实施例移动边缘计算任务卸载装置中各模块实现技术方案的其他细节,可参见上述实施例中的移动边缘计算任务卸载方法中的描述,此处不再赘述。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
图4示出了本发明计算机设备实施例的结构示意图,本发明具体实施例并不对计算机设备的具体实现做限定。
如图4所示,该计算机设备可以包括:处理器(processor)502、通信接口(Communications Interface)504、存储器(memory)506、以及通信总线508。
其中:处理器502、通信接口504、以及存储器506通过通信总线508完成相互间的通信。通信接口504,用于与其它设备比如UE或其它服务器等的网元通信。处理器502,用于执行程序510,具体可以执行上述用于移动边缘计算任务卸载方法实施例中的相关步骤。
具体地,程序510可以包括程序代码,该程序代码包括计算机可执行指令。
处理器502可能是中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。计算机设备包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个CPU;也可以是不同类型的处理器,如一个或多个CPU以及一个或多个ASIC。
存储器506,用于存放程序510。存储器506可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
程序510具体可以被处理器502调用使计算机设备执行以下操作:
计算获取到的各个视频监控设备的任务的本地执行时间、本地能耗代价、任务传输至边缘服务器的传输能耗代价和任务在边缘服务器处理时的处理时间;
基于预设的任务缓存决策变量、任务卸载决策变量、本地执行时间、本地能耗代价、传输能耗代价、处理时间构建对任务缓存决策变量和任务卸载决策变量的约束条件;
利用免疫克隆算法对约束条件进行迭代计算,得到最优任务缓存策略和最优任务卸载策略;
根据最优任务卸载策略对各个任务进行分配,并根据最优任务缓存策略确定需要进行缓存的目标任务并在目标任务执行后进行缓存。
本发明实施例提供了一种计算机可读存储介质,所述存储介质存储有至少一可执行指令,该可执行指令在计算机设备上运行时,使得所述计算机设备/装置执行上述任意方法实施例中的移动边缘计算任务卸载方法。
可执行指令具体可以用于使得计算机设备执行以下操作:
计算获取到的各个视频监控设备的任务的本地执行时间、本地能耗代价、任务传输至边缘服务器的传输能耗代价和任务在边缘服务器处理时的处理时间;
基于预设的任务缓存决策变量、任务卸载决策变量、本地执行时间、本地能耗代价、传输能耗代价、处理时间构建对任务缓存决策变量和任务卸载决策变量的约束条件;
利用免疫克隆算法对约束条件进行迭代计算,得到最优任务缓存策略和最优任务卸载策略;
根据最优任务卸载策略对各个任务进行分配,并根据最优任务缓存策略确定需要进行缓存的目标任务并在目标任务执行后进行缓存。
在此提供的算法或显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明实施例也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本发明并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明实施例的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。上述实施例中的步骤,除有特殊说明外,不应理解为对执行顺序的限定。

Claims (10)

1.一种移动边缘计算任务卸载方法,其特征在于,包括:
计算获取到的各个视频监控设备的任务的本地执行时间、本地能耗代价、所述任务传输至边缘服务器的传输能耗代价和任务在所述边缘服务器处理时的处理时间;
基于预设的任务缓存决策变量、任务卸载决策变量、所述本地执行时间、所述本地能耗代价、所述传输能耗代价、所述处理时间构建对所述任务缓存决策变量和所述任务卸载决策变量的约束条件;
利用免疫克隆算法对所述约束条件进行迭代计算,得到最优任务缓存策略和最优任务卸载策略;
根据所述最优任务卸载策略对各个任务进行分配,并根据所述最优任务缓存策略确定需要进行缓存的目标任务并在所述目标任务执行后进行缓存。
2.根据权利要求1所述的移动边缘计算任务卸载方法,其特征在于,所述利用免疫克隆算法对所述约束条件进行迭代计算,得到最优任务缓存策略和最优任务卸载策略,包括:
获取所述边缘服务器的任务缓存;
基于所述任务缓存和所述约束条件构建第一目标函数;
利用所述免疫克隆算法对所述第一目标函数进行迭代计算,得到所述最优任务卸载策略;
基于所述最优任务卸载策略和所述约束条件构建第二目标函数;
利用所述免疫克隆算法对所述第二目标函数进行迭代计算,得到所述最优任务缓存策略。
3.根据权利要求2所述的移动边缘计算任务卸载方法,其特征在于,所述约束条件表示为:
Figure FDA0003969564470000021
C1:
Figure FDA0003969564470000022
C2:
Figure FDA0003969564470000023
C3:Tn,k≤Dn
C4:xk∈{0,1};
C5:an∈[0,1];
Figure FDA0003969564470000024
k=K;
Figure FDA0003969564470000025
Figure FDA0003969564470000026
Figure FDA0003969564470000027
Figure FDA0003969564470000028
Figure FDA0003969564470000029
Figure FDA00039695644700000210
Figure FDA00039695644700000211
其中,x表示任务缓存策略,xk表示预先定义的任务缓存决策变量,xk∈{0,1},表示任务k是否在所述边缘服务器缓存,若是,xk=1,否则xk=0,所述任务缓存策略表示为x=(x1,x2,...,xk),a表示任务卸载策略,an表示预先定义的任务卸载决策变量,an∈[0,1],1表示视频监控设备n的任务在本地执行,0表示视频监控设备n的任务卸载至边缘服务器执行,0到1则表示视频监控设备n的任务部分在本地执行,所述任务卸载策略表示为a=(a1,a2,...,an),N表示所述视频监控设备的总数量,K表示所述任务的总数量,un,k表示视频监控设备n请求任务k,sk表示任务un,k的数据量,单位为bit,wk表示任务un,k请求的计算资源数量,以每bit的CPU周期数表示,即完成该任务需要的CPU周期总数,Dn表示视频监控设备n的任务完成截止时间,ce表示所述边缘服务器的缓存大小,cs表示所述边缘服务器的计算能力,
Figure FDA0003969564470000031
表示分配给视频监控设备n的CPU计算能力,Tn,k表示总执行时间,/>
Figure FDA0003969564470000032
表示所述本地执行时间,/>
Figure FDA0003969564470000033
表示视频监控设备n的CPU计算能力,/>
Figure FDA0003969564470000034
表示任务在边缘服务器上的处理时间,/>
Figure FDA0003969564470000035
表示任务上传时间,/>
Figure FDA0003969564470000036
表示边缘服务器执行任务的时间,rn表示视频监控设备n的上传数据速率,Pn表示视频监控设备n的发送功率,Hn表示视频监控设备n与边缘服务器间的信道增益,B和σ表示预设常数,/>
Figure FDA0003969564470000037
表示所述本地能耗代价,En,k表示总能耗代价,K表示能量因子,/>
Figure FDA0003969564470000038
表示所述传输能耗代价,C1表示任务的数据量不能大于边缘服务器的缓存能力,C2表示卸载任务的总的资源请求不能大于边缘服务器的计算能力,C3表示视频监控设备n的任务执行需在截止时间前完成,C4表示任务缓存决策变量为二进制变量,C5表示任务是可分割的,可部分在本地执行,部分在边缘服务器上执行。
4.根据权利要求3所述的移动边缘计算任务卸载方法,其特征在于,所述第一目标函数:
Figure FDA0003969564470000039
所述第二目标函数:
Figure FDA00039695644700000310
其中,f(a)表示所述第一目标函数,g(x)表示所述第二目标函数,
Figure FDA00039695644700000311
表示边缘服务器给定的任务缓存,/>
Figure FDA00039695644700000312
表示所述最优任务卸载策略。
5.根据权利要求2所述的移动边缘计算任务卸载方法,其特征在于,利用免疫克隆算法对所述第一目标函数或第二目标函数进行迭代计算,得到所述最优任务卸载策略或所述最优任务缓存策略,包括:
以所述任务的总数作为初始抗体种群;
根据所述第一目标函数或所述第二目标函数计算所述初始抗体种群的第一抗体种群适应度值;
根据所述第一抗体种群适应度值对所述任务进行排序后进行克隆,得到第一抗体种群;
对所述第一抗体种群进行交叉和变异基因操作,得到第二抗体种群;
将所述初始抗体种群与所述第二抗体种群合并,得到第三抗体种群;
根据所述第一目标函数或所述第二目标函数计算所述第三抗体种群的第二抗体种群适应度值;
基于所述第二抗体种群适应度值结合锦标赛选择规则选出下一代初始抗体种群,并迭代执行上述过程直至迭代次数达到预设次数时为止,输出所述最优任务卸载策略或所述最优任务缓存策略。
6.根据权利要求5所述的移动边缘计算任务卸载方法,其特征在于,当迭代计算所述第一目标函数时,对所述第一抗体种群进行交叉操作表示为:
child1=λ×parent2+(1-λ)×parent1;
child2=λ×parent1+(1-λ)×parent2;
其中,λ为[0,1]区间的随机分布数,parent1、parent2表示所述第一抗体种群中的两个个体,child1、child2表示根据所述两个个体的线性组合生成的新的两个个体;
对所述第一抗体种群进行变异操作表示为:
V1=v-0;
V2=1-v;
当λ>0.5时,对进行变异的基因执行以下操作:
Figure FDA0003969564470000041
Vnew=v+Δv;
当λ<0.5时,对进行变异的基因执行以下操作:
Figure FDA0003969564470000042
Vnew=v-Δv;
其中,pi表示当前进化数,p表示种群最大进化代数,v表示遗传算法被选中需要进行变异的基因,v取值范围为[0,1],Vnew表示进行变异得到的新的基因。
7.根据权利要求5所述的移动边缘计算任务卸载方法,其特征在于,当迭代计算所述第二目标函数时,对所述第一抗体种群进行交叉操作包括:
从所述第一抗体种群中随机选取两个个体,使用多点交叉,在该两个个体中随机设置多个交叉点,然后对该两个个体进行基因交换;
对所述第一抗体种群进行变异操作包括:
从所述第一抗体种群中随机选取一个个体,在该个体中随机选取一个变异点进行变异操作。
8.一种移动边缘计算任务卸载装置,其特征在于,其包括:
计算模块,用于计算获取到的各个视频监控设备的任务的本地执行时间、本地能耗代价、所述任务传输至边缘服务器的传输能耗代价和任务在所述边缘服务器处理时的处理时间;
构建模块,用于基于预设的任务缓存决策变量、任务卸载决策变量、所述本地执行时间、所述本地能耗代价、所述传输能耗代价、所述处理时间构建对所述任务缓存决策变量和所述任务卸载决策变量的约束条件;
迭代模块,用于利用免疫克隆算法对所述约束条件进行迭代计算,得到最优任务缓存策略和最优任务卸载策略;
分配模块,用于根据所述最优任务卸载策略对各个任务进行分配,并根据所述最优任务缓存策略确定需要进行缓存的目标任务并在所述目标任务执行后进行缓存。
9.一种计算机设备,其特征在于,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如权利要求1-7任意一项所述的移动边缘计算任务卸载方法的操作。
10.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一可执行指令,所述可执行指令在计算机设备上运行时,使得计算机设备执行如权利要求1-7任意一项所述的移动边缘计算任务卸载方法的操作。
CN202211507176.7A 2022-11-29 2022-11-29 移动边缘计算任务卸载方法、装置、设备及存储介质 Pending CN116263681A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211507176.7A CN116263681A (zh) 2022-11-29 2022-11-29 移动边缘计算任务卸载方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211507176.7A CN116263681A (zh) 2022-11-29 2022-11-29 移动边缘计算任务卸载方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN116263681A true CN116263681A (zh) 2023-06-16

Family

ID=86723733

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211507176.7A Pending CN116263681A (zh) 2022-11-29 2022-11-29 移动边缘计算任务卸载方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN116263681A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116541153A (zh) * 2023-07-06 2023-08-04 南昌工程学院 边缘计算的任务调度方法、系统、可读存储介质及计算机
CN117032832A (zh) * 2023-08-25 2023-11-10 重庆邮电大学 一种基于移动边缘计算的最小化任务调用成本卸载方法
CN117873689A (zh) * 2024-03-11 2024-04-12 浪潮计算机科技有限公司 一种任务分配方法、装置、设备和计算机可读存储介质
CN117873689B (zh) * 2024-03-11 2024-05-31 浪潮计算机科技有限公司 一种任务分配方法、装置、设备和计算机可读存储介质

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116541153A (zh) * 2023-07-06 2023-08-04 南昌工程学院 边缘计算的任务调度方法、系统、可读存储介质及计算机
CN116541153B (zh) * 2023-07-06 2023-10-03 南昌工程学院 边缘计算的任务调度方法、系统、可读存储介质及计算机
CN117032832A (zh) * 2023-08-25 2023-11-10 重庆邮电大学 一种基于移动边缘计算的最小化任务调用成本卸载方法
CN117032832B (zh) * 2023-08-25 2024-03-08 重庆邮电大学 一种基于移动边缘计算的最小化任务调用成本卸载方法
CN117873689A (zh) * 2024-03-11 2024-04-12 浪潮计算机科技有限公司 一种任务分配方法、装置、设备和计算机可读存储介质
CN117873689B (zh) * 2024-03-11 2024-05-31 浪潮计算机科技有限公司 一种任务分配方法、装置、设备和计算机可读存储介质

Similar Documents

Publication Publication Date Title
CN113950066B (zh) 移动边缘环境下单服务器部分计算卸载方法、系统、设备
CN116263681A (zh) 移动边缘计算任务卸载方法、装置、设备及存储介质
WO2021143883A1 (zh) 神经网络的自适应搜索方法及装置
WO2022171066A1 (zh) 基于物联网设备的任务分配方法、网络训练方法及装置
CN113037800B (zh) 作业调度方法以及作业调度装置
CN112685138B (zh) 云环境下基于多种群混合智能优化的多工作流调度方法
CN114638167A (zh) 基于多智能体强化学习的高性能集群资源公平分配方法
CN108170861B (zh) 一种基于动态规划的分布式数据库系统协同优化方法
CN113867843A (zh) 一种基于深度强化学习的移动边缘计算任务卸载方法
CN113128681A (zh) 一种多边缘设备辅助的通用cnn推理加速系统
CN115714820A (zh) 一种分布式的微服务调度优化方法
Chen et al. A3C-based and dependency-aware computation offloading and service caching in digital twin edge networks
CN116489708B (zh) 面向元宇宙的云边端协同的移动边缘计算任务卸载方法
US20230143270A1 (en) Apparatus and method with scheduling
CN115185660A (zh) Mar任务在多接入边缘计算中的卸载和缓存放置方法及系统
CN112598112B (zh) 一种基于图神经网络的资源调度方法
CN113747504A (zh) 多接入边缘计算联合任务卸载和资源分配的方法及系统
Yadav E-MOGWO Algorithm for Computation Offloading in Fog Computing.
CN113705801A (zh) 一种神经网络模型的训练装置、方法及相关设备
CN116188239B (zh) 多请求并发的gpu图随机游走优化实现方法及系统
Zhang et al. Dag scheduling with communication delays based on graph convolutional neural network
CN117707795B (zh) 基于图的模型划分的边端协同推理方法及系统
CN116820730B (zh) 多引擎计算系统的任务调度方法、装置及存储介质
CN117496375B (zh) 面向遥感基础模型的异构npu训练方法及系统
CN113485718B (zh) 面向边云协同系统中的上下文感知AIoT应用程序部署方法

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