CN111400050A - 一种分配资源执行任务的方法及装置 - Google Patents
一种分配资源执行任务的方法及装置 Download PDFInfo
- Publication number
- CN111400050A CN111400050A CN202010235828.0A CN202010235828A CN111400050A CN 111400050 A CN111400050 A CN 111400050A CN 202010235828 A CN202010235828 A CN 202010235828A CN 111400050 A CN111400050 A CN 111400050A
- Authority
- CN
- China
- Prior art keywords
- task
- tasks
- chromosome
- execution time
- vectors
- 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/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/5038—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 execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/12—Computing arrangements based on biological models using genetic models
- G06N3/126—Evolutionary algorithms, e.g. genetic algorithms or genetic programming
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biophysics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (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)
- Debugging And Monitoring (AREA)
Abstract
本发明提供一种分配资源执行任务的方法及装置,所述方法包括:获取N个用于根据软件扫描结果生成报表的任务,将各任务对应的任务项映射为对应的向量,将得到的向量组成任务矩阵A;通过遗传算法将T与A’X求差作为自适应度函数,对染色体向量集J中的X进行交叉编译及变异后得到的染色体向量X’;确定利用X’中系统资源执行A中任务项对应的预计任务执行时间,利用各任务对应的预计任务执行时间执行各任务。利用本发明提供的一种分配资源执行任务的方法,可以适用各种不同体量的报表任务,通过遗传算法对报表输出时间预估和调度,能够实时计算出报表的输出时间,以实现输出任务报表的高效调度。
Description
技术领域
本发明涉及系统漏洞分析领域,特别涉及一种分配资源执行任务的方法及装置。
背景技术
随着网络技术的发展,网络风险日益突出,每一个业务方需要保证自己的业务的网络安全,业务方通过分析软件找出业务系统中的漏洞,可以通过管理账号登陆查看扫描结果,可以了解当前业务系统中存在的网络风险,针对网络风险选择修复。
承载扫描结果的为报表,现有的主流分析扫描软件生成报表时,往往采用的是接收报表任务后直接向用户输出报表,系统通过进程调用全部业务系统资源开始输出报表,成功生成报表之后,就结束进程并向用户展示结果。此种收到报表任务就调用全部业务系统资源生成报表的先入先生成方式,不能够完全利用业务系统中的硬件资源,如IO接口、CPU资源等,当系统接收到利用硬件资源较低的报表任务时,会出现业务系统中某些硬件长期闲置,另外的硬件长期忙碌的状态,并且容易造成系统资源利用不平衡的问题,此外,利用上述方式生成报表,使得最终的各报表生成时间无法准确估计,从而使系统无法根据报表生成时间合理调度报表生成任务以达到资源的最大化利用。
发明内容
本发明提供一种分配资源执行任务的方法及装置,用于解决利用现有方式生成报表,使得最终的各报表生成时间无法准确估计,从而使系统无法根据报表生成时间合理调度报表生成任务以达到资源的最大化利用的问题。
本发明第一方面提供一种分配资源执行任务的方法,所述方法包括:
获取N个用于根据软件扫描结果生成报表的任务,将各任务对应的任务项映射为对应的向量,将得到的向量组成任务矩阵A,所述N为正整数;
通过遗传算法将T与A’X求差作为自适应度函数,对染色体向量集J中的X进行交叉编译及变异后得到的染色体向量X’,所述X表示系统资源随机分配结果的染色体向量,所述染色体向量集J中存储多个染色体向量X,A’X为利用X中系统资源执行A’中任务项对应的任务执行时间,A’为已知任务执行时间的任务矩阵A’,T为A’对应的已知任务执行时间向量T;
确定利用X’中系统资源执行A中任务项对应的预计任务执行时间,利用各任务对应的预计任务执行时间执行各任务。
可选地,所述通过遗传算法将T与A’X求差作为自适应度函数,对染色体向量集J中的X进行交叉编译及变异后得到的染色体向量X’,包括:
通过遗传算法将T与A’X求差作为自适应度函数,对染色体向量集J中的X进行交叉编译及变异的过程,确定差值向量的模值最小时对应的X为染色体向量X’。
可选地,所述利用各任务对应的预计任务执行时间执行各任务,包括:
确定预计任务执行时间低于执行时间阈值的任务并加入短时任务序列,优先执行所述短时任务序列中的任务;
将当前除短时任务序列中任务外的剩余任务,按照预计任务执行时间从小到大的顺序执行。
可选地,优先执行所述短时任务序列中的任务,包括:
将所述短时任务序列中的多个任务,同时利用对应的系统资源并将预计任务执行时间低于执行时间阈值的多个任务并行执行。
可选地,所述优先执行所述短时任务序列中的任务的过程中,还包括:
新收到M个任务,且根据X’中系统资源执行M个任务的预计任务执行时间,确定存在低于执行时间阈值的任务时,将该任务加入短时任务序列。
可选地,还包括:
将执行各任务得到的报表数据的顺序依次放入系统,通过系统渲染报表数据生成报表。
可选地,将各任务对应的任务项映射为对应的向量,包括:
根据对软件扫描结果的级别分类,将是否输出不同分类位置内容的结果映射为对应的码字;
将软件扫描结果中需要判断存在漏洞地址的总数量映射为对应的码字;
将软件扫描结果中已存在漏洞地址的总数量映射为对应的码字。
可选地,所述差值向量包括与各任务对应的差值,对染色体向量集J中的X进行交叉编译及变异的过程,确定差值的模值最小时对应的X为染色体向量X’,包括:
利用所述自适应度函数计算的与各任务对应的差值模值,将差值模值大于向量阈值的任务对应的染色体向量X从染色体向量集J中删除;
将剩余染色体向量通过交叉编译与变异生成新生代向量补充至染色体向量集J中;
重复上述步骤K次,在染色体向量集J中得到差值向量的模值最小的染色体向量X’,所述K为正整数。
可选地,将剩余染色体向量通过交叉编译与变异生成新生代向量补充至染色体向量集J中,包括:
将补充至染色体向量集J中剩余染色体向量,通过两两随机组合进行交叉编译得到交叉编译后染色体向量X交;
将交叉编译后染色体向量X交中的至少一位码字修改得到新生代向量X新,补充至染色体向量集J中,至得到的新生代向量X新的数量达到之前删除的染色体向量的数量。
本发明第二方面用于提供一种分配资源执行任务的装置,所述装置包括:
存储器,用于存储指令;
处理器,用于读取所述存储器中的指令,执行下列过程:
获取N个用于根据软件扫描结果生成报表的任务,将各任务对应的任务项映射为对应的向量,将得到的向量组成任务矩阵A,所述N为正整数;
通过遗传算法将T与A’X求差作为自适应度函数,对染色体向量集J中的X进行交叉编译及变异后得到的染色体向量X’,所述X表示系统资源随机分配结果的染色体向量,所述染色体向量集J中存储多个染色体向量X,A’X为利用X中系统资源执行A’中任务项对应的任务执行时间,A’为已知任务执行时间的任务矩阵A’,T为A’对应的已知任务执行时间向量T;
确定利用X’中系统资源执行A中任务项对应的预计任务执行时间,利用各任务对应的预计任务执行时间执行各任务。
可选地,所述处理器用于通过遗传算法将T与A’X求差作为自适应度函数,对染色体向量集J中的X进行交叉编译及变异后得到的染色体向量X’,包括:
通过遗传算法将T与A’X求差作为自适应度函数,对染色体向量集J中的X进行交叉编译及变异的过程,确定差值向量的模值最小时对应的X为染色体向量X’。
可选地,所述处理器用于利用各任务对应的预计任务执行时间执行各任务,包括:
确定预计任务执行时间低于执行时间阈值的任务并加入短时任务序列,优先执行所述短时任务序列中的任务;
将当前除短时任务序列中任务外的剩余任务,按照预计任务执行时间从小到大的顺序执行。
可选地,所述处理器用于优先执行所述短时任务序列中的任务,包括:
将所述短时任务序列中的多个任务,同时利用对应的系统资源并将预计任务执行时间低于执行时间阈值的多个任务并行执行。
可选地,所述处理器用于优先执行所述短时任务序列中的任务的过程中,还包括:
新收到M个任务,且根据X’中系统资源执行M个任务的预计任务执行时间,确定存在低于执行时间阈值的任务时,将该任务加入短时任务序列。
可选地,所述处理器还用于:
将执行各任务得到的报表数据的顺序依次放入系统,通过系统渲染报表数据生成报表。
可选地,所述处理器用于将各任务对应的任务项映射为对应的向量,包括:
根据对软件扫描结果的级别分类,将是否输出不同分类位置内容的结果映射为对应的码字;
将软件扫描结果中需要判断存在漏洞地址的总数量映射为对应的码字;
将软件扫描结果中已存在漏洞地址的总数量映射为对应的码字。
可选地,所述处理器用于差值向量包括与各任务对应的差值,对染色体向量集J中的X进行交叉编译及变异的过程,确定差值的模值最小时对应的X为染色体向量X’,包括:
利用所述自适应度函数计算的与各任务对应的差值模值,将差值模值大于向量阈值的任务对应的染色体向量X从染色体向量集J中删除;
将剩余染色体向量通过交叉编译与变异生成新生代向量补充至染色体向量集J中;
重复上述步骤K次,在染色体向量集J中得到差值向量的模值最小的染色体向量X’,所述K为正整数。
可选地,所述处理器用于将剩余染色体向量通过交叉编译与变异生成新生代向量补充至染色体向量集J中,包括:
将补充至染色体向量集J中剩余染色体向量,通过两两随机组合进行交叉编译得到交叉编译后染色体向量X交;
将交叉编译后染色体向量X交中的至少一位码字修改得到新生代向量X新,补充至染色体向量集J中,至得到的新生代向量X新的数量达到之前删除的染色体向量的数量。
本发明第三方面用于提供一种分配资源执行任务的装置,所述装置包括如下模块:
任务获取模块,用于获取N个用于根据软件扫描结果生成报表的任务,将各任务对应的任务项映射为对应的向量,将得到的向量组成任务矩阵A,所述N为正整数;
染色体矩阵获取模块,用于通过遗传算法将T与A’X求差作为自适应度函数,对染色体向量集J中的X进行交叉编译及变异后得到的染色体向量X’,所述X表示系统资源随机分配结果的染色体向量,所述染色体向量集J中存储多个染色体向量X,A’X为利用X中系统资源执行A’中任务项对应的任务执行时间,A’为已知任务执行时间的任务矩阵A’,T为A’对应的已知任务执行时间向量T;
任务执行模块,用于确定利用X’中系统资源执行A中任务项对应的预计任务执行时间,利用各任务对应的预计任务执行时间执行各任务。
染色体矩阵获取模块,用于通过遗传算法将T与A’X求差作为自适应度函数,对染色体向量集J中的X进行交叉编译及变异后得到的染色体向量X’,包括:
通过遗传算法将T与A’X求差作为自适应度函数,对染色体向量集J中的X进行交叉编译及变异的过程,确定差值向量的模值最小时对应的X为染色体向量X’。
任务执行模块,用于利用各任务对应的预计任务执行时间执行各任务,包括:
确定预计任务执行时间低于执行时间阈值的任务并加入短时任务序列,优先执行所述短时任务序列中的任务;
将当前除短时任务序列中任务外的剩余任务,按照预计任务执行时间从小到大的顺序执行。
任务执行模块,用于优先执行所述短时任务序列中的任务,包括:
将所述短时任务序列中的多个任务,同时利用对应的系统资源并将预计任务执行时间低于执行时间阈值的多个任务并行执行。
任务执行模块,用于优先执行所述短时任务序列中的任务的过程中,还包括:
新收到M个任务,且根据X’中系统资源执行M个任务的预计任务执行时间,确定存在低于执行时间阈值的任务时,将该任务加入短时任务序列。
任务执行模块,还用于:
将执行各任务得到的报表数据的顺序依次放入系统,通过系统渲染报表数据生成报表。
任务获取模块,用于将各任务对应的任务项映射为对应的向量,包括:
根据对软件扫描结果的级别分类,将是否输出不同分类位置内容的结果映射为对应的码字;
将软件扫描结果中需要判断存在漏洞地址的总数量映射为对应的码字;
将软件扫描结果中已存在漏洞地址的总数量映射为对应的码字。
染色体矩阵获取模块,用于差值向量包括与各任务对应的差值,对染色体向量集J中的X进行交叉编译及变异的过程,确定差值的模值最小时对应的X为染色体向量X’,包括:
利用所述自适应度函数计算的与各任务对应的差值模值,将差值模值大于向量阈值的任务对应的染色体向量X从染色体向量集J中删除;
将剩余染色体向量通过交叉编译与变异生成新生代向量补充至染色体向量集J中;
重复上述步骤K次,在染色体向量集J中得到差值向量的模值最小的染色体向量X’,所述K为正整数。
染色体矩阵获取模块,用于将剩余染色体向量通过交叉编译与变异生成新生代向量补充至染色体向量集J中,包括:
将补充至染色体向量集J中剩余染色体向量,通过两两随机组合进行交叉编译得到交叉编译后染色体向量X交;
将交叉编译后染色体向量X交中的至少一位码字修改得到新生代向量X新,补充至染色体向量集J中,至得到的新生代向量X新的数量达到之前删除的染色体向量的数量。
本发明第四方面提供一种计算机介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令被处理器执行时实现如第一方面中任一项所述的一种分配资源执行任务的方法。
利用本发明提供的一种分配资源执行任务的方法及装置,可以适用各种不同体量的报表任务,通过遗传算法对报表输出时间预估和调度,能够实时计算出报表的输出时间,以实现输出任务报表的高效调度。
附图说明
图1为一种安全管理平台的系统示意图;
图2为一种分配资源执行任务的方法的流程图;
图3为一种分配资源执行任务的方法的完整流程图;
图4为一种分配资源执行任务的装置的结构图;
图5为一种分配资源执行任务的装置的模块图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了方便理解,下面对本发明实施例中涉及的名词进行解释:
1)系统资源,分为当用于收集生成报表所需要的所有数据时使用占用系统资源-CPU资源较多的密集型操作,当将上一步生成的数据渲染成可供热阅读的页面(报表)时,占用系统资源-IO资源较多的储存密集型操作。
2)遗传算法,(Genetic Algorithm)是模拟达尔文生物进化论的自然选择和遗传学机理的生物进化过程的计算模型,是一种通过模拟自然进化过程搜索最优解的方法,遗传算法是从代表问题可能潜在的解集的一个种群开始的,而一个种群则由经过染色体编码的一定数目的个体组成。每个个体实际上是染色体带有特征的实体。染色体作为遗传物质的主要载体,即多个基因的集合,其内部表现是某种基因组合,它决定了个体的形状的外部表现,在一开始需要实现从表现型到基因型的映射即编码工作。因仿照基因编码的工作很复杂,我们往往将其进行简化,如二进制编码,初代种群产生之后,按照适者生存和优胜劣汰的原理,逐代演化产生出越来越好的近似解,在每一代,根据问题域中个体的适应度大小选择个体,并借助于自然遗传学的遗传算子进行交叉编译和变异,产生出代表新的解集的种群。这个过程将导致种群像自然进化一样的后生代种群比前代更加适应于环境,末代种群中的最优个体经过解码,可以作为问题近似最优解。
本发明实施例提供的分配资源执行任务的方法应用于管理平台,所述管理平台可以是安全管理平台。
如图1所示,所述安全管理平台主要包括:任务发送端101和报表生成端102两个部分,其中任务发送端101的任务数据来源是指要分析或统计的数据来源,对应的是关系型数据库中的数据表,在报表生成端102支持的数据库类型包括:MySQL、PostgreSQL、SQLServer等,此外,如果想要支持更多的数据源,可以扩展新的数据源,扩展新的数据源则可以通过增加接口适配层插件来实现,在扩展新的数据源的同时,所述接口适配层插件还提供了调用该数据源的方法,从而可以实现在该数据源中进行数据信息的查找。
报表生成端102根据预先编辑的报表生成显示架构,以及显示架构中每个任务项的显示关系,所述任务下包含多个子任务,由报表生成端102针对用户输入的任务的各个子任务数据对应编辑为待生成的报表的显示架构,以及显示架构中每个统计项的显示关系,生成对应的XML(Extensible Markup Language,可扩展标记语言)形式的配置文件即报表。
所述显示架构包括待生成的报表中的任务项的显示位置,以及任务项之间的层级关系,且支持多层级。例如该管理平台支持3层级任务项的报表,用户在该管理平台提供的可视化编辑界面,使用鼠标拖拽出待生成的报表的显示架构,以及显示架构中每个统计项的显示关系,生成对应的XML配置文件,并保存其中所述XML配置文件中包括该文件对应的用户输入的任务唯一标识信息。
所述报表中的任务项为开发人员预先编辑好,并以XML的格式保存到该管理平台中,所述任务项中至少包括对应的数据源和统计方式参数,此外所述统计项中还包括待输入或选择的过滤参数,例如任务信息、风险分布、漏洞风险类别、参考标准等任务项。所述任务项中还包括一个或多个该安全管理平台的功能信息,具体所述任务项中包括哪些功能信息由开发人员确定,例如在选择需要在待生成的报表中每个任务项需要显示的数据信息对应的时间信息,以及过滤参数,所述过滤参数可以为针对该统计项中包括的功能信息对应的过滤参数,统计项中的一个功能信息对应一个过滤条件。例如,如果该统计项中包括的功能信息有危险程度和攻击手段,则该统计项中对应的过滤条件有危险程度和攻击手段,则所述危险程度对应的待选择的过滤参数可以包括高风险、中风险和低风险,所述攻击手段对应的待选择的过滤参数可以包括拒绝服务攻击、获取权限攻击和网络监控操作等。
报表生成端102的最终的报表显示方式还可以为饼状图、柱状图以及时间趋势图。若需要支持更多的显示方式,以通过增加显示方式插件来实现。每种显示方式都有其对应的参数提取方式,这里不再赘述。
实施例一
本发明实施例提供一种分配资源执行任务的方法,应用于报表生成端102,所述方法包括如下步骤,如图2所示:
步骤S201,获取N个用于根据软件扫描结果生成报表的任务,将各任务对应的任务项映射为对应的向量,将得到的向量组成任务矩阵A,所述N为正整数;
需要说明的是,本实施例中上述任务可以是将软件扫描结果生成对应报表的任务,也可以是将软件扫描结果生成对应报表的任务中的子任务。
所述软件扫描结果的方式为,由任务发送端101通过本地的扫描软件将软件扫描结果存储在任务发送端101的数据库中,并通过任务发送端101将软件扫描结果发送到报表生成端102;
所述任务矩阵中包括多个表示软件扫描结果生成报表的任务的向量,在任务矩阵A中,一个软件扫描结果生成报表的任务对应任务矩阵A中的一行向量,将各任务对应的任务项映射为对应的向量,每个向量中包含表示所需生成报表中的所有章节,所述每个章节中又包括多个任务项;
所述任务矩阵A最终的表示形式为含有N行向量m的矩阵;
将由任务发送端101的任务信息中的任务项映射为对应的向量,将N个任务组成任务矩阵A,其任务矩阵中包括多个表示任务的任务项的向量。
步骤S202,通过遗传算法将T与A’X求差作为自适应度函数,对染色体向量集J中的X进行交叉编译及变异后得到的染色体向量X’;
其中A’为已知任务执行时间的任务矩阵,已知任务执行时间指的是,历史上在报表生成端102中生成过报表的已知任务执行时间的任务,将已知任务执行时间的任务中的任务信息中的任务项映射为对应的向量,将多个任务对应的向量组成任务矩阵A’,将历史上已知任务执行时间任务的任务执行时间转化为已知任务执行时间向量T;
其中已知任务执行时间向量T的形式为:
其中t1~tn为n个已知任务执行时间的任务实际执行的时间,其中所述n和任务矩阵中的N个任务的数量可以相同也可以不相同,这里不做限制。
初始时,随机分配系统资源给任务中的各任务项,可以进行至少一次系统资源分配,每次分配的结果对应一个染色体向量,随机分配结果的多个染色体向量存储在染色体向量集J中,X表示将报表生成端102的系统资源随机分配给各任务项的结果对应的染色体向量,所述染色体向量随机生成多个并存储在染色体向量集J中,染色体向量中包括多个码字,任务向量中包括不同的码字,不同的码字表示不同的任务项内容,不同的码字表示不同的资源分配情况,染色体向量中码字数与各任务矩阵A中的任务向量的码字数相同。
通过T-A’X得到自适应度函数的值,其中利用X中的表示的资源分配方式执行任务矩阵A’中的各任务的任务项,最终得到各任务对应的任务项执行时间,对任务项执行时间求和得到各任务的任务执行时间,将已知任务执行时间向量T减去A’X的矩阵的模值,所述T-A’X的结果的表示形式为向量,所述向量中的每个元素代表各任务的任务执行时间,其中,已知任务执行时间任务的任务矩阵A’形式和上述任务矩阵A的码字映射形式是类似的,在上文已经进行介绍,这里不再赘述。需要说明的是,将T中各个任务的执行时间,减去A’X对应的各任务的执行时间,得到包括多个时间差的向量,对该多个时间差取绝对值并求和得到上述模值。
通过遗传算法将T与A’X求差作为自适应度函数,对染色体向量集J中的X进行交叉编译及变异的过程,确定差值向量的模值最小时对应的X为染色体向量X’。
如前所述,染色体向量初始时为多个,第一次交互变异时,利用所述自适应度函数计算的与各任务对应的差值模值,将差值模值大于向量阈值的任务对应的染色体向量从染色体向量集J中删除;
将剩余染色体向量通过交叉编译与变异生成新生代向量并加入染色体向量集J;
重复上述步骤K次,利用所述自适应度函数计算的与各任务对应的差值模值,在染色体向量集J中得到差值向量的模值最小的染色体向量X’。
具体的:将剩余染色体向量,通过两两随机组合进行交叉编译得到交叉编译后染色体向量X交;
所述两两随机组合进行交叉编译得到交叉编译后染色体向量X交为:在各个剩余染色体向量之间,通过两两随机组合,将两个染色体向量之间的某几位进行交叉替换,并将交叉替换后的两个染色体向量通过编译生成一个新的交叉编译后染色体向量X交,上述交叉编译的方式不限于上述描述的方式,任何用于遗传算法中的交叉编译方式,均可以作为本实施例中提供的交叉编译的方式,这里不做限制;
将交叉编译后染色体向量X交中的至少一位码字修改得到新生代向量X新,并剩余染色体向量中,至得到的新生代向量X新的数量达到之前删除的染色体向量的数量。
在得到交叉编译后染色体向量X交后,将X交中的至少一位码字进行修改,修改的方式可以为将原有的至少一位二进制码字反置,或将至少一位二进制码字重置,这里也不做限制,并将得到的新生代向量X新补充至剩余的染色体向量中,至染色体向量的数量恢复至原有的染色体向量中。
重复上述步骤K次至得到差值向量的模值最小时,在染色体向量集J中得到差值向量的模值最小的染色体向量X’,其中重复的次数可以由本领域技术人员通过人工设定,还可以通过遗传算法根据任务中数据数量进行判断,具体方式不再赘述。
步骤S203,确定利用X’中系统资源执行A中任务项对应的预计任务执行时间,利用各任务对应的预计任务执行时间执行各任务。
所述利用各任务对应的预计任务执行时间执行各任务,包括:
根据染色体向量X’及报表生成端102接收的各任务,确定各任务的预计任务执行时间;
确定预计任务执行时间低于执行时间阈值的任务并加入短时任务序列,优先执行所述短时任务序列中的任务;
所述执行时间阈值为在报表生成端102的系统资源中,低于执行时间阈值的任务可以并行处理的任务对应的执行时间。
将当前除短时任务序列中任务外的剩余任务,按照预计任务执行时间从小到大的顺序执行。
在短时任务序列执行结束后,根据各任务的预计任务执行时间,根据各任务的预计处理时间,将执行各任务得到的报表数据的顺序依次放入系统,通过系统渲染报表数据生成报表。
作为一种可选的实施方式,将任务发送端101的任务信息中的任务项映射为对应的向量包括:
根据对软件扫描结果的级别分类,将是否输出不同分类位置内容的结果映射为对应的码字;
具体的,在本实施例中,不同分类位置内容包括:综述信息、风险类别、主机信息、漏洞信息、配置信息、脆弱账号、对比分析及参考标准,分类位置内容包括但不限于上述提供的分类内容,其他的任务信息也可以作为分类位置内容,这里不做限定。
将软件扫描结果中需要判断存在漏洞地址的总数量映射为对应的码字;
具体的,任务发送端101存在多个需要判断存在漏洞地址,将漏洞地址的总数量映射为固定位数的二进制编码形式的码字,本实施例将固定位数确定为24位,所述固定位数的需可以表示漏洞地址的总数量,具体位数不做限制。
将软件扫描结果中已存在漏洞地址的总数量映射为对应的码字;
将已存在漏洞地址的总数量为固定位数的二进制编码码字,本实施例将固定位数确定为24位所述固定位数的需可以表示已存在漏洞地址的总数量具体位数不做限制。
作为一种可选的实施方式,获取软件扫描结果生成报表任务的章节中的所有任务项,通过使用二进制码字表示该任务项是否在需要生成的报表中存在,例如任务1,对应的向量m[1]:[1,1,1,1,1,0,0],在向量中‘1’表示该任务项存在,‘0’表示该任务项不存在,还可以采用其他码字来映射任务项的方式,表示软件扫描结果生成报表任务,对应的任务项参数在生成的报表中对应的取值范围,这里不再赘述,本领域技术人员应当知晓。
在存在多个任务项时,将各项任务项映射为对应的向量进行字符串拼接,例如,任务项1映射的码字为[1,1,1],任务项2映射的码字为[1,1,0,0],通过字符串拼接得到向量m[1]:[1,1,1,1,1,0,0]。
具体的,上述向量的码字映射方式,对应的染色体向量交叉编译及变异的方式可以为:
随机选择两个染色体向量,其中,剩余染色体向量1为X1=[1,1,1,1……0,1.0],剩余染色体向量2为X2=[1,0,1,1……0,0.0],交叉替换前四位获得新的剩余染色体:
Xnew1=[1,0,1,1……0,1.0];
Xnew2=[1,1,1,1……0,0.0];
并通过编译生成得到,交叉编译后染色体向量X交1=[1,1,1,1……0,1.0];
将上述交叉编译后染色体向量X交1=[1,1,1,1……0,1.0]中,第二位二进制码字进行反置,得到Xnew=[1,0,1,1……0,1.0]。
作为一种可选的实施方式,确定预计任务执行时间低于执行时间阈值的任务并加入短时任务序列,优先执行所述短时任务序列中的任务,优先执行所述短时任务序列中的任务,包括:
将所述短时任务序列中的多个任务,同时通过对应的系统资源将预计任务执行时间低于执行时间阈值的多个任务并行执行。
将低于执行时间阈值的任务同时放入系统,因其执行时间短,且占用的系统资源少,所以可以在系统中并行执行,将低于执行时间阈值的多个任务以并行的方式同时在系统执行,减少了多个任务在系统中的任务耗时。
作为另一种可选的实施方式,确定预计任务执行时间低于执行时间阈值的任务并加入短时任务序列,优先执行所述短时任务序列中的任务,优先执行所述短时任务序列中的任务,还包括:
新收到M个任务,且根据X’中系统资源执行M个任务的预计任务执行时间,确定存在低于执行时间阈值的任务时,将该任务加入短时任务序列。
具体的,首先执行将低于执行时间阈值的多个任务,当执行完执行时间阈值的多个任务后,继续接收M个任务,并根据X’和任务矩阵确定预计任务执行时间,确定存在低于执行时间阈值的任务时,将该任务加入短时任务序列,进行并行执行,当不存在低于执行时间阈值的任务时,将当前除短时任务序列中任务外的剩余任务,按照预计任务执行时间从小到大的顺序执行。
作为一种可选的实施方式,将执行各任务得到的报表数据的顺序依次放入系统,通过系统渲染报表数据生成报表。
具体的,确定各任务的预计任务执行时间的方法为:将表示系统资源的染色体矩阵X’表示的资源分配结果带入到各任务的任务项中,得到各任务的预计任务执行时间;
其中,在系统生成报表数据时占用CPU资源,得到系统生成报表数据的数据生成时间,因渲染报表为存储密集型操作,所以采用先进先出的执行策略较好,由此在系统得到生成报表数据后,采用先进先出的策略渲染生成最终的报表,得到报表渲染时间,将各任务的数据生成时间与各任务的报表渲染时间相加,得到生成报表的总时间。
如图3所示,为一种分配资源执行任务的方法的完整流程图;
步骤S301,获取N个用于根据软件扫描结果生成报表的任务,将各任务对应的任务项映射为对应的向量,将得到的向量组成任务矩阵A;
步骤S302,通过遗传算法将T与A’X求差作为自适应度函数,对染色体向量集J中的X进行交叉编译及变异后得到的染色体向量X’;
步骤S303,利用X’中系统资源执行A中任务项对应的任务,确定预计任务执行时间;
步骤S304,确定是否存在低于执行时间阈值的任务,若存在,执行步骤S305,否则执行步骤S306;
步骤S305,将低于执行时间阈值的任务加入短时任务序列,将所述短时任务序列中的多个任务,利用对应的系统资源并将预计任务执行时间低于执行时间阈值的多个任务并行执行;
步骤S306,确定是否有新收到的任务,当存在新收任务时,执行步骤S304,否则执行步骤S307;
步骤S307,将当前除短时任务序列中任务外的剩余任务,按照预计任务执行时间从小到大的顺序执行;
步骤S308,将执行各任务得到的报表数据的顺序依次放入系统,通过系统渲染报表数据生成报表,得到生成报表数据对应的数据生成时间,采用先进先出的策略渲染生成最终的报表,得到报表渲染时间;
步骤S309,将各任务的数据生成时间与各任务的报表渲染时间相加,得到生成报表的总时间。
利用本发明提供的一种分配资源执行任务的方法,可以适用各种不同体量的报表任务,通过遗传算法对报表输出时间预估和调度,能够实时计算出报表的输出时间,以实现输出任务报表的高效调度。
实施例二
如图4所示,本发明实施例提供一种分配资源执行任务的装置,包括一个或一个以上处理器(英文全称:central processing units,英文简称:CPU)401(例如,一个或一个以上处理器)和存储器402,一个或一个以上存储应用程序404或数据406的存储介质403(例如一个或一个以上海量存储设备)。其中,存储器402和存储介质403可以是短暂存储或持久存储。存储在存储介质403的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对信息处理装置中的一系列指令操作。更进一步地,处理器401可以设置为与存储介质403通信,在装置400上执行存储介质403中的一系列指令操作。
装置400还可以包括一个或一个以上电源409,一个或一个以上有线或无线网络接口407,一个或一个以上输入输出接口408,和/或,一个或一个以上操作系统405,例如Windows Server,Mac OS X,Unix,Linux,FreeBSD等。
处理器,用于读取所述存储器中的指令,执行下列过程:
获取N个用于根据软件扫描结果生成报表的任务,将各任务对应的任务项映射为对应的向量,将得到的向量组成任务矩阵A,所述N为正整数;
通过遗传算法将T与A’X求差作为自适应度函数,对染色体向量集J中的X进行交叉编译及变异后得到的染色体向量X’,所述X表示系统资源随机分配结果的染色体向量,所述染色体向量集J中存储多个染色体向量X,A’X为利用X中系统资源执行A’中任务项对应的任务执行时间,A’为已知任务执行时间的任务矩阵A’,T为A’对应的已知任务执行时间向量T;
确定利用X’中系统资源执行A中任务项对应的预计任务执行时间,利用各任务对应的预计任务执行时间执行各任务。
可选地,所述处理器用于通过遗传算法将T与A’X求差作为自适应度函数,对染色体向量集J中的X进行交叉编译及变异后得到的染色体向量X’,包括:
通过遗传算法将T与A’X求差作为自适应度函数,对染色体向量集J中的X进行交叉编译及变异的过程,确定差值向量的模值最小时对应的X为染色体向量X’。
可选地,所述处理器用于利用各任务对应的预计任务执行时间执行各任务,包括:
确定预计任务执行时间低于执行时间阈值的任务并加入短时任务序列,优先执行所述短时任务序列中的任务;
将当前除短时任务序列中任务外的剩余任务,按照预计任务执行时间从小到大的顺序执行。
可选地,所述处理器用于优先执行所述短时任务序列中的任务,包括:
将所述短时任务序列中的多个任务,同时利用对应的系统资源并将预计任务执行时间低于执行时间阈值的多个任务并行执行。
可选地,所述处理器用于优先执行所述短时任务序列中的任务的过程中,还包括:
新收到M个任务,且根据X’中系统资源执行M个任务的预计任务执行时间,确定存在低于执行时间阈值的任务时,将该任务加入短时任务序列。
可选地,所述处理器还用于:
将执行各任务得到的报表数据的顺序依次放入系统,通过系统渲染报表数据生成报表。
可选地,所述处理器用于将各任务对应的任务项映射为对应的向量,包括:
根据对软件扫描结果的级别分类,将是否输出不同分类位置内容的结果映射为对应的码字;
将软件扫描结果中需要判断存在漏洞地址的总数量映射为对应的码字;
将软件扫描结果中已存在漏洞地址的总数量映射为对应的码字。
可选地,所述处理器用于差值向量包括与各任务对应的差值,对染色体向量集J中的X进行交叉编译及变异的过程,确定差值的模值最小时对应的X为染色体向量X’,包括:
利用所述自适应度函数计算的与各任务对应的差值模值,将差值模值大于向量阈值的任务对应的染色体向量X从染色体向量集J中删除;
将剩余染色体向量通过交叉编译与变异生成新生代向量补充至染色体向量集J中;
重复上述步骤K次,在染色体向量集J中得到差值向量的模值最小的染色体向量X’,所述K为正整数。
可选地,所述处理器用于将剩余染色体向量通过交叉编译与变异生成新生代向量补充至染色体向量集J中,包括:
将补充至染色体向量集J中剩余染色体向量,通过两两随机组合进行交叉编译得到交叉编译后染色体向量X交;
将交叉编译后染色体向量X交中的至少一位码字修改得到新生代向量X新,补充至染色体向量集J中,至得到的新生代向量X新的数量达到之前删除的染色体向量的数量。
如图5所示,本发明实施例提供一种分配资源执行任务的装置,所述装置包括如下模块:
任务获取模块501,用于获取N个用于根据软件扫描结果生成报表的任务,将各任务对应的任务项映射为对应的向量,将得到的向量组成任务矩阵A,所述N为正整数;
染色体矩阵获取模块502,用于通过遗传算法将T与A’X求差作为自适应度函数,对染色体向量集J中的X进行交叉编译及变异后得到的染色体向量X’,所述X表示系统资源随机分配结果的染色体向量,所述染色体向量集J中存储多个染色体向量X,A’X为利用X中系统资源执行A’中任务项对应的任务执行时间,A’为已知任务执行时间的任务矩阵A’,T为A’对应的已知任务执行时间向量T;
任务执行模块503,用于确定利用X’中系统资源执行A中任务项对应的预计任务执行时间,利用各任务对应的预计任务执行时间执行各任务。
染色体矩阵获取模块502,用于通过遗传算法将T与A’X求差作为自适应度函数,对染色体向量集J中的X进行交叉编译及变异后得到的染色体向量X’,包括:
通过遗传算法将T与A’X求差作为自适应度函数,对染色体向量集J中的X进行交叉编译及变异的过程,确定差值向量的模值最小时对应的X为染色体向量X’。
任务执行模块503,用于利用各任务对应的预计任务执行时间执行各任务,包括:
确定预计任务执行时间低于执行时间阈值的任务并加入短时任务序列,优先执行所述短时任务序列中的任务;
将当前除短时任务序列中任务外的剩余任务,按照预计任务执行时间从小到大的顺序执行。
任务执行模块503,用于优先执行所述短时任务序列中的任务,包括:
将所述短时任务序列中的多个任务,同时利用对应的系统资源并将预计任务执行时间低于执行时间阈值的多个任务并行执行。
任务执行模块503,用于优先执行所述短时任务序列中的任务的过程中,还包括:
新收到M个任务,且根据X’中系统资源执行M个任务的预计任务执行时间,确定存在低于执行时间阈值的任务时,将该任务加入短时任务序列。
任务执行模块503,还用于:
将执行各任务得到的报表数据的顺序依次放入系统,通过系统渲染报表数据生成报表。
任务获取模块501,用于将各任务对应的任务项映射为对应的向量,包括:
根据对软件扫描结果的级别分类,将是否输出不同分类位置内容的结果映射为对应的码字;
将软件扫描结果中需要判断存在漏洞地址的总数量映射为对应的码字;
将软件扫描结果中已存在漏洞地址的总数量映射为对应的码字。
染色体矩阵获取模块502,用于差值向量包括与各任务对应的差值,对染色体向量集J中的X进行交叉编译及变异的过程,确定差值的模值最小时对应的X为染色体向量X’,包括:
利用所述自适应度函数计算的与各任务对应的差值模值,将差值模值大于向量阈值的任务对应的染色体向量X从染色体向量集J中删除;
将剩余染色体向量通过交叉编译与变异生成新生代向量补充至染色体向量集J中;
重复上述步骤K次,在染色体向量集J中得到差值向量的模值最小的染色体向量X’,所述K为正整数。
染色体矩阵获取模块502,用于将剩余染色体向量通过交叉编译与变异生成新生代向量补充至染色体向量集J中,包括:
将补充至染色体向量集J中剩余染色体向量,通过两两随机组合进行交叉编译得到交叉编译后染色体向量X交;
将交叉编译后染色体向量X交中的至少一位码字修改得到新生代向量X新,补充至染色体向量集J中,至得到的新生代向量X新的数量达到之前删除的染色体向量的数量。
本发明实施例提供一种计算机介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令被处理器执行时实现如实施例一中任一项所述的一种分配资源执行任务的方法。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (12)
1.一种分配资源执行任务的方法,其特征在于,所述方法包括:
获取N个用于根据软件扫描结果生成报表的任务,将各任务对应的任务项映射为对应的向量,将得到的向量组成任务矩阵A,所述N为正整数;
通过遗传算法将T与A’X求差作为自适应度函数,对染色体向量集J中的X进行交叉编译及变异后得到的染色体向量X’,所述X表示系统资源随机分配结果的染色体向量,所述染色体向量集J中存储多个染色体向量X,A’X为利用X中系统资源执行A’中任务项对应的任务执行时间,A’为已知任务执行时间的任务矩阵A’,T为A’对应的已知任务执行时间向量T;
确定利用X’中系统资源执行A中任务项对应的预计任务执行时间,利用各任务对应的预计任务执行时间执行各任务。
2.根据权利要求1所述的方法,其特征在于,所述通过遗传算法将T与A’X求差作为自适应度函数,对染色体向量集J中的X进行交叉编译及变异后得到的染色体向量X’,包括:
通过遗传算法将T与A’X求差作为自适应度函数,对染色体向量集J中的X进行交叉编译及变异的过程,确定差值向量的模值最小时对应的X为染色体向量X’。
3.根据权利要求1所述的方法,其特征在于,所述利用各任务对应的预计任务执行时间执行各任务,包括:
确定预计任务执行时间低于执行时间阈值的任务并加入短时任务序列,优先执行所述短时任务序列中的任务;
将当前除短时任务序列中任务外的剩余任务,按照预计任务执行时间从小到大的顺序执行。
4.根据权利要求3所述的方法,其特征在于,优先执行所述短时任务序列中的任务,包括:
将所述短时任务序列中的多个任务,同时利用对应的系统资源并将预计任务执行时间低于执行时间阈值的多个任务并行执行。
5.根据权利要求3所述的方法,其特征在于,所述优先执行所述短时任务序列中的任务的过程中,还包括:
新收到M个任务,且根据X’中系统资源执行M个任务的预计任务执行时间,确定存在低于执行时间阈值的任务时,将该任务加入短时任务序列。
6.根据权利要求1所述的方法,其特征在于,还包括:
将执行各任务得到的报表数据的顺序依次放入系统,通过系统渲染报表数据生成报表。
7.根据权利要求1所述的方法,其特征在于,将各任务对应的任务项映射为对应的向量,包括:
根据对软件扫描结果的级别分类,将是否输出不同分类位置内容的结果映射为对应的码字;
将软件扫描结果中需要判断存在漏洞地址的总数量映射为对应的码字;
将软件扫描结果中已存在漏洞地址的总数量映射为对应的码字。
8.根据权利要求2所述的方法,其特征在于,所述差值向量包括与各任务对应的差值,对染色体向量集J中的X进行交叉编译及变异的过程,确定差值的模值最小时对应的X为染色体向量X’,包括:
利用所述自适应度函数计算的与各任务对应的差值模值,将差值模值大于向量阈值的任务对应的染色体向量X从染色体向量集J中删除;
将剩余染色体向量通过交叉编译与变异生成新生代向量补充至染色体向量集J中;
重复上述步骤K次,在染色体向量集J中得到差值向量的模值最小的染色体向量X’,所述K为正整数。
9.根据权利要求8所述的方法,其特征在于,将剩余染色体向量通过交叉编译与变异生成新生代向量补充至染色体向量集J中,包括:
将补充至染色体向量集J中剩余染色体向量,通过两两随机组合进行交叉编译得到交叉编译后染色体向量X交;
将交叉编译后染色体向量X交中的至少一位码字修改得到新生代向量X新,补充至染色体向量集J中,至得到的新生代向量X新的数量达到之前删除的染色体向量的数量。
10.一种分配资源执行任务的装置,其特征在于,所述装置包括:
存储器,用于存储指令;
处理器,用于读取所述存储器中的指令,实现如权利要求1~9任一项所述的一种分配资源执行任务的方法。
11.一种分配资源执行任务的装置,其特征在于,所述装置包括如下模块:
任务获取模块,用于获取N个用于根据软件扫描结果生成报表的任务,将各任务对应的任务项映射为对应的向量,将得到的向量组成任务矩阵A,所述N为正整数;
染色体矩阵获取模块,用于通过遗传算法将T与A’X求差作为自适应度函数,对染色体向量集J中的X进行交叉编译及变异后得到的染色体向量X’,所述X表示系统资源随机分配结果的染色体向量,所述染色体向量集J中存储多个染色体向量X,A’X为利用X中系统资源执行A’中任务项对应的任务执行时间,A’为已知任务执行时间的任务矩阵A’,T为A’对应的已知任务执行时间向量T;
任务执行模块,用于确定利用X’中系统资源执行A中任务项对应的预计任务执行时间,利用各任务对应的预计任务执行时间执行各任务。
12.一种计算机介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令被处理器执行时实现如权利要求1~9任一项所述的一种分配资源执行任务的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010235828.0A CN111400050B (zh) | 2020-03-30 | 2020-03-30 | 一种分配资源执行任务的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010235828.0A CN111400050B (zh) | 2020-03-30 | 2020-03-30 | 一种分配资源执行任务的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111400050A true CN111400050A (zh) | 2020-07-10 |
CN111400050B CN111400050B (zh) | 2023-09-19 |
Family
ID=71434765
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010235828.0A Active CN111400050B (zh) | 2020-03-30 | 2020-03-30 | 一种分配资源执行任务的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111400050B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112631746A (zh) * | 2020-12-08 | 2021-04-09 | 南方科技大学 | 业务调度方法、装置、电子设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070005522A1 (en) * | 2005-06-06 | 2007-01-04 | Wren William E | Resource assignment optimization using direct encoding and genetic algorithms |
CN103902375A (zh) * | 2014-04-11 | 2014-07-02 | 北京工业大学 | 一种基于改进遗传算法的云任务调度方法 |
US20170116522A1 (en) * | 2015-10-05 | 2017-04-27 | Telekom Malaysia Berhad | Method For Task Scheduling And Resources Allocation And System Thereof |
CN110109753A (zh) * | 2019-04-25 | 2019-08-09 | 成都信息工程大学 | 基于多维度约束遗传算法的资源调度方法及系统 |
CN110780985A (zh) * | 2019-09-25 | 2020-02-11 | 苏州浪潮智能科技有限公司 | 一种有限时间的并行任务调度方法与装置 |
-
2020
- 2020-03-30 CN CN202010235828.0A patent/CN111400050B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070005522A1 (en) * | 2005-06-06 | 2007-01-04 | Wren William E | Resource assignment optimization using direct encoding and genetic algorithms |
CN103902375A (zh) * | 2014-04-11 | 2014-07-02 | 北京工业大学 | 一种基于改进遗传算法的云任务调度方法 |
US20170116522A1 (en) * | 2015-10-05 | 2017-04-27 | Telekom Malaysia Berhad | Method For Task Scheduling And Resources Allocation And System Thereof |
CN110109753A (zh) * | 2019-04-25 | 2019-08-09 | 成都信息工程大学 | 基于多维度约束遗传算法的资源调度方法及系统 |
CN110780985A (zh) * | 2019-09-25 | 2020-02-11 | 苏州浪潮智能科技有限公司 | 一种有限时间的并行任务调度方法与装置 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112631746A (zh) * | 2020-12-08 | 2021-04-09 | 南方科技大学 | 业务调度方法、装置、电子设备及存储介质 |
WO2022121041A1 (zh) * | 2020-12-08 | 2022-06-16 | 南方科技大学 | 业务调度方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111400050B (zh) | 2023-09-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104317749B (zh) | 信息写入方法和装置 | |
CN111401700A (zh) | 一种数据分析方法、装置、计算机系统及可读存储介质 | |
US20110082821A1 (en) | Method of generating precedence-preserving crossover and mutation operations in genetic algorithms | |
CN110852882B (zh) | 用于区块链网络的分组共识方法、装置、设备和介质 | |
CN112508118A (zh) | 针对数据偏移的目标对象行为预测方法及其相关设备 | |
CN109597810B (zh) | 一种任务切分方法、装置、介质及电子设备 | |
CN108427602B (zh) | 一种分布式计算任务的协同调度方法及装置 | |
CN110879776A (zh) | 一种测试用例的生成方法和装置 | |
CN113516239A (zh) | 模型训练方法、装置、存储介质及电子设备 | |
CN113688232A (zh) | 招标文本分类方法、装置、存储介质及终端 | |
CN114048816B (zh) | 一种图神经网络数据采样方法、装置、设备及存储介质 | |
CN116560984A (zh) | 一种基于调用依赖图的测试用例聚类分组方法 | |
Liu | A hybrid genetic algorithm to minimize total tardiness for unrelated parallel machine scheduling with precedence constraints | |
CN111400050B (zh) | 一种分配资源执行任务的方法及装置 | |
CN113962401A (zh) | 联邦学习系统、联邦学习系统中的特征选择方法及装置 | |
CN113591881A (zh) | 基于模型融合的意图识别方法、装置、电子设备及介质 | |
CN117726110A (zh) | 一种基于人员能力改进的测试任务自动分配方法及系统 | |
CN107122849B (zh) | 基于SparkR的产品检测总完工时间极小化方法 | |
CN107305522A (zh) | 用于对应用程序的重复崩溃进行检测的装置和方法 | |
CN114912628A (zh) | 特征选择方法、装置、电子设备及计算机可读存储介质 | |
CN116128186A (zh) | 工单分配方法和设备 | |
CN109901931B (zh) | 一种归约函数数量确定方法、装置及系统 | |
CN111882416A (zh) | 一种风险预测模型的训练方法和相关装置 | |
CN111723247A (zh) | 基于图的假设计算 | |
CN105404583B (zh) | 一种apk的快速检测及提高单位资源利用率的方法 |
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 |