Space large-scale structure assembling method and system using bouncing robot

By optimizing the assembly sequence and path of the bouncing robot using graph theory and particle swarm optimization algorithms, the problem of traditional methods being unable to be applied to the assembly of bouncing robots is solved. This enables efficient and low-energy assembly of large spatial structures, suitable for assembly tasks of different scales and complexities.

CN121808950APending Publication Date: 2026-04-07NORTHWESTERN POLYTECHNICAL UNIV
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-12-31
Publication Date
2026-04-07

AI Technical Summary

Technical Problem

Existing assembly sequence planning methods cannot fully utilize the efficiency and reliability of bouncy robots, resulting in high energy and time consumption during the assembly of large space structures, and traditional methods cannot be directly applied to bouncy robot assembly.

Method used

A graph theory-based and particle swarm optimization (PSO) approach is adopted. By constructing an undirected graph and using PSO, the assembly sequence and path are optimized. The bouncing ability of the robot is utilized, and the assembly process is simulated using the A* algorithm to select the shortest path and assembly scheme.

Benefits of technology

It improves assembly efficiency, reduces energy and time consumption, fully leverages the high efficiency and reliability of the bouncing robot, and adapts to assembly tasks of large spatial structures of different scales and complexities.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121808950A_ABST
    Figure CN121808950A_ABST
Patent Text Reader

Abstract

The invention discloses a space large-scale structure assembling method and system using a bouncing robot, and belongs to the technical field of space.The method comprises the steps that a particle sequence is converted into an assembling node matrix, a path node matrix is generated under the condition that constraints in the modeling process are met, the assembling process is deduced, and total assembling time consumption is calculated; selecting the path node matrix with the shortest consumed time as the individual fitness; each particle updates the individual optimal fitness according to the individual fitness; updating the global optimal fitness according to the individual optimal fitness; calculating the speed after the global optimal fitness is updated, converting the speed into a probability, and determining whether to change the particle position according to the probability; judging whether a termination condition is met or not, and if not, returning to iteration; and if yes, outputting a particle position corresponding to the global optimal fitness as an optimal assembly sequence scheme. According to the method, the assembly task of the large structure can be efficiently and optimally completed.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The application provides a space large structure assembly method and system using a bouncing robot, and belongs to the technical field of spaceflight. BACKGROUND

[0002] With the continuous progress of space technology and the gradual expansion of space applications, the demand for large space structures such as space telescopes and large space stations is increasing. These large space structures are often large in mass and volume, and the current rocket launch technology cannot launch them from the ground to the designated working orbit at one time. Therefore, it is necessary to launch parts multiple times and assemble them in space, which puts forward higher requirements for space large structure assembly technology. Space large structure assembly technology can automatically assemble various large structures in space, breaking the limitation that the required fuel increases exponentially with the increase of the launch mass. It can save fuel costs while avoiding the risks of astronaut extravehicular assembly.

[0003] To realize the automatic assembly of large space structures, it is essential to solve the assembly sequence planning problem. The assembly sequence needs to meet the assembly feasibility and reliability, and also needs to minimize the energy and time consumption in the assembly process, so as to realize short-time, low-energy-consumption, low-risk and high-efficiency automatic assembly.

[0004] The current assembly sequence planning problem is divided into two categories. One is the assembly sequence planning problem considering only the assembly sequence of assembly units, and the other is the assembly sequence planning problem considering the control problem of assembly robots. Both of them are assembly sequence planning methods for assembly using traditional crawling robots or free-flying robots. Because the bouncing robot has the ability to bounce, the traditional method cannot be directly used for analysis of the bouncing robot. At the same time, the unique ability of the bouncing robot makes the assembly process more efficient and reliable, and using these methods cannot fully exert its efficiency and reliability. SUMMARY

[0005] To solve the problems existing in the prior art, the application provides a space large structure assembly method and system using a bouncing robot. The method is based on the principles of graph theory and particle swarm optimization algorithm, and aims to efficiently and optimally complete the assembly task of large structures.

[0006] To solve the above technical problems, the technical scheme adopted by the application is as follows: In a first aspect, the application provides a space large structure assembly method using a bouncing robot, comprising: S1, a directed graph is constructed for a space large structure, in which n assembly units and s bouncing robots are set, all of which are initially located at the base station, and an assembly node matrix P and a path node matrix R of each bouncing robot are constructed; S2, using the base station node as a reference, calculate the distance k between each of the other assembly nodes and the base station node, group nodes with the same distance into one category, forming a graph layer, and obtaining multiple node layer sets. Initialize the particle sequence in multiple node layer sets, so that the distance between the nodes of the particle sequence and the base station gradually increases; S3, convert the particle sequence into an assembly node matrix P, generate a path node matrix R under the constraints of the modeling process, deduce the assembly process, calculate the total assembly time, and select the path node matrix R with the shortest time as the individual fitness. S4, each particle updates its individual optimal fitness based on its individual fitness; the global optimal fitness is then updated based on the individual optimal fitness. S5, calculate the velocity after updating the global optimal fitness, convert the velocity into a probability, and decide whether to change the particle position based on the probability; S6. Determine if the termination condition is met. If not, return to step S3 for iteration. If met, output the particle position corresponding to the global optimal fitness as the optimal assembly sequence scheme.

[0007] As a further improvement of this application, in the undirected graph, the target position node of the assembly of the component to be assembled is the assembly node, and the node where the bouncing robot bounces is the bouncing node; the bouncing robot cluster works in parallel, and the bouncing robot that is idle at the base station executes the assembly of the next component until there are no idle bouncing robots.

[0008] As a further improvement to this application, S1 specifically includes: Given n assembly parts and s bouncing robots, all initially located at the base station; construct the following model:

[0009] In the formula, P is the assembly node matrix of each bouncing robot. This represents the number of the j-th assembly node of the i-th bouncing robot. R represents the total number of assembly nodes for the i-th bouncing robot; R is the path node matrix for each bouncing robot. This represents the number of the j-th node traversed by the i-th bouncing robot. This represents the total number of nodes visited by the i-th bouncing robot; The total number of all bouncing robots assembled is n:

[0010] The number of units to assemble for the i-th bouncing robot; Current set of assembled nodes The current assembly structure is an undirected graph. Derived subgraph If the assembly node of a bouncing robot Relative to derived subgraph It is an isolated point, and it lies in the graph. The minimum distance between nodes in S and nodes in S is

[0011] in Let u be the distance between nodes u and v in the undirected graph; The condition for any assembly node of the bouncing robot is that The assembly node of the bouncing robot is arrive The nodes on the shortest path from the middle node, and Each bouncing robot should complete the assembly before the arrival of the first bouncing robot; otherwise, the bouncing robot will wait until the assembly distance condition is met. Let the set of nodes corresponding to the first to the ith columns of the assembly matrix P be denoted as . A node set already exists before initial assembly. Then the following constraints should apply:

[0012] Consider the entire assembly process of the i-th bouncing robot. The robot initially starts at the base station node, then crawls to the destination assembly node, and finally bounces back to the base station node from the bouncing node. This process repeats until all assembly nodes are assembled. Ignoring the nodes traversed during the crawling process, record all connections to the assembly nodes. The set of adjacent nodes A set of bouncy nodes This yields a node sequence, which is a subsequence of the bouncing robot's path node sequence:

[0013] Each particle sequence is defined as

[0014] in, These are nodes to be assembled, and each particle sequence corresponds to an assembly sequence scheme.

[0015] As a further improvement to this application, S2 specifically includes: Using the base station node as a reference, calculate the distance between each other assembly node and the base station node. Group all nodes with the same distance into one category to form a graph layer, and record... Let i be the set of all nodes that are at a distance i from the base station node; Initialize the particle sequence as

[0016] The distance of the nodes of the particle sequence from left to right to the base station increases, denotes a node with a distance j to the base station node, denotes the total number of nodes with a distance i.

[0017] As a further improvement of the application, the S3 specifically comprises: Starting from the node at one side of the particle sequence, the nodes are sequentially filled into the P matrix from the other side, the filling method adopts the sequence from top to bottom and from left to right, the first column of the P matrix is filled first, the second column is filled after the first column is filled, and the filling is recursively performed to the right until the filling is completed, and the remaining positions are replaced by 0, and the particle sequence needs to be converted into the P matrix:

[0018] After the P matrix is constructed, fitness is calculated; according to the P matrix, in combination with the A* algorithm, the R matrix is generated under the condition of meeting the constraints in the modeling process, each bouncing robot performs the whole process of using the bouncing robot to assemble the large space structure according to the state machine, the total assembly time is calculated, the R matrix with the shortest time is selected as the individual fitness; When the assembly process is deduced, the node and the activity of each bouncing robot at each moment are simulated in real time.

[0019] As a further improvement of the application, the calculation of the total assembly time comprises: Waiting total time , including waiting for the occupied node to be emptied and waiting for the ejection instruction, which is calculated according to real-time simulation; Crawling time , including the time required to go to the assembly node and the ejection node, which is calculated according to real-time simulation; Waiting flight time , assuming that the bouncing node and the base station vector have a distance , , is a time influence factor.

[0020] As a further improvement of the application, the state machine of the bouncing robot comprises: In the idle state, the assembly part is carried; Whether the next assembly route is reachable is judged; If not, return to judge whether the next assembly route is reachable after waiting for a moment; if yes, judge whether the destination is reached; If the destination is not reached, judge whether the next node is occupied; if occupied, wait and return to judge whether the next node is occupied; if not occupied, crawl according to the path node sequence, and then return to judge whether the destination is reached; If reaching the destination, it is determined whether to bounce back or not; if not, it is assembled and crawls along the path node sequence; If yes, it is determined whether to receive a bounce instruction or not; if receiving the bounce instruction, it bounces back and enters the idle state; if not receiving the bounce instruction, it returns to determine whether to receive the bounce instruction.

[0021] As a further improvement of the present application, the S4 specifically comprises: Each particle compares the individual fitness value with the current individual optimal fitness value in the previous iteration process, if the individual fitness value is smaller, the individual fitness value and the current particle sequence are used as the current individual optimal fitness, otherwise the individual fitness is discarded; The current individual optimal fitness of all particles is compared with the global optimal fitness, if the current individual optimal fitness is better, the current individual optimal fitness and the corresponding sequence are used to update the global optimal fitness and the sequence; after the fitness of all particles is calculated, the individual optimal fitness and the global optimal fitness are updated.

[0022] As a further improvement of the present application, the S5 specifically comprises: The position and velocity of the particle are updated according to the global optimal fitness, specifically calculated by the following formula:

[0023] Wherein is the updated velocity of the particle i in the jth dimension, is the inertia weight, and are acceleration constants, and are random numbers in the range of is the individual best position of the particle i in the jth dimension, is the global best position in the jth dimension, is the current position of the particle i in the jth dimension; When updating the position, sigmoid function is used to convert it into probability:

[0024] is the velocity of the particle i in the jth dimension; For the jth dimension of the particle i, if the corresponding assembly node belongs to , a random number in the range of is generated, if the random number is greater than , the original value is kept unchanged, if it is less than, a random number in the range of ​the random number is less than the threshold value, the corresponding position is exchanged with the random number is greater than the threshold value, the position of a global optimal fitness node in the particle is found, and the two positions are exchanged.

[0025] In a second aspect, the application provides a space large structure assembly system using a bouncing robot, comprising: a non-directed graph construction module, configured to construct a non-directed graph for a space large structure, wherein n assembly components and s bouncing robots are set in the non-directed graph, and all of them are initially located at a base station, and a construction node matrix P and a path node matrix R of each bouncing robot are constructed, wherein P represents an assembly node corresponding to each bouncing robot, and R represents a path node passed by each bouncing robot; a graph layer formation module, configured to calculate distances between other assembly nodes and the base station node with the base station node as a reference, and nodes with the same distance are classified into a category to form a graph layer; and a particle sequence in the graph layer is initialized, so that distances from the nodes in the particle sequence to the base station gradually increase from left to right; an assembly deduction module, configured to convert the particle sequence into the assembly node matrix P, generate the path node matrix R under the condition of satisfying constraints in a modeling process, deduce an assembly process, calculate a total assembly time consumption, and select the path node matrix R with the shortest time consumption as an individual fitness; a fitness update module, configured to update an individual optimal fitness according to the individual fitness of each particle, and update a global optimal fitness according to the individual optimal fitness; a position change module, configured to calculate a speed after the global optimal fitness is updated, convert the speed into a probability, and determine whether to change a particle position according to the probability; an iteration output module, configured to judge whether a termination condition is satisfied, return to iteration if the termination condition is not satisfied, and output a particle position corresponding to the global optimal fitness as an optimal assembly sequence scheme if the termination condition is satisfied.

[0026] In a third aspect, the application provides an electronic device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, and the processor implements the space large structure assembly method using the bouncing robot when executing the computer program.

[0027] In a fourth aspect, the application provides a computer readable storage medium, which stores a computer program, and the computer program is executed by a processor to implement the space large structure assembly method using the bouncing robot.

[0028] In a fifth aspect, the present application provides a computer program product, which comprises computer instructions for instructing a computer to execute the method for assembling a large spatial structure by using a bouncing robot.

[0029] The present application has the following beneficial effects over the prior art: The present application provides a method for assembling a large spatial structure by using a bouncing robot. The method is based on the principles of graph theory and particle swarm optimization algorithm, aiming to efficiently and optimally complete the assembly task of a large spatial structure. Through the combination of graph layering and particle swarm optimization algorithm, the optimal assembly sequence and path can be quickly found, improving the assembly efficiency. The assembly node matrix P and the path node matrix R can be flexibly adjusted according to the actual situation, adapting to different scales and complexities of spatial large structure assembly tasks. The intelligent search capability of the particle swarm optimization algorithm can automatically find the optimal or near-optimal assembly scheme, reducing the cost of manual intervention and decision-making. The assembly planning method of the bouncing robot proposed in the present application makes full use of the unique bouncing ability of the bouncing robot, fully demonstrates its efficiency and reliability, and consumes less energy and time compared to other assembly planning methods. The problem is divided into three parts: assembly sequence planning, bounceable area query, and bouncing robot path planning. According to the constraint conditions, the traditional discrete particle swarm algorithm is improved to make it more suitable for the assembly planning of bouncing robots. BRIEF DESCRIPTION OF DRAWINGS

[0030] In order to more clearly illustrate the technical solutions in the embodiments of the present application or the prior art, the following introduces the drawings of the related technical solutions in the embodiments of the present application or the prior art. It should be understood that the drawings in the following introduction are only for the convenience of clearly expressing part of the embodiments of the technical solutions of the present application, and for those skilled in the art, other drawings can also be obtained without creative labor on the basis of these drawings.

[0031] Figure 1 A method for assembling a large spatial structure by using a bouncing robot is provided in the present application. Figure 2 A flowchart describing the process or decision tree; Figure 3 An algorithm flowchart; Figure 4 A structural schematic diagram; Figure 5 A comparison chart of the time required for the assembly method; Figure 6 A curve chart of the assembly time reduction rate.

[0032] Figure 7 A chart of the additional time ratio DETAILED DESCRIPTION The embodiments of the present application are described in detail below, examples of which are shown in the accompanying drawings, wherein the same or similar notations represent the same or similar elements having the same or similar functions throughout. The embodiments described below by reference to the drawings are exemplary only, for the purpose of explanation, and are not to be understood as a limitation of the present application. For the step numbers in the following embodiments, they are only set for the convenience of explanation, and the order between the steps is not limited in any way, and the execution order of each step in the embodiments can be adaptively adjusted according to the understanding of those skilled in the art.

[0033] In the description of the present application, the words such as setting, installing, connecting and the like should be understood in a broad sense unless otherwise explicitly limited, and those skilled in the art can reasonably determine the specific meaning of the above words in the present application in combination with the specific content of the technical solution.

[0034] Related term explanation Undirected graph: a graph with no direction of edges is called an undirected graph. An undirected graph G consists of a vertex set V and an edge set E, that is, G=(V,E). Wherein, V is a non-empty set, called vertex set; E is a set of unordered pairs of elements in V, called edge set.

[0035] Graph layering: graph layering is to divide the nodes of the original graph into several sets with the same connection distance from the base station node of the original graph, and the sets are classified by distance.

[0036] Sigmoid function is a common S-shaped function in biology, also known as S-shaped growth curve. In information science, due to its monotonicity and the monotonicity of its inverse function, Sigmoid function is often used as the activation function of neural network to map variables between (0, 1).

[0037] Discrete particle swarm algorithm is a commonly used algorithm for solving optimization problems, which is based on the heuristic method of swarm intelligence. The algorithm simulates the movement process of particles in the search space to constantly find the global optimal solution.

[0038] Individual fitness, in evolutionary algorithms such as genetic algorithms, individual fitness refers to the measure of the advantage of individual survival in the population, which is used to distinguish the "good" and "bad" of individuals. Fitness is usually calculated using a fitness function (also known as evaluation function), which judges the fitness of an individual by its characteristics.

[0039] The first object of the present application is to provide a space large structure assembly method using a bouncing robot, comprising: S1, a directed graph is constructed for a space large structure, in which n assembly pieces and s bouncing robots are set, all of which are initially located at the base station, and an assembly node matrix P and a path node matrix R of each bouncing robot are constructed; Constructing an Undirected Graph: The initial step involves constructing an undirected graph model for the large spatial structure. In this model, each assembly is treated as a node in the graph. Assembly nodes represent the parts that need to be assembled. Simultaneously, an assembly node matrix P and a path node matrix R are constructed. The P matrix records the assembly nodes that each bouncing robot is responsible for, while the R matrix records the path taken by the bouncing robot from the base station to each assembly node.

[0040] S2, using the base station node as a reference, calculate the distance between each other assembly node and the base station node, group nodes with the same distance into one category to form a graph layer; initialize the particle sequence in the graph layer so that the distance between the nodes in the particle sequence and the base station gradually increases from left to right; Graph layering: Next, using the base station node as a reference, the distances between other assembly nodes and the base station are calculated, and nodes with the same distance are grouped together to form a graph layer. This helps to sort assembly tasks according to distance, thereby optimizing the assembly order. The particle sequence in the graph layer is initialized, ensuring that the distance between the nodes and the base station gradually increases from left to right. This helps in the deduction of the assembly process in subsequent steps.

[0041] S3, convert the particle sequence into an assembly node matrix P, generate a path node matrix R under the constraints of the modeling process, deduce the assembly process, calculate the total assembly time, and select the path node matrix R with the shortest time as the individual fitness. Assembly process simulation and fitness calculation: The particle sequence is converted into an assembly node matrix P, and a path node matrix R is generated under the constraints of the modeling process. By simulating the assembly process, the total assembly time is calculated, and the path node matrix R with the shortest time is selected as the individual fitness. This step is crucial for evaluating the merits of the current assembly scheme.

[0042] S4, each particle updates its individual optimal fitness based on its individual fitness; the global optimal fitness is then updated based on the individual optimal fitness. Particle Swarm Optimization (PSO) Algorithm: This algorithm compares the individual fitness of each particle with its optimal fitness, and the optimal fitness of all particles with the global optimal fitness. If the individual fitness is better, the corresponding optimal fitness value is updated.

[0043] S5, calculate the velocity after updating the global optimal fitness, convert the velocity into a probability, and decide whether to change the particle position based on the probability; Velocity calculation and position update: Based on the updated global optimal fitness, the particle's velocity is calculated and converted into a probability. The probability is then used to determine whether to change the particle's position, i.e., adjust the assembly order or path, to seek a better assembly solution.

[0044] S6. Determine if the termination condition is met. If not, return to step S3 for iteration. If met, output the particle position corresponding to the global optimal fitness as the optimal assembly sequence scheme.

[0045] Iteration and Termination Conditions: Determine if the termination condition is met (e.g., reaching the maximum number of iterations or fitness convergence). If the termination condition is not met, return to step S3 for iteration; if it is met, output the particle position corresponding to the globally optimal fitness as the optimal assembly sequence scheme.

[0046] The principle behind this method is as follows: a) Modeling: Set n assembly parts and s bouncing robots, all of which are initially located at the base station. Construct the assembly node matrix P and path node matrix R for each bouncing robot, where P represents the assembly node corresponding to each bouncing robot and R represents the path node traversed by each bouncing robot. b) Graph layering and particle sequence initialization: Using the base station node as a reference, calculate the distance between each other assembly node and the base station node, group nodes with the same distance into one category to form a graph layer; initialize the particle sequence so that the distance between the nodes in the particle sequence and the base station gradually increases from left to right. c) Fitness calculation: Convert the particle sequence into an assembly node matrix P, and generate a path node matrix R by combining the A* algorithm under the condition of satisfying the constraints in the modeling process. Deduce the assembly process, calculate the total assembly time, and select the path node matrix R with the shortest time as the individual fitness. d) Update the individual optimal fitness and the global optimal fitness: Compare the fitness of the current particle sequence with the individual optimal fitness. If the individual fitness is better, update the individual optimal fitness; update the global optimal fitness based on the individual optimal fitness. e) Update particle position and velocity: Calculate the updated velocity according to the velocity update formula of the traditional discrete particle swarm algorithm, use the sigmoid function to convert the velocity into a probability, and decide whether to change the particle position based on the probability; f) Iteration and Termination: Determine if the termination condition is met. If not, return to step c) for iteration; if met, output the optimal assembly sequence scheme.

[0047] Furthermore, the movement time between nodes, the node assembly time, and the time for the base station bouncing robot to load the assembly parts are all fixed and identical. When simulating the assembly process, performance indicators such as total waiting time, crawling time, and standby flight time are considered. When updating particle positions, if the assembly node corresponding to the particle belongs to the current graph layer, the particle position is changed based on probability; otherwise, the original value remains unchanged.

[0048] The termination condition can be reaching a preset maximum number of iterations, the fitness value converging to a certain threshold, or satisfying other preset conditions. Therefore, this method is suitable for truss structure assembly of large-scale spatial structures, where the bouncing robot cluster works in parallel, adopting the "execute when idle" principle.

[0049] The final output is the optimal assembly sequence, including the assembly nodes and path nodes for each bouncing robot. It also outputs the total assembly time and other relevant performance metrics.

[0050] The present application will now be described in further detail with reference to the accompanying drawings and specific embodiments.

[0051] This assembly method mainly solves three problems: assembly sequence planning, bouncy area query, and bouncy robot path planning.

[0052] Among them, assembly sequence planning refers to finding the optimal assembly order of assembly units.

[0053] The bounceable area query is to find the optimal bounceable area to ensure that the energy and time consumption are minimized when the bouncing robot bounces back from the nearest bounceable area after assembly.

[0054] Bounce robot path planning refers to planning the path of bounce robots to minimize the time consumption given the known assembly sequence of bounce robots, while ensuring that multiple bounce robots do not collide when bouncing back and that the base station can receive the returned bounce robots in a timely manner.

[0055] Assuming the large spatial structure adopts a truss structure, construct an undirected graph. The target location node for assembling the component is called the assembly node, and the node where the bouncing robot bounces is called the bouncing node. The bouncing robot cluster works in parallel. Since the bouncing robots have the same priority, an "idle-execute" principle is adopted, meaning that the next component assembly is performed by an idle bouncing robot at the base station until no more idle bouncing robots remain. Considering that the movement time between nodes is fixed and the same, the node assembly time is fixed and the same, and the time for the base station bouncing robot to carry the assembly component is fixed and the same, only one bouncing robot can be mounted on the same pole at a time. The bouncable area only considers the area after all structures are assembled, ignoring areas that may temporarily appear during assembly. The bouncable area corresponds to all bouncing nodes. The standby flight time is proportional to the geometric distance between the bouncing node and the base station. The base station can only receive one bouncing robot at a time, and the receiving cooldown time is fixed.

[0056] First, modeling is performed. The modeling process includes the following steps: There are n assemblies and s bouncing robots, all initially located at the base station.

[0057] P is the assembly node matrix of each bouncing robot. This represents the number of the j-th assembly node of the i-th bouncing robot. This represents the total number of assembly nodes for the i-th bouncing robot. R is the path node matrix for each bouncing robot. This represents the number of the j-th node traversed by the i-th bouncing robot. This represents the total number of nodes visited by the i-th bouncing robot.

[0058] The total number of all bouncing robots assembled is n:

[0059] In the formula, Let i be the number of units to assemble for the i-th bouncing robot.

[0060] For the currently assembled node set Therefore, the current assembly structure is an undirected graph. Derived subgraph Because the bouncing robots work in parallel, if the assembly node of a bouncing robot... Relative to derived subgraph It is an isolated point, and it lies in the graph. The minimum distance between nodes in S and nodes in S is

[0061] in Let be the distance between nodes u and v in the undirected graph.

[0062] The condition that the bouncing robot can assemble nodes is: The assembly node of the bouncing robot is exactly... arrive The nodes on the shortest path from the intermediate node, and all these bouncing robots should complete the assembly before the bouncing robot arrives; otherwise, the bouncing robot will have to wait until the assembly distance condition is met.

[0063] This waiting time obviously reduces assembly efficiency. The bouncing robot could simply assemble nodes that already meet the assembly distance requirements, thus saving waiting time. Therefore, during the planning process, let the set of nodes corresponding to the first to the ith columns of the assembly matrix P be denoted as... A node set already exists before initial assembly. Then the following constraints should apply:

[0064] Because crawling requires movement on connected trusses, in the path node sequence, except during the bounce back to the base station node where the distance between two adjacent nodes is greater than 1, the distance between adjacent nodes in other sequences must be 1. Let the base station node be... Therefore, there is a crawling feasibility constraint:

[0065] Consider the entire assembly process of the i-th bouncing robot. The robot initially starts at the base station node, then crawls to the destination assembly node, and finally crawls to the bouncing node and bounces back to the base station node. This process repeats until all assembly nodes are assembled. Ignore the nodes traversed during the crawling process and record all connections to the assembly nodes. The set of adjacent nodes A set of bouncy nodes This yields a node sequence, which must be a subsequence of the bouncing robot's path node sequence:

[0066] To address the aforementioned constraints, an improvement was made to the traditional discrete particle swarm optimization algorithm. Each particle sequence is defined as follows:

[0067] in These are nodes to be assembled, therefore each particle sequence corresponds to an assembly sequence scheme.

[0068] First, a "graph layering" process is performed. Using the base station node as a reference, the distances between each other assembly node and the base station node are calculated. All nodes with the same distance are grouped into one category, and this is recorded as... Let i be the set of all nodes that are at a distance i from the base station node.

[0069] Then initialize the particle sequence as follows:

[0070] The distance between the nodes in the particle sequence and the base station increases continuously from left to right. This represents a node that is j distance from the base station node. This represents the total number of nodes at a distance of i.

[0071] Before calculating fitness, the particle sequence needs to be converted into a P-matrix. Starting from the leftmost node of the particle sequence, the P-matrix is ​​filled sequentially to the right, following a top-down and left-to-right filling order. The first column of the P-matrix is ​​filled first, then the second, and so on, until all columns are filled. Remaining positions are replaced with 0. Taking the initial particle sequence as an example, the completed P-matrix is ​​shown below (this is only one possible case):

[0072] After the P matrix is ​​constructed, fitness is calculated. Based on the P matrix and combined with the spatiotemporal A* algorithm, an R matrix is ​​generated while satisfying the constraints in the modeling process. Since the jumping nodes are not unique, multiple R matrices will appear. Each jumping robot performs a full simulation of the assembly process of a large spatial structure using the jumping robot according to the state machine, calculates the total assembly time, and selects the R matrix with the shortest time as the individual fitness.

[0073] During the assembly process simulation, the location and activities of each bouncing robot at every moment are simulated in real time. The state machine definition of the bouncing robot is as follows: Figure 2 As shown; Figure 2 A flowchart describes a process or decision tree, containing multiple steps and decision points. A flowchart consists of multiple rectangles and arrows; the rectangles represent different steps or decision points, and the arrows indicate the direction of the process. Below is a detailed text description of the flowchart: When idle, it carries the assembled components; Determine if the next assembly route is reachable; If not, return and wait for a certain time to determine if the next assembly route is reachable; if so, determine if the destination has been reached. If the destination is not reached, check if the next node is occupied. If the node is occupied, wait and then return to determine if the next node is occupied. If the path is not occupied, crawl according to the sequence of path nodes, and then return to determine whether the destination has been reached; If the destination is reached, determine whether to bounce back; If not, proceed with assembly and crawl according to the path node sequence; If so, determine whether a bounce command has been received; If a bounce command is received, the device bounces back and enters an idle state. If no bounce command is received, return to determine whether a bounce command has been received.

[0074] The time factor considered in the deduction process includes: 1. Total waiting time (including waiting for occupied nodes to be cleared and waiting for ejection commands) : Based on real-time simulation calculations; 2. Crawling time (including time required to reach the assembly node and the launch node) : Based on real-time simulation calculations; 3. Standby flight time : Define the bouncing node and the base station vector , , The time-related factor; Since the time required for mounting and assembling all components is fixed, it is ignored.

[0075] like Figure 3 As shown, after all particle fitness calculations are completed, the individual optimal fitness and the global optimal fitness are found. Each particle compares its individual fitness value with the optimal fitness value updated in previous iterations. If the individual fitness value is smaller, it is recorded along with the current particle sequence as the individual optimal fitness; otherwise, it is discarded. The optimal fitness of all particles is compared with the global optimal fitness. If the current fitness is smaller, the global optimal fitness and sequence are updated using the individual fitness and its corresponding sequence.

[0076] After finding the individual optimal fitness and the global optimal fitness, update the position and velocity.

[0077] The update speed follows the concept of velocity from the traditional discrete particle swarm optimization algorithm. Velocity describes the probability of a particle changing its position, and is calculated by the following formula.

[0078] in It is the updated velocity of particle i in the j-th dimension. It is inertial weight. and The acceleration constant, and for Random numbers within the range Let i be the optimal position of particle i in the j-th dimension. To find the globally optimal position in the j-th dimension, Let i be the current position of particle i in the j-th dimension.

[0079] When updating the position, since the velocity is represented as a probability, the sigmoid function is used to convert it into a probability.

[0080] Let be the velocity of particle i in the j-th dimension.

[0081] For the j-th dimension of particle i, if its corresponding assembly node belongs to , produce a A random number within the range, if the random number is greater than If the value is less than 1, then the original value remains unchanged; if it is less than 1, then another value is generated. A random number is generated within the specified range. If this random number is less than 0.5, then the position is compared with... If the position of a random node is swapped, and the result is greater than 0.5, then the position of the globally optimal fitness node for that position is found in this particle, and the two positions are swapped.

[0082] After updating the particle velocity and position, check if the termination condition is met. If not, continue the iteration; if it is met, output the result.

[0083] After calculating the results using the above method, simulation is required to verify the rationality of the process. The specific process is as follows: Assume 6 bouncing robots are assembled into a regular hexagonal mesh structure with side length n, the base station is located at the center of the structure, and the structure with side length 10 is as follows: Figure 4 As shown, the red nodes represent base stations. To verify the efficiency of the proposed assembly method, two cases are considered: all nodes are bouncy nodes and all nodes are non-bouncy nodes. It is assumed that the robot's flight speed after bouncy is proportional to the distance from the bouncy node to the base station, and the free flight time is a constant. Because actual physical time is greatly affected by the aerospace assembly mission and robot performance, the relevant time parameters use dimensionless values ​​to represent only relative magnitudes. The specific time parameter settings are as follows:

[0084] in, The time it takes for the robot to load the modules to be assembled at the base station. This represents the crawling time of the robot between the two nodes. The assembly time for the robot at the destination. This refers to the time the robot spends in free flight after bouncing.

[0085] The particle swarm optimization population is set to 100 particles, with 100 iterations, and the algorithm parameters are set to...

[0086] Sequence programming was performed on structures with side lengths of 5 to 10, yielding assembly times for two scenarios: all nodes are bouncy nodes and all nodes are non-bouncy nodes. Figure 5 As shown, the assembly time reduction rate of the proposed method compared to the traditional method is further calculated as follows: Figure 6 As shown in the figure, the proposed method can significantly accelerate assembly efficiency for larger-scale structures. To verify the algorithm, for structures with different side lengths, the ideal shortest assembly time, ignoring factors such as robot congestion, was calculated, and this time was used as the proportion of additional time required in the basic computational planning result. The results are as follows: Figure 7 As shown, the larger the structure size, the smaller the proportion of extra time, and the closer the result is to the theoretical minimum.

