CN113391850A - 基于边云协同的任务调度方法、装置、设备及存储介质 - Google Patents
基于边云协同的任务调度方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN113391850A CN113391850A CN202110617038.3A CN202110617038A CN113391850A CN 113391850 A CN113391850 A CN 113391850A CN 202110617038 A CN202110617038 A CN 202110617038A CN 113391850 A CN113391850 A CN 113391850A
- Authority
- CN
- China
- Prior art keywords
- target
- unloading
- data
- preset
- task scheduling
- 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
Images
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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44594—Unloading
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2411—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on the proximity to a decision surface, e.g. support vector machines
-
- 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/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
-
- 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
- G06F9/505—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 considering the load
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Computation (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明属于云计算技术领域,公开了一种基于边云协同的任务调度方法、装置、设备及存储介质。该方法包括:获取目标设备的连接指令;根据所述目标设备的连接指令获取对应的目标数据;基于目标数据通过预设分类器进行卸载分类,以得到目标卸载数据及对应的卸载类型;根据对应的卸载类型通过任务调度模型对所述目标卸载数据进行位置分配,以得到所述目标卸载数据对应的目标位置;将目标卸载数据根据所述目标位置完成调度。通过上述方式,通过预设分类器进行分类,降低了分类的错误率,同时根据数据类型选择对应的卸载位置,能够提高应用程序组件分类及卸载的效率,使任务调度策略变得简单且高效,保证边缘计算的服务器保持在一个合理的负载区间内。
Description
技术领域
本发明涉及云计算技术领域,尤其涉及一种基于边云协同的任务调度方法、装置、设备及存储介质。
背景技术
在工业领域当中,现阶段提出了很多基于边云协同的系统架构,以及计算卸载的方法。主流的边云协同的系统一般包括终端、边缘侧模块和云端模块。其中,终端包括了工业上的基础设备,例如传感器、数控机床、仪器仪表等。边缘侧模块主要分担云端系统的压力,可以对一部分数据进行实时处理及分析,提高了数据的安全性,有效提升云端的性能。云端模块主要进行复杂计算,比如模型训练、工业微服务、工业机理模型等,它利用了一种实时的云端资源,扩展了终端的计算能力。
工业上数据来源多、数据量大,工业数据量已经达到EB级别。数据的结构十分复杂,工业数据也具有鲜明的实时性的特点,对实时的数据、半实时的数据和离线的数据有不同的要求,工业数据具有不平衡的特点。应用程序组件中包含这些工业数据,应用程序组件数量也是庞大的。因此,通过传统的方式进行应用程序组件分类及卸载是复杂且效率低的。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
发明内容
本发明的主要目的在于提供一种基于边云协同的任务调度方法、装置、设备及存储介质,旨在解决现有技术应用程序组件分类及卸载是复杂且效率低的的技术问题。
为实现上述目的,本发明提供了一种基于边云协同的任务调度方法,所述方法包括以下步骤:
获取目标设备的连接指令;
根据所述目标设备的连接指令获取对应的目标数据;
基于所述目标数据通过预设分类器进行卸载分类,以得到目标卸载数据及对应的卸载类型;
根据所述对应的卸载类型通过任务调度模型对所述目标卸载数据进行位置分配,以得到所述目标卸载数据对应的目标位置;
将所述目标卸载数据根据所述目标位置完成调度。
可选地,所述基于所述目标数据通过预设分类器进行卸载分类,以得到目标卸载数据及对应的卸载类型,包括:
获取所述目标数据中的目标卸载信息和目标应用程序组件信息;
通过预设分类器对所述目标应用程序组件信息进行分类,以得到目标卸载组件信息及对应的卸载类型;
根据所述目标卸载信息和所述目标卸载组件信息得到目标卸载数据。
可选地,所述通过预设分类器对所述目标应用程序组件信息进行分类,以得到目标卸载组件信息及对应的卸载类型之前,还包括:
获取预设数据库中的预设应用程序组件信息,以作为预设训练数据集;
通过预设训练数据集和初始训练目标对初始分类器进行训练;
在所述初始训练目标中的分离超平面满足预设条件时,以得到预设分类器。
可选地,所述对应的卸载类型包括云端卸载类型和边缘侧卸载类型;
所述根据所述对应的卸载类型通过任务调度模型对所述目标卸载数据进行位置分配,以得到所述目标卸载数据对应的目标位置,包括:
若所述对应的卸载类型为云端卸载类型,则根据所述云端卸载类型通过所述任务调度模型对所述目标卸载数据进行位置分配,以得到所述目标卸载数据对应的目标位置;
若所述对应的卸载类型为边缘侧卸载类型,则根据所述边缘侧卸载类型通过随机游走策略对所述目标卸载数据进行路径规划,得到目标路径,并根据所述目标路径得到所述目标卸载数据对应的目标位置。
可选地,所述若所述对应的卸载类型为边缘侧卸载类型,则根据所述边缘侧卸载类型通过随机游走策略对所述目标卸载数据进行路径规划,得到目标路径,并根据所述目标路径得到所述目标卸载数据对应的目标位置,包括:
若所述对应的卸载类型为边缘侧卸载类型,则获取预设网络拓扑结构图;
基于所述预设网络拓扑结构图根据随机游走策略对所述目标卸载数据进行游走,以得到游走链长度为预设长度的目标游走链;
根据所述目标游走链确定对应的路径集合,以得到所述路径集合中的最小路径;
将所述最小路径作为目标路径,并确定所述目标卸载数据对应的目标位置。
可选地,所述基于所述预设网络拓扑结构图根据随机游走策略对所述目标卸载数据进行游走,以得到游走链长度为预设长度的目标游走链,包括:
选取所述预设网络拓扑结构图中的第一边缘节点对所述目标卸载数据开始游走;
基于所述第一边缘节点按照预设节点选取规则查找目标边缘节点;
连接所述第一边缘节点和所述目标边缘节点,以得到初始游走链;
判断所述初始游走链的长度是否达到预设长度;
若所述初始游走链的初始长度达到预设长度,则将所述初始游走链作为目标游走链。
可选地,所述根据所述目标设备的连接指令获取对应的目标数据之前,还包括:
将所述目标设备的连接指令发送至对应的连接网关,以使所述连接网关反馈所述目标设备的认证结果;
识别所述认证结果中所述目标设备的连接指令是否合法,若所述连接指令合法,则根据所述认证结果获取对应的目标数据。
此外,为实现上述目的,本发明还提出一种基于边云协同的任务调度装置,所述基于边云协同的任务调度装置包括:
获取模块,用于获取目标设备的连接指令;
所述获取模块,还用于根据所述目标设备的连接指令获取对应的目标数据;
分类模块,用于基于所述目标数据通过预设分类器进行卸载分类,以得到目标卸载数据及对应的卸载类型;
分配模块,用于根据所述对应的卸载类型通过任务调度模型对所述目标卸载数据进行位置分配,以得到所述目标卸载数据对应的目标位置;
调度模块,用于将所述目标卸载数据根据所述目标位置完成调度。
此外,为实现上述目的,本发明还提出一种基于边云协同的任务调度设备,所述基于边云协同的任务调度设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的基于边云协同的任务调度程序,所述基于边云协同的任务调度程序配置为实现如上文所述的基于边云协同的任务调度方法的步骤。
此外,为实现上述目的,本发明还提出一种存储介质,所述存储介质上存储有基于边云协同的任务调度程序,所述基于边云协同的任务调度程序被处理器执行时实现如上文所述的基于边云协同的任务调度方法的步骤。
本发明通过获取目标设备的连接指令;根据所述目标设备的连接指令获取对应的目标数据;基于所述目标数据通过预设分类器进行卸载分类,以得到目标卸载数据及对应的卸载类型;根据所述对应的卸载类型通过任务调度模型对所述目标卸载数据进行位置分配,以得到所述目标卸载数据对应的目标位置;将所述目标卸载数据根据所述目标位置完成调度。通过上述方式,通过预设分类器进行分类,降低了分类的错误率,同时根据数据类型选择对应的卸载位置,能够提高应用程序组件分类及卸载的效率,使任务调度策略变得简单且高效,保证边缘计算的服务器保持在一个合理的负载区间内。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的基于边云协同的任务调度设备的结构示意图;
图2为本发明基于边云协同的任务调度方法第一实施例的流程示意图;
图3为本发明基于边云协同的任务调度方法第二实施例的流程示意图;
图4为本发明基于边云协同的任务调度方法第三实施例的流程示意图;
图5为本发明基于边云协同的任务调度方法一实施例的整体流程示意图;
图6为本发明基于边云协同的任务调度装置第一实施例的结构框图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
参照图1,图1为本发明实施例方案涉及的硬件运行环境的基于边云协同的任务调度设备结构示意图。
如图1所示,该基于边云协同的任务调度设备可以包括:处理器1001,例如中央处理器(Central Processing Unit,CPU),通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如无线保真(WIreless-FIdelity,WI-FI)接口)。存储器1005可以是高速的随机存取存储器(RandomAccess Memory,RAM)存储器,也可以是稳定的非易失性存储器(Non-Volatile Memory,NVM),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的结构并不构成对基于边云协同的任务调度设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及基于边云协同的任务调度程序。
在图1所示的基于边云协同的任务调度设备中,网络接口1004主要用于与网络服务器进行数据通信;用户接口1003主要用于与用户进行数据交互;本发明基于边云协同的任务调度设备中的处理器1001、存储器1005可以设置在基于边云协同的任务调度设备中,所述基于边云协同的任务调度设备通过处理器1001调用存储器1005中存储的基于边云协同的任务调度程序,并执行本发明实施例提供的基于边云协同的任务调度方法。
本发明实施例提供了一种基于边云协同的任务调度方法,参照图2,图2为本发明一种基于边云协同的任务调度方法第一实施例的流程示意图。
本实施例中,所述基于边云协同的任务调度方法包括以下步骤:
步骤S10:获取目标设备的连接指令。
需要说明的是,本实施例的执行主体为云端服务器,能够实现对终端设备和边缘侧服务器的整体调度。整个体系包括云端服务器、终端设备和边缘侧服务器。
可以理解的是,目标设备即为终端设备,在任务执行时,终端设备接入整个系统网络,云端服务器网关获取目标设备的连接指令终端设备包括但不限于数控机床、工业机器人、客户端以及AGV小车等。
可以理解的是,为了判断终端设备的接入是否合法,使整个体系能够正常运行,终端设备在接如点网关处需进行认证,判断是否合法,进一步地,所述根据所述目标设备的连接指令获取对应的目标数据之前,还包括:将所述目标设备的连接指令发送至对应的连接网关,以使所述连接网关反馈所述目标设备的认证结果;识别所述认证结果中所述目标设备的连接指令是否合法,若所述连接指令合法,则根据所述认证结果获取对应的目标数据。
需要说明的是,所述认证结果指的是当前连接指令是否合法的结果,若当前连接指令合法,则说明连接指令对应的终端设备的接入合法,则根据认证结果获取对应的目标数据。
步骤S20:根据所述目标设备的连接指令获取对应的目标数据。
需要说明的是,在获取到目标设备的连接指令后,获取连接指令对应的终端设备中的各项计算工作数据作为目标数据。
步骤S30:基于所述目标数据通过预设分类器进行卸载分类,以得到目标卸载数据及对应的卸载类型。
需要说明的是,所述预设分类器指的是通过训练后的SVM分类器,SVM分类器能够对目标数据进行分类,能够得到目标数据中哪些数据是适合卸载的,哪些组件是不适合卸载的,同时能够得到需要卸载的目标卸载数据对应的卸载类型。所述对应的卸载类型有云端卸载类型和边缘侧卸载类型。
步骤S40:根据所述对应的卸载类型通过任务调度模型对所述目标卸载数据进行位置分配,以得到所述目标卸载数据对应的目标位置。
需要说明的是,在得到对应的卸载类型后,通过任务掉度模型对目标卸载数据进行位置分配,以得到目标卸载数据对应的目标位置,若当前的卸载类型为云端卸载类型,则目标卸载数据对应的目标位置为云端服务器,若当前的卸载类型为边缘侧卸载类型,则目标卸载数据对应的目标位置为边缘侧服务器。
步骤S50:将所述目标卸载数据根据所述目标位置完成调度。
需要说明的是,在得到目标卸载数据对应的目标位置后,将目标卸载数据传输到对应的目标位置进行计算卸载,最终完成任务调度。
本实施例通过获取目标设备的连接指令;根据所述目标设备的连接指令获取对应的目标数据;基于所述目标数据通过预设分类器进行卸载分类,以得到目标卸载数据及对应的卸载类型;根据所述对应的卸载类型通过任务调度模型对所述目标卸载数据进行位置分配,以得到所述目标卸载数据对应的目标位置;将所述目标卸载数据根据所述目标位置完成调度。通过上述方式,通过预设分类器进行分类,降低了分类的错误率,同时根据数据类型选择对应的卸载位置,能够提高应用程序组件分类及卸载的效率,使任务调度策略变得简单且高效,保证边缘计算的服务器保持在一个合理的负载区间内。
参考图3,图3为本发明一种基于边云协同的任务调度方法第二实施例的流程示意图。
基于上述第一实施例,本实施例基于边云协同的任务调度方法在所述步骤S30,包括:
步骤S301:获取所述目标数据中的目标卸载信息和目标应用程序组件信息。
需要说明的是,目标数据中包含但不限于目标卸载信息数据和目标应用程序组件信息数据,在获取目标数据后,通过分析识别,得到目标数据中的目标卸载信息和目标应用程序组件信息。
步骤S302:通过预设分类器对所述目标应用程序组件信息进行分类,以得到目标卸载组件信息及对应的卸载类型。
需要说明的是,预设分类器指的是SVM分类器,由于目标应用程序组件信息数据中含有各种类型的数据,需要给应用程序组件进行分类,分类出哪些组件适合卸载,哪些组件不适合卸载,同时得到它们对应的卸载类型。
为了使SVM分类器的分类结果更为准确,进一步地,所述通过预设分类器对所述目标应用程序组件信息进行分类,以得到目标卸载组件信息及对应的卸载类型之前,还包括:获取预设数据库中的预设应用程序组件信息,以作为预设训练数据集;通过预设训练数据集和初始训练目标对初始分类器进行训练;在所述初始训练目标中的分离超平面满足预设条件时,以得到预设分类器。
需要说明的是,所述预设数据库指的是有工业设备中的各种数据的数据库,所述预设应用组件程序信息指的是预设数据库中的各种应用程序组件信息。
可以理解的是,所述初始训练目标指的是SVM分类器能够在训练数据集特征空间中找到一个分离的超平面,能够将应用程序组件分到不同类别。
在具体实现中,将预设应用程序组件信息作为预设训练数据集,制定训练规则并做好标记,通过预设训练数据集和初始训练目标对初始SVM分类器进行训练和优化,最终得到训练好的SVM分类器。训练好的SVM分类器能够在训练数据集特征空间中找到一个分离的超平面,能够将应用程序组件分到不同类别,即为当分离超平面能够满足预设条件时,初始训练器即为训练完成。
例如,设给定的预设训练数据集T={(x1,y1),(x2,y2)......(xn,yn)},其中xi∈x=Rn,yi∈Y={+1,-1}。I=1,2......N。n维空间中的线性判别函数的一般形式为g(x)=wx+b,对应的分类面方程为wx+b=0。将判别函数g(x)归一化使得两类样本都满足|g(x)|≥1。这样的分类间隔就等于因此,使分类间隔面最大就等价使||w||最小。而且,要求分类面对所有样本都能正确分类,就必须要满足下式:
yi[(wx+b)]-1≥0,i=1,2,......n
步骤S303:根据所述目标卸载信息和所述目标卸载组件信息得到目标卸载数据。
需要说明的是,结合目标卸载信息和目标卸载组件信息得到最终需要卸载的目标卸载数据。
本实施例通过获取所述目标数据中的目标卸载信息和目标应用程序组件信息;通过预设分类器对所述目标应用程序组件信息进行分类,以得到目标卸载组件信息及对应的卸载类型;根据所述目标卸载信息和所述目标卸载组件信息得到目标卸载数据。通过预设SVM分类器进行目标应用程序组件信息进行分类,分类过程中泛化错误率低,能够有更加准确的分类决策。
参考图4,图4为本发明一种基于边云协同的任务调度方法第三实施例的流程示意图。
基于上述第一实施例,本实施例基于边云协同的任务调度方法中,所述对应的卸载类型包括云端卸载类型和边缘侧卸载类型,所述步骤S40,包括:
步骤S401:若所述对应的卸载类型为云端卸载类型,则根据所述云端卸载类型通过所述任务调度模型对所述目标卸载数据进行位置分配,以得到所述目标卸载数据对应的目标位置。
需要说明的是,根据分类得到当前的卸载类型为云端卸载类型时,则直接通过任务调度将目标卸载数据传输到远端服务器。
步骤S402:若所述对应的卸载类型为边缘侧卸载类型,则根据所述边缘侧卸载类型通过随机游走策略对所述目标卸载数据进行路径规划,得到目标路径,并根据所述目标路径得到所述目标卸载数据对应的目标位置。
需要说明的是,所述随机游走策略指的是任务调度模型中的策略,是拓扑网络上不断重复的随机游走选择路径,最终选择一条合适的路径卸载目标卸载数据。
可以理解的是,根据分类得到当前的卸载类型为边缘侧卸载类型时,则需要通过任务调度模型中的随机游走策略对目标卸载数据进行路径规划,最终得到最优路径及目标位置,使各个边缘侧服务器接收到的目标卸载数据能够保持平衡。
如图5所示,在工业工厂的终端设备接入卸载网络之后,判断终端设备的接入是否合法,若合法,则对获取到的对应的目标数据进行分类确定需要卸载的资源数据及类型,根据类型再选择对应的调度位置及调度方法,并将结果反馈至对应的终端设备。
为了使边缘侧卸载类型对应的目标卸载数据能够有最优路径及最佳位置,进一步地,所述若所述对应的卸载类型为边缘侧卸载类型,则根据所述边缘侧卸载类型通过随机游走策略对所述目标卸载数据进行路径规划,得到目标路径,并根据所述目标路径得到所述目标卸载数据对应的目标位置,包括:若所述对应的卸载类型为边缘侧卸载类型,则获取预设网络拓扑结构图;基于所述预设网络拓扑结构图根据随机游走策略对所述目标卸载数据进行游走,以得到游走链长度为预设长度的目标游走链;根据所述目标游走链确定对应的路径集合,以得到所述路径集合中的最小路径;将所述最小路径作为目标路径,并确定所述目标卸载数据对应的目标位置。
需要说明的是,所述预设网络拓扑结构图为G=(V,E,W),其中,G为无向图,V表示各个边缘节点即边缘侧服务器的集合,E表示网路图中边的集合,W表示边的权值的集合。
可以理解的是,所述预设游走链长度为游走后连接点连接得到的游走链长度为l,本实施例对此不加以限制。
在具体实现中,结合预设网络拓扑结构G,边缘节点集合VR,需要在边缘侧的应用程序组件集合即目标卸载数据设为R={r1,r2,r3......ri}。我们的目标是对集合R中的每个元素ri找到一条合适的路径p(ri,vk)(这里ri是路径的起点,vk为路径的终点),使得总的回收路径最小。如果在对路径求和的过程中,有多条路径包含相同的道路,那么可以将路径进行合并,重复的道路只计算一次。以两条路径p(ri,vk)和p(rp,vq)为例,其合并后的路径长度为两条路径长度之和减去这两条路径中的公共路径的长度,即可表示为
式中,we∈W表示边e的长度。所有符号都可以用集合的形式表示,令S为初始点集合,那么有令T为终点的集合,那么有|T|=|VR|=k。对于每个s∈S,都有唯一的t∈T与之相对应。此时,可以用p(s,t)表示两者之间不含重复的路径,总的路径集合可表示为:路径集合中包含的边的集合为同时任意的s∈S和t∈T找到一条路径p(s,t),使得路径长度在满足一定约束条件的情况下,达到总的路径之和最短。该问题模型可以用如下表达式来表示:且其中约束条件表明路径的长度不能超过固定的常数λ。常数的选取与时间相关联,通常大于两点间最短路径的长度。
对于具体的路径规划,需要采取随机游走策略对路径进行组合。可以以任一节点为初始点在网络上进行随机游走,并构建一条长度l的随机游走链。l的大小最终结果的准确性,当l→∞时,产生的结果为最优值。
为了节省采样的时间,能够同时在不同的顶点开始进行一定长度的随机游走,多个游走一起进行,进一步地,所述基于所述预设网络拓扑结构图根据随机游走策略对所述目标卸载数据进行游走,以得到游走链长度为预设长度的目标游走链,包括:选取所述预设网络拓扑结构图中的第一边缘节点对所述目标卸载数据开始游走;基于所述第一边缘节点按照预设节点选取规则查找目标边缘节点;连接所述第一边缘节点和所述目标边缘节点,以得到初始游走链;判断所述初始游走链的长度是否达到预设长度;若所述初始游走链的初始长度达到预设长度,则将所述初始游走链作为目标游走链。
需要说明的是,所述第一边缘节点为预设网络拓扑图中的任意初始点s,所述预设节点选取规则指的是在第一边缘节点的相邻节点按照概率随机游走到该节点。例如,假设当前节点为v,按照v的邻边的权重比例随机游走到下一个邻接边缘节点u。邻接节点u需按照如下规则进行选取:选取v的邻接点集合对于所有的邻接节点u∈N(v),按照概率随机游走到该节点。
可以理解的是,当第一边缘节点和目标边缘节点连接起来的游走链长度达到预设长度后,则停止游走,并得到随机游走链长度为预设长度的目标游走链。
在具体实现中,游走过程如下:以任意初始点s作为第一边缘节点开始随机游走,假设当前节点为v,按照v的邻边的权重比例随机游走到下一个邻接边缘节点u。邻接节点u需按照如下规则进行选取:选取v的邻接点集合对于所有的邻接节点u∈N(v),按照概率随机游走到该节点。重复查找邻接节点u的步骤,直到产生长度为l的随机游走链。对于查找到的邻接节点都作为目标边缘节点。在游走之后,会得到一个长度为l的随机游走链L=<v1,v2,v3......vi>,在L中任意的两个相邻节点vi和vi+1之间的距离为对于任意一个s∈S,都有唯一的一个t∈T与之相对应,这样就构成了一组起始点-终点对<s,t>。对于集合S和T,一共有|s|个点对。对于所有的点对<si,ti>(1≤i≤|s|),在L中找出si和ti之间的所有路径,按照路径长短进行升序排列。于是,可以得到,P(si,st)=<p1(si,ti),p2(si,ti),...>,并且Pj(si,st)<Pj+1(si,st)。这样,对于每一组起始点和终点的定点对,都可以得到一个路径序列。对于网路图中的所有点对<si,ti>可以得到一个路径序列集合。最后,通过遍历上述路径序列集合中的所有路径组合得到全局最小值的路径组合。在构建路径序列的集合时,所有的路径长度都要满足条件
对于每个边缘节点,需要设置一个变量f,初始值为0。如果这个边缘节点是忙碌状态,将其置为1,待空闲时,将变量f置为0;如果这个边缘节点是空闲状态,则为初始值0。在基础的约束条件下,加入一个停止概率P来控制游走序列的过程,即只要发现满足上述两个约束条件下的路径上的边缘节点时,就可以立即停止随机游走序列的过程,直接将当前计算任务放到该空闲边缘节点上,f值置为1,继续执行下一轮游走过程。因此,在构建路径序列集合的过程中,可以去掉那些不符合那些约束条件的路径。在计算不同起始点-终点对的路径组合时,可以通过迭代的方法遍历每种组合,获取最优情况下的路径组合。能获取最优路径表明该路径上的所有边缘节点都忙碌,则当前计算任务需要进入任务队列中等待。虽然路径上的所有节点都是忙碌的,但可以在任务队列中等待,且此时的路径是在最优情况下所得。
本实施例通过若所述对应的卸载类型为云端卸载类型,则根据所述云端卸载类型通过所述任务调度模型对所述目标卸载数据进行位置分配,以得到所述目标卸载数据对应的目标位置;若所述对应的卸载类型为边缘侧卸载类型,则根据所述边缘侧卸载类型通过随机游走策略对所述目标卸载数据进行路径规划,得到目标路径,并根据所述目标路径得到所述目标卸载数据对应的目标位置。根据不同的卸载类型采取不同的调度策略,针对边缘侧卸载类型采取的随机游走策略,使任务调度能够有较好的适应性、连续性,在动态卸载网络的演化过程中不需要每一次都重新计算调整整个卸载网络的堆积游走,提高了任务调度及应用程序组件卸载的效率。
此外,参照图6,本发明实施例还提出一种基于边云协同的任务调度装置,所述基于边云协同的任务调度装置包括:
获取模块10,用于获取目标设备的连接指令;
所述获取模块10,还用于根据所述目标设备的连接指令获取对应的目标数据;
分类模块20,用于基于所述目标数据通过预设分类器进行卸载分类,以得到目标卸载数据及对应的卸载类型;
分配模块30,用于根据所述对应的卸载类型通过任务调度模型对所述目标卸载数据进行位置分配,以得到所述目标卸载数据对应的目标位置;
调度模块40,用于将所述目标卸载数据根据所述目标位置完成调度。
本实施例通过获取目标设备的连接指令;根据所述目标设备的连接指令获取对应的目标数据;基于所述目标数据通过预设分类器进行卸载分类,以得到目标卸载数据及对应的卸载类型;根据所述对应的卸载类型通过任务调度模型对所述目标卸载数据进行位置分配,以得到所述目标卸载数据对应的目标位置;将所述目标卸载数据根据所述目标位置完成调度。通过上述方式,通过预设分类器进行分类,降低了分类的错误率,同时根据数据类型选择对应的卸载位置,能够提高应用程序组件分类及卸载的效率,使任务调度策略变得简单且高效,保证边缘计算的服务器保持在一个合理的负载区间内。
在一实施例中,所述分类模块20,还用于获取所述目标数据中的目标卸载信息和目标应用程序组件信息;
通过预设分类器对所述目标应用程序组件信息进行分类,以得到目标卸载组件信息及对应的卸载类型;
根据所述目标卸载信息和所述目标卸载组件信息得到目标卸载数据。
在一实施例中,所述分类模块20,还用于获取预设数据库中的预设应用程序组件信息,以作为预设训练数据集;
通过预设训练数据集和初始训练目标对初始分类器进行训练;
在所述初始训练目标中的分离超平面满足预设条件时,以得到预设分类器。
在一实施例中,所述分配模块30,还用于若所述对应的卸载类型为云端卸载类型,则根据所述云端卸载类型通过所述任务调度模型对所述目标卸载数据进行位置分配,以得到所述目标卸载数据对应的目标位置;
若所述对应的卸载类型为边缘侧卸载类型,则根据所述边缘侧卸载类型通过随机游走策略对所述目标卸载数据进行路径规划,得到目标路径,并根据所述目标路径得到所述目标卸载数据对应的目标位置。
在一实施例中,所述分配模块30,还用于若所述对应的卸载类型为边缘侧卸载类型,则获取预设网络拓扑结构图;
基于所述预设网络拓扑结构图根据随机游走策略对所述目标卸载数据进行游走,以得到游走链长度为预设长度的目标游走链;
根据所述目标游走链确定对应的路径集合,以得到所述路径集合中的最小路径;
将所述最小路径作为目标路径,并确定所述目标卸载数据对应的目标位置。
在一实施例中,所述分配模块30,还用于选取所述预设网络拓扑结构图中的第一边缘节点对所述目标卸载数据开始游走;
基于所述第一边缘节点按照预设节点选取规则查找目标边缘节点;
连接所述第一边缘节点和所述目标边缘节点,以得到初始游走链;
判断所述初始游走链的长度是否达到预设长度;
若所述初始游走链的初始长度达到预设长度,则将所述初始游走链作为目标游走链。
在一实施例中,所述获取模块10,还用于将所述目标设备的连接指令发送至对应的连接网关,以使所述连接网关反馈所述目标设备的认证结果;
识别所述认证结果中所述目标设备的连接指令是否合法,若所述连接指令合法,则根据所述认证结果获取对应的目标数据。
此外,本发明实施例还提出一种存储介质,所述存储介质上存储有基于边云协同的任务调度程序,所述基于边云协同的任务调度程序被处理器执行时实现如上文所述的基于边云协同的任务调度方法的步骤。
由于本存储介质采用了上述所有实施例的全部技术方案,因此至少具有上述实施例的技术方案所带来的所有有益效果,在此不再一一赘述。
需要说明的是,以上所描述的工作流程仅仅是示意性的,并不对本发明的保护范围构成限定,在实际应用中,本领域的技术人员可以根据实际的需要选择其中的部分或者全部来实现本实施例方案的目的,此处不做限制。
另外,未在本实施例中详尽描述的技术细节,可参见本发明任意实施例所提供的基于边云协同的任务调度方法,此处不再赘述。
此外,需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如只读存储器(Read Only Memory,ROM)/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种基于边云协同的任务调度方法,其特征在于,所述基于边云协同的任务调度方法包括:
获取目标设备的连接指令;
根据所述目标设备的连接指令获取对应的目标数据;
基于所述目标数据通过预设分类器进行卸载分类,以得到目标卸载数据及对应的卸载类型;
根据所述对应的卸载类型通过任务调度模型对所述目标卸载数据进行位置分配,以得到所述目标卸载数据对应的目标位置;
将所述目标卸载数据根据所述目标位置完成调度。
2.如权利要求1所述的基于边云协同的任务调度方法,其特征在于,所述基于所述目标数据通过预设分类器进行卸载分类,以得到目标卸载数据及对应的卸载类型,包括:
获取所述目标数据中的目标卸载信息和目标应用程序组件信息;
通过预设分类器对所述目标应用程序组件信息进行分类,以得到目标卸载组件信息及对应的卸载类型;
根据所述目标卸载信息和所述目标卸载组件信息得到目标卸载数据。
3.如权利要求2所述的基于边云协同的任务调度方法,其特征在于,所述通过预设分类器对所述目标应用程序组件信息进行分类,以得到目标卸载组件信息及对应的卸载类型之前,还包括:
获取预设数据库中的预设应用程序组件信息,以作为预设训练数据集;
通过预设训练数据集和初始训练目标对初始分类器进行训练;
在所述初始训练目标中的分离超平面满足预设条件时,以得到预设分类器。
4.如权利要求1所述的基于边云协同的任务调度方法,其特征在于,所述对应的卸载类型包括云端卸载类型和边缘侧卸载类型;
所述根据所述对应的卸载类型通过任务调度模型对所述目标卸载数据进行位置分配,以得到所述目标卸载数据对应的目标位置,包括:
若所述对应的卸载类型为云端卸载类型,则根据所述云端卸载类型通过所述任务调度模型对所述目标卸载数据进行位置分配,以得到所述目标卸载数据对应的目标位置;
若所述对应的卸载类型为边缘侧卸载类型,则根据所述边缘侧卸载类型通过随机游走策略对所述目标卸载数据进行路径规划,得到目标路径,并根据所述目标路径得到所述目标卸载数据对应的目标位置。
5.如权利要求4所述的基于边云协同的任务调度方法,其特征在于,所述若所述对应的卸载类型为边缘侧卸载类型,则根据所述边缘侧卸载类型通过随机游走策略对所述目标卸载数据进行路径规划,得到目标路径,并根据所述目标路径得到所述目标卸载数据对应的目标位置,包括:
若所述对应的卸载类型为边缘侧卸载类型,则获取预设网络拓扑结构图;
基于所述预设网络拓扑结构图根据随机游走策略对所述目标卸载数据进行游走,以得到游走链长度为预设长度的目标游走链;
根据所述目标游走链确定对应的路径集合,以得到所述路径集合中的最小路径;
将所述最小路径作为目标路径,并确定所述目标卸载数据对应的目标位置。
6.如权利要求5所述的基于边云协同的任务调度方法,其特征在于,所述基于所述预设网络拓扑结构图根据随机游走策略对所述目标卸载数据进行游走,以得到游走链长度为预设长度的目标游走链,包括:
选取所述预设网络拓扑结构图中的第一边缘节点对所述目标卸载数据开始游走;
基于所述第一边缘节点按照预设节点选取规则查找目标边缘节点;
连接所述第一边缘节点和所述目标边缘节点,以得到初始游走链;
判断所述初始游走链的长度是否达到预设长度;
若所述初始游走链的初始长度达到预设长度,则将所述初始游走链作为目标游走链。
7.如权利要求1至6中任一项所述的基于边云协同的任务调度方法,其特征在于,所述根据所述目标设备的连接指令获取对应的目标数据之前,还包括:
将所述目标设备的连接指令发送至对应的连接网关,以使所述连接网关反馈所述目标设备的认证结果;
识别所述认证结果中所述目标设备的连接指令是否合法,若所述连接指令合法,则根据所述认证结果获取对应的目标数据。
8.一种基于边云协同的任务调度装置,其特征在于,所述基于边云协同的任务调度装置包括:
获取模块,用于获取目标设备的连接指令;
所述获取模块,还用于根据所述目标设备的连接指令获取对应的目标数据;
分类模块,用于基于所述目标数据通过预设分类器进行卸载分类,以得到目标卸载数据及对应的卸载类型;
分配模块,用于根据所述对应的卸载类型通过任务调度模型对所述目标卸载数据进行位置分配,以得到所述目标卸载数据对应的目标位置;
调度模块,用于将所述目标卸载数据根据所述目标位置完成调度。
9.一种基于边云协同的任务调度设备,其特征在于,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的基于边云协同的任务调度程序,所述基于边云协同的任务调度程序配置为实现如权利要求1至7中任一项所述的基于边云协同的任务调度方法。
10.一种存储介质,其特征在于,所述存储介质上存储有基于边云协同的任务调度程序,所述基于边云协同的任务调度程序被处理器执行时实现如权利要求1至7任一项所述的基于边云协同的任务调度方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110617038.3A CN113391850B (zh) | 2021-06-02 | 2021-06-02 | 基于边云协同的任务调度方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110617038.3A CN113391850B (zh) | 2021-06-02 | 2021-06-02 | 基于边云协同的任务调度方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113391850A true CN113391850A (zh) | 2021-09-14 |
CN113391850B CN113391850B (zh) | 2022-08-30 |
Family
ID=77619876
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110617038.3A Active CN113391850B (zh) | 2021-06-02 | 2021-06-02 | 基于边云协同的任务调度方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113391850B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160274942A1 (en) * | 2015-03-20 | 2016-09-22 | International Business Machines Corporation | Managing a set of assets for a user in a shared pool of configurable computing resources |
CN110933154A (zh) * | 2019-11-23 | 2020-03-27 | 上海上实龙创智慧能源科技股份有限公司 | 一种面向污水处理物联网应用的边云数据协同方法及系统 |
CN111488208A (zh) * | 2020-03-22 | 2020-08-04 | 浙江工业大学 | 基于可变步长蝙蝠算法的边云协同计算节点调度优化方法 |
CN112004239A (zh) * | 2020-08-11 | 2020-11-27 | 中国科学院计算机网络信息中心 | 一种基于云边协同的计算卸载方法及系统 |
-
2021
- 2021-06-02 CN CN202110617038.3A patent/CN113391850B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160274942A1 (en) * | 2015-03-20 | 2016-09-22 | International Business Machines Corporation | Managing a set of assets for a user in a shared pool of configurable computing resources |
CN110933154A (zh) * | 2019-11-23 | 2020-03-27 | 上海上实龙创智慧能源科技股份有限公司 | 一种面向污水处理物联网应用的边云数据协同方法及系统 |
CN111488208A (zh) * | 2020-03-22 | 2020-08-04 | 浙江工业大学 | 基于可变步长蝙蝠算法的边云协同计算节点调度优化方法 |
CN112004239A (zh) * | 2020-08-11 | 2020-11-27 | 中国科学院计算机网络信息中心 | 一种基于云边协同的计算卸载方法及系统 |
Non-Patent Citations (1)
Title |
---|
邓晓衡等: "基于综合信任的边缘计算资源协同研究", 《计算机研究与发展》 * |
Also Published As
Publication number | Publication date |
---|---|
CN113391850B (zh) | 2022-08-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110766269A (zh) | 一种任务分配方法、装置、可读存储介质及终端设备 | |
CN109658033B (zh) | 货源路线相似度计算方法、系统、设备及存储介质 | |
CN113326126A (zh) | 任务处理方法、任务调度方法、装置及计算机设备 | |
CN110287332B (zh) | 云环境下仿真模型选择方法与装置 | |
Padmanabhan Panchu et al. | Multi-objective Optimisation of Multi-robot Task Allocation with Precedence Constraints. | |
Carić et al. | A modelling and optimization framework for real-world vehicle routing problems | |
Park et al. | Investigating a machine breakdown genetic programming approach for dynamic job shop scheduling | |
CN113191533A (zh) | 仓库用工预测方法、装置、设备及存储介质 | |
US7664858B2 (en) | Method for balancing load between processors in a multi-processor environment | |
Horng et al. | Apply ordinal optimization to optimize the job-shop scheduling under uncertain processing times | |
CN113391850B (zh) | 基于边云协同的任务调度方法、装置、设备及存储介质 | |
Kim et al. | Towards clustering of incomplete microarray data without the use of imputation | |
CN110705889A (zh) | 一种企业筛选方法、装置、设备及存储介质 | |
CN113837467B (zh) | 点对点能源项目评估方法、装置、计算机设备和存储介质 | |
CN116049678A (zh) | 特征贡献度评估方法、装置、电子设备和存储介质 | |
CN113782092B (zh) | 一种生存期预测模型的生成方法及装置、存储介质 | |
CN111353797A (zh) | 资源分配方法、装置以及电子设备 | |
CN115760486A (zh) | 临建规模评估方法、装置、设备和可读存储介质 | |
CN114841664A (zh) | 一种多任务处理顺序确定方法及装置 | |
CN111612198B (zh) | 预测拼单成功率的方法、装置和电子设备 | |
CN113779116A (zh) | 对象排序方法、相关设备及介质 | |
CN114548463A (zh) | 线路信息预测方法、装置、计算机设备和存储介质 | |
CN118312657B (zh) | 一种基于知识库的智能化大模型分析推荐系统及方法 | |
CN111448575A (zh) | 用于评估模型性能的系统和方法 | |
CN117114202B (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 |