Heuristic on-satellite autonomous task planning method based on maneuvering path and time

Through the heuristic on-board autonomous mission planning method based on maneuver path and time, the problem of difficulty in generating a reasonable and efficient observation mission sequence in the existing technology is solved, the satellite autonomous calculation mission sequence is realized, and the mission execution efficiency is improved.

CN119338195APending Publication Date: 2025-01-21BEIJING INST OF CONTROL ENG
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411512750.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-10-28
Publication Date
2025-01-21

AI Technical Summary

Technical Problem

The prior art is difficult to comprehensively consider the multiple attributes of the task to generate reasonable and efficient observation task sequences.

Method used

The independent task planning method based on the mobility path and time on the star on the star is adopted. Through initialization tasks and task sequences, selecting tasks, determining the insertion position, and verifying, a reasonable observation task sequence is finally generated.

Benefits of technology

The satellite independent computing task sequence has been realized, the demand for ground computing and coordinated resources has been reduced, the task execution efficiency is improved, and tasks that can be prioritized to be prioritized can be executed.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119338195A_ABST
    Figure CN119338195A_ABST
Patent Text Reader

Abstract

A heuristic on-satellite autonomous task planning method based on maneuvering path and time comprehensively considers task priority, task selection times, imaging time and inter-task attitude switching maneuvering capability, and arranges an observation task sequence satisfying satellite maneuvering capability. The method is high in expansibility, other judgment criteria can be conveniently added, task sequence arrangement meeting multiple constraints is achieved, and the method is verified through on-orbit practical application and has good applicability.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention relates to a heuristic on-board autonomous mission planning method based on a maneuvering path and time, belonging to the technical field of remote sensing satellite autonomous mission planning. Background Art

[0002] For the autonomous mission planning software equipped on the satellite, the software can receive ground remote control injection tasks or intersatellite real-time guidance tasks, and realize the imaging and image data storage of the target tasks by coordinating the onboard control system, camera payload system, and data transmission system. For the observation tasks received, in addition to calculating the order of observable time based on satellite orbit information and mission geographical location, factors such as the priority and execution times of the tasks themselves must also be considered. Therefore, how to comprehensively consider the multiple attributes of the tasks and generate a reasonable and efficient observation task sequence is a problem worth studying. Summary of the invention

[0003] The technical problem to be solved by the present invention is: to overcome the deficiencies of the prior art and solve the problem of how to comprehensively consider multiple attributes of the task and generate a reasonable and efficient observation task sequence, which is a problem worthy of study.

[0004] The purpose of the present invention is achieved through the following technical solutions:

[0005] A heuristic on-board autonomous mission planning method based on maneuvering path and time, comprising:

[0006] (1) Initialize tasks and task sequences based on the variables that define the tasks;

[0007] (2) Select and mark the tasks in the task sequence according to the reference priority of the tasks and the number of times the tasks have been selected;

[0008] (3) Determine the candidate insertion position in the task sequence for the selected task;

[0009] (4) Verify the insertion position based on the alternative insertion position, and output the newly sorted task number sequence, the number of task selections, and the new original task number sequence.

[0010] An electronic device, comprising:

[0011] Processor; and

[0012] a memory for storing computer program instructions;

[0013] When the computer program instructions are loaded and executed by the processor, the processor executes the above-mentioned heuristic on-board autonomous mission planning method based on maneuvering path and time.

[0014] A computer-readable storage medium stores computer program instructions, which, when loaded and executed by a processor, cause the processor to execute the above-mentioned heuristic on-board autonomous mission planning method based on maneuvering path and time.

[0015] A computer program product stored on a non-transitory computer-readable medium includes program codes for implementing the above-mentioned heuristic on-board autonomous mission planning method based on maneuvering path and time.

[0016] Compared with the prior art, the present invention has the following beneficial effects:

[0017] (1) Satellites can perform subsequent autonomous calculations by annotating information on observation missions, thus avoiding excessive manpower and time consumption by ground-based calculations and resource coordination;

[0018] (2) Task sorting is divided into two steps. First, tasks are traversed and screened based on reference priority and task execution times, and then post-processed. The processing logic is simple and easy to implement, ensuring that tasks with high priority can be executed;

[0019] (3) According to the imaging time and the time to arrive at the posture, the candidate tasks are traversed and the evaluation value is introduced to determine the candidate insertion position, so as to generate a temporary observation sequence quickly;

[0020] (4) By traversing the candidate insertion positions and introducing an evaluation function based on the description of the maneuverability of inter-task posture switching, a reasonable imaging task sequence is generated. BRIEF DESCRIPTION OF THE DRAWINGS

[0021] Figure 1 The figure is a flow chart of the steps of the method of the present invention. DETAILED DESCRIPTION

[0022] To make the objectives, technical solutions and advantages of the present invention more clear, the embodiments of the present invention will be further described in detail below with reference to the accompanying drawings.

[0023] A heuristic on-board autonomous task planning method based on maneuvering path and time comprehensively considers task priority, number of task selections, imaging time, and maneuverability of attitude switching between tasks to arrange an observation task sequence that meets the satellite's maneuverability. This method has strong scalability and can easily add other criteria to achieve task sequence arrangement that meets multiple constraints. It has been verified by actual satellite in-orbit application and has good applicability.

[0024] The following will be combined with the attached Figure 1 The embodiments of the present invention are described in further detail, specifically including:

[0025] (1) Task definition and related sequence initialization.

[0026] If the imaging task is not bound, define the original task Task

[0027] Task={ID,LLA[3],Te,Ts,Att,PRIC,N_Exe};

[0028] Where ID is the task number; LLA[3] is the longitude, latitude and altitude of the task; Te is the attitude arrival time, Ts is the imaging time, Att is the imaging attitude, PRIC is the priority, the larger the number, the higher the priority; N_Exe is the number of times the task is selected.

[0029] Define the original task number sequence: TaskSets_GD

[512] . This array stores the index of the original task received on the satellite in the Task array, which can be used to index the corresponding original task.

[0030] Define the sorted task number sequence: TaskSets_SE

[512] , initialized to an empty set.

[0031] (2) Task selection.

[0032] Select the reference priority from high to low, and traverse all tasks in TaskSets_GD in sequence. If the task priority PRIC is the same as the reference priority, and the number of times the task is selected N_Exe is less than the expected number, then select it.

[0033] (3) Determine the task insertion position.

[0034] Based on the task n2_ist selected in step (2), the insertion position of the new task in the sequence TaskSets_SE is determined by the following steps:

[0035] 31) Define the insertion position record array InPosSetS, which can store multiple alternative insertion positions and can be defined as a 1*20 array with an initial value of -1.

[0036] 32) If there is no task in the sequence TaskSets_SE, it is necessary to calculate the interval tm_have between the imaging time corresponding to the task and the planned start time, and then calculate the time tm_need required to complete the task n2_ist posture maneuver. If tm_need is less than tm_have, the task can be inserted, otherwise it is deleted.

[0037] 33) If there is only one task ni in the sequence, compare the imaging time of the task n2_ist to be inserted with the existing task ni. If the time of the task n2_ist to be inserted is earlier, insert the task before ni, otherwise put it after ni. If there are two or more tasks in the sequence, traverse the tasks in the sequence and make the following judgments:

[0038] 34) Let the m_seth element in the sequence TaskSets_SE be task ni and the m_se+1th element be task nj. Then determine the following four conditions:

[0039] a. The imaging time of task n2_ist is greater than the posture arrival time of task ni;

[0040] b. The imaging time of task nj is greater than the posture arrival time of task n2_ist;

[0041] c. The imaging time of task n2_ist is greater than the imaging time of task ni;

[0042] d. The imaging time of task nj is greater than the imaging time of task n2_ist;

[0043] If the above four conditions are met at the same time, it means that the position can be inserted, and its insertion position m_se is added to InPosSetS. If not, it means that the current task cannot be inserted, and no subsequent processing is performed, and jump to step (2) to select the next task.

