Next Article in Journal
A Neural Network Warm-Started Indirect Trajectory Optimization Method
Next Article in Special Issue
Design and Analysis of a Compression and Separation Device for Multi-Satellite Deployment
Previous Article in Journal
Aircraft Lateral-Directional Aerodynamic Parameter Identification and Solution Method Using Segmented Adaptation of Identification Model and Flight Test Data
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Modular Self-Reconfigurable Satellite Inverse Kinematic Solution Method Based on Improved Differential Evolutionary Algorithm

Department of Aerospace Science and Technology, Space Engineering University, Beijing 101416, China
*
Author to whom correspondence should be addressed.
Aerospace 2022, 9(8), 434; https://doi.org/10.3390/aerospace9080434
Submission received: 9 July 2022 / Revised: 4 August 2022 / Accepted: 4 August 2022 / Published: 6 August 2022
(This article belongs to the Special Issue Emerging Space Missions and Technologies)

Abstract

:
The modular self-reconfigurable satellites (MSRSs) are a new type of satellite that can transform configuration in orbit autonomously. The inverse kinematics of MSRS is difficult to solve by conventional methods due to the hyper-redundant degrees of freedom. In this paper, the kinematic model of the MSRS is established, and the inverse kinematic of the MSRS is transformed into an optimal solution problem with minimum pose error and minimum energy consumption. In order to find the inverse kinematic exact solution, the refractive opposition-based learning and Cauchy mutation perturbation improved differential evolutionary algorithm (RCDE) is proposed. The performance of the algorithm was examined using benchmark functions, and it was demonstrated that the accuracy and convergence speed of the algorithm were significantly improved. Three typical cases are designed, and the results demonstrate that the optimization method is effective in solving the MSRS inverse kinematics problem.

1. Introduction

Large spacecraft are designed as highly integrated chimney systems and become complex, costly, and risky, with huge losses in the event of a failure [1]. In the past decades, the form of spacecraft has remained largely unchanged, requiring pre-designed functions and forms based on the mission [2], while the structure, function, and mode of operation of spacecraft in orbit rarely change. Nowadays, the complexity, economy and rapid response requirements of space missions place higher demands on spacecraft design. Therefore, modular self-reconfigurable satellites [3] (MSRSs) that can transform their own configuration in orbit are of increasing interest to research institutions.
MSRS is a combination of homogeneous or heterogeneous spacecraft modules to form a spacecraft. MSRS can autonomously accomplish the transform of configuration without external intervention. MSRS can be adjusted to the optimal launch configuration according to the diameter of the rocket fairing and return to the normal operating form after orbit by configuration transformation. Depending on the mission requirements, the spacecraft modules of the original configuration can be adapted to the best configuration for the mission [4,5]. MSRS has the following advantages: (1) autonomous and fast configuration transformation; MSRS configuration transformation does not require the assistance of the service spacecraft, saving the transformation time and providing better mission adaptation; (2) stronger configuration transformation capability and a variety of configuration options, thus enabling more functions to be accomplished; (3) more robustness; when a module fails, the task can be executed by the remaining modules instead; and (4) more safety; no service spacecraft assistance is required, avoiding the risk of spacecraft collision.
Numerous projects for modular self-configuring satellites have emerged. Japan proposes Panel ExTension SATellite (PETSAT) [6]. The satellites are composed by modular, functional and insertable panels that can be deployed in orbit in a variety of configurations. Caltech and the University of Surrey-Surrey Space Centre (SSC) have proposed the AAReST program [7]. AAReST (Autonomous Assembly Reconfigurable Space Telescope Flight Demonstrator) was started in 2009 to study the autonomous assembly and reconfiguration of astronomical telescopes in orbit. The German Aerospace Center (DLR) started funding the iBoss project [8] in 2010, focusing on the assembly of smart modular cubes into modular reconfigurable spacecraft. The EU funded the HORIZON 2020 MOSAR program [9]. MOSAR started in 2016 and is dedicated to the development of ground demonstrators for modular self-reconfiguring satellite systems in orbit. The goal of the project is to integrate and demonstrate the technologies required for a fundamental paradigm shift in the design and deployment of satellites in future space missions. In February 2018, Aerospace announced the Hive project [10], which uses disassembled architectures of small smart satellites to form the various functions of large satellite platforms through on-demand on-orbit assembly. In addition, various self-reconfigurable space robot projects have emerged, such as cellular space robot (CSR) [11], SuperBot [12,13], and M-Blocks [14,15].
The Space Engineering University proposes to connect multiple modular satellites by mechanical joints to form a modular self-reconfigurable satellite [16], as shown in Figure 1. The satellite module is connected to the robotic arm through a standardized interface. The 3DOF robotic arm is a ball-and-wrist robotic arm consisting of three mutually perpendicular, orthogonal joints. The modular self-reconfigurable satellite is formed by the tandem connection of multiple satellite modules and three-degree-of-freedom robotic arms. The motion of the mechanical joints can make the satellite modules constitute different position and attitude relationships and form different mission configurations; thus, they can meet various space mission requirements.
MSRS can carry a variety of payloads, including optical payloads, SAR payloads, communication payloads, and so on. Through morphological reconfiguration, the spatial orientation of the payloads can be reorganized, and a variety of space tasks can be accomplished. When the MSRS carries multiple optical cameras, the orientation of each camera can be changed through morphological reconfiguration, and multi-target imaging can be achieved as well as multiple field of view stitching, wide-image imaging, and stereo imaging. When the MSRS carries multiple communication payloads, multiple areas can be communicated by adjusting the direction of the payloads. When the MSRS carries a variety of optical remote sensing payloads, it can realize multi-payload simultaneous earth observation and improve the reliability and accuracy of target remote sensing information through information fusion.
A complete mission process for a modular MSRS follows: (1) satellite mission planning after mission acceptance; (2) determining the mission configuration, specifying the satellite module performing the mission and the module’s pose relationship; (3) inverse kinematic solving: translate the Cartesian space’s positional relationship into the joint angle in joint space; (4) trajectory planning; (5) configuration transformation; and (6) execution of the task and data downlink, as shown in Figure 2.
The inverse kinematic solver is the key link of the whole task process, which determines the accuracy of the module’s pose relationship and directly affects the accuracy of the cooperative work between modules.
MSRS are typical chain multi-body systems and can be regarded as a special class of hyper-redundant robotic arms whose configuration planning is predicated on accurate inverse kinematic solving. The kinematic inverse solution of the robotic arm is to find the angle for each joint’s motion by knowing the position and attitude of the end-effector relative to the reference coordinate system. The differences between the inverse kinematic solution of the modular self-reconfigurable satellite and the ordinary inverse kinematic solution of the robot arm problem follow. The robot arm has few degrees of freedom and is only concerned with the relative attitude relationship of the end-effector to the base; so, the inverse kinematic solution is simple. However, the degree of freedom of the modular self-reconfigurable satellite is hyper-redundant, which focuses on the relative pose relationship between any modules, and the inverse kinematics solution is complicated. According to the combination of MSRS task modules to be solved, the dimensions of the inverse kinematics solution are also different.
At present, the methods of solving inverse kinematics can be divided into closed-form solution methods and numerical solution methods. Closed-form solutions include geometric and algebraic methods. The geometric method calculates the geometric relationship between joint positions and joint angles through trigonometric functions, and it is only suitable for structures with fewer degrees of freedom and satisfying the Piper’s Criterion. The algebraic method converts the kinematic equations into polynomial equations and solves each solution of the polynomial equation, but there may be no solutions. The iterative method is commonly used for numerical solutions, calculating the Jacobian matrix of the manipulator. For systems with high degrees of freedom, the iterative method has high complexity and high computational cost, and the Jacobian matrix may also be singular.
The inverse kinematics solution can be transformed into an optimization problem and solved by a swarm intelligence optimization algorithm. The optimization method has a wide range of applications and is suitable for solving complex robotic arm inverse kinematics, and the computational cost does not increase significantly with the increase in DOF. The optimization method is based on positive kinematic equations and does not suffer from joint singularities. When additional constraints are added to the multi-solution inverse kinematics, the optimal solutions for different objectives can be obtained [16]. The swarm intelligence optimization algorithm has been widely used in inverse kinematics, including particle swarm algorithm [17], clone selection algorithm, firefly algorithm, etc.
The modular self-reconfigurable satellite inverse kinematics solution model with hyper-redundant degrees of freedom is a complex nonlinear strongly coupled equation system, and there are infinitely many inverse kinematic solutions. Ordinary swarm intelligence optimization algorithms are very easy to converge prematurely and fall into a local optimum. The improvement of swarm intelligence algorithms to improve the optimization performance is a hot research topic to solve the inverse kinematics problem.
In this paper, we propose the refractive opposition-based learning and Cauchy mutation perturbation improved differential evolutionary algorithm (RCDE) to solve the inverse kinematics of MSRS. Firstly, the coordinate system of the MSRS is established, and the inverse kinematics solution of the MSRS is transformed into an optimization problem. The fitness function integrates the module’s optimal pose error and energy optimal principles, and it designs a constrained optimization function and a multi-objective optimization function. The differential evolution algorithm is improved from the perspective of population diversity, which improves the convergence speed and accuracy of the algorithm. In the experimental part, three typical cases are designed to test the model and algorithm.

