一种最小成本区域目标覆盖的分区卫星任务规划方法与流程

文档序号:19740912发布日期:2020-01-18 05:12阅读:304来源:国知局
一种最小成本区域目标覆盖的分区卫星任务规划方法与流程

本发明属于对地观测卫星区域目标任务规划领域,具体的说是一种最小成本区域目标覆盖的分区卫星任务规划方法。



背景技术:

地球观测卫星(eos:earthobservationsatellite),或称为成像卫星(以下简称为“卫星”),其主要功能之一是通过星载传感器(如可见光相机、多光谱相机)对陆地、海洋、大气等进行观测。观测的需求由来自各个领域、各个部门的用户提出,在卫星的地面管控中心汇总,管控中心根据观测需求,结合卫星资源使用情况,综合制定各个卫星的成像覆盖计划,并生成测控指令,经由地面测控站上注至卫星,卫星在接收到指令后作出相应的动作,对指定的区域进行成像,所成影像数据暂时保存在星载硬盘上,当行至与地面站可通信时,将影像数据下传至地面站。在该过程中,地面管控中心制定卫星成像计划的环节称为卫星任务规划,是整个卫星使用管理过程中的关键环节之一。

在传统的卫星使用模式中,卫星单独制定计划,并单独执行成像任务,卫星与卫星之间不进行协同观测。而随着卫星数量的增多,使用多颗卫星协同对地进行成像观测已成为可能,且存在多星协同区域成像的现实需求。

卫星一次过境只能拍摄一个有限长度和宽度的条带区域,如果待观测的区域较大,则卫星一次过境难以完整观测整个区域。如果用户急需该区域的影像数据,则可以使用多颗卫星多次过境机会进行协同成像。由于,每个卫星的星下点轨迹不一定平行,因此有可能导致成像条带之间的重叠。如果不进行合理地安排,继而有可能会导致条带间大量的重叠,使得部分区域被重复观测,而部分区域得不到观测,这样的情形十分不利于资源的合理利用。为了更好的利用现有的卫星覆盖资源,应当制定一个合理的计划,对卫星每次过境的行为动作(主要包括开关机时间和侧摆角度)进行安排,使得多颗卫星多个覆盖机会协同观测的效果尽可能的“好”。这是一类典型的运筹优化问题,存在迫切的现实需求。该类优化问题中还存在如下应用场景:在一定的时间区间内,用户部门需要某一个较大区域的完整影像数据,且可供调用的卫星数量充足,完全有能力将该区域完整地拍摄下来。在这种情形下,为了让尽可能地节省资源,希望制定一个覆盖方案,使得其覆盖成本尽可能的小。我们将该问题称为覆盖资源充足情形下的最小覆盖成本问题。一般的区域目标规划方法在对面此问题中的较大待观测的区域时,可能会由于问题规模过大,问题复杂度过高而需要消耗大量的计算资源。这不利于方法在实际工程环境下的运用。



技术实现要素:

本发明是为了解决上述现有技术存在的不足之处,提出一种最小成本区域目标覆盖的分区卫星任务规划方法,以期能以合适的计算资源得出以尽可能小的成本完成对区域目标完全覆盖的满意方案,达到计算资源消耗与解的最优性之间的平衡,从而能在实际环境下充分利用卫星资源,对重要区域目标进行经济有效的覆盖搜索。

本发明为解决技术问题采用如下技术方案:

本发明一种最小成本区域目标覆盖的分区卫星任务规划方法的特点是应用于以充足的覆盖机集合s对一个的待观测区域r完全覆盖且使覆盖成本尽可能小的覆盖模式规划中,其中,每个覆盖机会s∈s有自己属性,包括:星下点轨迹os、卫星距地高度hs、最大开机时间ms,且ms对应于一个覆盖模式的最大长度rs、最大可侧摆角度vs、相机视场角ws;

所述覆盖模式c是由卫星拍摄形成的矩形条带,并由一个覆盖机会选择一定的侧摆角度与开关机时间而确定,一个覆盖机会的覆盖成本与其选择的覆盖模式的长度成正比例关系,且比例系数为

以所述待观测矩形区域r的任意一个顶点为原点o,以与所述原点相邻的两条边分别为x轴和y轴,从而建立坐标系o-xy;所述待观测矩形区域r的四个顶点坐标,分别记为左上角顶点lu(r)、左下角顶点ld(r)、右上角顶点ru(r)、右下角顶点rd(r);所述分区规划方法是按如下步骤进行:

步骤1:对所述待观测矩形区域r进行分区;

步骤1.1:设定每个分区的长lp与宽wp;

步骤1.2:根据待观测矩形区域r的四个顶点坐标计算所述待观测矩形区域r的长lr与宽wr;

步骤1.3:用lr整除lp得到分区的长分段数dl及余数rl,若余数则将dl+1赋值给dl;用wr整除wp得到分区的宽分段数dw及余数rw,若余数则将dw+1赋值给dw;

步骤1.4:用lr除以dl得到最终分区的长lf,用wr除以dw得到最终分区的宽wf;

步骤1.5:根据最终分区的长lf与宽wf对待观测矩形区域r进行平均分区,从而得到各个分区的四个顶点坐标;

步骤1.6:得到分区的集合n,且分区的总数为|n|=dl×dw;

步骤2:向不同分区分配观测资源并为其选择覆盖模式以使形成的覆盖方案对应的覆盖成本尽可能地最小;

步骤2.1:将覆盖机会随机分配至各个分区形成一个初始的当前分配方案其中,ys的取值代表覆盖机会s所分配的分区;

步骤2.2:计算在当前分配方案y下较优覆盖模式集c*(y)对应的覆盖成本p(y);

步骤2.3:设置最大迭代次数与初始退火温度t1,令当前外循环的迭代次数k=1;

步骤2.4:如果则转步骤2.9,否则执行步骤2.5;

步骤2.5:随机选择一个覆盖机会并基于覆盖机会构造当前分配方案y的若干邻居分配方案;

步骤2.6:分别计算每个邻居分配方案下较优覆盖模式集对应的覆盖成本,选择其中覆盖成本最小的一个作为最优邻居分配方案

步骤2.7:比较最优邻居分配方案与当前分配方案y的覆盖成本,如果则将最优邻居分配方案赋值给当前分配方案y后直接执行步骤2.8,否则先执行步骤2.7.1-步骤2.7.2后再执行步骤2.8;

步骤2.7.1:计算第k次迭代的劣解接受率

步骤2.7.2:第k次生成一个取值为0到1的随机数rk,若rk≤pk,则将最优邻居分配方案赋值给当前分配方案y;

步骤2.8:将k+1赋值给k,更新退火温度tk=tk-1×λ,其中,λ为降温系数,并取小于1大于0的固定值,转至步骤2.4;

步骤2.9:输出当前分配方案y,以及在当前分配方案各覆盖机会选择的较优覆盖模式集c*(y)与其对应的覆盖成本p(y)。

本发明所述的分区规划方法的特点是,所述步骤1.5是按如下过程进行:

步骤1.5.1:令i=1,以待观测矩形区域r的左上角坐标lu(r)作为第i个分区ni的左上角坐标lu(ni);

步骤1.5.2:将第i个分区ni的左上角坐标lu(ni)的横坐标值加上lf得到其右上角坐标ru(ni),将左上角坐标lu(ni)的纵坐标值加上wf得到其左下角坐标ld(ni),再将右上角坐标ru(ni)的纵坐标值加上wf得到其右下坐标rd(ni);

步骤1.5.3:若第i个分区ni的右下角坐标rd(ni)等于待观测矩形区域r的右下角坐标rd(r),则转至步骤1.5.6,否则执行步骤1.5.4;

步骤1.5.4:若第i个分区ni的右上角坐标ru(ni)的横坐标值等于待观测矩形区域r的右上角坐标ru(r)的横坐标值,则令作为第i+1个分区ni+1的左上角坐标lu(ni+1),否则,令第i个分区ni的右上角坐标ru(ni)作为第i+1个分区ni+1的左上角坐标lu(ni+1);

步骤1.5.5:将i+1赋值给i后,转至步骤1.5.2用于构造下一个分区的四顶点坐标;

步骤1.5.6:结束分区,输出各个分区的四顶点坐标。

所述步骤2.5是按如下过程进行:

步骤2.5.1:令分区集合表示分区集合n中除去覆盖机会所分配的分区后形成的集合,令当前内循环的迭代次数m=0;

步骤2.5.2:如果为空,则转步骤2.5.4,否则将m+1赋值给m后,执行步骤2.5.3;

步骤2.5.3:在当前分配方案y中将选中的覆盖机会随机分配至分区集合中的一个分区,即令从而得到一个邻居分配方案将分区从分区集合中去除,转至步骤2.5.2;

步骤2.5.4:输出所有得到的邻居分配方案

所述步骤2.2和步骤2.6中的,在给定分配方案的情况下计算各覆盖机会选择的较优覆盖模式集以及对应的覆盖成本是按如下步骤进行:

步骤a:以各个不同的分区以及分配给不同分区的覆盖机会的集合为输入,构造网格并使用启发式算法,计算不同分区局部的较优覆盖方案与相应的覆盖成本;

步骤a.1:将第i个分区ni划分为多个大小一致的正方形单元格,得到单元格集合ji;

步骤a.2:根据所划分出的单元格集合ji,为分配给第i个分区ni的覆盖机会集si生成基本覆盖模式,并组成其可选覆盖模式的总集合ci;

所述基本覆盖模式是指:内部存在如下三个单元格:

①被覆盖模式完全覆盖,即四个顶点都在覆盖模式所覆盖面积内;

②其中一个单元格有顶点位于覆盖模式的左边界上,并命名为左单元格,另一个单元格有顶点位于覆盖模式的上边界上,并命名为上单元格,最后一个单元格有顶点位于覆盖模式的下边界上,并命名为下单元格,其中,左单元格、上单元格与下单元格可以重合;

步骤a.3:以第i个分区ni划分出的单元格集合ji以及各个覆盖机会的可选覆盖模式集合ci为输入,以启发式算法选定各个覆盖机会的覆盖模式,从而得到较优覆盖模式集合ci*,并同时得出其覆盖成本pi;

步骤b:将所有分区的覆盖方案合并得到对待观测矩形区域r总体的覆盖方案c*,将所有分区的覆盖方案对应的覆盖成本{pi|i=1,2,…,|n|}相加得到待观测矩形区域r总体的覆盖成本p。

所述步骤a.2中的,根据单元格集合为覆盖机会集生成基本覆盖模式,并组成其可选覆盖模式的总集合是按如下步骤进行:

步骤a.2.1:如果则转至步骤a.2.4,否则执行步骤a.2.2;

步骤a.2.2:选取其中一个覆盖机会s∈si,根据覆盖机会s的类型,使用相应的方法为覆盖机会s构造基于单元格集合ji的基本覆盖模式集cs:

步骤a.2.2.1:根据覆盖机会s的星下点轨迹os判断覆盖机会s的类型,其类型分为右下倾斜型与左下倾斜型;

步骤a.2.2.2:令集合

步骤a.2.2.3:从单元格集合ji中筛选出子集js,且子集js中的每个单元格都可以作为覆盖机会s的最长基本覆盖模式的左单元格;

步骤a.2.2.4:如果则转步骤a.2.2.13,否则,选择js中的一个单元格p后执行步骤a.2.2.5;

步骤a.2.2.5:根据单元格p,从单元格集合ji中筛选出单元格子集且当p作为左单元格时中的每个单元格都能为作为上单元格,与p共同构成覆盖机会s的基本覆盖模式;

步骤a.2.2.6:如果则转步骤a.2.2.12,否则,选择中的一个单元格q后执行步骤a.2.2.7;

步骤a.2.2.7:根据单元格p和q,从单元格集合ji中筛选出单元格子集且当p作为左单元格、q作为上单元格时,单元格子集中的每个单元格都能作为下单元格,且与p和q共同构成覆盖机会s的一个基本覆盖模式;

步骤a.2.2.8:如果则转步骤a.2.2.11,否则,选择中的一个单元格b后执行步骤a.2.2.9;

步骤a.2.2.9:基于单元格p、q和b构造一个属于覆盖机会s的基本覆盖cs(p,q,b);

步骤a.2.2.10:将cs(p,q,b)加入cs,将单元格b从中去除,转至步骤a.2.2.8;

步骤a.2.2.11:将单元格q从中去除,转至步骤a.2.2.6;

步骤a.2.2.12:将单元格p从js中去除,转至步骤a.2.2.4;

步骤a.2.2.13:输出覆盖模式集合cs;

步骤a.2.3:将覆盖模机会s从si中去除,转步骤a.2.1;

步骤a.2.4:令输出覆盖模式集合ci。

所述步骤a.2.2.3是按如下过程进行:

步骤a.2.2.3.1:令

步骤a.2.2.3.2:遍历集合ji,计算每一个单元格u作为覆盖模式的左单元格时,覆盖机会s的相机侧摆角度其中,若覆盖机会为右下角倾斜型,则为单元格u的左下角顶点ld(u)与覆盖机会s的星下点轨迹os之间的距离,若覆盖机会为左下倾斜型,则为单元格u的左上角顶点lu(u)与覆盖机会s的星下点轨迹os之间的距离,如果|σs(u)|≤vs,则将单元格u加入左单元格的子集js。

所述步骤a.2.2.5是按如下过程进行:步骤a.2.2.5.1:令

步骤a.2.2.5.2:利用式(1)计算单元格p作为左单元格时,覆盖模式的条带宽度ηs(p):

步骤a.2.2.5.3:遍历集合ji,检验其中的一个单元格t是否满足以下四个条件,若全部满足,则将单元格t加入否则,继续检验的下一个单元格:

若覆盖机会为右下角倾斜型,则四个条件为:

①过单元格p的左下角顶点作直线lp||os,过t的右上角顶点作直线l′t||os,则直线lp与l′t之间的距离不能超过条带的宽度ηs(p);

②分别过单元格p和t的左上角顶点作直线l′p⊥os和lt⊥os,则lt在l′p的上方;

③过单元格t的左下角顶点作直线则直线在lp的右侧;

④过单元格p的右下角顶点作直线则直线与lt之间的距离不能超过条带长度ls;其中,“||”表示平行关系,“⊥”表示垂直关系;

若覆盖机会为左下角倾斜型,则四个条件为:

①过单元格p的左上角顶点作直线lp||os,过t的右下角顶点作直线l′t||os,则直线lp与l′t之间的距离不能超过条带的宽度ηs(p);

②分别过单元格p和t的右上角顶点作直线l′p⊥os和lt⊥os,则lt在l′p的上方;

③过单元格t的左上角顶点作直线则直线在lp的右侧;

④过单元格p的左下角顶点作直线则直线与lt之间的距离不能超过条带长度ls;其中,“||”表示平行关系,“⊥”表示垂直关系。

所述步骤a.2.2.7是按如下过程进行:步骤a.2.2.7.1:令

步骤a.2.2.7.2:遍历集合ji,检验其中的一个单元格a是否满足以下四个条件,若全部满足,则将单元格a加入否则,继续检验的下一个单元格:

若覆盖机会为右下角倾斜型,则四个条件为:

①过单元格p的左下角顶点作直线lp||os,过a的右上角顶点作直线l′a||os,则直线lp与l′a之间的距离不能超过条带的宽度ηs(p);

②分别过单元格p和a的左上角顶点作直线l′p⊥os和在l′p的下方;

③过单元格a的左下角顶点作直线则直线在lp的右侧;

④过单元格a的右下角顶点作直线la⊥os,过t的左上角顶点作直线lt⊥os,则直线la与lt之间的距离不能超过条带长度ls;其中,“||”表示平行关系,“⊥”表示垂直关系;

若覆盖机会为左下角倾斜型,则四个条件为:

①过单元格p的左上角顶点作直线lp||os,过a的右下角顶点作直线l′a||os,则直线lp与l′a之间的距离不能超过条带的宽度ηs(p);

②分别过单元格p和a的右上角顶点作直线l′p⊥os和在l′p的下方;

③过单元格a的左上角顶点作直线则直线在lp的右侧;

④过单元格a的左下角顶点作直线la⊥os,过t的右上角顶点作直线lt⊥os,则直线la与lt之间的距离不能超过条带长度ls;其中,“||”表示平行关系,“⊥”表示垂直关系。

所述步骤a.2.2.9是按如下过程进行:

步骤a.2.2.9.1:若覆盖机会为右下角倾斜型,则过单元格p的左下角顶点ld(p)作直线lp||os,过单元格q的左上角顶点lu(q)作直线lq⊥os,过单元格b的右下角顶点rd(q)作直线lb⊥os,若覆盖机会为左下角倾斜型,则过单元格p的左上角顶点lu(p)作直线lp||os,过单元格q的右上角顶点ru(q)作直线lq⊥os,过单元格b的左下角顶点ld(q)作直线lb⊥os;

步骤a.2.2.9.2:计算单元格p作为左单元格时,覆盖模式的条带宽度ηs(p);

步骤a.2.2.9.3:作直线使其满足:

与lp之间的距离等于ηs(p);

在lp的右侧;

步骤a.2.2.9.4:以lp,lq,lb四条直线作为矩形的四边,以四条直线的交点作为矩形的四个顶点,构造覆盖模式cs(p,q,b)。

所述步骤a.3是按如下过程进行:

步骤a.3.1:令ji中所有的单元格的状态为“未覆盖”,令

步骤a.3.2:令g=1;

步骤a.3.3:若g>|ci|,则转步骤a.3.5,否则执行步骤a.3.4,其中,|ci|表示可选覆盖模式集合ci中的元素个数;

步骤a.3.4:选择ci中的第g个覆盖模式,并从单元格集合ji中选出能被第g个覆盖模式完全覆盖且状态为“未覆盖”的单元格,记为有效单元格集合v(g),其数量记为|v(g)|,计算第g个覆盖模式的覆盖成本其中lg为第g个覆盖模式的长度,为第g个覆盖模式对应的覆盖机会s'的成本系数,再计算第g个覆盖模式有效单元格数与覆盖成本的比值即有效性价比,将g+1赋值给g后,转至步骤a.3.3;

步骤a.3.5:若或所有单元格的状态都为“已覆盖”则转至步骤a.3.8,否则执行步骤a.3.6;

步骤a.3.6:选择ci中有效性价比最大的覆盖模式并作为相应覆盖机会s*所选择的覆盖模式,再将g*加入ci*中,将覆盖模式g*的有效单元格集合v(g*)中所有单元格的状态均改为“已覆盖”;

步骤a.3.7:将覆盖机会s*所对应的覆盖模式集合cs*从可选覆盖模式集合ci中去除,从ci中筛选出上单元格或下单元格状态为“已覆盖”的覆盖模式子集c′i并从ci中去除,转至步骤a.3.2;

步骤a.3.8:输出各个覆盖机会选择的覆盖模式集合即最终的覆盖方案,计算中所有覆盖模式的覆盖成本的和,即第i个分区ni的覆盖成本pi。

与现有技术相比,本发明的有益效果在于:

1.本发明采用“分而治之”的思想提出基于分区的求解策略,即将大的待观测的区域分解成若干个小的分区,并将覆盖资源分配给各个分区,每个分区单独求解,多个分区合并起来,形成总体覆盖方案,从而减小了问题的规模,降低了优化的难度。不同的覆盖资源分配方案会导致不同的总体覆盖方案,因此提出了使用模拟退火方法对最优的资源分配方案进行搜索。

2.本发明采用网格离散化方法对待观测的分区进行处理,将原问题转变为覆盖各个单元格的问题,从而降低了与计算几何的耦合性;同时,基于网格,构建各个观测机会的基本覆盖模式作为可选覆盖模式集,将决策变量从连续空间内取值转变为从离散空间内取值,从而降低了计算量。

3.本发明采用基于动态贪婪的启发式算法,通过有顺序地选择“性价比”最高的覆盖模式,为离散化后的各个分区快速寻找到较优覆盖方案。该启发式算法为多项式时间算法,当覆盖模式的总数在合理范围内时,其求解速度快,易实现,解释性强,稳定可靠,从而在本方法的模拟退火过程中,能快速有效地找到较优的覆盖方案可行解,以提高对分配方案解空间的搜索的速度。

附图说明

图1为本发明最小成本区域目标覆盖的分区卫星任务规划方法的流程图;

图2a为本发明左下倾斜型区域目标覆盖示意图;

图2b为本发明右下倾斜型区域目标覆盖示意图;

图2c为本发明多星协同覆盖示意图;

图3a为本发明覆盖模式形成示意图;

图3b为本发明最大覆盖模式长度示意图;

图3c为本发明卫星侧摆示意图;

图3d为本发明最大可侧摆角度示意图;

图4a为本发明右下倾斜型最长基本覆盖模式示意图;

图4b为本发明左下倾斜型最长基本覆盖模式示意图;

图5a为本发明一种情况下侧摆角度计算示意图;

图5b为本发明另一种情况下侧摆角度计算示意图;

图6a为本发明覆盖模式长度削减示意图1;

图6b为本发明覆盖模式长度削减示意图2。

具体实施方式

如图2a、图2b、图2c所示,本实施例中,一种以最小成本对区域目标完全覆盖的分区规划方法,其特征是应用于以充足的覆盖机集合s对一个的待观测区域r完全覆盖且使覆盖成本尽可能小的覆盖模式规划中,所谓覆盖机会是指卫星通过待观测区域上空,可以执行覆盖观测的一次机会。如图2c所示待观测区域r的面积较大,单个覆盖机会仅能覆盖一小部分,因此需要由多个覆盖机会协同观测。

如图3a、图3b、图3c、图3d所示,每个覆盖机会s∈s有自己属性,包括:星下点轨迹os、卫星距地高度hs、最大开机时间ms,且ms对应于一个覆盖模式的最大长度rs、最大可侧摆角度vs、相机视场角ws;卫星环绕地球运行,其正下点在地面上形成的轨迹实际上应是曲线,但在待观测区域内部的较小范围内可近似将其看做直线,为了简化问题,本文将覆盖机会的星下点轨迹os视为直线;

覆盖模式c是由卫星拍摄形成的矩形条带,并由一个覆盖机会选择一定的侧摆角度与开关机时间而确定,一个覆盖机会的覆盖成本与其选择的覆盖模式的长度成正比例关系,且比例系数为

以待观测矩形区域r的任意一个顶点为原点o,以与原点相邻的两条边分别为x轴和y轴,从而建立坐标系o-xy;待观测矩形区域r的四个顶点坐标,分别记为左上角顶点lu(r)、左下角顶点ld(r)、右上角顶点ru(r)、右下角顶点rd(r);如图1所示,分区规划方法是按如下步骤进行:

步骤1:对待观测矩形区域r进行分区;

步骤1.1:设定每个分区的长lp与宽wp;

步骤1.2:根据待观测矩形区域r的四个顶点坐标计算待观测矩形区域r的长lr与宽wr;

步骤1.3:用lr整除lp得到分区的长分段数dl及余数rl,若余数则将dl+1赋值给dl;用wr整除wp得到分区的宽分段数dw及余数rw,若余数则将dw+1赋值给dw;

步骤1.4:用lr除以dl得到最终分区的长lf,用wr除以dw得到最终分区的宽wf;

步骤1.5:根据最终分区的长lf与宽wf对待观测矩形区域r进行平均分区,从而得到各个分区的四个顶点坐标;

步骤1.5.1:令i=1,以待观测矩形区域r的左上角坐标lu(r)作为第i个分区ni的左上角坐标lu(ni);

步骤1.5.2:将第i个分区ni的左上角坐标lu(ni)的横坐标值加上lf得到其右上角坐标ru(ni),将左上角坐标lu(ni)的纵坐标值加上wf得到其左下角坐标ld(ni),再将右上角坐标ru(ni)的纵坐标值加上wf得到其右下坐标rd(ni);

步骤1.5.3:若第i个分区ni的右下角坐标rd(ni)等于待观测矩形区域r的右下角坐标rd(r),则转至步骤1.5.6,否则执行步骤1.5.4;

步骤1.5.4:若第i个分区ni的右上角坐标ru(ni)的横坐标值等于待观测矩形区域r的右上角坐标ru(r)的横坐标值,则令作为第i+1个分区ni+1的左上角坐标lu(ni+1),否则,令第i个分区ni的右上角坐标ru(ni)作为第i+1个分区ni+1的左上角坐标lu(ni+1);

步骤1.5.5:将i+1赋值给i后,转至步骤1.5.2用于构造下一个分区的四顶点坐标;

步骤1.5.6:结束分区,输出各个分区的四顶点坐标。

步骤1.6:得到分区的集合n,且分区的总数为|n|=dl×dw;

步骤2:向不同分区分配观测资源并为其选择覆盖模式以使形成的覆盖方案对应的覆盖成本尽可能地最小;即令不同的覆盖机会负责对不同的分区进行覆盖,而不同的分配方案最终会带来不同的覆盖方案,便对应着不同的覆盖成本,因此此处采用模拟退火的方法对最优的分配方案进行搜索。

步骤2.1:将覆盖机会随机分配至各个分区形成一个初始的当前分配方案其中,ys的取值代表覆盖机会s所分配的分区;

步骤2.2:计算在当前分配方案y下较优覆盖模式集c*(y)对应的覆盖成本p(y);

步骤2.2.1:以各个不同的分区以及分配给不同分区的覆盖机会的集合为输入,构造网格并使用启发式算法,计算不同分区局部的较优覆盖方案与相应的覆盖成本;