[0044] 35) If the task can be inserted, construct the inserted sequence TmpTaskSets according to the task sequence TaskSets_SE and the insertion position m_se. Traverse the tasks in the sequence and calculate the insertion evaluation function Fun1. The calculation method is:

[0045] a. First traverse from the m_se+1 task to the last task in the sequence, then traverse from the first task to the m_se-1 task, and perform the following calculations:

[0046] theta_ij=theta_ij+dtheta+0.00055*mkw*dt;

[0047] Among them, dtheta is the angle between the vector of the previous task and the vector of the next task, dt is the difference between the imaging time of the previous task and the next task, and mkw is the time weighting coefficient. The evaluation value is stored in the array Js.

[0048] b. After traversing the sequence TaskSets_SE, if n insertion positions are found, assign them to the InPosSetS array, and the corresponding evaluation values ​​are stored in the Js array. Arrange the positions in InPosSetS from small to large according to the values ​​in Js, and keep at most the first 6 results. In this way, the candidate insertion positions of task n2_ist are listed in order according to the insertion evaluation values.

[0049] (4) Task insertion verification.

[0050] If the task insertion positions are selected earlier, these positions need to be verified. The verification method is as follows:

[0051] 41) Save the imaging time of the sequence TaskSets_SE for subsequent recovery when the insertion fails.

[0052] 42) Traverse the positions in InPosSetS from front to back, generate a temporary sequence TmpTaskSets by inserting the position and the sequence TaskSets_SE, traverse TmpTaskSets, and determine whether two adjacent tasks can be connected in posture according to the maximum posture maneuverability. The evaluation function can be defined as Fun2(Att1, Att2). If the evaluation function value is greater than a certain threshold, the insertion position can be selected, the task can be inserted into the task sequence, and the loop can be jumped out, otherwise the imaging time of the sequence TaskSets_SE is restored.

[0053] (5) Task insertion post-processing.

[0054] If the above imaging planning task is inserted successfully, the task selection times N_Exe will be increased by 1. If the task selection times have reached the upper limit, the task index number will be deleted from TaskSets_GD.

[0055] The contents not described in detail in the specification of the present invention belong to the common knowledge of those skilled in the art.

[0056] Although the present invention has been disclosed as above in the form of a preferred embodiment, it is not intended to limit the present invention. Any person skilled in the art may make possible changes and modifications to the technical solution of the present invention by using the methods and technical contents disclosed above without departing from the spirit and scope of the present invention. Therefore, any simple modifications, equivalent changes and modifications made to the above embodiments based on the technical essence of the present invention without departing from the content of the technical solution of the present invention shall fall within the protection scope of the technical solution of the present invention.

Claims

1. A heuristic on-board autonomous mission planning method based on maneuvering path and time, characterized in that: include: (1) Initialize tasks and task sequences based on the variables that define the tasks; (2) Select and mark the tasks in the task sequence according to the reference priority of the tasks and the number of times the tasks have been selected; (3) Determine the candidate insertion position in the task sequence for the selected task; (4) Verify the insertion position based on the alternative insertion position, and output the newly sorted task number sequence, the number of task selections, and the new original task number sequence.

2. The heuristic on-board autonomous mission planning method according to claim 1, characterized in that: In step (1), define the original task Task Task={ID,LLA[3],Te,Ts,Att,PRIC,N_Exe}; Where ID is the task number; LLA[3] is the longitude, latitude and altitude of the task; Te is the attitude arrival time, Ts is the imaging time, Att is the imaging attitude, PRIC is the priority, the larger the number, the higher the priority; N_Exe is the number of times the task is selected; Define the original task number sequence: TaskSets_GD[512], which stores the subscripts of the original tasks received on the satellite in the Task array, and is used to index the corresponding original tasks; Define the sorted task number sequence: TaskSets_SE[512], initialized to an empty set.

3. The heuristic on-board autonomous mission planning method according to claim 2, characterized in that: In step (2), select the reference priority from high to low, and traverse all tasks in TaskSets_GD in sequence. If the task priority PRIC is the same as the reference priority, and the number of times the task is selected N_Exe is less than the expected number, then select it.

