Research on the Integrated Scheduling of Imaging and Data Transmission for Earth Observation Satellites
Abstract
1. Introduction
2. Mathematical Programming Model
2.1. Problem Definition
2.2. Assumptions
- Once the satellite’s observation and data transmission activities begin, they must not be interrupted.
- Each satellite is equipped with only one solid-state storage and battery resource. Without considering the uncertainty of resource consumption such as solid-state storage and batteries on board, the storage capacity and energy of the satellite are limited.
- The satellite operates in a playback mode, which means it first captures images and then transmits the imaging data to the ground station.
- Satellites can simultaneously perform imaging and data downlink operations.
- The attitude transition time of the satellite between two targets is a fixed value. A fixed attitude transition time needs to be satisfied between two data transmission missions from a satellite to different ground stations, and similarly, a fixed transition time needs to be satisfied between two data transmission missions from ground stations to different satellites.
- Since the energy consumption of satellite attitude maneuvers is relatively small compared to imaging and data transmission missions, the energy consumed by satellite attitude maneuvers is not considered in this study.
- Each satellite carries only one sensor.
- Ignoring the factors that affect observation tasks, such as cloud cover, solar angle, and other meteorological conditions.
- It is necessary to select a satellite with an appropriate side view angle for imaging in order to meet the user’s requirements for the quality of the target image.
2.3. MILP Model Formulation
3. CPLEX CP Solver Solution
3.1. CPLEX Solver
3.2. MILP Model
3.2.1. Using CPLEX Solver
- dvar boolean x[i in tasks][k in satellites][m in orbits];
- dvar boolean g[j in stations][k in satellites][n in orbits];
- dvar int x_time[i in tasks][k in satellites];
- dvar int g_time[i in stations][k in satellites][m in orbits];
- dvar boolean y[i in tasks][j in stations][k in satellites][n in orbits];
- dvar boolean za[i in tasks][j in stations][k in satellites][n in orbits];
- dvar boolean zb[i in tasks][j in stations][k in satellites][n in orbits];
- dvar boolean z1[i1 in tasks][i2 in tasks][k in satellites];
- dvar boolean z1c[k in satellites][j1 in stations][n1 in orbits][j2 in stations][n2 in orbits];
- dvar boolean z2[j in stations][k1 in satellites][m in orbits][k2 in satellites][n in orbits];
- dvar int+ x_start[i in tasks][k in satellites];
- dvar int+ x_end[i in tasks][k in satellites];
- dvar int+ g_start[i in stations][k in satellites][m in orbits];
- dvar int+ g_end[i in stations][k in satellites][m in orbits];
- dvar float+ ux[tasks,satellites];
- dvar float+ ug[stations,satellites,orbits];
- dvar float pg[k in satellites][j1 in stations][n1 in orbits][j2 in stations][n2 in orbits];
- dvar float px[i1 in tasks][i2 in tasks][k in satellites];
- dvar float pxga[i1 in tasks][j2 in stations][k in satellites][n2 in orbits];
- dvar float pxgb[i1 in tasks][j2 in stations][k in satellites][n2 in orbits];
- maximize sum(j in tasks, m in orbits ,k in satellites)(profit[j] *x[j][k][m]);
- subject to {
- forall(i in tasks)
- sum(m in orbits ,k in satellites) x[i][k][m]<=1;
- forall(i in tasks, k in satellites){
- sum(n in orbits, j in stations) y[i][j][k][n]==sum(m in orbits) x[i][k][m];}
- forall(n in orbits, j in stations, k in satellites){
- sum(i in tasks) y[i][j][k][n] <= g[j][k][n]*tasknum;}
- forall(i in tasks,k in satellites){
- x_time[i][k]==sum(m in orbits)x[i][k][m]*duration[i];}
- forall(j in stations, n in orbits,k in satellites){
- g_time[j][k][n]==sum(i in tasks)y[i][j][k][n]*utime[i];}
- forall(i in tasks, k in satellites){
- x_start[i][k]>=sum(m in orbits)x[i][k][m]*wst[i][k][m];
- x_end[i][k]<=sum(m in orbits)x[i][k][m]*wet[i][k][m];
- x_end[i][k]==x_start[i][k]+x_time[i][k];}
- forall(j in stations, n in orbits,k in satellites){
- g_end[j][k][n]==g_start[j][k][n]+g_time[j][k][n];
- g_start[j][k][n]>=g[j][k][n]*wsg[j][k][n];
- g_end[j][k][n]<=g[j][k][n]*weg[j][k][n];}
- forall(i1 in tasks,i2 in tasks, k in satellites: i1 != i2){
- z1[i1][i2][k]<=sum(m in orbits)x[i1][k][m];
- z1[i1][i2][k]<=sum(m in orbits)x[i2][k][m];
- sum(m in orbits)x[i1][k][m]+sum(m in orbits)x[i2][k][m]
- -z1[i1][i2][k]-z1[i2][i1][k]<=1;}
- forall(i in stations,m in orbits,k in satellites)
- forall(j in stations, n in orbits: <i,m> != <j,n>){
- z1c[k][i][m][j][n]<=g[i][k][m];
- z1c[k][i][m][j][n]<=g[j][k][n];
- g[i][k][m]+g[j][k][n]-z1c[k][i][m][j][n]-z1c[k][j][n][i][m]<=1;}
- forall(i1 in tasks, k in satellites)
- forall(j in stations, n in orbits){
- za[i1][j][k][n]<=sum(m in orbits)x[i1][k][m];
- za[i1][j][k][n]<=g[j][k][n];
- zb[i1][j][k][n]<=sum(m in orbits)x[i1][k][m];
- zb[i1][j][k][n]<=g[j][k][n];}
- forall(i1 in tasks, k in satellites)
- forall(j in stations, n in orbits){
- za[i1][j][k][n]>=y[i1][j][k][n];}
- forall(i in tasks, k in satellites)
- forall(j in tasks){
- (x_end[i][k]-x_start[j][k]<=s && sum(m in orbits)x[i][k][m]==1)=>(z1[i][j][k]==1);
- (x_end[i][k]-x_start[j][k]>=0 && sum(m in orbits)x[i][k][m]==1)=>(z1[i][j][k]==0);}
- forall(i in tasks, k in satellites)
- forall(j in stations, n in orbits){
- (x_end[i][k]-g_start[j][k][n]<=s &&
- sum(m in orbits)x[i][k][m]==1)=>(za[i][j][k][n]==1);
- (x_end[i][k]-g_start[j][k][n]>=0 &&
- sum(m in orbits)x[i][k][m]==1)=>(za[i][j][k][n]==0);
- (g_end[j][k][n]-x_start[i][k]<=s && g[j][k][n]==1)=>(zb[i][j][k][n]==1);
- (g_end[j][k][n]-x_start[i][k]>=0 && g[j][k][n]==1)=>(zb[i][j][k][n]==0);}
- forall(i in stations,m in orbits, k in satellites)
- forall(j in stations, n in orbits){
- (g_end[i][k][m]-g_start[j][k][n]<=s && g[i][k][m]==1)=>(z1c[k][i][m][j][n]==1);
- (g_end[i][k][m]-g_start[j][k][n]>=0 && g[i][k][m]==1)=>(z1c[k][i][m][j][n]==0);}
- forall(i in stations, m in orbits,k in satellites)
- forall(j in stations, n in orbits){
- (z1c[k][i][m][j][n]==1)=>(pg[k][i][m][j][n]==g_time[i][k][m]*umemory[k][1]);
- (z1c[k][i][m][j][n]==0)=>(pg[k][i][m][j][n]==0);}
- forall(i in tasks, k in satellites)
- forall(j in tasks){
- (z1[i][j][k]==1)=>(px[i][j][k]==x_time[i][k]*umemory[k][0]);
- (z1[i][j][k]==0)=>(px[i][j][k]==0);}
- forall(i in tasks, k in satellites)
- forall(j in stations, n in orbits){
- (za[i][j][k][n]==1)=>(pxga[i][j][k][n]==x_time[i][k]*umemory[k][0]);
- (za[i][j][k][n]==0)=>(pxga[i][j][k][n]==0);
- (zb[i][j][k][n]==1)=>(pxgb[i][j][k][n]==g_time[j][k][n]*umemory[k][1]);
- (zb[i][j][k][n]==0)=>(pxgb[i][j][k][n]==0);}
- forall(i in tasks,k in satellites){
- ux[i][k]==(sum(j in tasks) px[j][i][k])-
- (sum(j in stations, m in orbits) pxgb[i][j][k][m])+x_time[i][k]*umemory[k][0];
- ux[i][k]<=memory[k];
- ux[i][k]>=0;}
- forall(i in stations, m in orbits,k in satellites){
- ug[i][k][m]==(sum(j in tasks) pxga[j][i][k][m])-
- (sum(j in stations, m1 in orbits)pg[k][j][m1][i][m])-g_time[i][k][m]*umemory[k][1];
- ug[i][k][m]<=memory[k];
- ug[i][k][m]>=0;}
- forall(i in stations,m in orbits,k1 in satellites)
- forall(k2 in satellites, n in orbits:k1!=k2){
- z2[i][k1][m][k2][n]<=g[i][k1][m];
- z2[i][k1][m][k2][n]<=g[i][k2][n];
- g[i][k1][m]+g[i][k2][n]-z2[i][k1][m][k2][n]-z2[i][k2][n][k1][m]<=1;}
- forall(i in stations,m in orbits, k1 in satellites)
- forall(k2 in satellites, n in orbits){
- (g_end[i][k1][m]-g_start[i][k2][n]>=0 && g[i][k1][m]==1)=>(z2[i][k1][m][k2][n]==0);
- (g_end[i][k1][m]-g_start[i][k2][n]<=s && g[i][k1][m]==1)=>(z2[i][k1][m][k2][n]==1);}
- forall(i in stations,m in orbits,k1 in satellites)
- forall(k2 in satellites, n in orbits){
- (z2[i][k1][m][k2][n]==1)=>(g_start[i][k2][n]-g_end[i][k1][m]>=slewt[i]);}
- forall(i in stations,m in orbits,k in satellites)
- forall(j in stations, n in orbits){
- (z1c[k][i][m][j][n]==1)=>(g_start[j][k][n]-g_end[i][k][m]>=slewtime1[k]);}
- forall(i in tasks, k in satellites)
- forall(j in tasks){
- (z1[i][j][k]==1)=>(x_start[j][k]-x_end[i][k]>=slewtime[i][j][k]);}
- forall(k in satellites){
- sum(i in tasks)((x_time[i][k])*uenergy[k][0])+
- sum(i in stations, m in orbits)((g_time[i][k][m])*uenergy[k][1])<=energy[k];}
- }
3.2.2. Using CP Solver
- dvar boolean x[i in tasks][k in satellites][m in orbits];
- dvar boolean y[i in tasks][j in stations][k in satellites][n in orbits];
- dvar interval x_val[j in tasks][k in satellites] optional size duration[j];
- dvar interval g_val[i in stations][k in satellites][m in orbits] optional in wsg[i][k][m]..weg[i][k][m];
- dvar interval y_val[i in tasks][j in stations][k in satellites][m in orbits] optional size utime[i];
- dvar sequence x_seq[k in satellites] in all (j in tasks) x_val[j][k];
- dvar sequence y_seq[k in satellites] in all (i in tasks, j in stations, m in orbits) y_val[i][j][k][m];
- dvar sequence g_seq[j in stations] in all (i in tasks, m in orbits, k in satellites) y_val[i][j][k][m];
- dvar sequence d_seq[j in stations] in all (m in orbits, k in satellites) g_val[j][k][m];
- cumulFunction storageUsage[k in satellites] =
- sum(i in tasks) stepAtStart(x_val[i][k], umemory[k][1] * duration[i])
- - sum(j in stations, i in tasks, m in orbits) stepAtStart(y_val[i][j][k][m],
- umemory[k][2] * utime[i]);
- cumulFunction energyUsage[k in satellites] =
- sum(i in tasks) stepAtStart(x_val[i][k], uenergy[k][1] * duration[i])
- + sum(j in stations, i in tasks, m in orbits) stepAtStart(y_val[i][j][k][m],
- uenergy[k][2] * utime[i]);
- maximize sum(j in tasks, m in orbits ,k in satellites) (profit[j] *x[j][k][m]);
- subject to {
- forall(i in tasks){
- sum(m in orbits ,k in satellites) x[i][k][m] <= 1;}
- forall(i in tasks){
- sum(n in orbits, j in stations, k in satellites) y[i][j][k][n] <= 1;}
- forall(i in tasks, k in satellites){
- sum(n in orbits, j in stations) y[i][j][k][n] >= sum(m in orbits) x[i][k][m];}
- forall(i in tasks, j in stations, m in orbits, k in satellites){
- y[i][j][k][m] == presenceOf(y_val[i][j][k][m]);}
- forall(i in tasks,k in satellites){
- sum(m in orbits)x[i][k][m] == presenceOf(x_val[i][k]);}
- forall(i in tasks, k in satellites){
- startOf(x_val[i][k])>=sum(m in orbits)x[i][k][m]*wst[i][k][m];
- endOf(x_val[i][k])<=sum(m in orbits)x[i][k][m]*wet[i][k][m];}
- forall(i in tasks, j in stations, m in orbits, k in satellites){
- endBeforeStart(x_val[i][k], y_val[i][j][k][m]);
- (y[i][j][k][m] == 1) => ( endOf(x_val[i][k]) <= startOf(g_val[j][k][m]) );}
- forall(j in stations, m in orbits, k in satellites)
- span(g_val[j][k][m], all(i in tasks) y_val[i][j][k][m]);
- forall(k in satellites) storageUsage[k] <= memory[k];
- forall(k in satellites) energyUsage[k] <= energy[k];
- forall(k in satellites) noOverlap(y_seq[k]);
- forall(j in stations) noOverlap(g_seq[j]);
- forall(j in stations) noOverlap(d_seq[j]);
- forall(k in satellites) noOverlap(x_seq[k], Setup[k]);
- forall(k in satellites){
- forall(j1 in stations, m1 in orbits, j2 in stations, m2 in orbits : j1 != j2){
- (presenceOf(g_val[j1][k][m1]) && presenceOf(g_val[j2][k][m2])) =>
- abs(endOf(g_val[j1][k][m1])-startOf(g_val[j2][k][m2])) >= slewtime1[k];
- (presenceOf(g_val[j1][k][m1]) && presenceOf(g_val[j2][k][m2])) =>
- abs(endOf(g_val[j2][k][m2])-startOf(g_val[j1][k][m1])) >= slewtime1[k];}}
- forall(j in stations){
- forall(k1 in satellites, m1 in orbits, k2 in satellites, m2 in orbits : k1 != k2){
- (presenceOf(g_val[j][k1][m1]) && presenceOf(g_val[j][k2][m2])) =>
- abs(endOf(g_val[j][k1][m1])-startOf(g_val[j][k2][m2])) >= slewt[j];
- (presenceOf(g_val[j][k1][m1]) && presenceOf(g_val[j][k2][m2])) =>
- abs(endOf(g_val[j][k2][m2])-startOf(g_val[j][k1][m1])) >= slewt[j];}}
- }
4. Rule-Based Large Neighborhood Search Algorithm (RLNS)
4.1. Algorithm Description
4.2. Heuristic Rules and Various Operators
4.2.1. Construction of the Initial Solution
4.2.2. Task Allocation Random Perturbation Operator
Algorithm 1 Task Allocation Disturbance |
Require: Task Allocation Matrix: , Taboo List: Ensure: new Task Allocation Matrix:
|
4.2.3. Random Perturbation Operator for Observation Task Sequences
Algorithm 2 Sequence Perturbation |
Require: Observation Tasks Sequences: Ensure: new Observation Tasks Sequences:
|
4.2.4. Observation Task Scheduling Operator Based on Target Allocation Scheme
Algorithm 3 Observation Task Scheduling | |
Require: Observation Tasks Allocations: | |
Ensure: Observation Tasks Scheduling Scheme: | ▹ also contains other |
informations such as starttime, endtime et al. if then
|
4.2.5. Onboard Data First-Come-First-Served Transmission Operator
Algorithm 4 Observation Task Scheduling | |
Require: Transmission Tasks Allocations: | |
Ensure: Transmission Tasks Scheduling Scheme: | ▹ also contains other |
informations such as starttime, endtime et al. if then end if
|
4.2.6. Sequence-Based Observation Tasks Scheduling Algorithm
4.2.7. Repair Algorithms Based on Onboard Capacity Constraints and Satellite Energy Constraints
4.3. Process of the RLNS
5. Genetic Algorithms (GA)
5.1. Algorithm Description
5.2. Algorithm Design
6. Simulation Experiments and Results
6.1. Data Description
6.2. Problem Scenario Visualization
6.3. Analysis of the Results
7. Discussion
8. Conclusions
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Conflicts of Interest
Abbreviations
MILP | Three mixed-integer linear programming |
RLNS | Rule-based Large Neighborhood Search Algorithm |
GA | Genetic Algorithm |
References
- He, R. Research on the Scheduling Problem of Imaging Reconnaissance Satellites. Ph.D. Thesis, National University of Defense Technology, Changsha, China, 2004. (In Chinese). [Google Scholar]
- Wang, J. Research on the Scheduling Problem of Optical Earth Observation Satellites under Uncertain Cloud Conditions. Ph.D. Thesis, National University of Defense Technology, Changsha, China, 2015. (In Chinese). [Google Scholar]
- Cordeau, J.F.; Laporte, G. Maximizing the value of an earth observation satellite orbit. J. Oper. Res. Soc. 2005, 56, 962–968. [Google Scholar] [CrossRef]
- Barbulescu, L.; Howe, A.; Whitley, D. AFSCN scheduling: How the problem and solution have evolved. Math. Comput. Model. 2006, 43, 1023–1037. [Google Scholar] [CrossRef]
- Sarkheyli, A.; Bagheri, A.; Ghorbani-Vaghei, B.; Askari-Moghadam, R. Using an effective tabu search in interactive resources scheduling problem for LEO satellites missions. Aerosp. Sci. Technol. 2013, 29, 287–295. [Google Scholar] [CrossRef]
- Gabrel, V.; Vanderpooten, D. Enumeration and interactive selection of efficient paths in a multiple criteria graph for scheduling an earth observing satellite. Eur. J. Oper. Res. 2002, 139, 533–542. [Google Scholar] [CrossRef]
- Pemberton, J.C.; Galiber, F. A constraint-based approach to satellite scheduling. In Constraint Programming and Large Scale Discrete Optimization. DIMACS Workshop; American Mathematical Society: Providence, RI, USA, 2001. [Google Scholar]
- Bianchessi, N.; Righini, G. A mathematical programming algorithm for planning and scheduling an earth observing SAR constellation. In Proceedings of the International Workshop on Planning and Scheduling for Space, Baltimore, MD, USA, 22–25 October 2006. [Google Scholar]
- Bianchessi, N.; Righini, G. Planning and scheduling algorithms for the COSMO-SkyMed constellation. Aerosp. Sci. Technol. 2008, 12, 535–544. [Google Scholar] [CrossRef]
- Li, J.; Tan, Y. Model and Solution for the Receiving and Transmitting Problem in the Overall Scheduling of Satellite Observation Systems. Syst. Eng.-Theory Pract. 2004, 24, 65–71. (In Chinese) [Google Scholar]
- Wang, J. Research on Integrated Task Scheduling Models and Optimization Methods for Imaging Satellites. Ph.D. Thesis, National University of Defense Technology, Changsha, China, 2007. (In Chinese). [Google Scholar]
- Jin, P.; Wang, C.; Xia, W.; Yang, B.; Tang, H. Onsideration of Two-Stage Emergency Task Planning for Satellite Command Injection. J. Syst. Eng. Electron. 2019, 41, 810–818. (In Chinese) [Google Scholar]
- Wang, P. Research on Integrated Scheduling Methods for Multiple Satellites and Ground Stations Based on Branch Pricing; National University of Defense Technology: Changsha, China, 2011. (In Chinese) [Google Scholar]
- Du, Y.; Xing, L.; Chen, Y.; Wang, L.; Ren, T. Integrated agile observation satellite scheduling problem considering different memory environments: A case study. J. Braz. Soc. Mech. Sci. Eng. 2020, 42, 76. [Google Scholar] [CrossRef]
- Sun, H.; Xia, W.; Wang, Z.; Hu, X. Agile earth observation satellite scheduling algorithm for emergency tasks based on multiple strategies. J. Syst. Sci. Syst. Eng. 2021, 30, 626–646. [Google Scholar] [CrossRef]
- Hu, X.; Zhu, W.; An, B.; Jin, P.; Xia, W. A branch and price algorithm for EOS constellation imaging and downloading integrated scheduling problem. Comput. Oper. Res. 2019, 104, 74–89. [Google Scholar] [CrossRef]
- Waiming, Z.; Xiaoxuan, H.; Wei, X.; Peng, J. A two-phase genetic annealing method for integrated earth observation satellite scheduling problems. Soft Comput. 2019, 23, 181–196. [Google Scholar] [CrossRef]
- Chen, Y.; Lu, J.; He, R.; Ou, J. An efficient local search heuristic for earth observation satellite integrated scheduling. Appl. Sci. 2020, 10, 5616. [Google Scholar] [CrossRef]
- Kim, C.H.; Kim, S.J.; Choi, H.L. Optimal Integrated Scheduling of Observation and Download Tasks for Multiple Satellites with Memory Constraints. In Proceedings of the 2024 IEEE 20th International Conference on Automation Science and Engineering (CASE), Bari, Italy, 28 August–1 September 2024; IEEE: Piscataway, NJ, USA, 2024; pp. 2287–2294. [Google Scholar]
- Lee, M.; Yu, S.; Kwon, K.; Lee, M.; Lee, J.; Kim, H. Mixed-integer linear programming model for scheduling missions and communications of multiple satellites. Aerospace 2024, 11, 83. [Google Scholar] [CrossRef]
- Zhang, J.; Xing, L. An improved genetic algorithm for the integrated satellite imaging and data transmission scheduling problem. Comput. Oper. Res. 2022, 139, 105626. [Google Scholar] [CrossRef]
- He, C.; Dong, Y. Multi-Satellite Observation-Relay Transmission-Downloading Coupling Scheduling Method. Remote Sens. 2023, 15, 5639. [Google Scholar] [CrossRef]
Literature | Agile Satellite | Imaging and Transmission Are Performed in Parallel | Limitated Ground Station Resources | Time Window Discretized |
---|---|---|---|---|
[3,5] | ✓ | × | × | × |
[1,2,6,11,12] | × | × | × | ✓ |
[7,8,9,10] | ✓ | × | ✓ | ✓ |
[13,14,15] | ✓ | × | ✓ | × |
[16,17,18] | ✓ | ✓ | × | × |
[19,20] | ✓ | ✓ | × | × |
[21,22] | ✓ | ✓ | ✓ | × |
Parameters | Definition |
---|---|
S | Satellite Collection |
G | Ground station set |
T | Task Set |
M | Number of Tasks |
The orbit Set of satellite k | |
Execution time of imaging task i | |
The time required for satellite k to complete the transition to task j after finishing task i | |
The benefit value of task i | |
The side view angle of satellite k performing task i | |
The maximum side view angle of target i | |
The energy limit for a single activation of satellite k | |
The maximum storage capacity of satellite k | |
The data generated or freed by satellite k per unit time | |
Energy consumed per second for satellite imaging or data transmission | |
The time at which task j is transmitted from the satellite to the ground station | |
The start time of the time window for task j executed by satellite k at orbit m | |
The end time of the time window for task j executed by satellite k at orbit m | |
Start of the time window for ground stations in satellite k-orbit m | |
End of the time window for ground stations in satellite k-orbit m | |
Transition time between two adjacent communication tasks at Earth station i | |
Transition time between two adjacent communication tasks at Earth satellite i |
Decision Variables | Definition |
---|---|
Whether the ground station j communicates with the satellite k in the nth orbit | |
Whether target i is observed in the mth orbit of satellite k | |
Whether target i transmitted at ground station j through the nth orbit of satellite k | |
Observation time of target i on satellite k | |
Observation start time of target I on Satel-lite K | |
Observation end time of target I on Satel-lite K | |
Communication time of ground station j with the satellite k in the nth orbit | |
Communication end time of ground sta-tion j with the satellite k in the nth orbit | |
Communication start time of ground sta-tion j with the satellite k in the nth orbit | |
The sequence of targets i1 and i2 observed on satellite k | |
The end time of data transmission task i executed by satellite k and ground station m | |
The end time of data transmission task i executed by satellite k and ground station m | |
The sequence of ground j1 at n1th and ground j2 at n2th orbit on satellite k | |
The sequence of satellite k1 at n1th and satellite k2 at n2th orbit on station j | |
Capacity consumed when observing target i1 before target i2 on satellite k | |
Capacity consumed when observing target i before station j with orbit n on satellite k | |
Capacity released when observing target i after station j with orbit n on satellite k | |
Capacity released when observing station j1 with orbit n1 before station j2 with orbit n2 on satellite k | |
Satellite storage when observing target i | |
Satellite storage when communicating with station j at orbit n |
Parameters | Sat01 | Sat02 | Sat03 | Sat04 |
---|---|---|---|---|
a | 609.1 km | 609.1 km | 609.1 km | 609.1 km |
e | 1.64 | 1.54 | 5.11 | 1.1 |
i | 97.50° | 97.41° | 97.47° | 97.47° |
82.01° | 78.17° | 335.09° | 320.80° | |
349.16° | 334.40° | 342.09° | 342.30° | |
52.73° | 33.30° | 162.46° | 173.56° |
Sat | ||||
---|---|---|---|---|
Sat01 | 2 | 2 | 500 | 500 |
Sat02 | 2 | 2 | 500 | 500 |
Sat03 | 2 | 2 | 500 | 500 |
Sat04 | 2 | 2 | 500 | 500 |
Point1 | Point2 | Point3 | Point4 | Point5 | |
---|---|---|---|---|---|
Longitude | 113 | 90 | 100 | 110 | 115 |
Latitude | 10 | 40 | 35 | 30 | 25 |
Beijing | Jiamusi | Kashgar | Nanning | Xiamen | |
---|---|---|---|---|---|
Longitude | 116 | 130.32 | 75.929 | 108.37 | 118.09 |
Latitude | 40 | 46.8 | 39.505 | 22.82 | 24.48 |
Target Quantity | LP | LPtime | CP | CPtime | RLNS | RLNStime | GA | GAtime |
---|---|---|---|---|---|---|---|---|
10 | 15 | 0.08 | 15 | 0.37 | 15 | 3 | 13 | 3 |
20 | 45 | 0.56 | 45 | 10.77 | 34 | 3 | 38 | 14 |
30 | 65 | 6.23 | 65 | 600.21 | 34 | 1 | 28 | 28 |
40 | 129 | 41.08 | 129 | 41.57 | 109 | 1 | 77 | 40 |
50 | 152 | 601.16 | 152 | 600.35 | 91 | 3 | 85 | 55 |
100 | 198 | 3604.33 | 198 | 3600.74 | 152 | 4 | 150 | 146 |
150 | 0 | 3600 | 0 | 3600 | 161 | 6 | 226 | 288 |
200 | 0 | 3600 | 0 | 3600 | 174 | 8 | 261 | 473 |
300 | 0 | 3600 | 0 | 3600 | 163 | 12 | 327 | 609 |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2025 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Yu, G.; Zhang, K. Research on the Integrated Scheduling of Imaging and Data Transmission for Earth Observation Satellites. Algorithms 2025, 18, 418. https://doi.org/10.3390/a18070418
Yu G, Zhang K. Research on the Integrated Scheduling of Imaging and Data Transmission for Earth Observation Satellites. Algorithms. 2025; 18(7):418. https://doi.org/10.3390/a18070418
Chicago/Turabian StyleYu, Guanfei, and Kunlun Zhang. 2025. "Research on the Integrated Scheduling of Imaging and Data Transmission for Earth Observation Satellites" Algorithms 18, no. 7: 418. https://doi.org/10.3390/a18070418
APA StyleYu, G., & Zhang, K. (2025). Research on the Integrated Scheduling of Imaging and Data Transmission for Earth Observation Satellites. Algorithms, 18(7), 418. https://doi.org/10.3390/a18070418