步骤2.2.1.1:将第i个分区ni划分为多个大小一致的正方形单元格,得到单元格集合ji;其中,每一个单元格的边长应该足够小。以保证存在单元格能够被覆盖模式完全覆盖。

若不进行分区直接计算,当待观测的区域较大时,会产生极其多的单元格。基于这些单元格会产生大量的覆盖模式,需消耗大量的计算资源。部分大规模算例甚至无法在合理的时间内求得解方案,所以本文提出基于分区的求解策略。

步骤2.2.1.2:根据所划分出的单元格集合ji,为分配给第i个分区ni的覆盖机会集si生成基本覆盖模式,并组成其可选覆盖模式的总集合ci;

如图4a和图4b所示,基本覆盖模式是指:内部存在如下三个单元格:

①被覆盖模式完全覆盖,即四个顶点都在覆盖模式所覆盖面积内;

②其中一个单元格有顶点位于覆盖模式的左边界上,并命名为左单元格,另一个单元格有顶点位于覆盖模式的上边界上,并命名为上单元格,最后一个单元格有顶点位于覆盖模式的下边界上,并命名为下单元格,其中,左单元格、上单元格与下单元格可以重合;

每个覆盖机会可以选择无限多个开关机时间和侧摆角度值,故每个覆盖机会实际上对应无穷多的覆盖模式。但也由此无法枚举出全部的覆盖模式,因此基于所有覆盖模式的全集难以设计问题的求解方法。基本覆盖模式是一类特殊的覆盖模式,其可以代替绝大部分非基本覆盖模式,而且数量有限。大部分非基本覆盖模式都可以稍加调整从而而转变为对应的基本覆盖模式,而使得完全覆盖的单元格不减少。因此,本文将基本覆盖模式集作为可选覆盖模式的总集合,这样就将连续空间内优化问题转变为离散空间内优化问题。

步骤2.2.1.2.1:如果则转至步骤2.2.1.2.4,否则执行步骤2.2.1.2.2;

步骤2.2.1.2.2:选取其中一个覆盖机会s∈si,根据覆盖机会s的类型,使用相应的方法为覆盖机会s构造基于单元格集合ji的基本覆盖模式集cs:

步骤2.2.1.2.2.1:根据覆盖机会s的星下点轨迹os判断覆盖机会s的类型,其类型分为右下倾斜型与左下倾斜型;

步骤2.2.1.2.2.2:令集合

步骤2.2.1.2.2.3:从单元格集合ji中筛选出子集js,且子集js中的每个单元格都可以作为覆盖机会s的最长基本覆盖模式的左单元格;

步骤2.2.1.2.2.3.1:令

步骤2.2.1.2.2.3.2:遍历集合ji,计算每一个单元格u作为覆盖模式的左单元格时,覆盖机会s的相机侧摆角度其中,若覆盖机会为右下角倾斜型,如图4a所示,则为单元格u的左下角顶点ld(u)与覆盖机会s的星下点轨迹os之间的距离,若覆盖机会为左下倾斜型,如图4b所示,则为单元格u的左上角顶点lu(u)与覆盖机会s的星下点轨迹os之间的距离,如果|σs(u)|≤vs,则将单元格u加入左单元格的子集js。

步骤2.2.1.2.2.4:如果则转步骤2.2.1.2.2.13,否则,选择js中的一个单元格p后执行步骤2.2.1.2.2.5;

步骤2.2.1.2.2.5:根据单元格p,从单元格集合ji中筛选出单元格子集且当p作为左单元格时中的每个单元格都能为作为上单元格,与p共同构成覆盖机会s的基本覆盖模式;

步骤2.2.1.2.2.5.1:令

步骤2.2.1.2.2.5.2:利用式(1)计算单元格p作为左单元格时,覆盖模式的条带宽度ηs(p):

如图5a和图5b所示,当单元格u作为覆盖模式的左单元格时,覆盖机会s的相机侧摆角度σs(u),以及覆盖模式的条带宽度ηs(u)的计算公式均可以由初等几何得出。其中ob为中垂线,ob的长度为卫星距地面的高度,即hs。ab的长度为直线lu与os之间的距离,即显然,∠abo为直角,因此,很容易求出:则相机侧摆角度

在图5a中,∠aoc为视场角,即ws,而∠aob>ws,此时条带的宽度为ac的长度,

在图5b中,∠aod为视场角,即ws,oc为∠aod的角平分线,即此时条带的宽度为ad的长度。∠dob=ws-∠aob,可求得:bd=hs·tan∠dob,继而可求得:

步骤2.2.1.2.2.5.3:遍历集合ji,检验其中的一个单元格t是否满足以下四个条件,若全部满足,则将单元格t加入否则,继续检验的下一个单元格:

若覆盖机会为右下角倾斜型,则四个条件为:

①过单元格p的左下角顶点作直线lp||os,过t的右上角顶点作直线l′t||os,则直线lp与l′t之间的距离不能超过条带的宽度ηs(p);

②分别过单元格p和t的左上角顶点作直线l′p⊥os和lt⊥os,则lt在l′p的上方;

③过单元格t的左下角顶点作直线则直线在lp的右侧;