[0087] The second objective of this application is to provide a spatial large-scale structure assembly system utilizing a bouncing robot, comprising: The undirected graph construction module is used to construct undirected graphs for large spatial structures. In the undirected graph, n assemblies and s bouncing robots are set. Initially, all of them are located at the base station. The assembly node matrix P and path node matrix R of each bouncing robot are constructed, where P represents the assembly node corresponding to each bouncing robot and R represents the path node traversed by each bouncing robot. The graph layering module is used to calculate the distance between the base station node and other assembly nodes, taking the base station node as a reference, grouping nodes with the same distance into one category to form a graph layer; and initializing the particle sequence in the graph layer so that the distance between the nodes in the particle sequence and the base station gradually increases from left to right. The assembly simulation module is used to convert the particle sequence into an assembly node matrix P, generate a path node matrix R under the constraints of the modeling process, simulate the assembly process, calculate the total assembly time, and select the path node matrix R with the shortest time as the individual fitness. The fitness update module is used to update the individual optimal fitness of each particle based on the individual fitness; and to update the global optimal fitness based on the individual optimal fitness. The position change module is used to calculate the velocity after updating the global optimal fitness, convert the velocity into a probability, and decide whether to change the particle position based on the probability. The iterative output module is used to determine whether the termination condition is met. If not, it returns to continue the iteration; if it is met, it outputs the particle position corresponding to the global optimal fitness as the optimal assembly sequence scheme.

[0088] A third objective of this application is to provide an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, it implements the aforementioned method for assembling large spatial structures using a bouncing robot. The device also includes a communication interface and a bus.

[0089] A fourth objective of this application is to provide a computer-readable storage medium storing a computer program that, when executed by a processor, implements the above-described method for assembling large spatial structures using a bouncing robot.

[0090] A fifth objective of this application is to provide a computer program product comprising computer instructions that instruct a computer to execute the above-described method for assembling large spatial structures using a bouncing robot.

[0091] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.

[0092] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.

[0093] This application may take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this application may take the form of a computer program product implemented on one or more computer-usable storage media (including, but not limited to, disk storage, readable storage media, optical storage, etc.) containing computer-usable program code.

[0094] This application is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this application. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart... Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.

[0095] Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments in this application, all other embodiments obtained by those skilled in the art without creative effort should fall within the scope of protection of this application.

[0096] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of this application and not to limit them. Although this application has been described in detail with reference to the above embodiments, those skilled in the art should understand that modifications or equivalent substitutions can still be made to the specific implementation of this application. Any modifications or equivalent substitutions that do not depart from the spirit and scope of this application should be covered within the protection scope of the claims of this application.

Claims

1. A method for assembling large spatial structures using a bouncing robot, characterized in that, Includes the following steps: S1. Construct an undirected graph for large spatial structures. In the undirected graph, set n assembly parts and s bouncing robots. Initially, all of them are located at the base station. Construct the assembly node matrix P and path node matrix R for each bouncing robot. S2, using the base station node as a reference, calculate the distance k between each of the other assembly nodes and the base station node, group nodes with the same distance into one category, forming a graph layer, and obtaining multiple node layer sets. Initialize the particle sequence in multiple node layer sets, so that the distance between the nodes of the particle sequence and the base station gradually increases; S3, convert the particle sequence into an assembly node matrix P, generate a path node matrix R under the constraints of the modeling process, deduce the assembly process, calculate the total assembly time, and select the path node matrix R with the shortest time as the individual fitness. S4, each particle updates its individual optimal fitness based on its individual fitness; the global optimal fitness is then updated based on the individual optimal fitness. S5, calculate the velocity after updating the global optimal fitness, convert the velocity into a probability, and decide whether to change the particle position based on the probability; S6. Determine if the termination condition is met. If not, return to step S3 for iteration. If met, output the particle position corresponding to the global optimal fitness as the optimal assembly sequence scheme.

2. The method for assembling a large spatial structure using a bouncing robot according to claim 1, characterized in that, In the undirected graph, the target location node for assembling the component is the assembly node, and the node where the bouncing robot bounces is the bouncing node. The bouncing robot cluster works in parallel, with the bouncing robot that is idle at the base station executing the assembly of the next component, until there are no idle bouncing robots.

3. The method for assembling a large spatial structure using a bouncing robot according to claim 1, characterized in that, S1 specifically includes: Given n assembly parts and s bouncing robots, all initially located at the base station; construct the following model: In the formula, P is the assembly node matrix of each bouncing robot. This represents the number of the j-th assembly node of the i-th bouncing robot. R represents the total number of assembly nodes for the i-th bouncing robot; R is the path node matrix for each bouncing robot. This represents the number of the j-th node traversed by the i-th bouncing robot. This represents the total number of nodes visited by the i-th bouncing robot; The total number of all bouncing robots assembled is n: The number of units to assemble for the i-th bouncing robot; Current set of assembled nodes The current assembly structure is an undirected graph. Derived subgraph If the assembly node of a bouncing robot Relative to derived subgraph It is an isolated point, and it lies in the graph. The minimum distance between nodes in S and nodes in S is in Let u be the distance between nodes u and v in the undirected graph; The condition for any assembly node of the bouncing robot is that The assembly node of the bouncing robot is arrive The nodes on the shortest path from the middle node, and Each bouncing robot should complete the assembly before the arrival of the first bouncing robot; otherwise, the bouncing robot will wait until the assembly distance condition is met. Let the set of nodes corresponding to the first to the ith columns of the assembly matrix P be denoted as . A node set already exists before initial assembly. Then the following constraints should apply: Consider the entire assembly process of the i-th bouncing robot. The robot initially starts at the base station node, then crawls to the destination assembly node, and finally bounces back to the base station node from the bouncing node. This process repeats until all assembly nodes are assembled. Ignoring the nodes traversed during the crawling process, record all connections to the assembly nodes. The set of adjacent nodes A set of bouncy nodes This yields a node sequence, which is a subsequence of the bouncing robot's path node sequence: Each particle sequence is defined as in, These are nodes to be assembled, and each particle sequence corresponds to an assembly sequence scheme.

