首页 / 专利库 / 飞机类型 / 航天器 / 一种资源可调整的卫星并行测试资源配置方法

一种资源可调整的卫星并行测试资源配置方法

阅读:56发布:2022-08-12

专利汇可以提供一种资源可调整的卫星并行测试资源配置方法专利检索,专利查询,专利分析的服务。并且一种资源可调整的卫星并行测试资源配置方法,包括以下步骤:步骤1、使用遗传 算法 求解卫星并行测试任务调度模型;步骤2、获得调度方案以及资源信息;步骤3、根据资源信息调整资源量;步骤4、调整结束。该方法根据项目的具体需求匹配资源,以达到减小项目工期并提高资源使用率的目的,从而提高调度方案品质。它在航空航天并行测试技术领域里具有良好的应用前景。,下面是一种资源可调整的卫星并行测试资源配置方法专利的具体信息内容。

1.一种资源可调整的卫星并行测试资源配置方法,其特征在于:该方法具体步骤如下:
第一步使用遗传算法求解卫星并行测试任务调度模型
使用遗传算法求解该问题的关键在于设计编码方式、解码方式、种群初始化、遗传算子即选择算子、交叉算子和变异算子,遗传算法具体设计如下:
1)编码方式
编码采用基于任务列表的带有优先级的编码方式,它将一个调度方案表示为一个任务序列,假设N艘卫星的优先级是递减的,那么所有卫星的测试任务按如下方式编码:
其中,Ai0,…, 表示卫星i的全部测试任务,i越大则卫星的优先级越小;Ai0和 虚拟任务的位置始终保持不变,其余任务在满足时序约束的前提下能够任意改变位置;
可见,这种编码方式是按照卫星的优先级分段编码的,即将优先级高的卫星的测试任务排在前面,只要保证每艘卫星首尾两个虚拟测试任务的编码位置不变,无论在符合时序约束的前提下其它测试任务的位置如何变化,当从左到右地调度任务时,总能保证优先级高的卫星的测试任务首先被安排执行,这样就保证了卫星的优先级关系不会被打破;这种分级的编码方式除了保证卫星的优先级关系外,还极大的缩小到了搜索空间,因为它限制了每个任务位置变化的范围;
2)解码方式
解码是编码的逆过程,它将染色体转化为调度方案,从而计算出目标函数值;根据编码特点,采用串行解码方法,它得到积极的调度方案;所谓积极的调度方案是指,任何测试任务都不可能在不改变其它测试任务开始时刻的前提下更早的开始;
将一条染色体解码实际上就是确定各个测试任务的开始时刻,由于每条染色体编码都已满足卫星的优先级关系和测试任务的时序约束,那么解码依据的规则是资源约束关系;
将染色体按照从左到右的顺序,依次确定每个测试任务的最早开始时刻,该最早开始时刻满足:①不小于其紧前任务结束时刻;②该任务在整个执行阶段满足资源约束;③满足条件①和②的最小时刻;按照上述解码方式,每个测试任务的最早开始时刻,为某个已确定开始时刻的测试任务的结束时刻;
设共有J个测试任务,π为由J个测试任务编码而成的染色体,πg(0≤g<J)表示其第g个基因,Sg和fg分别表示第g个基因的开始和结束时刻,dg表示第g个基因的测试时间,L为由所有当前已确定开始时刻的测试任务的结束时刻组成的递增时间序列,Li为其第i个元素,串行解码的流程如下:
(1)令g=1,S0=0,f0=0,L={0};
(2)计算πg所有紧前任务最晚结束时刻tg,并确定tg在L中的位置i;
(3)若当t∈[Li,Li+dg]时πg满足资源约束,则令Sg=Li,fg=Sg+dg,L=L∪{fg},并对T进行递增排序,转(4),否则令i=i+1,转(3);
(4)g=g+1,若g<J,则转(2),否则转(5);
(5)结束;
3)种群初始化
初始种群应该保证充分的多样性,以减小计算陷入局部极小的可能性,初始种群采用随机的方式产生,也能够依据优先规则产生,或者将二者结合以得到更加分散的个体;无论哪种产生方式,都必须保证卫星优先级关系和测试任务时序约束不被打破;
假设共有J个任务{A0,A1,…,AJ-1},则编码可以分为J-1个阶段,每个阶段g对应一个未完成编码的染色体π和一个可行任务集合Dg,Dg包含在当前阶段所有未被安排且其所有紧前任务已包含在π中的任务;当一艘卫星的测试任务编码完毕后,其末任务看作是下一艘应被编码的卫星的首任务的紧前任务,这样就能将各卫星按优先级顺序依次编码;在每一阶段,随机或根据一定的优先规则从Dg中选择一个任务,在满足资源约束和其它约束的情况下加入π中;编码流程如下:
(1)令g=0,π=[A0];
(2)计算可行活动集合Dg,在Dg中选择即随机或依优先规则选择一个任务Aj,令π=[A0,…,Aj];
(3)g=g+1,若g<J-1,则转(2),否则转(4);
(4)结束;
另外,虽然较大的种群规模能增加种群的多样性,但是过大的种群规模可能使较优个体过早占据种群从而造成过早收敛,而且会增加计算负担,因此,种群规模应该适中;
4)选择算子
选择算子采用2-联赛选择机制,即每次随机选择两条染色体选取其中测试 总工期较短的一条,直到满足种群规模;
5)交叉算子
交叉算子采用一点交叉方式;设两条交叉的染色体分别为:
D
首先,随机产生一个正整数r(0≤r<M)作为交叉点,交叉产生的子代染色体π 的F G G
前r+1个基因继承自π,后M-r-1个基因继承自π 并保持在π 中的相对顺序不变,即其中,
另一个子代染色体πS的产生方式与此相似,即
其中,
这种交叉方式不会改变时序约束和各艘卫星的优先级;
6)变异算子
变异算子采用插入变异方式,对某个任务进行变异操作时,首先找到其所有紧前任务最后位置r1和所有紧后任务的最前位置r2,然后随机产生一个正整数r(r1<r≤r2),将该任务插入位置r上;每艘卫星的首任务的紧前任务认为是其自身,而末任务的紧后任务也认为是其自身;这种插入变异方式也不会改变任务的时序约束和各艘卫星的优先级;
第二步获得调度方案以及资源信息
根据第一步的遗传算法得到项目的调度方案,即各卫星所有任务的开始时 间与结束时间;首先,根据测试时序约束和航天器的优先级进行染色体的编码,此时就将任务调度问题转化为了遗传算法能处理的形式;经过遗传算法的遗传算子即选择算子、交叉算子和变异算子的操作和足够的迭代次数便会产生一个最优的染色体;最后通过解码将该染色体解码为调度方案,此时就将遗传算法的求解结果还原成了调度问题的解,这个解就被称为项目的调度方案,需要在测试开始后不断地进行调整以保持可行性;
根据得到的调度方案,计算各资源的使用情况,作为调整资源的一个依据;第三步根据资源信息调整资源量
资源量的调整量由上层决策求解,依据两方面的信息:由下层提供的当前调度方案的资源使用情况和规则库;
(1)资源信息
下层反馈的资源信息是,在当前调度方案下,每种资源的在各个时刻的使用率 及其平均使用率AverResRatek,这些信息反映了调度方案对资源的使用情况;
其中,Rk表示资源k的可用量, 表示资源k在时刻t的使用量,makespan表示总工期;
(2)规则库
规则库的作用是,根据下层反馈的资源信息,对资源进行相应的调整;根据问题的要求,制定了三条规则:
规则1:对任何一种资源 若 使得 且
AverResRatek>ηk,其中ηk为资源k平均利用率的阈值,且 则Rk=
Rk+1;
规则2:对任何一种资源 若 使得 且
则Rk=Rk-1;
规则3:若在任何两次资源调整后,各资源量相同,或者调整达到一定次数,则决策停止,输出调度方案和资源方案;
第一条规则的作用是对使用频繁的资源进行适量增加,而第二条规则的作用是减少闲置的资源;在上层决策中,起主要作用的是第一条规则,因为要减小调度方案的总工期,资源总是趋向于增加;第一条规则保证调度方案和资源方案总是向总工期减小和鲁棒性增加的方向演化;第二条规则是对第一条规则进行补充,当资源的增加不起太大作用的时候,就减少该种资源;第三条规则设置了停止条件;
上层决策根据这些规则调整结束后,将调整后的资源信息返回下层,下层采用第一步中的遗传算法重新调度;
第四步调整结束
整个设计过程是一个动态地求解过程,通过上下层的不断相互作用优化结果;围绕保持调度方案的可行性和较短的测试总工期这两个指标,进一步考虑了资源的均衡性;第一步和第二步给出了基线调度产生方法;第三步给出了调整资源的具体方式以及上下层的作用方式,通过以上三个步骤能够使测试工作顺利完成并较好地达到指标要求,设计结束。

说明书全文

一种资源可调整的卫星并行测试资源配置方法

技术领域

[0001] 本发明涉及一种资源可调整的卫星并行测试资源配置方法,特别是涉及一种在不确定环境下的资源可调整的卫星并行测试资源配置方法。本发明属于航空航天并行测试技术领域。

背景技术

[0002] 近年来,我国航天技术发展迅猛,航天技术开始从国防军事领域迅速向民用航天领域扩展,我国拥有的卫星数目急剧增多,卫星的研制和生产开始步入批量化阶段。而传统的卫星测试采用的是串行测试方式——测试效率低,资源利用率低,测试成本高,这种测试方式已不能适应卫星批量化生产的要求。在这种情况下,迫切需要改变现有的卫星测试模式,实现卫星的并行测试,以提高测试效率和资源利用率,同时降低测试成本。
[0003] 在卫星并行测试资源配置中,调度方案的确定不仅依赖调度模型及其求解方法,而且依赖测试资源的数量之间的关系。在给定资源数量的前提下进行调度,实际上暗含假定,给定的各种资源的数量是匹配的。在资源量匹配的前提下,可以得到总工期较短而各资源的使用率较高的调度方案。而事实上,在调度方案制定之前,很难做到使各种资源的数量匹配,因为资源量的确定往往具有随意性。显然,测试资源和调度方案形成了一个相互影响,相互依赖的关系:调度方案的生成依赖测试资源,而测试资源的匹配也需要调度方案执行的信息。这说明,将测试资源的确定和调度方案的生成进行联合考虑,才会得到更优的结果。
[0004] 资源可调整的卫星并行测试资源配置问题是卫星并行测试资源配置问题的扩展,它使资源的数量也变成了决策变量,从而也更加复杂。资源可调整的卫星并行测试资源配置问题可以描述为: 代表L个并行测试的卫星集合,如果i1<i2,则 的优先级高于卫星 的优先级,即当卫星i1和卫星i2竞争资源时,卫星i1具有优先使用资
源的权利而禁止抢断。卫星 由具有时序关系的测试活动 组成,其中测
试活动1和Ni是虚拟测试活动,分别用来表示卫星i测试的开始和结束。虚拟测试活动的
不需要测试资源,并且其工期为零,其它测试活动的工期具有不确定性。所有卫星测试共享K种可更新资源 测试资源 的可用量可在
的范围内进行调整,其中 是资源k的初始给定量。测试活动间是开始-结束型关系。测
试活动具有两种约束:
[0005] ①时序约束,任何一个测试活动 只有当其所有紧前活动集合 里的活动执行完才可以开始;
[0006] ②资源约束,卫星i的每个测试活动 在其工期dij内对第k种资源的需求量为rijk,资源一旦被释放可以立即被其它测试活动使用。
[0007] 资源可调整的卫星并行测试资源配置问题比单纯的卫星并行测试资源配置问题多了一层决策,它不但要求确定调度方案,而且还要确定匹配的资源量。资源量的
确定和调度方案的确定是相互影响的,首先调度方案需要在测试资源分配的前提下产
生,而产生的调度方案可以反馈测试资源的使用信息,从而作为资源调整的依据。显
然,这是一种带有主从性质的两层决策:资源的调整作为上层决策行为,而调度方案的
产生可以作为下层决策行为。其目标是,确定每种资源的数量,同时生成满足指标的调
度方案,以确定每个测试活动的开始时间 和结束时间
[0008] 此外测试资源是一种稀缺资源,有些测试资源非常昂贵,不可能大量增加,它的调整幅度也就不可能太大,而只能进行微量调整。因此,在卫星并行测试中,要求测试资源在现有数量的基础上进行少量调整,以使各种资源的数量更加匹配,从而明显提高测试总工期和资源利用率。本发明首先提出这种通过少量增加资源提升调度方案质量的方法。
[0009] 对卫星并行测试进行资源配置,无论是通过静态调度还是动态调度,都是在资源给定的情况下进行的,也就是在调度时每种资源的数量已经确定了。但是,在卫星并行测试中,资源的数量可能存在不平衡性,即每种资源的数量不匹配,从而导致无论如何进行调度,其资源利用率都不高。这就提出了资源量的匹配问题。为解决该问题并克服传统并行测试任务调度方法的局限性,针对卫星并行测试任务调度的特点,本发明提出一种资源可调整的卫星并行测试资源配置方法。