2. Inverse Kinematics Optimization Solution Model for MSRS

Firstly, a suitable linkage coordinate system is established to describe the MSRS. On the basis of the linkage coordinate system, the homogeneous coordinate transformation matrix is used to describe the positional attitude, which can simplify the derivation of the kinematic equations. The D-H method is a common method to establish the linkage coordinate system, which can quickly establish the linkage coordinate system of the multi-body system by simple and clear principles.
According to the D-H method, the relationship between the linkage coordinate system Σ i and the coordinate system Σ i 1 is described by the following four variables: joint angle θ i , linkage torsion angle α i , linkage offset d i , and linkage length a i . The MSRS in this paper consists of nine modules and eight 3DOF robotic arms, so the MSRS is a 24DOF hyper-redundant degrees of freedom multi-body system. The linkage coordinate system for establishing the MSRS is shown in Figure 3. To facilitate the subsequent attitude dynamics study, the base coordinate system Σ B is fixed to the middle position of the module. The base coordinate system Σ B is centered, and the two sides of the linkage coordinate system are divided into side a and side b. The upper limit of all joint rotation angles is 90° and the lower limit is −90°. The D-H parameters of the linkage coordinate system are shown in Table 1.

2.1. The Optimal Function of Pose Accuracy

After establishing the D-H coordinate system, the coordinate system can be made to coincide with the standard transformation movement such as rotation and translation. The conversion process is as in Equation (1):
T i i 1 = R o t ( z i - 1 , θ i ) T r a n s ( z i - 1 , d i ) T r a n s ( x i - 1 , a i ) R o t ( x i , α i )
In the formula, Rot represents the rotation operator, and Trans represents the translation operator. Through matrix calculation, the homogeneous coordinate transformation matrix relative of O i X i Y i Z i relative to the coordinate system O i 1 X i 1 Y i 1 Z i 1 in the linkage coordinate system is obtained:
T i i 1 = [ cos θ i cos α i sin θ i sin α i sin θ i a i cos θ i sin θ i cos α i cos θ i sin α i cos θ i a i sin θ i 0 sin α i cos α i d i 0 0 0 1 ]
where θ i , α i , d i and a i denote the D-H parameters. For the MSRS with n degrees of freedom, the process of solving the pose matrix from the homogeneous coordinate transformation matrix is:
n 0 T = i = 1 n T i i 1 = [ n x o x a x p x n y o y a y p y n z o z a z p z 0 0 0 1 ] = [ R n 0 P n 0 0 1 ]
where R is the derived attitude matrix and P is the derived position matrix; then, the derived positional matrix is expressed as:
T a = [ R a P a 0 1 ]
The expectation of the target pose matrix is expressed as:
T ^ = [ R ^ P ^ 0 1 ]
The position error can be expressed in terms of the Euclidean metric as:
P e r r o r = P a P ^ | | = ( p x p ^ x ) 2 + ( p y p ^ y ) 2 + ( p z p ^ z ) 2
The attitude error matrix can be calculated by the difference of the attitude matrix
R e r r o r = R a R ^
Since the above position error and attitude error are absolute errors and their units are different, they cannot be compared at the same time, and they need to be normalized. The simple method is to convert the absolute error to relative error. Thus, the position error and attitude error are expressed as:
E p = P e r r o r P ^ = P a P ^ | | P ^ = ( p x p ^ x ) 2 + ( p y p ^ y ) 2 + ( p z p ^ z ) 2 p ^ x 2 + p ^ y 2 + p ^ z 2
E a = = R a R ^ R ^
In order to balance the position and attitude convergence accuracy, the pose error matrix of the target is uniformly expressed as:
f ( T , T ^ ) = ω p E p + ω a E a
where ω p and ω a are the weight factors of the position error and attitude error, and ω p = 1 ω a , ω p and ω a can be assigned according to the importance of the position error and attitude error.
The above positional accuracy errors are only for a single target module with respect to the base coordinate system, there are multiple modules working together in a single mission, and we refer to the working modules as mission modules. The payloads of mission modules often need to cooperate with each other. For example, multiple modules carrying optical imaging payloads can achieve a wide range of imaging through a certain relative attitude angle relationship. Therefore, the relative attitude between mission modules has a certain accuracy requirement.
The relative positional relationships between multiple task modules can be solved with the homogenous coordinate transformation matrix through the task module and the base module. In order to distinguish the position of the modules, the module numbers in this paper are denoted by ia and ib, where i denotes the module number on each side, i = 0 denotes the base module located in the middle, and superscript a and b denote the a-side and b-side, respectively, as shown in Figure 4.
(1) When the task modules m, n are located on the same side of the base module, the homogenous coordinate transformation matrix is derived as follows:
T n a 0 = i = 1 n T i a ( i 1 ) a = T 1 a 0 T 2 a 1 a T n a ( n 1 ) a
T m a 0 = i = 1 m T i a ( i 1 ) a = T 1 a 0 T 2 a 1 a T m a ( m 1 ) a
So, the homogenous coordinate transformation matrix of the task module m with respect to n is:
T m a n a = ( T n a 0 ) 1 T m a 0 = T ( n + 1 ) a n a T ( n + 2 ) a ( n + 1 ) a T m a ( m 1 ) a
where the superscript a indicates the a-side module.
(2) When the task modules m, n are located on different sides of the base module:
T n a 0 = i = 1 n T i a ( i 1 ) a = T 1 a 0 T 2 a 1 a T n a ( n 1 ) a
T m b 0 = i = 1 m T i b ( i 1 ) b = T 1 b 0 T 2 b 1 b T m b ( m 1 ) b
So, the different sides task modules m with respect to n homogenous coordinate transformation matrices take the form of:
T m b n a = ( T n a 0 ) 1 T m b 0 = T ( n 1 ) a n a T ( n 2 ) a ( n 1 ) a T 0 1 a T 1 b 0 T 2 b 1 b T m b ( m 1 ) b
In summary, when multiple modules have the requirement of relative positional accuracy, only the relative positional accuracy functions of two adjacent modules need to be accumulated sequentially. Therefore, combining Equations (10), (13) and (16), the optimal function of pose accuracy for multiple modules is expressed as:
f p o s e ( q ) = f ( T , T ^ ) = ( ω p E p + ω a E a )
where:
T = { T m a n a = T ( n + 1 ) a n a T ( n + 2 ) a ( n + 1 ) a T m a ( m 1 ) a                                                                 if   m ,   n     are   on   the   same   side T m b n a = T ( n 1 ) a n a T ( n 2 ) a ( n 1 ) a T 0 1 a T 1 b 0 T 2 b 1 b T m b ( m 1 ) b           if   m ,   n   are   on   different   sides

2.2. Energy Optimal Function

The motion process of MSRS in space applications will not only require the highest pose accuracy between modules but will also require less energy consumption, better flexibility, safety and other requirements. The specificity of the space environment determines that the energy consumption is the second most critical indicator of the configuration transformation process after the pose accuracy. In order to reduce the energy consumption of the reconfiguration process from the initial to the target configuration of the MSRS, the amount of motion of each joint should be as small as possible.
The rotation of the joints near the middle position of the modular self-reconfigurable satellite drives a wide range of changes in the position of the modules on both sides, consuming more energy, while the rotation of the joints near the sides consumes less energy. Thus, for the a-side joint angle q a = [ q 1 a , q 2 a , , q 11 a , q 12 a ] T and the b-side joint angle q b = [ q 1 b , q 2 b , , q 11 b , q 12 b ] T , the smaller the numbered joint rotation, the more energy is consumed. Therefore, the following objective function is established as follows:
f e n e r g u ( q ) = min ( i = 1 n | w i ( q i a q i a _ i n i ) | + i = 1 n | w i ( q i b q i b _ i n i ) | )
where q a _ i n i = [ q 1 a _ i n i , q 2 a _ i n i , , q 11 a _ i n i , q 12 a _ i n i ] T , q b _ i n i = [ q 1 b _ i n i , q 2 b _ i n i , , q 11 b _ i n i , q 12 b _ i n i ] T denotes the joint angles corresponding to the initial states of side a and side b, respectively. w i denotes the weight coefficient of each joint, and the value of is taken as a linear weighting factor, which is expressed by the following equation.
w i = w max w max w min i max i

2.3. Pose Inverse Solution Multi-Objective Optimization Function

In practical applications, we want the configuration transformation of MSRS to maintain high positional accuracy while saving energy. In this section, the inverse kinematic solution of the MSRS is transformed into a multi-objective optimization problem for the optimal modular pose accuracy and the combined optimal energy consumption from the initial configuration to the target configuration. A common method for solving multi-objective optimization problems is to obtain an optimal set of Pareto Optimality solution sets.
MSRS with hyper-redundant degrees of freedom and inverse kinematic Pareto Optimality solutions will be larger than the general inverse kinematic solutions. In fact, we prefer to obtain a best-fit solution rather than facing a bunch of Pareto solution sets [18]. Therefore, multi-objective optimization problems are often transformed into single-objective optimization problems with the linear weighted summation of all objectives. In this paper, the multi-objective optimization problem of inverse kinematic solution of MSRS is transformed into a single-objective optimization problem of linear weighted summation, i.e., the objective function is:
min ( F o b j ( q ) ) = min ( α 1 f p o s e ( q ) + α 2 f e n e r g y ( q ) )
where α 1 and α 2 are weight coefficients that can be adjusted according to the importance of the two objectives of positional accuracy and energy optimality. f 1 ( q ) and f 2 ( q ) are of different orders of magnitude, and in order to effectively compromise between the two optimization objectives, the weight coefficient of the former should be much larger than the weight coefficient of the latter [18].

2.4. Pose Inverse Solution Constrained Optimization Function

MSRSs have the property of hyper-redundant of degrees of freedom and an infinite number of corresponding kinematic inverse solutions, which makes it difficult to choose a suitable solution if there are no constraints. Therefore, in this section, the optimal positional accuracy of the module is set as a constraint, and the minimum energy consumption from the initial to the final configuration of the module is set as the optimization objective, transforming the inverse kinematic solution problem of the MSRS into a minimum constrained optimization problem.
According to Equations (17) and (18), the energy-optimal constrained optimization objective function of the MSRS initial configuration to the target configuration under the positional accuracy constraint is established as:
min ( f e n e r g y ( q ) ) = min ( i = 1 n | w i ( q i a q i a _ i n i ) | + i = 1 n | w i ( q i b q i b _ i n i ) | ) s . t .       g ( q ) = Δ ( q ) Δ max 0
where Δ max denotes the maximum positional error.
The penalty function is used as the constraint, and the penalty fitness function is established by adding a penalty term to the objective function. Transforming the energy-optimal objective function under the constraint of pose accuracy into an unconstrained objective function, the penalty fitness function is as follows.
min ( f ( q ) ) = min ( f e n e r g y ( q ) + ψ ( q ) )
ψ ( q ) = { 0                     g ( q ) 0 α Δ ( q )       g ( q ) > 0
where f e n e r g y ( q ) is the original optimal objective function of energy consumption, ψ ( q ) is the penalty function, f ( q ) is the constructed penalty fitness function, and α is the penalty coefficient. According to Equation (23), the larger the positional error, the greater the penalty, and the greater the value of the penalty fitness function.

3. Improved Differential Evolutionary Algorithm

3.1. Standard Differential Evolutionary Algorithm

In recent years, various biomimetic heuristic optimization algorithms have emerged. By imitating the intelligent behaviors of organisms, a series of swarm intelligence optimization algorithms have been generated, such as particle swarm algorithms that imitate the foraging of birds, ant colony algorithms that imitate the behavior of ant colonies, genetic algorithms that imitate the genetic evolution of organisms, and differential evolution algorithms based on population differences. Among the many swarm intelligence optimization algorithms, the differential evolution algorithm (DE) [19] performs significantly better than other optimization algorithms in terms of convergence speed and robustness for some commonly used benchmark test functions and real-world problems.
The advantages of the DE algorithm over other swarm intelligence optimization algorithms are as follows: (1) strong global search capability and easy parallelization; (2) black-box optimization capability—the DE algorithm has no specific requirements on the characteristics of the optimization function, the objective function can be discontinuous, non-differentiable, or even no explicit mathematical form, etc., which is suitable for various optimization problems; and the (3) robustness and stability of the algorithm.
The steps of the standard DE algorithm include population initialization, mutation, crossover, and selection operations. The specific steps of the standard DE algorithm are as follows.
  • Initializing populations
Randomly generate initialized populations { X i ( 0 ) | X i ( 0 ) = [ x i 1 , x i 2 , x i 3 , , x i D ] , i = 1 , 2 , , N P } , where NP denotes the population size, X i ( 0 ) denotes the i-th individual in the population, x i j denotes the component of the j-th dimension in the i-th individual, and x i j is generated by the following equation:
{ x i j = a j + r a n d ( 0 , 1 ) ( a j b j ) i = 1 , 2 , , N P ,   j = 1 , 2 , , D
2.
Mutation operation
After population initialization, the mutation operation is implemented in the form of differencing. Two dissimilar individuals in the current population are selected, and their difference vectors are scaled and summed with the individuals to be mutated to produce new individuals:
V i ( g + 1 ) = X r 1 ( g ) + F ( X r 2 ( g ) X r 3 ( g ) )
where i r 1 r 2 r 3 , i = 1 , 2 , , N P , r 1 , r 2 and r 3 are random certificates for the interval [1, NP], F is the scaling factor, g is the number of evolutionary generations, and X i ( g ) is the i-th individual of the g-th generation population.
3.
Crossover operation
The crossover operation for the g-th generation population { X i ( g ) , i = 1 , 2 , , N P } and its mutant population { V i ( g ) , i = 1 , 2 , , N P } is performed for the corresponding individuals according to the corresponding rules, and the common crossover method is binomial crossover:
U i j ( g + 1 ) = { V i j ( g + 1 ) ,   i f   r a n d C R   o r   j = j r a n d X i j ( g ) ,   o t h e r w i s e
where i = 1 , 2 , , N P ,   j = 1 , 2 , , D , g denotes the number of evolutionary generations. CR is a predetermined crossover probability, and jrand is a random integer in the interval [1, D].
4.
Select operation
The DE algorithm uses a greedy strategy to select the better adapted individuals from the original population and the new population to form the next-generation population based on the magnitude of the objective function value:
X best = { U i ( g + 1 ) ,   i f   f ( U i ( g + 1 ) ) f ( X i ( g ) ) X i ( g ) ,   o t h e r w i s e
where i = 1 , 2 , , N P , g denotes the number of evolutionary generations.
The evolutionary model of the DE algorithm can be expressed by the general formula, where DE denotes the differential evolution algorithm and x denotes the individuals to be mutated in the population, which can be expressed as rand (random individuals) or best (optimal individuals). y denotes the number of difference vectors. z denotes the pattern of crossover, which can be expressed as bin (binomial crossover) or exp (exponential crossover). The pattern of the standard differential evolution algorithm is DE/rand/1/bin.
The balance of global search and local exploration ability is the main factor that restricts the algorithm’s search ability, and it is also the goal that optimization algorithms have been pursuing [20]. Although DE algorithms have excellent optimizing ability, traditional DE algorithms have problems of premature maturity, slow convergence, and low search ability as the diversity of populations decreases with the increase in evolutionary generations, so various DE algorithm improvements have emerged. The main control parameters involved in the DE algorithm are population size NP, scaling factor F and crossover probability CR, which are usually adjusted according to a priori knowledge in the actual optimization process. Since there are differences in parameter settings for different problems and different solution stages of the same problem require different solution performance, the current improvements for the differential evolution algorithm mainly focus on the adaptive settings of the scaling factor F and the crossover probability CR.
Studies in the literature have shown that the introduction of machine learning in the iterative process of evolutionary algorithms can lead to higher convergence accuracy and convergence speed [21]. The use of machine learning methods for the fitness selection of populations in the population initialization phase can lead to better performance of the algorithm.

3.2. Opposition-Based Learning Based on Refraction Principle

Inspired by the concept of opposition in the natural world, Tizhoosh [22] proposed a mathematical concept of opposition, namely, opposition-based learning (OBL). OBL was first applied as an optimization strategy in the field of machine learning for retaining individuals with better fitness from the current solution set and the opposite solution set. OBL has been rapidly applied to various swarm intelligence optimization algorithms, such as particle swarm algorithms, as a strategy that can effectively improve the performance of algorithm search. In the swarm intelligence optimization algorithm, OBL expands the diversity of the population by generating the opposite population and obtains more exact solutions by fitness evaluation to rapidly approach the optimal solution, so that the algorithm has stronger global search capability and accelerates the convergence of the algorithm. Compared with the improvement of the control parameters of the DE algorithm, it is simpler and more convenient to use the opposition-based learning principle to expand the diversity of the population to achieve the improvement of the algorithm performance.
Definition 1.
Opposite number: real number x [ a , b ] , the opposite number of the real number x is:
x = a + b x
Definition 2.
Opposite point: A point X = [ x 1 , x 2 , , x D ] on the D-dimensional space, for j { 1 , 2 , , D } , where for each dimension x j [ a j , b j ] , the opposite point is X = [ x 1 , x 2 , , x D ] , where:
x j = a j + b j x j
The traditional OBL strategy still has shortcomings. It is a strict point-to-point learning. Some better candidate solutions in the opposite solution neighborhood will be ignored, and the diversity of the population has not been greatly improved [23]. In the early stage of optimization, the OBL strategy can enhance the convergence performance of the algorithm. With the evolution of the algorithm, the opposite solution may fall into the vicinity of the locally optimal solution, and the remaining particles will quickly approach the locally optimal solution, causing the algorithm to fall into premature convergence [22].
More and more researchers propose to perturb the opposite points on the basis of opposition-based learning and fully tap more potential candidate solutions by expanding the search neighborhood of opposite solutions. Shao et al. [24,25] proposed to introduce a refraction principle in the opposition-based learning strategy to reduce the probability of the algorithm falling into premature convergence in the later stage of evolution.
When light enters another transparent medium from one transparent medium, the propagation path changes; this phenomenon is called refraction of light. When light is injected into a medium from the vacuum, the angle of incidence and the angle of refraction conform to Fresnel’s law when the light is refracted, as shown in Figure 5. The sine value n of the angle of incidence and the angle of refraction is called the absolute index of the refractive, which is abbreviated as refractive index. OBL based on the principle of refraction is borrowed from the principle of refraction of light, and the principle diagram of refraction opposition-based learning is as follows:
The real number x [ a , b ] and the opposite solution x* of x is found by the principle of refraction. The lengths of the incident and refracted rays are h and h*, respectively, and the angles of incidence and refraction are α and β . From Figure 5, the sine of the angle of incidence and refraction can be expressed as:
sin α = ( a + b 2 x ) h
sin β = ( x a + b 2 ) h
then the refractive index is:
n = sin α sin β = h ( a + b 2 x ) h ( x a + b 2 ) = h h · a + b 2 x 2 x ( a + b )
Let the scaling factor k = h h , and substitute into Equation (32) to obtain:
x = n k + 1 2 n k ( a + b ) x n k
If the refractive index n = 1 , then Equation (33) can be simplified as
x = k + 1 2 k ( a + b ) x k
If the scaling factor k = 1 and the refractive index n = 1 , then Equation (34) can be simplified to the opposite point formula of Equation (28):
x = a + b x
n is generally used as a fine-tuning factor to influence opposition-based learning, and k is the main influence factor. In this paper, we choose the formula for refractive opposition-based learning as:
x i j = k + 1 2 k ( a + b ) x i j k
As shown by Equation (36), by adjusting the size of the scaling factor k, the opposite points can be generated in a different way, extending the search neighborhood of the opposite points and expanding the diversity of the population. The value of k has an important effect on the diversity of the inverse population. The beginning of the iteration requires high population diversity, a wide search range, and a jump beyond the local range to try to find a better fitness value. When the iteration enters the last stage, it is required that the population diversity decreases, the search range converges to the opposite point, and it converges to the optimal point as soon as possible. The value of k is set using a linear decreasing strategy:
k t = k max k max k min t max t
where k max and k min are the maximum and minimum scaling factors, t max is the maximum number of iterations, and t is the number of iterations. The pseudo-code of the algorithm based on refractive opposition-based learning population initialization is as follows (Algorithm 1):
Algorithm 1. Refractive opposition-based learning population initialization
Randomly generate initialized populations X ( 0 ) = [ x 1 , x 2 , x 3 , , x D ] ;
    for i = 1 to NP do
    for j = 1 to D do
         X R O B L i j ( 0 ) = ( k + 1 ) ( a + b ) / 2 k X i j ( 0 ) / k ;
        if X R O B L i j ( 0 ) < a | | X R O B L i j ( 0 ) > b then
          X R O B L i j , 0 = rand(a, b);
        end if
    end for
end for
Select the top NP optimal individuals in X ( 0 ) X R O B L ( 0 ) to form the initial population
In the classical opposition-based learning differential evolution algorithm, after the population initialization is completed, mutation, crossover and selection operations produce a new population, the new population needs to produce another opposite population, and the new population goes through a jump phase to produce a better population. The opposite generation jump phase is used to reach local exploration and development. The formula for generating the opposite generation jump population is the same as Equation (36), but the difference is that a and b are set as the upper and lower bounds of each individual in the current population, and each individual in the population is different, so the upper and lower bounds of the formula for calculating the reverse population are dynamic. In summary, the formula for the opposite population in the reverse jump phase is:
x i j = k + 1 2 k ( a j ( t ) + b j ( t ) ) x i j k
where a j ( t ) = min 1 i N P ( x i j ( t ) ) , b j ( t = max 1 i N P ( x i j ( t ) ) . The pseudocode for the opposite population generation jump is as follows (Algorithm 2):
Algorithm 2. Refractive opposition-based learning population generation jump
New populations after DE base operation X ( g ) = [ x 1 , x 2 , x 3 , , x D ] ;
   for i = 1 to NP do
       for j = 1 to D do
          X R O B L i j ( g ) = ( k + 1 ) * ( max ( X i ( g ) ) + min ( X i ( g ) ) / 2 k X i j ( g ) / k ;
         if X R O B L i j ( g ) < min ( X i ( g ) ) | | X R O B L i j ( g ) > max ( X i ( g ) ) then
            X R O B L i j , 0 = rand( max ( X i ( g ) ) , min ( X i ( g ) ) );
         end if
       end for
end for
Select the top NP optimal individuals in X ( g ) X R O B L ( g ) to form the initial population

3.3. Cauchy Mutation Perturbation

When the swarm intelligence optimization algorithm enters the late iteration, it will enter a stage of local search. At this time, if it deviates from the optimal solution range, it is easy to fall into the trap of locally optimum, and it is ineffective to continue the iteration at this time. To avoid the algorithm from falling into locally optimum at a later stage, a perturbation strategy can be imposed on the updated population. The purpose of global exploitation is achieved by letting the population jump out of the current region, bounce the search range to a new region far from the current position, and check whether a more optimal solution still exists. To avoid the algorithm from falling into locally optimum, the algorithm in this paper introduces the Cauchy mutation perturbation strategy.
The Cauchy mutation perturbation comes from the Cauchy distribution, and the one-dimensional standard Cauchy distribution probability density formula is:
f ( x ) = 1 π 1 1 + x 2 ,   x ( , + )
Compared to the standard Cauchy distribution and the standard Gaussian distribution, the standard Cauchy distribution curve has a small peak at the origin, is flat and long at both ends, and approaches zero slowly, as shown in Figure 6. So, the Cauchy mutation is more capable than the Gauss mutation, and the particle has a greater probability of jumping out of its current location. Perturbing the updated population with the Cauchy mutation can induce the population to escape from the locally optimal position.
The position of the Cauchy mutation after perturbing the population is:
X c a u c h y ( g ) = X i ( g ) + c a u c h y ( 0 , 1 ) X i ( g )         i = 1 , 2 , , N P
where c a u c h y ( 0 , 1 ) is the standard Cauchy distribution, denotes the multiplicative meaning, and g denotes the evolutionary iterations. The new population generated after the Cauchy mutation perturbation does not retain all individuals but uses a greedy strategy to select individuals from the original population and the new population into the next-generation population based on the size of the objective function. The greedy rule is as follows:
X new = { X c a u c h y ( g ) ,   i f   f ( X c a u c h y ( g ) ) f ( X b e s t ( g ) ) X b e s t ( g ) ,   o t h e r w i s e
The algorithmic pseudocode for the Cauchy mutation perturbation is as follows (Algorithm 3):
Algorithm 3. Cauchy mutation perturbation
New populations after DE base operation X ( g ) = [ x 1 , x 2 , x 3 , , x D ] ;
   for i = 1 to NP do
   for j = 1 to D do
         X c a u c h y i j ( g ) = X i j ( g ) + c a u c h y ( 0 , 1 ) X i j ( g ) ;
if X c a u c h y i j ( g ) < min ( X i ( g ) ) || X c a u c h y i j ( g ) > max ( X i ( g ) ) then
X c a u c h y i j = rand( max ( X i ( g ) ) , min ( X i ( g ) ) );
        end if
      end for
end for
Individuals entering the next generation are selected according to the greed principle.

3.4. The Refractive Opposition-Based Learning and Cauchy Mutation Perturbation Improved Differential Evolutionary Algorithm (RCDE)

Combining refractive opposition-based learning and Cauchy mutation perturbation strategies, this paper designs the refractive opposition-based learning and Cauchy mutation perturbation improved differential evolutionary algorithm (RCDE). Refractive opposition-based learning increases the diversity of the population and searches in larger neighborhoods to find more promising regions in the early iterations of the algorithm, and it searches in smaller regions to accelerate the convergence of the algorithm in the later iterations. The classical opposition-based learning differential evolution algorithm (ODE) has an opposite generation jump phase, and the opposite generation jump allows for a smaller search. In order to avoid falling into locally optimum, the introduction of Cauchy mutation perturbation increases the probability that the algorithm jumps out of the current region and improves the global search capability. A reasonable optimization-seeking algorithm should focus on global search in the early stage, quickly search the space and quickly find the globally optimal range, and strengthen the ability of locally optimization-seeking in the later stage to improve the optimization-seeking accuracy of the algorithm. After the basic operation of the DE algorithm, this paper mixes the reverse learning generation jump phase with the Cauchy mutation perturbation, and the specific use of local exploration or global strategy is determined by the dynamic switching probability function P. The introduction of P can balance the weight of local exploitation and global search for excellence, and P is calculated as follows:
P s = 1 / exp ( 1 t T max ) + θ
θ is the adjustment factor, and according to several experiments, it is proved that θ takes a value of [−0.5, 0.5], which is more suitable.
The flow chart of the RCDE algorithm is as follows (Figure 7):

3.5. Algorithm Performance Evaluation

3.5.1. Time Complexity Analysis

Set the population size of the improved differential evolution algorithm to be N, the number of iterations to be G, and the dimension to be D. According to the calculation rule of the algorithm time complexity symbol O, the time complexity of random initialization of the population is O ( N D ) , and the time complexity of the fitness calculation is O ( N D ) . The time complexity of the refractive opposite population initialization is O ( G N D ) , and the time complexity of the base operation of the DE algorithm is O ( G N D ) . The time complexity of the fitness calculation during the iterative process is O ( G N D ) , while the time complexity of the opposite generation jump phase and the Cauchy mutation is O ( G N D ) , so the total time complexity of the improved differential evolution algorithm is:
O ( N D ) + O ( N D ) + O ( G N D ) + O ( G N D ) + O ( G N D ) = O ( G N D )
The time complexity of the standard DE algorithm is O ( G N D ) , so the improved differential evolution algorithm does not increase in time complexity.

3.5.2. Convergence Accuracy Analysis

In order to verify the rationality and excellence of the RCDE algorithm, eight classical CEC benchmark functions are selected in this paper, as shown in Table 2. Among them, f1f4 are unimodal functions, which are used to test the convergence speed and accuracy of the algorithm, and f5f8 are multimodal functions, which are used to test the global optimization ability of the algorithm.
For fairness and objectivity, the basic parameters of the four algorithms were set uniformly as follows: population size NP = 100, dimension D = 30, and iteration number G = 500, and the independent parameters of the four algorithms were set as shown in Table 3. The simulation test environment is: computer operation system Windows 10, CPU is Intel(R) Core(TM) i5-9300H at 2.40 GHz, RAM is 16 GB, and simulation software is MATLAB2019a (Mathworks, Natick, MA, USA).
In this paper, the four algorithms are run 30 times independently on each of the eight test functions; the optimal, worst, mean and standard deviation of the results of the four algorithms run 30 times are given in Table 4; and the optimal values of the metrics for each benchmark test function are marked in bold. As can be seen from Table 4, the RCDE algorithm has the strongest search capability and stability for the selected benchmark test functions. The mean optimal value of the RCDE algorithm on the benchmark functions f1, f2, and f3 is better than the other three algorithms by dozens of orders of magnitude. For the function f4, the mean optimal values of RCDE are similar to the other three algorithms, but the standard deviation of the optimal results of RCDE is the smallest. RCDE can directly search for the optimally value 0 for the functions f5, f6, and f8, and the optimization effect reaches 100%.
In order to visualize the optimization-seeking process and capability of the four algorithms, a set of convergence iteration curves with six of the benchmark functions close to the mean fitness value is selected in this paper (Figure 8). For unimodal test functions f1, f2 and f3, DE, OGDE and JADE algorithms converge slowly and the convergence accuracy is poor, the RCDE algorithm can converge quickly at the beginning of the iteration, and iterations to about 200 generations can be stabilized around the value of higher accuracy. The multimodal test functions f5, f6, f7 and f8 have many extreme values located near the maxima, which have high requirements for the global optimization capability of the algorithm. For f5, f6, f7 and f8, DE, OGDE, and JADE have been trapped in local optima and cannot jump to the periphery of the optimal point, while the RCDE algorithm shows a good global search and fast convergence effect, converging to the optimal point 0 quickly.
The four algorithms were tested on the benchmark function 30 times, and by the statistical results and iterative convergence curves, it can be seen that the RCDE algorithm has substantially improved the search accuracy and convergence speed compared with DE, GODE, and JADE algorithms, which proves that the improvement of the RCDE algorithm has been successful.

3.5.3. Statistical Significance Testing of Results

The above algorithm performance evaluation does not independently compare each result. In order to reflect the stability and fairness of the algorithm, this paper uses the famous Wilcoxon rank-sum test to verify whether the results of the RCDE algorithm are statistically significant. The rank-sum test is performed at the significance level of 5%: if the p value is less than 5%, the H0 hypothesis is rejected, indicating that the two comparison algorithms have significant differences. Otherwise, hypothesis H0 is accepted, indicating that the optimization results of the two algorithms are the same on the whole. Table 5 describes the p values of the rank-sum test between DE, GODE and JADE algorithms and the RCDE algorithm under the CEC test function. R indicates the significance judgment, and “+ +”, “+” and “−”, respectively, indicate that the performance difference of the RCDE algorithm is extremely significant, significant and insignificant compared with the comparison algorithm. As can be seen from Table 5, most of the p values are far less than 5% (f4 is a special case, because f4 has random noise, and the result is not very different), and the significance judgment R is “+ +”, so hypothesis H0 is rejected. The statistical results strongly show that the RCDE algorithm is significantly different from the other three algorithms, and the performance of the RCDE algorithm is significantly better.
The RCDE algorithm designed in this paper is simple to improve, and it shows excellent convergence speed, convergence accuracy and global optimization ability. As an efficient global optimization algorithm, the RCDE algorithm can be considered to replace the DE algorithm in operational research, industrial engineering, signal processing, data mining, biological information and other complex practical optimization problems in the future. Experimental results show that under the same conditions, the convergence speed and accuracy of the RCDE algorithm exceed that of the DE algorithm and many improved DE algorithms, and they solve the problem in which the DE algorithm is easy to fall into local optimum.

4. Experiment Analysis

In order to verify the feasibility and effectiveness of the RCDE algorithm in solving the inverse kinematics problem of MSRS, three typical examples are designed in this section. The MSRS designed in this paper has a total of nine satellite modules, and there are four satellite modules on each side of the base module. The link coordinate system and D-H parameters of the modular self-reconfigurable satellite are shown in Section 2.1.

4.1. Case 1: Minimum Pose Error between Two Different Side Modules

In this case, the inverse kinematic solution of the MSRS is transformed into a modular pose accuracy optimization problem from the initial configuration to the target configuration according to the optimization function in Section 2.1. Randomly choose 3a and 1b as task modules, and let the expected homogenous coordinate transformation matrix of modules 3a and 1b with respect to the base module be
T ^ 3 a 0 = [ 0.589 0.422 0.689 1.348 0.472 0.872 0.130 0.135 0.656 0.248 0.713 3.297 0 0 0 1 ]
T ^ 1 b 0 = [ 0.750 - 0.433 - 0.500 0.307 0.500 0.866 0 0 0.433 0.250 0.866 1.144 0 0 0 1 ]
According to Equation (10), the objective function of the arithmetic case 1 is expressed as:
min ( F 1 ( q ) ) = min ( f p o s e ( q ) ) = min ( f ( T 1 b 3 a , T ^ 1 b 3 a ) )
In order to eliminate the randomness of the experiments, the four algorithms were run independently for 30 times of simulation experiments, and the performance of the algorithms in solving the inverse kinematic arithmetic cases was statistically analyzed. The population size of the four algorithms was 100, the maximum number of iterations was 1000, and the remaining parameters were set as before. As shown in Table 6, the statistical indicators are the best fitness value (Best), the worst fitness value (Worst), the mean fitness value (Mean), and the standard deviation (Std). A set of convergence curves around the mean fitness value of each algorithm is shown in Figure 9.
As can be seen from Table 5, the RCDE algorithm obtained the best optimal kinematic inverse solution, the DE, GODE, and JADE algorithms obtained similar optimal inverse solution quality, and the standard deviation of the RCDE algorithm was optimal among the four algorithms. From the convergence curves of the four algorithms in Figure 9, we can see that the DE algorithm, GODE algorithm and JADE algorithm all fall into locally optimum at the beginning of the iteration, and the algorithms converge slowly, and all three algorithms converge to stability at 800 iterations, while the RCDE algorithm can converge quickly at the beginning of the iteration and converge to stability within 300 iterations. The convergence accuracy of the RCDE algorithm is higher than the other three algorithms by more than one order of magnitude.

4.2. Case 2: Integrated Optimal Inverse Kinematic Solution for the Pose Error and Energy Consumption between the Three Modules

In this case, the inverse kinematic solution of the MSRS is transformed into a multi-objective optimization problem for the pose accuracy and energy consumption from the initial configuration to the target configuration according to the optimization objective in Section 2.3. Choosing 3a, 0, and 1b as task modules, the expected homogenous coordinate transformation matrix of modules 3a, 1b with respect to the base module is the same as in case 1, i.e., Equations (44) and (45). The homogenous coordinate transformation matrix of the base module 0 is:
T ^ 0 0 = [ 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 ]
According to Equation (10), the objective function of the arithmetic case 2 is expressed as:
min ( F 2 ( q ) ) = min ( α 1 f p o s e ( q ) + α 2 f e n e r g y ( q ) )                                           = min ( α 1 f ( T 3 a 0 , T ^ 3 a 0 ) + α 1 f ( T 1 b 0 , T ^ 1 b 0 ) + α 2 f e n e r g y ( q ) )
The magnitude of the pose optimal function is much smaller than that of the energy-optimal function. Therefore, the weight coefficient of the former should be much larger than that of the latter. α 1 = 1 , α 2 = 0.01 can meet the requirements of both pose accuracy and energy optimum after several experimental analyses. The population size of the four algorithms is 100, the maximum number of iterations is 1000, and the rest of the parameter settings are the same as the previous ones. The performance of the four algorithms is shown in Table 7, and a set of convergence curves around the mean fitness value of the four algorithms is shown in Figure 10.
From Table 7, it can be seen that the four algorithms perform similarly when the integrated optimum of the pose error and consumed energy is the objective function among the three modules. The RCDE algorithm does not differ significantly from the rest of the algorithms in terms of the mean and optimum values, but the standard deviation of the statistical results of the RCDE algorithm for multiple experiments is the smallest. It can be seen from Figure 10 that the convergence speed of RCDE is still the fastest of the four algorithms. Both the RCDE algorithm and the JADE algorithm can converge quickly to near the optimal value within 200 iterations, while the DE algorithm and the GODE algorithm fall into a local optimum at the beginning of the iteration and stabilize near the optimal value only after 600 iterations.

4.3. Case 3: Constrained Optimal Solution of the Pose Inverse Solution of Two Different Side Modules

Choosing 3a and 1b as task modules, let the expected chi-square coordinate transformation matrix of modules 3a and 1b with respect to the base module be the same as that of case 1, and let the objective function be:
min ( f ( q ) ) = min ( f e n e r g y ( q ) + ψ ( q ) )
ψ ( q ) = { 0 g ( q ) 0 α Δ ( q ) g ( q ) > 0
The maximum positional error Δ max = 9.999 × 10 4 , and the penalty factor α = 10 5 . The population size of the four algorithms is 100, the maximum number of iterations is 500, and the rest of the parameters are set as before. The four algorithms were run 30 times independently and the performance of the algorithms to solve the inverse kinematic algorithm was statistically analyzed as shown in Table 8. The statistical indicators are the best adapted value (Best), the worst adapted value (Worst), the average adapted value (Mean), and the standard deviation (Std). A set of convergence curves around the mean fitness value of the four algorithms is shown in Figure 11.
From Table 8, it can be seen that the RCDE algorithm is superior to the other three algorithms in terms of mean and optimal values when solving the inverse constrained optimization of the two modular poses, and the standard deviation of the RCDE algorithm is slightly different from that of the JADE algorithm, but it is still superior to the other two algorithms. From Figure 11, it can be seen that the RCDE algorithm is optimal in both convergence speed and convergence accuracy, and the convergence speed even shows excellent performance. RCDE can converge quickly to near the optimal value within 300 iterations, while the other three iterations start to fall into local optimum and converge slowly, and they gradually converge after 400 iterations.

4.4. Analysis of Experimental Results

In this section, three typical cases are set up, and the module located on the opposite side is selected as the task module, and three objective functions are solved for the inverse solution of the pose with optimal pose error, the inverse solution of the pose with optimal combined pose error and energy consumption, and the inverse solution of the pose with optimal energy under the pose error constraint. The statistical values of the results of the four algorithm runs and the convergence curves of the fitness function show that the RCDE algorithm is effective for solving the MSRS inverse kinematics. The RCDE algorithm outperforms the remaining three algorithms both in terms of convergence accuracy and convergence speed, especially in terms of convergence speed, indicating that the introduction of refractive opposition-based learning in the DE algorithm enables the population to search quickly to the vicinity of the optimum, and the introduction of the Cauchy mutation perturbation ensures that the population does not fall into a local optimum.

5. Conclusions

Modular self-reconfigurable satellite (MSRS) is a new type of spacecraft with autonomous reconfiguration, mission adaptability, and redundancy of joint degrees of freedom. The inverse kinematic solution of the MSRS is considered as a non-one-to-one mapping relationship between Cartesian space and joint space, which is a typical multivariate and multimodal function optimal solution problem. In this paper, based on the modeling of the kinematics of MSRS, the inverse kinematics of MSRS is transformed into the multi-objective optimal solution and constrained optimal solution objective functions for the inverse solution of modular poses. An improved differential evolution algorithm (RCDE) incorporating refractive opposition-based learning and Cauchy mutation perturbation is proposed, and the performance of the algorithm is tested by benchmark functions. The RCDE algorithm is applied to the inverse kinematics solution of MSRS. Three typical cases are set up, and after the analysis of simulation experiments, it is shown that the RCDE algorithm converges quickly and accurately in solving the inverse kinematics problem of MSRS, which meets the requirements of applicability and effectiveness. The main future work is to further improve the running speed and convergence accuracy of the RCDE algorithm for solving inverse kinematics.

Author Contributions

Conceptualization, G.H., Z.Z. and J.A.; methodology, G.H. and Y.L.; software, G.H. and J.A.; formal analysis, G.H. and X.W.; investigation, G.H., G.Z., Z.Z., Y.L. and X.W.; data curation, G.H.; writing—original draft preparation, G.H. and G.Z; supervision, X.L. and G.H.; project administration, X.L. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Conflicts of Interest

The authors declare no conflict of interest.

Abbreviations

The following abbreviations are used in this manuscript:
DEDifferential Evolutionary
ESEvolutionary Strategy
DOFDegree of Freedom
GODEGeneralized Opposition-based Differential Evolutionary
GAGenetic Algorithm
MSRSModular Self-Reconfigurable Satellite
JADEAdaptive Differential Evolution with optional external archive
OBLOpposition-Based Learning
RCDERefractive opposition-based learning and Cauchy mutation perturbation improved differential evolutionary

References

  1. Selva, D.; Golkar, A.; Korobova, O.; Cruz, I.L.I.; Collopy, P.; de Weck, O.L. Distributed earth satellite systems: What is needed to move forward? J. Aerosp. Inf. Syst. 2017, 14, 412–438. [Google Scholar] [CrossRef]
  2. Barnhart, D.; Hill, L.; Fowler, E.; Hunter, R.; Hoag, L.; Sullivan, B.; Will, P. A market for satellite cellularization: A first look at the implementation and potential impact of satlets. In Proceedings of the AIAA SPACE 2013 Conference and Exposition, San Diego, CA, USA, 10–12 September 2013; pp. 1–11. [Google Scholar]
  3. Dong, S.; Allen, K.; Bauer, P.; Bethke, B.; Brzezinski, A.; Coffee, T.; Chambers, R.-D.; Flores, M.; Gallagher-Rodgers, A.; Head, J. Self-assembling wireless autonomously reconfigurable module design concept. Acta Astronaut. 2008, 62, 246–256. [Google Scholar] [CrossRef]
  4. Ekblaw, A.; Shuter, E.; Paradiso, J.A. Self-Assembling Space Architecture: Tessellated shell structures for space habitats. In Proceedings of the AIAA Scitech 2019 Forum, San Diego, CA, USA, 7–11 January 2019; p. 0481. [Google Scholar]
  5. Nisser, M.; Izzo, D.; Borggraefe, A. An electromagnetically actuated, self-reconfigurable space structure. Trans. Jpn. Soc. Aeronaut. Space Sci. 2017, 14, 1–9. [Google Scholar]
  6. Sugawara, Y.; Nakasuka, S.; Higashi, K.; Kobayashi, C.; Koyama, K.; Okada, T. Structure and thermal control of panel extension satellite (PETSAT). Acta Astronaut. 2009, 65, 958–966. [Google Scholar] [CrossRef]
  7. Underwood, C.; Pellegrino, S.; Lappas, V.J.; Bridges, C.P.; Baker, J. Using CubeSat/micro-satellite technology to demonstrate the Autonomous Assembly of a Reconfigurable Space Telescope (AAReST). Acta Astronaut. 2015, 114, 112–122. [Google Scholar] [CrossRef]
  8. Weise, J.; Brieß, K.; Adomeit, A.; Reimerdes, H.-G.; Göller, M.; Dillmann, R. An intelligent building blocks concept for on-orbit-satellite servicing. In Proceedings of the International Symposium on Artificial Intelligence, Robotics and Automation in Space (iSAIRAS), Turin, Italy, 4–6 September 2012. [Google Scholar]
  9. Post, M.A.; Yan, X.-T.; Letier, P. Modularity for the future in space robotics: A review. Acta Astronaut. 2021, 189, 530–547. [Google Scholar] [CrossRef]
  10. Helvajian, H. Doing Much with Little: HIVE A New Space Architecture. In Proceedings of the ASCEND 2020, Virtual, 16–18 November 2020; p. 4172. [Google Scholar]
  11. Chang, H.; Huang, P.; Lu, Z.; Zhang, Y.; Meng, Z.; Liu, Z. Inertia parameters identification for cellular space robot through interaction. Aerosp. Sci. Technol. 2017, 71, 464–474. [Google Scholar] [CrossRef]
  12. Shen, W.-M.; Salemi, B.; Moll, M. Modular, multifunctional and reconfigurable superbot for space applications. In Proceedings of the Space 2006, San Jose, CA, USA, 19–21 September 2006; p. 7405. [Google Scholar]
  13. Yim, M. Modular self-reconfigurable robot systems: Challenges and opportunities for the future. IEEE Robot. Automat. Mag. 2007, 10, 2–11. [Google Scholar] [CrossRef]
  14. Romanishin, J.W.; Gilpin, K.; Rus, D. M-blocks: Momentum-driven, magnetic modular robots. In Proceedings of the 2013 IEEE/RSJ International Conference on Intelligent Robots and Systems, Tokyo, Japan, 3–7 November 2013; pp. 4288–4295. [Google Scholar]
  15. Romanishin, J.W.; Mamish, J.; Rus, D. Decentralized Control for 3D M-Blocks for Path Following, Line Formation, and Light Gradient Aggregation. In Proceedings of the 2019 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Macau, China, 4–8 November 2019; pp. 4862–4868. [Google Scholar]
  16. An, J.; Li, X.; Zhang, Z.; Zhang, G.; Man, W.; Hu, G.; He, J.; Yu, D. A Novel Method for Inverse Kinematics Solutions of Space Modular Self-Reconfigurable Satellites with Self-Collision Avoidance. Aerospace 2022, 9, 123. [Google Scholar] [CrossRef]
  17. Huang, H.-C.; Chen, C.-P.; Wang, P.-R. Particle swarm optimization for solving the inverse kinematics of 7-DOF robotic manipulators. In Proceedings of the 2012 IEEE International Conference on Systems, Man, and Cybernetics (SMC), Seoul, Korea, 14–17 October 2012; pp. 3105–3110. [Google Scholar]
  18. Shi, J.; Mao, Y.; Li, P.; Liu, G.; Liu, P.; Yang, X.; Wang, D. Hybrid mutation fruit fly optimization algorithm for solving the inverse kinematics of a redundant robot manipulator. Math. Probl. Eng. 2020, 1, 1–13. [Google Scholar] [CrossRef]
  19. Storn, R.; Price, K. Differential evolution–a simple and efficient heuristic for global optimization over continuous spaces. J. Glob. Optim. 1997, 11, 341–359. [Google Scholar] [CrossRef]
  20. Guo, Z.; Liu, G.; Li, D.; Wang, S. Self-adaptive differential evolution with global neighborhood search. Soft Comput. 2017, 21, 3759–3768. [Google Scholar] [CrossRef]
  21. Zhang, J.; Zhan, Z.-H.; Lin, Y.; Chen, N.; Gong, Y.-J.; Zhong, J.-H.; Chung, H.S.; Li, Y.; Shi, Y.-H. Evolutionary computation meets machine learning: A survey. IEEE Comput. Intell. Mag. 2011, 6, 68–75. [Google Scholar] [CrossRef]
  22. Tizhoosh, H.R. Opposition-based learning: A new scheme for machine intelligence. In Proceedings of the International Conference on Computational Intelligence for Modelling, Control and Automation and International Conference on Intelligent Agents, Web Technologies and Internet Commerce (CIMCA-IAWTIC’06), Vienna, Austria, 28–30 November 2005; pp. 695–701. [Google Scholar]
  23. Zhao, X.; Feng, S.; Hao, J.; Zuo, X.; Zhang, Y. Neighborhood opposition-based differential evolution with Gaussian perturbation. Soft Comput. 2021, 25, 27–46. [Google Scholar] [CrossRef]
  24. Shao, P.; Wu, Z.; Zhou, X.; Deng, C. Improved partical swarm optimization algorithm based on opposite learning of refraction. Acta Electron. Sin. 2015, 43, 2137–2144. [Google Scholar]
  25. Shao, P.; Wu, Z.; Zhou, X. FIR digital filter design using improved particle swarm optimization based on refraction principle. Soft Comput. 2017, 21, 2631–2642. [Google Scholar] [CrossRef]
Figure 1. Modular self-reconfigurable satellite.
Figure 1. Modular self-reconfigurable satellite.
Aerospace 09 00434 g001
Figure 2. Modular self-reconfigurable satellite mission flow.
Figure 2. Modular self-reconfigurable satellite mission flow.
Aerospace 09 00434 g002
Figure 3. Linkage coordinate system for MSRS.
Figure 3. Linkage coordinate system for MSRS.
Aerospace 09 00434 g003
Figure 4. Base module and task module for a particular task.
Figure 4. Base module and task module for a particular task.
Aerospace 09 00434 g004
Figure 5. Principle of Refraction.
Figure 5. Principle of Refraction.
Aerospace 09 00434 g005
Figure 6. Gaussian and Cauchy distribution curves.
Figure 6. Gaussian and Cauchy distribution curves.
Aerospace 09 00434 g006
Figure 7. RCDE algorithm flow chart.
Figure 7. RCDE algorithm flow chart.
Aerospace 09 00434 g007
Figure 8. Iterative convergence curves of the four algorithms on the benchmark function.(a) convergence curves for f1; (b) convergence curves for f2; (c) convergence curves for f3; (d) convergence curves for f5; (e) convergence curves for f6; (f) convergence curves for f8.
Figure 8. Iterative convergence curves of the four algorithms on the benchmark function.(a) convergence curves for f1; (b) convergence curves for f2; (c) convergence curves for f3; (d) convergence curves for f5; (e) convergence curves for f6; (f) convergence curves for f8.
Aerospace 09 00434 g008
Figure 9. Convergence curves of the four algorithms in Case 1.
Figure 9. Convergence curves of the four algorithms in Case 1.
Aerospace 09 00434 g009
Figure 10. Convergence curves of the four algorithms in Case 2.
Figure 10. Convergence curves of the four algorithms in Case 2.
Aerospace 09 00434 g010
Figure 11. Convergence curves of the four algorithms in Case 3.
Figure 11. Convergence curves of the four algorithms in Case 3.
Aerospace 09 00434 g011
Table 1. D-H parameters of MSRS linkage coordinate system.
Table 1. D-H parameters of MSRS linkage coordinate system.
A SideB Side
Link θ i a / ° α i a / ° a i a / m d i a / m Link θ i b / ° α i b / ° a i b / m d i b / m
109000.61310900−0.613
20−900020−9000
30000.6133000−0.613
409000.61340900−0.613
50−900050−9000
60000.6136000−0.613
709000.61370900−0.613
80−900080−9000
90000.6139000−0.613
1009000.613100900−0.613
110−9000110−9000
120000.61312000−0.613
Table 2. CEC Benchmarking Functions.
Table 2. CEC Benchmarking Functions.
FunctionsBenchmark Functions ExpressionDimensionVariable RangeOptimum Value
f1 f ( x ) = i = 1 D x i 2 30[−100, 100]0
f2 f ( x ) = i = 1 D | x i | + i = 1 D | x i | 30[−10, 10]0
f3 f ( x ) = i = 1 D ( j = 1 i x j ) 2 30[−100, 100]0
f4 f ( x ) = i = 1 D i x i 4 + r a n d o m ( 0 , 1 ) 30[−1.28, 1.28]0
f5 f ( x ) = i = 1 D [ x i 2 10 cos ( 2 π x i ) + 10 ] 30[−5.12, 5.12]0
f6 f ( x ) = i = 1 D [ y i 2 10 cos ( 2 π y i ) + 10 ] w h e r e   y i = {                 x i                           | x i |   <   0 . 5 r o u n d ( 2 x i ) / 2         | x i |     0 . 5 30[−5.12, 5.12]0
f7 f ( x ) = 20 exp ( 0.2 1 / D i = 1 D x i 2 ) exp ( 1 / D i = 1 D cos 2 π x i ) + 20 + e       30[−32, 32]0
f8 f ( x ) = 1 / 4000 i = 1 D x i 2 i = 1 D cos ( x i / i ) + 1 30[−600, 600]0
Table 3. Parameter settings for the four algorithms.
Table 3. Parameter settings for the four algorithms.
AlgorithmParameters Setting
DECR = 0.9, F = 0.5
GODECR = 0.9, F = 0.5, Jr = 0.3
JADEuCR = 0.5, uF = 0.5, p = 0.05
RCDECR = 0.9, F = 0.5, k_max = 2, k_min = 0.7
Table 4. Benchmark function experimental results.
Table 4. Benchmark function experimental results.
FunctionIndexResult
DEGODEJADERCDE
f1Best2.36 × 10−23.91 × 10−103.75 × 10−188.74 × 10−107
Worst2.47 × 1023.00 × 10−74.45 × 10−164.65 × 10−100
Mean1.73 × 1012.60 × 10−81.15 × 10−163.84 × 10−101
Std4.57 × 10115.30 × 10−81.34 × 10−161.01 × 10−100
f2Best1.84 × 10−32.46 × 10−51.27 × 10−82.92 × 10−53
Worst1.052.27 × 10−47.10 × 10−51.10 × 10−48
Mean9.19 × 10−28.06 × 10−52.47 × 10−65.61 × 10−50
Std1.99 × 10−15.29 × 10−51.27 × 10−52.01 × 10−49
f3Best8.10 × 1011.62 × 10−19.2 × 10−61.08 × 10−90
Worst1.05 × 1033.840.11768445.88 × 10−86
Mean5.24 × 1021.094.75 × 10−24.52 × 10−87
Std2.44 × 1029.57 × 10−12.11 × 10−21.21 × 10−86
f4Best8.21 × 10−26.45 × 10−21.20 × 10−11.08 × 10−1
Worst4.26 × 10−15.64 × 10−13.66 × 10−13.49 × 10−1
Mean2.22 × 10−12.20 × 10−12.53 × 10−12.05 × 10−1
Std7.06 × 10−21.08 × 10−16.16 × 10−25.19 × 10−2
f5Best7.07 × 1017.69 × 1011.79 × 1010.00
Worst2.00 × 1021.90 × 1023.01 × 1010.00
Mean1.55 × 1021.50 × 1022.50 × 1010.00
Std3.59 × 1013.39 × 1012.93 × 100.00
f6Best7.70 × 1012.63 × 1013.000.00
Worst1.75 × 1021.82 × 1021.00 × 1010.00
Mean1.28 × 1021.32 × 1026.010.00
Std2.73 × 1013.55 × 1011.540.00
f7Best2.54 × 10−15.74 × 10−64.14 × 10−108.88 × 10−16
Worst4.597.58 × 10−57.86 × 10−88.88 × 10−16
Mean2.223.25 × 10−55.83 × 10−98.88 × 10−16
Std9.41 × 10−11.84 × 10−51.37 × 10−89.86 × 10−32
f 8Best9.61 × 10−35.64 × 10−88.77 × 10−50.00
Worst8.68 × 10−11.81 × 10−14.17 × 10−30.00
Mean1.29 × 10−12.24 × 10−21.23 × 10−30.00
Std1.58 × 10−10.0427991.01 × 10−30.00
Table 5. Wilcoxon rank-sum test results.
Table 5. Wilcoxon rank-sum test results.
FunctionDEGODEJADE
pRpRpR
f1 2.87 × 10 11 + + 2.87 × 10 11 + + 2.87 × 10 11 + +
f2 2.87 × 10 11 + + 2.87 × 10 11 + + 2.87 × 10 11 + +
f3 2.87 × 10 11 + + 2.87 × 10 11 + + 2.87 × 10 11 + +
f4 4.33 × 10 1 7.45 × 10 1 2.00 × 10 3 + +
f5 1.14 × 10 12 + + 1.14 × 10 12 + + 1.14 × 10 12 + +
f6 1.14 × 10 12 + + 1.14 × 10 12 + + 8.14 × 10 13 + +
f7 1.14 × 10 12 + + 1.14 × 10 12 + + 1.14 × 10 12 + +
f8 1.14 × 10 12 + + 1.14 × 10 12 + + 1.14 × 10 12 + +
Table 6. Performance of four algorithms for solving Case 1.
Table 6. Performance of four algorithms for solving Case 1.
RCDEDEGODEJADE
Mean 2.49 × 10 4 2.72 × 10 3 2.14 × 10 3 3.09 × 10 3
Best 4.47 × 10 10 8.73 × 10 4 8.73 × 10 4 2.57 × 10 4
Worst 2.63 × 10 4 2.97 × 10 2 1.61 × 10 2 1.17 × 10 2
Std 3.82 × 10 6 5.30 × 10 3 2.93 × 10 3 2.70 × 10 3
Table 7. Performance of four algorithms for solving Case 2.
Table 7. Performance of four algorithms for solving Case 2.
RCDEDEGODEJADE
Mean 1.35 × 10 1 1.55 × 10 1 1.56 × 10 1 1.55 × 10 1
Best 1.21 × 10 1 1.54 × 10 1 1.55 × 10 1 1.36 × 10 1
Worst 1.73 × 10 1 1.56 × 10 1 1.61 × 10 1 1.73 × 10 1
Std 1.08 × 10 8 4.74 × 10 4 1.34 × 10 3 1.34 × 10 8
Table 8. Performance of four algorithms for solving Case 3.
Table 8. Performance of four algorithms for solving Case 3.
RCDEDEGODEJADE
Mean 2.29 × 10 1 2.26 × 10 2 2.79 × 10 2 5.13 × 10 2
Best 1.25 × 10 1 7.45 × 10 1 1.85 × 10 1 1.31 × 10 1
Worst 3.74 × 10 1 7.61 × 10 2 7.03 × 10 2 1.35 × 10 3
Std 4.96 × 10 0 1.66 × 10 2 2.15 × 10 2 3.46 × 10 2
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Hu, G.; Zhang, G.; Li, Y.; Wang, X.; An, J.; Zhang, Z.; Li, X. Modular Self-Reconfigurable Satellite Inverse Kinematic Solution Method Based on Improved Differential Evolutionary Algorithm. Aerospace 2022, 9, 434. https://doi.org/10.3390/aerospace9080434

AMA Style

Hu G, Zhang G, Li Y, Wang X, An J, Zhang Z, Li X. Modular Self-Reconfigurable Satellite Inverse Kinematic Solution Method Based on Improved Differential Evolutionary Algorithm. Aerospace. 2022; 9(8):434. https://doi.org/10.3390/aerospace9080434

Chicago/Turabian Style

Hu, Gangxuan, Guohui Zhang, Yanyan Li, Xun Wang, Jiping An, Zhibin Zhang, and Xinhong Li. 2022. "Modular Self-Reconfigurable Satellite Inverse Kinematic Solution Method Based on Improved Differential Evolutionary Algorithm" Aerospace 9, no. 8: 434. https://doi.org/10.3390/aerospace9080434

APA Style

Hu, G., Zhang, G., Li, Y., Wang, X., An, J., Zhang, Z., & Li, X. (2022). Modular Self-Reconfigurable Satellite Inverse Kinematic Solution Method Based on Improved Differential Evolutionary Algorithm. Aerospace, 9(8), 434. https://doi.org/10.3390/aerospace9080434

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop