CN106354633B - 基于算法插件的任务调度表生成方法 - Google Patents
基于算法插件的任务调度表生成方法 Download PDFInfo
- Publication number
- CN106354633B CN106354633B CN201610726415.6A CN201610726415A CN106354633B CN 106354633 B CN106354633 B CN 106354633B CN 201610726415 A CN201610726415 A CN 201610726415A CN 106354633 B CN106354633 B CN 106354633B
- Authority
- CN
- China
- Prior art keywords
- algorithm
- groupware
- schedule
- tasks
- plug
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种基于算法插件的任务调度表生成方法,包括以下步骤:查找并列表显示所有的算法插件,获取算法插件列表;访问算法插件列表,根据用户选择情况创建算法插件;将任务调度信息传输至算法插件,生成任务调度表;访问各算法插件对应的任务调度表并将任务调度表进行列表显示;依次遍历算法插件列表,直至算法插件列表遍历完成,获取最优任务调度表。本发明的有益效果是:本发明构建的体系结构,逐步生成多个任务调度表,通过遍历算法插件的方法,获取最优任务调度表,遍历范围广,可以选择出最优的算法插件;本发明以插件的形式封装算法,保证程序的扩展性,算法插件开发同时,增强了最优算法插件的获取能力。
Description
技术领域
本发明涉及测试技术领域,尤其是一种基于插件的任务调度表生成方法。
背景技术
目前,现有的基于静态任务调度规划的并行自动测试***中,常见的是手动规划任务调度或者采用一种自动生成任务调度算法来生成任务调度。其中,手动规划方式严重依赖测试人员的经验和工作态度,随着被测件、测试指标和仪器资源规模的增加,手工规划方式的工作量和出错几率将呈指数型增加,任务调度表的性能和可靠性更加无法保证,有的并行自动测试***采用一种智能规划生成算法,比如混合遗传退火算法或蚁群算法等。但是,每种算法都是概率性全局搜索优化算法,并不能保证每次都能找到最优的任务调度表。
现有生成任务调度表的方式有“手工规划”和“智能算法自动生成”这两种方式。其中,手动规划方式有很大缺陷,并不适合复杂的并行测试***,而“智能算法自动生成”方式逐渐流行起来。智能算法自动生成方式采用一种智能规划生成算法,比如混合遗传退火算法或蚁群算法等。以混合遗传退火算法为例,如图1所示,混合遗传退火算法属于一种自适应启发式、迭代式、概率性全局搜索优化算法。通过分析测试***的任务资源矩阵、资源向量和任务时间向量等信息,模拟生物进化过程完成整个运算,首先在随机产生的初始值中开始最优解的搜索,通过选择、交叉、变异,用全局优化的遗传算法操作去产生一组新的较适应的个体,然后再利用着重局部搜索的模拟退火算法来进一步对数据个体优化调整,并以其结果作为下一代群体的个体,这样反复迭代进行,直到最后收敛于一个最适应的个体上,求得问题的最优解,即生成任务调度表。
现有智能算法自动生成方式是通过智能算法来生成一个任务调度规划,而由于每个智能算法都是概率性全局搜索优化算法,就存在着不能稳定地生成性能优异的调度规划的问题,有的情况下,智能算法“过早收敛”,找到的调度规划性能较差。
发明内容
本发明的目的是为克服上述现有技术的不足,提供一种基于算法插件的任务调度表生成方法,通过多个算法插件自动生成多个调度规划的任务调度表,并从中选出最优的调度规划的任务调度表,避免了单一算法生成调度规划的缺陷,提高了找到较优值的效率。
为实现上述目的,本发明采用下述技术方案:
基于算法插件的任务调度表生成方法,包括以下步骤:
步骤一,查找并列表显示所有的算法插件,获取算法插件列表;
步骤二,访问算法插件列表,根据用户选择需要的算法插件,若列表中不存在所述算法插件,则新创建算法插件;
步骤三,将任务调度信息传输至算法插件,调用算法插件的方法生成任务调度表;
步骤四,访问算法插件所生成的任务调度表和任务调度表的性能指标,并在算法插件列表中显示出所述算法插件的计算结果;
步骤五,依次遍历算法插件列表中的每个算法插件,直至算法插件列表遍历完成,获取最优任务调度表。
进一步的,所述步骤一中,将所有能生成任务调度表的智能算法封装到算法插件中,一个智能算法对应一个插件;
进一步的,所述的智能算法包括混合遗传退火算法、蚁群算法。
进一步的,所述步骤三中的任务调度信息包括任务资源矩阵、资源向量和任务时间向量。
进一步的,所述步骤四中的任务调度表的性能指标包括并行度、加速比。
进一步的,所述步骤五中的遍历的具体步骤为:
(1)根据用户选中的一个算法插件的类名称创建一个插件对象,然后调用插件对象的SortTable方法;
(2)返回由步骤(1)的算法插件所生成任务调度表和该任务调度表的并行度,并保存为该算法插件的计算结果,用于后续选取最优任务调度表。
进一步的,所述步骤三中,调用算法插件的方法是调用SortTable方法;
进一步的,所述SortTable方法为:SortTable(int[]TR,int[]RES,double[]TT,ref double[,]FinalResult,ref double MaxDegree);
其中,TR参数为任务资源矩阵,RES是***的仪器资源向量,TT为任务时间向量,FinalResult是算法插件所生成的任务调度表,MaxDegree是所生成的任务调度表的并行度。
进一步的,所述步骤五中,通过比较各算法插件的计算结果,选择最大的任务调度表的并行度值作为最优的任务调度表。
本发明的有益效果是:
1.本发明构建的体系结构,逐步生成多个任务调度表,通过遍历算法插件的方法,获取最优任务调度表,遍历范围广,可以选择出最优的算法插件;
2.本发明以插件的形式封装算法,保证程序的扩展性,算法插件开发同时,增强了最优算法插件的获取能力;
3.本发明将任务调度表封装到算法中,用户可自动查找当前已部署的所有算法插件并列表显示,供用户选择,进而用户根据不同的需求,选择不同的算法插件,增加了任务调度表生成的灵活性。
附图说明
图1是目前常见的智能算法自动生成任务调度表的流程图;
图2是本发明提供的基于插件的任务调度表生成方法的体系结构图;
图3是本发明提高的基于插件的任务调度表生成方法的流程图;
图4是本发明提供的基于插件的任务调度表生成方法的实施流程图。
具体实施方式
下面结合附图和实施例对本发明进一步说明。
如图2和图3所示,基于算法插件的任务调度表生成方法,包括以下步骤:
步骤一,查找并列表显示所有的算法插件,获取算法插件列表;
步骤二,访问算法插件列表,根据用户选择需要的算法插件,若列表中不存在所述算法插件,则新创建算法插件;
步骤三,将任务调度信息传输至算法插件,调用算法插件的方法生成任务调度表;
步骤四,访问算法插件所生成的任务调度表和任务调度表的性能指标,并在算法插件列表中显示出所述算法插件的计算结果;
步骤五,依次遍历算法插件列表中的每个算法插件,直至算法插件列表遍历完成,获取最优任务调度表。
进一步的,所述步骤一中,将所有能生成任务调度表的智能算法封装到算法插件中,一个智能算法对应一个算法插件。
进一步的,所述的智能算法包括混合遗传退火算法、蚁群算法。
进一步的,所述步骤二中,用户可利用全部插件来生成任务调度表,也可选择常用的插件来生成任务调度表。
进一步的,所述步骤三中的任务调度信息包括任务资源矩阵、资源向量和任务时间向量。
进一步的,所述步骤四中的任务调度表的性能指标包括并行度、加速比。
进一步的,所述步骤五中的遍历的具体步骤为:
(1)根据用户选中的一个算法插件的类名称创建一个插件对象,然后调用插件对象的SortTable方法;
(2)返回由步骤(1)中的算法插件所生成任务调度表和该任务调度表的并行度,并保存为该算法插件的计算结果,用于后续选取最优任务调度表。
进一步的,所述步骤三中,调用算法插件的方法是调用SortTable方法;
进一步的,所述SortTable方法为:SortTable(int[]TR,int[]RES,double[]TT,ref double[,]FinalResult,ref double MaxDegree);
其中,TR参数为任务资源矩阵,RES是***的仪器资源向量,TT为任务时间向量,FinalResult是算法插件所生成的任务调度表,MaxDegree是所生成的任务调度表的并行度。
进一步的,所述步骤五中,通过比较各算法插件的计算结果,选择最大的任务调度表的并行度值作为最优的任务调度表。
其具体实施方式为:如图4所示,首先,调度规划生成程序在启动时要查找当前已经部署的所有算法插件,并将这些算法插件在列表框中显示出来,等待用户选择要利用的插件。当用户选择好要使用的插件后就可以启动生成任务调度表的工作了,调度规划生成程序将依次访问插件列表,当该插件被选择,则创建该插件,并将任务资源矩阵、资源向量和任务时间向量等信息传递给插件,调用插件的方法开始生成调度表。当插件方法运行完毕,调度规划生成程序访问插件得到生成的任务调度表和它的指标数据,并在列表中显示出结果。依次遍历插件列表,直到插件列表被遍历完成,从中选择最优的任务调度表保存,至此整个流程结束。
本发明构建的体系结构,逐步生成多个任务调度表,通过遍历算法插件的方法,获取最优任务调度表,遍历范围广,可以选择出最优的算法插件。
本发明以插件的形式封装算法,保证程序的扩展性,算法插件开发同时,增强了最优算法插件的获取能力。本发明将任务调度表封装到算法中,用户可自动查找当前已部署的所有算法插件并列表显示,供用户选择,进而用户根据不同的需求,选择不同的算法插件,增加了任务调度表生成的灵活性。
上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。
Claims (9)
1.基于算法插件的任务调度表生成方法,其特征是,包括以下步骤:
步骤一,查找并列表显示所有的算法插件,获取算法插件列表;
步骤二,访问算法插件列表,根据用户选择需要的算法插件,若列表中不存在所述算法插件,则新创建算法插件;
步骤三,将任务调度信息传输至算法插件,调用算法插件的方法生成任务调度表;
步骤四,访问算法插件所生成的任务调度表和任务调度表的性能指标,并在算法插件列表中显示出所述算法插件的计算结果;
步骤五,依次遍历算法插件列表中的每个算法插件,直至算法插件列表遍历完成,通过比较各算法插件的计算结果,选择最大的任务调度表的并行度值作为最优的任务调度表。
2.如权利要求1所述的基于算法插件的任务调度表生成方法,其特征是,所述步骤一中,将所有能生成任务调度表的智能算法封装到算法插件中,一个智能算法对应一个插件。
3.如权利要求2所述的基于算法插件的任务调度表生成方法,其特征是,所述的智能算法包括混合遗传退火算法或蚁群算法。
4.如权利要求1所述的基于算法插件的任务调度表生成方法,其特征是,所述步骤二中,用户可利用全部插件来生成任务调度表,也可选择常用的插件来生成任务调度表。
5.如权利要求1所述的基于算法插件的任务调度表生成方法,其特征是,所述步骤三中的任务调度信息包括任务资源矩阵、资源向量和任务时间向量。
6.如权利要求1所述的基于算法插件的任务调度表生成方法,其特征是,所述步骤四中的任务调度表的性能指标包括并行度和加速比。
7.如权利要求1所述的基于算法插件的任务调度表生成方法,其特征是,所述步骤五中的遍历的具体步骤为:
(1)根据用户选中的一个算法插件的类名称创建一个插件对象,然后调用插件对象的SortTable方法;
(2)返回由步骤(1)中的算法插件所生成任务调度表和该任务调度表的并行度,并保存为所述算法插件的计算结果,用于后续选取最优任务调度表。
8.如权利要求1所述的基于算法插件的任务调度表生成方法,其特征是,所述步骤三中,调用算法插件的方法是调用SortTable方法。
9.如权利要求7所述的基于算法插件的任务调度表生成方法,其特征是,所述SortTable方法为:SortTable(int[]TR,int[]RES,double[]TT,ref double[,]FinalResult,ref double MaxDegree);其中,TR参数为任务资源矩阵,RES是***的仪器资源向量,TT为任务时间向量,FinalResult是算法插件所生成的任务调度表,MaxDegree是所生成的任务调度表的并行度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610726415.6A CN106354633B (zh) | 2016-08-25 | 2016-08-25 | 基于算法插件的任务调度表生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610726415.6A CN106354633B (zh) | 2016-08-25 | 2016-08-25 | 基于算法插件的任务调度表生成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106354633A CN106354633A (zh) | 2017-01-25 |
CN106354633B true CN106354633B (zh) | 2019-01-04 |
Family
ID=57855678
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610726415.6A Active CN106354633B (zh) | 2016-08-25 | 2016-08-25 | 基于算法插件的任务调度表生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106354633B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107315639A (zh) * | 2017-05-17 | 2017-11-03 | 中国科学院遥感与数字地球研究所 | 一种基于集群的高时谱遥感图像数据组织方法及*** |
CN109684067B (zh) * | 2018-12-29 | 2020-10-16 | 中电科仪器仪表有限公司 | 一种任务调度规划自动生成和运行***及方法 |
CN110750454A (zh) * | 2019-10-10 | 2020-02-04 | 武汉普利商用机器有限公司 | 一种算法测试方法及*** |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101599143A (zh) * | 2009-07-20 | 2009-12-09 | 武汉大学 | 一种水库确定性优化调度的调度域确定方法及其设备 |
CN102253861A (zh) * | 2011-08-01 | 2011-11-23 | 深圳市极限网络科技有限公司 | 一种分步运算插件的执行方法 |
CN102624870A (zh) * | 2012-02-01 | 2012-08-01 | 北京航空航天大学 | 基于智能优化算法的云制造计算资源可重构配置方法 |
CN102750149A (zh) * | 2012-06-13 | 2012-10-24 | 普华基础软件股份有限公司 | 调度表的实现方法及*** |
CN104166590A (zh) * | 2013-05-20 | 2014-11-26 | 阿里巴巴集团控股有限公司 | 一种实现任务调度的方法及*** |
CN104572297A (zh) * | 2014-12-24 | 2015-04-29 | 西安工程大学 | 一种基于遗传算法的Hadoop作业调度方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2008251352A1 (en) * | 2007-05-09 | 2008-11-20 | Gridpoint, Inc. | Method and system for scheduling the discharge of distributed power storage devices and for levelizing dispatch participation |
US9141422B2 (en) * | 2010-05-18 | 2015-09-22 | Microsoft Technology Licensing, Llc | Plug-in task scheduler |
-
2016
- 2016-08-25 CN CN201610726415.6A patent/CN106354633B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101599143A (zh) * | 2009-07-20 | 2009-12-09 | 武汉大学 | 一种水库确定性优化调度的调度域确定方法及其设备 |
CN102253861A (zh) * | 2011-08-01 | 2011-11-23 | 深圳市极限网络科技有限公司 | 一种分步运算插件的执行方法 |
CN102624870A (zh) * | 2012-02-01 | 2012-08-01 | 北京航空航天大学 | 基于智能优化算法的云制造计算资源可重构配置方法 |
CN102750149A (zh) * | 2012-06-13 | 2012-10-24 | 普华基础软件股份有限公司 | 调度表的实现方法及*** |
CN104166590A (zh) * | 2013-05-20 | 2014-11-26 | 阿里巴巴集团控股有限公司 | 一种实现任务调度的方法及*** |
CN104572297A (zh) * | 2014-12-24 | 2015-04-29 | 西安工程大学 | 一种基于遗传算法的Hadoop作业调度方法 |
Non-Patent Citations (4)
Title |
---|
Analysis,evaluation,and comparison of algorithms for scheduling task graphs on parallel processors;Ishfaq Ahmad等;《Parallel Architectures,Algorithms,and Networks,1996.Proceedings.,Second International Symposium on》;20020806;第207-213页 |
Job Aware Scheduling Algorithm for MapReduce Framework;Radheshyam Nanduri等;《Cloud Computing Technology and Science(CloudCom),2011 IEEE Third International Conference on》;20120119;第725-729页 |
一种关于漏洞扫描插件的调度算法;吴志勇;《安徽大学学报》;20080731;第32卷(第4期);第37-40页 |
一种改进的优先级列表任务调度算法;李静梅等;《计算机科学》;20140531;第41卷(第5期);第20-23,36页 |
Also Published As
Publication number | Publication date |
---|---|
CN106354633A (zh) | 2017-01-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106055395B (zh) | 一种基于蚁群优化算法的云环境中截止时间约束工作流调度方法 | |
Wu et al. | Hybrid evolutionary scheduling for energy-efficient fog-enhanced internet of things | |
CN106354633B (zh) | 基于算法插件的任务调度表生成方法 | |
CN103399543B (zh) | 输片协作的多个机器人设备的调度方法及*** | |
CN105956021A (zh) | 一种适用于分布式机器学习的自动化任务并行的方法及其*** | |
US8386287B2 (en) | Resource management using constraint programming with efficient ordering of variables | |
KR20010043794A (ko) | 추상형 지역 탐색 기술을 사용한 컴퓨터 구현 방식의스케줄링 시스템 및 프로세스 | |
Sevkli et al. | Discrete particle swarm optimization for the orienteering problem | |
CN103235743A (zh) | 一种基于分解和最优解跟随策略的多目标测试任务调度方法 | |
CN107315889A (zh) | 仿真引擎的性能测试方法及存储介质 | |
CN110413510A (zh) | 一种数据处理方法、装置及设备 | |
Brocal et al. | Task period selection to minimize hyperperiod | |
Poppenborg et al. | Online scheduling of flexible job-shops with blocking and transportation | |
CN106648831B (zh) | 基于萤火虫算法和动态优先级的云工作流调度方法 | |
CN100531070C (zh) | 网络资源调度仿真*** | |
CN117785490B (zh) | 一种图神经网络模型的训练架构、方法、***及服务器 | |
CN109669363A (zh) | 一种基于状态行为树的自动化仿真测试优化方法 | |
CN109961129A (zh) | 一种基于改进粒子群的海上静止目标搜寻方案生成方法 | |
CN106156245A (zh) | 一种电子地图中的线要素合并方法及装置 | |
CN106557416B (zh) | 软件云测试的实现方法和装置 | |
CN109635034A (zh) | 训练数据重采样方法、装置、存储介质及电子设备 | |
CN109522939A (zh) | 图像分类方法、终端设备及计算机可读存储介质 | |
CN105988855A (zh) | 即时编译参数优化方法及装置 | |
CN117235527A (zh) | 端到端容器化的大数据模型构建方法、装置、设备及介质 | |
CN112463340A (zh) | 基于tensorflow的多任务弹性调度方法及*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | 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 | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220610 Address after: 266555 No. 98 Xiangjiang Road, Huangdao District, Qingdao City, Shandong Province Patentee after: CLP kesiyi Technology Co.,Ltd. Address before: 266555 No. 98 Xiangjiang Road, Qingdao economic and Technological Development Zone, Shandong Patentee before: THE 41ST INSTITUTE OF CHINA ELECTRONICS TECHNOLOGY Group Corp. |