④过单元格p的右下角顶点作直线则直线与lt之间的距离不能超过条带长度ls;其中,“||”表示平行关系,“⊥”表示垂直关系。

若覆盖机会为左下角倾斜型,则四个条件为:

①过单元格p的左上角顶点作直线lp||os,过t的右下角顶点作直线l′t||os,则直线lp与l′t之间的距离不能超过条带的宽度ηs(p);

②分别过单元格p和t的右上角顶点作直线l′p⊥os和lt⊥os,则lt在l′p的上方;

③过单元格t的左上角顶点作直线则直线在lp的右侧;

④过单元格p的左下角顶点作直线则直线与lt之间的距离不能超过条带长度ls;其中,“||”表示平行关系,“⊥”表示垂直关系;

显然,单元格p本身也满足这四个条件。

步骤2.2.1.2.2.6:如果则转步骤2.2.1.2.2.12,否则,选择中的一个单元格q后执行步骤2.2.1.2.2.7;

步骤2.2.1.2.2.7:根据单元格p和q,从单元格集合ji中筛选出单元格子集且当p作为左单元格、q作为上单元格时,单元格子集中的每个单元格都能作为下单元格,且与p和q共同构成覆盖机会s的一个基本覆盖模式;

步骤2.2.1.2.2.7.1:令

步骤2.2.1.2.2.7.2:遍历集合ji,检验其中的一个单元格a是否满足以下四个条件,若全部满足,则将单元格a加入否则,继续检验的下一个单元格:

若覆盖机会为右下角倾斜型,则四个条件为:

①过单元格p的左下角顶点作直线lp||os,过a的右上角顶点作直线l′a||os,则直线lp与l′a之间的距离不能超过条带的宽度ηs(p);

②分别过单元格p和a的左上角顶点作直线l′p⊥os和在l′p的下方;

③过单元格a的左下角顶点作直线则直线在lp的右侧;

④过单元格a的右下角顶点作直线la⊥os,过t的左上角顶点作直线lt⊥os,则直线la与lt之间的距离不能超过条带长度ls;其中,“||”表示平行关系,“⊥”表示垂直关系。

若覆盖机会为左下角倾斜型,则四个条件为:

①过单元格p的左上角顶点作直线lp||os,过a的右下角顶点作直线l′a||os,则直线lp与l′a之间的距离不能超过条带的宽度ηs(p);

②分别过单元格p和a的右上角顶点作直线l′p⊥os和在l′p的下方;

③过单元格a的左上角顶点作直线则直线在lp的右侧;

④过单元格a的左下角顶点作直线la⊥os,过t的右上角顶点作直线lt⊥os,则直线la与lt之间的距离不能超过条带长度ls;其中,“||”表示平行关系,“⊥”表示垂直关系。

显然,单元格p与单元格q本身身也满足这四个条件。

步骤2.2.1.2.2.8:如果则转步骤2.2.1.2.2.11,否则,选择中的一个单元格b后执行步骤2.2.1.2.2.9;

步骤2.2.1.2.2.9:基于单元格p、q和b构造一个属于覆盖机会s的基本覆盖cs(p,q,b);

步骤2.2.1.2.2.9.1:若覆盖机会为右下角倾斜型,则过单元格p的左下角顶点ld(p)作直线lp||os,过单元格q的左上角顶点lu(q)作直线lq⊥os,过单元格b的右下角顶点rd(q)作直线lb⊥os,若覆盖机会为左下角倾斜型,则过单元格p的左上角顶点lu(p)作直线lp||os,过单元格q的右上角顶点ru(q)作直线lq⊥os,过单元格b的左下角顶点ld(q)作直线lb⊥os;

步骤2.2.1.2.2.9.2:计算单元格p作为左单元格时,覆盖模式的条带宽度ηs(p);

步骤2.2.1.2.2.9.3:作直线使其满足:

与lp之间的距离等于ηs(p);

在lp的右侧;

步骤2.2.1.2.2.9.4:以lp,lq,lb四条直线作为矩形的四边,以四条直线的交点作为矩形的四个顶点,构造覆盖模式cs(p,q,b)。

步骤2.2.1.2.2.10:将cs(p,q,b)加入cs,将单元格b从中去除,转至步骤2.2.1.2.2.8;

步骤2.2.1.2.2.11:将单元格q从中去除,转至步骤2.2.1.2.2.6;

步骤2.2.1.2.2.12:将单元格p从js中去除,转至步骤2.2.1.2.2.4;

步骤2.2.1.2.2.13:输出覆盖模式集合cs;

步骤2.2.1.2.3:将覆盖模机会s从si中去除,转步骤2.2.1.2.1;

步骤2.2.1.2.4:令输出覆盖模式集合ci。

步骤2.2.1.3:以第i个分区ni划分出的单元格集合ji以及各个覆盖机会的可选覆盖模式集合ci为输入,以启发式算法选定各个覆盖机会的覆盖模式,从而得到较优覆盖模式集合并同时得出其覆盖成本pi;

该启发式算法使用基于动态贪婪的规则,每次选择覆盖“有效性价比”最大的覆盖模式。一旦某个覆盖机会选择了一个覆盖模式,则该覆盖机会退出后续的选择活动。一旦某个单元格在上一轮选择中被覆盖,则该单元格退出后续的选择活动。如图6a与图6b所示,若一个覆盖模式的上单元格或下单元格为“已覆盖”,则可以削减其长度得到一个完全覆盖有效单元个数相同但覆盖成本更小的覆盖模式,因此,一旦某个单元格在上一轮选择中被覆盖,则以该单元格作为上单元格或下单元格的覆盖模式也退出后续的选择活动。该方法简单、快速、有效,非常适合在当前环境下快速求得较优可行覆盖方案。

步骤2.2.1.3.1:令ji中所有的单元格的状态为“未覆盖”,令

步骤2.2.1.3.2:令g=1;

步骤2.2.1.3.3:若g>|ci|,则转步骤2.2.1.3.5,否则继续,其中,|ci|表示可选覆盖模式集合ci中的元素个数;

步骤2.2.1.3.4:选择ci中的第g个覆盖模式,并从单元格集合ji中选出能被第g个覆盖模式完全覆盖且状态为“未覆盖”的单元格,记为有效单元格集合v(g),其数量记为|v(g)|,计算第g个覆盖模式的覆盖成本其中lg为第g个覆盖模式的长度,为第g个覆盖模式对应的覆盖机会s'的成本系数,再计算第g个覆盖模式有效单元格数与覆盖成本的比值即有效性价比,将g+1赋值给g后,转至步骤2.2.1.3.3;

步骤2.2.1.3.5:若或所有单元格的状态都为“已覆盖”则转至步骤2.2.1.3.8,否则执行步骤2.2.1.3.6;

在覆盖机会充足的前提下,随机分配至每一个分区的覆盖机会一般有能力对该分区完全覆盖。如果出现部分分区无法被完全覆盖的情况,则会在模拟退火阶段的由插入算子和交换算子构造的邻居分配方案中得到改善。

步骤2.2.1.3.6:选择ci中有效性价比最大的覆盖模式并作为相应覆盖机会s*所选择的覆盖模式,再将g*加入中,将覆盖模式g*的有效单元格集合v(g*)中所有单元格的状态均改为“已覆盖”;

步骤2.2.1.3.7:将覆盖机会s*所对应的覆盖模式集合从可选覆盖模式集合ci中去除,从ci中筛选出上单元格或下单元格状态为“已覆盖”的覆盖模式子集c′i并从ci中去除,转至步骤2.2.1.3.2;

步骤2.2.1.3.8:输出各个覆盖机会选择的覆盖模式集合即最终的覆盖方案,计算中所有覆盖模式的覆盖成本的和,即第i个分区ni的覆盖成本pi。

步骤2.2.2:将所有分区的覆盖方案合并得到对待观测矩形区域r总体的覆盖方案c*,将所有分区的覆盖方案对应的覆盖成本{pi|i=1,2,…,|n|}相加得到待观测矩形区域r总体的覆盖成本p。

以下用模拟退火的方法对分配方案的解空间进行搜索,以期能获得一个较优的分配方案,使产生覆盖方案对应的覆盖面积最大化。

步骤2.3:设置最大迭代次数与初始退火温度t1,令当前外循环的迭代次数k=1;

步骤2.4:如果则转步骤2.9,否则执行步骤2.5;

步骤2.5:随机选择一个覆盖机会并基于覆盖机会构造当前分配方案y的若干邻居分配方案;

步骤2.5.1:令分区集合表示分区集合n中除去覆盖机会所分配的分区后形成的集合,令当前内循环的迭代次数m=0;

步骤2.5.2:如果为空,则转步骤2.5.4,否则将m+1赋值给m后,执行步骤2.5.3;

步骤2.5.3:在当前分配方案y中将选中的覆盖机会随机分配至分区集合中的一个分区,即令从而得到一个邻居分配方案将分区从分区集合中去除,转至步骤2.5.2;

步骤2.5.4:输出所有得到的邻居分配方案

此处将分配至每一个未分配的分区从而完整搜索全部的邻近解,如果需要进一步减少运算量可以减少构造的邻居方案数量。

步骤2.6:分别计算每个邻居分配方案下较优覆盖模式集对应的覆盖成本,选择其中覆盖成本最小的一个作为最优邻居分配方案

步骤2.7:比较最优邻居分配方案与当前分配方案y的覆盖成本,如果则将最优邻居分配方案赋值给当前分配方案y后直接执行步骤2.8,否则先执行步骤2.7.1-步骤2.7.2后再执行步骤2.8;

步骤2.7.1:计算第k次迭代的劣解接受率

步骤2.7.2:第k次生成一个取值为0到1的随机数rk,若rk≤pk,则将最优邻居分配方案赋值给当前分配方案y;

步骤2.8:将k+1赋值给k,更新退火温度tk=tk-1×λ,其中,λ为降温系数,并取小于1大于0的固定值,转至步骤2.4;

退火温度的大小代表着对解空间搜索的随机性大小,如果对最终解质量的要求较高便可以将λ设置得较大并增加迭代次数,若需要快速收敛则可以将λ设置得较小。

步骤2.9:输出当前分配方案y,以及在当前分配方案各覆盖机会选择的较优覆盖模式集c*(y)与其对应的覆盖成本p(y)。

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