CN113342504B - 基于缓存的智能制造边缘计算任务调度方法及*** - Google Patents

基于缓存的智能制造边缘计算任务调度方法及*** Download PDF

Info

Publication number
CN113342504B
CN113342504B CN202110749833.8A CN202110749833A CN113342504B CN 113342504 B CN113342504 B CN 113342504B CN 202110749833 A CN202110749833 A CN 202110749833A CN 113342504 B CN113342504 B CN 113342504B
Authority
CN
China
Prior art keywords
data task
task
data
weight
cached
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.)
Active
Application number
CN202110749833.8A
Other languages
English (en)
Other versions
CN113342504A (zh
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.)
Xian University of Posts and Telecommunications
Original Assignee
Xian University of Posts and Telecommunications
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 Xian University of Posts and Telecommunications filed Critical Xian University of Posts and Telecommunications
Priority to CN202110749833.8A priority Critical patent/CN113342504B/zh
Publication of CN113342504A publication Critical patent/CN113342504A/zh
Application granted granted Critical
Publication of CN113342504B publication Critical patent/CN113342504B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • 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/5011Allocation 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/5022Mechanisms to release resources
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biophysics (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Physiology (AREA)
  • Genetics & Genomics (AREA)
  • Artificial Intelligence (AREA)
  • Biomedical Technology (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本发明公开了基于缓存的智能制造边缘计算任务调度方法及***,方法包括:获取数据任务;对数据任务划分隐私度;使用动态替换‑释放缓存机制对数据任务进行缓存;根据数据任务的隐私度和缓存机制建立数据任务总时延目标函数;采用遗传‑差分算法求解目标函数,获得最优的调度方案。本发明相对于已有技术在优化时延方面有着更好的性能,同时提高了数据任务的安全性,可满足不同任务的计算请求。本发明使用遗传‑差分算法求解任务调度策略,与其它调度算法相比,该算法在最小化时延方面具有更好的性能,同时所提出的动态替换‑释放缓存机制具有更高的命中率。

Description

基于缓存的智能制造边缘计算任务调度方法及***
技术领域
本发明涉及智能制造技术领域,特别涉及基于缓存的智能制造边缘计算任务调度方法及***。
背景技术
随着智能制造的迅速发展,终端设备数量呈现指数式增加,数百万个传感器和无线设备相互连接,其目的是实现智能制造的自动化与智能化结合。然而,智能制造中的设备具有特殊的要求,如终端与终端间低时延、处理海量数据、高效率、协调各种网络物理***等。现有设备计算能力受到限制,不适合复杂的制造过程和数据分析。近十年来,云计算平台得到了广泛的部署,这使得工业设备能够将密集的计算调度到具有丰富计算资源的云服务器上。但是对于低时延敏感型应用以及隐私型数据任务,云服务则很难实现。而边缘计算技术中的计算卸载技术可将终端设备的计算任务卸载至移动网络的边缘,能够完美匹配智能制造的需求。
无论是将智能制造的数据任务卸载至边缘服务器还是云服务器,都需要调度方案的总时延达到最低。由于各个边缘服务器以及云服务器的处理能力以及负载各不相同,因此不同的调度方案获得的最终总时延也不尽相同。然而,目前常用的任务调度方法性能并不能令人满意,普遍存在调度方案非最优或调度方案求解过程计算量大的问题。
发明内容
本发明实施例提供了基于缓存的智能制造边缘计算任务调度方法及***,用以解决现有技术中任务调度方法的性能达不到要求的问题。
一方面,本发明实施例提供了基于缓存的智能制造边缘计算任务调度方法,包括:
获取数据任务;
按照是否需要将数据任务调度至边缘服务器,对数据任务划分隐私度;
当数据任务未缓存并且需要缓存至边缘服务器时,如果边缘服务器的缓存已满,确定数据任务的权值,并与已缓存的数据任务中权值最小的数据任务的权值进行比较,如果数据任务的权值大于或等于已缓存的数据任务中权值最小的数据任务的权值,将已缓存的数据任务中权值最小的数据任务替换为数据任务;如果数据任务的权值小于已缓存的数据任务中权值最小的数据任务的权值,降低已缓存的数据任务中权值最小的数据任务的权值;如果边缘服务器的缓存未满,确定数据任务的权值,对数据任务直接进行缓存,并更新数据任务的权值,根据权值大小对数据任务进行排序;同时在一个周期内,自动释放已缓存的数据任务中权值最小的数据任务;
根据数据任务的隐私度和缓存情况建立数据任务的总时延目标函数;
采用遗传-差分算法求解总时延目标函数,获得最优的调度方案。
在一种可能的实现方式中,数据任务的隐私度可以为1或0,当隐私度为1时表示数据任务的隐私性强,需要调度至边缘服务器,当隐私度为0时表示数据任务的隐私性弱,可调度至边缘服务器或云服务器。
在一种可能的实现方式中,遗传-差分算法可以包括:将目标函数编码表示为遗传空间的个体;确定每个个体的适应度值;根据适应度值对个体进行选择操作;对选择的个体进行交叉处理;对交叉处理后的个体进行遗传-差分变异操作,其中,遗传-差分变异操作由遗传算法和差分进化算法的变异操作结合得到。
另一方面,本发明提供了智能制造中任务调度***,包括:
任务获取模块,用于获取数据任务;
隐私度划分模块,用于按照是否需要将数据任务调度至边缘服务器,对数据任务划分隐私度;
任务缓存模块,用于当数据任务未缓存并且需要缓存至边缘服务器时,如果边缘服务器的缓存已满,确定数据任务的权值,并与已缓存的数据任务中权值最小的数据任务的权值进行比较,如果数据任务的权值大于或等于已缓存的数据任务中权值最小的数据任务的权值,将已缓存的数据任务中权值最小的数据任务替换为数据任务;如果数据任务的权值小于已缓存的数据任务中权值最小的数据任务的权值,降低已缓存的数据任务中权值最小的数据任务的权值;如果边缘服务器的缓存未满,确定数据任务的权值,对数据任务直接进行缓存,并更新数据任务的权值,根据权值大小对数据任务进行排序;同时在一个周期内,自动释放已缓存的数据任务中权值最小的数据任务;
目标函数建立模块,用于根据数据任务的隐私度和缓存情况建立数据任务的总时延目标函数;
目标函数求解模块,用于采用遗传-差分算法求解总时延目标函数,获得最优的调度方案。
在一种可能的实现方式中,还可以包括:代理服务器;边缘服务器和代理服务器均设置在智能制造工厂中,且任务获取模块、隐私度划分模块、任务缓存模块、目标函数建立模块和目标函数求解模块均设置在代理服务器中;边缘服务器具有缓存能力,当设备端发出数据任务请求时,代理服务器负责查询该数据任务是否被缓存,如果已经被缓存,则边缘服务器将与数据任务对应的计算结果发送至设备端;如果数据任务没有被缓存,则代理服务器根据任务分类和边缘服务器的缓存空间判断是否加入缓存,同时根据隐私度把数据任务调度到边缘服务器或者云服务器,最后把计算结果返回至设备端。
另一方面,本发明实施例提供了一种电子设备,包括:
至少一个处理器;以及
与至少一个处理器通信连接的存储器;其中
存储器存储有可被至少一个处理器执行的计算机指令,计算机指令被至少一个处理器执行,以使至少一个处理器执行上述的方法。
另一方面,本发明实施例提供了一种计算机可读存储介质,计算机可读存储介质中存储有多条计算机指令,多条计算机指令用于使计算机执行上述的方法。
另一方面,本发明实施例提供了一种计算机程序产品,计算机程序被处理器执行时实现上述的方法。
本发明中的基于缓存的智能制造边缘计算任务调度方法及***,具有以下优点:
采用数据任务的动态替换-释放缓存机制,对边缘服务器的缓存进行充分利用,同时也提高了数据的访问速度。对于目标函数采用遗传-差分算法进行求解,在短时间内即可获得最优的调度方案,提高了任务调度方法的性能。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明第一实施例提供的基于缓存的智能制造边缘计算任务调度方法的流程图;
图2为本发明第二实施例提供的遗传-差分算法的流程图;
图3为本发明采用的缓存策略与现有的缓存策略的时延对比示意图;
图4为本发明采用的调度方案求解算法与现有的求解算法的时延对比示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
现有技术中,边缘计算作为继云计算之后的新计算方式,将计算下沉到靠近用户和数据源的网络边缘,具有时延低、安全性高、位置感知力强等特点。近年来,边缘计算通过在网络边缘存储和处理数据,为用户提供低时延和高性能的计算服务,以满足用户对时延敏感型任务的需求,如自动驾驶、虚拟现实等多个应用场景。此外在边缘计算***中使用缓存策略来存储动态数据程序被认为是一种降低计算时延,能量消耗和带宽成本的有效方法。当计算任务有着高度的相似性或者一致性时,把终端计算任务的输入或输出数据进行缓存,再次请求时可以直接调用缓存数据,降低了重复数据传输和任务计算的频率。在安全与隐私方面,公共的云服务器进行数据处理,可能面临着各种严峻的安全和隐私问题。边缘计算具有分布式部署、多元异构和低时延等自身特性,会带来一些特有的隐私保护优势,在数据的传输过程中,有效避免了恶意攻击与接收的问题。因此在任务调度过程中,降低时延并提高数据安全性变的十分重要。但是,智能制造中产生的数据任务具有数据量大、时延敏感的特点,现有的任务调度方法并不能很好的适应智能制造的上述需求,导致得到的调度方案存在各种各样的问题,不利于提高用户感受。
为了解决现有技术中的问题,本发明提供了基于缓存的智能制造边缘计算任务调度方法及***,方法包括:获取数据任务;对数据任务划分隐私度;使用动态替换-释放缓存机制对数据任务进行缓存;根据数据任务的隐私度和缓存机制建立数据任务总时延目标函数;采用遗传-差分算法求解目标函数,获得最优的调度方案。本发明相对于已有技术在优化时延方面有着更好的性能,同时提高了数据任务的安全性,可满足不同任务的计算请求。本发明使用遗传-差分算法求解任务调度策略,与其它调度算法相比,该算法在最小化时延方面具有更好的性能,同时所提出的动态替换-释放缓存机制具有更高的命中率。
图1为本发明实施例提供的基于缓存的智能制造边缘计算任务调度方法的流程示意图。本发明提供的基于缓存的智能制造边缘计算任务调度方法,包括:
S100、获取数据任务。
示例性地,在一个智能制造工厂的环境下,整个***的框架分为三层,分别为设备层、边缘层和云端层。设备层计算能力有限,只能对数据任务进行收集与整理。当数据任务需要计算时,可将其调度到边缘层或者云端层。在设备层有一组设备端的数据任务请求,每个数据任务相互独立且依次执行,表示为N={1,2,3...n}。边缘层由一组边缘服务器和一个代理服务器组成,边缘服务器的集合表示E={1,2,3...m},其主要负责数据任务的计算。代理服务器负责对数据任务进行分类、分配以及隐私度的划分,根据数据任务的分类进行任务的缓存。边缘服务器有着缓存能力,其缓存空间大小为Rj。当设备端发出数据任务请求时,代理服务器负责查询该数据任务是否被缓存。如果该数据任务已经被缓存,则代理服务器可将计算结果发送至设备端。如果没有被缓存,则根据任务分类和边缘服务器的缓存空间判断是否加入缓存,同时根据隐私度的大小把任务调度到边缘服务器或者云服务器,最后把计算结果返回设备端。云端层有一个远程中央云服务器,其计算资源丰富并具备强大的计算能力。因此本发明把云端层定义为一个整体的云资源。如果直接把数据任务放在云端执行,数据任务会存在更高的时延,可能还会伴着数据不安全等问题。因此本发明将根据任务类别合理地部署与调度,以减少任务的响应时间,提高用户的体验质量。
S101、按照是否需要将数据任务调度至边缘服务器,对数据任务划分隐私度。
示例性地,隐私度表示数据任务的隐私强度,当数据任务的隐私度较强时,表明该数据任务中含有较多的隐私数据,遵循数据安全的原则,该数据任务不适用在云服务器中处理,因此需要在边缘服务器中处理。
在本发明的实施例中,数据任务的隐私度为1或0,当隐私度为1时表示数据任务的隐私性强,需要调度至边缘服务器,当隐私度为0时表示数据任务的隐私性弱,可调度至边缘服务器或云服务器。采用Pi表示数据任务的隐私度,则Pi表示为:Pi∈{0,1}。
S102、当数据任务未缓存并且需要缓存至边缘服务器时,如果边缘服务器的缓存已满,确定数据任务的权值,并与已缓存的数据任务中权值最小的数据任务的权值进行比较,如果数据任务的权值大于或等于已缓存的数据任务中权值最小的数据任务的权值,将已缓存的数据任务中权值最小的数据任务替换为数据任务;如果数据任务的权值小于已缓存的数据任务中权值最小的数据任务的权值,降低已缓存的数据任务中权值最小的数据任务的权值;如果边缘服务器的缓存未满,确定数据任务的权值,对数据任务直接进行缓存,并更新数据任务的权值,根据权值大小对数据任务进行排序;同时在一个周期内,自动释放已缓存的数据任务中权值最小的数据任务。
示例性地,在获取需要处理的数据任务后,根据数据任务的数据量大小设定一个缓存阈值,将需要处理的数据任务的数据量大小与该缓存阈值进行比较,如果大于该缓存阈值,则认为需要对数据任务进行缓存,如果小于该缓存阈值,则认为不需要对数据任务进行缓存。对于不需要缓存的数据任务,可以直接参与后续的任务调度。在本发明的实施例中,采用αi,j表示第i个数据任务是否缓存在第j个边缘服务器上,当αi,j为1时表示第i个数据任务缓存在第j个服务器上,当αi,j为0时表示第i个数据任务未缓存在第j个服务器上,因此αi,j表示为:αi,j∈{0,1},其中1≤i≤n,1≤j≤m,n为数据任务的数量,m为边缘服务器的数量。
S103、根据数据任务的隐私度和缓存情况建立数据任务的总时延目标函数。
示例性地,在建立数据任务的总时延目标函数前,首先构建计算模型。当数据任务调度在边缘服务器中进行计算时,
Figure BDA0003145689900000071
为第j台边缘服务器的CPU计算能力,βi为第i个数据任务的CPU的总周期数,
Figure BDA0003145689900000072
表示第i个数据任务在第j台边缘服务器上的计算时间:
Figure BDA0003145689900000081
当数据任务的数据量大或者对时延的要求很低时,可以卸载到云服务器进行计算。fc为云服务器的CPU计算能力,Ti,c表示第i个数据任务在云服务器上的计算时间:
Figure BDA0003145689900000082
其次,构建通信模型。假设服务器有着足够的计算资源,数据任务一旦调度到服务器即可进行计算。由于计算后的结果比较小,因此忽略了计算结果返回的传输时间。数据任务有两个卸载位置,一个是边缘服务器,一个是云服务器。用xi表示第i个数据任务的卸载位置,用xi∈{0,1}表示,其中0表示调度到云服务器,1表示调度到边缘服务器。
数据任务的通信时间是任务响应的一部分,Si表示第i个数据任务的数据量,Ri(l,e)表示本地的设备端到边缘服务器的上行链路速率,Ti(l,e)表示从本地的设备端到边缘服务器的通信时间:
Figure BDA0003145689900000083
本地的设备端上行链路速率定义为Ri(l,e),其公式表示如下:
Figure BDA0003145689900000084
其中,B(l,e)表示设备端到边缘服务器的无线信道带宽,G(l,e)表示设备端的发射功率,H(l,e)表示设备端与边缘服务器之间的信道增益,δ2代表噪声功耗。
同理,可得到数据任务传输到云服务器的传输时间Ti(e,c),表示如下:
Figure BDA0003145689900000085
其中,边缘服务器的上行链路速率定义为Ri(e,c),其公式表示如下:
Figure BDA0003145689900000086
其中,B(e,c)表示边缘服务器到云服务器的无线信道带宽,G(e,c)表示边缘服务器到云服务器的发射功率,H(e,c)表示边缘服务器到云服务器之间的信道增益。
接着,构建缓存机制。在工业的场景下,数据任务存在着数据量大,流行度高的特点。在边缘服务器中缓存同类型的数据任务,这些数据任务可以随时调用,以降低数据任务请求的时延。本发明设计了一种动态替换-释放缓存的方法,描述如下:缓存在边缘服务器上的数据任务,都具有相应的权值W,定义:
Wi,j=v*Hi,j+(1-v)*Si
其中,v表示惩罚因子,Hi,j表示第i个数据任务在第j个边缘服务器中的流行度。当计算任务没有被缓存,根据S102中的缓存阈值,进行缓存。当任务已经被缓存时,则流行度相应增大,相应地更新权值W。
当边缘服务器的缓存空间已满时,将待缓存的数据任务的权值与边缘服务器中已缓存的权值最低的数据任务的权值进行比较,如果前者大于后者,则进行替换。如果后者大于前者,不进行替换,但对已缓存的权值最低的数据任务进行惩罚,降低其权值,同时在一个周期内,自动释放已缓存的数据任务中权值最小的数据任务,以防止某些数据任务长时间占用缓存资源。
Di,j表示第i个数据任务在第j台边缘服务器中的占用空间,Ui,j表示第i个数据任务需要消耗的第j台边缘服务器的计算资源,Oi,j代表第i个数据任务在第j台边缘服务器中的占用空间与该数据任务在计算过程中需要的占用空间之和。在边缘服务器中缓存数据任务的时候,需要遵守以下缓存容量的限制:maxOi,jαi,j≤Rj。每一个数据任务只能缓存在一个边缘服务器中,如下:
Figure BDA0003145689900000091
Figure BDA0003145689900000092
当边缘服务器的缓存空间未满时,新的数据任务可以直接缓存。如果新的数据任务已经被缓存,则对流行度Hi,j进行更新,进而更新相应的权值,并根据权值的大小重新进行排序。如下:
Hi,j=Hi,j+1
当边缘服务器的缓存空间已满时,Wi+1,j表示新数据任务的权值,Oi+1,j表示新数据任务的大小,min Wi,j表示边缘服务器中已缓存的数据任务中权值最小的数据任务,其对应的缓存空间为min Oi,j。当Wi+1,j大于或等于min Wi,j时,权值为min Wi,j的数据任务即为替换的对象,替换过程需满足以下约束:
Figure BDA0003145689900000101
Wi+1,j≥min Wi,j
当Wi+1,j小于min Wi,j时不进行替换,同时对已缓存的权值最小的数据任务进行惩罚,惩罚因子为θ∈(0,1)。约束如下:
Figure BDA0003145689900000102
Wi+1,j<min Wi,j
min Wi,j=min Wi,j
最后,建立数据任务的总时延目标函数。第i个数据任务只能调度至边缘服务器或者云服务器,其响应时间,也称时延,表述为:
Figure BDA0003145689900000103
在数据任务的调度过程中加入隐私度的划分,则时延如下:
Figure BDA0003145689900000104
在数据任务的调度过程中加入缓存策略,则第i个数据任务的时延为:
Figure BDA0003145689900000105
其中,t表示缓存查找时间。当n个数据任务依次执行,对于每个任务,它可以调度到边缘服务器或云服务器进行计算。根据调度策略和缓存机制,数据任务的总时延可能会有所不同。数据任务的总时延可以表示为:
Figure BDA0003145689900000106
约束如下:约束xi∈{0,1}表示数据任务有不同的调度位置。约束αi,j∈{0,1}确保数据任务的缓存决策变量是零一指示符。约束Pi∈{0,1}表示任务的隐私度。约束条件
Figure BDA0003145689900000111
表示n个数据任务的缓存空间不能超过边缘服务器的缓存空间。约束条件max Oi,jαi,j≤Rj表示数据任务的最大缓存空间不能超过边缘服务器的缓存空间。约束条件
Figure BDA0003145689900000112
xi≠0表示调度位置为0的同时隐私度不能为1。
S104、采用遗传-差分算法求解总时延目标函数,获得最优的调度方案。
示例性地,遗传-差分算法是一种全局启发式搜索算法,在每个种群的进化过程中采用遗传算法,迭代搜索问题的解,更新种群,使种群中的个体在最优解周围更加密集,最后经过多次迭代可以找到最优解。
线性松弛:
Figure BDA0003145689900000113
的本质是一个组合优化问题,它属于NP难问题,可以通过穷举搜索或推导最优解的充要条件来解决。前者需要遍历所有可行解,但每个数据任务都有2的|m|次方可能的卸载位置。如果卸载任务为xi∈X,则卸载路径组合数等2m∈X。特别是,在边缘计算***模型中,有两个环境控制点,如果每个卸载位置需要100个任务,那么穷举搜索将遍历2100条路径,导致高时间复杂度。对于后者,由于本发明中的动态替换-释放缓存机制和边缘计算***的相互耦合以及离散变量的存在,无法推导出
Figure BDA0003145689900000114
理论最优解的充要条件。因此,线性松弛应用于
Figure BDA0003145689900000115
松弛到真实的xi∈{0,1}。
采用上述遗传-差分算法求解数据任务的总时延目标函数后,得到最优调度方案,代理服务器即可按照该最优调度方案将各个数据任务调度至对应的边缘服务器或云服务器进行计算处理。
图2为本发明实施例中遗传-差分算法的流程图。在一种可能的实施例中,S104中的遗传-差分算法包括:S200、将目标函数编码表示为遗传空间的个体;S201、确定每个个体的适应度值;S202、根据适应度值对个体进行选择操作;S203、对选择的个体进行交叉处理;S204、对交叉处理后的个体进行遗传-差分变异操作,其中,遗传-差分变异操作由遗传算法和差分进化算法的变异操作结合得到。
示例性地,由于遗传算法不能直接处理问题空间的参数,因此要通过编码将要求解的问题表示成遗传空间的染色体或者个体。每一个编码对应解向量的一个解。本发明中由于隐私度的等级,需要对编码的过程进行限制。也就是说任务的隐私度对任务的调度有着很高的影响。如表1所示,当隐私度为1,则编码的基因型也为1。
表1编码操作
个体 0 1 0 1 0 0 1 0
隐私度 0 0 0 1 0 0 1 0
适应度是表示个体对环境的适应能力,也表示该个体繁殖后代的能力。遗传算法的适应度函数也叫评价函数,是用来判断群体中个体优劣程度的指标,它是通过所求问题的目标函数值进行评估的。那么本发明的目标函数f(X)如下:
Figure BDA0003145689900000123
在选择操作前,将种群中个体按照适应度从小到大进行排列,采用轮盘赌选择方法,每个个体被选中的概率与其适应度函数值大小成正比。
Figure BDA0003145689900000121
Figure BDA0003145689900000122
上式中,Fi表示个体的适应度函数值,Pi表示个体被选中的概率。当选择下一代个体时,个体被选择的概率由Pi表示。通过这样的选择,在保持种群遗传多样性的同时,种群中存在总时延最短的个体。
按照遗传算法就是两个不同的个体根据交叉概率按某种方式交换其部分基因。但本发明考虑了任务调度的隐私度,两个不同的个体进行交叉之后,不能改变某些基因(任务的类别)的隐私类别,如表2所示,交叉点设置为3。
表2交叉操作
个体1 0 1 1 0 1 1 0
个体2 1 0 1 0 1 0 1
隐私度 0 0 1 0 1 0 0
交叉后1 0 1 1 0 1 0 1
交叉后2 1 0 1 0 1 1 0
个体按照变异概率进行变异操作。但是本发明中选用了差分进化变异的思想进行改进,即第二个个体与第三个个体进行异或操作之后取反,得到了变异结果。这样不需要对隐私度进行限制,还最大程度的得到不同的基因数量,其收敛性更快。如下所示:
Figure BDA0003145689900000131
下面结合实验对本发明效果做进一步的说明:
本发明与三种现有的缓存机制进行了比较,如图3所示,本发明边缘服务器存储空间的存储单位不变,数据任务的数量保持不变。通过对四种缓存机制的对比,可以看出本发明提出的动态替换-释放缓存机制(DRRC,Dynamic Replacement-Release Caching)获得了更低的响应时延,先进先出缓存机制(FIFO,First In,First Out)、基于数据访问历史记录的缓存机制(LRU,Least Recently Used)、基于数据访问频率的缓存机制(LFU,LeastFrequently Used)的响应时延明显较大。如FIFO机制所带来是时延最高,其时间为698.4ms,而DRRC的时延为611.6ms,本发明所提出的缓存机制在时延上降低了约12.4%。
本发明分别选择差分进化算法(DE,Differential Evolution)、遗传算法(GA,Genetic Algorithm)、随机算法(Random)与遗传-差分进化算法进行算法(GDEA,Genetic-Differential Evolution Algorithm)评估,如图4所示,本发明所提出的算法,其收敛速度最快和搜索最优值最低。而原始的差分算法和遗传算法的性能也有很大的差异,其主要原因是差分进化算法在变异和选择的过程中,进行了随机生成种群,遗传算法在选择过程中有着择优的决策,随机算法无选择策略,其搜索能力最差,与预期的结果一致。
本发明实施例还提供了智能制造中任务调度***,包括:
任务获取模块,用于获取数据任务;
隐私度划分模块,用于按照是否需要将数据任务调度至边缘服务器,对数据任务划分隐私度;
任务缓存模块,用于当数据任务未缓存并且需要缓存至边缘服务器时,如果边缘服务器的缓存已满,确定数据任务的权值,并与已缓存的数据任务中权值最小的数据任务的权值进行比较,如果数据任务的权值大于或等于已缓存的数据任务中权值最小的数据任务的权值,将已缓存的数据任务中权值最小的数据任务替换为数据任务;如果数据任务的权值小于已缓存的数据任务中权值最小的数据任务的权值,降低已缓存的数据任务中权值最小的数据任务的权值;如果边缘服务器的缓存未满,确定数据任务的权值,对数据任务直接进行缓存,并更新数据任务的权值,根据权值大小对数据任务进行排序;同时在一个周期内,自动释放已缓存的数据任务中权值最小的数据任务;
目标函数建立模块,用于根据数据任务的隐私度和缓存情况建立数据任务的总时延目标函数;
目标函数求解模块,用于采用遗传-差分算法求解总时延目标函数,获得最优的调度方案。
在一种可能的实施例中,***还可以包括:代理服务器;边缘服务器和代理服务器均设置在智能制造工厂中,且任务获取模块、隐私度划分模块、任务缓存模块、目标函数建立模块和目标函数求解模块均设置在代理服务器中;边缘服务器具有缓存能力,当设备端发出数据任务请求时,代理服务器负责查询该数据任务是否被缓存,如果已经被缓存,则边缘服务器将与数据任务对应的计算结果发送至设备端;如果数据任务没有被缓存,则代理服务器根据任务分类和边缘服务器的缓存空间判断是否加入缓存,同时根据隐私度把数据任务调度到边缘服务器或者云服务器,最后把计算结果返回至设备端。
本发明实施例还提供了一种电子设备,包括:
至少一个处理器;以及
与至少一个处理器通信连接的存储器;其中
存储器存储有可被至少一个处理器执行的计算机指令,计算机指令被至少一个处理器执行,以使至少一个处理器执行上述的方法。
本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质中存储有多条计算机指令,多条计算机指令用于使计算机执行上述的方法。
本发明实施例还提供了一种计算机程序产品,计算机程序被处理器执行时实现上述的方法。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (6)

1.基于缓存的智能制造边缘计算任务调度方法,其特征在于,包括:
获取数据任务;
按照是否需要将所述数据任务调度至边缘服务器,对所述数据任务划分隐私度;
当所述数据任务未缓存并且需要缓存至所述边缘服务器时,如果所述边缘服务器的缓存已满,确定所述数据任务的权值,并与已缓存的数据任务中权值最小的数据任务的权值进行比较,如果所述数据任务的权值大于或等于所述已缓存的数据任务中权值最小的数据任务的权值,将所述已缓存的数据任务中权值最小的数据任务替换为所述数据任务;如果所述数据任务的权值小于所述已缓存的数据任务中权值最小的数据任务的权值,降低所述已缓存的数据任务中权值最小的数据任务的权值;如果所述边缘服务器的缓存未满,确定所述数据任务的权值,对所述数据任务直接进行缓存,并更新所述数据任务的权值,根据所述权值大小对所述数据任务进行排序;同时在一个周期内,自动释放已缓存的数据任务中权值最小的数据任务;
根据所述数据任务的隐私度和缓存情况建立所述数据任务的总时延目标函数;
采用遗传-差分算法求解所述总时延目标函数,获得最优的调度方案;
所述遗传-差分算法包括:
将所述目标函数编码表示为遗传空间的个体;
确定每个所述个体的适应度值;
根据所述适应度值对所述个体进行选择操作;
对选择的所述个体进行交叉处理;
对交叉处理后的所述个体进行遗传-差分变异操作,其中,所述遗传-差分变异操作由遗传算法和差分进化算法的变异操作结合得到。
2.根据权利要求1所述的基于缓存的智能制造边缘计算任务调度方法,其特征在于,所述数据任务的隐私度为1或0,当隐私度为1时表示所述数据任务的隐私性强,需要调度至边缘服务器,当隐私度为0时表示所述数据任务的隐私性弱,可调度至边缘服务器或云服务器。
3.应用权利要求1-2任一项所述的基于缓存的智能制造边缘计算任务调度方法的***,其特征在于,包括:
任务获取模块,用于获取数据任务;
隐私度划分模块,用于按照是否需要将所述数据任务调度至边缘服务器,对所述数据任务划分隐私度;
任务缓存模块,用于当所述数据任务未缓存并且需要缓存至所述边缘服务器时,如果所述边缘服务器的缓存已满,确定所述数据任务的权值,并与已缓存的数据任务中权值最小的数据任务的权值进行比较,如果所述数据任务的权值大于或等于所述已缓存的数据任务中权值最小的数据任务的权值,将所述已缓存的数据任务中权值最小的数据任务替换为所述数据任务;如果所述数据任务的权值小于所述已缓存的数据任务中权值最小的数据任务的权值,降低所述已缓存的数据任务中权值最小的数据任务的权值;如果所述边缘服务器的缓存未满,确定所述数据任务的权值,对所述数据任务直接进行缓存,并更新所述数据任务的权值,根据所述权值大小对所述数据任务进行排序;同时在一个周期内,自动释放已缓存的数据任务中权值最小的数据任务;
目标函数建立模块,用于根据所述数据任务的隐私度和缓存情况建立所述数据任务的总时延目标函数;
目标函数求解模块,用于采用遗传-差分算法求解所述总时延目标函数,获得最优的调度方案。
4.根据权利要求3所述的基于缓存的智能制造边缘计算任务调度***,其特征在于,还包括:代理服务器;
所述边缘服务器和代理服务器均设置在智能制造工厂中,且所述任务获取模块、隐私度划分模块、任务缓存模块、目标函数建立模块和目标函数求解模块均设置在所述代理服务器中;
所述边缘服务器具有缓存能力,当设备端发出数据任务请求时,所述代理服务器负责查询该数据任务是否被缓存,如果已经被缓存,则所述边缘服务器将与数据任务对应的计算结果发送至所述设备端;如果所述数据任务没有被缓存,则所述代理服务器根据任务分类和所述边缘服务器的缓存空间判断是否加入缓存,同时根据隐私度把所述数据任务调度到边缘服务器或者云服务器,最后把计算结果返回至所述设备端。
5.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中
所述存储器存储有可被所述至少一个处理器执行的计算机指令,所述计算机指令被所述至少一个处理器执行,以使所述至少一个处理器执行权利要求1-2中任一项所述的方法。
6.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有多条计算机指令,所述多条计算机指令用于使计算机执行权利要求1-2任一项所述的方法。
CN202110749833.8A 2021-07-02 2021-07-02 基于缓存的智能制造边缘计算任务调度方法及*** Active CN113342504B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110749833.8A CN113342504B (zh) 2021-07-02 2021-07-02 基于缓存的智能制造边缘计算任务调度方法及***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110749833.8A CN113342504B (zh) 2021-07-02 2021-07-02 基于缓存的智能制造边缘计算任务调度方法及***

Publications (2)

Publication Number Publication Date
CN113342504A CN113342504A (zh) 2021-09-03
CN113342504B true CN113342504B (zh) 2023-04-21

Family

ID=77482334

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110749833.8A Active CN113342504B (zh) 2021-07-02 2021-07-02 基于缓存的智能制造边缘计算任务调度方法及***

Country Status (1)

Country Link
CN (1) CN113342504B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113986486B (zh) * 2021-10-15 2024-06-18 东华大学 一种边缘环境下数据缓存与任务调度的联合优化方法
CN117579694B (zh) * 2024-01-15 2024-04-16 国网浙江省电力有限公司宁波供电公司 一种基于泛在电力物联网的数据共享管理方法及***

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111475274A (zh) * 2020-04-20 2020-07-31 北京邮电大学 云协同多任务调度方法及装置
CN112083967A (zh) * 2020-08-18 2020-12-15 深圳供电局有限公司 一种云边端计算任务的卸载方法、计算机设备及存储介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201441817A (zh) * 2013-04-23 2014-11-01 Hon Hai Prec Ind Co Ltd 資料緩存系統及方法
CN105939385B (zh) * 2016-06-22 2019-05-10 湖南大学 一种ndn缓存中基于请求频率的实时数据替换方法
CN110851257A (zh) * 2019-11-07 2020-02-28 中国石油大学(华东) 一种基于前期灾变策略的遗传与差分混合进化云计算任务调度算法
CN112003921B (zh) * 2020-08-18 2022-07-22 东北大学 一种边缘计算环境中热门数据主动缓存与替换的方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111475274A (zh) * 2020-04-20 2020-07-31 北京邮电大学 云协同多任务调度方法及装置
CN112083967A (zh) * 2020-08-18 2020-12-15 深圳供电局有限公司 一种云边端计算任务的卸载方法、计算机设备及存储介质

Also Published As

Publication number Publication date
CN113342504A (zh) 2021-09-03

Similar Documents

Publication Publication Date Title
CN113950066B (zh) 移动边缘环境下单服务器部分计算卸载方法、***、设备
CN107172166B (zh) 面向工业智能化服务的云雾计算***
CN113342504B (zh) 基于缓存的智能制造边缘计算任务调度方法及***
CN109167671B (zh) 一种面向量子密钥分发业务的配用通信***均衡负载调度方法
CN110798849A (zh) 一种超密网边缘计算的计算资源分配与任务卸载方法
CN111930436A (zh) 一种基于边缘计算的随机型任务排队卸载优化方法
CN107708152B (zh) 异构蜂窝网络的任务卸载方法
CN114340016B (zh) 一种电网边缘计算卸载分配方法及***
Yao et al. Caching in dynamic IoT networks by deep reinforcement learning
CN114356545B (zh) 一种面向隐私保护与能耗优化的任务卸载方法
CN113411826B (zh) 一种基于注意力机制强化学习的边缘网络设备缓存方法
CN115562756A (zh) 一种多接入边缘计算的车辆任务卸载方法及***
Lan et al. Deep reinforcement learning for computation offloading and caching in fog-based vehicular networks
CN116321307A (zh) 一种无蜂窝网络中基于深度强化学习的双向缓存放置方法
KR102562732B1 (ko) Mec 기반 무선 네트워크의 태스크 오프로딩 장치 및 방법
Han et al. Multi-step reinforcement learning-based offloading for vehicle edge computing
Gao et al. Joint computing, pushing, and caching optimization for mobile edge computing networks via soft actor-critic learning
CN109818788B (zh) 一种基于次模优化的边缘缓存c-ran中计算资源分配方法
CN115022188B (zh) 一种电力边缘云计算网络中的容器放置方法及***
CN115914230A (zh) 一种自适应移动边缘计算卸载和资源分配方法
Ge et al. Mobile edge computing against smart attacks with deep reinforcement learning in cognitive MIMO IoT systems
CN113709817B (zh) 多基站多服务器场景下的任务卸载和资源调度方法及装置
CN115604853A (zh) 边缘计算的车辆依赖任务卸载方法及***
CN115499876A (zh) Msde场景下基于dqn算法的计算卸载策略
CN111245906B (zh) 一种业务请求分配方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant