A constellation communication-navigation coupled task scheduling method based on load balancing

By constructing a multi-objective mixed integer linear programming (MILP) model, the coupling conflict between communication and navigation services in the lunar constellation was resolved, load balancing optimization was achieved, the task completion rate and resource utilization were improved, and the problem of low resource utilization in existing technologies was solved.

CN121809994BActive Publication Date: 2026-05-26NORTHWESTERN POLYTECHNICAL UNIV
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
NORTHWESTERN POLYTECHNICAL UNIV
Filing Date
2026-03-10
Publication Date
2026-05-26

Smart Images

  • Figure CN121809994B_ABST
    Figure CN121809994B_ABST
Patent Text Reader

Abstract

This invention relates to a load-balancing-based constellation communication-navigation coupled task scheduling method, belonging to the field of aerospace mission planning technology. It primarily improves resource allocation efficiency under equipment-level constraints and addresses the challenge of ensuring communication task completion while meeting the geometric accuracy requirements of navigation services. The invention uses satellite ephemeris data and mission requirement parameters as input to construct a multi-objective mixed integer linear programming (MILP) model. The optimal binary allocation variables are then obtained through a MILP solver, and the service satellites and service time slots for each mission are extracted to generate a scheduling table. This invention avoids the problem of navigation mission failure caused by communication tasks occupying multi-satellite convergence windows in separate planning. Simulations show that the overall mission completion rate is improved by an average of 12.3 percentage points, and the load variation coefficient is reduced by 66%–88%.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of aerospace mission planning technology, specifically relating to a constellation communication-navigation coupled mission scheduling method based on load balancing. Background Technology

[0002] As lunar exploration missions continue, including NASA's Artemis program, China's International Lunar Research Station (ILRS), and ESA's Lunar Village concept, the demand for a lunar communication and navigation constellation network is becoming increasingly urgent. The lunar constellation needs to provide continuous communication and navigation services to diverse users, including manned missions, robotic probes, autonomous vehicles, and resource extraction.

[0003] However, deploying a lunar constellation costs hundreds of millions of dollars per satellite, and orbit transfer takes 3-6 months, making the deployment of separate communication and navigation constellations economically unfeasible. Therefore, lunar satellites must use shared hardware to reuse both communication and navigation services. This resource reuse introduces device-level coupling problems: communication downlinks and navigation broadcasts cannot operate simultaneously, otherwise they will interfere with each other due to power contention and antenna mutual exclusion.

[0004] Specifically, the resource coupling of the lunar constellation manifests in three aspects: (1) Antenna mutual exclusion: communication uses high-gain narrow beam (2-5°) for point-to-point links, while navigation uses omnidirectional broadcast (120°) for ranging. The antenna hardware only supports one mode, and switching requires 5-10 seconds of reconfiguration time; (2) Power budget competition: high-inclination elliptical frozen orbit (ELFO) results in low solar illumination efficiency, which limits the available power. The communication downlink consumes a lot of power for transmit amplifiers and onboard processing, while navigation ranging also requires significant power for signal generation; (3) Computational resource competition: protocol processing, encryption and related engines are shared. In the active ranging architecture using the communication frequency band, channel bandwidth also becomes a competitive resource.

[0005] Existing mission scheduling methods are primarily designed for single-service scenarios in Earth orbit, including deterministic optimization methods (mixed-integer linear programming, constraint satisfaction), metaheuristic algorithms (genetic algorithms, particle swarm optimization), and machine learning methods (deep reinforcement learning). However, these methods assume that communication and navigation operate independently, which is feasible in Earth orbit but not suitable for lunar constellations that require service integration.

[0006] The current operational implementation employs a split planning approach inherited from the Earth system: the first phase schedules communication tasks to optimize throughput; the second phase schedules navigation tasks using the remaining capacity. This sequential separation results in severe inefficiency: communication tasks occupy the optimal multi-satellite convergence window in the first phase, leaving only fragmented single-satellite windows for navigation tasks in the second phase, failing to meet the geometric trilateration requirements (requiring ≥3 simultaneously visible satellites with PDOP ≤ threshold). The lunar constellation has a limited size (8-12 satellites, compared to 24+ for GPS), with only 10-15 minute visibility windows in polar regions, and a power budget 30-40% tighter than GEO satellites, exacerbating resource conflicts.

[0007] Therefore, a global optimization scheduling method is needed that can simultaneously consider the coupling relationship between communication and navigation services, achieve efficient resource allocation under device-level constraints, ensure that communication tasks are completed while meeting the geometric accuracy requirements of navigation services, thereby improving the overall task completion rate and resource utilization. Summary of the Invention

[0008] To overcome the shortcomings of existing technologies, improve the efficiency of resource allocation under device-level constraints, and solve the problem of meeting the geometric accuracy requirements of navigation services while ensuring the completion of communication tasks, this invention provides a constellation communication-navigation coupled task scheduling method based on load balancing.

[0009] The technical solution adopted by this invention to solve its technical problem includes the following steps:

[0010] Step 1: Obtain lunar constellation system parameters and mission requirements;

[0011] The lunar constellation system parameters include the satellites in the constellation. ephemeris data, maximum load capacity Communication task set Navigation task set ,Task Minimum service duration required and quality requirements ; For the entire set of tasks; ;

[0012] The ephemeris data includes three-dimensional position and velocity components in the J2000 coordinate system;

[0013] The task requirements include tasks Service types ,Task User location ,Task service window ,Task Minimum service duration required and tasks Quality requirements ;in, Service type for When, then the task The service type is communication task; service type for When, then the task The service type is navigation task; ; For the task The earliest time allowed to start service, For the task The latest time when service must be terminated;

[0014] When the task When the service type is a communication task, the quality requirements are... Minimum carrier-to-noise ratio threshold When the task When the service type is navigation task, the quality requirements are... Maximum position accuracy attenuation factor threshold ;

[0015] Calculate time slots based on ephemeris data. satellite Three-dimensional position in the lunar inertial coordinate system ;

[0016] Based on the three-dimensional position of each satellite and tasks User location Calculate and obtain visibility indicator , , Indicates satellite In the time slot For the task Visible to users Indicates satellite In the time slot For the task Not visible to users;