4. The method for assembling a large spatial structure using a bouncing robot according to claim 1, characterized in that, S2 specifically includes: Using the base station node as a reference, calculate the distance between each other assembly node and the base station node. Group all nodes with the same distance into one category to form a graph layer, and record... Let i be the set of all nodes that are at a distance i from the base station node; Initialize the particle sequence as The distance between the nodes in the particle sequence and the base station increases continuously from left to right. This represents a node that is j distance from the base station node. This represents the total number of nodes at a distance of i.

5. A method for assembling large spatial structures using a bouncing robot according to claim 1, characterized in that, S3 specifically includes: Starting from the nodes on one side of the particle sequence, fill the P matrix sequentially from the other side, following a top-down and left-to-right filling order. Begin by filling the first column of the P matrix, filling the second column after the first column is full, and so on, proceeding to the right until all columns are filled. Replace any remaining positions with 0. The particle sequence needs to be converted into a P matrix. After the P matrix is ​​constructed, fitness is calculated. Based on the P matrix and combined with the A* algorithm, an R matrix is ​​generated while satisfying the constraints in the modeling process. Each bouncing robot performs a full simulation of the assembly process of the large spatial structure using the bouncing robot according to the state machine, calculates the total assembly time, and selects the R matrix with the shortest time as the individual fitness. During the assembly process simulation, the location and activities of each bouncing robot at each moment are simulated in real time.

6. A method for assembling a large spatial structure using a bouncing robot according to claim 5, characterized in that, The calculation of total assembly time includes: Total waiting time This includes waiting for occupied nodes to be cleared and waiting for ejection commands, calculated based on real-time simulation. Crawling time This includes the time required to travel to the assembly node and the ejection node, calculated based on real-time simulation. Standby flight time Let the bouncing node and the base station vector be... , , This represents the time-related factor.

7. A method for assembling a large spatial structure using a bouncing robot according to claim 5, characterized in that, The state machine of the bouncing robot includes: When idle, it carries the assembled components; Determine if the next assembly route is reachable; If not, return and wait for a certain period of time to determine if the next assembly route is reachable; if so, determine if the destination has been reached. If the destination is not reached, check if the next node is occupied; if it is occupied, wait and then return to check if the next node is occupied; if it is not occupied, crawl according to the path node sequence, and then return to check if the destination has been reached. If the destination is reached, determine whether to bounce back; if not, proceed with assembly and crawl according to the path node sequence. If yes, determine whether a bounce command has been received; if a bounce command has been received, bounce back and enter the idle state; if no bounce command has been received, return to determine whether a bounce command has been received.

8. A method for assembling large spatial structures using a bouncing robot according to claim 1, characterized in that, S4 specifically includes: Each particle compares the value of its individual fitness with the value of its current best fitness in the previous few iterations. If the value of its individual fitness is smaller, then the individual fitness value and the current particle sequence are used as the current best fitness of the individual; otherwise, the individual fitness is discarded. Compare the current best fitness of all particles with the global best fitness. If the current best fitness is better, update the global best fitness and sequence with the current best fitness and the corresponding sequence. After all the fitness of all particles has been calculated, update the individual best fitness and the global best fitness.

9. A method for assembling a large spatial structure using a bouncing robot according to claim 1, characterized in that, S5 specifically includes: The particle's position and velocity are updated based on the global optimal fitness, specifically calculated using the following formula: in It is the updated velocity of particle i in the j-th dimension. It is inertial weight. and The acceleration constant, and for Random numbers within the range Let i be the optimal position of particle i in the j-th dimension. To find the globally optimal position in the j-th dimension, Let i be the current position of particle i in the j-th dimension; When updating the position, the sigmoid function is used to convert it into a probability: Let i be the velocity of particle i in the j-th dimension; For the j-th dimension of particle i, if its corresponding assembly node belongs to , produce a A random number within the range, if the random number is greater than If the value is less than 1, then the original value remains unchanged; if it is less than 1, then another value is generated. If the random number is less than the threshold, then the corresponding position is compared with... If the position of a random node is swapped, and the swap is greater than a threshold, then the position of the globally optimal fitness node for that position is found in the particle, and the two positions are swapped.

10. A spatial large-scale structure assembly system utilizing a bouncing robot, characterized in that, include: The undirected graph construction module is used to construct undirected graphs for large spatial structures. In the undirected graph, n assemblies and s bouncing robots are set, all of which are initially located at the base station. The assembly node matrix P and path node matrix R of each bouncing robot are constructed. The graph layering module is used to calculate the distance between the base station node and other assembly nodes, taking the base station node as a reference, grouping nodes with the same distance into one category to form a graph layer; and initializing the particle sequence in the graph layer so that the distance between the nodes in the particle sequence and the base station gradually increases from left to right. The assembly simulation module is used to convert the particle sequence into an assembly node matrix P, generate a path node matrix R under the constraints of the modeling process, simulate the assembly process, calculate the total assembly time, and select the path node matrix R with the shortest time as the individual fitness. The fitness update module is used to update the individual optimal fitness of each particle based on the individual fitness; and to update the global optimal fitness based on the individual optimal fitness. The position change module is used to calculate the velocity after updating the global optimal fitness, convert the velocity into a probability, and decide whether to change the particle position based on the probability. The iterative output module is used to determine whether the termination condition is met. If not, it returns to continue the iteration; if it is met, it outputs the particle position corresponding to the global optimal fitness as the optimal assembly sequence scheme.