发明内容

[0010] 本发明一种资源可调整的卫星并行测试资源配置方法,其目的是:针对卫星并行测试中,资源的数量可能存在的不平衡性,即每种资源的数量不匹配,从而导致无论如何进行调度,其资源利用率都不高的问题,提出一种资源可调整的卫星并行测试资源配置方法调整资源配置方案。通过对资源的少量调整,使各种资源的数量更加匹配,从而明显提高测试总工期和资源利用率。
[0011] 本发明一种资源可调整的卫星并行测试资源配置方法,其设计思想是:下层根据初始资源方案得到调度方案并求取资源使用率;上层根据各资源的使用率调整资源可用量并反馈回下层,下层据此重新调度;重复此过程直至满足停止条件。基于上面的思想,下面具体介绍本发明的技术方案。
[0012] 本发明一种资源可调整的卫星并行测试资源配置方法,该方法具体步骤如下:
[0013] 第一步使用遗传算法求解卫星并行测试任务调度模型。
[0014] 使用遗传算法求解该问题的关键在于设计编码方式、解码方式、种群初始化、遗传算子(选择算子、交叉算子和变异算子)等,遗传算法的基本流程如图2所示,具体设计如下:
[0015] 1、编码方式
[0016] 编码采用基于任务列表的带有优先级的编码方式,它将一个调度方案表示为一个任务序列。假设N艘卫星的优先级是递减的,那么所有卫星的测试任务可以按如下方式编码:
[0017]
[0018] 其中,Ai0,…, 表示卫星i的全部测试任务,i越大则卫星的优先级越小。Ai0和 (虚拟任务)的位置始终保持不变,其余任务在满足时序约束的前提下可以任意改变位置。
[0019] 可见,这种编码方式是按照卫星的优先级分段编码的,即将优先级高的卫星的测试任务排在前面。只要保证每艘卫星首尾两个虚拟测试任务的编码位置不变,无论其他测试任务的位置如何变化(在符合时序约束的前提下),当从左到右地调度任务时,总能保证优先级高的卫星的测试任务首先被安排执行,这样就保证了卫星的优先级关系不会被打破。这种分级的编码方式除了可以保证卫星的优先级关系外,还极大的缩小到了搜索空间,因为它限制了每个任务位置变化的范围。
[0020] 2、解码方式
[0021] 解码是编码的逆过程,它将染色体转化为调度方案,从而计算出目标函数值。根据编码特点,本发明采用串行解码方法,它可以得到积极的调度方案。所谓积极的调度方案是指,任何测试任务都不可能在不改变其它测试任务开始时刻的前提下更早的开始。
[0022] 将一条染色体解码实际上就是确定各个测试任务的开始时刻。由于每条染色体编码都已满足卫星的优先级关系和测试任务的时序约束,那么解码依据的规则主要是资源约束关系。将染色体按照从左到右的顺序,依次确定每个测试任务的最早开始时刻,该最早开始时刻满足:①不小于其紧前任务结束时刻;②该任务在整个执行阶段满足资源约束;③满足条件①和②的最小时刻。按照上述解码方式,每个测试任务的最早开始时刻,为某个已确定开始时刻的测试任务的结束时刻。
[0023] 设共有J个测试任务,π为由J个测试任务编码而成的染色体,πg(0≤g<J)表示其第g个基因,Sg和fg分别表示第g个基因的开始和结束时刻,dg表示第g个基因的
测试时间,L为由所有当前已确定开始时刻的测试任务的结束时刻组成的递增时间序列,Li为其第i个元素。串行解码的流程如下:
[0024] (1)令g=1,S0=0,f0=0,L={0};
[0025] (2)计算πg所有紧前任务最晚结束时刻tg,并确定tg在L中的位置i;
[0026] (3)若当t∈[Li,Li+dg]时πg满足资源约束,则令Sg=Li,fg=Sg+dg,L=L∪{fg},并对T进行递增排序,转(4),否则令i=i+1,转(3);
[0027] (4)g=g+1,若g<J,则转(2),否则转(5);
[0028] (5)结束。
[0029] 3、种群初始化
[0030] 初始种群应该保证充分的多样性,以减小计算陷入局部极小的可能性。初始种群可以采用随机的方式产生,也可以依据优先规则产生,或者将二者结合以得到更加分散的个体。无论哪种产生方式,都必须保证卫星优先级关系和测试任务时序约束不被打破。
[0031] 假设共有J个任务{A0,A1,…,AJ-1},则编码可以分为J-1个阶段,每个阶段g对应一个未完成编码的染色体π和一个可行任务集合Dg,Dg包含在当前阶段所有未被安排且其所有紧前任务已包含在π中的任务。当一艘卫星的测试任务编码完毕后,其末任务看作是下一艘应被编码的卫星的首任务的紧前任务,这样就能将各卫星按优先级顺序依次编码。在每一阶段,随机或根据一定的优先规则从Dg中选择一个任务,在满足资源约束和其它约束的情况下加入π中。编码流程如下:
[0032] (1)令g=0,π=[A0];
[0033] (2)计算可行活动集合Dg,在Dg中选择(随机或依优先规则)一个任务Aj,令π=[A0,…,Aj];
[0034] (3)g=g+1,若g<J-1,则转(2),否则转(4);
[0035] (4)结束。
[0036] 另外,虽然较大的种群规模可以增加种群的多样性,但是过大的种群规模可能使较优个体过早占据种群从而造成过早收敛,而且会增加计算负担。因此,种群规模应该适中。
[0037] 4、选择算子
[0038] 选择算子采用2-联赛选择机制,即每次随机选择两条染色体选取其中测试总工期较短的一条,直到满足种群规模。
[0039] 5、交叉算子
[0040] 交叉算子采用一点交叉方式。设两条交叉的染色体分别为:
[0041]
[0042]
[0043] 首先,随机产生一个正整数r(0≤r<M)作为交叉点,交叉产生的子代染色体πD的前r+1个基因继承自πF,后M-r-1个基因继承自πG并保持在πG中的相对顺序不变,即[0044]
[0045] 其中,
[0046] 另一个子代染色体πS的产生方式与此相似,即
[0047]
[0048] 其中,
[0049] 这种交叉方式不会改变时序约束和各艘卫星的优先级。
[0050] 6、变异算子
[0051] 变异算子采用插入变异方式。对某个任务进行变异操作时,首先找到其所有紧前任务最后位置r1和所有紧后任务的最前位置r2,然后随机产生一个正整数r(r1<r≤r2),将该任务插入位置r上。每艘卫星的首任务的紧前任务认为是其自身,而末任务的紧后任务也认为是其自身。这种插入变异方式也不会改变任务的时序约束和各艘卫星的优先级。
[0052] 第二步获得调度方案以及资源信息
[0053] 根据第一步的遗传算法得到项目的调度方案,即各卫星所有任务的开始时间与结束时间。首先,根据测试时序约束和航天器的优先级进行染色体的编码,此时就将任务调度问题转化为了遗传算法可以处理的形式;经过遗传算法的遗传算子等的操作和足够的迭代次数便会产生一个最优的染色体;最后通过解码将该染色体解码为调度方案,此时就将遗传算法的求解结果还原成了调度问题的解,这个解就被称为项目的调度方案,需要在测试开始后不断地进行调整以保持可行性。
[0054] 根据得到的调度方案,计算各资源的使用情况,作为调整资源的一个依据。第三步根据资源信息调整资源量
[0055] 资源量的调整量由上层决策求解,主要依据两方面的信息:由下层提供的当前调度方案的资源使用情况和规则库。
[0056] (1)资源信息
[0057] 下层反馈的资源信息是,在当前调度方案下,每种资源的在各个时刻的使用率及其平均使用率AverResRatek。这些信息反映了调度方案对资源的使用情况;
[0058]
[0059]
[0060] 其中,Rk表示资源k的可用量, 表示资源k在时刻t的使用量,makespan表示总工期。
[0061] (2)规则库
[0062] 规则库的作用是,根据下层反馈的资源信息,对资源进行相应的调整。根据问题的要求,我们制定了三条规则。
[0063] 规则1:对任何一种资源 若 使得 且AverResRatek>ηk,其中ηk为资源k平均利用率的阈值,且 则Rk=Rk+1;
[0064] 规则2:对任何一种资源 若 使得 且则Rk=Rk-1;
[0065] 规则3:若在任何两次资源调整后,各资源量相同,或者调整达到一定次数,则决策停止,输出调度方案和资源方案。
[0066] 第一条规则的作用是对使用频繁的资源进行适量增加,而第二条规则的作用是减少闲置的资源。在上层决策中,起主要作用的是第一条规则,因为要减小调度方案的总工期,资源总是趋向于增加。第一条规则可以保证,调度方案的和资源方案总是向总工期减小和鲁棒性增加的方向演化。第二条规则主要是对第一条规则进行补充,当资源的增加不起太大作用的时候,就减少该种资源。第三条规则设置了停止条件。
[0067] 上层决策根据这些规则调整结束后,将调整后的资源信息返回下层,下层采用第一步中的遗传算法重新调度。
[0068] 第四步调整结束
[0069] 整个设计过程是一个动态地求解过程,通过上下层的不断相互作用优化结果。围绕保持调度方案的可行性和较短的测试总工期这两个指标,本发明进一步考虑了资源的均衡性;第一步和第二步给出了基线调度产生方法;第三步给出了调整资源的具体方式以及上下层的作用方式。通过以上三个步骤能够使测试工作顺利完成并较好地达到指标要求,设计结束。
[0070] 本发明一种资源可调整的卫星并行测试资源配置方法,其优点是:本发明能够有效解决卫星并行测试中资源的数量可能存在的不平衡性,即每种资源的数量不匹配,从而导致无论如何进行调度,其资源利用率都不高的问题。通过对资源的少量调整,使各种资源的数量更加匹配,从而明显提高测试总工期和资源利用率。其优点具体包括:①考虑了卫星并行测试中对于资源匹配的需求;②生成的调度方案具有较短的测试总工期;③通过少量资源调整即能够有效地提高资源使用率,减少单一资源的过分损耗。附图说明
[0071] 图1本发明的卫星并行测试任务调度方法的基本流程框图
[0072] 图2本发明遗传算法流程图
[0073] 图3资源调整前后总工期对比示意图(RC=0.1);
[0074] 图4资源调整前后鲁棒性对比示意图(RC=0.1);
[0075] 图5资源调整前后总工期对比示意图(RC=0.3);
[0076] 图6资源调整前后鲁棒性对比示意图(RC=0.3);
[0077] 图7资源调整前后总工期对比示意图(RC=0.5);
[0078] 图8资源调整前后鲁棒性对比示意图(RC=0.5);
[0079] 图9资源调整前后总工期对比示意图(RC=0.7);
[0080] 图10资源调整前后鲁棒性对比示意图(RC=0.7);
[0081] 对图中符号说明如下:
[0082] 图3中横坐标为解序号,纵坐标为总工期,圆圈虚线表示调整前总工期,方实线表示调整后总工期;
[0083] 图4中横坐标为解序号,纵坐标为鲁棒性,圆圈虚线表示调整前鲁棒性,方块实线表示调整后鲁棒性;
[0084] 图5中横坐标为解序号,纵坐标为总工期,圆圈虚线表示调整前总工期,方块实线表示调整后总工期;
[0085] 图6中横坐标为解序号,纵坐标为鲁棒性,圆圈虚线表示调整前鲁棒性,方块实线表示调整后鲁棒性;
[0086] 图7中横坐标为解序号,纵坐标为总工期,圆圈虚线表示调整前总工期,方块实线表示调整后总工期;
[0087] 图8中横坐标为解序号,纵坐标为鲁棒性,圆圈虚线表示调整前鲁棒性,方块实线表示调整后鲁棒性;
[0088] 图9中横坐标为解序号,纵坐标为总工期,圆圈虚线表示调整前总工期,方块实线表示调整后总工期;
[0089] 图10中横坐标为解序号,纵坐标为鲁棒性,圆圈虚线表示调整前鲁棒性,方块实线表示调整后鲁棒性;

