CN113220311A - 一种移动感知的云边端协同应用卸载方法、系统及其存储介质 - Google Patents
一种移动感知的云边端协同应用卸载方法、系统及其存储介质 Download PDFInfo
- Publication number
- CN113220311A CN113220311A CN202110407235.2A CN202110407235A CN113220311A CN 113220311 A CN113220311 A CN 113220311A CN 202110407235 A CN202110407235 A CN 202110407235A CN 113220311 A CN113220311 A CN 113220311A
- Authority
- CN
- China
- Prior art keywords
- unloading
- time
- node
- target terminal
- terminal
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 44
- 238000003860 storage Methods 0.000 title claims abstract description 14
- 238000012417 linear regression Methods 0.000 claims abstract description 16
- 238000004364 calculation method Methods 0.000 claims description 34
- 238000012549 training Methods 0.000 claims description 10
- 239000013598 vector Substances 0.000 claims description 10
- 230000007246 mechanism Effects 0.000 claims description 8
- 230000005540 biological transmission Effects 0.000 claims description 7
- 230000033001 locomotion Effects 0.000 claims description 4
- 238000000605 extraction Methods 0.000 claims description 3
- 230000008569 process Effects 0.000 claims description 3
- 238000012163 sequencing technique Methods 0.000 claims description 3
- 238000005265 energy consumption Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 12
- 238000004590 computer program Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 230000008901 benefit Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 230000007547 defect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000013145 classification model Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000013604 expression vector Substances 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000010187 selection method Methods 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
- G06F8/62—Uninstallation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/329—Power saving characterised by the action undertaken by task scheduling
-
- 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/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
-
- 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/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- 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/5066—Algorithms for mapping a plurality of inter-dependent sub-tasks onto a plurality of physical CPUs
-
- 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/044—Recurrent networks, e.g. Hopfield 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
-
- 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)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开了一种移动感知的云边端协同应用卸载方法、系统及其存储介质,旨在解决现有技术中应用程序任务卸载成功率低、任务计算时间长等技术问题。其包括:获取目标终端的移动轨迹、终端任务集和云边端协同系统中所有资源节点的信息;根据获取的信息,一方面利用线性回归模型计算每个子任务在每个资源节点的卸载时间,另一方面利用SGAN模型计算移动终端在每个资源节点的逗留时间;根据卸载时间和逗留时间从所有资源节点中选取每个子任务的最优卸载节点,完成应用卸载。本发明能够有效提高任务的卸载成功率,缩短了终端计算任务的完成时间,减小了应用程序的能耗。
Description
技术领域
本发明涉及一种移动感知的云边端协同应用卸载方法、系统及其存储介质,属于边缘计算、云计算和物联网技术领域。
背景技术
随着物联网技术、人工智能、大数据的快速发展,云计算与边缘计算的弊端也逐渐显露出来。云端作为云计算中心,有着极强的计算能力,但是云端提供的服务不适用于传输数据大、时延要求高的应用;边缘侧有着独特的地理位置优势,可以不用考虑终端数据传输问题,但是其缺点在于作为终端接入层,其计算能力一般来说较低。云边端协同计算体系的提出为结合云计算、边缘计算的优势,弥补它们的不足提供了一种新的设计思路。同时,移动用户往往具有很高的移动性,在任务执行期间,当其移动设备移出边缘服务器的范围时,卸载的任务将失败,因此给任务成功卸载带来了很大的挑战。
自从云计算提出以来,不断的有学者为提高终端应用程序完成时间或缩短应用程序能耗提出了一系列任务卸载算法,这些算法大都是针对单一卸载目的地的,并且假设移动用户处于静止状态,这不符合现实的情况,在实际使用时效果有限。因此,如何准确分析用户的移动状态,并利用混合边缘云资源环境,最终减少响应时间和卸载开销成为云边端协同计算体系的核心问题。
发明内容
为了解决现有技术中应用程序任务卸载成功率低、任务计算时间长等问题,本发明提出了一种移动感知的云边端协同应用卸载方法、系统及其存储介质,充分结合云计算中心的计算资源充足、终端到网络边缘低时延等特性,并对移动用户的移动趋势进行分析、预测用户,实现任务卸载选择、缩短终端计算任务完成时间的效果。
为解决上述技术问题,本发明采用了如下技术手段:
第一方面,本发明提出了一种移动感知的云边端协同应用卸载方法,包括如下步骤:
获取目标终端的移动轨迹、终端任务集和云边端协同系统中所有资源节点的信息,所述终端任务集中包括多个子任务;
根据终端任务集和所有资源节点的信息,利用训练好的线性回归模型计算每个子任务在每个资源节点的卸载时间;
根据目标终端的移动轨迹和所有资源节点的信息,利用训练好的SGAN模型计算移动终端在每个资源节点的逗留时间;
根据卸载时间和逗留时间从所有资源节点中选取每个子任务的最优卸载节点,完成应用卸载。
结合第一方面,进一步的,所述子任务包括任务文件、任务文件大小、计算任务所需CPU资源量、计算任务所需内存资源量;所述资源节点包括本地服务器、边缘服务器和云端服务器;所述资源节点的信息包括资源节点的IP、端口号、CPU、内存、网络上下行带宽和资源节点服务范围。
结合第一方面,进一步的,每个子任务在每个资源节点的卸载时间的计算操作如下:
根据子任务的计算任务所需CPU资源量、计算任务所需内存资源量和资源节点的CPU、内存,利用预先构建的线性回归模型获得每个子任务在每个资源节点的任务计算时间;
根据任务计算时间、子任务的任务文件大小和资源节点的网络上下行带宽计算每个子任务在每个资源节点的卸载时间,计算公式如下:
其中,T卸载表示每个子任务在每个资源节点的卸载时间,Time表示每个子任务在每个资源节点的任务计算时间,Din表示子任务的任务文件大小,R表示资源节点与目标终端之间的传输带宽。
结合第一方面,进一步的,SGAN模型的训练方法包括如下步骤:
获取目标终端和其他终端的历史轨迹数据,所述历史轨迹数据包括目标终端和其他终端在历史时刻的坐标信息;
利用特征提取网络从目标终端和其他终端的历史轨迹数据中提取目标终端的轨迹特征集合;
基于目标终端的轨迹特征集合,利用注意力机制生成目标终端的影响力向量;
根据目标终端的历史轨迹数据和影响力向量,利用生成器生成多个生成轨迹,所述生成轨迹为历史轨迹对应的虚假未来运行轨迹;
利用鉴别器对目标终端的历史轨迹数据和生成轨迹进行真假鉴别,并将鉴别结果反馈到生成器;
通过生成器和鉴别器的极大极小博弈,获得训练好的SGAN模型。
结合第一方面,进一步的,所述轨迹特征集合包括目标终端与其他终端的欧氏距离、目标终端的余弦相似度、目标终端与其他终端的余弦相似度、目标终端与其他终端的最小距离。
结合第一方面,进一步的,计算移动终端在每个资源节点的逗留时间的过程为:
根据目标终端的移动轨迹,利用训练好的SGAN模型获得目标终端的未来运行轨迹;
根据资源节点服务范围和未来运行轨迹计算目标终端在每个资源节点的逗留时间。
结合第一方面,进一步的,针对终端任务集中的每个子任务,最优卸载节点的选取方法包括如下步骤:
比较每个资源节点的卸载时间和对应的逗留时间,当卸载时间小于逗留时间时,将该资源节点存入该子任务的可用节点集合;
根据卸载时间对可用节点集合中的资源节点进行排序,选择卸载时间最小的资源节点作为该子任务的最优卸载节点。
结合第一方面,进一步的,所述目标终端的移动轨迹包括当前时刻之前3.2s内目标终端的坐标信息。
第二方面,本发明提出了一种移动感知的云边端协同应用卸载系统,包括:
信息采集模块,用于获取目标终端的移动轨迹、终端任务集和云边端协同系统中所有资源节点的信息;
卸载计算模块,用于根据信息采集模块采集的信息,利用训练好的线性回归模型计算终端任务集中每个子任务在每个资源节点的卸载时间;
逗留计算模块,用于根据信息采集模块采集的信息,利用训练好的SGAN模型计算移动终端在每个资源节点的逗留时间;
卸载节点选择模块,用于根据卸载时间和逗留时间从所有资源节点中选取每个子任务的最优卸载节点;
卸载执行模块,用于将终端任务集中的子任务卸载到对应的最优卸载节点,完成应用卸载。
第三方面,本发明提出了一种存储一个或多个程序的计算机可读存储介质,所述一个或多个程序包括指令,所述指令当由计算设备执行时,使得所述计算设备执行本发明第一方面所述方法中的任一方法。
采用以上技术手段后可以获得以下优势:
本发明提出了一种移动感知的云边端协同应用卸载方法、系统及其存储介质,针对目标终端的计算任务,通过线性回归模型获得子任务在资源节点的卸载时间,同时考虑到目标终端的移动性,本发明采用SGAN模型分析目标终端的移动趋势,预测目标终端的未来运动轨迹,进而获得目标终端在每个资源节点的逗留时间,根据卸载时间和逗留时间即可准确选择每个子任务的最优卸载节点,能够有效提高任务的卸载成功率,利用边缘计算和云计算的各自特性,在多个节点、多任务同时计算的情况下极大地缩短了终端计算任务的完成时间,减小了应用程序的能耗。此外,本发明方法还能够较为简便的扩展到物联网场景中,无需增添硬件设施,具有较好的适用性。
附图说明
图1为本发明实施例中云边端协同系统的架构图;
图2为本发明一种移动感知的云边端协同应用卸载方法的步骤流程图;
图3为本发明实施例中云边端协同应用卸载方法的基本流程图;
图4为本发明实施例中线性回归模型的训练参数及拟合效果图;
图5为本发明实施例中SGAN模型的构造图;
图6为本发明实施例中注意力机制的示意图;
图7为本发明一种移动感知的云边端协同应用卸载系统的结构示意图;
图中,1是信息采集模块1、卸载计算模块2、逗留计算模块3、卸载节点选择模块4和卸载执行模块5。
具体实施方式
下面结合附图对本发明的技术方案作进一步说明:
本发明方法和系统应用于云边端协同计算体系中,如图1所示,该体系主要由终端、边缘服务器和云计算中心(云端服务器)三部分组成,终端一般代指计算、存储和电池能力受限的智能设备或传感设备;边缘服务器一般代指传统物联网中的网关,地理位置接近终端,并为终端提供网络接入功能,是终端最易获取计算等资源的节点,其计算能力小于云端;云计算中心拥有强大的计算能力与存储资源,距离终端地理位置较远,端到端往返时延较大。该协同计算架构主要功能是利用云端与边缘处的计算资源,缩短终端计算任务的完成时间。
为了充分缩短终端任务完成时间,需将一个复杂的计算任务按优先级或QoS级别进行粒度划分,划分成多个子任务,每个子任务可以被卸载到适当的节点。终端作为整个协同计算任务的发起点,可以通过本发明方法将多个子任务分配到网络边缘侧的多个网关或者云计算中心,卸载到云端的子任务以传输时间为代价换取较高的计算收益,而卸载到边缘服务器处的子任务则能够收获较快的响应时间,利用多节点并行处理机制最小化应用程序完成时间,而本地、边缘服务器和云端作为任务执行节点,负责完成计算任务。
本发明提出了一种移动感知的云边端协同应用卸载方法,如图2、3所示,具体包括如下步骤:
步骤A、获取目标终端的移动轨迹、终端任务集和云边端协同系统中所有资源节点的信息。目标终端的移动轨迹是由当前时刻之前一段时间内目标终端的坐标信息组成的轨迹,一般情况下,本发明以0.4秒为一帧,提前当前时刻前8帧的位置,即3.2s内的坐标信息,并根据前8帧位置获得后8帧的位置。终端任务集中包括多个子任务,每个子任务包括任务文件、任务文件大小、计算任务所需CPU资源量、计算任务所需内存资源量等内容。本发明中的资源节点包括本地服务器、边缘服务器和云端服务器,资源节点的信息包括资源节点的IP、端口号、CPU、内存、网络上下行带宽、资源节点服务范围、可用远端对象等。
本发明实施例中资源节点的信息如下所示:
步骤B、根据终端任务集和所有资源节点的信息,利用训练好的线性回归模型计算每个子任务在每个资源节点的卸载时间。
线性回归模型的输入为资源节点拥有的计算资源和计算该子任务所需要的资源,比如T_CPU、T_Mem、M_CPU、M_Mem,其中,T_CPU、T_Mem分别表示计算该子任务任务所需的CPU资源和内存资源(由程序分析器得到),M_CPU、M_Mem分别表示一个资源节点(MEC,云或本地)当前所拥有的的CPU和内存资源,输出为任务的计算时间。
在本发明实施例中,利用Google-cluster-2011-2数据集跟踪训练线性回归模型,该数据集是在一个拥有大约12.5k个云节点的集群上收集的,时间跨度为2011年5月以来的29天,是进行任务调度研究常用的数据集。本发明实施例选取了2000组数据进行模型训练,并随机选出一个预测值与标签值进行对比,在python 3.5Tensorflow和Keras的训练环境下完成模型训练,线性回归模型的训练参数及拟合效果如图4所示,epoch=50,loss=0.018,b=16.65,最终得到的预测值为9.321,标签值为9.3,预测值和标签值之间的误差很小。
完成线性回归模型训练后,利用训练好的模型进行卸载时间计算,具体操作如下:
步骤B01、根据子任务的计算任务所需CPU资源量、计算任务所需内存资源量和资源节点的CPU、内存,利用预先构建的线性回归模型获得每个子任务在每个资源节点的任务计算时间。
步骤B02、根据任务计算时间、子任务的任务文件大小和资源节点的网络上下行带宽计算每个子任务在每个资源节点的卸载时间,卸载时间等于任务计算时间加上任务传输时间,计算公式如下:
其中,T卸载表示每个子任务在每个资源节点的卸载时间,Time表示每个子任务在每个资源节点的任务计算时间,Din表示子任务的任务文件大小,R表示资源节点与目标终端之间的传输带宽。
步骤C、根据目标终端的移动轨迹和所有资源节点的信息,利用训练好的SGAN模型计算移动终端在每个资源节点的逗留时间。
为了根据行人的移动趋势和节点的服务范围预测移动终端的逗留时间,本发明采用了基于注意力机制的生成对抗网络模型,即Social GAN,具体构造如图5所示,SGAN模型主要包括生成器和鉴别器,生成器为LSTM编解码器,并在其中引入注意力机制;鉴别器为LSTM编码分类模型;生成器用来根据模型输入数据生成虚假数据,鉴别器用来判断数据真假。本发明通过生成对抗网络模型生成未来运动轨迹,并在生成器LSTM编码器输出端引入注意力机制学习行人间相互影响的权重。
SGAN模型的训练方法包括如下步骤:
a.获取目标终端和其他终端的历史轨迹数据,本发明中的其他终端指目标终端所处场景内的其他终端,历史轨迹数据包括目标终端和其他终端在历史时刻的坐标信息,根据一个终端在一段连续时刻的坐标信息可以得到该终端的一条历史轨迹,根据时间顺序可以对历史轨迹进行排序,进而可以根据时间先后得到相对的未来运行轨迹,比如:本发明采集当前时刻前一个月的历史轨迹数据,并以天为单位,利用每一天的历史轨迹数据得到终端的在该天的历史轨迹,一个月的历史轨迹数据可以得到30条历史轨迹,而第29天对应的历史轨迹可以作为第28天的未来运行轨迹。
在本发明实施例中,假设目标终端所处场景内的终端数量(即目标终端+其他终端)为N,则历史轨迹数据可以表示为[Xi,Yi],又可以细分为其中,Xi表示第i个终端的历史轨迹,Yi表示与Xi对应的第i个终端的未来运行轨迹,表示第i个终端在t时刻的真实坐标,表示第i个终端在t时刻对应的未来坐标,一般情况下,为t+1时刻的坐标,i=1,2,…,N。
b.利用特征提取网络从目标终端和其他终端的历史轨迹数据中提取目标终端的轨迹特征集合。假设目标终端为i,其他终端为j,j=1,2,…,N且j≠i,本发明选取4个特征来描述目标终端与其他终端的运行关系,如图6所示,4个特征分别为目标终端与其他终端的欧氏距离目标终端的余弦相似度目标终端与其他终端的余弦相似度目标终端与其他终端的最小距离其中,表示目标终端i的移动速度,表示其他终端j的移动速度,表示历史轨迹数据中目标终端i与其他终端j之间的最小距离。
c.利用LSTM编码器生成编码器表示向量h,基于目标终端的轨迹特征集合和编码器表示向量h,利用注意力机制生成目标终端的影响力向量。
d.根据目标终端的历史轨迹数据和影响力向量,利用生成器生成多个生成轨迹,具体的,对编码器表示向量h和目标终端的影响力向量进行加噪处理后输入到LSTM解码器,利用解码器生成与真实的历史轨迹对应的虚假未来运行轨迹
f.利用鉴别器对轨迹数据集中的数据进行真假鉴别,并将鉴别结果反馈到生成器,鉴别结果包括轨迹数据集中的每一条数据的真假情况,根据鉴别结果SGAN模型可以自动调整生成器和鉴别器的权重。
g.通过生成器和鉴别器的极大极小博弈,不断调整模型精度,最终获得训练好的SGAN模型。
移动终端在每个资源节点的逗留时间的计算操作如下:
步骤C01、根据目标终端的移动轨迹,利用训练好的SGAN模型获得目标终端的未来运行轨迹。
步骤C02、根据资源节点服务范围和未来运行轨迹计算目标终端在每个资源节点的逗留时间,本地和云计算中心的逗留时间视为无穷大。
步骤D、根据卸载时间和逗留时间从所有资源节点中选取每个子任务的最优卸载节点,完成应用卸载。
针对终端任务集中的每个子任务,最优卸载节点的选取方法的具体操作如下:
步骤D01、比较每个资源节点的卸载时间和对应的逗留时间,当卸载时间小于逗留时间时,将该资源节点存入该子任务的可用节点集合C。云计算中心和本地始终可用,直接放入集合C。
步骤D02、根据卸载时间对可用节点集合中的资源节点进行排序,选择卸载时间最小的资源节点作为该子任务的最优卸载节点。根据本发明的节点选择方法,本发明方法会优先选择边缘服务器进行任务计算,在边缘服务器都不符合要求的情况下,才会选择本地或云计算中心,这样有利于提高效率,缩短任务计算时间。
本发明还提出了一种移动感知的云边端协同应用卸载系统,如图7所示,主要包括信息采集模块1、卸载计算模块2、逗留计算模块3、卸载节点选择模块4和卸载执行模块5。
信息采集模块用于获取目标终端的移动轨迹、终端任务集和云边端协同系统中所有资源节点的信息,终端任务集中包括多个子任务,每个子任务包括任务文件、任务文件大小、计算任务所需CPU资源量、计算任务所需内存资源量等内容。本发明中的资源节点包括本地服务器、边缘服务器和云端服务器,资源节点的信息包括资源节点的IP、端口号、CPU、内存、网络上下行带宽、资源节点服务范围、可用远端对象等。卸载计算模块用于根据信息采集模块采集的信息,利用训练好的线性回归模型计算终端任务集中每个子任务在每个资源节点的卸载时间,卸载计算模块的具体操作与本发明方法的步骤B一致。逗留计算模块用于根据信息采集模块采集的信息,利用训练好的SGAN模型计算移动终端在每个资源节点的逗留时间,逗留计算模块的具体操作与本发明方法的步骤C一致。卸载节点选择模块用于根据卸载时间和逗留时间从所有资源节点中选取每个子任务的最优卸载节点,卸载节点选择模块的具体操作与本发明方法的步骤D一致。卸载执行模块用于将终端任务集中的子任务卸载到对应的最优卸载节点,完成应用卸载。
本发明还提出了一种存储一个或多个程序的计算机可读存储介质,其中,一个或多个程序包括指令,该指令当由计算设备执行时,使得计算设备执行本发明云边端协同应用卸载方法。
本发明不仅运用了云、边、端混合资源池,允许用户将移动任务分配给边缘服务器和云计算中心,利用了边缘计算和云计算的各自特性,同时还考虑到目标终端的移动性,利用SGAN模型预测目标终端的未来运动轨迹,因此本发明卸载方法更加符合实际,具有更好的实用性和适应性。本发明根据卸载时间和逗留时间即可准确选择每个子任务的最优卸载节点,能够有效提高任务的卸载成功率,在多个节点、多任务同时计算的情况下极大地缩短了终端计算任务的完成时间,减小了应用程序的能耗。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上仅为本发明的实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均包含在申请待批的本发明的权利要求范围之内。
Claims (10)
1.一种移动感知的云边端协同应用卸载方法,其特征在于,包括如下步骤:
获取目标终端的移动轨迹、终端任务集和云边端协同系统中所有资源节点的信息,所述终端任务集中包括多个子任务;
根据终端任务集和所有资源节点的信息,利用训练好的线性回归模型计算每个子任务在每个资源节点的卸载时间;
根据目标终端的移动轨迹和所有资源节点的信息,利用训练好的SGAN模型计算移动终端在每个资源节点的逗留时间;
根据卸载时间和逗留时间从所有资源节点中选取每个子任务的最优卸载节点,完成应用卸载。
2.根据权利要求1所述的一种移动感知的云边端协同应用卸载方法,其特征在于,所述子任务包括任务文件、任务文件大小、计算任务所需CPU资源量、计算任务所需内存资源量;所述资源节点包括本地服务器、边缘服务器和云端服务器;所述资源节点的信息包括资源节点的IP、端口号、CPU、内存、网络上下行带宽和资源节点服务范围。
4.根据权利要求1所述的一种移动感知的云边端协同应用卸载方法,其特征在于,SGAN模型的训练方法包括如下步骤:
获取目标终端和其他终端的历史轨迹数据,所述历史轨迹数据包括目标终端和其他终端在历史时刻的坐标信息;
利用特征提取网络从目标终端和其他终端的历史轨迹数据中提取目标终端的轨迹特征集合;
基于目标终端的轨迹特征集合,利用注意力机制生成目标终端的影响力向量;
根据目标终端的历史轨迹数据和影响力向量,利用生成器生成多个生成轨迹,所述生成轨迹为历史轨迹对应的虚假未来运行轨迹;
利用鉴别器对目标终端的历史轨迹数据和生成轨迹进行真假鉴别,并将鉴别结果反馈到生成器;
通过生成器和鉴别器的极大极小博弈,获得训练好的SGAN模型。
5.根据权利要求4所述的一种移动感知的云边端协同应用卸载方法,其特征在于,所述轨迹特征集合包括目标终端与其他终端的欧氏距离、目标终端的余弦相似度、目标终端与其他终端的余弦相似度、目标终端与其他终端的最小距离。
6.根据权利要求1或2所述的一种移动感知的云边端协同应用卸载方法,其特征在于,计算移动终端在每个资源节点的逗留时间的过程为:
根据目标终端的移动轨迹,利用训练好的SGAN模型获得目标终端的未来运行轨迹;
根据资源节点服务范围和未来运行轨迹计算目标终端在每个资源节点的逗留时间。
7.根据权利要求1所述的一种移动感知的云边端协同应用卸载方法,其特征在于,针对终端任务集中的每个子任务,最优卸载节点的选取方法包括如下步骤:
比较每个资源节点的卸载时间和对应的逗留时间,当卸载时间小于逗留时间时,将该资源节点存入该子任务的可用节点集合;
根据卸载时间对可用节点集合中的资源节点进行排序,选择卸载时间最小的资源节点作为该子任务的最优卸载节点。
8.根据权利要求6所述的一种移动感知的云边端协同应用卸载方法,其特征在于,所述目标终端的移动轨迹包括当前时刻之前3.2s内目标终端的坐标信息。
9.一种移动感知的云边端协同应用卸载系统,其特征在于,包括:
信息采集模块,用于获取目标终端的移动轨迹、终端任务集和云边端协同系统中所有资源节点的信息;
卸载计算模块,用于根据信息采集模块采集的信息,利用训练好的线性回归模型计算终端任务集中每个子任务在每个资源节点的卸载时间;
逗留计算模块,用于根据信息采集模块采集的信息,利用训练好的SGAN模型计算移动终端在每个资源节点的逗留时间;
卸载节点选择模块,用于根据卸载时间和逗留时间从所有资源节点中选取每个子任务的最优卸载节点;
卸载执行模块,用于将终端任务集中的子任务卸载到对应的最优卸载节点,完成应用卸载。
10.一种存储一个或多个程序的计算机可读存储介质,其特征在于,所述一个或多个程序包括指令,所述指令当由计算设备执行时,使得所述计算设备执行根据权利要求1~8所述的方法中的任一方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110407235.2A CN113220311B (zh) | 2021-04-15 | 2021-04-15 | 一种移动感知的云边端协同应用卸载方法、系统及其存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110407235.2A CN113220311B (zh) | 2021-04-15 | 2021-04-15 | 一种移动感知的云边端协同应用卸载方法、系统及其存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113220311A true CN113220311A (zh) | 2021-08-06 |
CN113220311B CN113220311B (zh) | 2022-09-16 |
Family
ID=77087455
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110407235.2A Active CN113220311B (zh) | 2021-04-15 | 2021-04-15 | 一种移动感知的云边端协同应用卸载方法、系统及其存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113220311B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117806806A (zh) * | 2024-02-28 | 2024-04-02 | 湖南科技大学 | 任务部分卸载调度方法、终端设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109684075A (zh) * | 2018-11-28 | 2019-04-26 | 深圳供电局有限公司 | 一种基于边缘计算和云计算协同进行计算任务卸载的方法 |
CN111309393A (zh) * | 2020-01-22 | 2020-06-19 | 南京邮电大学 | 一种云边端协同应用卸载算法 |
CN112004239A (zh) * | 2020-08-11 | 2020-11-27 | 中国科学院计算机网络信息中心 | 一种基于云边协同的计算卸载方法及系统 |
CN112492626A (zh) * | 2020-12-07 | 2021-03-12 | 南京邮电大学 | 一种移动用户计算任务的卸载方法 |
-
2021
- 2021-04-15 CN CN202110407235.2A patent/CN113220311B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109684075A (zh) * | 2018-11-28 | 2019-04-26 | 深圳供电局有限公司 | 一种基于边缘计算和云计算协同进行计算任务卸载的方法 |
CN111309393A (zh) * | 2020-01-22 | 2020-06-19 | 南京邮电大学 | 一种云边端协同应用卸载算法 |
CN112004239A (zh) * | 2020-08-11 | 2020-11-27 | 中国科学院计算机网络信息中心 | 一种基于云边协同的计算卸载方法及系统 |
CN112492626A (zh) * | 2020-12-07 | 2021-03-12 | 南京邮电大学 | 一种移动用户计算任务的卸载方法 |
Non-Patent Citations (1)
Title |
---|
吴正坤 等: "多边缘节点协同下的应用卸载算法研究", 《南京邮电大学学报》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117806806A (zh) * | 2024-02-28 | 2024-04-02 | 湖南科技大学 | 任务部分卸载调度方法、终端设备及存储介质 |
CN117806806B (zh) * | 2024-02-28 | 2024-05-17 | 湖南科技大学 | 任务部分卸载调度方法、终端设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113220311B (zh) | 2022-09-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Li et al. | Edge AI: On-demand accelerating deep neural network inference via edge computing | |
Zhang et al. | Learning-based energy-efficient data collection by unmanned vehicles in smart cities | |
Yu et al. | Intelligent edge: Leveraging deep imitation learning for mobile edge computation offloading | |
CN111932027B (zh) | 一种融合边缘设施的云服务综合调度优化系统及方法 | |
CN108594858B (zh) | 马尔科夫运动目标的无人机搜索方法及装置 | |
CN114584581B (zh) | 面向智慧城市物联网信物融合的联邦学习系统及联邦学习训练方法 | |
CN109635748B (zh) | 高分辨率影像中道路特征的提取方法 | |
CN115002123B (zh) | 基于移动边缘计算的快速适应任务卸载系统和方法 | |
Ebrahim et al. | A deep learning approach for task offloading in multi-UAV aided mobile edge computing | |
Qi et al. | Deep reinforcement learning based task scheduling in edge computing networks | |
Sun et al. | Edge learning with timeliness constraints: Challenges and solutions | |
Gao et al. | Fast adaptive task offloading and resource allocation via multiagent reinforcement learning in heterogeneous vehicular fog computing | |
CN113220311B (zh) | 一种移动感知的云边端协同应用卸载方法、系统及其存储介质 | |
Wang et al. | DeepNetQoE: Self-adaptive QoE optimization framework of deep networks | |
Hamrouni et al. | A photo-based mobile crowdsourcing framework for event reporting | |
CN116643877A (zh) | 算力资源调度方法、算力资源调度模型的训练方法和系统 | |
Muccini et al. | Leveraging machine learning techniques for architecting self-adaptive iot systems | |
Qadeer et al. | Deep-deterministic policy gradient based multi-resource allocation in edge-cloud system: a distributed approach | |
CN114169506A (zh) | 一种基于工业物联网平台的深度学习边缘计算系统框架 | |
Li et al. | A sequence and network embedding method for bus arrival time prediction using GPS trajectory data only | |
Zhang et al. | RTCoInfer: Real-time collaborative CNN inference for stream analytics on ubiquitous images | |
Huai et al. | Towards deep learning on resource-constrained robots: A crowdsourcing approach with model partition | |
Liu et al. | Efficient bus arrival time prediction based on spark streaming platform | |
Wang et al. | Research on mobility prediction in 5G and beyond for vertical industries | |
Chung et al. | ShadowTutor: Distributed partial distillation for mobile video DNN inference |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |