一种动态星间的多星协同计算方法、系统、设备及介质转让专利

申请号 : CN202310000914.7

文献号 : CN115686874B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 费洪晓张茜龙军刘丽敏王运波

申请人 : 中南大学

摘要 :

本发明公开了一种动态星间的多星协同计算方法、系统、设备及介质,包括获取卫星网络中的辅卫星资料和等待计算的计算任务资料,根据辅卫星资料和计算任务资料构建卫星五元组与任务四元组,卫星五元组包括卫星ID、卫星可见时间窗开始、卫星可见时间窗结束、可见时间窗和卫星的计算速度,任务四元组包括计算任务ID、计算任务开始时间、计算任务结束时间和计算任务的数据大小,根据卫星五元组、任务四元组与预先设置的目标函数计算得到满足执行计算任务所消耗的总能耗最小或执行计算任务所消耗的总时间最小的最适调度策略,根据最适调度策略将计算任务分发给对应的辅卫星,实现了动态时变环境下的多星协同计算。

权利要求 :

1.一种动态星间的多星协同计算方法,其特征在于,应用于主卫星,所述动态星间的多星协同计算方法包括:获取卫星网络中的辅卫星资料和等待计算的计算任务资料;

根据所述辅卫星资料和所述待计算任务资料构建卫星五元组与任务四元组,所述卫星五元组包括卫星ID、卫星可见时间窗开始、卫星可见时间窗结束、可见时间窗和卫星的计算速度;所述任务四元组包括计算任务ID、计算任务开始时间、计算任务结束时间和计算任务的数据大小;

根据所述卫星五元组、所述任务四元组与预先设置的目标函数计算得到满足执行计算任务所消耗的总能耗最小或执行计算任务所消耗的总时间最小的最适调度策略,其中,所述目标函数的计算公式为:其中,E为执行计算任务所消耗的总能耗,VTj为第j个辅卫星的可见时间窗,Aij为第j个cal辅卫星执行第i个计算任务,Cj为第j个辅卫星执行计算任务的每秒的能耗,Ej 为第j个辅卫星执行计算任务所消耗的能耗,Sj为第j个辅卫星的计算速度,Li为第i个计算任务的大小,RTi为第i个计算任务的开始时间,FTj‑1为第j‑1个辅卫星的计算任务结束时间,FTi为第ical个计算任务的结束时间,Ti 为第i个计算任务的完工时间,T为执行计算任务所消耗的总时间,N为计算任务总数量,M为辅卫星总数量,max FTp为所有计算任务的结束时间最大的第p个计算任务的结束时间,min RTq为所有计算任务的开始时间最小的第q个计算任务的开始时间;

根据所述最适调度策略将所述计算任务分发给对应的辅卫星。

2.根据权利要求1所述的一种动态星间的多星协同计算方法,其特征在于,所述根据所述卫星五元组、所述任务四元组与预先设置的目标函数计算得到满足执行计算任务所消耗的总能耗最小或执行计算任务所消耗的总时间最小的最适调度策略,包括:初始化所述卫星五元组和所述任务四元组,得到第一卫星五元组和第一任务四元组;

根据所述第一卫星五元组、所述第一任务四元组与所述目标函数计算得到第一适应度;若所述第一适应度达到预设值,将所述第一适应度对应的调度策略作为最适调度策略,若所述第一适应度未达到预设值,根据所述第一适应度计算得到第二卫星五元组与第二任务四元组;

根据所述第二卫星五元组、所述第二任务四元组与所述目标函数计算得到第二适应度;若所述第二适应度达到预设值,将所述第二适应度对应的调度策略作为最适调度策略,若所述第二适应度未达到预设值,根据所述第二适应度计算得到第三卫星五元组与第三任务四元组;

依次迭代,直至第k适应度达到预设值或者迭代次数达到最大迭代次数,将所述第k适应度对应的调度策略作为最适调度策略,其中,k为大于2的正整数。

3.根据权利要求2所述的一种动态星间的多星协同计算方法,其特征在于,所述动态星间的多星协同计算方法还包括:实时监督所有辅卫星的状态。

4.根据权利要求3所述的一种动态星间的多星协同计算方法,其特征在于,在所述获取卫星网络中的辅卫星资料和等待计算的计算任务资料之后,所述动态星间的多星协同计算方法还包括:将计算任务添加到计算任务队列中,并存储所述计算任务队列。

5.根据权利要求4所述的一种动态星间的多星协同计算方法,其特征在于,所述根据所述第一卫星五元组、所述第一任务四元组与所述目标函数计算得到第一适应度,包括:根据所述第一卫星五元组、所述第一任务四元组与所述目标函数通过轮盘赌策略进行计算,得到第一适应度。

6.根据权利要求5所述的一种动态星间的多星协同计算方法,其特征在于,所述根据所述第一适应度计算得到第二卫星五元组与第二任务四元组,包括:根据所述第一适应度通过交叉方法与交叉概率进行计算,得到第二卫星五元组与第二任务四元组。

7.一种动态星间的多星协同计算系统,其特征在于,应用于主卫星,所述动态星间的多星协同计算系统包括:卫星资料获取模块,用于获取卫星网络中的辅卫星资料和等待计算的计算任务资料;

元组构建模块,用于根据所述辅卫星资料和所述待计算任务资料构建卫星五元组与任务四元组,所述卫星五元组包括卫星ID、卫星可见时间窗开始、卫星可见时间窗结束、可见时间窗和卫星的计算速度;所述任务四元组包括计算任务ID、计算任务开始时间、计算任务结束时间和计算任务的数据大小;

调度策略计算模块,用于根据所述卫星五元组、所述任务四元组与预先设置的目标函数计算得到满足执行计算任务所消耗的总能耗最小或执行计算任务所消耗的总时间最小的最适调度策略,其中,所述目标函数的计算公式为:其中,E为执行计算任务所消耗的总能耗,VTj为第j个辅卫星的可见时间窗,Aij为第j个cal辅卫星执行第i个计算任务,Cj为第j个辅卫星执行计算任务的每秒的能耗,Ej 为第j个辅卫星执行计算任务所消耗的能耗,Sj为第j个辅卫星的计算速度,Li为第i个计算任务的大小,RTi为第i个计算任务的开始时间,FTj‑1为第j‑1个辅卫星的计算任务结束时间,FTi为第ical个计算任务的结束时间,Ti 为第i个计算任务的完工时间,T为执行计算任务所消耗的总时间,N为计算任务总数量,M为辅卫星总数量,max FTp为所有计算任务的结束时间最大的第p个计算任务的结束时间,min RTq为所有计算任务的开始时间最小的第q个计算任务的开始时间;

计算任务分发模块,用于根据所述最适调度策略将所述计算任务分发给对应的辅卫星。

8.一种动态星间的多星协同计算设备,其特征在于,包括至少一个控制处理器和用于与所述至少一个控制处理器通信连接的存储器;所述存储器存储有可被所述至少一个控制处理器执行的指令,所述指令被所述至少一个控制处理器执行,以使所述至少一个控制处理器能够执行如权利要求1至6任一项所述的一种动态星间的多星协同计算方法。

9.一种计算机可读存储介质,其特征在于:所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行如权利要求1至6任一项所述的一种动态星间的多星协同计算方法。

说明书 :

一种动态星间的多星协同计算方法、系统、设备及介质

技术领域

[0001] 本发明涉及多星协同计算相关技术领域,尤其是涉及一种动态星间的多星协同计算方法、系统、设备及介质。

背景技术

[0002] 传统的单星计算方式,对地面站的依赖性较强,其在轨活动都是由地面中心提前做好计划方案和相应指令,然后经由合适的地面站上行链路上传至卫星并离线执行,这种方式要求任务明确且串行、星地通信时间充分以及运行环境相对稳定。由于卫星数量和任务需求日益增多,星地交互频繁,运行环境复杂多变,高负荷的计算运作,给单星产生了巨大的挑战。
[0003] 星上具有较强的计算处理能力已经成为卫星网络发展的新趋势,多星协同计算的研究也迅速地发展。近些年来,多星协同计算方向的研究,卫星网络中的多星协同策略大多为分布式架构、边缘计算模型、多智能体模型、优化算法。在高速时变下的卫星环境中,将卫星个体看作为具有自主计算能力的智能体,借鉴边缘计算、分布式架构的思想,构建一个相对稳固的网络结构,使卫星网络中的多颗卫星参与协同计算,通过完工时间来衡量协同的效率。比起单星计算模式,以上提到的现存的多星协同技术虽然削弱了卫星对地面站的依赖、减少了单星的计算负荷,但是真实卫星网络环境下是动态变化着的。高时变的拓扑、动态变化的网络等特征使得多星协同的问题充满了一些不确定性。但现有技术中规约的问题是较为简单的情况,且多为研究静态环境下的多星协同,与真实场景有出入,并不能很好地适应天基信息网络下的多星协同计算。

发明内容

