本發(fā)明涉及衛(wèi)星領(lǐng)域,特別是涉及一種衛(wèi)星星上自主規(guī)劃任務(wù)的方法及系統(tǒng)。
背景技術(shù):
衛(wèi)星在應(yīng)對自然災(zāi)害、突發(fā)環(huán)境事件,打擊恐怖活動、有組織犯罪、周邊熱點地區(qū)突發(fā)事件等應(yīng)急行動都具有重大意義,但是這些應(yīng)急行動在時間和空間上具有很強(qiáng)的突發(fā)性和不確定性,相應(yīng)的需要衛(wèi)星做出近實時快速響應(yīng)。當(dāng)前觀測任務(wù)規(guī)劃通常在地面進(jìn)行,規(guī)劃周期一天到數(shù)天不等,規(guī)劃方案制定完成后,生成相應(yīng)的控制指令,在星地時間窗口內(nèi)上注衛(wèi)星,衛(wèi)星嚴(yán)格按照方案實施對地觀測??紤]到測控機(jī)會的限制,這種方式時效性不佳,并欠缺對氣象等動態(tài)環(huán)境影響的應(yīng)變能力,因此應(yīng)對突發(fā)事件不能遵循地面常規(guī)的任務(wù)分時段、分批次規(guī)劃調(diào)度模式。比如,在2008年汶川地震救援和雪災(zāi)救援等非作戰(zhàn)軍事行動中,我國的對地觀測衛(wèi)星系統(tǒng)雖然發(fā)揮了重要作用,但缺乏自主性、靈活性,導(dǎo)致快速響應(yīng)能力的欠缺,不能及時捕捉有利氣象條件和實現(xiàn)快速重訪,致使有關(guān)災(zāi)情的信息獲取手段更多的受制于國外衛(wèi)星系統(tǒng)。
技術(shù)實現(xiàn)要素:
本發(fā)明的目的是提供一種衛(wèi)星星上自主規(guī)劃任務(wù)的方法及系統(tǒng),能夠自主的規(guī)劃任務(wù),在不影響既定任務(wù)的同時,提高應(yīng)急任務(wù)的觀測成功率,提高對應(yīng)急突發(fā)事件的響應(yīng)速率。
為實現(xiàn)上述目的,本發(fā)明提供了如下方案:
一種衛(wèi)星星上自主規(guī)劃任務(wù)的方法,包括:
建立衛(wèi)星模型;
根據(jù)所述衛(wèi)星模型確定既定任務(wù)規(guī)劃方案中已經(jīng)完成的任務(wù)信息和未完成的任務(wù)信息;所述既定任務(wù)為接收到的大于預(yù)設(shè)周期的周期性任務(wù)規(guī)劃方案;
根據(jù)所述已經(jīng)完成的任務(wù)信息和所述未完成的任務(wù)信息更新任務(wù)狀態(tài),得到第一任務(wù)狀態(tài);
判斷應(yīng)急任務(wù)是否應(yīng)插入到所述第一任務(wù)狀態(tài),得到第一判斷結(jié)果;
若所述第一判斷結(jié)果表示為應(yīng)急任務(wù)插入到所述第一任務(wù)狀態(tài),則根據(jù)消耗的計算資源確定應(yīng)急任務(wù)插入所述第一任務(wù)狀態(tài)的插入位置,形成新的衛(wèi)星重規(guī)劃模型;
根據(jù)所述衛(wèi)星重規(guī)劃模型內(nèi)的信息控制各個星務(wù)分系統(tǒng)完成重規(guī)劃所安排的任務(wù)。
可選的,所述建立衛(wèi)星模型之前,還包括:
獲取場景配置信息;
結(jié)合所述場景配置信息對應(yīng)急任務(wù)需求信息進(jìn)行預(yù)處理,生成既定任務(wù)中成像時間窗外的信息;所述成像時間窗表示為成像開始時間到成像結(jié)束時間;
根據(jù)所述成像時間窗外的信息和所述既定任務(wù)建立衛(wèi)星模型。
可選的,所述第一判斷結(jié)果表示為應(yīng)急任務(wù)插入到所述第一任務(wù)狀態(tài),具體包括:
計算應(yīng)急任務(wù)的最佳插入位置i;
判斷第i-1個任務(wù)和第i個任務(wù)之間的任務(wù)準(zhǔn)備時間是否滿足加入應(yīng)急任務(wù)后的姿態(tài)機(jī)動約束FOBegini-FOEndi-1≥PSTime(i-1,e)+CTimee+PSTime(e,i),得到第二判斷結(jié)果;
其中,所述FOBegini為任務(wù)i的成像時間窗開始時間;所述FOEndi-1為任務(wù)i-1的成像時間窗結(jié)束時間;所述PSTime(i-1,e)為第i-1個任務(wù)和第e個任務(wù)之間的最小姿態(tài)轉(zhuǎn)換時間;所述CTinmei為第i個任務(wù)成像持續(xù)時間;所述PSTime(e,i)為第e個任務(wù)和第i個任務(wù)之間的最小姿態(tài)轉(zhuǎn)換時間;
若所述第二判斷結(jié)果為第i-1個任務(wù)和第i個任務(wù)之間的任務(wù)準(zhǔn)備時間滿足加入應(yīng)急任務(wù)后的姿態(tài)機(jī)動約束,則直接插入應(yīng)急任務(wù);
若所述第二判斷結(jié)果為第i-1個任務(wù)和第i個任務(wù)之間的任務(wù)準(zhǔn)備時間不滿足加入應(yīng)急任務(wù)后的姿態(tài)機(jī)動約束,則刪除任務(wù)i-1和任務(wù)i中收益低的任務(wù),插入所述應(yīng)急任務(wù)。
可選的,所述第一判斷結(jié)果表示為應(yīng)急任務(wù)插入到所述第一任務(wù)狀態(tài),具體包括:
將所有任務(wù)按照時間窗的結(jié)束時間從小到大排序;
按照所述排序為每個既定任務(wù)安排最早的成像機(jī)會進(jìn)行成像;
判斷成像的任務(wù)是否滿足預(yù)設(shè)約束條件,得到第三判斷結(jié)果;
若所述第三判斷結(jié)果為成像的任務(wù)滿足預(yù)設(shè)約束條件,則將所述應(yīng)急任務(wù)插入到所述第一任務(wù)狀態(tài)。
可選的,所述根據(jù)消耗的計算資源確定應(yīng)急任務(wù)插入所述第一任務(wù)狀態(tài)的插入位置,形成新的衛(wèi)星重規(guī)劃模型之前,還包括:
判斷所述應(yīng)急任務(wù)是否被成功規(guī)劃,得到第四判斷結(jié)果;
當(dāng)所述第四判斷結(jié)果表示為所述應(yīng)急任務(wù)被成功規(guī)劃,則根據(jù)系統(tǒng)運算過程消耗的計算資源確定應(yīng)急任務(wù)插入所述第一任務(wù)狀態(tài)的插入位置。
可選的,所述判斷所述應(yīng)急任務(wù)是否被成功規(guī)劃,得到第四判斷結(jié)果,具體包括:
判斷衛(wèi)星接收到應(yīng)急任務(wù)的時間到所述應(yīng)急任務(wù)完成衛(wèi)星成像時間的時間段是否大于預(yù)設(shè)時間段,得到第五判斷結(jié)果;
若所述第五判斷結(jié)果為衛(wèi)星接收到應(yīng)急任務(wù)的時間到衛(wèi)星成像時間的時間段大于預(yù)設(shè)時間段,則確定所述應(yīng)急任務(wù)被成功規(guī)劃。
可選的,所述判斷所述應(yīng)急任務(wù)是否被成功規(guī)劃,得到第四判斷結(jié)果,具體包括:
判斷應(yīng)急任務(wù)的收益是否大于預(yù)設(shè)收益,得到第六判斷結(jié)果;
若所述第六判斷結(jié)果表示為所述應(yīng)急任務(wù)的收益大于預(yù)設(shè)收益,則確定所述應(yīng)急任務(wù)被成功規(guī)劃。
可選的,所述根據(jù)消耗的計算資源確定應(yīng)急任務(wù)插入所述第一任務(wù)狀態(tài)的插入位置,形成新的衛(wèi)星重規(guī)劃模型,具體包括:
根據(jù)公式D(i)=Dis(i-1,e)+Dis(e,i)-Dis(i-1,i)確定所述應(yīng)急任務(wù)插入的最佳成像位置;
其中,所述D(i)表示為應(yīng)急任務(wù)插入的最佳位置;所述Dis(i-1,e)表示為任務(wù)i-1到任務(wù)e的距離增量;所述Dis(e,i)表示為任務(wù)e到任務(wù)i的距離增量;所述Dis(i-1,i)表示為任務(wù)i-1到任務(wù)i的距離增量;
根據(jù)所述消耗的計算資源和所述最佳成像位置確定應(yīng)急任務(wù)插入所述第一任務(wù)狀態(tài)的插入位置。
一種衛(wèi)星星上自主規(guī)劃任務(wù)的系統(tǒng),包括:
衛(wèi)星模型建立模塊,用于建立衛(wèi)星模型;
任務(wù)信息確定模塊,用于根據(jù)所述衛(wèi)星模型確定既定任務(wù)規(guī)劃方案中已經(jīng)完成的任務(wù)信息和未完成的任務(wù)信息;所述既定任務(wù)為接收到的較長周期的周期性任務(wù)規(guī)劃方案;
任務(wù)狀態(tài)更新模塊,用于根據(jù)所述已經(jīng)完成的任務(wù)信息和所述未完成的任務(wù)信息更新任務(wù)狀態(tài),得到第一任務(wù)狀態(tài);
第一判斷模塊,用于判斷應(yīng)急任務(wù)是否插入到所述第一任務(wù)狀態(tài),得到第一判斷結(jié)果;
若所述第一判斷結(jié)果表示為應(yīng)急任務(wù)插入到所述第一任務(wù)狀態(tài),則根據(jù)消耗的計算資源確定應(yīng)急任務(wù)插入所述第一任務(wù)狀態(tài)的插入位置,形成新的衛(wèi)星重規(guī)劃模型;
任務(wù)重規(guī)劃模塊,用于根據(jù)所述衛(wèi)星重規(guī)劃模型內(nèi)的信息控制各個星務(wù)分系統(tǒng)完成重規(guī)劃所安排的任務(wù)。
可選的,還包括:
場景配置信息獲取模塊,用于在建立衛(wèi)星模型之前,獲取場景配置信息;
預(yù)處理模塊,用于結(jié)合所述場景配置信息對應(yīng)急任務(wù)需求信息進(jìn)行預(yù)處理,生成既定任務(wù)中成像時間窗外的信息;
衛(wèi)星模型建立模塊,具體包括:
衛(wèi)星模型建立單元,用于根據(jù)所述成像時間窗外的信息和所述既定任務(wù)建立衛(wèi)星模型。
根據(jù)本發(fā)明提供的具體實施例,本發(fā)明公開了以下技術(shù)效果:本發(fā)明通過建立衛(wèi)星模型,對衛(wèi)星模型中既定任務(wù)已經(jīng)完成的任務(wù)信息和所述未完成的任務(wù)信息更新任務(wù)狀態(tài),將應(yīng)急任務(wù)插入到更新后的任務(wù)狀態(tài)中,形成新的衛(wèi)星重規(guī)劃模型,使得衛(wèi)星自主的規(guī)劃任務(wù),實現(xiàn)對應(yīng)急突發(fā)事件的快速響應(yīng)。
附圖說明
為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明實施例自主規(guī)劃任務(wù)方法流程圖;
圖2為本發(fā)明實施例自主規(guī)劃任務(wù)系統(tǒng)流程圖。
具體實施方式
下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護(hù)的范圍。
本發(fā)明的目的是提供一種衛(wèi)星星上自主規(guī)劃任務(wù)的方法及系統(tǒng),能夠自主的規(guī)劃任務(wù),在不影響既定任務(wù)的同時,提高應(yīng)急任務(wù)的觀測成功率,提高對應(yīng)急突發(fā)事件的響應(yīng)速率。
為使本發(fā)明的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面結(jié)合附圖和具體實施方式對本發(fā)明作進(jìn)一步詳細(xì)的說明。
圖1為本發(fā)明實施例自主規(guī)劃任務(wù)方法流程圖,如圖1所示,一種衛(wèi)星星上自主規(guī)劃任務(wù)的方法,包括:
步驟S101:建立衛(wèi)星模型;
步驟S102:根據(jù)所述衛(wèi)星模型確定既定任務(wù)規(guī)劃方案中已經(jīng)完成的任務(wù)信息和未完成的任務(wù)信息;所述既定任務(wù)為接收到的大于預(yù)設(shè)周期的周期性任務(wù)規(guī)劃方案;
步驟S103:根據(jù)所述已經(jīng)完成的任務(wù)信息和所述未完成的任務(wù)信息更新任務(wù)狀態(tài),得到第一任務(wù)狀態(tài);
步驟S104:判斷應(yīng)急任務(wù)是否應(yīng)插入到所述第一任務(wù)狀態(tài),得到第一判斷結(jié)果;若所述第一判斷結(jié)果表示為應(yīng)急任務(wù)插入到所述第一任務(wù)狀態(tài),則執(zhí)行步驟S105,否則執(zhí)行步驟S107;
步驟S105:根據(jù)消耗的計算資源確定應(yīng)急任務(wù)插入所述第一任務(wù)狀態(tài)的插入位置,形成新的衛(wèi)星重規(guī)劃模型;
步驟S106:根據(jù)所述衛(wèi)星重規(guī)劃模型內(nèi)的信息控制各個星務(wù)分系統(tǒng)完成重規(guī)劃所安排的任務(wù);
步驟S107:舍棄所述應(yīng)急任務(wù),不插入到所述第一任務(wù)狀態(tài)中;
可選的,所述建立衛(wèi)星模型之前,還包括:
獲取場景配置信息;
結(jié)合所述場景配置信息對應(yīng)急任務(wù)需求信息進(jìn)行預(yù)處理,生成既定任務(wù)中成像時間窗外的信息;所述成像時間窗表示為成像開始時間到成像結(jié)束時間;
根據(jù)所述成像時間窗外的信息和所述既定任務(wù)建立衛(wèi)星模型。
可選的,所述第一判斷結(jié)果表示為應(yīng)急任務(wù)插入到所述第一任務(wù)狀態(tài),具體包括:
計算應(yīng)急任務(wù)的最佳插入位置i;
判斷第i-1個任務(wù)和第i個任務(wù)之間的任務(wù)準(zhǔn)備時間是否滿足加入應(yīng)急任務(wù)后的姿態(tài)機(jī)動約束FOBegini-FOEndi-1≥PSTime(i-1,e)+CTimee+PSTime(e,i),得到第二判斷結(jié)果;
其中,所述FOBegini為任務(wù)i的成像時間窗開始時間;所述FOEndi-1為任務(wù)i-1的成像時間窗結(jié)束時間;所述PSTime(i-1,e)為第i-1個任務(wù)和第e個任務(wù)之間的最小姿態(tài)轉(zhuǎn)換時間;所述CTinmei為第i個任務(wù)成像持續(xù)時間;所述PSTime(e,i)為第e個任務(wù)和第i個任務(wù)之間的最小姿態(tài)轉(zhuǎn)換時間;
若所述第二判斷結(jié)果為第i-1個任務(wù)和第i個任務(wù)之間的任務(wù)準(zhǔn)備時間滿足加入應(yīng)急任務(wù)后的姿態(tài)機(jī)動約束,則直接插入應(yīng)急任務(wù);
若所述第二判斷結(jié)果為第i-1個任務(wù)和第i個任務(wù)之間的任務(wù)準(zhǔn)備時間不滿足加入應(yīng)急任務(wù)后的姿態(tài)機(jī)動約束,則刪除任務(wù)i-1和任務(wù)i中收益低的任務(wù),插入所述應(yīng)急任務(wù)。
可選的,所述第一判斷結(jié)果表示為應(yīng)急任務(wù)插入到所述第一任務(wù)狀態(tài),具體包括:
將所有任務(wù)按照時間窗的結(jié)束時間從小到大排序;
按照所述排序為每個既定任務(wù)安排最早的成像機(jī)會進(jìn)行成像;
判斷成像的任務(wù)是否滿足預(yù)設(shè)約束條件,得到第三判斷結(jié)果;
若所述第三判斷結(jié)果為成像的任務(wù)滿足預(yù)設(shè)約束條件,則將所述應(yīng)急任務(wù)插入到所述第一任務(wù)狀態(tài)。
可選的,所述根據(jù)消耗的計算資源確定應(yīng)急任務(wù)插入所述第一任務(wù)狀態(tài)的插入位置,形成新的衛(wèi)星重規(guī)劃模型之前,還包括:
判斷所述應(yīng)急任務(wù)是否被成功規(guī)劃,得到第四判斷結(jié)果;
當(dāng)所述第四判斷結(jié)果表示為所述應(yīng)急任務(wù)被成功規(guī)劃,則根據(jù)系統(tǒng)運算過程消耗的計算資源確定應(yīng)急任務(wù)插入所述第一任務(wù)狀態(tài)的插入位置。
可選的,所述判斷所述應(yīng)急任務(wù)是否被成功規(guī)劃,得到第四判斷結(jié)果,具體包括:
判斷衛(wèi)星接收到應(yīng)急任務(wù)的時間到所述應(yīng)急任務(wù)完成衛(wèi)星成像時間的時間段是否大于預(yù)設(shè)時間段,得到第五判斷結(jié)果;
若所述第五判斷結(jié)果為衛(wèi)星接收到應(yīng)急任務(wù)的時間到衛(wèi)星成像時間的時間段大于預(yù)設(shè)時間段,則確定所述應(yīng)急任務(wù)被成功規(guī)劃。
可選的,所述判斷所述應(yīng)急任務(wù)是否被成功規(guī)劃,得到第四判斷結(jié)果,具體包括:
判斷應(yīng)急任務(wù)的收益是否大于預(yù)設(shè)收益,得到第六判斷結(jié)果;
若所述第六判斷結(jié)果表示為所述應(yīng)急任務(wù)的收益大于預(yù)設(shè)收益,則確定所述應(yīng)急任務(wù)被成功規(guī)劃。
可選的,所述根據(jù)消耗的計算資源確定應(yīng)急任務(wù)插入所述第一任務(wù)狀態(tài)的插入位置,形成新的衛(wèi)星重規(guī)劃模型,具體包括:
根據(jù)公式D(i)=Dis(i-1,e)+Dis(e,i)-Dis(i-1,i)確定所述應(yīng)急任務(wù)插入的最佳成像位置;
其中,所述D(i)表示為應(yīng)急任務(wù)插入的最佳位置;所述Dis(i-1,e)表示為任務(wù)i-1到任務(wù)e的距離增量;所述Dis(e,i)表示為任務(wù)e到任務(wù)i的距離增量;所述Dis(i-1,i)表示為任務(wù)i-1到任務(wù)i的距離增量;
根據(jù)所述消耗的計算資源和所述最佳成像位置確定應(yīng)急任務(wù)插入所述第一任務(wù)狀態(tài)的插入位置。
圖2為本發(fā)明實施例自主規(guī)劃任務(wù)系統(tǒng)流程圖,如圖2所示,一種衛(wèi)星星上自主規(guī)劃任務(wù)的系統(tǒng),包括:
衛(wèi)星模型建立模塊201,用于建立衛(wèi)星模型;
任務(wù)信息確定模塊202,用于根據(jù)所述衛(wèi)星模型確定既定任務(wù)規(guī)劃方案中已經(jīng)完成的任務(wù)信息和未完成的任務(wù)信息;所述既定任務(wù)為接收到的較長周期的周期性任務(wù)規(guī)劃方案;
任務(wù)狀態(tài)更新模塊203,用于根據(jù)所述已經(jīng)完成的任務(wù)信息和所述未完成的任務(wù)信息更新任務(wù)狀態(tài),得到第一任務(wù)狀態(tài);
第一判斷模塊204,用于判斷應(yīng)急任務(wù)是否插入到所述第一任務(wù)狀態(tài),得到第一判斷結(jié)果;
若所述第一判斷結(jié)果表示為應(yīng)急任務(wù)插入到所述第一任務(wù)狀態(tài),則根據(jù)消耗的計算資源確定應(yīng)急任務(wù)插入所述第一任務(wù)狀態(tài)的插入位置,形成新的衛(wèi)星重規(guī)劃模型;
任務(wù)重規(guī)劃模塊205,用于根據(jù)所述衛(wèi)星重規(guī)劃模型內(nèi)的信息控制各個星務(wù)分系統(tǒng)完成重規(guī)劃所安排的任務(wù)。
可選的,還包括:
場景配置信息獲取模塊,用于在建立衛(wèi)星模型之前,獲取場景配置信息;
預(yù)處理模塊,用于結(jié)合所述場景配置信息對應(yīng)急任務(wù)需求信息進(jìn)行預(yù)處理,生成既定任務(wù)中成像時間窗外的信息;
衛(wèi)星模型建立模塊201,具體包括:
衛(wèi)星模型建立單元,用于根據(jù)所述成像時間窗外的信息和所述既定任務(wù)建立衛(wèi)星模型。
為了更方便了解本發(fā)明,下面做進(jìn)一步的論述:
表1為各變量含義定義表,如表1所示,
表1
根據(jù)以上分析及定義,可將問題的概念模型抽象為如下數(shù)學(xué)模型:
模型輸入
模型輸入主要包括任務(wù)信息和場景配置信息兩大部分。
任務(wù)信息
任務(wù)信息又包括既定任務(wù)信息和應(yīng)急任務(wù)需求信息,衛(wèi)星任務(wù)重規(guī)劃分系統(tǒng)接收到這兩類信息時,其數(shù)據(jù)結(jié)構(gòu)有所區(qū)別,但經(jīng)過預(yù)處理以后的任務(wù)信息所包含的屬性是相同的。
既定任務(wù)序列為一個可行的方案,輸入信息包括該序列所包含的任務(wù)數(shù)量N、每一個任務(wù)的任務(wù)編號i、成像時間窗[FOBegin,F(xiàn)OEnd]、可見時間窗[FWBegin,F(xiàn)WEnd]、成像持續(xù)時間CTime、任務(wù)收益Benefit和對應(yīng)目標(biāo)中心點的地理位置信息[Lon,Lat,Alt]等。
在用戶或者其他終端提出應(yīng)急任務(wù)需求時,需要至少包含目標(biāo)中心點地理位置信息[Lon,Lat,Alt]、期望成像時段[NEBegin,NEEnd]、任務(wù)收益Benefit等信息,結(jié)合衛(wèi)星系統(tǒng)的場景配置信息,任務(wù)預(yù)處理模塊就可以完成條帶劃分、可見時間窗計算等工作,生成已安排任務(wù)的信息中除成像時間窗以外的所有參數(shù),記為FWBeginn+1中,與已安排任務(wù)一起作為重規(guī)劃算法的輸入。
上述信息中,應(yīng)急任務(wù)的可見時間窗應(yīng)該取任務(wù)預(yù)處理的計算結(jié)果與期望成像時段的交集,即
FWBeginn+1=max{NEBegi,n NWBegin}
FWEndn+1=min{NEEnd,NWEnd}
場景配置信息
傳統(tǒng)的衛(wèi)星任務(wù)規(guī)劃過程中,需要考慮的場景配置信息主要包括衛(wèi)星軌道、衛(wèi)星能力參數(shù)、地面站等設(shè)施相關(guān)參數(shù)、成像環(huán)境等信息。
衛(wèi)星軌道信息和成像環(huán)境信息主要是在任務(wù)預(yù)處理階段用于條帶劃分、可見時間窗的裁剪等工作,當(dāng)?shù)玫饺蝿?wù)的條帶和可見時間窗等信息后,不再需要成像環(huán)境信息作為支撐。
在重規(guī)劃的過程中,兩個相鄰任務(wù)之間的姿態(tài)轉(zhuǎn)換時間PSTime(i,j)本需要衛(wèi)星軌道信息和轉(zhuǎn)動參數(shù)等信息綜合計算才能得到,但是由于每一顆衛(wèi)星的轉(zhuǎn)動方式和轉(zhuǎn)動參數(shù)相差較大,且精確計算姿態(tài)轉(zhuǎn)換時間的必要性不大,所以往往在任務(wù)規(guī)劃算法中采用簡化的姿態(tài)轉(zhuǎn)換時間模型進(jìn)行計算,其精度能夠保證衛(wèi)星有足夠的時間完成姿態(tài)轉(zhuǎn)換,同時不會造成大量時間的浪費即可。
每一個規(guī)劃周期內(nèi)所考慮的任務(wù)只包含成像任務(wù),不包含數(shù)傳任務(wù),所以每一次重規(guī)劃所考慮的時間區(qū)間內(nèi)不包含數(shù)傳任務(wù),即只需要判定成像任務(wù)所消耗的固存和電量是否滿足要求,無需安排任務(wù)回傳,所以也不需要地面站等其他設(shè)施的信息。
綜合以上,涉及到重規(guī)劃問題的場景配置信息主要包括衛(wèi)星能力參數(shù)信息,如衛(wèi)星可用的固存總量、衛(wèi)星可用的電量總量、固存讀寫速率、電量消耗速率,以及任務(wù)預(yù)處理所需時間、指令編排所需時間、重規(guī)劃算法所需的計算時間等和衛(wèi)星計算有關(guān)的時間參數(shù)。
外部輔助函數(shù)設(shè)計
兩個相鄰任務(wù)之間的姿態(tài)轉(zhuǎn)換時間PSTime(i,j)、任務(wù)成像所需要消耗的固存Storagei和任務(wù)成像及其準(zhǔn)備動作的耗電量Electrici是重規(guī)劃過程中必須要考慮的函數(shù),但是由于目前還沒有成熟的計算模型,或由于計算模型過于復(fù)雜,不符合星上計算的時效性要求,為了高效地完成任務(wù)重規(guī)劃工作,需要重新設(shè)計這三個函數(shù)。
模型輸出
任務(wù)規(guī)劃結(jié)果就是在重規(guī)劃完成后的結(jié)果。規(guī)劃結(jié)果可能有兩種情況:第一種情況是應(yīng)急任務(wù)無法被成功規(guī)劃,則輸出任務(wù)無法被規(guī)劃;第二種情況是應(yīng)急任務(wù)能夠被成功規(guī)劃,則輸出重規(guī)劃算法所生成的規(guī)劃方案。
若應(yīng)急任務(wù)無法被規(guī)劃主要有兩種可能性:第一種可能性是衛(wèi)星從接收到應(yīng)急任務(wù)到其成像時間窗的響應(yīng)時間太短,生成指令后就已經(jīng)沒有足夠的可見時間窗進(jìn)行成像;第二種可能性是應(yīng)急任務(wù)的收益較小,不值得啟動重規(guī)劃算法。
若應(yīng)急任務(wù)能夠被重新規(guī)劃,模型輸出即為重規(guī)劃后的任務(wù)規(guī)劃方案。輸出的方案作為指令生成模塊的輸入,根據(jù)指令模板的約定,該方案可保證每條指令的唯一性和準(zhǔn)確性。在保證指令塊可以被正確生成的基礎(chǔ)上,應(yīng)盡可能減少數(shù)據(jù)量傳遞,提高信息傳輸效率。
目標(biāo)函數(shù)
求解衛(wèi)星任務(wù)重規(guī)劃問題,目的就是得到一個高質(zhì)量的解。但由于算法的時間和空間效率在該問題中對求解的結(jié)果影響很大,忽略算法的時間和空間復(fù)雜度而追求絕對的高質(zhì)量解是沒有意義的。所以求解過程中,計算量盡可能小、中間變量盡可能少也可作為目標(biāo)函數(shù)之一。這是一個多目標(biāo)優(yōu)化問題。記
和分別為采用算法k(k∈R)進(jìn)行計算且當(dāng)輸入的任務(wù)規(guī)模為x時,算法在計算過程中運算時間的倒數(shù)、計算過程中占用內(nèi)存大小的倒數(shù)和運用該算法所得到的解的質(zhì)量。
當(dāng)任務(wù)規(guī)模x=x0和選用的算法k確定以后,和唯一確定,所以對于任意一個算法k,在目標(biāo)函數(shù)空間都有一個點(和)與之對應(yīng),在該空間中存在的若干個點中尋找到一個最優(yōu)點,其對應(yīng)的求解方法就是該問題的最佳求解算法。假設(shè)有5種可行算法,首先比較算法1和算法2,算法1在任務(wù)規(guī)模為x的情況下解的質(zhì)量比算法2好,且消耗的時間和空間資源都比算法2低,所以認(rèn)為算法1在這種輸入條件下較算法2優(yōu)。然而存在最大使用內(nèi)存和計算時間的限制,所以算法1和算法2均不可行??紤]算法3和算法4為滿足內(nèi)存和計算時間最優(yōu)的前提下解的質(zhì)量最優(yōu),而算法3需要的資源更少,所以認(rèn)為算法3為最佳求解算法。
根據(jù)上述分析,當(dāng)任務(wù)規(guī)模x=n時,關(guān)于算法i的多目標(biāo)問題目標(biāo)函數(shù)記為:
其中
優(yōu)化調(diào)度領(lǐng)域的專家學(xué)者致力于研究能夠使所有的同時取得最大值的方法,然而在實際算法設(shè)計過程中,計算量與中間變量、計算量與解的質(zhì)量往往都是成反比的,解的質(zhì)量與算法的復(fù)雜度往往成正比。
將算法的求解質(zhì)量看作是主要目標(biāo),算法的時間消耗、內(nèi)存消耗的倒數(shù)和看作是次要目標(biāo),求解過程中在保證和滿足要求的前提下,盡可能優(yōu)化的值。當(dāng)且僅當(dāng)不同算法的同時取得最優(yōu)時,才考慮選擇和更優(yōu)的求解方法。
約束條件
敏捷型成像衛(wèi)星重規(guī)劃模型中,主要考慮任務(wù)與任務(wù)之間的相互約束、任務(wù)與場景之間的約束和任務(wù)與衛(wèi)星資源之間的約束三大類。統(tǒng)一表述為如下公式:
(FOBegini-FOBeginj)×(FOBegini-FOEndj)>0(i,j∈S) (1)
(FOEndi-FOBeginj)×(FOEndi-FOEndj)>0(i,j∈S) (2)
FOBegini-FOEndj≥PSTime(i,j)(i,j∈S) (3)
FOBegini≤FWBegini(i∈S) (4)
FOEndi≥FWEndi(i∈S) (5)
ArriveTime+PlanningTime≤FOBegini(i∈S) (6)
PlanningTime=PreTime+CalTime(k,n)+CodeTime(k∈R) (7)
MemoryUsage(k,n)≤MaxMemory(k∈R) (8)
xi≤1(i∈A) (11)
上述各式中,公式(1)保證任務(wù)i的成像開始時間不屬于任何其他成像區(qū)間,公式(2)能保證任務(wù)i的成像結(jié)束時間不屬于任何其他成像區(qū)間,又所有任務(wù)的成像時間窗都是連續(xù)區(qū)間,聯(lián)立公式(1)和公式(2)能夠保證任意兩個成像任務(wù)的成像時間窗不出現(xiàn)重疊;公式(3)能夠保證任意兩個成像任務(wù)之間的時間間隔要滿足姿態(tài)轉(zhuǎn)換時間的要求;以上是任務(wù)與任務(wù)之間的約束。
公式(4)和公式(5)能夠保證任何任務(wù)必須在其可見時間窗范圍內(nèi)成像。由于任務(wù)的可見時間窗是根據(jù)對應(yīng)目標(biāo)的坐標(biāo)點和軌道參數(shù)、姿態(tài)機(jī)動能力等信息計算得到,所以保證任務(wù)在其可見時間窗內(nèi)成像,即可滿足該成像任務(wù)時的側(cè)擺角和俯仰角約束、太陽高度角約束、光照條件和用戶的特殊成像時段約束等大部分任務(wù)與場景之間的約束。
公式(6)則表示所有重規(guī)劃方案中安排的任務(wù)的開始成像時間都應(yīng)在任務(wù)重規(guī)劃分系統(tǒng)的所有計算結(jié)束以后,即所有應(yīng)急任務(wù)傳到衛(wèi)星后,還需要一定的時間進(jìn)行計算,所有被重新安排的任務(wù)應(yīng)該大于這個計算結(jié)束的時間,公式(7)給出了重規(guī)劃分系統(tǒng)計算所需時間;公式(8)則保證重規(guī)劃算法所占用星上的動態(tài)計算內(nèi)存不超過可用動態(tài)內(nèi)存的最大值;公式(9)和公式(10)分別表示重規(guī)劃任務(wù)集合所消耗的總固存不能超過可用的總固存、所消耗的電量之和不能超過可用的總電量;公式(11)表示在同一重規(guī)劃周期內(nèi),每個任務(wù)只允許被安排一次,即保證了每個任務(wù)的成像時間窗[FOBegin,F(xiàn)OEnd]具有唯一性。
以上公式構(gòu)成了衛(wèi)星自主任務(wù)重規(guī)劃問題的主要約束,而根據(jù)問題分析,既定任務(wù)規(guī)劃方案被刪除時會造成一定損失。公式(12)表示當(dāng)待規(guī)劃任務(wù)發(fā)生調(diào)整后,其收益的變化情況。
模型分析
由于存在有關(guān)算法性能的約束,該問題有兩類決策變量:算法k和每個任務(wù)的成像時間窗[FOBegin,F(xiàn)OEnd]i。公式(6)、公式(7)和公式(8)是與算法k相關(guān)的幾條約束,在滿足這些約束并且PlanningTime、MemoryUsage的取值固定后,該問題變?yōu)榱艘话愕姆蔷€性規(guī)劃問題。所以這個問題可以拆分為兩個子問題分別進(jìn)行求解:一是如何求解這個非線性規(guī)劃問題,二是采用何種算法對這個非線性規(guī)劃問題進(jìn)行求解。
為了解決第一個子問題,即假設(shè)PlanningTime和MemoryUsage為常量,并除去公式(7)和公式(8),對問題用優(yōu)化方法進(jìn)行求解。以秒為單位,決策變量[FOBegin,F(xiàn)OEnd]i的取值為整數(shù),且所有目標(biāo)函數(shù)和約束條件中的變量均可離散化,所以該問題可認(rèn)為是一個整數(shù)非線性規(guī)劃問題。求解一般的整數(shù)非線性規(guī)劃問題,可以采用啟發(fā)式方法求得一個可行解,且不同的啟發(fā)式規(guī)則得到的解的質(zhì)量有高有低。而第二個子問題,可考慮為是一個簡單的決策問題,即存在時間計算的約束和計算內(nèi)存的約束,如何選擇最優(yōu)算法。本文對這個問題的思考是:在滿足計算時間和計算內(nèi)存約束的前提下,盡可能選擇求得的解的質(zhì)量較好的算法。
通常情況下認(rèn)為,越通用的算法求得的解的質(zhì)量越高,算法的時間和空間效率越低。但是對于某類特定輸入數(shù)據(jù)而言,一些簡單的方法同樣能得到高質(zhì)量的解,這一點在第三章接下來的內(nèi)容中和第四章的實驗中都會被得到證明。
更新待規(guī)劃任務(wù)集的函數(shù)
在衛(wèi)星任務(wù)重規(guī)劃分系統(tǒng)收到應(yīng)急任務(wù)后,首要任務(wù)就是要確定在接收到這些任務(wù)后,上一次上注給衛(wèi)星的任務(wù)規(guī)劃方案中哪些任務(wù)已經(jīng)執(zhí)行或者正在被執(zhí)行,哪些任務(wù)還未被執(zhí)行。
假設(shè)包含4個成像任務(wù),每一個成像任務(wù)完成成像都需要經(jīng)過三個階段,即成像準(zhǔn)備階段、載荷工作階段和狀態(tài)復(fù)位階段。為了保證衛(wèi)星飛行過程中的可靠性,已開始執(zhí)行的動作無法被打斷,而在成像準(zhǔn)備階段開始時,衛(wèi)星就已經(jīng)開始執(zhí)行該任務(wù)的指令了。成像準(zhǔn)備階段完成了相機(jī)開機(jī)、相機(jī)參數(shù)預(yù)設(shè)定、姿態(tài)機(jī)動等一系列動作,但是姿態(tài)機(jī)動需要的時間一般大于其他動作所需時間,且其他動作可以與姿態(tài)機(jī)動同時進(jìn)行。所以認(rèn)為所有在應(yīng)急任務(wù)到達(dá)時間之前開始姿態(tài)機(jī)動的任務(wù)均為不能調(diào)整的任務(wù)。相反,待規(guī)劃任務(wù)集中的任務(wù)應(yīng)滿足
根據(jù)公式(13),任務(wù)1、任務(wù)2和任務(wù)3在接收到應(yīng)急任務(wù)后已經(jīng)執(zhí)行,重規(guī)劃過程不考慮對這些任務(wù)進(jìn)行調(diào)整,而任務(wù)4之后的所有任務(wù)均可被納入待規(guī)劃任務(wù)集A中。
在確定了集合A包含的元素后,需要對各元素內(nèi)的部分屬性進(jìn)行調(diào)整,主要是指可見時間窗的裁剪,否則規(guī)劃結(jié)果有可能會出現(xiàn)違反上述約束的情況。在此處,對可見時間窗的裁剪主要是為了防止規(guī)劃結(jié)果中出現(xiàn)某些任務(wù)被安排在一個過去的時間內(nèi)成像,這顯然是不符合常理的。根據(jù)公式(14)來更新任務(wù)的可見時間窗,在這個時間窗內(nèi)安排觀測即可以避免這種情況的發(fā)生。
FWBegini=max{ArriveTime+PlanningTime,FWBegini}(i∈A) (14)
應(yīng)急任務(wù)最佳插入位置函數(shù)
星上自主任務(wù)重規(guī)劃與傳統(tǒng)成像任務(wù)規(guī)劃的問題背景中的另一區(qū)別,就是星上自主任務(wù)重規(guī)劃問題的輸入條件中已經(jīng)包含了一個任務(wù)序列。根據(jù)假設(shè),這一個任務(wù)序列中的任務(wù)順序被認(rèn)為是最優(yōu)排序,那么如何快速地確定應(yīng)急任務(wù)的合理插入位置,對重規(guī)劃效率的影響很大。通過將應(yīng)急任務(wù)以遍歷的方式來插入序列,然后再檢查約束、優(yōu)化調(diào)整這顯然是不明智的選擇,這樣做的話時間復(fù)雜度會大幅上升,影響系統(tǒng)計算效率和衛(wèi)星重規(guī)劃工作的整體運行效果。
由于姿態(tài)機(jī)動時間的長短對任務(wù)規(guī)劃結(jié)果具有直接影響,故本函數(shù)所設(shè)計的目標(biāo)為在插入應(yīng)急任務(wù)后,任務(wù)規(guī)劃方案的姿態(tài)機(jī)動時間之和最小。
由于各衛(wèi)星的轉(zhuǎn)動參數(shù)差距較大,真實的姿態(tài)機(jī)動計算過程所考慮的參數(shù)很多,且存在不確定性導(dǎo)致的機(jī)動時間波動。實際任務(wù)規(guī)劃在調(diào)用姿態(tài)機(jī)動模型的過程中通常不會考慮如此復(fù)雜,如我國某資源衛(wèi)星的姿態(tài)機(jī)動時間用一個分段線性函數(shù)來代替,以保證衛(wèi)星能在該時間內(nèi)完成姿態(tài)機(jī)動即可。故本文利用公式(15)來估算衛(wèi)星的合成轉(zhuǎn)角。
其中,Dis(i,j)表示兩個目標(biāo)點的直線距離,H表示衛(wèi)星軌道高度。
由于合成轉(zhuǎn)角與姿態(tài)機(jī)動時間正相關(guān),所以求從任務(wù)1到任務(wù)n的姿態(tài)機(jī)動時間總和最短等價于從任務(wù)1到任務(wù)n的目標(biāo)連線總距離最短。假設(shè)應(yīng)急任務(wù)e插入既定任務(wù)規(guī)劃序列的位置為第i-1個任務(wù)之后,則重規(guī)劃方案的任務(wù)序列可以描述為{Task1,Task2,…,Taski-1,Taske,Taski,…,Taskn}。根據(jù)以上分析,可以設(shè)計啟發(fā)式函數(shù)D(i)表示當(dāng)應(yīng)急任務(wù)插入到任務(wù)i-1之后,從任務(wù)i-1到任務(wù)e再到任務(wù)i的距離增量,其計算方法如公式(16)
D(i)=Dis(i-1,e)+Dis(e,i)-Dis(i-1,i) (16)
則應(yīng)急任務(wù)插入的最佳位置即為D(i)取最小時所對應(yīng)的位置i。
通過上述啟發(fā)式函數(shù)可以找到任務(wù)的最佳成像位置,無法保證這個任務(wù)序列中所有任務(wù)都可以執(zhí)行,需要進(jìn)一步檢查約束和優(yōu)化才能得到任務(wù)規(guī)劃方案。
最佳算法選擇的函數(shù)
評價優(yōu)化算法的指標(biāo)有很多,且在不同的應(yīng)用環(huán)境中,算法設(shè)計者可能關(guān)注算法不同方面的性能。如天氣預(yù)報中的預(yù)測算法,需要盡可能提高計算結(jié)果的準(zhǔn)確度,即使需要消耗大量的計算資源或時間;普通應(yīng)用程序設(shè)計,則需要更多的考慮算法的時間效率,以保證較好的用戶體驗度。
最低目標(biāo)是在規(guī)定的時間內(nèi)插入一個很重要的應(yīng)急任務(wù),但是不會有人為了插入這一個任務(wù),而把其他所有的任務(wù)全都刪除。所以針對不同的任務(wù)重規(guī)劃算法,在滿足應(yīng)急任務(wù)和星上運算環(huán)境對于算法的約束前提下,要求算法求得的解的質(zhì)量越高。
應(yīng)急任務(wù)和星上運算環(huán)境對算法的約束主要由公式(7)和公式(8)給出,所以不滿足這兩個約束的算法的總收益為0。其他算法的預(yù)期收益可以通過大量實驗得到一個和任務(wù)輸入規(guī)模相關(guān)的函數(shù),通過比較每個算法的預(yù)期收益函數(shù)值,即可確定最佳算法。
算法1(應(yīng)急插入算法)設(shè)計
設(shè)計該算法的目的是在不對既定任務(wù)序列的觀測時間作調(diào)整的前提下,以最直接的方式加入應(yīng)急任務(wù),保證計算時間最短。
在應(yīng)急任務(wù)到達(dá)后,可計算出應(yīng)急任務(wù)e的最佳插入位置i。檢查第i-1個任務(wù)和第i個任務(wù)之間的任務(wù)準(zhǔn)備時間是否能夠滿足新加入的應(yīng)急任務(wù)后的姿態(tài)機(jī)動約束。若滿足約束,即
FOBegini-FOEndi-1≥PSTime(i-1,e)+CTimee+PSTime(e,i)
表示這個任務(wù)可以直接被加入到任務(wù)i-1與任務(wù)i之間;若不滿足約束,則考慮將任務(wù)i-1與i中收益較低者刪除,然后加入應(yīng)急任務(wù)e。
算法2(貪婪搜索算法)設(shè)計
設(shè)計該算法的目的是采用啟發(fā)式算法對任務(wù)的時間窗進(jìn)行重新調(diào)整,以求提高任務(wù)在時間窗上的利用率。在設(shè)計解決該問題的算法之前,考慮一種特殊情況,當(dāng)所有任務(wù)的可見時間窗等于成像時間窗時,即
區(qū)間調(diào)度問題可以簡單描述為:有若干個任務(wù),各任務(wù)的開始時間和結(jié)束時間均固定,且任務(wù)開始以后不允許中斷,求在某一段時間內(nèi)能夠完成的任務(wù)收益之和最大。
當(dāng)所有任務(wù)收益相等時,收益之和最大等價于完成的任務(wù)最多。在這種情況下,區(qū)間調(diào)度問題存在一種貪婪算法被證明可求得最優(yōu)解,即按照任務(wù)的結(jié)束時間從小到大排序,順序插入任務(wù)。本問題模型與區(qū)間調(diào)度問題的最大區(qū)別是,任務(wù)的成像時長通常都小于可見時間窗,所以該問題中除了需要決定任務(wù)順序,在嘗試插入任務(wù)的同時還需要確定任務(wù)的成像時間窗。所以設(shè)計如下貪婪規(guī)則:
將所有任務(wù)按照可見時間窗的結(jié)束時間FWEnd從小到大排序,按此順序為每一個任務(wù)安排最早的成像機(jī)會進(jìn)行成像,即
FOBegini=max{FOEndi-1+PSTime(i-1,i),FWBegini}
若能夠找到可行的時間窗安排成像且其他約束均滿足要求,則在最優(yōu)規(guī)劃方案中加入該任務(wù)。
該算法從應(yīng)急任務(wù)的最佳插入位置為原點,向前和向后分別使用該方法嘗試加入任務(wù),最終實現(xiàn)任務(wù)規(guī)劃。
根據(jù)對區(qū)間調(diào)度問題的分析,結(jié)合上述貪婪規(guī)則,可得如下命題:
命題1:當(dāng)任務(wù)按照可見時間窗結(jié)束時間排序和可見時間窗開始時間排序后的任務(wù)順序相同,即任務(wù)與任務(wù)的可見時間窗不存在包含關(guān)系時,采用上述貪婪算法求得的規(guī)劃方案中的任務(wù)數(shù)量達(dá)到最大化。
要證明命題1,先引入如下兩個命題:
命題1.1:當(dāng)i≥1時,該貪婪算法所接受的第i個任務(wù)的成像結(jié)束時間fi不大于最優(yōu)解中的第i個任務(wù)的成像結(jié)束時間gi。
證明:
當(dāng)i=1時,因為選擇的是任務(wù)可見時間窗結(jié)束時間最小的任務(wù),根據(jù)命題1的條件,該任務(wù)的可見時間窗開始時間、被安排的成像開始時間和成像結(jié)束時間均比其他任務(wù)小,所以命題1.1顯然成立。
當(dāng)i>1時,假設(shè)該命題對i-1成立,即fi-1≤gi-1,則有最優(yōu)解的第i個可選任務(wù)所組成的集合是采用貪婪算法確定i-1個任務(wù)后的剩余可選任務(wù)的子集,采用該貪婪算法確定的任務(wù)成像結(jié)束時間是所有剩余可選任務(wù)中最小的一個,所以fi≤gi。
綜合以上,根據(jù)不完全數(shù)學(xué)歸納法,命題1.1得證。
命題1.2:最優(yōu)解中的任務(wù)數(shù)p與通過該貪婪算法得到解的任務(wù)數(shù)q相等。
證明:
假設(shè)p>q,根據(jù)命題1.1,有fq≤gq對于所有的q都成立。
由于p>q,所以一定存在某個任務(wù)j,使gq≤gj。
又任務(wù)j在最優(yōu)解的任務(wù)集合中,所以任務(wù)j滿足所有約束。
又fq≤gq,所以任務(wù)j加入到貪婪算法求得的解后,同樣滿足約束,說明貪婪算法求得的解中任務(wù)數(shù)大于q,與命題矛盾。
所以假設(shè)不成立,p≤q。又因為p為最優(yōu)解中的任務(wù)數(shù)量,所以p≥q。
綜合以上,p=q,命題1.2得證。
顯然,命題1.1和命題1.2同時為真命題時,命題1為真命題。綜上所述,命題1得證。
所以,可以得到如下結(jié)論:在所有的任務(wù)的可見時間窗不存在包含關(guān)系,且已安排的所有任務(wù)的收益均相同的情況下,采用該貪婪算法所得的解即為以該順序完成任務(wù)的最優(yōu)解。
本說明書中各個實施例采用遞進(jìn)的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似部分互相參見即可。對于實施例公開的系統(tǒng)而言,由于其與實施例公開的方法相對應(yīng),所以描述的比較簡單,相關(guān)之處參見方法部分說明即可。
本文中應(yīng)用了具體個例對本發(fā)明的原理及實施方式進(jìn)行了闡述,以上實施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時,對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實施方式及應(yīng)用范圍上均會有改變之處。綜上所述,本說明書內(nèi)容不應(yīng)理解為對本發(fā)明的限制。