Rocket transit observation point calculation method, device and equipment and storage medium
By adaptively adjusting the inertia weights and learning factors using the particle swarm optimization algorithm, combined with hybridization operations, a fitness function is constructed, and a hierarchical search strategy is employed. This solves the problem of rapid, accurate, and automated calculation of rocket transit/lunar observation points, achieving efficient optimal observation point positioning.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- CHINESE PEOPLES LIBERATION ARMY UNIT 63636
- Filing Date
- 2026-03-26
- Publication Date
- 2026-06-19
AI Technical Summary
Existing technologies lack fast, accurate, and automated methods for calculating the optimal observation point for rocket transits to the sun/moon. In particular, they are difficult to solve in highly dynamic, strongly nonlinearly coupled, and inverse optimization problems, resulting in high computational complexity and low efficiency of traditional methods.
The particle swarm optimization algorithm is adopted. By adaptively adjusting the inertia weight and learning factor and combining the hybridization operation, a fitness function is constructed with the observation point as the decision variable and the view angle as the objective function. The hierarchical search strategy is used to solve for the optimal observation point, gradually narrowing the search area and improving the computational efficiency.
It enables rapid, accurate, and automated calculation of rocket transit/lunar observation points, significantly improving multi-moon calculation efficiency and reducing the search range from tens of kilometers to hundreds of meters, ensuring the location of the best global observation point.
Smart Images

Figure CN122242559A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of aerospace technology, and more specifically, to a method, apparatus, equipment, and storage medium for calculating rocket transit / lunar transit observation points. Background Technology
[0002] In the field of space photography, successfully capturing the "rocket transit through the sun / moon" phenomenon—the instant a launch vehicle passes precisely across the surface of the sun or moon from a specific ground observation point during its flight—possesses significant scientific, artistic, and popular science value. Such images can be used not only to invert real-time rocket orbital parameters, verify the accuracy of flight control systems, and study aerodynamic effects such as supersonic shock waves, but also to provide unique calibration opportunities for astrometry. Furthermore, their strong visual impact makes them excellent materials for science communication and artistic creation, widely applicable to space launch observation, astronomical education, scientific data collection, and commercial space photography services.
[0003] However, this phenomenon is fleeting, and the key to its successful capture lies in accurately determining the optimal observation point on the ground. This observation point must meet a stringent geometric condition: within the brief time window of the rocket's flight past the sun or moon, the angle between the line-of-sight vector pointing from that point to the rocket and the line-of-sight vector pointing to the center of the celestial body reaches a global minimum, ideally approaching 0°. Essentially, this is a highly complex dynamic, nonlinear, and inverse optimization problem, extremely difficult to solve for the following reasons: (1) Strong dynamics: It involves two high-speed moving bodies. The rocket flies rapidly along the predetermined trajectory, and its position changes rapidly over time; at the same time, affected by the Earth's rotation, revolution and the orbital motion of celestial bodies, the azimuth and pitch angles of the sun or moon relative to any fixed point on the ground also change continuously and nonlinearly.
[0004] (2) Strong nonlinear coupling: There is no analytical mapping relationship between the geographic coordinates (longitude, latitude, altitude) of the observation point and the final viewing angle. Multiple coordinate system transformations (such as geocentric coordinate system ECEF → station-centered coordinate system ENU → azimuth / elevation angle) introduce complex trigonometric functions and matrix operations, resulting in the objective function exhibiting highly non-convex and multi-peak characteristics.
[0005] (3) Inverse nature and ill-posedness: Traditional methods are good at solving "forward problems" (given an observation point, calculate the angle of view at any time), while this problem is an "inverse problem"—given a rocket trajectory and celestial ephemeris, find the observation point that minimizes the angle of view. Such problems usually have multiple local optima and are sensitive to initial conditions, and are typical ill-posed problems.
[0006] (4) High-dimensional search space and computational complexity: The effective search area is usually an area with a side length of tens of kilometers centered on the launch site. If the traditional gridded exhaustive search method is used to achieve meter-level positioning accuracy (necessary for high-quality transit / lunar photography), the computational load will increase exponentially, which is not practically feasible.
[0007] In the existing technology, there is a lack of automated planning methods for ground observation points specifically for the transit of solar / lunar phenomena of high-speed launch vehicles. Existing related technologies can be mainly divided into the following categories, but all of them have obvious limitations and cannot meet the high-precision, high-efficiency, and automated reverse planning requirements of this invention: The first category consists of specialized aerospace mission simulation and analysis software, such as Systems Tool Kit (STK) and Aerospace Toolkit (ATK). This type of software possesses powerful orbital mechanics and astrometry capabilities. Users can input fixed ground station coordinates to accurately calculate the line-of-sight vector and its angle between the point of view from that station to a space target (such as a rocket) and a celestial body (the Sun / Moon) at any given time. However, its functionality is limited to solving a "forward problem"—that is, given an observation point, it outputs the angle; it lacks the ability to search for the globally optimal observation position that minimizes the line-of-sight angle within continuous geographic space.
[0008] The second category consists of professional astrophotography planning tools, such as PhotoPills, The Photographer's Ephemeris (TPE), and Planit Pro. This type of software is geared towards landscape and astrophotographers, and can predict the positions and compositional relationships of celestial bodies such as the sun and moon based on a set time and location. Some support aligning static foreground objects (such as mountains and buildings) with celestial bodies. However, their core algorithms are based on the assumption that the geographical location of the foreground target remains constant, making them completely incapable of handling high-speed dynamic targets like rockets that traverse hundreds of kilometers in minutes. Furthermore, their celestial position calculations typically use simplified models, making it difficult to meet the accuracy requirements of the apparent angle for transit / lunar events (usually better than 0.1°), and they also lack reverse optimization capabilities.
[0009] The third category consists of public-facing astronomical transit forecasting platforms, such as "AstronomyTong" and the Heavens-Above website. These tools can forecast transits or transits of near-Earth objects such as the International Space Station (ISS) and satellites at locations specified by the user. However, the prerequisite is that the user must provide the coordinates of the observation point in advance. The system can only make single-point forward forecasts and cannot reverse-engineer the optimal observation location.
[0010] The fourth type is the traditional gridded exhaustive search method: A predefined area (e.g., a 50 km × 50 km area centered on the launch tower) is divided into a uniform grid. For each grid point, the entire rocket trajectory is traversed, and the apparent angle between the point and the rocket and celestial bodies is calculated at each time step. Finally, the point corresponding to the smallest global angle is selected as the optimal observation point. While the principle of this method is simple, its computational complexity is extremely high. To achieve meter-level positioning accuracy, approximately 2.5 billion grid points need to be evaluated over a 50 km area. Each point requires multiple coordinate system transformations and the use of high-precision ephemeris data to calculate the celestial body's position. A single complete calculation is extremely time-consuming, making it practically infeasible in real-world applications.
[0011] Therefore, there is an urgent need for a method that can quickly, accurately, and automatically calculate the optimal observation point for rocket transits to the sun / moon. Summary of the Invention
[0012] The problem addressed by this invention is how to achieve rapid, accurate, and automated calculation of the optimal observation point for rocket transits to the sun / moon.
[0013] To address the aforementioned problems, this invention provides a method, apparatus, equipment, and storage medium for calculating rocket transit / lunar transit observation points.
[0014] In a first aspect, the present invention provides a method for calculating the observation points of a rocket transiting the sun / moon, including: The rocket's flight trajectory data, celestial ephemeris data, and observation area are acquired; the celestial body is the Sun or the Moon; the observation area includes at least a first observation area and a second observation area, the range of the second observation area being smaller than the range of the first observation area. Construct a fitness function with the observation point as the decision variable and the apparent angle between the line-of-sight vector of the rocket observed from the observation point and the line-of-sight vector of the observed celestial body as the objective function; For multiple observation times, a particle swarm optimization algorithm is used to sequentially solve for the optimal observation point at each observation time. Specifically, for the first observation time, the fitness function is optimized within a first observation region to obtain a first optimal observation point. For the second observation time, the optimal observation point obtained at the first observation time is used as the search origin, and the fitness function is optimized within a second observation region to obtain a second optimal observation point. For each observation time after the second observation time, the optimal observation point corresponding to each observation time after the second observation time is predicted according to geometric constraint rules based on the optimal observation points corresponding to the two observation times preceding each observation time. In each iteration, the particle swarm optimization algorithm adaptively adjusts the inertia weight and learning factor to update the particle velocity and updates the particle position through a hybridization operation, thereby finding the particle that minimizes the viewing angle. The position of the obtained particle is then taken as the optimal observation point at the current observation time.
[0015] Optionally, the construction of a fitness function that uses the observation point as the decision variable and the apparent angle between the line-of-sight vector of the rocket observed from the observation point and the line-of-sight vector of the observed celestial body as the objective function includes: Convert the geodetic coordinates of the observation points to coordinates in the Earth-fixed rectangular coordinate system; Based on the rocket's position at a specific moment, calculate the line-of-sight vector from the observation point to the rocket, and convert the line-of-sight vector into a unit vector in the stationary coordinate system to obtain the rocket's line-of-sight unit vector; Based on the celestial ephemeris and the location of the observation point, the apparent position of the celestial body relative to the observation point at the specific moment is calculated, and the apparent position is converted into a unit vector in the stationary coordinate system to obtain the unit vector of the celestial body's line of sight. Determine the angle between the rocket's line-of-sight unit vector and the celestial body's line-of-sight unit vector to obtain the fitness value of the observation point at that specific moment.
[0016] Optionally, the adaptive adjustment of inertia weights specifically includes: In each iteration, the population diversity index of the current particle swarm is determined by the ratio of the standard deviation to the mean of the optimal fitness of all individual particles. The inertia weight of the current iteration is dynamically adjusted based on the current iteration number, the maximum iteration number, the population diversity index, and the preset initial and final values of the inertia weight. The adjusted inertia weights are substituted into the particle velocity update formula to update the velocity of each particle; wherein the particle velocity update formula is as follows: ; in, Inertial weight; Let $\frac{j}{j}$ be the velocity of the $j$-th particle during the $k$-th iteration. Let j be the position of the j-th particle; This represents the optimal position in the individual particle's history. The globally optimal position; For individual learning factors; As a social learning factor; , It is a random number.
[0017] Optionally, the adaptive adjustment of the learning factor specifically includes: In each iteration, the individual learning factor is dynamically adjusted based on the current iteration number n and the maximum iteration number N. Social learning factors : ; ; in, This is the initial value of the individual learning factor; This is the termination value of the individual learning factor; This is the initial value for the social learning factor; This is the termination value for the social learning factor; Adjusted individual learning factors Social learning factors Substitute the values into the particle velocity update formula to update the velocity of each particle; wherein the particle velocity update formula is as follows: ; in, Inertial weight; Let $\frac{j}{j}$ be the velocity of the $j$-th particle during the $k$-th iteration. Let j be the position of the j-th particle; This represents the optimal position in the individual particle's history. The globally optimal position; For individual learning factors; As a social learning factor; , It is a random number.
[0018] Optionally, updating the particle position through hybridization specifically includes: Perform a hybridization operation once every preset number of iterations: Step S1: Sort all particles according to their fitness values in the current iteration, select the top 30% of particles by fitness as the parent candidate set, and select the bottom 30% of particles by fitness as the individuals to be replaced. Step S2: Randomly select two particles from the parent candidate set, and generate the position and velocity of the offspring particles according to the following arithmetic crossover formula: ; ; in, The position of the offspring particle; This represents the position of one of the two particles; The position of the other particle among the two particles; A random number between (0, 1); The velocity of the offspring particles; The velocity of one of the two particles; The velocity of the other particle out of the two particles; Step S3: Replace the individual to be replaced in step S1 with the generated offspring particles.
[0019] Optionally, the particle swarm optimization algorithm further includes: When the number of iterations exceeds 50% of the maximum number of iterations, for particles whose current fitness values rank in the bottom 20%, new positions are randomly generated within a neighborhood of radius R around the current global best position gbest, where R is 10% of the initial search region's side length. If the fitness value of the particle at the new position is better than that of the particle at the original position, then the particle at the new position replaces the particle at the original position; and / or, In each iteration, the population diversity index D is determined. If the population diversity index D is less than the preset threshold and the current iteration number exceeds 1 / 3 of the maximum iteration number, the positions and velocities of 30% of the particles other than the globally optimal particle are reinitialized.
[0020] Secondly, the present invention provides a rocket transit / lunar transit observation point calculation device, comprising: The acquisition module is used to acquire rocket flight trajectory data, celestial ephemeris data, and the observation area; the celestial body is the sun or the moon; The function construction module is used to construct a fitness function with the observation point as the decision variable and the apparent angle between the line-of-sight vector of the rocket observed from the observation point and the line-of-sight vector of the observed celestial body as the objective function. The optimal observation point determination module is used to sequentially solve for the optimal observation point at each observation time using a particle swarm optimization algorithm. Specifically, for the first observation time, the fitness function is optimized within a first observation region to obtain a first optimal observation point. For the second observation time, the optimal observation point obtained at the first observation time is used as the search origin, and the fitness function is optimized within a second observation region to obtain a second optimal observation point. For each observation time after the second observation time, the optimal observation point for each subsequent observation time is predicted according to geometric constraint rules based on the optimal observation points corresponding to the two observation times preceding each observation time. In each iteration, the particle swarm optimization algorithm updates the particle velocity by adaptively adjusting the inertia weight and the learning factor, and updates the particle position through a hybridization operation, finding the particle that minimizes the view angle, and using the position of the solved particle as the optimal observation point for the current observation time.
[0021] Thirdly, the present invention provides an electronic device, including a memory and a processor; The memory is used to store computer programs; The processor is configured to, when executing the computer program, implement the rocket transit / lunar transit observation point calculation method as described in the first aspect.
[0022] Fourthly, the present invention provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the method for calculating rocket transit / lunar transit observation points as described in the first aspect.
[0023] The beneficial effects of the rocket transit / lunar transit observation point calculation method, device, equipment, and storage medium of the present invention are as follows: It acquires rocket trajectory, high-precision ephemeris, and observation area, laying a precise data foundation for calculation; it constructs a fitness function with observation point as decision variable and apparent angle as objective function, transforming the inverse problem into a solvable optimization model; for multiple observation times, it adopts a hierarchical search strategy to solve for the optimal observation point. The first observation time involves a large-scale search to ensure global coverage; the second observation time uses the result of the first observation time as the origin to narrow the range; and from the third observation time onwards, it further compresses the search area based on the geometric predictions of the first two observation times, gradually reducing the search range from tens of kilometers to hundreds of meters, significantly improving the computational efficiency across multiple observation times; during the search at each observation time, the particle swarm optimization algorithm balances global exploration and local development through adaptive inertial weights, optimizes the search path through time-varying learning factors, and maintains population diversity through hybridization operations, ensuring rapid location of the globally optimal observation point within a large spatial range. Attached Figure Description
[0024] Figure 1 This is a flowchart illustrating a method for calculating rocket transit / lunar transit observation points according to an embodiment of the present invention; Figure 2 A schematic diagram showing the angle between the direction vector pointing from the candidate observation point to the rocket and the direction vector pointing to the celestial body; Figure 3 A flowchart illustrating a method for constructing a fitness function according to one embodiment; Figure 4 A flowchart illustrating an embodiment of an adaptive adjustment method for inertia weights; Figure 5 A flowchart illustrating a method for adaptively adjusting the learning factor according to one embodiment; Figure 6 A flowchart illustrating a progressive search process in one embodiment; Figure 7 This is a schematic diagram illustrating how the global optimum of the apparent angle between the three best observation points before rocket flight changes with the number of iterations, according to one embodiment. Figure 8 This is a schematic diagram of the structure of a rocket transit / lunar transit observation point calculation device according to an embodiment of the present invention; Figure 9This is a schematic diagram of the structure of an electronic device according to an embodiment of the present invention. Detailed Implementation
[0025] To make the above-mentioned objects, features, and advantages of the present invention more apparent and understandable, specific embodiments of the present invention will be described in detail below with reference to the accompanying drawings. Although some embodiments of the present invention are shown in the drawings, it should be understood that the present invention can be implemented in various forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided to provide a more thorough and complete understanding of the present invention. It should be understood that the accompanying drawings and embodiments of the present invention are for illustrative purposes only and are not intended to limit the scope of protection of the present invention.
[0026] It should be understood that the various steps described in the method embodiments of the present invention may be performed in different orders and / or in parallel. Furthermore, the method embodiments may include additional steps and / or omit the steps shown. The scope of the present invention is not limited in this respect.
[0027] The term "comprising" and its variations as used herein are open-ended, meaning "including but not limited to"; the term "based on" means "at least partially based on"; the term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments"; and the term "optionally" means "optional embodiments". Definitions of other terms will be given in the following description. It should be noted that the concepts of "first," "second," etc., mentioned in this invention are used only to distinguish different devices, modules, or units, and are not intended to limit the order of functions performed by these devices, modules, or units or their interdependencies.
[0028] It should be noted that the terms "a" and "a plurality of" used in this invention are illustrative rather than restrictive. Those skilled in the art should understand that, unless otherwise expressly indicated in the context, they should be understood as "one or more".
[0029] The names of the messages or information exchanged between the multiple devices in the embodiments of the present invention are for illustrative purposes only and are not intended to limit the scope of these messages or information.
[0030] It should be noted that the specific numerical values involved in this invention are merely illustrative and are not intended to strictly limit the scope of protection of this invention. Guided by the basic principles of this invention, those skilled in the art can make appropriate adjustments or changes to the numerical values according to actual application scenarios or design requirements, and these adjusted or changed numerical schemes should still fall within the scope of protection of this invention.
[0031] like Figure 1As shown in this embodiment of the invention, a method for calculating rocket transit / lunar transit observation points includes the following steps: Step S100: Acquire the rocket's flight trajectory data, celestial ephemeris data, and the observation area. The celestial body is either the Sun or the Moon.
[0032] Specifically, three types of basic data need to be obtained: first, the rocket's flight trajectory data, which is usually given as a coordinate sequence in the geocentric-fixed coordinate system (ECEF), such as one position point per second; second, celestial ephemeris data, preferably using high-precision planetary ephemeris tables such as JPLDE421 or DE440, to accurately calculate the spatial position of the sun or moon at any given time; and third, the geographical information of the observation area, that is, the range for searching the best observation point, such as a rectangular area with a side length of 50 kilometers centered on the rocket launch tower.
[0033] Step S200: Construct a fitness function with the observation point as the decision variable and the apparent angle between the line-of-sight vector of the rocket observed from the observation point and the line-of-sight vector of the observed celestial body as the objective function.
[0034] Specifically, in the particle swarm optimization algorithm, each particle represents a candidate solution. In this embodiment, each particle represents the geographical coordinates (longitude, latitude, and elevation) of a candidate observation point. To simplify calculations, the elevation is fixed as the average altitude of the observation area or the altitude of the launch site. The fitness function is the criterion for evaluating the quality of a candidate observation point; specifically, such as... Figure 2 As shown, the fitness function is the angle θ between the direction vector from the candidate observation point to the rocket and the direction vector to the celestial body (sun / moon). The smaller θ is, the closer the candidate observation point is to the ideal position of the transit of the sun / moon, that is, the closer it is to the optimal observation point.
[0035] Step S300: For multiple observation times, the particle swarm optimization algorithm is used to sequentially solve for the optimal observation point for each observation time. Specifically, for the first observation time, the fitness function is optimized within the first observation region to obtain the first optimal observation point. For the second observation time, the optimal observation point obtained from the first observation time is used as the search origin, and the fitness function is optimized within the second observation region to obtain the second optimal observation point. For each observation time after the second observation time, the optimal observation point corresponding to each observation time after the second observation time is predicted according to the geometric constraint rules based on the optimal observation points corresponding to the two observation times before each observation time. In each iteration, the particle swarm optimization algorithm updates the particle velocity by adaptively adjusting the inertia weight and the learning factor, and updates the particle position by hybridization operation, solving for the particle that minimizes the viewing angle, and taking the position of the solved particle as the optimal observation point for the current observation time.
[0036] Specifically, the process of solving the problem using the particle swarm optimization algorithm begins with the initial generation of multiple particles (e.g., 40) randomly generated within the observation area, each representing a candidate observation point. Then, through iterative updates of particle positions and velocities, the entire particle swarm gradually converges towards the region with the optimal fitness value. To enable the algorithm to perform both rapid searching over a large area and precise localization within the optimal region, this invention improves upon existing particle swarm optimization algorithms: it adaptively adjusts inertia weights and learning factors to balance global exploration and local exploitation, and uses crossover operations to maintain population diversity and avoid getting trapped in local optima. Finally, when the algorithm converges, the location of the globally optimal particle is the optimal observation point for the solution.
[0037] In this embodiment, rocket trajectory, high-precision ephemeris, and observation area are acquired to lay a precise data foundation for calculations. A fitness function is constructed with the observation point as the decision variable and the viewing angle as the objective function, transforming the inverse problem into a solvable optimization model. For multiple observation times, a hierarchical search strategy is adopted to find the optimal observation point. The first observation time involves a large-scale search to ensure global coverage. The second observation time uses the result of the first observation time as the origin to narrow the search area. From the third observation time onwards, the search area is further compressed based on the geometric predictions of the first two observation times, gradually reducing the search range from tens of kilometers to meters, significantly improving the computational efficiency across multiple observation times. During the search at each observation time, the particle swarm optimization algorithm balances global exploration and local development through adaptive inertial weights, optimizes the search path through time-varying learning factors, and maintains population diversity through hybridization operations, ensuring rapid location of the globally optimal observation point within a large spatial range.
[0038] Optionally, such as Figure 3 As shown, a fitness function is constructed with the observation point as the decision variable and the apparent angle between the line-of-sight vector of the rocket observed from the observation point and the line-of-sight vector of the observed celestial body as the objective function. This includes the following steps: Step S310: Convert the geodetic coordinates of the observation point to coordinates in the Earth-fixed rectangular coordinate system.
[0039] Specifically, geodetic coordinates are longitude, latitude, and elevation coordinates; that is, the location of an observation point is generally given in the form of longitude, latitude, and elevation. The Earth-Fixed Rectangular Coordinate System (ECEF) is a coordinate system with its origin at the Earth's center, the Z-axis pointing to the North Pole, and the X-axis pointing to the intersection of the Prime Meridian and the Equator. Rocket trajectories are usually given in ECEF coordinates; therefore, it is necessary to convert the geodetic coordinates of the observation point to ECEF coordinates in order to perform vector operations within the same coordinate system.
[0040] Specifically, the geodetic coordinates (longitude l, latitude b, elevation h) of the observation point are converted to Earth-fixed rectangular coordinates (X, Y, Z). The conversion formula can use the parameters of the CGCS-2000 ellipsoid model, and the specific expression is as follows: ; ; ; In the formula, l is longitude, b is latitude, h is elevation, and X, Y, Z are coordinates in the Earth-fixed rectangular coordinate system; 'a' is the Earth's semi-major axis. It is the square of the first eccentricity.
[0041] Step S320: Based on the rocket's position at a specific moment, calculate the line-of-sight vector from the observation point to the rocket, and convert the line-of-sight vector into a unit vector in the stationary coordinate system to obtain the rocket's line-of-sight unit vector.
[0042] The station-centered coordinate system (ENU) is a coordinate system where the E-axis points east, the N-axis points north, and the U-axis points to the zenith. By transforming the line-of-sight vector from the ground-fixed rectangular coordinate system to the station-centered coordinate system, the azimuth and elevation angles can be obtained intuitively.
[0043] Specifically, first, calculate the distance from observation point P to the rocket at a specific moment. ( The relative position vector of the rocket's position at launch zero: .in, For the rocket at a specific moment Location, Let P be the coordinates of the observation point in the Earth-fixed rectangular coordinate system. For observation point P, the rocket at a specific moment ( The relative position vector of the rocket's position at launch zero (i.e., the line-of-sight vector from the observation point to the rocket).
[0044] Then, Transform from the Earth-fixed rectangular coordinate system to the station-centered coordinate system to obtain the vector. The conversion formula is as follows: ; Where R is the rotation matrix. , Let P be the longitude of the observation point. Let P be the latitude of the observation point.
[0045] Finally, the vector Normalization is performed to obtain the rocket's line-of-sight unit vector. .
[0046] Step S330: Based on the celestial ephemeris and the location of the observation point, calculate the apparent position of the celestial body relative to the observation point at a specific moment, and convert the apparent position into a unit vector in the stationary coordinate system to obtain the unit vector of the celestial body's line of sight.
[0047] Specifically, the positions of celestial objects are calculated using the DE421 precise ephemeris published by JPL (this ephemeris has a calculation error of better than 1 arcsecond for the apparent position of the Moon and even higher accuracy for the position of the Sun, fully meeting the high-precision requirements for calculating the apparent angle of transit / lunar phenomena), given the observation point. Using mature astronomical algorithms, the location and environmental parameters (temperature, air pressure) of celestial bodies are calculated to determine their position. Time relative to a given observation point From the view position, obtain its azimuth angle. and pitch angle ; azimuth angle and pitch angle Convert to unit vector in station-centered coordinate system The conversion formula is as follows: .
[0048] Step S340: Determine the angle between the rocket's line-of-sight unit vector and the celestial body's line-of-sight unit vector to obtain the fitness value of the observation point at a specific moment.
[0049] Specifically, the angle between the rocket's line-of-sight unit vector and the celestial body's line-of-sight unit vector. The formula can be used to calculate it: ; in, The unit vector of the line of sight to celestial bodies. This is the unit vector representing the rocket's line of sight.
[0050] In this optional embodiment, by establishing a complete mapping model from the geographical coordinates of the observation point to the line-of-sight angle, the complex processes of coordinate system transformation and celestial position calculation are constructed into a unified fitness function, providing a clear quantitative evaluation index for subsequent particle swarm optimization algorithms.
[0051] Optionally, such as Figure 4 As shown, the adaptive adjustment of inertia weights in the particle swarm optimization algorithm specifically includes: Step S410: In each iteration, determine the population diversity index D of the current particle swarm based on the ratio of the standard deviation to the mean of the optimal fitness of all individual particles.
[0052] Specifically, the population diversity index D is used to measure the dispersion of the current particle swarm. When the particle swarm is scattered over a wide area, the differences in the optimal fitness of individuals are large, and the D value is high, indicating that the algorithm is in the exploration stage; when the particle swarm is clustered in a small area, the optimal fitness of individuals tends to be consistent, and the D value is low, indicating that the algorithm has entered the development stage.
[0053] Step S420: Dynamically adjust the inertia weight of the current iteration based on the current iteration number, the maximum iteration number, the population diversity index D, and the preset initial and final values of the inertia weight.
[0054] Specifically, the inertia weight for the current iteration is dynamically adjusted according to the following expression: ; In the formula, This is the initial value for the inertia weight. is the termination value of the inertia weight, n is the current iteration number, MAX is the maximum iteration number, and D is the population diversity index. This represents the inertia weight for the current iteration.
[0055] Specifically, during the exploration phase (high D value), a larger inertia weight should be maintained. This gives the particles strong inertia, enabling them to fly across a wide area to find potential optimal solutions; during the development phase (when the D value is low), the inertia weight should be reduced. This allows particles to precisely search local regions. Simultaneously, as the number of iterations increases, the inertial weight... The overall trend should be downward.
[0056] Step S430: Substitute the adjusted inertia weights into the particle velocity update formula to update the velocity of each particle; the particle velocity update formula is as follows: ; in, Inertial weight; Let $\frac{j}{j}$ be the velocity of the $j$-th particle during the $k$-th iteration. Let j be the position of the j-th particle; This represents the optimal position in the individual particle's history. The globally optimal position; For individual learning factors; As a social learning factor; , It is a random number.
[0057] Optionally, such as Figure 5 As shown, the adaptive adjustment of the learning factor in the particle swarm optimization algorithm specifically includes: Step S510: In each iteration, dynamically adjust the individual learning factor based on the current iteration number n and the maximum iteration number MAX. Social learning factors : ; ; in, This is the initial value of the individual learning factor; This is the termination value of the individual learning factor; This is the initial value for the social learning factor; This is the termination value for the social learning factor; Step S520: Adjust the individual learning factors Social learning factors Substitute the values into the particle velocity update formula to update the velocity of each particle; the particle velocity update formula is as follows: ; in, Inertial weight; Let $\frac{j}{j}$ be the velocity of the $j$-th particle during the $k$-th iteration. Let j be the position of the j-th particle; This represents the optimal position in the individual particle's history. The globally optimal position; For individual learning factors; As a social learning factor; , It is a random number.
[0058] Specifically, in the initial stages of the search, particles should be given full play to their individual cognitive abilities and explore different regions extensively. Take a larger value (e.g., 2.5). The value should be relatively small (e.g., 0.5); in the later stages of the search, particles should draw more on collective intelligence and gather towards the globally optimal region. Gradually reduce (e.g., decrease to 0.5). Gradually increase (e.g., increase to 2.5).
[0059] In this optional embodiment, the adaptive adjustment of the learning factor is limited in the particle swarm optimization algorithm. The degree to which a particle learns to align with its historical best position reflects individual cognition; The degree to which particles learn to align with the global optimal position of the population reflects social consensus.
[0060] Optionally, the particle swarm optimization algorithm performs a hybridization operation once every preset number of iterations: Step S1: Sort all particles according to their fitness values in the current iteration, select the top 30% of particles by fitness as the parent candidate set, and select the bottom 30% of particles by fitness as the individuals to be replaced.
[0061] Step S2: Randomly select two particles from the parent candidate set, and generate the position and velocity of the offspring particles according to the following arithmetic crossover formula: ; ; in, The position of the offspring particle; This represents the position of one of the two particles; The position of the other particle among the two particles; A random number between (0, 1); The velocity of the offspring particles; The velocity of one of the two particles; The velocity of the other particle out of the two particles; Step S3: Replace the individual to be replaced in step S1 with the generated offspring particles.
[0062] Specifically, assume a crossover operation is performed every 5 generations. At the end of the 5th generation, all particles are first sorted in ascending order of fitness value (view angle θ) (smaller θ is better). The top 30% (e.g., the top 12 out of 40 particles) are selected as the "parent candidate set"—these particles are currently performing well. The bottom 30% (the bottom 12) are selected as "particles to be replaced"—these particles perform poorly and need to be eliminated. Then, two particles (e.g., particle A and particle B) are randomly selected from the parent candidate set, and the positions of the offspring particles are generated according to the arithmetic crossover formula. The formula is as follows: , In practice, it's a weighted average of the two parent positions, where r is a random number between 0 and 1, ensuring the offspring position falls within the range of... and The generation of offspring particles maintains a consistent direction in terms of velocity and inherits the velocity magnitude of one of their parents. Finally, the generated offspring particles replace the least fit particles in the individuals to be replaced one by one. In this way, inferior particles are replaced by new particles generated from superior gene combinations, improving the quality of the population while maintaining diversity.
[0063] Optionally, the particle swarm optimization algorithm also includes: When the number of iterations exceeds 50% of the maximum number of iterations, for particles whose current fitness values rank in the bottom 20%, new positions are randomly generated within a neighborhood of radius R around the current global best position gbest, where R is 10% of the initial search region's side length. If the fitness value of the particle at the new position is better than that of the particle at the original position, then the particle at the new position replaces the particle at the original position; and / or, In each iteration, the population diversity index D is determined. If the population diversity index D is less than the preset threshold and the current iteration number exceeds 1 / 3 of the maximum iteration number, the positions and velocities of 30% of the particles other than the globally optimal particle are reinitialized.
[0064] Specifically, when the iteration reaches the latter half (over 50%), the algorithm has basically determined the location of the optimal region. At this point, a fine-grained search is needed in the vicinity of the globally optimal position gbest. For the 20% of particles currently performing the worst, they may be far from the optimal region. Instead of letting them fly blindly, it is better to directly deploy them to a small area near gbest for local exploration. The deployment radius R is set to 10% of the side length of the initial search region. For example, if the initial search region is 50km × 50km, then R = 5km. If the newly generated position has a better fitness than the original position, the new particle is retained; otherwise, the original position is maintained. This operation strengthens the search density of the optimal neighborhood.
[0065] Specifically, in each iteration, a population diversity index D (the same as D in claim 3) is calculated. If D is found to be below a small threshold (e.g., 0.01), it indicates that all particles are almost completely clustered at the same point, and the population has lost its diversity. If the number of iterations is still small at this point (less than 1 / 3 of the total number of iterations), it means that the algorithm has converged prematurely and is likely to get stuck in a local optimum. In this case, the globally optimal particle gbest is kept unchanged, and the other 30% of the particles are randomly reinitialized, given new velocities and positions, thereby escaping the local optimum and continuing to search for the global optimum.
[0066] Optionally, rocket flight is a continuous process, and the change in rocket position between adjacent moments (e.g., 1 second interval) is finite, and the apparent motion of the sun or moon is also continuous. Therefore, the optimal observation point position between adjacent moments should also have spatial continuity. Based on this physical fact, this embodiment adopts a progressive search strategy from coarse to fine, such as... Figure 6 As shown, the specific steps include: Step S610: For the first observation time, within the first observation region, the particle swarm optimization algorithm is used to solve for the first optimal observation point; the search origin within the first observation region is the rocket launch origin.
[0067] Specifically, at the first moment, there is no prior information, so a search needs to be conducted over a relatively large area. The first observation area can be set as a square region with a side length of 50 km centered on the rocket launch origin. An improved particle swarm optimization algorithm is run within this region, with a population size of 40 and 100 iterations to ensure that the global optimum is found.
[0068] Step S620: For the second observation time, using the first optimal observation point as the search origin, the particle swarm optimization algorithm is used to solve for the second optimal observation point within the second observation region; wherein, the range of the second observation region is smaller than the range of the first observation region.
[0069] Specifically, at the second observation time, the first optimal observation point is used as the search origin. Since the optimal observation points at adjacent times are usually not too far apart, the second observation area can be reduced to a square area with a side length of 5km centered on the first optimal observation point. The particle swarm optimization algorithm is run within this area, and the population size and number of iterations can be appropriately reduced (e.g., 30 particles, 50 iterations) to improve efficiency.
[0070] Step S630: For each observation time after the second observation time, predict the best observation point corresponding to each observation time after the second observation time according to the best observation point corresponding to the two observation times before each observation time, based on the geometric constraint rules.
[0071] Specifically, with the precise observation points from the first two observation times, the observation points for subsequent times can be predicted using geometric constraint rules, further narrowing the search area. The specific method is as follows: In some embodiments, based on the first optimal observation point corresponding to the first observation time and the second optimal observation point corresponding to the second observation time, the optimal observation points corresponding to each observation time after the second observation time are predicted according to geometric constraint rules, including: First and second observation times: Based on the azimuth angle A1 of the celestial body at the first observation time, the azimuth angle A2 of the celestial body at the second observation time, the elevation angle E1 of the celestial body at the first observation time, and the elevation angle E2 of the celestial body at the second observation time, the azimuth angle A3 and the elevation angle E3 of the celestial body at the third observation time are determined using the following expressions: ; ; ; in, The first observation time, For the second observation time, For the third observation time, the extrapolation results must be... Normalize to the interval [0°, 360°). Normalized amplitude is limited to the range of [-90°, 90°].
[0072] For each observation time after the second observation time, taking the third observation time as an example: calculate the celestial line-of-sight unit vector at the third observation time based on the azimuth angle A3 and elevation angle E3 of the celestial body at the third observation time; find an observation point position such that the angle between the celestial line-of-sight unit vector pointing from the observation point to the rocket position at the current observation time and the celestial body line-of-sight unit vector is minimized, and take the observation point position as the optimal observation point for the third observation time.
[0073] The expression for the unit vector of the celestial line of sight at the third observation moment is as follows: ; in, This is the unit vector of the celestial line of sight at the third observation moment.
[0074] Assume that the observation point corresponding to the third observation time... The geodetic coordinates are The observation point is calculated as follows: Observation direction vector to the rocket : First, calculate the observation points. By the third observation moment of the rocket The relative position vector of the position: .in, For the rocket at the third observation moment Location, For observation point Coordinates in the Earth-fixed rectangular coordinate system.
[0075] Then, Transform from the Earth-fixed rectangular coordinate system to the station-centered coordinate system to obtain the vector. The conversion formula is as follows: ; in, Let be a rotation matrix. , For observation point longitude, For observation point Latitude.
[0076] Finally, the vector Normalization is performed to obtain the rocket's line-of-sight unit vector. .
[0077] To achieve from the observation point If the direction in which you observe the rocket is the same as the direction in which you observe the celestial body, then you need to... Since the equation is nonlinear, a numerical solution method is used to transform it into an optimization problem, and the objective function to be minimized is: The result obtained is the optimal observation point for the third observation time.
[0078] Similarly, the fourth observation time is determined by predicting the optimal observation points for each subsequent observation time based on the optimal observation points corresponding to the second and third observation times, according to geometric constraint rules. This process continues to yield the optimal observation points for each subsequent observation time.
[0079] Specifically, within a short period (e.g., a few seconds to tens of seconds), the changes in the azimuth and elevation angles of the Sun or Moon can be approximated as linear. This is because the Earth's rotation and the orbital motion of celestial bodies are smooth over short periods. Therefore, the apparent position of a celestial body at the current observation moment can be predicted by linear extrapolation using the apparent positions of the celestial bodies at the previous two moments.
[0080] The following is an example of a method for calculating the observation point of a rocket transit (solar / lunar transit).
[0081] Advance preparation: Ensure that the sun or moon is above the horizon at the time of rocket launch, based on the launch location and time.
[0082] Data preparation: Given the flight trajectory data of a rocket in a fixed rectangular coordinate system from 21s to 60s, one data point per second; given the rocket's launch time. Given the launch temperature and air pressure; given the de421 ephemeris file; given the target celestial body as the Sun or the Moon.
[0083] Search parameter configuration: The rocket launch origin is used as the initial search origin. A 50km*50km square area centered on the search origin is used as the search area for the first point; the search area for the second point is set to a 5km*5km square area; and the search areas for the third and subsequent points are set to a 10m*10m square area.
[0084] Particle swarm parameter configuration: , Set to 0.9, 0.4; , Set to 2.5, 0.5; , Set the values to 0.5 and 2.5; set the particle population of the first point to 40 and the number of iterations to 100; set the particle population of the second point to 30 and the number of iterations to 50; set the particle population of the third and subsequent points to 10 and the number of iterations to 25.
[0085] Precision setting: Set the solar angle threshold to 0.0001 degrees.
[0086] Solution process: For the first data point, an improved particle swarm optimization algorithm is first executed within a large search region. Since the search region is large enough, it ensures that the observation point is found. The first optimal observation point is used as the search origin, and the improved particle swarm optimization algorithm is executed within a medium search region to obtain the second optimal observation point. Based on the first and second optimal observation points, a predicted point is obtained using geometric constraint rules. This predicted point is used as the search origin for the third optimal observation point, and the improved particle swarm optimization algorithm is executed within a smaller search region to obtain the third optimal observation point. This process is repeated for subsequent observation times to obtain the optimal observation point positions for all times, and the data is saved.
[0087] like Figure 7 As shown, Figure 7 This shows how the global optimum of the apparent angle at the three best observation points before rocket flight changes with the number of iterations. Figure 7 As can be seen, when the first optimal observation point searches over a large area, the global optimum can converge effectively and the optimum value decreases rapidly. The second optimal observation point uses the observation point of the first optimal observation point as the origin, and the search area is reduced. Therefore, the initial optimum value of the first generation population is smaller, and the number of iterations required is reduced. The third optimal observation point uses the result of the geometric constraint rule prediction method as the search origin, and the search area is very small. At this time, the initial value of the first generation population is extremely small, and the number of iterations required is also significantly reduced, indicating that the prediction result of the geometric constraint rule is very close to the final result.
[0088] like Figure 8 As shown, an embodiment of the present invention provides a rocket transit / lunar transit observation point calculation device 800, comprising: The acquisition module 810 is used to acquire rocket flight trajectory data, celestial ephemeris data, and observation area; the celestial body is the sun or the moon; The function construction module 820 is used to construct a fitness function with the observation point as the decision variable and the apparent angle between the line-of-sight vector of the rocket observed from the observation point and the line-of-sight vector of the observed celestial body as the objective function. The optimal observation point determination module 830 is used to sequentially solve for the optimal observation point at each observation time using a particle swarm optimization algorithm for multiple observation times. Specifically, for the first observation time, the fitness function is optimized within a first observation region to obtain a first optimal observation point. For the second observation time, the optimal observation point obtained at the first observation time is used as the search origin, and the fitness function is optimized within a second observation region to obtain a second optimal observation point. For each observation time after the second observation time, the optimal observation point for each subsequent observation time is predicted according to geometric constraint rules based on the optimal observation points corresponding to the two observation times preceding each observation time. In each iteration, the particle swarm optimization algorithm updates the particle velocity by adaptively adjusting the inertia weight and the learning factor, and updates the particle position through a hybridization operation, finding the particle that minimizes the viewing angle, and using the position of the solved particle as the optimal observation point for the current observation time.
[0089] Optionally, the function building module 720 is specifically used for: Convert the geodetic coordinates of the observation points to coordinates in the Earth-fixed rectangular coordinate system; Based on the rocket's position at a specific moment, calculate the line-of-sight vector from the observation point to the rocket, and convert the line-of-sight vector into a unit vector in the stationary coordinate system to obtain the rocket's line-of-sight unit vector; Based on the celestial ephemeris and the location of the observation point, the apparent position of the celestial body relative to the observation point at the specific moment is calculated, and the apparent position is converted into a unit vector in the stationary coordinate system to obtain the unit vector of the celestial body's line of sight. Determine the angle between the rocket's line-of-sight unit vector and the celestial body's line-of-sight unit vector to obtain the fitness value of the observation point at that specific moment.
[0090] Optionally, the inertia weight is adaptively adjusted, specifically including: In each iteration, the population diversity index of the current particle swarm is determined by the ratio of the standard deviation to the mean of the optimal fitness of all individual particles. The inertia weight of the current iteration is dynamically adjusted based on the current iteration number, the maximum iteration number, the population diversity index, and the preset initial and final values of the inertia weight. The adjusted inertia weights are substituted into the particle velocity update formula to update the velocity of each particle; wherein the particle velocity update formula is as follows: ; in, Inertial weight; Let $\frac{j}{j}$ be the velocity of the $j$-th particle during the $k$-th iteration. Let j be the position of the j-th particle; This represents the optimal position in the individual particle's history. The globally optimal position; For individual learning factors; As a social learning factor; , It is a random number.
[0091] Optionally, the learning factor is adaptively adjusted, specifically including: In each iteration, the individual learning factor is dynamically adjusted based on the current iteration number n and the maximum iteration number N. Social learning factors : ; ; in, This is the initial value of the individual learning factor; This is the termination value of the individual learning factor; This is the initial value for the social learning factor; This is the termination value for the social learning factor; Adjusted individual learning factors Social learning factors Substitute the values into the particle velocity update formula to update the velocity of each particle; wherein the particle velocity update formula is as follows: ; in, Inertial weight; Let $\frac{j}{j}$ be the velocity of the $j$-th particle during the $k$-th iteration. Let j be the position of the j-th particle; This represents the optimal position in the individual particle's history. The globally optimal position; For individual learning factors; As a social learning factor; , It is a random number.
[0092] Optionally, the position of the particle is updated through a hybridization operation, specifically including: Perform a hybridization operation once every preset number of iterations: Step S1: Sort all particles according to their fitness values in the current iteration, select the top 30% of particles by fitness as the parent candidate set, and select the bottom 30% of particles by fitness as the individuals to be replaced. Step S2: Randomly select two particles from the parent candidate set, and generate the position and velocity of the offspring particles according to the following arithmetic crossover formula: ; ; in, The position of the offspring particle; This represents the position of one of the two particles; The position of the other particle among the two particles; A random number between (0, 1); The velocity of the offspring particles; The velocity of one of the two particles; The velocity of the other particle out of the two particles; Step S3: Replace the individual to be replaced in step S1 with the generated offspring particles.
[0093] Optionally, the particle swarm optimization algorithm also includes: When the number of iterations exceeds 50% of the maximum number of iterations, for particles whose current fitness values rank in the bottom 20%, new positions are randomly generated within a neighborhood of radius R around the current global best position gbest, where R is 10% of the initial search region's side length. If the fitness value of the particle at the new position is better than that of the particle at the original position, then the particle at the new position replaces the particle at the original position; and / or, In each iteration, the population diversity index D is determined. If the population diversity index D is less than the preset threshold and the current iteration number exceeds 1 / 3 of the maximum iteration number, the positions and velocities of 30% of the particles other than the globally optimal particle are reinitialized.
[0094] like Figure 9 As shown, an electronic device 900 provided in this embodiment of the invention includes a memory 910 and a processor 920; the memory 910 is used to store a computer program; the processor 920 is used to implement the rocket transit / lunar transit observation point calculation method as described above when the computer program is executed.
[0095] Alternatively, an electronic device 900 includes a memory 910 and a processor 920 coupled to the memory 910; the memory 910 is configured to store a computer program; and the processor 920 is configured to perform the following operations when the computer program is executed: Acquire rocket flight trajectory data, celestial ephemeris data, and observation area; the celestial body is the Sun or the Moon; Construct a fitness function with the observation point as the decision variable and the apparent angle between the line-of-sight vector of the rocket observed from the observation point and the line-of-sight vector of the observed celestial body as the objective function; The particle swarm optimization algorithm is used to initialize multiple candidate observation points into a particle swarm. The fitness function is optimized within the observation area. The position of each particle is updated iteratively to find the particle that minimizes the viewing angle. The position of the particle is then taken as the optimal observation point. In each iteration, the particle swarm optimization algorithm updates the particle velocity by adaptively adjusting the inertia weight and / or learning factor, and updates the particle position through a hybridization operation.
[0096] This invention provides a computer-readable storage medium storing a computer program. When the computer program is executed by a processor, it implements the method for calculating rocket transit / lunar transit observation points as described above.
[0097] Alternatively, a non-volatile computer-readable storage medium storing a computer program that, when executed by a processor, causes the processor to perform the following operations: Acquire rocket flight trajectory data, celestial ephemeris data, and observation area; the celestial body is the Sun or the Moon; Construct a fitness function with the observation point as the decision variable and the apparent angle between the line-of-sight vector of the rocket observed from the observation point and the line-of-sight vector of the observed celestial body as the objective function; The particle swarm optimization algorithm is used to initialize multiple candidate observation points into a particle swarm. The fitness function is optimized within the observation area. The position of each particle is updated iteratively to find the particle that minimizes the viewing angle. The position of the particle is then taken as the optimal observation point. In each iteration, the particle swarm optimization algorithm updates the particle velocity by adaptively adjusting the inertia weight and / or learning factor, and updates the particle position through a hybridization operation.
[0098] The present invention will now be described an electronic device 900 that can serve as a server or client of the present invention, which is an example of a hardware device that can be applied to various aspects of the present invention. Electronic device 900 is intended to represent various forms of digital electronic computer devices, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. Electronic device 900 can also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the invention described and / or claimed herein.
[0099] Electronic device 900 includes a computing unit that can perform various appropriate actions and processes based on a computer program stored in read-only memory (ROM) or a computer program loaded from a storage unit into random access memory (RAM). The RAM may also store various programs and data required for device operation. The computing unit, ROM, and RAM are interconnected via a bus. Input / output (I / O) interfaces are also connected to the bus.
[0100] Those skilled in the art will understand that all or part of the processes in the above embodiments can be implemented by a computer program instructing related hardware. The program can be stored in a computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. The storage medium can be a magnetic disk, optical disk, read-only memory (ROM), or random access memory (RAM), etc. In this application, the units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of the embodiments of the present invention according to actual needs. Furthermore, the functional units in the various embodiments of the present invention can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated units can be implemented in hardware or as software functional units.
[0101] While the present invention has been disclosed above, its scope of protection is not limited thereto. Those skilled in the art can make various changes and modifications without departing from the spirit and scope of the present invention, and all such changes and modifications will fall within the scope of protection of the present invention.
Claims
1. A method for calculating the observation point of a rocket transiting the sun / moon, characterized in that, include: Acquire rocket flight trajectory data, celestial ephemeris data, and observation area; The celestial body is the sun or the moon; the observation area includes at least a first observation area and a second observation area, the range of the second observation area being smaller than the range of the first observation area; Construct a fitness function with the observation point as the decision variable and the apparent angle between the line-of-sight vector of the rocket observed from the observation point and the line-of-sight vector of the observed celestial body as the objective function; For multiple observation times, a particle swarm optimization algorithm is used to sequentially solve for the optimal observation point at each observation time. Specifically, for the first observation time, the fitness function is optimized within a first observation region to obtain a first optimal observation point. For the second observation time, the optimal observation point obtained at the first observation time is used as the search origin, and the fitness function is optimized within a second observation region to obtain a second optimal observation point. For each observation time after the second observation time, the optimal observation point corresponding to each observation time after the second observation time is predicted according to geometric constraint rules based on the optimal observation points corresponding to the two observation times preceding each observation time. In each iteration, the particle swarm optimization algorithm adaptively adjusts the inertia weight and learning factor to update the particle velocity and updates the particle position through a hybridization operation, thereby finding the particle that minimizes the viewing angle. The position of the obtained particle is then taken as the optimal observation point at the current observation time.
2. The method for calculating rocket transit / lunar transit observation points according to claim 1, characterized in that, The construction of a fitness function, which uses the observation point as the decision variable and the apparent angle between the line-of-sight vector of the rocket observed from the observation point and the line-of-sight vector of the observed celestial body as the objective function, includes: Convert the geodetic coordinates of the observation points to coordinates in the Earth-fixed rectangular coordinate system; Based on the rocket's position at a specific moment, calculate the line-of-sight vector from the observation point to the rocket, and convert the line-of-sight vector into a unit vector in the stationary coordinate system to obtain the rocket's line-of-sight unit vector; Based on the celestial ephemeris and the location of the observation point, calculate the apparent position of the celestial body relative to the observation point at the specific moment, and convert the apparent position into a unit vector in the stationary coordinate system to obtain the unit vector of the celestial body's line of sight. Determine the angle between the rocket's line-of-sight unit vector and the celestial body's line-of-sight unit vector to obtain the fitness value of the observation point at that specific moment.
3. The method for calculating rocket transit / lunar transit observation points according to claim 1, characterized in that, The adaptive adjustment of inertia weights specifically includes: In each iteration, the population diversity index of the current particle swarm is determined by the ratio of the standard deviation to the mean of the optimal fitness of all individual particles. The inertia weight of the current iteration is dynamically adjusted based on the current iteration number, the maximum iteration number, the population diversity index, and the preset initial and final values of the inertia weight. The adjusted inertia weights are substituted into the particle velocity update formula to update the velocity of each particle; wherein the particle velocity update formula is as follows: ; in, Inertial weight; Let $\frac{j}{j}$ be the velocity of the $j$-th particle during the $k$-th iteration. Let be the velocity of the j-th particle in the (k+1)-th iteration; Let j be the position of the j-th particle; This represents the optimal position in the individual particle's history. The globally optimal position; For individual learning factors; As a social learning factor; , It is a random number.
4. The method for calculating rocket transit / lunar transit observation points according to claim 1 or 3, characterized in that, The adaptive adjustment of the learning factor specifically includes: In each iteration, the individual learning factor is dynamically adjusted based on the current iteration number n and the maximum iteration number N. Social learning factors : ; ; in, This is the initial value of the individual learning factor; This is the termination value of the individual learning factor; This is the initial value for the social learning factor; This is the termination value of the social learning factor; Adjusted individual learning factors Social learning factors Substitute the values into the particle velocity update formula to update the velocity of each particle; wherein the particle velocity update formula is as follows: ; in, Inertial weight; Let $\frac{j}{j}$ be the velocity of the $j$-th particle during the $k$-th iteration. Let j be the position of the j-th particle; This represents the optimal position in the individual particle's history. The globally optimal position; For individual learning factors; As a social learning factor; , It is a random number.
5. The method for calculating rocket transit / lunar transit observation points according to claim 1, characterized in that, The process of updating the particle position through hybridization specifically includes: Perform a hybridization operation once every preset number of iterations: Step S1: Sort all particles according to their fitness values in the current iteration, select the top 30% of particles by fitness as the parent candidate set, and select the bottom 30% of particles by fitness as the individuals to be replaced. Step S2: Randomly select two particles from the parent candidate set, and generate the position and velocity of the offspring particles according to the following arithmetic crossover formula: ; ; in, The position of the offspring particle; This represents the position of one of the two particles; The position of the other particle among the two particles; A random number between (0, 1); The velocity of the offspring particles; The velocity of one of the two particles; The velocity of the other particle out of the two particles; Step S3: Replace the individual to be replaced in step S1 with the generated offspring particles.
6. The method for calculating rocket transit / lunar transit observation points according to claim 1, characterized in that, The particle swarm optimization algorithm also includes: When the number of iterations exceeds 50% of the maximum number of iterations, for particles whose current fitness values rank in the bottom 20%, new positions are randomly generated within a neighborhood of radius R around the current global best position gbest, where R is 10% of the initial search region's side length. If the fitness value of the particle at the new position is better than that of the particle at the original position, then the particle at the new position replaces the particle at the original position; and / or, In each iteration, the population diversity index D is determined. If the population diversity index D is less than the preset threshold and the current iteration number exceeds 1 / 3 of the maximum iteration number, the positions and velocities of 30% of the particles other than the globally optimal particle are reinitialized.
7. A device for calculating the observation points of a rocket transiting the sun / moon, characterized in that, include: The acquisition module is used to acquire rocket flight trajectory data, celestial ephemeris data, and observation area; The celestial body referred to is the sun or the moon; The function construction module is used to construct a fitness function with the observation point as the decision variable and the apparent angle between the line-of-sight vector of the rocket observed from the observation point and the line-of-sight vector of the observed celestial body as the objective function. The optimal observation point determination module is used to sequentially solve for the optimal observation point for each observation time using a particle swarm optimization algorithm. Specifically, for the first observation time, the fitness function is optimized within a first observation region to obtain a first optimal observation point. For the second observation time, the optimal observation point obtained from the first observation time is used as the search origin, and the fitness function is optimized within a second observation region to obtain a second optimal observation point. For each observation time after the second observation time, the optimal observation point for each subsequent observation time is predicted according to geometric constraint rules based on the optimal observation points corresponding to the two observation times preceding each observation time. In each iteration, the particle swarm optimization algorithm adaptively adjusts the inertia weight and learning factor to update the particle velocity and updates the particle position through a hybridization operation, finding the particle that minimizes the viewing angle, and using the position of the found particle as the optimal observation point for the current observation time.
8. An electronic device, characterized in that, Including memory and processor; The memory is used to store computer programs; The processor is configured to, when executing the computer program, implement the method for calculating rocket transit / lunar transit observation points as described in any one of claims 1 to 6.
9. A computer-readable storage medium, characterized in that, The storage medium stores a computer program, which, when executed by a processor, implements the method for calculating rocket transit / lunar transit observation points as described in any one of claims 1 to 6.