[0004] 本发明旨在至少解决现有技术中存在的技术问题。为此,本发明提出一种动态星间的多星协同计算方法、系统、设备及介质,能够实现动态时变环境下的多星协同计算。
[0005] 本发明的第一方面,提供了一种动态星间的多星协同计算方法,包括如下步骤:
[0006] 获取卫星网络中的辅卫星资料和等待计算的计算任务资料;
[0007] 根据所述辅卫星资料和所述计算任务资料构建卫星五元组与任务四元组,所述卫星五元组包括卫星ID、卫星可见时间窗开始、卫星可见时间窗结束、可见时间窗和卫星的计算速度;所述任务四元组包括计算任务ID、计算任务开始时间、计算任务结束时间和计算任务的数据大小;
[0008] 根据所述卫星五元组、所述任务四元组与预先设置的目标函数计算得到满足执行计算任务所消耗的总能耗最小或执行计算任务所消耗的总时间最小的最适调度策略;
[0009] 根据所述最适调度策略将所述计算任务分发给对应的辅卫星。
[0010] 根据本发明的实施例,至少具有如下技术效果:
[0011] 本方法通过获取卫星网络中的辅卫星资料和等待计算的计算任务资料,根据辅卫星资料和计算任务资料构建卫星五元组与任务四元组,卫星五元组包括卫星ID、卫星可见时间窗开始、卫星可见时间窗结束、可见时间窗和卫星的计算速度,任务四元组包括计算任务ID、计算任务开始时间、计算任务结束时间和计算任务的数据大小,根据卫星五元组、任务四元组与预先设置的目标函数计算得到满足执行计算任务所消耗的总能耗最小或执行计算任务所消耗的总时间最小的最适调度策略,根据最适调度策略将计算任务分发给对应的辅卫星,实现了动态时变环境下的多星协同计算。
[0012] 根据本发明的一些实施例,所述根据所述卫星五元组、所述任务四元组与预先设置的目标函数计算得到满足执行计算任务所消耗的总能耗最小或执行计算任务所消耗的总时间最小的最适调度策略,包括:
[0013] 初始化所述卫星五元组和所述任务四元组,得到第一卫星五元组和第一任务四元组;
[0014] 根据所述第一卫星五元组、所述第一任务四元组与所述目标函数计算得到第一适应度;若所述第一适应度达到预设值,将所述第一适应度对应的调度策略作为最适调度策略,若所述第一适应度未达到预设值,根据所述第一适应度计算得到第二卫星五元组与第二任务四元组;
[0015] 根据所述第二卫星五元组、所述第二任务四元组与所述目标函数计算得到第二适应度;若所述第二适应度达到预设值,将所述第二适应度对应的调度策略作为最适调度策略,若所述第二适应度未达到预设值,根据所述第二适应度计算得到第三卫星五元组与第三任务四元组;
[0016] 依次迭代,直至第i适应度达到预设值或者迭代次数达到最大迭代次数,将所述第i适应度对应的调度策略作为最适调度策略,其中,i为大于2的正整数。
[0017] 根据本发明的一些实施例,所述目标函数的计算公式为:
[0018]
[0019] 其中,E为执行计算任务所消耗的总能耗,VTj为第j个辅卫星的可见时间窗,Aij为cal第j个辅卫星执行第i个计算任务,Cj为第j个辅卫星执行计算任务的每秒的能耗,Ej 为第j个辅卫星执行计算任务所消耗的能耗,Sj为第j个辅卫星的计算速度,Li为第i个计算任务的大小,RTi为第i个计算任务的开始时间,FTj‑1为第j‑1个辅卫星的计算任务结束时间,FTi为cal
第i个计算任务的结束时间,Ti 为第i个计算任务的完工时间,T为执行计算任务所消耗的总时间,N为计算任务总数量,M为辅卫星总数量,max FTp为所有计算任务的结束时间最大的第p个计算任务的结束时间,min RTq为所有计算任务的开始时间最小的第q个计算任务的结束时间。
[0020] 根据本发明的一些实施例,所述动态星间的多星协同计算方法还包括:
[0021] 实时监督所有辅卫星的状态。
[0022] 根据本发明的一些实施例,在所述获取卫星网络中的辅卫星资料和等待计算的计算任务资料之后,所述动态星间的多星协同计算方法还包括:
[0023] 将计算任务添加到计算任务队列中,并存储所述计算任务队列。
[0024] 根据本发明的一些实施例,所述根据所述第一卫星五元组、所述第一任务四元组与所述目标函数计算得到第一适应度,包括:
[0025] 根据所述第一卫星五元组、所述第一任务四元组与所述目标函数通过轮盘赌策略进行计算,得到第一适应度。
[0026] 根据本发明的一些实施例,所述根据所述第一适应度计算得到第二卫星五元组与第二任务四元组,包括:
[0027] 根据所述第一适应度通过交叉方法与交叉概率进行计算,得到第二卫星五元组与第二任务四元组。
[0028] 本发明的第二方面,提供一种动态星间的多星协同计算系统,所述动态星间的多星协同计算系统包括:
[0029] 卫星资料获取模块,用于获取卫星网络中的辅卫星资料和等待计算的计算任务资料;
[0030] 元组构建模块,用于根据所述辅卫星资料和所述计算任务资料构建卫星五元组与任务四元组,所述卫星五元组包括卫星ID、卫星可见时间窗开始、卫星可见时间窗结束、可见时间窗和卫星的计算速度;所述任务四元组包括计算任务ID、计算任务开始时间、计算任务结束时间和计算任务的数据大小;
[0031] 调度策略计算模块,用于根据所述卫星五元组、所述任务四元组与预先设置的目标函数计算得到满足执行计算任务所消耗的总能耗最小或执行计算任务所消耗的总时间最小的最适调度策略;
[0032] 计算任务分发模块,用于根据所述最适调度策略将所述计算任务分发给对应的辅卫星。
[0033] 本系统通过获取卫星网络中的辅卫星资料和等待计算的计算任务资料,根据辅卫星资料和计算任务资料构建卫星五元组与任务四元组,卫星五元组包括卫星ID、卫星可见时间窗开始、卫星可见时间窗结束、可见时间窗和卫星的计算速度,任务四元组包括计算任务ID、计算任务开始时间、计算任务结束时间和计算任务的数据大小,根据卫星五元组、任务四元组与预先设置的目标函数计算得到满足执行计算任务所消耗的总能耗最小或执行计算任务所消耗的总时间最小的最适调度策略,根据最适调度策略将计算任务分发给对应的辅卫星,实现了动态时变环境下的多星协同计算。
[0034] 本发明的第三方面,提供了一种动态星间的多星协同计算电子设备,包括至少一个控制处理器和用于与所述至少一个控制处理器通信连接的存储器;所述存储器存储有可被所述至少一个控制处理器执行的指令,所述指令被所述至少一个控制处理器执行,以使所述至少一个控制处理器能够执行上述的动态星间的多星协同计算方法。
[0035] 本发明的第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行上述的动态星间的多星协同计算方法。
[0036] 需要注意的是,本发明的第二方面至第四方面与现有技术之间的有益效果与上述的一种动态星间的多星协同计算系统与现有技术之间的有益效果相同,此处不再细述。
[0037] 本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

[0038] 本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
[0039] 图1是本发明一实施例的一种动态星间的多星协同计算方法的流程图;
[0040] 图2是本发明一实施例的一种动态星间的多星协同计算方法的主卫星和辅卫星结构示意图;
[0041] 图3是本发明一实施例的一种动态星间的多星协同计算系统的流程图。

具体实施方式

[0042] 下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。
[0043] 在本发明的描述中,如果有描述到第一、第二等只是用于区分技术特征为目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量或者隐含指明所指示的技术特征的先后关系。
[0044] 在本发明的描述中,需要理解的是,涉及到方位描述,例如上、下等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
[0045] 本发明的描述中,需要说明的是,除非另有明确的限定,设置、安装、连接等词语应做广义理解,所属技术领域技术人员可以结合技术方案的具体内容合理确定上述词语在本发明中的具体含义。
[0046] 传统的单星计算方式,对地面站的依赖性较强,其在轨活动都是由地面中心提前做好计划方案和相应指令,然后经由合适的地面站上行链路上传至卫星并离线执行,这种方式要求任务明确且串行、星地通信时间充分以及运行环境相对稳定。由于卫星数量和任务需求日益增多,星地交互频繁,运行环境复杂多变,高负荷的计算运作,给单星产生了巨大的挑战。
[0047] 星上具有较强的计算处理能力已经成为卫星网络发展的新趋势,多星协同计算的研究也迅速地发展。近些年来,多星协同计算方向的研究,卫星网络中的多星协同策略大多为分布式架构、边缘计算模型、多智能体模型、优化算法。在高速时变下的卫星环境中,将卫星个体看作为具有自主计算能力的智能体,借鉴边缘计算、分布式架构的思想,构建一个相对稳固的网络结构,使卫星网络中的多颗卫星参与协同计算,通过完工时间来衡量协同的效率。比起单星计算模式,以上提到的现存的多星协同技术虽然削弱了卫星对地面站的依赖、减少了单星的计算负荷,但是真实卫星网络环境下是动态变化着的。高时变的拓扑、动态变化的网络等特征使得多星协同的问题充满了一些不确定性。但现有技术中规约的问题是较为简单的情况,且多为研究静态环境下的多星协同,与真实场景有出入,并不能很好地适应天基信息网络下的多星协同计算。
[0048] 为了解决上述技术缺陷,参照图1,本发明还提供了一种动态星间的多星协同计算方法,包括:
[0049] 步骤S101、获取卫星网络中的辅卫星资料和等待计算的计算任务资料。
[0050] 步骤S102、根据辅卫星资料和计算任务资料构建卫星五元组与任务四元组,卫星五元组包括卫星ID、卫星可见时间窗开始、卫星可见时间窗结束、可见时间窗和卫星的计算速度;任务四元组包括计算任务ID、计算任务开始时间、计算任务结束时间和计算任务的数据大小。
[0051] 步骤S103、根据卫星五元组、任务四元组与预先设置的目标函数计算得到满足执行计算任务所消耗的总能耗最小或执行计算任务所消耗的总时间最小的最适调度策略。
[0052] 步骤S104、根据最适调度策略将计算任务分发给对应的辅卫星。
[0053] 本方法通过获取卫星网络中的辅卫星资料和等待计算的计算任务资料,根据辅卫星资料和计算任务资料构建卫星五元组与任务四元组,卫星五元组包括卫星ID、卫星可见时间窗开始、卫星可见时间窗结束、可见时间窗和卫星的计算速度,任务四元组包括计算任务ID、计算任务开始时间、计算任务结束时间和计算任务的数据大小,根据卫星五元组、任务四元组与预先设置的目标函数计算得到满足执行计算任务所消耗的总能耗最小或执行计算任务所消耗的总时间最小的最适调度策略,根据最适调度策略将计算任务分发给对应的辅卫星,实现了动态时变环境下的多星协同计算。
[0054] 在一些实施例中,参照图2,Main satellite表示主卫星,Computing satellite表示辅卫星。
[0055] 在一些实施例中,根据卫星五元组、任务四元组与预先设置的目标函数计算得到满足执行计算任务所消耗的总能耗最小或执行计算任务所消耗的总时间最小的最适调度策略,包括:
[0056] 初始化卫星五元组和任务四元组,得到第一卫星五元组和第一任务四元组。
[0057] 根据第一卫星五元组、第一任务四元组与目标函数计算得到第一适应度;若第一适应度达到预设值,将第一适应度对应的调度策略作为最适调度策略,若第一适应度未达到预设值,根据第一适应度计算得到第二卫星五元组与第二任务四元组。
[0058] 根据第二卫星五元组、第二任务四元组与目标函数计算得到第二适应度;若第二适应度达到预设值,将第二适应度对应的调度策略作为最适调度策略,若第二适应度未达到预设值,根据第二适应度计算得到第三卫星五元组与第三任务四元组。
[0059] 依次迭代,直至第i适应度达到预设值或者迭代次数达到最大迭代次数,将第i适应度对应的调度策略作为最适调度策略,其中,i为大于2的正整数。
[0060] 在一些实施例中,目标函数的计算公式为:
[0061]
[0062] 其中,E为执行计算任务所消耗的总能耗,VTj为第j个辅卫星的可见时间窗,Aij为cal第j个辅卫星执行第i个计算任务,Cj为第j个辅卫星执行计算任务的每秒的能耗,Ej 为第j个辅卫星执行计算任务所消耗的能耗,Sj为第j个辅卫星的计算速度,Li为第i个计算任务的大小,RTi为第i个计算任务的开始时间,FTj‑1为第j‑1个辅卫星的计算任务结束时间,FTi为cal
第i个计算任务的结束时间,Ti 为第i个计算任务的完工时间,T为执行计算任务所消耗的总时间,N为计算任务总数量,M为辅卫星总数量,max FTp为所有计算任务的结束时间最大的第p个计算任务的结束时间,min RTq为所有计算任务的开始时间最小的第q个计算任务的结束时间。
[0063] 在一些实施例中,动态星间的多星协同计算方法还包括:
[0064] 实时监督所有辅卫星的状态。
[0065] 在一些实施例中,在获取卫星网络中的辅卫星资料和等待计算的计算任务资料之后,动态星间的多星协同计算方法还包括:
[0066] 将计算任务添加到计算任务队列中,并存储计算任务队列。
[0067] 在一些实施例中,根据第一卫星五元组、第一任务四元组与目标函数计算得到第一适应度,包括:
[0068] 根据第一卫星五元组、第一任务四元组与目标函数通过轮盘赌策略进行计算,得到第一适应度。
[0069] 在一些实施例中,根据第一适应度计算得到第二卫星五元组与第二任务四元组,包括:
[0070] 根据第一适应度通过交叉方法与交叉概率进行计算,得到第二卫星五元组与第二任务四元组。
[0071] 为了便于本领域人员理解,以下提供一组运动想象训练实验数据:
[0072] 为了更加有效地验证本发明的有效性,选取了网上可公开得到的真实卫星星历数据,可以计算得到卫星的可见时间窗以及载荷资源情况。而后通过设置卫星节点属性、任务队列属性等,执行调度策略实验。进行了多组反复实验计算,通过控制节点数量、计算卫星数量、通讯延迟等因素,来比较本发明所提出的算法与其他算法的性能。经过验证,在进行调度时,即使遇到了任务队列发生变化的情况也能够及时进行选择操作。在设定的时间片内,得到了动态环境下的平均实验结果。实验结果发现本发明提出的算法,无论是在完工时间还是能耗效率上都有很明显的改善。本发明所提出的方法与其他6种算法的性能比较结果,实验结果表明本发明所提出的方法是优于现存的算法的。
[0073] 通过构建了一个分布式架构来对多星协同计算进行建模,清晰地描述了多星协同计算的过程,并提出了“时间片”的概念,研究了动态时变环境下的多星协同计算。
[0074] 通过相应的算法来减少能量消耗和完成时间。 具体来说,在任务五元组和卫星四元组的约束下,将计算任务分发给卫星,多颗卫星可以协同完成,降低能耗和完成时间。
[0075] 对特定卫星数据进行了实验验证,发现本发明提出的算法在完成时间和能量消耗方面明显优于其他调度算法。
[0076] 另外,参照图3,本发明的一个实施例,提供一种动态星间的多星协同计算系统,包括卫星资料获取模块1100、元组构建模块1200、调度策略计算模块1300以及计算任务分发模块1400,其中:
[0077] 卫星资料获取模块1100用于获取卫星网络中的辅卫星资料和等待计算的计算任务资料。
[0078] 元组构建模块1200用于根据辅卫星资料和计算任务资料构建卫星五元组与任务四元组,卫星五元组包括卫星ID、卫星可见时间窗开始、卫星可见时间窗结束、可见时间窗和卫星的计算速度;任务四元组包括计算任务ID、计算任务开始时间、计算任务结束时间和计算任务的数据大小。
[0079] 调度策略计算模块1300用于根据卫星五元组、任务四元组与预先设置的目标函数计算得到满足执行计算任务所消耗的总能耗最小或执行计算任务所消耗的总时间最小的最适调度策略。
[0080] 计算任务分发模块1400用于根据最适调度策略将计算任务分发给对应的辅卫星。
[0081] 本系统通过获取卫星网络中的辅卫星资料和等待计算的计算任务资料,根据辅卫星资料和计算任务资料构建卫星五元组与任务四元组,卫星五元组包括卫星ID、卫星可见时间窗开始、卫星可见时间窗结束、可见时间窗和卫星的计算速度,任务四元组包括计算任务ID、计算任务开始时间、计算任务结束时间和计算任务的数据大小,根据卫星五元组、任务四元组与预先设置的目标函数计算得到满足执行计算任务所消耗的总能耗最小或执行计算任务所消耗的总时间最小的最适调度策略,根据最适调度策略将计算任务分发给对应的辅卫星,实现了动态时变环境下的多星协同计算。
[0082] 需要注意的是,本系统实施例与上述的系统实施例是基于相同的发明构思,因此上述方法实施例的相关内容同样适用于本系统实施例,这里不再赘述。
[0083] 本申请还提供一种动态星间的多星协同计算电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现:如上述的动态星间的多星协同计算方法。
[0084] 处理器和存储器可以通过总线或者其他方式连接。
[0085] 存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施方式中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至该处理器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
[0086] 实现上述实施例的动态星间的多星协同计算方法所需的非暂态软件程序以及指令存储在存储器中,当被处理器执行时,执行上述实施例中的动态星间的多星协同计算方法,例如,执行以上描述的图1中的方法步骤S101至步骤S104。
[0087] 本申请还提供一种计算机可读存储介质,存储有计算机可执行指令,计算机可执行指令用于执行:如上述的动态星间的多星协同计算方法。
[0088] 该计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个处理器或控制器执行,例如,被上述电子设备实施例中的一个处理器执行,可使得上述处理器执行上述实施例中的动态星间的多星协同计算方法,例如,执行以上描述的图1中的方法步骤S101至步骤S104。
[0089] 本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统可以被实施为软件、固件、硬件及其适当的组合。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序单元或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD‑ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序单元或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
[0090] 上面结合附图对本发明实施例作了详细说明,但本发明不限于上述实施例,在所属技术领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下作出各种变化。