4. The heuristic on-board autonomous mission planning method according to claim 3, characterized in that: In step (3), based on the task n2_ist selected in step (2), the insertion position of the new task in the sequence TaskSets_SE is determined by the following steps: 31) Define the insertion position record array InPosSetS, which stores multiple candidate insertion positions and is defined as a 1*20 array with an initial value of -1; 32) If there is no task in the sequence TaskSets_SE, it is necessary to calculate the interval tm_have between the imaging time corresponding to the task and the planned start time, and then calculate the time tm_need required to complete the task n2_ist posture maneuver. If tm_need is less than tm_have, the task is inserted, otherwise it is deleted. 33) If there is only one task ni in the sequence, compare the imaging time of the task n2_ist to be inserted with the existing task ni. If the time of the task n2_ist to be inserted is earlier, insert the task before ni, otherwise put it after ni; if there are two or more tasks in the sequence, traverse the tasks in the sequence and make the following judgment: 34) Let the m_seth element in the sequence TaskSets_SE be task ni and the m_se+1th element be task nj. Then determine the following four conditions: a. The imaging time of task n2_ist is greater than the posture arrival time of task ni; b. The imaging time of task nj is greater than the posture arrival time of task n2_ist; c. The imaging time of task n2_ist is greater than the imaging time of task ni; d. The imaging time of task nj is greater than the imaging time of task n2_ist; If the above four conditions are met at the same time, it means that the position can be inserted, and its insertion position m_se is added to InPosSetS; if not, it means that the current task cannot be inserted, and no subsequent processing is performed, and jump to step (2) to select the next task; 35) If the task can be inserted, construct the inserted sequence TmpTaskSets according to the task sequence TaskSets_SE and the insertion position m_se; traverse the tasks in the sequence and calculate the insertion evaluation function Fun1, the calculation method is: a. First traverse from the m_se+1 task to the last task in the sequence, then traverse from the first task to the m_se-1 task, and perform the following calculations: theta_ij=theta_ij+dtheta+0.00055*mkw*dt; Among them, dtheta is the angle between the vector of the previous task and the vector of the next task, dt is the difference between the imaging time of the previous task and the next task, and mkw is the time weighting coefficient; the evaluation value is stored in the array Js; b. After traversing the sequence TaskSets_SE, if n insertion positions are found, assign them to the InPosSetS array, and the corresponding evaluation values ​​are stored in the Js array; arrange the positions in InPosSetS from small to large according to the values ​​in Js, and retain at most the first 6 results; in this way, the alternative insertion positions of task n2_ist are listed in sequence according to the insertion evaluation values.

5. The heuristic on-board autonomous mission planning method according to claim 4, characterized in that: In step (4), if the task insertion positions are selected previously, these positions need to be verified; the verification method is as follows: 41) Save the imaging time of the sequence TaskSets_SE for subsequent recovery when the insertion fails; 42) Traverse the positions in InPosSetS from front to back, generate a temporary sequence TmpTaskSets by inserting the position and the sequence TaskSets_SE, traverse TmpTaskSets, and determine whether the two adjacent tasks can be connected in posture according to the maximum posture maneuverability. The evaluation function is defined as Fun2(Att1, Att2). If the evaluation function value is greater than a certain threshold, the insertion position is selected, the task is inserted into the task sequence, and the loop is exited, otherwise the imaging time of the sequence TaskSets_SE is restored.

6. The heuristic on-board autonomous mission planning method according to claim 5, characterized in that: If the imaging planning task is inserted successfully, the task selection times N_Exe will be increased by 1; if the task selection times have reached the upper limit, the task index number will be deleted from TaskSets_GD.

7. An electronic device comprising: processor; as well as a memory for storing computer program instructions; When the computer program instructions are loaded and executed by the processor, the processor performs the method according to any one of claims 1 to 6.

8. A computer-readable storage medium having computer program instructions stored thereon, wherein when the computer program instructions are loaded and executed by a processor, the processor is caused to execute the method according to any one of claims 1 to 6.

9. A computer program product stored on a non-transitory computer readable medium, the computer program product comprising a program code for carrying out the method according to any one of claims 1 to 6.