[0017] If satellite In the time slot For the task If the data is visible to the user, the time slot is calculated based on the distance between the satellite and the user, the satellite's transmit power, and the antenna gain. By satellite Service tasks Predicted carrier-to-noise ratio for real-time communication ;

[0018] If the mission's service type is navigation, then enumerate all simultaneously visible satellite combinations. , and calculate the task Use satellite combination Position accuracy attenuation factor ;

[0019] Assign variables to binary values. , Indicates task In the time slot By satellite Serve, Indicates task In the time slot By satellite No service available;

[0020] Navigational combination variables For navigation tasks In the time slot Should satellite combination be used? , , A satellite constellation consisting of at least three satellites. , For satellite sets; navigation combination variables When the value is 0, satellite combination is not used. Navigation combination variables When the value is 1, use satellite combination. ;

[0021] Task completion indicator variable For the task Does the task meet the requirements? Minimum service duration required , Task completion indicator variable The task is not satisfied when the value is 0. Minimum service duration required Task completion indicator variable The task is satisfied when the value is 1. Minimum service duration required ;

[0022] Divide the runtime timeline into a set of time segment indices of equal length. The time period is Each time period Cross Hour;

[0023] Step 2: Construct a weighted load model;

[0024] The weighted load model includes satellites. In time period Cumulative load ;

[0025] Step 3: Construct a multi-objective mixed-integer linear programming (MILP) model based on the weighted load model;

[0026] The multi-objective mixed-integer linear programming (MILP) model includes decision variables, constraints, and a multi-objective function. The decision variables include binary assignment variables. Navigation combination variables Task completion indicator variables and cumulative load The constraints include visibility constraints, single-satellite service constraints for communication tasks, combined-single-satellite consistency constraints, multi-satellite coordination constraints for navigation tasks, task completion constraints, quality of service constraints, cumulative load capacity constraints over time periods, and deviation decomposition constraints.

[0027] Step 4: Using the multi-objective mixed-integer linear programming (MILP) model and deviation decomposition constraints as input, solve the problem using the MILP solver to obtain the optimal solution; extract the values ​​of all binary assignment variables from the optimal solution, and for each completed task, iterate through all... Find the value of . All triples Thus, the task is determined. In which time slots From which satellite Service; the task to be completed is Task For communication tasks, from continuous Extracting service start and end time slots from the sequence Service satellite ,in For the service start time slot, For the service termination time slot, record the corresponding communication link carrier-to-noise ratio. For navigation tasks, from Extract the navigation satellite combination used The solution results are obtained, and the task is recorded. Use navigation satellite combination Position accuracy attenuation factor .

[0028] Furthermore, the specific steps for constructing the weighted load model are as follows:

[0029] S21: Building the Satellite In the time slot instantaneous load ;

[0030] satellite In the time slot instantaneous load For time slots Internal allocation to satellites The weighted sum of the loads of all tasks is: ;in, For the entire set of tasks;

[0031] For the weight function; when the task When the service type is a communication task, = ; When the task When the service type is navigation task, = , ;

[0032] S22: Divide the runtime timeline into a set of time segment indices of equal length. Each time period Cross Hour; when At that time, each time period Slot subset It includes 120 one-minute time slots;

[0033] S23: Calculating Satellites In time period Cumulative load ,

[0034] satellite In time period Cumulative load Time period The sum of the instantaneous loads of all time slots within the time slot is:

[0035] ;

[0036] ;

[0037] Cumulative load Transform instantaneous load capacity constraints into cumulative capacity constraints at the time-period level, i.e. ;in For satellite Maximum load capacity for each time period.

[0038] Furthermore, the visibility constraints, single-satellite service constraints for communication tasks, combined-single-satellite consistency constraints, multi-satellite coordination constraints for navigation tasks, task completion constraints, quality of service constraints, cumulative load capacity constraints over time periods, and deviation decomposition constraints are respectively:

[0039] The visibility constraint is ,in For visibility indicators, when Forced Ensure the physical feasibility of task allocation;

[0040] The single-satellite service constraint for the communication task is: ;

[0041] The multi-satellite coordination constraint for the navigation task is: ;

[0042] The combined-single-star consistency constraint is: ;

[0043] The task completion constraint is: ,when The total number of service time slots must be no less than ;

[0044] The quality of service constraints include communication task quality constraints and navigation task quality constraints;

[0045] The quality constraint of the communication task is that the communication task... At that time, it was required The quality constraint for the navigation task is that the navigation task... Time requirements ,in The minimum carrier-to-noise ratio threshold. The threshold for the maximum position accuracy attenuation factor;

[0046] The cumulative load capacity constraint for the time period ;

[0047] The deviation decomposition constraint decomposes the load deviation term of each satellite in each time period into the difference between two non-negative components, namely:

[0048] ; , ;

[0049] in For satellite In time period The cumulative load, Time period The average cumulative load of all satellites within the system, As a positive deviation auxiliary variable, As a negative bias auxiliary variable, for each satellite and each time period Positive deviation auxiliary variable Negative bias auxiliary variable Among them, positive deviation auxiliary variables Indicates satellite In time period Cumulative load Higher than the average cumulative load during this period The positive deviation component, the negative deviation auxiliary variable express Below The negative deviation portion.

[0050] Furthermore, the multi-objective function The construction process is as follows:

[0051] Initial multi-objective function for:

[0052] ;

[0053] in For service quality objectives; The target is the task completion rate. For navigation efficiency goals; For load balancing purposes; , , and Constructing a weight vector ,Right now ;in, For service quality objectives The weight, For the task completion rate target The weight, For navigation efficiency goals The weight, For load balancing objectives The weights;

[0054] The service quality objectives for:

[0055] ,in ; Rate the quality of communication; Rate the navigation quality;

[0056] The communication quality score for:

[0057] ;

[0058] The carrier-to-noise ratio of the communication link is normalized and truncated to 2.0, where The total number of communication tasks. This represents the total number of time slots. For time slot set, The carrier-to-noise ratio of the communication link. The minimum carrier-to-noise ratio threshold is used to truncate the upper limit of 2.0 to prevent individual abnormally high carrier-to-noise ratio links from dominating the objective function;

