CN101984412B - 一种基于分组和禁忌搜索的并行测试任务调度方法 - Google Patents

一种基于分组和禁忌搜索的并行测试任务调度方法 Download PDF

Info

Publication number
CN101984412B
CN101984412B CN 201010513676 CN201010513676A CN101984412B CN 101984412 B CN101984412 B CN 101984412B CN 201010513676 CN201010513676 CN 201010513676 CN 201010513676 A CN201010513676 A CN 201010513676A CN 101984412 B CN101984412 B CN 101984412B
Authority
CN
China
Prior art keywords
task
test
sequence
scheduling
neighborhood
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.)
Expired - Fee Related
Application number
CN 201010513676
Other languages
English (en)
Other versions
CN101984412A (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.)
Beihang University
Original Assignee
Beihang University
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 Beihang University filed Critical Beihang University
Priority to CN 201010513676 priority Critical patent/CN101984412B/zh
Publication of CN101984412A publication Critical patent/CN101984412A/zh
Application granted granted Critical
Publication of CN101984412B publication Critical patent/CN101984412B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种基于分组和禁忌搜索的并行测试任务调度方法,属于自动测试测量技术领域,首先,确定并分析测试任务之间的约束关系,建立图论模型对任务进行分组,采用图论中的顶点染色理论进行处理,根据分组结果构造并行测试任务调度的初始调度序列,最后利用禁忌搜索方法进行迭代寻优,搜寻一个最优的调度序列,根据该序列依次确定每一个任务的尽早测试开始时间,快速完成基于测试时间最短的任务调度规划。本发明结合并行测试任务调度的实际问题,通过分析禁忌搜索方法的特点,解决传统方法搜索过程中对初始值选择的不确定性,构造了很好的初始调度序列,提高方法的搜索速率,快速找到较优的任务调度方案。

Description

