基于离散子拓扑序列和遗传算法的卫星层间拓扑重构方法与流程

文档序号:12501546阅读:191来源:国知局
基于离散子拓扑序列和遗传算法的卫星层间拓扑重构方法与流程

本发明涉及卫星网络通信技术领域,具体地,涉及一种基于离散子拓扑序列和遗传算法的卫星层间拓扑重构方法,具体地,涉及一种结合离散子拓扑时间序列和遗传算法获得最为稳定的LEO/MEO卫星层间拓扑结构的方法。



背景技术:

最初的卫星通信系统是由地球同步轨道(Geosynchronous Orbit,GEO)卫星组成。GEO卫星位于赤道上方,作为地面站进行数据传输的中继站,只具有简单的转发功能。然而,随着低轨道(Low-earth Orbit,LEO)和中轨道(Middle-earth Orbit,MEO)卫星的出现,卫星通信系统开始往多层次、一体化的方向发展,由若干处于不同高度轨道或是相同高度的轨道组成网络,作为地面数据传输的一个复杂的交换网络。卫星网络本身也开始具备数据处理能力,可以在星上进行一定程度的数据处理,保证网络传输的有效性和鲁棒性。

目前,卫星网络根据涉及到的轨道高度,可以分为单层卫星和多层卫星。其中,单层卫星是指其组成卫星均在同一层轨道上,目前的研究热点是LEO单层卫星网络。而多层卫星是指由位于不同层次的卫星组成,包括:LEO/MEO双层卫星网络、LEO/MEO/GEO三层卫星网络。在多层卫星网络中,LEO卫星一般作为接入节点,而MEO或是GEO则是作为传输、交换和管理的骨干节点。

然而,类似于地面的ad hoc网络,卫星网络中的节点是处于持续运动中,不在同一轨道中的卫星之间存在相对运动。当两者相对运动到一定方位,卫星之间无法建立星间链路(Inter-Satellite Link,ISL)进行数据传输。因此,整个卫星网络拓扑是动态变化的,无法建立稳定的路由,数据极易在传输过程中丢失。拓扑的动态性限制了卫星网络的丢包率,吞吐量和时延等性能指标。同时,在每次拓扑重构的时候,都需要重建路由,开销巨大。

控制卫星网络拓扑的动态性对于提高卫星网络性能意义巨大。从拓扑的角度观察卫星网络,不难发现,卫星网络的拓扑可以分为单层拓扑和层间拓扑。单层拓扑是指同层卫星组成的网络拓扑,拓扑中的边即为层内星间链路;层间拓扑是不同层卫星之间组成的网络拓扑,拓扑中边为层间星间链路。事实上,在卫星网络拓扑动态性中,层间拓扑和单层拓扑是相互独立的。

经检索现有文件发现,单层卫星以walker星座的方式组网,可以实现单颗卫星与周围四个邻居卫星建立永久链路,单层卫星的拓扑是静态的。此时,卫星网络拓扑的动态性来源于层间拓扑。

本发明以LEO/MEO层间拓扑为对象,研究控制层间拓扑动态性的方法,使动态LEO/MEO卫星网络层间保持稳定连接,以保持卫星网络数据传输的连续与稳定性。事实上,由于不同层间拓扑和单层拓扑在动态性上相互独立,因此控制LEO/MEO层间拓扑的动态性方法同样适用于单层拓扑任意两层间的层间拓扑上。

经对现有文件检索,目前针对拓扑结构的研究都在于如何捕获当前动态拓扑的信息,例如虚拟拓扑和虚拟节点。卫星网络拓扑不是随时间连续变化的,而是在某一段时隙内保持不变。虚拟拓扑利用“快照”思想,提取这些暂时静止的拓扑。而虚拟节点则是给卫星定义了一个逻辑位置,形成虚拟网络,只不过该逻辑位置对应的卫星是不断变化的。然而,这两类方法事实上都是利用拓扑动态行为建立最优的路由服务的,对于拓扑的动态性并没有控制作用。

拓扑的动态性来源在于节点运动导致边不能永久存在,不断的有边消失,新的边出现。因此,本发明利用卫星节点的运动规律,从层间拓扑的边-层间星间链路着手,提供一种新的层间拓扑重构方法,控制层间拓扑的动态性。