[0059] The navigation quality score for:

[0060] ;

[0061] The position accuracy attenuation factor is normalized after taking its reciprocal and truncated to 3.0, where The total number of navigation tasks. This is the theoretically optimal position accuracy attenuation factor value. ; For navigation tasks Use satellite combination The positional accuracy attenuation factor, with a cutoff upper limit of 3.0, reflects the diminishing returns to accuracy.

[0062] The task completion rate target The percentage of tasks successfully completed is:

[0063] ;

[0064] in The total number of tasks. The task completion indicator variable is controlled by the task completion constraint.

[0065] Navigation efficiency goals for:

[0066] ;

[0067] in This is the reward coefficient; ;

[0068] Through reward coefficient Incentives are given to complete navigation using the fewest possible satellites, among which The number of satellites in the satellite constellation. Indicates navigation task Did the satellite combination work throughout the service window? , Without time slot parameters With time slot level variables Different meanings; when satellites are combined When three satellites are included, the reward coefficient is... The value is 1.0 when the satellite combination is used. When four satellites are included, the reward coefficient is... The value is 0.75, decreasing proportionally for larger combinations;

[0069] Load balancing goals This is the mean of the variances of the cumulative load of each satellite in each time period relative to the average cumulative load in that time period;

[0070] Load balancing goals The original quadratic form is:

[0071] ;

[0072] in For satellite In time period The cumulative load, Time period The average cumulative load of all satellites within the system, The total number of time periods. Total number of satellites;

[0073] Load balancing goals The original quadratic form contains the load deviation term. The square of the equation does not satisfy the requirement of the multi-objective mixed-integer linear programming (MILP) model that all objectives and constraints must be linear, particularly for the load balancing objective. The original quadratic form is optimized to obtain an equivalent linear form. ;

[0074] In the initial multi-objective function In the expression, for the load balancing target The original quadratic form is linearized using the L1 norm to obtain an equivalent linear form. Then use the equivalent linear form. Replace load balancer target The original quadratic form, that is, obtaining the multi-objective function. :

[0075] .

[0076] Furthermore, the weight vector The value can be: .

[0077] Furthermore, regarding the load balancing objective The original quadratic form is optimized to obtain an equivalent linear form. The steps are as follows:

[0078] ;

[0079] in The total number of time periods. Given the total number of satellites, the linearized form under the minimization objective is... Accurately recover the absolute deviation value at the optimal solution. ,Right now It is exactly true, not approximate, and does not introduce any approximation error.

[0080] The present invention has the following beneficial effects:

[0081] (1) Resolving coupling conflicts: Replacing separate planning with global collaborative optimization, while considering the resource requirements and geometric constraints of communication and navigation tasks, avoids the problem of navigation task failure caused by communication tasks occupying key multi-star convergence windows in separate planning.

[0082] (2) Improve overall performance: through load balancing objectives Driven by spatiotemporal redistribution, it implicitly preserves the multi-satellite convergence window required for navigation—because if a large number of communication tasks are concentrated on satellites within a multi-satellite convergence window, it will cause an imbalance where these satellites are overloaded while other satellites are idle, and load balancing is the goal. Minimizing this imbalance naturally avoids over-occupancy of multi-star convergence windows; experiments show that the overall task completion rate is improved by an average of 12.3 percentage points, and the navigation task completion rate is improved from 50.0% to 92.9% (30 task scale).

[0083] (3) Load balancing optimization: by minimizing the load balancing target (That is, minimizing the cumulative load deviation between satellites) the mission is redistributed from overloaded satellites to less loaded satellites, reducing the load variation coefficient by 66%-88% and avoiding uneven resource utilization.

[0084] (4) Mathematical rigor: The load balancing objective is linearized using the L1 norm. The original quadratic form is exactly converted into the linear form. This achieves a globally optimal solution within the MILP framework while ensuring the accuracy of the solution.

[0085] (5) Scalability: The method is applicable to different scales of 30-120 tasks and obtains a high-quality scheduling scheme within an acceptable computation time. Attached Figure Description

[0086] Figure 1 This is a schematic diagram of the lunar communication-navigation constellation system architecture of the present invention;

[0087] Figure 2 This is a flowchart of the coupled task scheduling method based on load balancing of the present invention;

[0088] Figure 3 This is a flowchart of the MILP model construction and solution process of this invention;

[0089] Figure 4 A graph showing the comparison of overall task completion rates under different task sizes;

[0090] Figure 5 A comparison chart of the completion rates of communication and navigation tasks;

[0091] Figure 6 This is a comparison of the coefficient of variation distribution for load balancing; where, Figure 6 (a) is the load variation coefficient when the task size is 30. Figure 6 (b) is the load variation coefficient when the task size is 50. Figure 6 (c) is the load variation coefficient when the task size is 70. Figure 6 (d) is the load variation coefficient when the task size is 120;

[0092] Figure 7 This is a heatmap showing the spatiotemporal distribution of satellite payload in a large-scale scenario (N=120); among which, Figure 7 (a) is a heatmap of satellite payload distribution optimized globally by MILP. Figure 7 (b) is a heat map of satellite payload distribution optimized for two-stage separation. Figure 7 (c) is a heatmap of load difference distribution with coupled global and separate optimization. Detailed Implementation

[0093] The present invention will be further described below with reference to the accompanying drawings and embodiments.

[0094] The data processing flow of the method of this invention is as follows: First, the three-dimensional position of each satellite in each time slot is calculated based on the satellite ephemeris orbital propagation. Then, a visibility indicator is calculated based on the satellite's three-dimensional position and the user's position. Communication link carrier-to-noise ratio Position accuracy attenuation factor when combined with navigation satellites As known parameters; then, a unified weighted load model is established through weighted aggregation, converting heterogeneous resource consumption into a scalar load metric; next, a multi-objective mixed-integer linear programming (MILP) model is constructed, where the load balancing objective is... Because it contains quadratic terms, it needs to be transformed into an equivalent linear form using the L1 norm linearization transformation. Finally, the optimal binary allocation variable is obtained by solving the problem using the MILP solver. Take the value from triples Extract the service satellites and service time slots for each mission to generate a scheduling table.

[0095] The technical solution of this invention to solve the above-mentioned technical problems is a constellation communication-navigation coupled task scheduling method based on load balancing, comprising the following steps:

[0096] S1: Obtain lunar constellation system parameters and mission requirements;

[0097] The lunar constellation system parameters include the satellites in the constellation. ephemeris data, maximum load capacity Communication task set Navigation task set ,Task Minimum service duration required and quality requirements ; For the entire set of tasks; ;

[0098] The ephemeris data includes three-dimensional position and velocity components in the J2000 coordinate system;

[0099] The task requirements include tasks Service types ,Task User location ,Task service window ,Task Minimum service duration required and tasks Quality requirements ; Service type for When, then the task The service type is communication task; service type for When, then the task The service type is navigation task; ; For the task The earliest time allowed to start service, For the task The latest time when service must end; task Minimum service duration required Indicates task The minimum total number of time slots that need to be served, in terms of time slots;

[0100] When the task When the service type is a communication task, the quality requirements are... Minimum carrier-to-noise ratio threshold When the task When the service type is navigation task, the quality requirements are... Maximum position accuracy attenuation factor threshold ;

[0101] Calculate time slots based on ephemeris data. satellite Three-dimensional position in the lunar inertial coordinate system ;

[0102] Based on the three-dimensional position of each satellite and tasks User location Calculate and obtain visibility indicator , , Indicates satellite In the time slot For the task Visible to users Indicates satellite In the time slot For the task Invisible to the user; visibility indicator Determine the three-dimensional position of the satellite With user location Is the line connecting them obscured by the lunar sphere?

[0103] If satellite In the time slot For the task If the data is visible to the user, the time slot is calculated based on the distance between the satellite and the user, the satellite's transmit power, and the antenna gain. By satellite Service tasks Predicted carrier-to-noise ratio for real-time communication ;

[0104] If the mission's service type is navigation, then enumerate all simultaneously visible satellite combinations. , and calculate the task Use satellite combination Position accuracy attenuation factor ;

[0105] Divide the runtime timeline into a set of time segment indices of equal length. The time period is Each time period Cross Hour;

[0106] S2: Construct a weighted load model, which includes satellites. In time period Cumulative load ;

[0107] The weighted load model converts the heterogeneous resource consumption of communication and navigation tasks into a unified scalar load metric through weighted aggregation, and uses a time segmentation mechanism to convert instantaneous resource conflicts into cumulative capacity constraints. The heterogeneous resource consumption includes power, antenna time, and computing resources.

[0108] The specific steps for constructing a weighted load model are as follows:

[0109] S21: Building the Satellite In the time slot instantaneous load ;

[0110] satellite In the time slot instantaneous load For time slots Internal allocation to satellites The weighted sum of the loads of all tasks is: ;in, For the entire set of tasks;

[0111] in Assign variables to binary values. , Indicates task In the time slot By satellite Serve, This indicates that the service is unavailable.

[0112] For the weight function; when the task When the service type is a communication task, = ; When the task When the service type is navigation task, = , ;

[0113] The weighting ratio for navigation tasks is ,when At that time, the weight ratio represents the actual hardware resource consumption of the communication task being about 20% higher than that of the navigation task. The weight ratio is obtained by empirical calibration of the transmit power amplifier gain and the computational load of onboard signal processing.

[0114] S22: Divide the runtime timeline into a set of time segment indices of equal length. Each time period Cross Hour; when At that time, each time period Slot subset It includes 120 one-minute time slots;

[0115] Divide the runtime into equal-length time segments, each segment... Spanning 2 hours and including time slot subsets The 120 one-minute time slots in the two-hour time period balance time flexibility and capacity control. The time period length is much longer than the duration of a single communication task and navigation task. The duration of a communication task is about 5 minutes and the duration of a navigation task is about 10 minutes. This allows multiple tasks to be executed interleaved within the segment without direct conflict, while also avoiding excessive length to prevent the load peak caused by a longer aggregation window from being masked by averaging.

[0116] S23: Calculating Satellites In time period Cumulative load ,

[0117] satellite In time period Cumulative load Time period The sum of the instantaneous loads of all time slots within the time slot is:

[0118] ; ;

[0119] Cumulative load Transforming instantaneous load capacity constraints into cumulative capacity constraints at the time-period level is... ;in For satellite The maximum load capacity for each time period, the physical meaning of this conversion is: as long as the satellite In time period The total weighted service time within the satellite does not exceed Maximum capacity Communication and navigation tasks can coexist within a segment through time-interleaving;

[0120] S3: Construct a multi-objective mixed-integer linear programming (MILP) model based on a weighted load model, unifying the allocation of communication and navigation tasks into a single optimization framework for global solution, specifically including:

[0121] The multi-objective mixed-integer linear programming (MILP) model includes decision variables, constraints, and a multi-objective function. ;

[0122] S31: The decision variables include binary assignment variables. Navigation combination variables Task completion indicator variables and cumulative load ;

[0123] Binary assignment variable Indicates task In the time slot Whether by satellite In the service, the binary assignment variable is the core decision variable in the multi-objective mixed integer linear programming (MILP) model, and the optimal value of the binary assignment variable directly determines the final scheduling scheme.

[0124] Navigational combination variables Indicates navigation task In the time slot Should satellite combination be used? , , A satellite constellation consisting of at least three satellites. For satellite collection, Satellite combination Provides multi-satellite positioning services;

[0125] Task completion indicator variable Indicates task Does the task meet the requirements? Minimum service duration required , ;

[0126] Cumulative load Indicates satellite In time period Cumulative load; ;in It is the set of nonnegative real numbers in mathematics.

[0127] S32: The constraints include visibility constraints, single-satellite service constraints for communication tasks, combined-single-satellite consistency constraints, multi-satellite coordination constraints for navigation tasks, task completion constraints, quality of service constraints, and cumulative load capacity constraints over a time period.

[0128] The visibility constraint is ,in For visibility indicators, when Forced Ensure the physical feasibility of task allocation;

[0129] The single-satellite service constraint for the communication task is: The single-satellite service constraint for communication tasks indicates that a communication task can be served by at most one satellite in each time slot, reflecting the point-to-point link characteristic of communication.

[0130] The multi-satellite coordination constraint for the navigation task is: The multi-satellite coordination constraint for navigation missions means that a navigation mission can select at most one combination of satellites in each time slot;

[0131] Combinatorial-single-star consistency constraint is The combination-single star consistency constraint establishes the logical consistency between the combination-level description and the single-star description of the navigation task;

[0132] Task completion constraints are ,in For the task Minimum number of service slots required For the task The service window, when The total number of service time slots must be no less than ;

[0133] Quality of service constraints include communication task quality constraints and navigation task quality constraints;

[0134] The quality constraint of the communication task is that the communication task is in At that time, it was required The quality constraint for navigation tasks is the task When performing a navigation task, Time requirements ,in The minimum carrier-to-noise ratio threshold. The threshold for the maximum position accuracy attenuation factor;

[0135] The cumulative load capacity constraint over the time period is ;

[0136] S33: Constructing a multi-objective function :

[0137] ;

[0138] in For service quality objectives; The target is the task completion rate. For navigation efficiency goals; For load balancing purposes; , , and Constructing a weight vector ,Right now ;

[0139] The service quality objectives for:

[0140] ,in ; Rate the quality of communication; Rate the navigation quality;

[0141] The communication quality score for:

[0142] ;

[0143] The carrier-to-noise ratio was normalized and truncated to 2.0, where The total number of communication tasks. This represents the total number of time slots. For time slot set, The carrier-to-noise ratio of the communication link. The minimum carrier-to-noise ratio threshold is used to truncate the upper limit of 2.0 to prevent individual abnormally high carrier-to-noise ratio links from dominating the objective function;

[0144] The navigation quality score for:

[0145] ;

[0146] The position accuracy attenuation factor is normalized after taking its reciprocal and truncated to 3.0, where The total number of navigation tasks. This is the theoretically optimal position accuracy attenuation factor value. ; For the task For navigation missions, satellite ensembles are used. The positional accuracy attenuation factor, with a cutoff upper limit of 3.0, reflects the diminishing returns to accuracy.

[0147] The task completion rate target The percentage of tasks successfully completed is:

[0148] ;

[0149] in The total number of tasks. The task completion indicator variable is controlled by the task completion constraint.

[0150] Navigation efficiency goals for:

[0151] ;

[0152] in This is the reward coefficient; ;

[0153] Through reward coefficient Incentives are given to complete navigation using the fewest possible satellites, among which The number of satellites in the satellite constellation. Indicates task For navigation missions, was a satellite constellation used across the entire service window? , Without time slot parameters With time slot level variables Different meanings; when satellites are combined When three satellites are included, the reward coefficient is... The value is 1.0 when the satellite combination is used. When four satellites are included, the reward coefficient is... The value is 0.75, decreasing proportionally for larger combinations;

[0154] Load balancing goals This is the mean of the variances of the cumulative load of each satellite in each time period relative to the average cumulative load in that time period;

[0155] Load balancing goals The original quadratic form is:

[0156] ;

[0157] in For satellite In time period The cumulative load, Time period The average cumulative load of all satellites within the system, The total number of time periods. Total number of satellites; The term takes a negative sign in a multi-objective function because a smaller load variance indicates a more uniform load, which is beneficial when maximizing the overall objective. Minimize when needed Load balancing objectives The original quadratic form contains the load deviation term. The square of the equation does not satisfy the requirement of the multi-objective mixed integer linear programming (MILP) model that all objectives and constraints must be linear, and a linear transformation is required to meet the requirement.

[0158] Weight vector Prioritizing each objective, this invention takes... Set the task completion rate target and load balancing target Set as the primary optimization objective, task completion rate target Weights and load balancing objectives The weights for all are 0.4, and the service quality objective is... and navigation efficiency goals Set as an auxiliary optimization goal, service quality goal Weighting and navigation efficiency objectives The weights are all 0.1, reflecting the priority requirement in actual operation to "first ensure that as many tasks as possible are served, while avoiding satellite overload";

[0159] S4: For load balancing targets The original quadratic form is linearized using the L1 norm to transform the load balancing objective. The original quadratic form is transformed into an equivalent linear form. To meet the solution requirements of the multi-objective mixed-integer linear programming (MILP) model, an optimized multi-objective mixed-integer linear programming (MILP) model is obtained; in the multi-objective mixed-integer linear programming (MILP) model... , and And all constraints have met the linearity requirement, only the load balancing objective remains. Linearization is required;

[0160] Specifically, it includes:

[0161] S41: Introduce positive deviation auxiliary variables and negative bias auxiliary variables ;

[0162] For each satellite and each time period Positive deviation auxiliary variable Negative bias auxiliary variable Among them, positive deviation auxiliary variables Indicates satellite In time period Cumulative load Higher than the average cumulative load during this period The positive deviation component, the negative deviation auxiliary variable express Below The negative deviation portion;

[0163] S42: Add deviation decomposition constraints;

[0164] The bias decomposition constraint decomposes the load bias term of each satellite in each time period into the difference between two non-negative components, namely:

[0165] ; , ;

[0166] The deviation decomposition constraint is a linear equality constraint;

[0167] S43: Target the load balancing load The original quadratic form is replaced by the linearized form. That is, to obtain the optimized multi-objective mixed integer linear programming (MILP) model;

[0168] ;

[0169] in The total number of time periods. Given the total number of satellites, the linearized form under the minimization objective is... Accurately recover the absolute deviation value at the optimal solution. ,Right now It is exactly true, not approximate, and does not introduce any approximation error;

[0170] Load balancing goals linearized form The optimal solution contains an exact value for the following reasons: Under the minimization objective, the optimizer tends to make the value more precise. Minimize as much as possible; assume that in the optimal solution, a certain satellite During a certain period of time of and Established at the same time, Construct a new solution and , , ,because The new solution still satisfies the deviation decomposition constraint, and , The non-negativity requirement is satisfied, however, the objective value of the new solution is... It is strictly smaller than the original solution, which contradicts the fact that the original solution is the optimal solution; therefore, in the optimal solution... and At most one is greater than zero. Combining the deviation decomposition constraint, we can obtain: If but , ;like but , Both cases have Exactly true;

