A constellation network reliability simulation method and system based on streaming computing
By using streaming computing methods to automatically build data tables in the constellation network and write them into the database in real time, the problem of low efficiency of conventional serial simulation is solved and efficient multi-round simulation is achieved.
Patent Information
- Application Number
- CN202411451317.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-17
- Publication Date
- 2025-09-23
- Estimated Expiration
- 2044-10-17
AI Technical Summary
Conventional serial reliability simulation processes are difficult to meet the requirements of high-efficiency, multi-round simulations in constellation networks, especially when the simulation process data and result data are synchronously written into the database at each step.
A streaming computing method is used to set simulation parameters, automatically construct a data table, and generate satellite health status, co-orbit link status, and cross-orbit link status matrices at preset step sizes. The data is written into the database in real time through a custom data source module to achieve streaming data processing.
It improves simulation efficiency, meets the needs of high-efficiency, multi-round simulation, reduces waiting time, and increases the speed of data synchronization.
Smart Images

Figure CN119341627B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of industrial big data and system reliability simulation, and in particular to a constellation network reliability simulation method and system based on streaming computing. Background Art
[0002] Satellite constellations usually contain hundreds, thousands, or even tens of thousands of satellite nodes. Complex network topologies can be formed through inter-satellite links. Reliability simulation can be used to achieve reliability design of satellite constellations.
[0003] The conventional reliability simulation process is a serial one. The simulation proceeds in steps, typically set to one hour by default in constellation network reliability simulations. Each step performs the following simulation calculations: First, the status of all nodes and intersatellite links in the constellation is sampled. Based on the network patching and link repair strategies, a satellite health (normal / failed) status matrix and a link (connection / disconnection) status matrix are generated for each simulation step. Then, based on the satellite health and link status matrices, the connectivity status of each satellite with other satellites is calculated to identify satellites that have been disconnected from the network and, based on this, calculate the satellite disconnection rate. Finally, the reliability of the entire network topology is assessed based on the satellite disconnection rate time series.
[0004] However, when the process data and result data involved in each simulation step need to be written into the database synchronously, the conventional serial simulation program will run slower and it will be difficult to meet the requirements of high-efficiency, multi-round simulation. Summary of the Invention
[0005] The present invention provides a constellation network reliability simulation method and system based on stream computing, which can improve simulation efficiency.
[0006] The technical solution of the present invention to solve the above technical problems is as follows:
[0007] In one aspect, the present invention provides a constellation network reliability simulation method based on streaming computing. In this method, simulation parameters are set. The simulation parameters include parameters associated with the target constellation to be simulated and parameters associated with executing the simulation. The target constellation includes multiple target satellites and multiple orbits. The multiple target satellites include key satellites and ordinary satellites. Key satellites are satellites used for communicating with the Earth, while ordinary satellites communicate with the Earth indirectly through key satellites. Based on the simulation parameters, a data table is automatically constructed. At each preset simulation step, a first data element is generated based on the simulation parameters and preset rules. The first data element includes a satellite health status matrix, a co-orbit link status matrix, and an inter-orbit link status matrix corresponding to the multiple target satellites. The satellite health status matrix represents the status of each target satellite. The target satellite status includes normal and abnormal status. A satellite in normal status maintains communication functionality, while a satellite in abnormal status loses communication functionality. The co-orbit link status matrix represents the status of the co-orbit link corresponding to each target satellite, and the inter-orbit link status matrix represents the status of the inter-orbit link corresponding to each key satellite. Both the co-orbit link status and the inter-orbit link status include connected and disconnected status. In response to generating a target first data element, a second data element corresponding to the target first data element is calculated based on the target first data element. The target first data element is the first data element generated at any time, and the second data element corresponding to the target first data element includes the connectivity status matrix and disconnection rate of each target satellite. In response to generating a target second data element, a third data element corresponding to the target second data element is calculated, where the target second data element is the second data element generated at any time. The third data element corresponding to the target second data element includes the target second data element converted to a preset format. In response to generating a target third data element, the target third data element is stored in the data table.
[0008] On the basis of the above technical solution, the present invention can also be improved as follows.
[0009] Furthermore, the simulation parameters include the number of multiple orbits, the number of target satellites operating in any orbit, the number of inter-orbit links, the mean time between failures of each inter-satellite link interruption, the repair time of each inter-satellite link interruption, the mean time between failures of each target satellite, the satellite network reconnection interval of each target satellite, the simulation step size, the number of simulation rounds, the identifier of the target constellation, and the position of each key satellite. An inter-satellite link is a communication link between two adjacent target satellites in the constellation network topology.
[0010] Furthermore, a preset number of data table fields are set, the preset number of data table fields are updated based on the simulation parameters, and a data table is generated based on the updated preset number of data table fields.
[0011] Furthermore, a first satellite health status matrix, a first satellite failure duration matrix, a first on-orbit link interruption duration matrix, a first cross-orbit link interruption duration matrix, a first on-orbit link state matrix, and a first cross-orbit link state matrix corresponding to the plurality of target satellites are obtained. If the first data element is generated for the first time, the first satellite health status matrix is a preset initial satellite health status matrix, the first satellite failure duration matrix is a preset initial satellite failure duration matrix, the first on-orbit link interruption duration matrix is a preset initial on-orbit link interruption duration matrix, the first cross-orbit link interruption duration matrix is a preset initial cross-orbit link interruption duration matrix, the first on-orbit link state matrix is a preset initial on-orbit link state matrix, and the first cross-orbit link state matrix is a preset initial cross-orbit link state matrix. If the first data element is generated for the Nth time, the first satellite health status matrix is the satellite health status matrix included in the first data element determined for the N-1th time, the first on-orbit link status matrix is the on-orbit link status matrix included in the first data element determined for the N-1th time, the first cross-orbit link status matrix is the cross-orbit link status matrix included in the first data element determined for the N-1th time, the first satellite failure duration matrix is determined based on the satellite health status matrix included in the first data element determined for the N-2th time and the satellite health status matrix included in the first data element determined for the N-1th time, the first on-orbit link interruption duration matrix is determined based on the on-orbit link status matrix included in the first data element determined for the N-2th time and the on-orbit link status matrix included in the first data element determined for the N-1th time, and the first cross-orbit link interruption duration matrix is determined based on the cross-orbit link status matrix included in the first data element determined for the N-2th time and the cross-orbit link status matrix included in the first data element determined for the N-1th time, where N is greater than or equal to 2.
[0012] Based on the failure probability of each target satellite, the first satellite failure duration matrix, and the satellite network refill interval, the first satellite health status matrix is updated to obtain a satellite health status matrix. Based on the first satellite health status matrix and the satellite health status matrix, the first satellite failure duration matrix is updated.
[0013] For any orbit, a first target satellite and a second target satellite are determined on the orbit. The first target satellite is a target satellite that is in an abnormal state after the current simulation step. The second target satellite is a target satellite that is in an abnormal state before the current simulation step and is in a normal state after the current simulation step. A co-orbital link coupled to the state of the first target satellite and a co-orbital link coupled to the state of the second target satellite are determined. Based on the states of the co-orbital links coupled to the state of the first target satellite and the states of the co-orbital links coupled to the state of the second target satellite, data corresponding to the co-orbital links coupled to the state of the first target satellite in the first co-orbital link state matrix are updated. Furthermore, data corresponding to the co-orbital links coupled to the state of the second target satellite in the first co-orbital link state matrix are updated to obtain a second co-orbital link state matrix. A third co-orbital link is determined in the target constellation. The co-orbital link coupled to the state of the first target satellite and the co-orbital link coupled to the state of the second target satellite are different from the third co-orbital link. Based on the link outage probability, the first co-orbital link outage duration matrix, and the inter-satellite link outage repair time, data corresponding to the third co-orbital link in the second co-orbital link state matrix are updated to obtain a co-orbital link state matrix. Based on the first co-track link state matrix and the co-track link state matrix, the first co-track link interruption duration matrix is updated.
[0014] Determine an inter-orbital link coupled to the state of a first target satellite and an inter-orbital link coupled to the state of a second target satellite. Based on the state of the inter-orbital link coupled to the state of the first target satellite and the state of the inter-orbital link coupled to the state of the second target satellite, update the data corresponding to the inter-orbital link coupled to the state of the first target satellite in the first inter-orbital link state matrix, and update the data corresponding to the inter-orbital link coupled to the state of the second target satellite in the first inter-orbital link state matrix to obtain a second inter-orbital link state matrix. Determine a third inter-orbital link in the target constellation, wherein the inter-orbital link coupled to the state of the first target satellite and the inter-orbital link coupled to the state of the second target satellite are different from the third inter-orbital link. Based on the link interruption probability, the first inter-orbital link interruption duration matrix, and the repair time of the inter-satellite link interruption, update the data corresponding to the third inter-orbital link in the second inter-orbital link state matrix to obtain a inter-orbital link state matrix. Based on the first inter-orbital link state matrix and the inter-orbital link state matrix, update the first inter-orbital link interruption duration matrix.
[0015] A first data element is generated based on the satellite health status matrix, the co-orbit link status matrix, and the cross-orbit link status matrix.
[0016] Furthermore, in response to generating the target first data element, an adjacency matrix corresponding to each key satellite is determined based on the co-orbit link state matrix, the cross-orbit link state matrix, and the positions of each key satellite included in the target first data element. The adjacency matrix is converted into a reachability matrix. Based on the reachability matrix, a backbone network is determined. The backbone network is a network that includes the largest number of key satellites, and any two key satellites in the backbone network are reachable. Based on the backbone network, the offline status of each key satellite is determined. For any orbit, based on the offline status of the key satellites in any orbit, the connectivity status between the ordinary satellites in any orbit and the backbone network is determined. Based on the connectivity status between the ordinary satellites in each orbit and the backbone network, the connectivity status matrix and offline rate of each target satellite are determined. Based on the connectivity status matrix and offline rate of each target satellite, a second data element corresponding to the target first data element is determined.
[0017] On the other hand, the present invention provides a constellation network reliability simulation system based on streaming computing, including: a simulation configuration module for setting simulation parameters. The simulation parameters include parameters associated with the simulation target constellation and parameters associated with executing the simulation. The target constellation includes multiple target satellites and multiple orbits; the multiple target satellites include key satellites and ordinary satellites, key satellites are satellites used for communicating with the earth, and ordinary satellites communicate with the earth indirectly through key satellites. An automatic table building module is used to automatically build a data table based on the simulation parameters. A custom data source module is used to generate a first data element once based on the simulation parameters and preset rules at each preset simulation step. The first data element includes a satellite health status matrix, a co-orbit link status matrix, and a cross-orbit link status matrix corresponding to multiple target satellites. The satellite health status matrix is used to characterize the status of each target satellite. The status of the target satellite includes a normal state and an abnormal state. The satellite in the normal state has the communication function, and the satellite in the abnormal state loses the communication function. The co-orbit link status matrix is used to characterize the status of the co-orbit link corresponding to each target satellite, and the cross-orbit link status matrix is used to characterize the status of the cross-orbit link corresponding to each key satellite; the status of the co-orbit link and the status of the cross-orbit link both include a connected state and an interrupted state;
[0018] a first conversion operator module, configured to, in response to generating a target first data element, calculate, based on the target first data element, a second data element corresponding to the target first data element, wherein the target first data element is the first data element generated at any time, and the second data element corresponding to the target first data element includes a connectivity matrix and an off-network rate of each target satellite;
[0019] a second conversion operator module, configured to calculate, in response to generating a target second data element, a third data element corresponding to the target second data element, the target second data element being any second data element generated at any time. The third data element corresponding to the target second data element includes the target second data element converted into a preset format;
[0020] The data sink module is configured to store the target third data element into the data table in response to generating the target third data element.
[0021] On the basis of the above technical solution, the present invention can also be improved as follows.
[0022] Furthermore, the simulation parameters include the number of multiple orbits, the number of target satellites operating in any orbit, the number of inter-orbit links, the mean time between failures of each inter-satellite link interruption, the repair time of each inter-satellite link interruption, the mean time between failures of each target satellite, the satellite network reconnection interval of each target satellite, the simulation step size, the number of simulation rounds, the identifier of the target constellation, and the position of each key satellite. An inter-satellite link is a communication link between two adjacent target satellites in the constellation network topology.
[0023] Furthermore, the automatic table creation module is specifically configured to set a preset number of data table fields, update the preset number of data table fields based on the simulation parameters, and generate a data table based on the updated preset number of data table fields.
[0024] Furthermore, the custom data source module is specifically used to obtain a first satellite health status matrix, a first satellite failure duration matrix, a first co-orbit link interruption duration matrix, a first cross-orbit link interruption duration matrix, a first co-orbit link state matrix, and a first cross-orbit link state matrix corresponding to multiple target satellites. If the first data element is generated for the first time, the first satellite health status matrix is a preset initial satellite health status matrix, the first satellite failure duration matrix is a preset initial satellite failure duration matrix, the first co-orbit link interruption duration matrix is a preset initial co-orbit link interruption duration matrix, the first cross-orbit link interruption duration matrix is a preset initial cross-orbit link interruption duration matrix, the first co-orbit link state matrix is a preset initial co-orbit link state matrix, and the first cross-orbit link state matrix is a preset initial cross-orbit link state matrix. If the first data element is generated for the Nth time, the first satellite health status matrix is the satellite health status matrix included in the first data element determined for the N-1th time, the first on-orbit link status matrix is the on-orbit link status matrix included in the first data element determined for the N-1th time, the first cross-orbit link status matrix is the cross-orbit link status matrix included in the first data element determined for the N-1th time, the first satellite failure duration matrix is determined based on the satellite health status matrix included in the first data element determined for the N-2th time and the satellite health status matrix included in the first data element determined for the N-1th time, the first on-orbit link interruption duration matrix is determined based on the on-orbit link status matrix included in the first data element determined for the N-2th time and the on-orbit link status matrix included in the first data element determined for the N-1th time, and the first cross-orbit link interruption duration matrix is determined based on the cross-orbit link status matrix included in the first data element determined for the N-2th time and the cross-orbit link status matrix included in the first data element determined for the N-1th time, where N is greater than or equal to 2.
[0025] Based on the failure probability of each target satellite, the first satellite failure duration matrix, and the satellite network refill interval, the first satellite health status matrix is updated to obtain a satellite health status matrix. Based on the first satellite health status matrix and the satellite health status matrix, the first satellite failure duration matrix is updated.
[0026] For any orbit, a first target satellite and a second target satellite are determined on the orbit. The first target satellite is a target satellite that is in an abnormal state after the current simulation step. The second target satellite is a target satellite that is in an abnormal state before the current simulation step and is in a normal state after the current simulation step. A co-orbital link coupled to the state of the first target satellite and a co-orbital link coupled to the state of the second target satellite are determined. Based on the states of the co-orbital links coupled to the state of the first target satellite and the states of the co-orbital links coupled to the state of the second target satellite, data corresponding to the co-orbital links coupled to the state of the first target satellite in the first co-orbital link state matrix are updated. Furthermore, data corresponding to the co-orbital links coupled to the state of the second target satellite in the first co-orbital link state matrix are updated to obtain a second co-orbital link state matrix. A third co-orbital link is determined in the target constellation. The co-orbital link coupled to the state of the first target satellite and the co-orbital link coupled to the state of the second target satellite are different from the third co-orbital link. Based on the link outage probability, the first co-orbital link outage duration matrix, and the inter-satellite link outage repair time, data corresponding to the third co-orbital link in the second co-orbital link state matrix are updated to obtain a co-orbital link state matrix. Based on the first co-track link state matrix and the co-track link state matrix, the first co-track link interruption duration matrix is updated.
[0027] Determine an inter-orbital link coupled to the state of a first target satellite and an inter-orbital link coupled to the state of a second target satellite. Based on the state of the inter-orbital link coupled to the state of the first target satellite and the state of the inter-orbital link coupled to the state of the second target satellite, update the data corresponding to the inter-orbital link coupled to the state of the first target satellite in the first inter-orbital link state matrix, and update the data corresponding to the inter-orbital link coupled to the state of the second target satellite in the first inter-orbital link state matrix to obtain a second inter-orbital link state matrix. Determine a third inter-orbital link in the target constellation, wherein the inter-orbital link coupled to the state of the first target satellite and the inter-orbital link coupled to the state of the second target satellite are different from the third inter-orbital link. Based on the link interruption probability, the first inter-orbital link interruption duration matrix, and the repair time of the inter-satellite link interruption, update the data corresponding to the third inter-orbital link in the second inter-orbital link state matrix to obtain a inter-orbital link state matrix. Based on the first inter-orbital link state matrix and the inter-orbital link state matrix, update the first inter-orbital link interruption duration matrix.
[0028] A first data element is generated based on the satellite health status matrix, the co-orbit link status matrix, and the cross-orbit link status matrix.
[0029] Furthermore, the first conversion operator module is specifically configured to, in response to generating the target first data element, determine an adjacency matrix corresponding to each key satellite based on the co-orbit link state matrix, the cross-orbit link state matrix, and the positions of each key satellite included in the target first data element. The adjacency matrix is converted into a reachability matrix. Based on the reachability matrix, a backbone network is determined. The backbone network is a network that includes the largest number of key satellites, and any two key satellites in the backbone network are reachable. Based on the backbone network, the offline status of each key satellite is determined. For any orbit, based on the offline status of the key satellites in any orbit, the connectivity status between the ordinary satellites in any orbit and the backbone network is determined. Based on the connectivity status between the ordinary satellites in each orbit and the backbone network, the connectivity status matrix and offline rate of each target satellite are determined. Based on the connectivity status matrix and offline rate of each target satellite, a second data element corresponding to the target first data element is determined.
[0030] The beneficial effects of the present invention are as follows: the present invention includes S1, setting simulation parameters; S2, automatically constructing a data table based on the simulation parameters; S3, generating a first data element once at a preset simulation step length based on the simulation parameters and preset rules; S4, in response to generating a target first data element, calculating a second data element corresponding to the target first data element based on the target first data element; S5, in response to generating a target second data element, calculating a third data element corresponding to the target second data element; and S6, in response to generating a target third data element, storing the target third data element in the data table.
[0031] S1-S2 are the preparatory steps before executing the constellation network reliability simulation program. Each simulation step includes all steps S3-S6. Conventional serial simulation programs must complete the corresponding processing steps S3-S6 in sequence before proceeding to the next simulation step. However, in the present invention, each step S3-S6 completes its own simulation task and sends the data elements downstream before proceeding to the next simulation step. There is no need to wait for all steps S3-S6 to complete before proceeding to the next simulation step. This improves simulation efficiency and meets the requirements of high-efficiency, multi-round simulation. BRIEF DESCRIPTION OF THE DRAWINGS
[0032] Figure 1 This is a schematic diagram of a constellation network topology;
[0033] Figure 2 A schematic diagram of the flow of the constellation network reliability simulation method based on stream computing provided by the present invention;
[0034] Figure 3 A schematic diagram of a process for generating a first data element provided by the present invention;
[0035] Figure 4A schematic diagram of the structure of the custom data source module provided by the present invention;
[0036] Figure 5 A schematic diagram of a process for generating a second data element provided by the present invention;
[0037] Figure 6 This is a schematic diagram of the structure of the constellation network reliability simulation system based on streaming computing provided by the present invention;
[0038] Figure 7 A schematic diagram of the result of printing the first data element to the console provided by the present invention;
[0039] Figure 8 This is a schematic diagram of a curve of the off-line rate in 5 tests provided by the present invention. DETAILED DESCRIPTION
[0040] The technical solutions in the embodiments of the present application will be described below in conjunction with the drawings in the embodiments of the present application. Among them, in the description of the present application, unless otherwise specified, " / " indicates that the objects associated before and after are in an "or" relationship. For example, A / B can represent A or B; "and / or" in the present application is only a description of the association relationship of the associated objects, indicating that there can be three relationships. For example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone, where A and B can be singular or plural. In addition, in the description of the present application, unless otherwise specified, "multiple" refers to two or more than two. "At least one of the following" or similar expressions refers to any combination of these items, including any combination of single or plural items. For example, at least one of a, b, or c can represent: a, b, c, ab, ac, bc, or abc, where a, b, c can be single or multiple. In addition, in order to facilitate the clear description of the technical solutions of the embodiments of the present application, in the embodiments of the present application, words such as "first" and "second" are used to distinguish between identical or similar items with substantially the same functions and effects. Those skilled in the art will understand that words such as "first" and "second" do not limit the quantity and execution order, and words such as "first" and "second" do not necessarily limit differences. At the same time, in the embodiments of the present application, words such as "exemplary" or "for example" are used to indicate examples, illustrations or explanations. Any embodiment or design described as "exemplary" or "for example" in the embodiments of the present application should not be interpreted as being more preferred or more advantageous than other embodiments or design.
[0041] Currently, the world's space powers are proposing and gradually implementing various large / mega satellite constellation construction projects and plans, and technological innovation and transformation of the next generation global Internet are quietly taking place. Satellite constellations typically contain hundreds, thousands, or even tens of thousands of satellite nodes, and form a complex network topology through inter-satellite links. In actual projects, the satellite constellation network topology is generally a non-holonomic type, with StarLink and Iridium as typical representatives. In the case of a non-holonomic topology, see Figure 1 Satellites in a constellation are divided into key satellites (e.g., satellite 101) and standard satellites (e.g., satellite 102). Satellites connected across orbits are key satellites, while other satellites in the same orbit are standard satellites. With the increasing number of satellite nodes and inter-satellite links in a constellation, reliability assessment of constellation networks faces significant challenges. Traditional reliability analysis methods, such as reliability block diagrams and fault tree analysis, are insufficient to support the reliability assessment of large-scale satellite constellation networks.
[0042] As satellite constellations continue to operate in orbit, intersatellite link outages and satellite node failures will occur frequently, leading to changes in the constellation network topology. The spatiotemporal distribution of link outages and node failures has a significant and complex impact on network reliability. Therefore, constellation network design requires the use of reliability simulation methods and related software to assess network reliability and efficiently collect the large amounts of process and result data generated by reliability simulations.
[0043] The conventional reliability simulation process is a serial one. The simulation proceeds in steps, typically set to one hour by default in constellation network reliability simulations. Each step performs the following simulation calculations: First, the status of all nodes and intersatellite links in the constellation is sampled. Based on the network patching and link repair strategies, a satellite health (normal / failed) status matrix and a link (connection / disconnection) status matrix are generated for each simulation step. Then, based on the satellite health and link status matrices, the connectivity status of each satellite with other satellites is calculated to identify satellites that have been disconnected from the network and, based on this, calculate the satellite disconnection rate. Finally, the reliability of the entire network topology is assessed based on the satellite disconnection rate time series.
[0044] However, when the process data and result data involved in each simulation step need to be written into the database synchronously, the conventional serial simulation program will run slower and it will be difficult to meet the requirements of high-efficiency, multi-round simulation.
[0045] To address the above problems, the present invention provides a constellation network reliability simulation method and system based on streaming computing, which can improve simulation efficiency and meet the requirements of high-efficiency, multi-round simulation.
[0046] See also Figure 2The constellation network reliability simulation method based on stream computing provided by the present invention includes the following steps S201-S206:
[0047] S201: Setting simulation parameters.
[0048] The simulation parameters include parameters associated with the target constellation and parameters associated with executing the simulation. The target constellation includes multiple target satellites and multiple orbits. The multiple target satellites include key satellites and ordinary satellites. Key satellites are satellites used for communicating with the Earth, while ordinary satellites communicate with the Earth indirectly through key satellites. Each orbit can have multiple key satellites and multiple ordinary satellites operating.
[0049] In some embodiments, when conducting constellation network reliability simulation analysis, multiple parameter settings are required, including network topology parameters, basic reliability parameters, simulation execution parameters, etc. Specifically, the simulation parameters that can be set include the number of multiple orbits M, the number of target satellites operating in any orbit N, the number of cross-orbit links K, the mean time between failures linkMtbf for each inter-satellite link interruption, the repair time for each inter-satellite link interruption, the mean time between failures satMtbf for each target satellite, the satellite network reconnection interval for each target satellite, the simulation step size, the number of simulation rounds, the identifier of the target constellation, and the location of each key satellite. An inter-satellite link is a communication link between two adjacent target satellites in the constellation network topology diagram.
[0050] In some embodiments, after setting the simulation parameters, a parameter configuration file corresponding to each simulation parameter may be generated, wherein the parameter configuration file includes the simulation parameters converted into a preset parameter format.
[0051] S202: Automatically construct a data table based on the simulation parameters.
[0052] Under the streaming computing paradigm, each data element needs to be written to the database in real time. Each simulation step of the constellation network reliability simulation generates corresponding process data and result data, which must be written to the database after each simulation step. Because the configuration parameters of the constellation network reliability simulation vary, a matching table must be created in the database before each simulation execution. To eliminate the tedious process of manual table creation by the user, in some embodiments, a preset number of data table fields can be set. Based on the simulation parameters, the preset number of data table fields are updated. A data table is generated based on the updated preset number of data table fields. In other words, embodiments of the present application can eliminate the tedious process of manual data table creation by the user and enable automatic data table creation.
[0053] Exemplarily, the process of automatically creating a data table in an embodiment of the present application is described in detail below.
[0054] First, you can obtain the timestamp of the simulation program execution start, accurate to the millisecond, and prefix the string "consimul_" to define the table name, for example, "consimul_1724039488785". Then, you can design the corresponding fields. For example, set the following eight fields:
[0055] ts timestamp(3), this field is the timestamp corresponding to each simulation step;
[0056] cons_id int, this field is the key of the constellation;
[0057] simul_step, this field is the simulation process;
[0058] sathealth char(n1), this field is the satellite health status string, converted from the matrix, n1 = M*N, bound to the configuration parameters;
[0059] ordlink char(n2), this field is the on-track link status string, converted from the matrix, n2 = M*N, and is bound to the configuration parameters;
[0060] keylink char(n3), this field is the cross-track link status string, converted from the matrix, n3 = M*K, and is bound to the configuration parameters;
[0061] satlink char(n4), this field is the satellite connectivity status string, converted from the matrix, n4 = M*N, bound to the configuration parameters;
[0062] satdiscrate double, this field is the satellite disconnection rate.
[0063] From the above content, we can see that when the satellite health status, on-orbit link status, and cross-orbit link status in the satellite constellation simulation configuration parameters change, the data types of the corresponding table fields sathealth, ordlink, and keylink must be adjusted (updated). These are configuration parameter binding fields, and the benefits of automatically creating tables through the program are obvious.
[0064] S203: Generate a first data element once at each preset simulation step based on simulation parameters and preset rules.
[0065] The first data element includes a satellite health status matrix, a co-orbit link status matrix, and a cross-orbit link status matrix corresponding to multiple target satellites. The satellite health status matrix is used to represent the status of each target satellite. The target satellite status includes normal and abnormal states. A satellite in normal state has communication capabilities, while a satellite in abnormal state has lost communication capabilities. The co-orbit link status matrix is used to represent the status of the co-orbit link corresponding to each target satellite, and the cross-orbit link status matrix is used to represent the status of the cross-orbit link corresponding to each key satellite. The co-orbit link status and cross-orbit link status both include connected and disconnected states.
[0066] In some embodiments, a first satellite health status matrix, a first satellite failure duration matrix, a first co-orbit link interruption duration matrix, a first cross-orbit link interruption duration matrix, a first co-orbit link status matrix, and a first cross-orbit link status matrix corresponding to multiple target satellites can be obtained.
[0067] Among them, if the first data element is generated for the first time, the first satellite health status matrix is the preset initial satellite health status matrix, the first satellite failure duration matrix is the preset initial satellite failure duration matrix, the first co-orbit link interruption duration matrix is the preset initial co-orbit link interruption duration matrix, the first cross-orbit link interruption duration matrix is the preset initial cross-orbit link interruption duration matrix, the first co-orbit link state matrix is the preset initial co-orbit link state matrix, and the first cross-orbit link state matrix is the preset initial cross-orbit link state matrix.
[0068] If the first data element is generated for the Nth time, the first satellite health status matrix is the satellite health status matrix included in the first data element determined for the N-1th time, the first on-orbit link status matrix is the on-orbit link status matrix included in the first data element determined for the N-1th time, the first cross-orbit link status matrix is the cross-orbit link status matrix included in the first data element determined for the N-1th time, the first satellite failure duration matrix is determined based on the satellite health status matrix included in the first data element determined for the N-2th time and the satellite health status matrix included in the first data element determined for the N-1th time, the first on-orbit link interruption duration matrix is determined based on the on-orbit link status matrix included in the first data element determined for the N-2th time and the on-orbit link status matrix included in the first data element determined for the N-1th time, and the first cross-orbit link interruption duration matrix is determined based on the cross-orbit link status matrix included in the first data element determined for the N-2th time and the cross-orbit link status matrix included in the first data element determined for the N-1th time, where N is greater than or equal to 2.
[0069] The first satellite health status matrix can be updated based on the failure probability of each target satellite, the first satellite failure duration matrix, and the satellite network refill interval to obtain a satellite health status matrix. The first satellite failure duration matrix is updated based on the first satellite health status matrix and the satellite health status matrix.
[0070] For any orbit, a first target satellite and a second target satellite on any orbit can be determined. The first target satellite is a target satellite that is in an abnormal state after the current simulation step. The second target satellite is a target satellite that is in an abnormal state before the current simulation step and is in a normal state after the current simulation step. A co-orbital link coupled to the state of the first target satellite and a co-orbital link coupled to the state of the second target satellite are determined. Based on the states of the co-orbital links coupled to the state of the first target satellite and the states of the co-orbital links coupled to the state of the second target satellite, the data corresponding to the co-orbital links coupled to the state of the first target satellite in the first co-orbital link state matrix are updated. Furthermore, the data corresponding to the co-orbital links coupled to the state of the second target satellite in the first co-orbital link state matrix are updated to obtain a second co-orbital link state matrix. A third co-orbital link is determined in the target constellation. The co-orbital link coupled to the state of the first target satellite and the co-orbital link coupled to the state of the second target satellite are different from the third co-orbital link. Based on the link outage probability, the first co-orbital link outage duration matrix, and the inter-satellite link outage repair time, the data corresponding to the third co-orbital link in the second co-orbital link state matrix are updated to obtain a co-orbital link state matrix. Based on the first co-track link state matrix and the co-track link state matrix, the first co-track link interruption duration matrix is updated.
[0071] It is also possible to determine an inter-orbital link coupled to the state of the first target satellite and an inter-orbital link coupled to the state of the second target satellite. Based on the state of the inter-orbital link coupled to the state of the first target satellite and the state of the inter-orbital link coupled to the state of the second target satellite, update the data corresponding to the inter-orbital link coupled to the state of the first target satellite in the first inter-orbital link state matrix, and update the data corresponding to the inter-orbital link coupled to the state of the second target satellite in the first inter-orbital link state matrix to obtain a second inter-orbital link state matrix. Determine a third inter-orbital link in the target constellation, wherein the inter-orbital link coupled to the state of the first target satellite and the inter-orbital link coupled to the state of the second target satellite are different from the third inter-orbital link. Based on the link interruption probability, the first inter-orbital link interruption duration matrix, and the repair time of the inter-satellite link interruption, update the data corresponding to the third inter-orbital link in the second inter-orbital link state matrix to obtain a inter-orbital link state matrix. Based on the first inter-orbital link state matrix and the inter-orbital link state matrix, update the first inter-orbital link interruption duration matrix.
[0072] The first data element may be generated based on a satellite health status matrix, a co-orbit link status matrix, and an inter-orbit link status matrix.
[0073] For example, the following Figure 3 , describes in detail the process of generating the first data element in the embodiment of the present application. Among them, the embodiment of the present application can generate the first data element by a custom data source module. Figure 4 As shown, the custom data source module may include a constructor submodule, a run() function submodule, and a cancel() function submodule.
[0074] Among them, the constructor submodule can be used to:
[0075] Extract simulation parameters from the class input parameters, which are configuration parameters packaged into the sample class "ConsSimulParams";
[0076] Define the variable running as a marker to control the run() function loop;
[0077] Based on satMtbf, linkMtbf and the simulation step size (the default is 1 hour), the satellite failure probability and link interruption probability for sampling are calculated respectively.
[0078] The run() function submodule is the core of the custom data source module. It consists of a double-layer nested loop. The outer loop controls the simulation execution rounds, while the inner loop controls the simulation step. Both loops are terminated by the running variable. The run() function submodule can be used to:
[0079] At the beginning of each simulation cycle, the matrices involved in the simulation are initialized. The satellite health matrix satHealth (matrix dimension M×N) is initialized to a matrix of all 1s (1 indicates normal, 0 indicates abnormal), and the satellite failure time matrix satFailureTime (matrix dimension M×N) is initialized to a matrix of all 0s.
[0080] The link status matrix linkOrd (matrix dimension M×N) of the same track is initialized to a matrix of all 1s (1 indicates connection, 0 indicates disconnection), and the link interruption duration matrix delinkOrdTime (matrix dimension M×N) of the same track is initialized to a matrix of all 0s.
[0081] The cross-track link state matrix linkKey (matrix dimension M×K) is initialized to an all-1 matrix (1 indicates connectivity, 0 indicates disconnection), and the cross-track link interruption duration matrix delinkKeyTime (matrix dimension M×K) is initialized to an all-0 matrix.
[0082] In each simulation step, the matrix satHealth and matrix satFailureTime must be operated first. SatHealth is updated according to the satellite failure probability and satellite failure duration matrix, and satFailureTime is updated according to the changes in satHealth before and after the current step.
[0083] Then, the matrix linkOrd and the matrix delinkOrdTime need to be operated in the same way as the satellite node related matrix update operation. The difference is that the links coupled with the satellite nodes need to be identified from the M×N co-orbit links. Two aspects need to be considered: on the one hand, find out the satellite nodes that fail at the end of this simulation step. The links directly related to them are all disconnected, and this simulation step has no effect on their state changes; on the other hand, find out the satellite nodes that are normal at the end of the failure at the beginning of this simulation step. The links directly related to them are all normal, and this simulation step has no effect on their states.
[0084] Similarly, finally, the above method should be used to perform relevant operations on the matrix linkKey and the matrix delinkKeyTime.
[0085] Package the current timestamp, constellation ID, simulation step, satHealth, linkOrd, and linkKey into "ConstellationSourceData" and output it. This loop sleeps for 1ms to sort the event time of each simulation source data item in ascending order for easier subsequent data element processing.
[0086] The cancel() function submodule only performs one process, which is to set the variable running to false.
[0087] S204: In response to generating the target first data element, determine a second data element corresponding to the target first data element based on the target first data element.
[0088] The target first data element is the first data element generated at any time, and the second data element corresponding to the target first data element includes the connectivity state matrix and the disconnection rate of each target satellite.
[0089] Unlike serial simulation programs, this embodiment of the present application can implement distributed processing for data source simulation and subsequent processing steps, significantly improving simulation efficiency. In this embodiment of the present application, after reading any first data element, calculations can be performed on that first data element to obtain the target satellite's connectivity matrix and disconnection rate based on the multiple state matrices in that first data element.
[0090] For details, see Figure 5In response to generating the target first data element, an adjacency matrix corresponding to each key satellite is determined based on the co-orbit link state matrix, the inter-orbit link state matrix, and the position of each key satellite included in the target first data element. The adjacency matrix is converted into a reachability matrix. Based on the reachability matrix, a backbone network is determined. The backbone network is a network that includes the largest number of key satellites, and any two key satellites in the backbone network are reachable. Based on the backbone network, the offline status of each key satellite is determined.
[0091] For any orbit, the connectivity status between the common satellites included in any orbit and the backbone network is determined based on the offline status of the key satellites included in any orbit.
[0092] Based on the connectivity status between ordinary satellites in each orbit and the backbone network, a connectivity status matrix and a disconnection rate of each target satellite are determined. Based on the connectivity status matrix and the disconnection rate of each target satellite, a second data element corresponding to the target first data element is determined.
[0093] S205: In response to generating the target second data element, determining a third data element corresponding to the target second data element.
[0094] The target second data element is a second data element generated at any time. The third data element corresponding to the target second data element includes the target second data element converted into a preset format.
[0095] Because the resulting second data element contains a large number of matrix elements, these matrices cannot be directly stored in the database. To minimize data storage space, the second data element needs to be converted into a data format that is convenient for storage, that is, converted into the corresponding third data element. The third data element includes a string formed by concatenating rows one by one, and the length of the string matches the format of the data table.
[0096] S206: In response to generating the target third data element, storing the target third data element into the data table.
[0097] Among them, you can call Flink's own addSink function to write the obtained third data element into the data table one by one in real time according to the stream computing method.
[0098] As can be seen, in the stream computing-based constellation network reliability simulation method provided in the embodiments of the present application, S201-S202 are the preparatory steps before executing the constellation network reliability simulation program. Each simulation step includes all steps S203-S206. Conventional serial simulation programs must sequentially execute the corresponding processing steps S203-S206 before proceeding to the next simulation step. However, in the present invention, each step S203-S206 automatically proceeds to the next simulation step after completing its own simulation task and sending the data elements downstream. There is no need to wait for all steps S203-S206 to complete before proceeding to the next simulation step. This improves simulation efficiency and meets the requirements of high-efficiency, multi-round simulation.
[0099] On the other hand, the present invention provides a constellation network reliability simulation system based on stream computing, see Figure 6 , including a simulation configuration module, an automatic table creation module, a custom data source module, a first conversion operator module, a second conversion operator module and a data sink module.
[0100] The simulation configuration module is used to set simulation parameters.
[0101] The simulation parameters include parameters associated with the target constellation for simulation and parameters associated with executing the simulation. The target constellation includes multiple target satellites and multiple orbits. The multiple target satellites include key satellites and ordinary satellites. Key satellites are satellites used for communicating with the Earth, while ordinary satellites communicate with the Earth indirectly through key satellites.
[0102] The automatic table building module is used to automatically build data tables based on simulation parameters.
[0103] The custom data source module is used to preset the simulation step size at each interval and generate the first data element once based on the simulation parameters and preset rules.
[0104] The first data element includes a satellite health status matrix, a co-orbit link status matrix, and a cross-orbit link status matrix corresponding to multiple target satellites. The satellite health status matrix is used to represent the status of each target satellite. The target satellite status includes normal and abnormal states. A satellite in normal state has communication capabilities, while a satellite in abnormal state has lost communication capabilities. The co-orbit link status matrix is used to represent the status of the co-orbit link corresponding to each target satellite, and the cross-orbit link status matrix is used to represent the status of the cross-orbit link corresponding to each key satellite. The co-orbit link status and cross-orbit link status both include connected and disconnected states.
[0105] The first conversion operator module is configured to, in response to generating a target first data element, calculate a second data element corresponding to the target first data element based on the target first data element.
[0106] The target first data element is the first data element generated at any time, and the second data element corresponding to the target first data element includes the connectivity state matrix and the disconnection rate of each target satellite.
[0107] The second conversion operator module is configured to calculate a third data element corresponding to the target second data element in response to generating the target second data element.
[0108] The target second data element is a second data element generated at any time. The third data element corresponding to the target second data element includes the target second data element converted into a preset format.
[0109] The data sink module is configured to store the target third data element into the data table in response to generating the target third data element.
[0110] In some embodiments, the simulation parameters include the number of multiple orbits, the number of target satellites operating in any orbit, the number of cross-orbit links, the mean time between failures of each inter-satellite link interruption, the repair time of each inter-satellite link interruption, the mean time between failures of each target satellite, the satellite network reconnection interval of each target satellite, the simulation step size, the number of simulation rounds, the identifier of the target constellation, and the position of each key satellite. The inter-satellite link is a communication link between two adjacent target satellites in the constellation network topology diagram.
[0111] In some embodiments, the automatic table creation module is specifically configured to set a preset number of data table fields, update the preset number of data table fields based on simulation parameters, and generate a data table based on the updated preset number of data table fields.
[0112] In some embodiments, the custom data source module is specifically used to obtain a first satellite health status matrix, a first satellite failure duration matrix, a first co-orbit link interruption duration matrix, a first cross-orbit link interruption duration matrix, a first co-orbit link state matrix, and a first cross-orbit link state matrix corresponding to multiple target satellites. If the first data element is generated for the first time, the first satellite health status matrix is a preset initial satellite health status matrix, the first satellite failure duration matrix is a preset initial satellite failure duration matrix, the first co-orbit link interruption duration matrix is a preset initial co-orbit link interruption duration matrix, the first cross-orbit link interruption duration matrix is a preset initial cross-orbit link interruption duration matrix, the first co-orbit link state matrix is a preset initial co-orbit link state matrix, and the first cross-orbit link state matrix is a preset initial cross-orbit link state matrix. If the first data element is generated for the Nth time, the first satellite health status matrix is the satellite health status matrix included in the first data element determined for the N-1th time, the first on-orbit link status matrix is the on-orbit link status matrix included in the first data element determined for the N-1th time, the first cross-orbit link status matrix is the cross-orbit link status matrix included in the first data element determined for the N-1th time, the first satellite failure duration matrix is determined based on the satellite health status matrix included in the first data element determined for the N-2th time and the satellite health status matrix included in the first data element determined for the N-1th time, the first on-orbit link interruption duration matrix is determined based on the on-orbit link status matrix included in the first data element determined for the N-2th time and the on-orbit link status matrix included in the first data element determined for the N-1th time, and the first cross-orbit link interruption duration matrix is determined based on the cross-orbit link status matrix included in the first data element determined for the N-2th time and the cross-orbit link status matrix included in the first data element determined for the N-1th time, where N is greater than or equal to 2.
[0113] Based on the failure probability of each target satellite, the first satellite failure duration matrix, and the satellite network refill interval, the first satellite health status matrix is updated to obtain a satellite health status matrix. Based on the first satellite health status matrix and the satellite health status matrix, the first satellite failure duration matrix is updated.
[0114] For any orbit, a first target satellite and a second target satellite are determined on the orbit. The first target satellite is a target satellite that is in an abnormal state after the current simulation step. The second target satellite is a target satellite that is in an abnormal state before the current simulation step and is in a normal state after the current simulation step. A co-orbital link coupled to the state of the first target satellite and a co-orbital link coupled to the state of the second target satellite are determined. Based on the states of the co-orbital links coupled to the state of the first target satellite and the states of the co-orbital links coupled to the state of the second target satellite, data corresponding to the co-orbital links coupled to the state of the first target satellite in the first co-orbital link state matrix are updated. Furthermore, data corresponding to the co-orbital links coupled to the state of the second target satellite in the first co-orbital link state matrix are updated to obtain a second co-orbital link state matrix. A third co-orbital link is determined in the target constellation. The co-orbital link coupled to the state of the first target satellite and the co-orbital link coupled to the state of the second target satellite are different from the third co-orbital link. Based on the link outage probability, the first co-orbital link outage duration matrix, and the inter-satellite link outage repair time, data corresponding to the third co-orbital link in the second co-orbital link state matrix are updated to obtain a co-orbital link state matrix. Based on the first co-track link state matrix and the co-track link state matrix, the first co-track link interruption duration matrix is updated.
[0115] Determine an inter-orbital link coupled to the state of a first target satellite and an inter-orbital link coupled to the state of a second target satellite. Based on the state of the inter-orbital link coupled to the state of the first target satellite and the state of the inter-orbital link coupled to the state of the second target satellite, update the data corresponding to the inter-orbital link coupled to the state of the first target satellite in the first inter-orbital link state matrix, and update the data corresponding to the inter-orbital link coupled to the state of the second target satellite in the first inter-orbital link state matrix to obtain a second inter-orbital link state matrix. Determine a third inter-orbital link in the target constellation, wherein the inter-orbital link coupled to the state of the first target satellite and the inter-orbital link coupled to the state of the second target satellite are different from the third inter-orbital link. Based on the link interruption probability, the first inter-orbital link interruption duration matrix, and the repair time of the inter-satellite link interruption, update the data corresponding to the third inter-orbital link in the second inter-orbital link state matrix to obtain a inter-orbital link state matrix. Based on the first inter-orbital link state matrix and the inter-orbital link state matrix, update the first inter-orbital link interruption duration matrix.
[0116] A first data element is generated based on the satellite health status matrix, the co-orbit link status matrix, and the cross-orbit link status matrix.
[0117] For the description of the custom data source module, please refer to the description of the custom data source module in the aforementioned method embodiment, which will not be repeated here.
[0118] In some embodiments, the first conversion operator module is specifically configured to, in response to generating a target first data element, determine an adjacency matrix corresponding to each key satellite based on the co-orbit link state matrix, the cross-orbit link state matrix, and the positions of each key satellite included in the target first data element. The adjacency matrix is converted into a reachability matrix. Based on the reachability matrix, a backbone network is determined. The backbone network is a network that includes the largest number of key satellites, and any two key satellites in the backbone network are reachable. Based on the backbone network, the offline status of each key satellite is determined. For any orbit, based on the offline status of the key satellites included in any orbit, the connectivity status between the ordinary satellites included in any orbit and the backbone network is determined. Based on the connectivity status between the ordinary satellites on each orbit and the backbone network, the connectivity status matrix and offline rate of each target satellite are determined. Based on the connectivity status matrix and offline rate of each target satellite, a second data element corresponding to the target first data element is determined.
[0119] In some schemes, multiple embodiments of the present application can be combined and the combined scheme can be implemented. Optionally, some operations in the process of each method embodiment are optionally combined, and / or the order of some operations is optionally changed. In addition, the execution order between the steps of each process is only exemplary and does not constitute a limitation on the execution order between the steps. There can also be other execution orders between the steps. It is not intended to indicate that the execution order is the only order in which these operations can be performed. Ordinary technicians in this field will think of many ways to reorder the operations described herein. In addition, it should be noted that the process details involved in a certain embodiment of this article are also applicable to other embodiments in a similar manner, or different embodiments can be used in combination.
[0120] Furthermore, some steps in the method embodiments may be equivalently replaced with other possible steps. Alternatively, some steps in the method embodiments may be optional and may be deleted in certain usage scenarios. Alternatively, other possible steps may be added to the method embodiments. Furthermore, the various method embodiments may be implemented separately or in combination.
[0121] The following describes in detail the example verification of the constellation network reliability simulation method and system based on streaming computing provided by the present invention.
[0122] 1. Constellation Network Reliability Simulation Test Configuration
[0123] The flow calculation program is tested based on the simulation configuration in the previous example. The topology diagram of the constellation under this configuration can be found in Figure 1The constellation consists of 10 orbits, each with 21 standard satellites and three key node satellites. In addition, the constellation has three inter-orbit links. The MTBF for link interruption is set to 1,000 hours, with a link repair time of 24 hours. The MTBF for satellite failure is set to 43,800 hours, with a satellite re-networking time of 720 hours. The simulation runs for 10,000 steps, simulating 10,000 hours of constellation in-orbit operation.
[0124] 2. Test items and test methods
[0125] The main test items and their test methods are shown in Table 1:
[0126] Table 1
[0127]
[0128] 3. Test process and results
[0129] 1. Custom data source test
[0130] in accordance with Figure 2 Run the Flink program in steps S201-S203, read the first data element generated, and print the result to the console as follows: Figure 7 shown.
[0131] The test results show:
[0132] The first data element contains the timestamp, constellation ID, simulation step, satellite health status matrix, co-orbit link status matrix, and cross-orbit link status matrix;
[0133] The timestamps are increasing, the simulation step size increases correctly, and the data is not out of order;
[0134] The program takes about 22 seconds to run;
[0135] The time difference between the last data and the first data is 18320ms.
[0136] 2. First conversion operator module test
[0137] in accordance with Figure 2 The Flink program runs steps S201-S204 to generate the second data element, which can be printed to the console normally.
[0138] The test results show:
[0139] The source data elements include timestamp, constellation ID, simulation step, satellite health status matrix, co-orbit link status matrix, cross-orbit link status matrix, satellite connectivity status matrix and satellite disconnection rate;
[0140] The timestamps are increasing, the simulation step size increases correctly, and the data is not out of order;
[0141] The program takes about 25 seconds to run;
[0142] The time difference between the last data and the first data is 18375ms.
[0143] 3. Simulation overall test
[0144] in accordance with Figure 2 The entire Flink program (steps S201-S206) was run, and the program runtime, including database writing, was tested. A total of five tests were performed. The test results are shown in Table 2 below.
[0145] Table 2
[0146]
[0147] As you can see, the average time it takes to run the entire program is around 74 seconds. Checking the database, the data corresponding to the five simulations can be written into the data table normally.
[0148] 4. Offline rate test
[0149] In the data table, the off-line rate data of 5 tests can be exported and the off-line rate curves can be drawn respectively (for example, see Figure 8 ). Among them, the off-grid rate ≤ 5% can be used as the constellation reliability evaluation standard, and the average constellation reliability value after 5 simulations is 80.6%.
[0150] Through the description of the above implementation methods, technical personnel in the relevant field can clearly understand that for the convenience and simplicity of description, only the division of the above-mentioned functional modules is used as an example. In actual applications, the above-mentioned functions can be assigned to different functional modules as needed, that is, the internal structure of the system can be divided into different functional modules to complete all or part of the functions described above.
[0151] In the several embodiments provided in this application, it should be understood that the disclosed systems and methods can be implemented in other ways. For example, the system embodiments described above are merely schematic. For example, the division of the modules or units is merely a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of systems or units, which can be electrical, mechanical or other forms.
[0152] In addition, the functional units in the various embodiments of the present application may be integrated into a single processing unit, or each unit may exist physically separately, or two or more units may be integrated into a single unit. The aforementioned integrated units may be implemented in the form of hardware or software functional units.
[0153] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a readable storage medium. Based on this understanding, the technical solution of the embodiment of the present application is essentially or the contributing part or all or part of the technical solution can be embodied in the form of a software product, which is stored in a storage medium and includes several instructions for enabling a device (which can be a single-chip microcomputer, chip, etc.) or a processor to execute all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.
[0154] The above content is only a specific embodiment of this application, but the scope of protection of this application is not limited to this. Any changes or replacements within the technical scope disclosed in this application should be included in the scope of protection of this application. Therefore, the scope of protection of this application should be based on the scope of protection of the claims.
Claims
1. A constellation network reliability simulation method based on stream computing, characterized in that: include: Setting simulation parameters; the simulation parameters include parameters associated with the simulation target constellation and parameters associated with executing the simulation; The target constellation includes multiple target satellites and multiple orbits; the multiple target satellites include key satellites and ordinary satellites, the key satellites are satellites used for communicating with the earth, and the ordinary satellites indirectly communicate with the earth through the key satellites; Automatically construct a data table based on the simulation parameters; At each interval of a preset simulation step length, a first data element is generated based on the simulation parameters and preset rules; The first data element includes a satellite health status matrix, a co-orbit link status matrix, and a cross-orbit link status matrix corresponding to the multiple target satellites; the satellite health status matrix is used to represent the status of each of the target satellites, and the status of the target satellite includes a normal state and an abnormal state; The satellites in the normal state have a communication function, and the satellites in the abnormal state lose the communication function; the on-orbit link state matrix is used to represent the state of the on-orbit link corresponding to each of the target satellites, and the cross-orbit link state matrix is used to represent the state of the cross-orbit link corresponding to each of the key satellites; the state of the on-orbit link and the state of the cross-orbit link both include a connected state and an interrupted state; In response to generating a target first data element, calculating a second data element corresponding to the target first data element based on the target first data element; The target first data element is the first data element generated at any time; The second data element corresponding to the target first data element includes the connectivity state matrix and the disconnection rate of each target satellite; In response to generating a target second data element, calculating a third data element corresponding to the target second data element; The target second data element is the second data element generated at any time; The third data element corresponding to the target second data element includes the target second data element converted into a preset format; In response to generating a target third data element, the target third data element is stored in the data table.
2. The method according to claim 1, characterized in that The simulation parameters include the number of the multiple orbits, the number of target satellites operating on any orbit, the number of cross-orbit links, the average failure interval between each inter-satellite link interruption, the repair time of each inter-satellite link interruption, the average failure interval between each target satellite, the satellite network reconnection interval of each target satellite, the preset simulation step size, the simulation rounds, the identifier of the target constellation and the position of each key satellite; the inter-satellite link is a communication link between two adjacent target satellites in the constellation network topology diagram.
3. The method according to claim 2, characterized in that The automatically constructing a data table based on the simulation parameters includes: Set a preset number of data table fields; Based on the simulation parameters, updating the preset number of data table fields; The data table is generated based on the updated preset number of data table fields.
4. The method according to claim 3, characterized in that The preset simulation step size is set at each interval, and the first data element is generated once based on the simulation parameters and the preset rules, including: Obtain a first satellite health status matrix, a first satellite failure duration matrix, a first on-orbit link interruption duration matrix, a first cross-orbit link interruption duration matrix, a first on-orbit link state matrix, and a first cross-orbit link state matrix corresponding to the multiple target satellites; wherein, if the first data element is generated for the first time, the first satellite health status matrix is a preset initial satellite health status matrix, the first satellite failure duration matrix is a preset initial satellite failure duration matrix, the first on-orbit link interruption duration matrix is a preset initial on-orbit link interruption duration matrix, the first cross-orbit link interruption duration matrix is a preset initial cross-orbit link interruption duration matrix, the first on-orbit link state matrix is a preset initial on-orbit link state matrix, and the first cross-orbit link state matrix is a preset initial cross-orbit link state matrix; if the first data element is generated for the Nth time, the first satellite health status matrix is the first data element determined for the N-1th time. The satellite health status matrix included is: the first on-orbit link status matrix is the on-orbit link status matrix included in the first data element determined for the N-1th time; the first cross-orbit link status matrix is the cross-orbit link status matrix included in the first data element determined for the N-1th time; the first satellite failure duration matrix is determined based on the satellite health status matrix included in the first data element determined for the N-2th time and the satellite health status matrix included in the first data element determined for the N-1th time; the first on-orbit link interruption duration matrix is determined based on the on-orbit link status matrix included in the first data element determined for the N-2th time and the on-orbit link status matrix included in the first data element determined for the N-1th time; the first cross-orbit link interruption duration matrix is determined based on the cross-orbit link status matrix included in the first data element determined for the N-2th time and the cross-orbit link status matrix included in the first data element determined for the N-1th time, and N is greater than or equal to 2; Based on the failure probability of each target satellite, the first satellite failure duration matrix and the satellite network refill interval, the first satellite health status matrix is updated to obtain the satellite health status matrix; updating the first satellite failure duration matrix based on the first satellite health status matrix and the satellite health status matrix; For any one of the orbits, determining a first target satellite and a second target satellite on the orbit; the first target satellite is the target satellite that is in an abnormal state after the current simulation step; the second target satellite is the target satellite that is in an abnormal state before the current simulation step and is in a normal state after the current simulation step; determining a co-orbital link coupled to the state of the first target satellite and a co-orbital link coupled to the state of the second target satellite; updating data corresponding to the co-orbital link coupled with the state of the first target satellite in the first co-orbital link state matrix based on a state of the co-orbital link coupled with the state of the first target satellite and a state of the co-orbital link coupled with the state of the second target satellite, and updating data corresponding to the co-orbital link coupled with the state of the second target satellite in the first co-orbital link state matrix to obtain a second co-orbital link state matrix; determining a third co-orbital link in the target constellation, wherein the co-orbital link coupled to the state of the first target satellite and the co-orbital link coupled to the state of the second target satellite are both different from the third co-orbital link; Based on the link interruption probability, the first co-orbit link interruption duration matrix, and the repair time of the inter-satellite link interruption, updating the data corresponding to the third co-orbit link in the second co-orbit link state matrix to obtain the co-orbit link state matrix; updating the first co-track link interruption duration matrix based on the first co-track link state matrix and the co-track link state matrix; determining an inter-orbit link coupled to a state of the first target satellite and an inter-orbit link coupled to a state of the second target satellite; Based on the state of the inter-orbit link coupled with the state of the first target satellite and the state of the inter-orbit link coupled with the state of the second target satellite, updating data corresponding to the inter-orbit link coupled with the state of the first target satellite in the first inter-orbit link state matrix, and updating data corresponding to the inter-orbit link coupled with the state of the second target satellite in the first inter-orbit link state matrix to obtain a second inter-orbit link state matrix; Determining a third inter-orbit link in the target constellation, wherein the inter-orbit link coupled to the state of the first target satellite and the inter-orbit link coupled to the state of the second target satellite are both different from the third inter-orbit link; Based on the link interruption probability, the first inter-orbit link interruption duration matrix, and the repair time of the inter-satellite link interruption, updating the data corresponding to the third inter-orbit link in the second inter-orbit link state matrix to obtain the inter-orbit link state matrix; updating the first inter-track link interruption duration matrix based on the first inter-track link state matrix and the inter-track link state matrix; The first data element is generated based on the satellite health status matrix, the co-orbit link status matrix, and the cross-orbit link status matrix.
5. The method according to claim 4, characterized in that In response to generating a target first data element, calculating a second data element corresponding to the target first data element based on the target first data element includes: In response to generating the target first data element, determining an adjacency matrix corresponding to each of the key satellites based on the on-orbit link state matrix, the cross-orbit link state matrix, and the position of each of the key satellites included in the target first data element; Converting the adjacency matrix into a reachability matrix; Determine a backbone network based on the reachability matrix; the backbone network is a network including a maximum number of the key satellites; any two key satellites in the backbone network are reachable; Based on the backbone network, determining the offline status of each of the key satellites; For any one of the orbits, determining a connectivity status between the common satellites included in the any one of the orbits and the backbone network based on an off-network status of the key satellites included in the any one of the orbits; Determining a connectivity matrix and a disconnection rate of each target satellite based on connectivity between the common satellites on each orbit and the backbone network; Based on the connectivity state matrix and the offline rate of each target satellite, a second data element corresponding to the target first data element is determined.
6. A constellation network reliability simulation system based on stream computing, characterized in that: include: A simulation configuration module, configured to set simulation parameters, including parameters associated with a simulation target constellation and parameters associated with executing the simulation; The target constellation includes multiple target satellites and multiple orbits; the multiple target satellites include key satellites and ordinary satellites, the key satellites are satellites used for communicating with the earth, and the ordinary satellites indirectly communicate with the earth through the key satellites; An automatic table building module, used for automatically building a data table based on the simulation parameters; A custom data source module is configured to generate a first data element once per interval of a preset simulation step length based on the simulation parameters and preset rules; The first data element includes a satellite health status matrix, a co-orbit link status matrix, and a cross-orbit link status matrix corresponding to the multiple target satellites; the satellite health status matrix is used to represent the status of each of the target satellites, and the status of the target satellite includes a normal state and an abnormal state; The satellites in the normal state have a communication function, and the satellites in the abnormal state lose the communication function; the on-orbit link state matrix is used to represent the state of the on-orbit link corresponding to each of the target satellites, and the cross-orbit link state matrix is used to represent the state of the cross-orbit link corresponding to each of the key satellites; the state of the on-orbit link and the state of the cross-orbit link both include a connected state and an interrupted state; a first conversion operator module, configured to, in response to generating a target first data element, calculate a second data element corresponding to the target first data element based on the target first data element; The target first data element is the first data element generated at any time; The second data element corresponding to the target first data element includes the connectivity state matrix and the disconnection rate of each target satellite; a second conversion operator module, configured to calculate, in response to generating a target second data element, a third data element corresponding to the target second data element; The target second data element is the second data element generated at any time; The third data element corresponding to the target second data element includes the target second data element converted into a preset format; The data sink module is configured to, in response to generating a target third data element, store the target third data element into the data table.
7. The system according to claim 6, characterized in that The simulation parameters include the number of the multiple orbits, the number of target satellites operating on any orbit, the number of cross-orbit links, the average failure interval between each inter-satellite link interruption, the repair time of each inter-satellite link interruption, the average failure interval between each target satellite, the satellite network reconnection interval of each target satellite, the simulation step size, the simulation rounds, the identifier of the target constellation and the position of each key satellite; the inter-satellite link is a communication link between two adjacent target satellites in the constellation network topology diagram.
8. The system according to claim 7, characterized in that The automatic table building module is used to automatically build a data table based on the simulation parameters, specifically for: Set a preset number of data table fields; Based on the simulation parameters, updating the preset number of data table fields; The data table is generated based on the updated preset number of data table fields.
9. The system according to claim 8, characterized in that The custom data source module is used to preset a simulation step size at each interval, and generate a first data element based on the simulation parameters and preset rules, specifically for: Obtain a first satellite health status matrix, a first satellite failure duration matrix, a first on-orbit link interruption duration matrix, a first cross-orbit link interruption duration matrix, a first on-orbit link state matrix, and a first cross-orbit link state matrix corresponding to the multiple target satellites; wherein, if the first data element is generated for the first time, the first satellite health status matrix is a preset initial satellite health status matrix, the first satellite failure duration matrix is a preset initial satellite failure duration matrix, the first on-orbit link interruption duration matrix is a preset initial on-orbit link interruption duration matrix, the first cross-orbit link interruption duration matrix is a preset initial cross-orbit link interruption duration matrix, the first on-orbit link state matrix is a preset initial on-orbit link state matrix, and the first cross-orbit link state matrix is a preset initial cross-orbit link state matrix; if the first data element is generated for the Nth time, the first satellite health status matrix is the first data element determined for the N-1th time. The satellite health status matrix included is: the first on-orbit link status matrix is the on-orbit link status matrix included in the first data element determined for the N-1th time; the first cross-orbit link status matrix is the cross-orbit link status matrix included in the first data element determined for the N-1th time; the first satellite failure duration matrix is determined based on the satellite health status matrix included in the first data element determined for the N-2th time and the satellite health status matrix included in the first data element determined for the N-1th time; the first on-orbit link interruption duration matrix is determined based on the on-orbit link status matrix included in the first data element determined for the N-2th time and the on-orbit link status matrix included in the first data element determined for the N-1th time; the first cross-orbit link interruption duration matrix is determined based on the cross-orbit link status matrix included in the first data element determined for the N-2th time and the cross-orbit link status matrix included in the first data element determined for the N-1th time, and N is greater than or equal to 2; Based on the failure probability of each target satellite, the first satellite failure duration matrix and the satellite network refill interval, the first satellite health status matrix is updated to obtain the satellite health status matrix; updating the first satellite failure duration matrix based on the first satellite health status matrix and the satellite health status matrix; For any one of the orbits, determining a first target satellite and a second target satellite on the orbit; the first target satellite is the target satellite that is in an abnormal state after the current simulation step; the second target satellite is the target satellite that is in an abnormal state before the current simulation step and is in a normal state after the current simulation step; determining a co-orbital link coupled to the state of the first target satellite and a co-orbital link coupled to the state of the second target satellite; updating data corresponding to the co-orbital link coupled with the state of the first target satellite in the first co-orbital link state matrix based on a state of the co-orbital link coupled with the state of the first target satellite and a state of the co-orbital link coupled with the state of the second target satellite, and updating data corresponding to the co-orbital link coupled with the state of the second target satellite in the first co-orbital link state matrix to obtain a second co-orbital link state matrix; determining a third co-orbital link in the target constellation, wherein the co-orbital link coupled to the state of the first target satellite and the co-orbital link coupled to the state of the second target satellite are both different from the third co-orbital link; Based on the link interruption probability, the first co-orbit link interruption duration matrix, and the repair time of the inter-satellite link interruption, updating the data corresponding to the third co-orbit link in the second co-orbit link state matrix to obtain the co-orbit link state matrix; updating the first co-track link interruption duration matrix based on the first co-track link state matrix and the co-track link state matrix; determining an inter-orbit link coupled to a state of the first target satellite and an inter-orbit link coupled to a state of the second target satellite; Based on the state of the inter-orbit link coupled with the state of the first target satellite and the state of the inter-orbit link coupled with the state of the second target satellite, updating data corresponding to the inter-orbit link coupled with the state of the first target satellite in the first inter-orbit link state matrix, and updating data corresponding to the inter-orbit link coupled with the state of the second target satellite in the first inter-orbit link state matrix to obtain a second inter-orbit link state matrix; Determining a third inter-orbit link in the target constellation, wherein the inter-orbit link coupled to the state of the first target satellite and the inter-orbit link coupled to the state of the second target satellite are both different from the third inter-orbit link; Based on the link interruption probability, the first inter-orbit link interruption duration matrix, and the repair time of the inter-satellite link interruption, updating the data corresponding to the third inter-orbit link in the second inter-orbit link state matrix to obtain the inter-orbit link state matrix; updating the first inter-track link interruption duration matrix based on the first inter-track link state matrix and the inter-track link state matrix; The first data element is generated based on the satellite health status matrix, the co-orbit link status matrix, and the cross-orbit link status matrix.
10. The system according to claim 9, characterized in that The first conversion operator module is configured to, in response to generating a target first data element, calculate, based on the target first data element, a second data element corresponding to the target first data element, specifically to: In response to generating the target first data element, determining an adjacency matrix corresponding to each of the key satellites based on the on-orbit link state matrix, the cross-orbit link state matrix, and the position of each of the key satellites included in the target first data element; Converting the adjacency matrix into a reachability matrix; Determine a backbone network based on the reachability matrix; the backbone network is a network including a maximum number of the key satellites; any two key satellites in the backbone network are reachable; Based on the backbone network, determining the offline status of each of the key satellites; For any one of the orbits, determining a connectivity status between the common satellites included in the any one of the orbits and the backbone network based on an off-network status of the key satellites included in the any one of the orbits; Determining a connectivity matrix and a disconnection rate of each target satellite based on connectivity between the common satellites on each orbit and the backbone network; Based on the connectivity state matrix and the offline rate of each target satellite, a second data element corresponding to the target first data element is determined.
Citation Information
Patent Citations
Method and device for assessing the availability of satellite navigation system
CN106940446A
Partition-based constellation satellite network distributed routing method and device
CN112468206A