技术实现要素:

针对现有技术中的缺陷,本发明的目的是提供一种基于离散子拓扑序列和遗传算法的卫星层间拓扑重构方法。

根据本发明提供的基于离散子拓扑序列和遗传算法的卫星层间拓扑重构方法,包括如下步骤:

步骤1:根据卫星相对运动的内在规律,借助滑动窗口方法寻找静态子拓扑及该静态子拓扑的存活时间,并构建离散子拓扑时间序列;

步骤2:在离散子拓扑时间序列的基础上,统筹考虑所有LEO-MEO卫星所有的边的重构,利用遗传算法将LEO-MEO卫星层间子拓扑作为个体,采用顺序权重进行顺序编码,产生初始种群;

步骤3:将时域寿命和重构代价双重指标线性和作为适应度函数进行遗传算子操作,并在每次遗传算子操作迭代完成后对初始种群进行修正操作;

步骤4:根据时域约束的异步进化终止条件,并累计适应度值,得到最优个体及该最优个体祖先构成的最稳定的拓扑重构过程。

优选地,所述步骤1包括:

步骤1.1:根据卫星相对运动的内在规律,为每颗LEO卫星建立时间线,根据所连接的MEO卫星进行分段;其中,卫星相对运动的内在规律是指:尽管卫星的运动轨道不同,但是每一颗卫星都是进行周期性运动,从而使得任意两颗卫星之间相对运动轨迹也呈周期性,将其中一颗卫星看成静态时,能够动态计算另一个卫星距离远点的距离,从而判断任意两颗卫星的可见时间段;

步骤1.2:用窗口截取各LEO卫星的时间线;具体地,设窗口的起始时间是0时刻,而窗口的截止时间从0时刻开始逐渐增大,直到某一时间点,窗口中的某个LEO卫星切换到某一MEO卫星时,则窗口停止增大,当前窗口内的层间卫星拓扑即为对应时间段的静态子拓扑;

步骤1.3:将窗口从起始位置移动到当前截止时刻,截止位置从当前时刻开始增大直到出现某个LEO卫星切换到某一MEO卫星时,则停止切换;

步骤1.4:判断系统周期是否完成,若完成则结束,得到系统周期内的层间拓扑的离散子拓扑时间序列,并执行步骤2;若未完成,则返回执行步骤1.3。

优选地,所述步骤1中的滑动窗口方法是指:为各LEO卫星建立时间线,标注不同时间段上所连接的MEO卫星,用窗口截取各LEO卫星的时间线,获得窗口对应时间段内的各LEO与MEO卫星的连接情况。

优选地,所述步骤2还包括:针对边的各项参数,所述各项参数包括:角度、维持时间长度、距离;将单条LEO-MEO边的单项参数值减去所有LEO-MEO边的该单项参数数值中的最小值的差,所述差再除以所有边的该单项参数值的最大值与最小值之间的差,得到的结果作为单条LEO-MEO边的单项权重,然后根据实际网络性能对边的各参数依赖情况建立映射函数,以各单项权重为函数参数,计算顺序权重,根据单项权重进行顺序编码,产生初始种群。

优选地,所述步骤3中的适应度函数为遗传算子操作迭代过程中子代拓扑寿命指标与重构代价指标之和;其中,寿命指标是该个体寿命在系统周期中所占的比重;重构代价是指当前个体与其父代个体相比,重构的链路数量占链路数量的比值。

优选地,所述步骤3中的遗传算子操作是指:采用顺序编码的方式消除个体在时域上的异质性,但是仍会引入不存在的边,因而在遗传算法执行过程中,需要对种群进行修正操作;

修正操作就是检查种群是否有不存在的个体,若存在不存在个体,将其中不存在的边更换成LEO卫星在当前时刻能够建立的维持时间最长的ILISL,保证种群中所有个体均有效。

优选地,所述步骤4中的时域约束的异步进化终止是指:在进化过程中,将当代子拓扑的消亡时刻作为时域约束条件,个体的消亡时刻达到或超过系统周期,意味着对应个体已经经历了系统周期,则终止该个体的进化,并统计该个体的累计适应度函数值,将该个体及对应所有祖先的适应度函数值进行累计求和,求和的结果作为最后的筛选标准。

优选地,所述步骤4中选择累计适应度函数值最大的个体及该个体对应的祖先,该个体即为最优个体,而该个体在进化过程中所有出现的祖先及该个体自身即为动态拓扑的离散子拓扑的时间序列,表征了动态拓扑的演化过程,也就是在系统周期中,层间拓扑的重构过程。

与现有技术相比,本发明具有如下的有益效果:

本发明结合离散子拓扑时间序列和遗传算法对LEO/MEO双层卫星层间拓扑进行重构,这两个方法相结合的层间拓扑重构方法,可以表达出网络拓扑在系统周期内的变化过程,使其构建的网络拓扑在系统周期内重构次数尽可能少,重构代价也相对较低。

附图说明

通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:

图1为实施例中滑动窗口应用的示意图;

图2为实施例中顺序编码示意图;

图3为本发明提供的方法的流程示意图。

具体实施方式

下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。

本发明基于离散子拓扑序列和遗传算法的卫星层间拓扑重构方法,包括如下步骤:

步骤S1:根据卫星之间相对运动的内在规律建立离散子拓扑时间序列,通过所述离散子拓扑时间序列表征动态拓扑的演化过程;

步骤S2:在离散子图序列的基础上,对所有LEO/MEO卫星层间拓扑中的边进行重构,即对所有层间星间链路进行重构;

步骤S3:根据卫星网络中各卫星的轨道信息,在运动过程中在LEO卫星选择不同的MEO卫星而不断重构的各种拓扑,行最优化搜索,利用遗传算法得到系统周期内最优的拓扑重构方式。

所述的卫星之间相对运动的内在规律是指:尽管卫星的运动轨道不同,但是每一个卫星都是进行周期性运动,从而使得任意两颗卫星之间相对运动轨迹一定也是周期性的。将其中一个卫星看成静态的,动态计算另一个卫星距离远点距离,从而判断两者可见的时间段。

所述的离散子拓扑时间序列是指:将卫星网络拓扑的动态演化过程表示成一个离散的图序列,其中每个子图对应拓扑动态变化过程中的一个静态子拓扑。卫星网络具备动态网络的基本特征:移动的节点,不断切换的边。而卫星网络拓扑是随时间离散变化的,因此可以用子拓扑随时间的变化来捕捉网络拓扑结构的变化信息。在该子拓扑中,节点分为两类,分别对应LEO卫星和MEO卫星;边即对应LEO卫星与MEO卫星之间的ILISL。离散子拓扑时间序列可以用滑动窗口的方法得到。

所述的最优化搜索是指:将层间拓扑重构问题转化成最优化问题来解决。根据卫星相对运动的内在规律和离散子拓扑时间序列,在系统周期内可能存在的边都是可以预测的包括,每条边的两端节点,存活时间(构建和拆除的时间)都是已知的。因此每一个子拓扑的构建相当于从这些已知的边中进行筛选,最终使得系统周期内子拓扑序列是最优的。因此,可以利用遗传算法进行全局搜索获得相对稳定的拓扑动态结构。

所述的利用遗传算法得到最优的拓扑重构过程是指:将层间静态子拓扑个体,利用顺序权重进行顺序编码,建立拓扑时域寿命和重构代价双重指标适应度函数,进行遗传算子操作,并在每次迭代后进行修正,根据时域约束异步终止条件,根据累计适应度函数值最终得到最优化的个体,该个体在进化过程中所有的祖先及其自身即为拓扑的重构过程。

下面结合具体实施例对本发明中的技术方案做更加详细的说明。

1)建立离散子拓扑时间序列:假设层间拓扑在时间段[ts,te)内拓扑不变,则用G(ts,te)表示该时间段内的静态子拓扑,ts和te对应该静态子拓扑存活的出生时刻和消亡时刻,其寿命为τ=te-ts。在用VL表示LEO节点,用VM表示MEO卫星节点,E(ts,te)表示网络中所有的边,即LEO与MEO卫星之间的ILISL,则在系统周期T内,网络拓扑在[ts,te)时间段内的子拓扑结构表示为:

G(ts,te)=(VL,VM,E(ts,te)) (1-1)

用{G(ts1,te1),G(ts2,te2),…}表示动态网络中所有出现过的子拓扑结构的集合,T表示系统周期,则离散子图时间序列DG可以表示为:

DG=UiG(tsi,tei),0≤tsi<tei≤T (1-2)

式中:G(tsi,tei)表示第i个子拓扑,tsi表示第i个子拓扑出现时间,tei表示第i个子拓扑的消亡时间,UiG(tsi,tei)表示所有子拓扑之和;鉴于每个子拓扑的存在时间不同,因此该和即为子拓扑的时间序列。

计算静态子拓扑可以采用滑动窗口的方法:获取所有卫星的运动轨迹信息,这里只考察一个系统周期内的层间拓扑重构情况。假设考察时间线是[0,T)。根据几何知识,每个LEO卫星独立选取相连MEO卫星,并在各自时间线上予以标注,如图1所示。

用窗口截取各LEO卫星的时间线。设窗口的起始时间是0时刻,而窗口的截止时间从0时刻开始逐渐增大,直到某一时间点t,窗口中的某一LEO卫星切换到另一个MEO卫星,窗口停止增大。当前窗口内的层间卫星拓扑即为对应时间段[0,t)的静态子拓扑。然后窗口起始位置移动到t时刻,截止位置从t时刻开始增大直到出现LEO卫星切换MEO卫星。如此往复,即可得到系统周期内的层间拓扑的离散子拓扑时间序列。

2)利用遗传算法得到最优层间拓扑重构过程:考察实现区间为[0,T)。将层间静态子拓扑结构作为个体,采用顺序编码生成初始种群,以子拓扑消亡时间为适应度函数,进行遗传算子操作,得到最优化结果。

顺序编码及初始种群产生

本发明采用的是十进制编码方式,在进入运算过程时再将十进制码串转化成二进制码串。

假设卫星网络中有l颗LEO卫星,节点集合VL为{VL1,VL2,…VLl},对应索引号为{1,2,…,l};m颗MEO卫星,节点集合VM为{VM1,VM2,…,VMm},对应索引号为{1,2,…,m}。这两个节点集合对于所有子拓扑来说都是静态不变,变化的是边的集合E(ts,te)。

由于心的子拓扑的出生视为遗传算法中的一次进化,因此,任一子拓扑即可视为一个个体。本发明假设一颗LEO卫星只能同时与一颗MEO卫星相连,一颗MEO卫星可以同时与多颗LEO卫星相连。因此任意时刻,子拓扑中都包含l条边,且依赖于该子拓扑的出生时间和消亡时间。本发明将LEO卫星节点{VL1,VL2,…VLl}作为基因,而每一个基因位的取值为该LEO卫星所连接的MEO卫星的索引号。那么该基因位的索引号与基因值即表示了子拓扑中的一条边。

然而,这种方式建立的个体在时域上是异质的。假设个体I1,I2的存活时间分别是[ts1,te1)和[ts2,te2)。个体I1中的边在时间区间[ts1,te1)均是存在的,但是对于时间区间[ts2,te2),部分甚至全部的边都是不存在的。对于个体I2来说也是一样的。在遗传算法的操作中,杂交、变异操作中,个体中的基因相互交换、随机变化,而个体的并不会改变。由此会引入许多不存在的边,相应地,这个个体也是无法存在的。经过多轮迭代后,这种不存在个体可能扩散到整个种群,从而导致算法失败。另一方面,链路本身不仅仅具有时间参数,还有距离、角度等。遗传算子的操作实时上LEO卫星进行另一次选择的时候,因此,还需要在个体中融入链路整体性能。

为了解决时域异质和性能指标缺失带来的问题,算法中为LEO可以建立的所有链路赋予不同权重值,引入顺序权重。考察当前时刻索引号为的LEO卫星可建立的链路,根据其长度d,可维持时间Δt,倾斜角θ等参数计算顺序权重。其中单个参数的顺序权重定义为:在所有链路的该参数项集合中,该链路的参数值与最小值之间的差除以最大值与最小值之间的差。

i.单项权重:单项的参数顺序权重为该参数与所有链路中

式中:表示第i条边的长度项权重,表示第i条边的长度,du表示第u条边的长度,表示网络系统中边的总数,表示第i条边的可维持时间,Δtu表示第u条边的可维持时间,表示第i条边的角度,θu表示第u条边的角度,表示第i条边的可维持时间项权重,表示第i条边的角度项权重。

ii.顺序权重:

式中:表示第i条边的顺序权重值,表示以为参数进行一定的函数映射运算。具体的函数映射方式根据实际网络性能对边的各项参数依赖情况决定

鉴于不同的卫星网络环境,对于链路的距离、维持时间和角度要求不同,因此可以根据实际需求建立函数从而得到具体的顺序权重

由此,要进行顺序编码:

LEO卫星与MEO卫星之间的边其中为LEO卫星的索引号,为的MEO卫星原始索引号,τ为考察时间点。计算当前时刻τ,LEO卫星与所有MEO卫星之间的距离,不能连接的就设两者距离和角度为+∞,维持时间-∞,然后根据单项权重和函数计算顺序权重值即第个基因位的取值。

顺序编码示意图如图2所示。个体不再直接描述拓扑,而是需要将顺序权重值转换成索引号才可得到真正的子拓扑,同时个体的时域特性、性能指标都被内在的包含在了个体,消除了个体的异质性。

采用顺序编码后,采用轮盘赌方式生成初始种群。

建立拓扑时域寿命和重构代价双重指标适应度函数

已知,对于一个子拓扑来说,评判其稳定性能包括寿命,重构代价,重构次数等。其中寿命和重构次数具有一定的依存关系,简单来说,如果每一个子拓扑的寿命都尽可能长,而总时间系统周期是固定的,那么相对来说重构次数必然是最少的。

另一方面,每一次的重构都意味进行路由重建。因此,如果再重构涉及的边数较少,那么重建路由的代价也就越小,受到影响的数据也就较少。因此我们希望每一次重构的时候,重构的边也能较少。作为最优化的标准,适应度函数必须包含这两个指标。因此,适应度函数值计算过程如下:

i.拓扑寿命指标:

第代个体的存活时间为用其寿命为:

则,拓扑寿命指标为:

ii.重构代价指标

第代个体与其父代个体相比,变化的边数为,一共有l条边则重构代价指标为:

iii.适应度函数为:

执行遗传算法步骤并修正

遗传算法的执行过程按照通用步骤即可。

然而,采用顺序编码的方式固然消除了个体在时域上的异质性,但是仍会少量引入不存在的边。因而,在算法执行过程中,需要对种群进行修正操作。

修正操作就是检查种群是否有不存在,若存在不存在个体,将其中不存在的边,更换成该LEO卫星在当前时刻可建立的、维持时间最长的ILISL,保证种群中所有个体有效。

在每次产生了新种群的时候都需要进行修正,防止无效基因随着循环迭代而扩散。

时域约束的异步进化终止条件

进化终止的条件有两个:达到最大迭代次数;时域约束异步终止条件。

时域约束的异步终止是指,在进化过程中,将当代子拓扑的消亡时刻作为时域约束条件。个体的消亡时刻达到或超过系统周期,意味着该支系个体已经经历了系统周期,即终止该个体的进化,并统计该支系个体的累计适应度函数值,将该个体及其所有祖先的适应度函数值累计求和,作为最后的筛选标准。

剩余的个体继续进行进化。当已经终止进化的个体数量达到一定比例,强行终止种群的进化,完成遗传算法。选择累计适应度函数值最大的个体及其祖先,即为最优个体,而该个体在进化过程中所有出现的祖先及其自身,即为动态拓扑的离散子拓扑的时间序列,表征了动态拓扑的演化过程,也就是在系统周期中,层间拓扑的重构过程。

允许部分个体完成进化而抛弃剩余个体的原因在于,一方面,个体数量较少会降低遗传算的准确性,得到的结果误差较大,需要舍弃;另一方面,重构次数和重构代价是结果优劣性的双重标准,因此如果少量增加重构次数可以换回较低的重构代价,这在资源受限的卫星网络中具有更大的优势。

以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1