[0171] S5: Using the optimized multi-objective mixed-integer linear programming (MILP) model and deviation decomposition constraints as input, solve the problem using the MILP solver to obtain the optimal solution; extract the values ​​of all binary assignment variables from the optimal solution, and for each completed task, iterate through all... Find the value of . All triples Thus, the task is determined. In which time slots From which satellite Service; the task to be completed is Task For communication tasks, from continuous Extracting service start and end time slots from the sequence Service satellite ,in For the service start time slot, For the service termination time slot, record the corresponding communication link carrier-to-noise ratio. For navigation tasks, from Extract the navigation satellite combination used The solution results are obtained, and the task is recorded. Use navigation satellite combination Position accuracy attenuation factor ;

[0172] S51: Output scheduling table;

[0173] The scheduling table is a two-dimensional table structure, with each row corresponding to a completed task. ,Right now Each row of the scheduling table contains tasks. number Service Type Assigned service satellite number Navigation satellite combination Service start time slot Service termination time slot Measured values ​​of quality requirements; assigned service satellite numbers Depend on Confirm; Task For navigation missions, navigation satellite array Depend on Confirm; Service start time slot In order to make The smallest Confirmed; Service termination slot In order to make The largest Decision; when the task The measured quality requirement for communication tasks is... When the task The measured quality requirement for navigation tasks is [value]. The scheduling table is the final output of the method of this invention. It converts the abstract binary variable values ​​returned by the solver into equipment-level work instructions that can be directly executed by the operation control system. The scheduling table can be directly sent to the satellite's onboard computer for execution.

[0174] S6: Output scheduling results and perform performance evaluation, specifically including:

[0175] S61: Output scheduling table, which is divided into communication task scheduling sub-table and navigation task scheduling sub-table;

[0176] S62: Computational performance metrics;

[0177] Performance metrics include overall task completion rate Communication task completion rate Navigation task completion rate and load balancing coefficient of variation ;

[0178] ;

[0179] ;

[0180] ;

[0181] ;

[0182] Among them, The number of tasks completed. This represents the total number of tasks. and For all satellites All time periods Cumulative load Standard deviation and mean A smaller value indicates a more uniform load distribution. This corresponds to the ideal state where all satellites have the same load at all times.

[0183] S63: Verify the feasibility of the scheduling table;

[0184] Check for any violations of constraints such as the same satellite being assigned to multiple resource-conflicting and mutually exclusive tasks in the same time slot, tasks being assigned during invisible periods, service quality being below the threshold, or cumulative load exceeding the capacity limit over a time period.

[0185] To evaluate the effectiveness and scalability of the method proposed in this invention, numerical experiments were conducted on four task scales: All task sets were generated using a uniform random seed (seed=6) to ensure experimental repeatability, and the ratio of communication tasks to navigation tasks remained consistent at approximately 54.5:45.5 across all scales.

[0186] Figure 1 This is a schematic diagram of the lunar communication-navigation constellation system architecture of the present invention; Figure 2 This is a flowchart of the coupled task scheduling method based on load balancing of the present invention, showing the process from input data (ephemeris data, task requirements) through orbit propagation pre-calculation, weighted load model establishment, multi-objective mixed integer linear programming (MILP) model construction, and load balancing objective. The complete data flow from solving the linearized, multi-objective mixed-integer linear programming (MILP) model to the final output scheduling table;

[0187] Figure 3 This is a flowchart illustrating the construction and solution process of the multi-objective mixed integer linear programming (MILP) model of this invention, showing the definition of decision variables, the establishment of constraints, the construction of multi-objective functions, and the load balancing objective. The detailed process of L1 norm linearization transformation and scheduling table generation;

[0188] Constellation configuration: 8 ELFO orbit satellites ( The orbital period is 12 hours, the perigee altitude is 300 km, and the perigee argument is 90°. The right ascension (RAAN) and true anomaly (TA) configurations of the eight satellites are shown in Table 1. This configuration enables testing in the test area (near the lunar south pole, latitude...). to ) 80%-87.2% coverage.

[0189] Table 1. Satellite orbital elements of the constellation

[0190]

[0191] Mission Setup: Missions are located near the lunar south pole (latitude) to ), service window Randomly generated within 1-2 hour intervals based on visibility constraints. Minimum service duration required for the communication task. The minimum service duration required for a navigation task is approximately 5 time slots (5 minutes). Approximately 10 time slots (10 minutes each). Service quality requirements are randomly generated within acceptable operational limits. Tasks are unevenly distributed over time, exhibiting a significant peak demand between 12:00 and 16:00 Lunar local time. With more than 20 concurrent tasks, a challenge was created for load balancing. The effect of concentrated load.

[0192] Baseline approach: A split-planning approach is used as the baseline for comparison: In the first phase, communication task scheduling is optimized separately and load balancing constraints are applied; in the second phase, navigation tasks are scheduled on the remaining capacity determined in the first phase without modifying the communication task allocation decision made in the first phase.

[0193] Solver configuration: All MILP models are implemented using the PuLP modeling interface and solved using the CBC solver. The runtime environment is an AMD Ryzen 7 5800H (3.20 GHz, 16 GB RAM). The solver MIPGap is set to 0.01, and the time limit is 600 seconds. ), 900 seconds ), 1800 seconds ), 3600 seconds ).

[0194] Example of scheduling table output: For example, the scheduling table generated in step S53 contains 29 rows (corresponding to 29 completed tasks). The schedule table contains 16 rows for communication tasks and 13 rows for navigation tasks. Each row records the task number, service type, serving satellite number, satellite combination (navigation task), service start and end time slots, and quality parameter values. This schedule table can be directly sent to the onboard computer of each satellite for execution.

[0195] Experimental Results – Task Completion Rate: (e.g.) Figure 4 As shown, coupled programming outperforms decoupled programming in overall task completion across all scales: At that time, 96.7% was compared to 76.7% (an increase of 20.0 percentage points). The percentage was 94.0% compared to 76.0% (an increase of 18.0 percentage points). The percentage was 94.3% compared to 85.7% (an increase of 8.6 percentage points). The percentage of respondents who agreed with the assessment was 87.5% compared to 85.0% (an increase of 2.5 percentage points), with an average increase of 12.3 percentage points.

