一种中继卫星负载均衡的动态抢占式任务调度方法及系统与流程

文档序号:11523800阅读:209来源:国知局
一种中继卫星负载均衡的动态抢占式任务调度方法及系统与流程
本发明涉及一种空间信息网络中继卫星资源调度领域,特别是关于一种中继卫星负载均衡的动态抢占式任务调度方法及系统。
背景技术
:随着空间信息网络的飞速发展,空间业务量逐渐呈现指数型增长趋势。中继卫星系统作为空间信息网络的重要组成部分,能够有效缓解卫星业务的传输压力,实现全球范围数据的实时回传,弥补了我国在远海难以建立地面站的现实问题。在中继卫星系统中,为实现对于星上任务的合理安排,资源调度成为了亟待解决的主要技术问题。在卫星任务调度的相关研究中,其研究重点是数学建模与算法求解。通过建立与中继卫星调度问题高度等价的数学模型,准确描述卫星控制系统所受的约束条件和系统要实现的具体目标,是解决该问题的基础。迄今为止,对于中继卫星调度问题的建模与求解可主要分为两类:静态任务规划与动态任务规划。1、静态任务规划:中继卫星资源调度受可见时间窗口、数据存储能力、设备能耗、任务有效性和优先级等多种因素的影响,是一个多约束满足的np-hard问题。目前,针对这种问题主要采用静态的任务规划方式,即在假设任务均为周期产生或是预先可知的前提下,对任务的调度方案进行求解。提出的问题模型主要包括线性规划模型、图论模型与多约束满足问题模型。其中,数学规划模型与图论模型具有基础理论成熟与求解算法简单等特点,但对于解决大规模任务和复杂约束条件的调度问题并不具有优势。约束满足问题模型能够利用逻辑语言对问题中的变量和约束条件进行准确描述,同时可采用群智能优化算法求解,通过设计恰当的搜索策略,在确定的时间内获得调度问题的最优或较优解,充分发挥了中继卫星的离线处理能力。2、动态任务规划:事实上,中继卫星的调度过程中会受到多种扰动因素的影响,包括突发任务,设备故障,平台振动和较差的误码性能等,直接引起了星上任务和终端设备的动态变化。当上述不确定因素发生时,如果采用静态规划算法重新安排任务,不仅会增加卫星的计算开销和能耗,还会导致大量的任务无法得到实时传输,严重时甚至有可能导致调度方案的失效。中继卫星的调度研究应在静态任务规划的基础上,随着资源的变化不断对原方案进行调整,在保证调整程度最小的前提下,实现高效的动态任务规划。已有的动态调度方法通过对业务特征的分析,采用较为简单的替换插入与移动插入策略进行任务调整。这种方法会使原始方案产生较大改变,在任务安排较为密集的情况下导致较多任务的丢失。除此之外,也有采用完全重调度算法对调度方案重新计算,使得大量的计算资源被浪费。因此,有必要进一步优化中继卫星在动态任务规划时的调度性能。目前,学术界与工业界在中继卫星资源调度的问题上针对第一种情况已有较多研究成果,而涉及第二种情况的学术研究与设计方案还比较有限。技术实现要素:针对上述问题,本发明的目的是提供一种中继卫星负载均衡的动态抢占式任务调度方法及系统,其采用直接调度模块与间接调度模块进一步优化动态扰动条件下中继卫星任务调度方案,以提供比完全重调度与传统动态调度方法更优的系统性能。为实现上述目的,本发明采取以下技术方案:一种中继卫星负载均衡的动态抢占式任务调度方法,其特征在于包括以下步骤:1)若天线具有足够长的空闲时间,则在该时间直接插入任务进行直接调度;若不能直接插入,则进行抢占式任务切换和子任务分割与插入进行调度,若仍不能调度则进入下一步;2)对采用直接调度模块后未被执行的新任务,通过间接调度完成调度;3)建立三个目标函数实现对最优动态调度方案的选择。进一步,所述步骤1)中,抢占式任务切换是在任务调度的过程中,当有新任务产生且所有天线终端均被占用时,通过调整任务的调度顺序将新任务被预先安排。进一步,所述步骤1)中,子任务分割与插入是通过子任务分割策略将新任务或与新任务冲突的原始任务分解为多个子任务进行调度。进一步,所述步骤1)中,直接调度过程如下:1.1)获得新任务集合td,将任务按权重大小从高到低排序,得到td={td_1,td_2,…,td_nt},其中nt表示新任务的数量,确定当前调度任务为td_i;1.2)对任务td_i确定天线资源集合md={md_1,md_2,…,md_nm},其中nm表示可用天下数量,选择当前天线为md_j;1.3)对任务td_i选择天线md_j上的可见时间窗口wd,获得选择时间窗口与剩余时间,并定义任务插入点集合id={stw,et1,et2,…,etn_old,etw};其中,stw和etw表示当前时间窗口的开始和结束时刻;n_old表示静态规划方案中原任务在当前时间窗口内调度的数量;etk表示静态规划方案在当前时间窗口中安排任务的结束时刻,k=1,2,…;1.4)依次判断任务td_i在各时间窗口中能否直接插入;若可行,调度新任务td_i,否则进入下一步;1.5)采用抢占式任务切换策略,依次判断任务td_i在各时间窗口中能否执行;若可行,调度新任务td_i,否则进入下一步;1.6)采用子任务分割策略,将各时间窗口的插入点集合id按空闲时段的时长排序,判断前nidec_dynamic个空闲时段能否实现对分割后的任务td_i的调度;若可行,调度新任务td_i,否则采用间接调度方法;其中,nidec_dynamic表示新任务的子任务数量。进一步,所述步骤2)中,间接调度过程如下:2.1)回溯至任务新任务td_i的插入节点id与冲突任务集合;2.2)选择插入点与冲突任务序列,比较新任务td_i与冲突任务的权重;若新任务td_i较大,则代替冲突任务优先执行;否则进入步骤2.4);2.3)采用子任务分割策略调度被替换的冲突任务;如果处理操作成功,则冲突任务实现了重调度;否则,删除冲突任务;2.4)依次寻找并判断下一个插入节点的能否实现对新任务td_i的调度;如果所有的任务插入节点均被遍历,则进入步骤3)。进一步,所述步骤3)中,对动态调度方案的评价过程如下:3.1)定义三个目标函数分别为最大任务调度权重、最小方案变化率和最小子任务分解程度;3.2)根据目标函数确定多目标决策机制。进一步,所述步骤3.1)中,最大任务调度权重f1(ad):式中,ad是静态任务规划方案;yi为调度完成的任务i,若任务i被调度,yi=1;否则,yi=0;pi表示相应任务的权重;最小方案变化率f2(a,ad):式中,δmov为移动任务的处罚系数,δdel为删除任务的处罚系数;nmov为移动任务的次数,ndel为删除任务的次数;pi为任务移动任务的权重,pj为任务删除任务的权重。进一步,所述步骤3.1)中,最小子任务分解程度f3(ad):式中,nidec_dynamic表示新任务的子任务数量;nidec_original表示原任务的子任务数量。进一步,所述步骤3.2)中,具体确定过程为:3.2.1)假设经过调度模块后共获得n个动态调度方案,定义动态方案矩阵d;3.2.2)对不同方案下各目标函数进行归一化与加权处理,并获得改进后的动态方案矩阵dw;3.2.3)分别选择各方案的动态方案矩阵dw中对于三个目标函数的最优值与最劣值,并构造最优向量最劣向量其中,与分别表示第i个目标函数的最大值与最小值;3.2.4)计算各方案到最优向量、最劣向量的欧式距离di+与di-,根据最优向量欧式距离di+与最劣向量欧式距离di-的比值得到第i个方案的评价函数ei,评价函数的值越小,则该评价函数对应的方案的性能越优。一种中继卫星负载均衡的动态抢占式任务调度系统,其特征在于包括:直接调度模块、间接调度模块和调度方案评价模块;所述直接调度模块用于对天线具有足够长的空闲时间,则在该时间直接插入任务进行调度;若不能直接插入,则进行抢占式任务切换和子任务分割与插入进行调度;所述间接调度模块用于对采用直接调度模块后未被执行的新任务,通过间接调度完成调度;所述调度方案评价模块用于建立三个目标函数实现对最优动态调度方案的选择。本发明由于采取以上技术方案,其具有以下优点:1、本发明通过采用直接调度和间接调度,并建立三个目标函数对最优动态调度方案进行选择,充分优化了动态扰动下中继卫星资源调度的系统性能。2、本发明相比已有的中继卫星调度方法更加有效的解决资源调度问题实际面临的多类动态扰动问题,提升了任务动态变化条件下系统的整体性能。同时抢占式动态调度算法具有较快的处理速率,在保证原始调度方案调整程度最小的前提下,实现了高效的动态任务规划。3、本发明在直接调度中采用抢占式任务切换后,新任务被预先安排,避免了与原任务的冲突,能够有效提高系统的调度效率。4、本发明在直接调度中采用子任务分割与插入,可优先传输新任务,而原任务可以分割为多个子任务,这样不仅实现调度任务权重的最大化,还提高任务调度的灵活性。综上所述,本发明可以广泛在空间信息网络中继卫星资源调度领域中应用。附图说明图1是本发明动态抢占式任务调度方法示意图;图2是本发明抢占式任务切换示意图;图3是本发明子任务分割示意图;图4是本发明实施例中继卫星系统任务调度示意图;图5是本发明实施例中wra的甘特图;图6是本发明实施例中tdsa的甘特图;图7是本发明实施例中pdsa的甘特图。具体实施方式中继卫星动态抢占式调度系统以静态任务规划方案和动态调度策略为启发式信息,将最大任务调度权重、最小方案变化率和最小子任务分解程度三个目标函数作为调度原则,在保证方案调整程度最小的情况下,实现高效的动态任务规划。本发明提供的一种中继卫星负载均衡的动态抢占式任务调度方法及系统主要是在新任务的有效时间内,若天线具有足够长的空闲时间,则可以在该时间直接插入任务进行调度;若不能直接插入,则采用抢占式任务切换与子任务分割策略进行调度。如果新任务的有效时间过短,且任务权重较大,需要立刻抢占资源并代替当前任务执行;若被替换的冲突任务采用子任务分割方法仍无法被调度时,丢弃该冲突任务。下面结合附图和实施例对本发明进行详细的描述。如图1所示,本发明的中继卫星负载均衡的动态抢占式任务调度方法包括以下步骤:1)在任务调度的过程中,若天线具有足够长的空闲时间,则可以在该时间直接插入任务进行直接调度;若不能直接插入,则进行抢占式任务切换和子任务分割与插入进行调度,若仍不能调度则进入下一步;2)对采用直接调度模块后未被执行的新任务,通过间接调度完成调度;3)在采用直接与间接调度后获得了一系列动态调度方案,为确定方案的优劣程度,建立三个目标函数实现对最优动态调度方案的选择。上述步骤1)中,抢占式任务切换是在任务调度的过程中,当有新任务产生且所有天线终端均被占用时,可以通过调整任务的调度顺序将新任务被预先安排。如图2所示,浅色部分是任务的有效时间,黑色部分是安排任务的时间。在调整之前,原任务已经在原始方案中被调度,并与需要立刻被调度的新任务冲突,导致新任务无法被执行。在采用抢占式任务切换后,新任务被预先安排,避免了与原任务的冲突,能够有效提高系统的调度效率。上述步骤1)中,由于任务动态调度是基于静态任务规划的初始方案实现的,其中原任务的调度占据了绝大多数时间窗口,并将它们划分成多个小时隙。因此,每个时间窗口中很少有足够长的时间去安排新的任务,直接导致任务调度难度的增加。若仅采用抢占式任务调度的策略,原任务将会超出自己的有效时间范围。本发明采用的子任务分割与插入是通过子任务分割策略将新任务或与新任务冲突的原始任务分解为多个子任务进行调度:如图3所示,如果原任务具有足够长的有效时间进行任务传输时,当有新任务接入时,可优先传输新任务,而原任务可以分割为多个子任务,这样不仅实现调度任务权重的最大化,还提高任务调度的灵活性。上述步骤1)中,直接调度过程如下:1.1)获得新任务集合td,将任务按权重大小从高到低排序,得到td={td_1,td_2,…,td_nt},其中nt表示新任务的数量,确定当前调度任务为td_i;1.2)对任务td_i确定天线资源集合md,可得md={md_1,md_2,…,md_nm},其中nm表示可用天下数量,选择当前天线为md_j;1.3)对任务td_i选择天线md_j上的可见时间窗口wd,获得选择时间窗口与剩余时间,并定义任务插入点集合id={stw,et1,et2,…,etn_old,etw};其中,stw和etw表示当前时间窗口的开始和结束时刻;n_old表示静态规划方案中原任务在当前时间窗口内调度的数量;etk表示静态规划方案在当前时间窗口中安排任务的结束时刻,k=1,2,…;1.4)依次判断任务td_i在各时间窗口中能否直接插入;若可行,调度新任务td_i,否则进入下一步;1.5)采用抢占式任务切换策略,依次判断任务td_i在各时间窗口中能否执行;若可行,调度新任务td_i,否则进入下一步;1.6)采用子任务分割策略,将各时间窗口的插入点集合id按空闲时段的时长排序,判断前nidec_dynamic个空闲时段能否实现对分割后的任务td_i的调度;若可行,调度新任务td_i,否则采用间接调度方法;其中,nidec_dynamic表示新任务的子任务数量。上述步骤2)中,间接调度过程如下:2.1)回溯至任务新任务td_i的插入节点id与冲突任务集合;2.2)选择插入点与冲突任务序列,比较新任务td_i与冲突任务的权重;若新任务td_i较大,则代替冲突任务优先执行;否则进入步骤2.4);2.3)采用子任务分割策略调度被替换的冲突任务;如果处理操作成功,则冲突任务实现了重调度;否则,删除冲突任务。2.4)依次寻找并判断下一个插入节点的能否实现对新任务td_i的调度。如果所有的任务插入节点均被遍历,则进入步骤3)。上述步骤3)中,对动态调度方案的评价过程如下:3.1)定义三个目标函数分别为最大任务调度权重、最小方案变化率和最小子任务分解程度:①最大任务调度权重f1(ad):动态任务规划的主要目标是提高中继卫星的调度能力,即中继卫星系统需要传输更多的任务。因此,建立动态调度目标函数f1(ad)为最大调度权重:式中,ad是静态任务规划方案;yi为调度完成的任务i,若任务i被调度,yi=1;否则,yi=0;pi表示相应任务的权重。②最小方案变化率f2(a,ad):在初始调度方案确定后,各用户星通常会依据该方案执行数据传输计划。因此,初始方案的动态调整不仅会对当前调整的任务产生影响,还有可能造成各用户星后续决策的变化。此外,任务调整后,新的调度方案需要重新下达给各用户星,增加了中继卫星系统的开销。因此,建立动态调度模型的第二个目标函数f2(a,ad)为最小方案变化率。由于对初始方案任务的调整存在移动任务和删除任务两种方式,不同调整方式对初始方案造成的影响程度不同,并且影响程度与被调整任务的重要程度相关,因此目标函数f2(a,ad)定义如下:式中,δmov为移动任务的处罚系数,δdel为删除任务的处罚系数;nmov为移动任务的次数,ndel为删除任务的次数;pi为任务移动任务的权重,pj为任务删除任务的权重。③最小子任务分解程度f3(ad):采用子任务分解策略可有效提高系统调度效率,但是过多次数的子任务分解会导致切换时间和系统能耗的增加,这会影响了系统的整体性能,因此需要在保证任务调度权重较高的同时,减少任务分割的数量。因此,目标函数最小子任务分解程度f3(ad)定义如下:式中,nidec_dynamic表示新任务的子任务数量;nidec_original表示原任务的子任务数量。在一个优选的实施例中,为保证卫星天线的切换能耗,设定nidec_dynamic与nidec_original的数值不大于3。3.2)根据目标函数确定多目标决策机制:3.2.1)假设经过调度模块后共获得n个动态调度方案,可定义动态方案矩阵d为:其中,fij表示第j个方案的第i个目标函数值。3.2.2)对不同方案下各目标函数进行归一化与加权处理,并获得改进后的动态方案矩阵dw:其中,fi表示经过归一化加权操作后第i个目标函数值。||fi||2表示第i个目标函数的2-范数。w=[w1,w2,w3]表示目标函数的重要程度,且w1+w2+w3=1。3.2.3)分别选择各方案的动态方案矩阵dw中对于三个目标函数的最优值与最劣值,并构造最优向量最劣向量其中,与分别表示第i个目标函数的最大值与最小值。3.2.4)计算各方案到最优向量、最劣向量的欧式距离di+与di-,根据最优向量欧式距离di+、最劣向量欧式距离di-得到第i个方案的评价函数ei:则评价函数的值越小,则该评价函数对应的方案的性能越优。本发明还提供一种中继卫星负载均衡的动态抢占式任务调度系统,其包括直接调度模块、间接调度模块和调度方案评价模块。其中:直接调度模块用于对天线具有足够长的空闲时间,则在该时间直接插入任务进行调度;若不能直接插入,则进行抢占式任务切换和子任务分割与插入进行调度;间接调度模块用于对采用直接调度模块后未被执行的新任务,通过间接调度完成调度;调度方案评价模块用于建立三个目标函数实现对最优动态调度方案的选择。实施例:如图4所示,场景设置:3个中继卫星与8个用户卫星,仿真时间为00:00:00~06:00:00。三颗中继卫星分别位于0°e,162.324°w和162.324°e,每个中继卫星携带2副单址天线终端,包括ka频带天线和激光天线。ka天线的数据率为600mb/s,切换时间为2s;激光天线的数据率为1500mb/s,切换时间为20s。假设初始任务数量为64,由各类扰动因素引起的突发任务数量为8,任务详细的定义如表1所示。中继卫星系统在调度时优先离线进行静态任务规划,在此基础上采用完全重调度算法(wra)与抢占式动态调度算法(pdsa)的系统调度性能进行优化。表1突发任务的参数设置任务编号任务权重用户卫星任务大小/gbitt655leo01220t6610leo02200t678leo03150t686leo04270t697leo05150t707leo06160t718leo07100t729leo08400如图5所示为wra的甘特图,其中浅色部分(即每根天线对应传输任务的下半部分)表示静态任务规划方案,深色部分(即每根天线对应传输任务的上半部分)表示wra的调度方案。色块的长度对应于所选天线上的任务执行时间。显然,wra调度了所有8个新任务,但是丢弃了原始方案中的任务。此外,采用wra进行动态调度后仅有8个任务的分配与静态规划方案相同,重调度率高达87.50%。尽管wra算法满足了任务调度的要求,但是该方案的重调度率以及由于重调度而引起的资源浪费对系统性能的影响较大。如图6所示为tdsa的甘特图。新任务优先安排在空闲时间执行,如果没有足够的空闲时间,新任务将替换原规划中的任务。图中有两个原始任务被新任务替换,任务完成率为97.22%。与静态任务规划相比,方案变化概率为3.13%。tdsa优先保证完成新任务,因此,如果有大量的实时任务产生时,系统调度性能将受到较大影响。如图7所示为pdsa的甘特图,图中椭圆部分代表新任务t5被t69替换,同时被移动到了空闲的时隙进行调度。菱形部分表示新任务t65和t66由于可用时间有限被划分为子任务执行。由图可知,pdsa实现了所有新任务任务的调度,且重调度率仅为1.56%。因此,与wra相比pdsa在调度任务量与重调度率方面分别优化了1.39%和85.94%。综上所述,本发明通过直接调度、间接调度,并通过三个目标函数进行评价,与完全重调度算法(wra)、传统动态调度算法(tdsa)相比,本发明的性能更优。上述各实施例仅用于说明本发明,各个步骤都是可以有所变化的,在本发明技术方案的基础上,凡根据本发明原理对个别步骤进行的改进和等同变换,均不应排除在本发明的保护范围之外。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1