具体实施方式

[0090] 本发明通过3艘相同卫星的并行测试任务调度问题的简单实例来说明其具体实施方式。每艘卫星具有8个测试任务,其第0个和第7个任务为虚拟测试任务,每艘卫星的测试时序约束如图3所示,每艘卫星的测试任务的测试时间、资源需求及资源总量如表1所示。卫星1的优先级最高,卫星2的优先级次之,卫星3的优先级最低。
[0091]
[0092] 表1
[0093] 根据以上数据,见图1,本发明一种资源可调整的卫星并行测试资源配置方法,该方法的具体实施步骤如下:
[0094] 第一步使用遗传算法求解卫星并行测试任务调度模型。
[0095] 根据发明内容中第一步提出的遗传算法,实现对多卫星并行测试任务调度模型的求解。其具体实现步骤如下:
[0096] (1)编码方式
[0097] 编码需要符合测试任务的时序约束和卫星的优先级关系。按照本发明提出的编码规则,在该实例中染色体可以编码为如下形式:
[0098] π= [10,11,12,14,13,15,16,17,20,21,22,24,23,25,26,27,30,31,32,34,33,35,36,37]
[0099] 其中,染色体的每个基因的第1位表示卫星编号,第2位表示任务编号。
[0100] (2)解码方式
[0101] 按照发明内容第一步(2)中提出的串行解码步骤,确定所有染色体的测试任务的开始时刻,并计算其测试总工期(卫星3的最后一个虚拟任务的开始时刻即为测试总工期)。下面给出其具体计算步骤,设某条染色体为:
[0102] π= [10,11,12,14,13,15,16,17,20,21,23,22,24,25,26,27,30,31,33,32,35,34,36,37]
[0103] 首先,令基因10的开始时间S10=0,结束时间f10=0,时间序列L={0};基因11的紧前任务的最晚结束时刻为基因10的结束时刻L0=0,当t∈[L0,L0+d11]时满足资
源约束,基因11可以执行,S11=0,f11=5,L={0,5};基因12的紧前任务的最晚结束时刻为基因11的结束时刻L1=5,当t∈[L1,L1+d12]时满足资源约束,基因12可以执行,S12=5,f12=10,L={0,5,10};基因14的紧前任务的最晚结束时刻为基因12的结束时刻L2=10,当t∈[L2,L2+d14]时满足资源约束,基因14可以执行,S14=10,f14=14,L={0,
5,10,14};基因13的紧前任务的最晚结束时刻为基因11的结束时刻L1=5,当t∈[L1,L1+d13]时满足资源约束,基因13可以执行,S13=5,f13=14,L={0,5,10,14};基因15的紧前任务的最晚结束时刻为基因13的结束时刻L3=14,当t∈[L3,L3+d15]时满足资源约束,基因15可以执行,S15=14,f15=22,L={0,5,10,14,22};基因16的紧前任务的最晚结束时刻为基因15的结束时刻L4=22,当t∈[L4,L4+d16]时满足资源约束,基因16可以执行,S16=22,f16=29,L={0,5,10,14,22,29};基因17的紧前任务的最晚结束时刻为基因16的结束时刻L5=29,当t∈[L5,L5+d17]时满足资源约束,基因17可以执行,S17=
29,f17=29,L={0,5,10,14,22,29};基因20的开始时间S20=0,结束时间f20=0,L={0,5,10,14,22,29};基因21的紧前任务的最晚结束时刻为基因20的结束时刻L0=0,当t∈[L0,L0+d21]时满足资源约束,基因21可以执行,S21=0,f21=5,L={0,5,10,14,22,
29};基因23的紧前任务的最晚结束时刻为基因21的结束时刻L1=5,当t∈[L3,L3+d23]时最早满足资源约束,这时基因23可以执行,S23=14,f23=23,L={0,5,10,14,22,23,
29};基因22的紧前任务的最晚结束时刻为基因21的结束时刻L1=5,当t∈[L4,L4+d22]时最早满足资源约束,这时基因22可以执行,S22=22,f22=27,L={0,5,10,14,22,23,27,
29};基因24的紧前任务的最晚结束时刻为基因22的结束时刻L6=27,当t∈[L7,L7+d24]时最早满足资源约束,这时基因24可以执行,S24=29,f24=33,L={0,5,10,14,22,23,
27,29,33};基因25的紧前任务最晚结束时刻为基因23的结束时刻L5=23,当t∈[L7,L7+d25]时最早满足资源约束,这时基因25可以执行,S25=29,f25=37,L={0,5,10,14,
22,23,27,29,33,37};基因26的紧前任务最晚结束时刻为基因25的结束时刻L9=37,当t∈[L9,L9+d26]时满足资源约束,这时基因26可以执行,S26=37,f26=44,L={0,5,10,
14,22,23,27,29,33,37,44};基因27的紧前任务最晚结束时刻为基因26的结束时刻L10=
44,当t∈[L10,L10+d27]时满足资源约束,这时基因27可以执行,S27=44,f27=44,L={0,5,10,14,22,23,27,29,33,37,44};同理可计算出其余基因(测试任务)的开始和结束时间。
[0104] (3)种群初始化
[0105] 按照发明内容第一步(3)中提出的步骤随机产生100条满足测试任务时序约束和卫星优先级关系的染色体,这里种群的规模设为100。下面给出其具体计算步骤:
[0106] 首先,令π=[10],则Dg={11};在Dg中随机选择一个任务11,则π=[10,11],Dg={12,13};在Dg中随机选择一个任务13,则π=[10,11,13],Dg={12,15};在Dg中随机选择一个任务12,则π=[10,11,13,12],Dg={14,15};在Dg中随机选择一个任务14,则π=[10,11,13,12,14],Dg={15};在Dg中随机选择一个任务15,则π=[10,11,13,12,14,15],Dg={16};在Dg中随机选择一个任务16,则π=[10,11,13,12,14,15,16],Dg={17};在Dg中随机选择一个任务17,则π=[10,11,13,12,14,15,16,17],Dg={20};
同理可对卫星2和卫星3的测试任务进行编码,最后得到染色体:
[0107] π= [10,11,13,12,14,15,16,17,20,21,22,23,24,25,26,27,30,31,33,32,35,34,36,37,]。
[0108] 重复上述过程100次,即可得到规模为100的初始种群。
[0109] (4)选择算子
[0110] 根据2-联赛选择机制,每次随机选择两条染色体比较其测试总工期,选择测试总工期较短的那条染色体,若两条染色体的测试总工期相同则随机选择其中一条,直到满足种群规模。
[0111] (5)交叉算子
[0112] 设两条交叉的染色体分别为:
[0113] πF=[10,11,12,14,13,15,16,17,20,21,22,24,23,25,26,27,30,31,33,35,32,34,36,37]
[0114] πG=[10,11,13,12,15,14,16,17,20,21,22,24,23,25,26,27,30,31,32,34,33,35,36,37]
[0115] 若随机产生的交叉点为2,那么子代染色体πS的前3个基因继承自πF,其余基因G D G F继承自π 并保持顺序不变;子代染色体π 的前3个基因继承自π,其余基因继承自π
并保持顺序不变,由此可以得到:
[0116] πS=[10,11,12,13,15,14,16,17,20,21,22,24,23,25,26,27,30,31,32,34,33,35,36,37]
[0117] πD=[10,11,13,12,14,15,16,17,20,21,22,24,23,25,26,27,30,31,33,35,32,34,36,37]
[0118] (6)变异算子
[0119] 设某条染色体为:
[0120] π= [10,11,12,13,14,15,16,17,20,21,22,24,23,25,26,27,30,31,32,34,33,35,36,37]
[0121] 要对基因15进行变异,那么其所有紧前任务最后位置r1=3,所有紧后任务的最前位置r2=6。若随机产生正整数r=4,那么将基因15插入到位置4上,可以得到:
[0122] π= [10,11,12,13,15,14,16,17,20,21,22,24,23,25,26,27,30,31,32,34,33,35,36,37]
[0123] (7)其它参数
[0124] 算法的其它参数设置如下:交叉率0.9,变异率0.1,最大运行代数(停止条件)500,算法流程图如图2所示。
[0125] 第二步获得基线调度方案
[0126] 根据表1中的数据以及卫星的优先级关系,按照第一步描述的遗传算法的各步骤进行计算,得到任务的开始时间集为
[0127]
[0128] 卫星测试的总工期为59,资源各时刻的最大使用率分别为82%,100%,70%,100%,平均利用率分别为55%,66%,61%,53%;
[0129] 第三步根据资源信息调整资源量
[0130] 设置资源阈值ηk=0.5,k=1,2,3,4,采用发明内容第三步的规则库进行判断,显然此时资源2和资源4的最大使用率为1,且平均使用率高于阈值。因此,将资源2和资源4都增加1个单位,资源1和资源3保持不变,重新使用第一步的遗传算法求解,得到总
工期为56,计算资源的最大使用率以及平均使用率,判断是否需要调整。重复以上过程直至满足停止条件,得到调整后的四种资源量分别为10,10,12,10,此时得到的调度方案总工期变为50。即通过对资源的少量调整,有效的减小了测试总工期。
[0131] 第四步调整结束
[0132] 为了进一步说明本发明在双目标环境下的效果,选取Demeulemeester等在《RanGen:面向AoN网络的随机网络生成器》(详见2003年《运筹学》)提出的项目用例生成器(可预先设置任务数,网络复杂度和资源松紧度等随机生成实验用例)产生多组实验用
例,在保证总工期的基础上考虑调度方案的鲁棒性,仍采用前三步进行调整。
[0133] 将以上步骤在VC2008中使用C#编程实现,仿真结果如图3~10所示。
[0134] 从结果中可以看出,当RC=0.1,0.3,0.5,0.7时,经过资源调整而使资源总量少量提高后,不但总工期明显减少,而且鲁棒性也有明显的提高,这说明在卫星并行测试资源配置中,对资源进行调整是必要和有效的。
[0135] 综上,本发明一种资源可调整的卫星并行测试资源配置方法,针对卫星并行测试中,资源的数量可能存在的不平衡性,即每种资源的数量不匹配,从而导致无论如何进行调度,其资源利用率都不高的问题,通过对资源的少量调整,使各种资源的数量更加匹配,明显提高测试总工期和鲁棒性。
相关专利内容
标题 发布/更新时间 阅读量
一种天线支架和航天器 2020-05-13 153
一种航天器用蜂窝板 2020-05-13 98
航天器生活垃圾抛射器 2020-05-14 550
飞碟航天器 2020-05-11 503
碟形航空航天器 2020-05-13 826
航天器 2020-05-11 524
新型航天器结构 2020-05-12 839
一种航天器构型 2020-05-12 334
模拟航天器 2020-05-12 718
航天器隔热装置 2020-05-13 721
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