[0196] like Figure 5 The breakdown analysis shows that the performance improvement mainly comes from navigation tasks. The completion rate of communication tasks is close to 100% in both methods because communication tasks only require service from a single satellite, and resource requirements are easily met. The completion rate of navigation tasks, however, shows a significant difference: coupled planning in... The rate reached 92.9%, compared to 50.0% for the separate planning approach (an increase of 42.9 percentage points). The accuracy rate was 87.0% compared to 47.8% (an increase of 39.2 percentage points). The root cause of the gap lies in the preservation of the multi-satellite convergence window: navigation and positioning require at least three simultaneously visible satellites. In the first phase, the split-planning approach allocates communication tasks to multi-satellite convergence periods, leaving only fragmented single-satellite windows for navigation tasks in the second phase, which cannot meet geometric requirements. Coupled-planning, on the other hand, addresses this by using load balancing objectives. Minimizing this redistributes tasks from congested periods to less busy periods, avoiding excessive occupation of multi-satellite convergence windows and thus preserving the multi-satellite visibility conditions required for navigation. As task size increases (…), 87.5% vs. 68.8% (72.7% vs. 67.3%), the improvement was less significant because the task density was gradually approaching the physical capacity limit of the constellation.

[0197] The overall performance comparison is shown in Table 2.

[0198] Table 2 Comparison of overall performance under different task scales

[0199]

[0200] Experimental Results – Load Balancing: (e.g.) Figure 6 As shown, coupled planning achieves a lower coefficient of load variation across all scales: The improvement was 88.7% (0.041 vs. 0.360). The improvement was 12.0% (0.054 vs. 0.062). The improvement was 57.5% (0.036 vs. 0.085). The improvement was 0.068 compared to 0.201 (66.0%).

[0201] Figure 7 Showing The spatiotemporal distribution of satellite payload at that time. For example... Figure 7 As shown in (a), the coupled programming maintains a balanced distribution with a coefficient of variation of 0.068, and the cumulative load of each satellite is in the range of 50-150 units. Figure 7 As shown in (b), the split-planning exhibits severe load concentration during peak hours (2-4 PM), with satellites 4 and 5 carrying nearly 600 units, far exceeding the loads of other satellites. Figure 7 As shown in (c), the difference diagram clearly reveals the redistribution mechanism of the coupled planning: in the time dimension, tasks are shifted from crowded peak periods to adjacent less loaded periods; in the spatial dimension, tasks are distributed from overloaded satellites to satellites throughout the constellation.

Claims

1. A constellation communication-navigation coupled task scheduling method based on load balancing, characterized in that, Includes the following steps: Step 1: Obtain lunar constellation system parameters and mission requirements; The lunar constellation system parameters include the satellites in the constellation. ephemeris data, maximum load capacity Communication task set Navigation task set ,Task Minimum service duration required and quality requirements ; For the entire set of tasks; ; The ephemeris data includes three-dimensional position and velocity components in the J2000 coordinate system; The task requirements include tasks Service types ,Task User location ,Task service window ,Task Minimum service duration required and tasks Quality requirements ;in, Service type for When, then the task The service type is communication task; service type for When, then the task The service type is navigation task; ; For the task The earliest time allowed to start service, For the task The latest time when service must be terminated; When the task When the service type is a communication task, the quality requirements are... Minimum carrier-to-noise ratio threshold When the task When the service type is navigation task, the quality requirements are... Maximum position accuracy attenuation factor threshold ; Calculate time slots based on ephemeris data. satellite Three-dimensional position in the lunar inertial coordinate system ; Based on the three-dimensional position of each satellite and tasks User location Calculate and obtain visibility indicator , , Indicates satellite In the time slot For the task Visible to users Indicates satellite In the time slot For the task Not visible to users; If satellite In the time slot For the task If the data is visible to the user, the time slot is calculated based on the distance between the satellite and the user, the satellite's transmit power, and the antenna gain. By satellite Service tasks Predicted carrier-to-noise ratio for real-time communication ; If the mission's service type is navigation, then enumerate all simultaneously visible satellite combinations. and calculate the task Use satellite combination Position accuracy attenuation factor ; A satellite constellation consisting of at least three satellites, i.e. , Assign variables to binary values. , Indicates task In the time slot By satellite Serve, Indicates task In the time slot By satellite No service available; Navigational combination variables Indicates task When the service type is navigation task, in time slot Should satellite combination be used? , , , For satellite sets; navigation combination variables When the value is 0, satellite combination is not used. Navigation combination variables When the value is 1, use satellite combination. ; Task completion indicator variable For the task Does the task meet the requirements? Minimum service duration required , Task completion indicator variable The task is not satisfied when the value is 0. Minimum service duration required Task completion indicator variable The task is satisfied when the value is 1. Minimum service duration required ; Divide the runtime timeline into a set of time segment indices of equal length. The time period is Each time period Cross Hour; Step 2: Construct a weighted load model; The weighted load model includes satellites. In time period Cumulative load ; The specific steps for constructing the weighted load model are as follows: S21: Building the Satellite In the time slot instantaneous load ; satellite In the time slot instantaneous load For time slots Internal allocation to satellites The weighted sum of the loads of all tasks is: ;in, For the entire set of tasks; For the weight function; when the task When the service type is a communication task, = ; When the task When the service type is navigation task, = , ; S22: Divide the runtime timeline into a set of time segment indices of equal length. Each time period Cross Hour; when At that time, each time period Slot subset It includes 120 one-minute time slots; S23: Calculating Satellites In time period Cumulative load , satellite In time period Cumulative load Time period The sum of the instantaneous loads of all time slots within the time slot is: ; ; Cumulative load Transform instantaneous load capacity constraints into cumulative capacity constraints at the time-period level, i.e. ;in For satellite Maximum load capacity for each time period; Step 3: Construct a multi-objective mixed-integer linear programming (MILP) model based on the weighted load model; The multi-objective mixed-integer linear programming (MILP) model includes decision variables, constraints, and a multi-objective function. The decision variables include binary assignment variables. Navigation combination variables Task completion indicator variables and cumulative load The constraints include visibility constraints, single-satellite service constraints for communication tasks, combined-single-satellite consistency constraints, multi-satellite coordination constraints for navigation tasks, task completion constraints, quality of service constraints, cumulative load capacity constraints over time periods, and deviation decomposition constraints. Step 4: Using the multi-objective mixed-integer linear programming (MILP) model and deviation decomposition constraints as input, solve the problem using the MILP solver to obtain the optimal solution; extract the values ​​of all binary assignment variables from the optimal solution, and for each completed task, iterate through all... Find the value of . All triples Thus, the task is determined. In which time slots From which satellite Service; the task to be completed is Task For communication tasks, from continuous Extracting service start and end time slots from the sequence Service satellite ,in For the service start time slot, For the service termination time slot, record the corresponding communication link carrier-to-noise ratio. For navigation tasks, from Extract the navigation satellite combination used The solution results are obtained, and the task is recorded. Use navigation satellite combination Position accuracy attenuation factor .