一种基于分组和禁忌搜索的并行测试任务调度方法
技术领域
本发明涉及一种并行测试任务调度方法,具体涉及一种基于分组和禁忌搜索的并行测试任务调度方法,属于自动测试测量技术领域。
背景技术
随着高新技术的快速发展,自动测试系统(Automatic Test System,ATS)在很多行业得到广泛应用,逐步成为复杂电子装备的检测维护手段,而目前自动测试领域中存在比较突出的问题就是测试系统的测试效率低下,资源利用率较低。对于传统的通用自动测试系统,大多沿用串行测试的方式,不能同时对多个UUT(Unit Under Test,被测设备)或者单个UUT的多项任务进行测试,一次仅能完成一个测试任务,使得整个系统的测试效率很低。随着现代网络化分布式测试应用日益增多,串行测试方式已经不能满足现代测试技术快速发展的需求,因此研究新的测试技术,对发展自动测试系统具有十分重要的理论价值和现实意义。
并行测试技术的提出是并行处理技术与现代自动测试技术的融合,成为自动测试领域的一项重大突破,属于NxTest ATS(下一代自动测试系统)技术范畴,也是支撑NxTest ATS的新技术之一。并行测试是指ATS在同一时间同时测试多项任务,通过任务调度提高测试系统的吞吐量,减少测试设备的闲置时间,提高测试资源的利用率,从而提高系统测试效率。其核心之一就是在有限的测试资源的约束条件下,满足由测试需求决定的测试任务要求,对多个并发执行的测试任务进行调度优化,从而达到测试资源利用率最大或总测试时间最短的目标。
目前,并行测试有多种实现方式,如分组测试、交迭并行测试等。分组测试简单易行,却不能保证完成所有测试任务的总时间最短;交迭并行测试通过对任务的合理安排调度及优化,从而能够实现任务的总测试时间最短,对提高测试效率具有很直接的现实意义,因此在实际自动测试系统的研究和设计中也得到了越来越多的关注。
交迭并行测试技术的核心和关键是测试任务的调度优化问题,好的任务调度方案能够显著提高自动测试系统的测试效率和资源的利用率。目前关于调度优化问题的实现主要是基于算法的,利用单个算法解决实际问题,往往存在一定的局限性,如蚁群方法主要集中应用在车间作业的调度方面,而作业调度的要求并不完全符合并行测试任务的需求;Task Scheduler方法能通过类似枚举的方法找到问题的最优解,因此当问题的规模比较大时,最优解的找寻就相对比较费时。针对各种局限情况,调度问题出现了许多改进的方法,也出现了将两种或两种以上的方法融合起来,进而解决实际调度问题的方法。
禁忌搜索是一种通过自适应的记忆结构来引导局部搜索的技术,通过集中和扩散搜索策略能够有效避免迂回搜索,但其对初始解的选取具有很强的依赖性。传统方法通过随机选择的方式产生初始解,由于该初始解的随机性,可能使得方法的寻优搜索过程较为复杂,同时方法在搜索过程中极有可能陷入局部最优的情况,从而无法找寻到问题的最优解。而一个较好的初始解能够使得方法避免陷入局部最优情况,同时快速收敛到问题的最优状态,因此可以通过某种规则方法来获取问题较好的初始解。将获取初始解的方法与禁忌搜索方法融合起来,成为求解组合优化问题最常用的智能优化方法之一,已经广泛应用于许多领域,包括机器学习,神经网络,电力通信,车间作业调度等。根据方法特性,可以将其应用在自动测试领域的并行测试任务调度方面。
发明内容
本发明的目的在于克服现有技术解决并行测试任务调度问题时的不足,提出一种基于分组和禁忌搜索的并行测试任务调度方法,通过图染色理论中顶点染色方法完成测试任务的分组,利用分组结果构造符合禁忌搜索过程要求的初始解,不但能够解决禁忌搜索在完成任务调度问题时对初始值选取的不确定性,同时有效避免搜索陷入局部最优,提高了测试任务调度优化找寻最优状态的速度。
一种基于分组和禁忌搜索的并行测试任务调度方法,其特征在于,包括以下几个步骤:
步骤1:确定和分析测试任务
根据需求明确测试任务,建立用于描述测试任务与测试资源之间占用关系的资源占用模型矩阵TRn×m,以及表示测试任务之间约束关系的任务相关模型矩阵REn×n,其中,n表示测试任务总数,m表示测试资源总数:
TR n × m = tr 11 tr 12 · · · tr 1 m tr 12 r 22 · · · tr 2 m · · · · · · · · · · · · tr n 1 tr n 2 · · · tr nm , RE n × n = re 11 re 12 · · · re 1 n re 12 re 22 · · · re 2 n · · · · · · · · · · · · re n 1 re n 2 · · · re nn
其中,资源占用模型矩阵的行表示测试任务Ti,1≤i≤n,列表示测试资源Rj,1≤j≤m,若资源占用模型矩阵TRn×m中某元素trij=0,表示任务Ti在测试过程中不占用资源Rj;反之,若trij≠0,则trij=ti,表示任务Ti在测试过程中占用资源Rj,且占用时间为任务Ti的测试时间ti;任务相关模型矩阵的行和列均代表测试任务,如果任务Tl,1≤l≤n和Tk,1≤k≤n在测试过程中需要占用相同的测试资源,那么任务相关模型矩阵REn×n中的元素relk=1,即Tl和Tk任务相关;否则relk=0,即Tl和Tk任务不相关。
步骤2:测试任务分组
根据测试任务资源占用模型和任务相关模型,确立测试任务的图论模型,利用最大度优先的Welsh-Powell方法对任务顶点进行图染色,根据任务顶点颜色划分结果完成测试任务的分组。
步骤3:构造任务调度优化的初始调度方案
由步骤2所得任务分组结果构造待测任务调度序列
Figure BSA00000312540700031
Figure BSA00000312540700032
表示调度序列中第i个待安排调度的任务,根据序列依次确定每一个测试任务的最早开始测试时间、测试完成时间以及完成所有测试任务所需时间,从而得到初始任务调度方案。
步骤4:禁忌搜索优化调度方案
具体的实施步骤如下:
步骤4.1输入步骤3所得的初始调度序列以及由该调度序列所确定的时间目标函数值f;
步骤4.2确定邻域的生成规则,构造禁忌搜索方法的邻域,采用λ交换法,将λ值取为2,即交换调度序列中两个任务的调度顺序,具体构造过程如下:
(a)依次交换初始调度序列中最后一个任务与前面各个任务的次序,构造邻域N1,邻域规模为(n-1),n为测试任务总数,对当前解序列进行集中搜索;
(b)交换初始调度序列中任意两个任务的次序,构造邻域N2,规模为
Figure BSA00000312540700034
n为测试任务总数,扩大搜索的空间。
步骤4.3构造方法的禁忌表,将交换测序的两个任务序号作为禁忌对象,并确定禁忌表的大小,即禁忌长度L,使得一个禁忌对象加入禁忌表后,经过L次的迭代运算,实现对该禁忌对象的解禁;
步骤4.4根据步骤4.2确定的邻域生成规则构造当前调度序列的邻域;
步骤4.5从邻域中选择序列作为新的当前调度序列,具体实现过程如下:
(1)确定择优规则,从邻域中选择一个好解作为下一次迭代初始解,采用第一个改进解优先策略;
(2)确定搜索规则,结合N1和N2邻域进行动态变邻域搜索,首先从当前解序列的N1邻域中选择满足择优规则的解序列,若N1邻域中没有满足条件的解,则进入N2邻域进行更大范围搜索,如果仍然没有满足择优规则的解序列,则从N2邻域中选择一个最好的解作为当前解序列;
(3)按照任务的排列次序,依次计算邻域中的各序列进行调度的测试完成总时间,选择出满足择优规则和搜索规则的解序列作为新的当前解序列。
步骤4.6判断是否满足禁忌搜索优化调度的搜索停止条件,搜索停止条件为给定一个最大的方法迭代次数,如50次;若不满足,则对步骤4.4和步骤4.5进行迭代,从而不断选择出新的解序列,同时生成新的邻域逐步迭代寻优;否则,转下步;
步骤4.7输出最后的任务调度方案,包括:满足搜索停止条件前最后得到的当前调度序列、序列中各个任务的开始测试时间规划和并行调度完成所以测试任务的总时间。
本发明与现有并行测试任务调度方法相比的积极效果和优点在于:
提出了一种新型的求解并行测试任务调度规划的方法,利用图的染色理论完成测试任务的分组问题,进而利用分组结果构造一个调度序列作为禁忌搜索寻优的初始解序列,然后通过禁忌搜索方法对该初始解序列进行迭代寻优。该方法既有效解决了禁忌搜索求解任务调度优化问题时初始解的随机选择性问题,同时使得该初始解在构造过程中就继承了一定的任务并行特性,更接近最优状态,能够通过禁忌搜索快速完成基于最短测试时间的并行测试任务调度规划,大大提高了找寻最优调度方案的速度。
附图说明
图1是本发明基于分组和禁忌搜索的并行测试任务调度方法总体流程;
图2是本发明完成测试任务分组过程的处理流程;
图3是本发明基于最大度优先的Welsh-Powell方法进行顶点染色的流程图;
图4是本发明构造初始调度方案的处理流程;
图5是本发明禁忌搜索迭代寻优的流程图;
图6a是本发明步骤4.2中(a)中禁忌搜索方法的邻域构造示意图;
图6b是本发明步骤4.2中(b)中禁忌搜索方法的邻域构造示意图。
具体实施方式
下面将结合附图和实施例对本发明作进一步的详细说明。
本发明是一种基于分组和禁忌搜索的并行测试任务调度方法,该方法总体流程图如图1所示,主要包括确定和分析测试任务、测试任务分组、构造初始调度方案和禁忌搜索优化调度规划4个过程,其具体实施步骤如下:
步骤1:确定和分析测试任务
建立用于描述测试任务与测试资源之间占用关系的资源占用模型矩阵TRn×m,以及表示测试任务之间约束关系的任务相关模型矩阵REn×n(n表示测试任务总数,m表示测试资源总数):
TR n × m = tr 11 tr 12 · · · tr 1 m tr 12 r 22 · · · tr 2 m · · · · · · · · · · · · tr n 1 tr n 2 · · · tr nm , RE n × n = re 11 re 12 · · · re 1 n re 12 re 22 · · · re 2 n · · · · · · · · · · · · re n 1 re n 2 · · · re nn
其中,资源占用模型矩阵的行表示测试任务Ti(1≤i≤n),列表示测试资源Rj(1≤j≤m),若资源占用模型矩阵TRn×m中某元素trij=0,表示任务Ti在测试过程中不占用资源Rj;反之,若trij≠0,则气=ti,表示任务Ti在测试过程中占用资源Rj,且占用时间为任务Ti的测试时间ti;任务相关模型矩阵的行和列均代表测试任务,若任务Tl(1≤l≤n)和Tk(1≤k≤n)在测试过程中需要占用相同的测试资源,则任务相关模型矩阵REn×n中的元素relk=1,即Tl和Tk任务相关;否则relk=0,即Tl和Tk任务不相关。
步骤2:测试任务分组
根据步骤1建立的测试任务资源占用模型和任务相关模型,确立测试任务的图论模型,利用最大度优先的Welsh-Powell方法对任务顶点进行染色,根据任务顶点颜色划分结果完成测试任务的分组。图2为完成测试任务分组过程的处理流程,具体步骤如下:
步骤2.1根据任务相关模型矩阵REn×n,建立测试任务的无向图论模型,将测试任务之间的关系用图论中的无向图G=(T,E)表示。其中,T={T1,T2,...,Tn}为图G的任务顶点集,每个顶点代表一个测试任务,测试任务Ti所需要的资源集为RSi(1≤i≤n),E={Tl Tk|RSl∩RSk≠Φ,1≤l,k≤n,l≠k}为无向图G的边集,每条边代表其两端的测试任务会占用相同的测试资源;
步骤2.2采用图的顶点染色理论中最大度优先的Welsh-Powell方法对任务顶点染色,图3为该方法进行顶点染色的流程图,具体实施步骤如下:
(1)输入无向图G表示的任务顶点集以及任务顶点之间的关系;
(2)将无向图G的任务顶点按度递减的顺序排列,设为T1,T2,...,Tn,初始化已染色任务顶点集S=Φ;
(3)按序对未染色任务顶点进行颜色划分,Vi表示颜色划分集,顶点颜色的具体划分步骤如下:
(3.1)选取尚未染色的任务顶点中编号最小的顶点v,给v染上颜色i,令Vi={v};
(3.2)若存在与Vi中所有任务顶点都不相邻的未染色顶点,则按顺序找出第一个与Vi中所有任务顶点都不相邻的未染色顶点x,转步骤(3.3);否则输出Vi,令S=S∪Vi,转步骤(4);
(3.3)给顶点x染上颜色i,更新划分集Vi=Vi∪{x},转步骤(3.2);
(4)判断所有顶点是否都已经染色,若已染色任务顶点集S满足|S|=n,n为测试任务总数,即任务顶点个数,则所有任务顶点都已经染色,停止,转步骤(5);否则,i=i+1,转步骤(3);
(5)输出任务顶点的染色结果。
步骤2.3根据顶点染色结果,将颜色相同的任务分在同一组中,不同颜色的任务分在不同组中,最后分组与分组之间按照每组内任务总数降序的方式进行排序,得到任务分组结果。
步骤3:构造任务调度优化的初始调度方案
结合并行测试任务调度的实际问题,其确定任务调度过程就是依次确定每一任务最早可能开始测试时间的过程,因此构造待测任务调度序列
Figure BSA00000312540700061
(
Figure BSA00000312540700062
表示调度序列中第i个要安排调度的任务),根据序列依次确定每一个测试任务的最早开始测试时间、测试完成时间以及完成所有测试任务所需时间,得到该初始调度序列的任务调度方案。图4所示为构造初始调度方案的处理流程,具体过程如下:
步骤3.1构造初始调度序列:由步骤2所得任务分组结果构造待测任务调度序列,优先选择组内任务数多的分组任务加入待测任务调度序列U,对于任务数相同的分组,随机选择其中的一组任务优先加入序列,而对同一组内的各个任务,根据分组原理中每组内的任务可以同时并发进行,也采用随机选择的方式依次加入待测任务调度序列中,直到所有分组内的任务都加入到序列中,得到由分组结果构造的初始调度序列
Figure BSA00000312540700063
(
Figure BSA00000312540700064
表示调度序列中第i个待安排调度的任务);
步骤3.2确定调度序列中每一个任务的最早开始测试时间和测试完成时间:根据相应的资源占用模型矩阵TRn×m,计算出每个任务的最早开始测试时间以及相应的测试完成时间,完成对初始解序列的调度规划,具体计算过程如下:
(1)令每个测试资源初始的资源占用结束时间均为E0=0;
(2)根据初始调度序列
Figure BSA00000312540700071
(
Figure BSA00000312540700072
表示调度序列中第i个待安排调度的任务)中任务的排列次序,依次确定各个任务的测试开始时间
Figure BSA00000312540700073
和完成时间计算出一个测试任务的完成时间后,及时更新该任务所占用相应资源的结束时间
Figure BSA00000312540700075
Figure BSA00000312540700076
其中
Figure BSA00000312540700077
表示任务
Figure BSA00000312540700078
完成测试过程所需的测试时间,表示任务
Figure BSA000003125407000710
在测试过程中占用资源Rj的时间,且如果
Figure BSA000003125407000711
则满足
Figure BSA000003125407000712
具体计算过程如下:
任务
Figure BSA000003125407000713
的开始测试时间:
测试完成时间:
Figure BSA000003125407000715
更新所占用相应资源的结束时间:
Figure BSA000003125407000717
任务
Figure BSA000003125407000718
的开始测试时间:
Figure BSA000003125407000719
测试完成时间:
更新
Figure BSA000003125407000721
所占用相应资源的结束时间:
Figure BSA000003125407000722
……
任务
Figure BSA000003125407000723
的开始测试时间:
Figure BSA000003125407000724
测试完成时间:
Figure BSA000003125407000725
更新
Figure BSA000003125407000726
所占用相应资源的结束时间:
Figure BSA000003125407000727
步骤3.3计算基于时间函数的目标函数值,即确定完成所有测试任务的总时间:
f = max { E T i P } , ( 1 ≤ i ≤ n ) .
步骤4:禁忌搜索优化调度方案
由分组结果构造的初始调度方案并不一定最优,不能保证按照该方案交迭并行测试完成所有任务的时间最短,因此通过禁忌搜索对初始调度方案进行优化,完成基于最小测试时间的任务调度规划,图5为禁忌搜索优化调度的流程图,具体的实施步骤如下:
步骤4.1输入步骤3所得的初始调度序列
Figure BSA000003125407000729
(
Figure BSA000003125407000730
表示调度序列中第i个待安排调度的任务)以及由该调度序列所确定的时间目标函数值f;
步骤4.2确定邻域的生成规则,构造禁忌搜索方法的邻域,采用λ交换法的思想,将λ值取为2,即交换调度序列中两个任务的调度顺序。图6a、图6b所示为邻域构造的示意图,具体构造过程如下:
(a)如图6a所示,依次交换初始调度序列中最后一个任务与前面各个任务的次序,构造邻域N1,邻域规模为(n-1)(n为测试任务总数),对当前解序列进行集中搜索;
(b)如图6b所示,交换初始调度序列中任意两个任务的次序,构造邻域N2,规模为
Figure BSA000003125407000731
(n为测试任务总数),扩大搜索的空间。
步骤4.3构造方法的禁忌表,根据邻域生成规则,将交换测序的两个任务序号作为禁忌对象,并确定禁忌表的大小,即禁忌长度L,使得一个禁忌对象加入禁忌表后,经过L次的迭代运算,实现对该禁忌对象的解禁。禁忌长度L的大小与调度问题的规模有关,假设有n个测试任务,那么禁忌长度L的大小与n的具体数值有关,其取值范围为
Figure BSA00000312540700081
禁忌长度过小,会造成搜索的循环,而禁忌长度过长,则使得计算时间和存储空间相应增加。根据本发明中的任务规模n为10~20,禁忌长度L大小设为n/2。
步骤4.4根据步骤4.2确定的邻域生成规则生成当前调度序列的邻域;
步骤4.5从邻域中选择序列作为新的当前调度序列,具体实现过程如下:
(1)确定择优规则,从邻域中选择一个好解作为下一次迭代初始解,可以采用多种策略,本发明采用第一个改进解优先策略,搜索邻域时一旦找到比历史最好解序列更优的序列,则取该序列作为新的当前解序列构造新的邻域;否则取邻域中性能最好且没有被禁忌表禁忌的序列作为新的解序列构造新邻域;
(2)确定搜索规则,结合N1和N2邻域进行动态变邻域搜索,根据确定的择优规则,从当前解序列的N1邻域中选择第一个改进目标值的解序列,若N1邻域中没有满足条件的解,则进入N2邻域进行更大范围搜索,如果仍然没有满足择优规则的解序列,则从N2邻域中选择一个最好的解作为当前解序列。
(3)按照任务的排列次序,依次计算邻域中的各序列进行调度的测试完成总时间,选择出满足搜索规则和择优规则的解序列作为新的当前解序列。
步骤4.6判断是否满足禁忌搜索优化调度的搜索停止条件,搜索停止条件规定为给定一个最大的寻优迭代次数,如50次。若不满足,则对步骤4.4和步骤4.5进行迭代,不断选择新的解序列,同时生成新的邻域逐步寻优;否则,转下步;
步骤4.7输出最后的任务调度方案,包括:满足搜索停止条件前最后得到的当前调度序列、序列中各个任务的开始测试时间规划和并行调度完成所有测试任务的总时间。

Claims (4)

1.一种基于分组和禁忌搜索的并行测试任务调度方法,其特征在于,包括以下几个步骤:
步骤1:确定和分析测试任务
建立用于描述测试任务与测试资源之间占用关系的资源占用模型矩阵TRn×m,以及表示测试任务之间约束关系的任务相关模型矩阵REn×n,其中,n表示测试任务总数,m表示测试资源总数:
Figure RE-FDA00002168132700011
Figure RE-FDA00002168132700012
其中,资源占用模型矩阵TRn×m的行表示测试任务Ti,1≤i≤n,列表示测试资源Rj,1≤j≤m,若TRn×m中某元素trij=0,表示任务Ti在测试过程中不占用资源Rj;反之,若trij≠0,则trij=ti,表示任务Ti在测试过程中占用资源Rj,且占用时间为任务Ti的测试时间ti;任务相关模型矩阵的行和列均代表测试任务,如果任务
Figure 20101051367621000011
和Tk在测试过程中需要占用相同的测试资源,其中
Figure 6
,1≤k≤n,那么任务相关模型矩阵REn×n中的元素
Figure 4
=1,即
Figure 3
和Tk任务相关,否则
Figure 5
=0,即
Figure 2
和Tk任务不相关;
步骤2:测试任务分组
根据步骤1建立的测试任务资源占用模型和任务相关模型,确立测试任务的图论模型,利用最大度优先的Welsh-Powell方法对任务顶点进行染色,根据任务顶点颜色划分结果完成测试任务的分组;
步骤3:构造任务调度优化的初始调度方案
由步骤2所得任务分组结果构造待测任务调度序列 
Figure RE-FDA00002168132700013
Figure RE-FDA00002168132700014
表示调度序列中第i个要安排调度的任务,根据序列依次确定每一个测试任务的最早开始测试时间、测试完成时间以及完成所有测试任务所需时间,得到初始任务调度方案;
步骤4:禁忌搜索优化调度方案
具体的实施步骤如下:
步骤4.1输入步骤3所得的初始调度序列 
Figure RE-FDA00002168132700015
以及由该调度序列所确定的时间目标函数值f;
步骤4.2确定邻域的生成规则,构造出禁忌搜索方法的邻域,采用λ交换法,将λ值取 为2,即交换调度序列中两个任务的调度顺序,具体构造过程如下:
(a)依次交换初始调度序列中最后一个任务与前面各个任务的次序,构造邻域N1,邻域规模为(n-1),n为测试任务总数,对当前解序列进行集中搜索;
(b)交换初始调度序列中任意两个任务的次序,构造邻域N2,规模为 
Figure RE-FDA00002168132700021
n为测试任务总数,扩大搜索的空间;
步骤4.3构造方法的禁忌表,根据邻域生成规则,将交换测序的两个任务序号作为禁忌对象,并确定禁忌表的大小,即禁忌长度L,使得一个禁忌对象加入禁忌表后,经过L次的迭代运算,实现对该禁忌对象的解禁;
步骤4.4根据步骤4.2确定的邻域生成规则构造当前调度序列的邻域;
步骤4.5从邻域中选择序列作为新的当前调度序列,具体实现过程如下:
(1)确定择优规则,从邻域中选择一个好解作为下一次迭代初始解,采用第一个改进解优先策略;
(2)确定搜索规则,结合N1和N2邻域进行动态变邻域搜索,根据确定的择优规则,从当前解序列的N1邻域中选择第一个改进目标值的解序列,若N1邻域中没有满足条件的解,则进入N2邻域进行更大范围搜索,如果仍然没有满足择优规则的解序列,则从N2邻域中选择一个最好的解作为当前解序列;
(3)按照任务的排列次序,依次计算邻域中的各序列进行调度的测试完成总时间,选择出满足搜索规则和择优规则的解序列作为新的当前解序列;
步骤4.6判断是否满足禁忌搜索优化调度的搜索停止条件,搜索停止条件为给定一个最大的方法迭代次数;若不满足,则对步骤4.4和步骤4.5进行迭代,不断选择新的解序列,同时生成新的邻域逐步寻优;否则,转下步;
步骤4.7输出最后的任务调度方案,包括:满足搜索停止条件前最后得到的当前调度序列、序列中各个任务的开始测试时间规划和并行调度完成所有测试任务的总时间。
2.根据权利要求1所述的一种基于分组和禁忌搜索的并行测试任务调度方法,其特征在于,所述的步骤2具体步骤如下:
步骤2.1建立测试任务的无向图论模型,用图论中的无向图G=(T,E)表示n个测试任务之间的关系;其中,T={T1,T2,...,Tn}为图G的任务顶点集,每个顶点代表一个测试任务,测试任务Ti所需要的资源集为RSi,1≤i≤n,E={
Figure 13
}为无 向图G的边集,每条边代表其两端的测试任务要占用相同的仪器;T中元素和E中元素之间的关联关系也体现在任务相关模型矩阵REn×n中;
步骤2.2采用图的顶点染色理论中最大度优先的Welsh-Powell方法对任务顶点进行染色,具体实施步骤如下:
(1)输入无向图G表示的任务顶点集以及任务顶点之间的关系;
(2)将无向图G的任务顶点按度递减的顺序排列,设为T1,T2,...,Tn,初始化已染色任务顶点集S=Φ;
(3)按序对未染色任务顶点进行颜色划分,用Vi表示颜色划分集,顶点颜色的具体划分步骤如下:
(3.1)选取尚未染色的任务顶点中编号最小的顶点v,给v染上颜色i;令Vi={v};
(3.2)若存在与Vi中所有任务顶点都不相邻的未染色顶点,则按顺序找出第一个与Vi中所有任务顶点都不相邻的未染色顶点x,转步骤(3.3);否则输出Vi,并令S=S∪Vi转步骤(4);
(3.3)给顶点x染上颜色i,更新划分集Vi=Vi∪{x},转步骤(3.2);
(4)判断所有顶点是否都已经染色,若已染色任务顶点集S满足|S|=n,n为测试任务总数,即任务顶点个数,则所有任务顶点都已经染色,停止,转步骤(5);否则,i=i+1,转步骤(3);
(5)输出任务顶点的颜色划分结果;
步骤2.3根据顶点染色结果,将颜色相同的任务分在同一组中,不同颜色的任务分在不同组中,最后分组与分组之间按照每组内任务总数降序的方式进行排序,得到任务分组结果。
3.根据权利要求1所述的一种基于分组和禁忌搜索的并行测试任务调度方法,其特征在于,所述的步骤3具体步骤如下:
步骤3.1构造初始调度序列:由步骤2所得任务分组结果构造待测任务调度序列,优先选择组内任务数多的分组任务加入待测任务调度序列U,对于任务数相同的分组,随机选择其中的一组任务优先加入序列,而对同一组内的各个任务,根据分组原理中每组内的任务可以同时并发进行,也采用随机选择的方式依次加入待测任务调度序列中,直到所有分组内的任务都加入到序列中,得到由分组结果构造的初始调度序列 
Figure RE-FDA00002168132700031
Figure RE-FDA00002168132700032
表示调度序列中第i个要安排调度的任务; 
步骤3.2确定调度序列中每一个任务的最早开始测试时间和测试完成时间:根据相应的资源占用模型矩阵TRn×m,确定每个任务的最早开始测试时间以及相应的测试完成时间,计算测试总时间,完成对初始解序列的调度规划,具体过程如下:
(1)令每个测试资源初始的资源占用结束时间均为E0=0;
(2)根据初始调度序列 
Figure RE-FDA00002168132700041
中任务的排列次序,依次确定各个任务的测试开始时间 
Figure RE-FDA00002168132700042
和完成时间 1≤i≤n,计算出一个任务的完成时间后,及时更新该任务所占用相应资源的结束时间 
Figure RE-FDA00002168132700044
1≤j≤m;其中 表示任务 完成测试过程所需的测试时间, 
Figure RE-FDA00002168132700047
表示任务 在测试过程中占用资源Rj的时间,且如果 
Figure RE-FDA00002168132700049
则满足 
Figure RE-FDA000021681327000410
具体计算过程如下:
任务 
Figure RE-FDA000021681327000411
的开始测试时间: 
Figure RE-FDA000021681327000412
测试完成时间: 
Figure RE-FDA000021681327000413
更新 所占用相应资源的结束时间: 
Figure RE-FDA000021681327000415
Figure RE-FDA000021681327000416
任务 
Figure RE-FDA000021681327000417
的开始测试时间:
Figure RE-FDA000021681327000418
Figure RE-FDA000021681327000419
测试完成时间: 
Figure RE-FDA000021681327000420
更新 所占用相应资源的结束时间: 
Figure RE-FDA000021681327000422
Figure RE-FDA000021681327000423
......
任务 
Figure RE-FDA000021681327000424
的开始测试时间:
Figure RE-FDA000021681327000425
Figure RE-FDA000021681327000426
测试完成时间: 
更新 
Figure RE-FDA000021681327000428
所占用相应资源的结束时间: 
Figure RE-FDA000021681327000429
Figure RE-FDA000021681327000430
步骤3.3计算基于时间函数的目标函数值,即确定完成所有测试任务的总时间: 
Figure RE-FDA000021681327000431
4.根据权利要求1所述的一种基于分组和禁忌搜索的并行测试任务调度方法,其特征在于,所述的步骤4.5的(1)中,具体采用第一个改进解优先策略,搜索邻域时一旦找到比历史最好解序列更优的序列,则取该序列作为新的当前解序列构造新的邻域;否则取邻域中性能最好且没有被禁忌表禁忌的序列作为新的解序列重新构造新邻域。 
CN 201010513676 2010-10-13 2010-10-13 一种基于分组和禁忌搜索的并行测试任务调度方法 Expired - Fee Related CN101984412B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 201010513676 CN101984412B (zh) 2010-10-13 2010-10-13 一种基于分组和禁忌搜索的并行测试任务调度方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 201010513676 CN101984412B (zh) 2010-10-13 2010-10-13 一种基于分组和禁忌搜索的并行测试任务调度方法

