专利名称:一种基于分解和最优解跟随策略的多目标测试任务调度方法
技术领域:
本发明属于自动测试系统并行测试任务调度领域,具体涉及一种基于分解和最优解跟随策略的多目标测试任务调度方法。
背景技术:
近年来随着现代工业的发展,电子设备的发展越来越趋向于集成化和复杂化。原有的手工测试已经远远不能满足复杂设备的测试需求,自动测试系统已经越来越受到人们的重视。目前,自动测试系统已经广泛应用于航空航天、手机通信等领域。随着科学技术的爆炸式发展,测试的需求越来越多,测试系统所需要的资源以及维护成本也不断增加,测试任务间常出现资源冲突、死锁等问题。为了提高测试系统的效率并且降低维护成本,作为自动测试技术核心内容的测试任务调度方法理所应当的成为了现在研究的热点。测试任务调度要求将不同的测试任务通过方案选择分配适当的资源,使得要求的指标如最小完成时间、仪器平均负荷达到最小。它主要解决测试任务排序和测试方案选择这两个问题。首先,通过测试任务排序合理的安排测试任务执行的先后顺序。其次,测试方案选择用来为测试任务分配合适的资源。由于测试任务众多,而测试资源有限,所以需要合理的分配测试资源。而同一任务的不同方案对应着不同的测试资源,所以不同的方案选择对应着不同的测试资源的分配。在传统的测试任务调度中,最短测试时间往往作为唯一的目标进行考虑。而随着设备的复杂度增大,测试仪器的维护费用也随之增加。决策者在制定测试方案时应综合考虑最短测试时间、测试仪器平均负荷等因素。因此多目标测试任务调度算法的研究必将成为测试系统研究的重要部分。测试任务调度是一个复杂的NP-Complete问题,可能出现的解的数目是极其巨大的,穷举需要耗费大量的时间。因此对于一般测试任务调度问题无法通过枚举给出最优解。对于解决测试任务调度问题来说,智能搜索方法可以有效的降低计算时间,并且得到近似最优解或者最优解。例如遗传,模拟退火,禁忌和粒子群均已在测试调度问题中得到广泛应用。但传统的智能优化方法在解决多目标问题时大都采用的是加权和方法将多目标问题转换为单目标问题,其中加权和参数的设定在整个搜索过程中起着举足轻重的作用。而目前并没有一种公认的有效的如何设置加权和参数的方法被提出,人为因素将极大的影响智能优化方法的效果。基于分解的多目标优化方法将一个多目标优化问题在其目标函数空间中通过权重矢量分解为一组子优化问题。在进化过程中子问题之间通过获得其邻域的信息完成更新进化,并且多个目标是并行优化。采用这种优化方式可以避开加权和方法的使用,从而减少了人为因素在优化结果中的影响,可以有效的解决多目标调度问题。最优解跟随策略思想来源于粒子群搜索。粒子群搜索方法是群集智能方法的一种,是通过模拟鸟群觅 食行为而发展起来的一种基于群体协作的随机搜索算法。将每一个解看作是一个粒子,在每一次迭代中优化问题的解通过跟踪两个极值来更新自己。一个是粒子本身所找到的最优解,另一个极值是整个种群目前找到的最优解。在多目标问题中,可以将得到的前沿中非支配解作为全局最优解进行跟随,以达到提高解质量的效果。
发明内容
本发明的目的采用基于分解和最优解跟随搜索的多目标优化方法有效的解决多目标测试任务调度问题。本发明的一种基于分解和最优解跟随策略的多目标测试任务调度方法,将粒子群中跟随最优解策略应用到基于分解的多目标进化方法中,用于求解多目标测试调度问题中的最优解。该方法包括8个步骤,分别为:开始、初始化、交叉、变异、邻域与参考点更新、进行最优解跟随、更新最优解集、输出结果。本发明的优点在于:(I)这种基于分解的多目标优化算法可以将优化问题分解为多个子问题求解,不需要采用加权和方法,减少了人为因素的影响。(2)最优解跟随策略的应用使得得到的解集质量在整体上进行了提高,得到更靠近真实前沿的解集。(3)本发明的方法具有可扩展性,可以用于解决其他多目标优化问题。
图1是本发明一种基于分解和最优解跟随搜索的多目标优化方法流程图。图2是本发明最优解跟 随中确定自身最优解的示意图。图3是本发明最优解跟随中确定全局最优解的示意图。图4是本发明更新最优解集的示意图。图5是本发明最终得到的最优解集的示意图。图6是本发明中得到的一最终决策方案的调度甘特图。
具体实施例方式下面将结合附图和实施案例对本发明作进一步的详细说明。本发明的一种基于分解和最优解跟随策略测试任务调度方法,流程如图1所示,包括以下8个步骤:第一步:开始进入调度方法计算接口。第二步:初始化确定目标函数并初始化算法的参数设置,计算权重矢量邻域索引集并给出初始解。2.1确定目标函数基于分解和最优解跟随策略的多目标测试任务调度方法中目标函数为最大完成时间与资源平均工作负荷。确定测试任务集T = It1, t2,…,\_,…,tN},tj为第j个测试任务,N为测试任务总数;确定仪器资源集R = Ir1, r2,…,ri;…,rM},巧为第i个仪器,M为仪器总数。-V;,与P;分别代表在测试任务h在资源ri进行时的起始时间、完成时间以及消耗时间,有c; =S1j +Fjs在自动测试调度中,存在一个测试任务的完成往往需要多个测试资源的共同协作。因此,可以用一个判断矩阵0表示资源与任务的需求关系。判断矩阵定义为:
权利要求
1.一种基于分解和最优解跟随策略测试任务调度方法,包括以下几个步骤: 第一步:开始 进入调度方法计算接口; 第二步:初始化 确定目标函数并初始化方法的参数设置,计算权重矢量邻域索引集并给出初始解; .2.1确定目标函数 本发明中目标函数为:最大完成时间与资源平均工作负荷; 确定测试任务集T = It1, t2,…,\_,…,tN},tj为第j个测试任务,N为测试任务总数;确定仪器资源集R = Ir1, r2,…,ri,…,rM},r,为第i个仪器,M为仪器总数, C与P;分别代表在测试任务&在资源ri进行时的起始时间、完成时间以及消耗时间,有 =S; +If,判 断矩阵O;表示资源与任务的需求关系,
全文摘要
本发明公开了一种基于分解和最优解跟随策略的多目标测试任务调度方法,属于并行测试任务调度领域。本方法首先初始化参数设置,然后利用基于分解的方法将多目标问题在其目标函数空间内分解为一系列子问题,子问题通过与其邻域的信息交换得到更新进化。然后对参考点以及每个子问题的邻域进行更新,再采用最优解跟随策略使得解集在整体上进行提高,通过多次迭代以得到更优的解,即得到更优的测试任务序列极其对应的测试方案集合。本发明方法采用基于分解的策略解决多目标优化问题,避免了加权和方法的使用,减少了人为因素的影响;而最优解跟随策略的加入使得每一代解集质量整体提高,最终提高了多目标测试任务调度方法的效率。
文档编号G06F11/36GK103235743SQ20131011814
公开日2013年8月7日 申请日期2013年4月7日 优先权日2013年4月7日
发明者路辉, 朱政, 王晓腾 申请人:北京航空航天大学