2. The constellation communication-navigation coupled task scheduling method based on load balancing according to claim 1, characterized in that, The visibility constraint, single-satellite service constraint for communication tasks, combined-single-satellite consistency constraint, multi-satellite coordination constraint for navigation tasks, task completion constraint, quality of service constraint, cumulative load capacity constraint over time period, and deviation decomposition constraint are as follows: The visibility constraint is ,in For visibility indicators, when Forced Ensure the physical feasibility of task allocation; The single-satellite service constraint for the communication task is: ; The multi-satellite coordination constraint for the navigation task is: ; The combined-single-star consistency constraint is: ; The task completion constraint is: ,when The total number of service time slots must be no less than ; The quality of service constraints include communication task quality constraints and navigation task quality constraints; The quality constraint of the communication task is that the communication task... At that time, it was required The quality constraint for the navigation task is that the navigation task... Time requirements ,in The minimum carrier-to-noise ratio threshold. The threshold for the maximum position accuracy attenuation factor; The cumulative load capacity constraint for the time period ; The deviation decomposition constraint decomposes the load deviation term of each satellite in each time period into the difference between two non-negative components, namely: ; 、 ; in For satellite In time period The cumulative load, Time period The average cumulative load of all satellites within the system, As a positive deviation auxiliary variable, As a negative bias auxiliary variable, for each satellite and each time period Positive deviation auxiliary variable Negative bias auxiliary variable Among them, positive deviation auxiliary variables Indicates satellite In time period Cumulative load Higher than the average cumulative load during this period The positive deviation component, the negative deviation auxiliary variable express Below The negative deviation portion.

3. The constellation communication-navigation coupled task scheduling method based on load balancing according to claim 1, characterized in that, The multi-objective function The construction process is as follows: Initial multi-objective function for: ; in For service quality objectives; The target is the task completion rate. For navigation efficiency goals; For load balancing purposes; , , and Constructing a weight vector ,Right now ;in, For service quality objectives The weight, For the task completion rate target The weight, For navigation efficiency goals The weight, For load balancing objectives The weights; The service quality objectives for: ,in ; Rate the quality of communication; Rate the navigation quality; The communication quality score for: ; The carrier-to-noise ratio of the communication link is normalized and truncated to 2.0, where The total number of communication tasks. This represents the total number of time slots. For time slot set, The carrier-to-noise ratio of the communication link. The minimum carrier-to-noise ratio threshold is used to truncate the upper limit of 2.0 to prevent individual abnormally high carrier-to-noise ratio links from dominating the objective function; The navigation quality score for: ; The position accuracy attenuation factor is normalized after taking its reciprocal and truncated to 3.0, where The total number of navigation tasks. This is the theoretically optimal position accuracy attenuation factor value. ; Indicates task When the service type is navigation task, the task Use satellite combination The positional accuracy attenuation factor, with a cutoff upper limit of 3.0, reflects the diminishing returns to accuracy. The task completion rate target The percentage of tasks successfully completed is: ; in The total number of tasks. The task completion indicator variable is controlled by the task completion constraint. Navigation efficiency goals for: ; in This is the reward coefficient; ; Through reward coefficient Incentives are given to complete navigation using the fewest possible satellites, among which The number of satellites in the satellite constellation. Indicates task For navigation missions, was a satellite constellation used across the entire service window? When satellite combination When three satellites are included, the reward coefficient is... The value is 1.0 when the satellite combination is... When four satellites are included, the reward coefficient is... It is 0.75; Load balancing goals This is the mean of the variances of the cumulative load of each satellite in each time period relative to the average cumulative load in that time period; Load balancing goals The original quadratic form is: ; in For satellite In time period The cumulative load, Time period The average cumulative load of all satellites within the system, The total number of time periods. Total number of satellites; In the initial multi-objective function In the expression, for the load balancing target The original quadratic form is linearized using the L1 norm to obtain an equivalent linear form. Then use the equivalent linear form. Replace load balancer target The original quadratic form, that is, obtaining the multi-objective function. : 。 4. The constellation communication-navigation coupled task scheduling method based on load balancing according to claim 3, characterized in that, For load balancing objectives The original quadratic form is linearized using the L1 norm to obtain an equivalent linear form. The process is as follows: ; in The total number of time periods. Given the total number of satellites, the linearized form under the minimization objective is... Accurately recover the absolute deviation value at the optimal solution. ,Right now It is exactly true, not approximate, and does not introduce any approximation error.

5. A constellation communication-navigation coupled task scheduling method based on load balancing according to claim 3, characterized in that, The weight vector The value can be: .

6. A storage medium, characterized in that, It stores a computer program, which, when executed by a processor, implements the steps of the constellation communication-navigation coupled task scheduling method based on load balancing as described in any one of claims 1-5.

7. A terminal device, comprising a processor, a memory, and a computer program stored in the memory; characterized in that, When the processor executes a computer program, it implements a constellation communication-navigation coupled task scheduling method based on load balancing as described in any one of claims 1-5.