Publications (2)

Publication Number Publication Date
CN101984412A CN101984412A (zh) 2011-03-09
CN101984412B true CN101984412B (zh) 2013-01-30

Family

ID=43641581

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 201010513676 Expired - Fee Related CN101984412B (zh) 2010-10-13 2010-10-13 一种基于分组和禁忌搜索的并行测试任务调度方法

Country Status (1)

Country Link
CN (1) CN101984412B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11847194B2 (en) 2020-06-29 2023-12-19 Baidu Online Network Technology (Beijing) Co., Ltd. Scheduling method and apparatus, device and storage medium

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102663541B (zh) * 2012-03-20 2015-02-11 国电南瑞科技股份有限公司 一种配电网故障修复资源调度方法及装置
CN103377101A (zh) * 2012-04-18 2013-10-30 百度在线网络技术(北京)有限公司 一种测试系统和测试方法
CN102637212A (zh) * 2012-04-19 2012-08-15 清华大学 基于禁忌搜索算法的工程用禁忌搜索装置及搜索方法
CN102880667B (zh) * 2012-09-04 2015-05-13 北京航空航天大学 一种基于关键路径和禁忌搜索的测试任务调度方法
CN103914866B (zh) * 2014-03-14 2017-02-15 浙江工商大学 无线网络中基于自适应图着色的三维模型分组方法
CN103985006B (zh) * 2014-04-16 2017-02-01 北京航空航天大学 一种以维护时间最优化为目标的维护模型构建方法
CN105321014A (zh) * 2014-07-01 2016-02-10 国家电网公司 一种配网资源、信息抢修优化调度方法
US9684546B2 (en) * 2014-12-16 2017-06-20 Microsoft Technology Licensing, Llc Job scheduling and monitoring in a distributed computing environment
CN105157712B (zh) * 2015-08-18 2019-06-04 浙江工商大学 一种车辆路径的规划方法和规划系统
CN105429909B (zh) * 2015-12-31 2018-11-20 上海交通大学 一种基于复色的并行交换调度方法
CN106991039A (zh) * 2016-01-20 2017-07-28 滴滴(中国)科技有限公司 用于平台自适应引擎系统的测试方法及装置
CN106055471A (zh) * 2016-05-20 2016-10-26 深圳天珑无线科技有限公司 一种测试方法及终端
CN106095669B (zh) * 2016-06-03 2020-09-25 中国矿业大学 基于调度序列约简的并行程序测试方法
CN107239661B (zh) * 2017-06-05 2018-02-16 中国电子科技集团公司第五十四研究所 一种遥感卫星观测任务规划方法
CN107392402B (zh) * 2017-09-11 2018-08-31 合肥工业大学 基于改进禁忌搜索算法的生产运输协同调度方法及系统
CN108055161B (zh) * 2017-12-28 2021-08-24 新华三技术有限公司 一种组网优化方法及装置
CN109409763B (zh) * 2018-11-08 2021-03-12 北京航空航天大学 基于贪婪式分组策略的动态测试任务调度方法及调度平台
CN109656267B (zh) * 2018-12-24 2022-03-15 中国航空工业集团公司西安飞机设计研究所 飞行控制系统并行协同试验方法
CN109684067B (zh) * 2018-12-29 2020-10-16 中电科仪器仪表有限公司 一种任务调度规划自动生成和运行系统及方法
CN112363913B (zh) * 2020-10-22 2024-01-26 北京电子工程总体研究所 一种并行测试任务调度寻优的方法、装置和计算设备
CN115049163B (zh) * 2022-08-15 2022-10-28 国能日新科技股份有限公司 基于禁忌搜索与深度稳定学习的光伏区域预测方法及装置
CN117707745B (zh) * 2024-02-05 2024-04-30 国网湖北省电力有限公司信息通信公司 一种基于自适应禁忌搜索算法的计量任务同步调度方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1407441A (zh) * 2001-08-24 2003-04-02 微软公司 自动管理计算机服务和可编程器件的系统和方法
US20030088320A1 (en) * 2000-06-10 2003-05-08 Sale Mark Edward Unsupervised machine learning-based mathematical model selection
CN1677365A (zh) * 2004-03-31 2005-10-05 微软公司 通过属性控制的测试实例继承

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030088320A1 (en) * 2000-06-10 2003-05-08 Sale Mark Edward Unsupervised machine learning-based mathematical model selection
CN1407441A (zh) * 2001-08-24 2003-04-02 微软公司 自动管理计算机服务和可编程器件的系统和方法
CN1677365A (zh) * 2004-03-31 2005-10-05 微软公司 通过属性控制的测试实例继承

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11847194B2 (en) 2020-06-29 2023-12-19 Baidu Online Network Technology (Beijing) Co., Ltd. Scheduling method and apparatus, device and storage medium

Also Published As

Publication number Publication date
CN101984412A (zh) 2011-03-09

Similar Documents

Publication Publication Date Title
CN101984412B (zh) 一种基于分组和禁忌搜索的并行测试任务调度方法
Zhen et al. Daily berth planning in a tidal port with channel flow control
CN104239213B (zh) 一种面向航天器自动化测试的并行测试任务两阶段调度方法
CN101976221A (zh) 一种基于粒子群禁忌组合的并行测试任务调度方法及平台
CN106102079B (zh) 基于改进pso的c-ran载波迁移资源需求预测方法
CN102880667B (zh) 一种基于关键路径和禁忌搜索的测试任务调度方法
CN104820636A (zh) 一种并行的基于蚁群算法的测试用例序列生成方法
Min Analysis on bubble sort algorithm optimization
CN102855153B (zh) 面向片式多核处理器的流编译优化方法
CN112306658B (zh) 一种多能源系统数字孪生应用管理调度方法
CN104484548B (zh) 一种改进的序贯故障诊断策略优化方法
Xianzhou et al. An improved genetic algorithm for dual-resource constrained flexible job shop scheduling
CN101634953A (zh) 搜索空间计算方法和装置及自适应线程调度方法和系统
CN106372755A (zh) 基于主元分析的bp神经网络智能工业园区能耗模型建立方法
CN107885600A (zh) 批量定时任务的调度方法、装置和计算机设备
CN104679945B (zh) 基于有色Petri网的系统综合评估方法
CN105653243B (zh) 一种通用图形处理器多任务并发执行的任务派发方法
CN105760219B (zh) 基于多Agent分布式调度的并行符号执行系统
CN100420209C (zh) 自动进行方案对比的可信网络仿真系统
Ge et al. Study on the R&D performance of high-tech industry in China-based on data envelopment analysis
CN115766475A (zh) 基于通信效率的半异步电力联邦学习网络及其通信方法
Han et al. Research on conflict resolution method of production evaluation index in flexible manufacturing field based on multiplayer cooperative game
CN105630608A (zh) 利用组合型交叉熵实现多处理机调度的方法
Jinjuan Research on enterprise credit risk assessment method based on improved genetic algorithm
Li et al. Performance analysis and optimization of queueing network production systems considering non-conforming products rework and departure

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20130130

Termination date: 20151013

EXPY Termination of patent right or utility model