Next Article in Journal
Favorable Symmetric Structures of Radiopharmaceutically Important Neutral Cyclen-Based Ligands
Previous Article in Journal
Analysis of the Interactive Game Between Manufacturers and Retailers Considering the Free-Riding Effect on the Internet
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

SK-PSO: A Particle Swarm Optimization Framework with SOM and K-Means for Inverse Kinematics of Manipulators

1
School of Integrated Circuit, Shenzhen Polytechnic University, Shenzhen 518055, China
2
Department of Mechanical Engineering, College of Engineering, Shantou University, Shantou 515063, China
*
Author to whom correspondence should be addressed.
Symmetry 2024, 16(12), 1667; https://doi.org/10.3390/sym16121667
Submission received: 22 November 2024 / Revised: 11 December 2024 / Accepted: 13 December 2024 / Published: 17 December 2024
(This article belongs to the Section Engineering and Materials)

Abstract

:
In this paper, a particle swarm optimizer that integrates self-organizing maps and k-means clustering (SK-PSO) is proposed. This optimizer generates an asymmetric Cartesian space from random joint configurations when addressing the inverse kinematics of manipulators, followed by K-means clustering applied to the Cartesian space. The resulting clusters are used to reduce the dimensionality of the corresponding joint space using Self-Organizing Maps (SOM). During the solving process, the target point’s clustering region is determined first, and then the joint space point closest to the target point is selected as the initial population for the particle swarm algorithm. The simulation results demonstrate the effectiveness of the SK-PSO algorithm. Given the inherent asymmetry among different algorithms in handling the problem, SK-PSO achieves an average fitness value that is 0.02–0.62 times better than five other algorithms, with an asymmetric solving time that is only 0.03–0.34 times that of the other algorithms. Therefore, compared to the other algorithms, the SK-PSO algorithm offers high accuracy, speed, and precision.

1. Introduction

Inverse kinematics (IK) plays a vital role in robotics for accurate trajectory planning and motion control. Traditionally, the resolution of IK relies on analytical or numerical iterative techniques. However, for robots with a high number of degrees of freedom, deriving an analytical solution can be quite complex and involves multiple steps. As technology advances, the field of robotics is evolving to include new types such as cable-driven [1,2] or ultra-redundant continuum robots [3]. The distinct structures and features of these robots often do not satisfy the Pieper criterion [4], complicating the process of obtaining closed-form solutions through conventional methods. In some cases, an asymmetric kinematic structure of these new types of robots makes it even harder to apply the existing techniques. Researchers have investigated various innovative approaches including Jacobian matrix-based methods [5], geometric strategies [6], and rapid iteration techniques [7]. Nevertheless, as robot geometries grow increasingly intricate, tackling inverse kinematics becomes more challenging. This complexity manifests in issues related to kinematic modeling and solving kinematic equations—such as low precision and inadequate real-time performance—which obstruct the development of universal solutions. Thus, ongoing exploration into novel methodologies to effectively manage inverse kinematics problems continues to be a key area of research within robotics technology.
In recent years, with the development of meta-heuristic algorithms, researchers have begun to apply artificial neural networks [8,9], BP neural networks [10,11], artificial bee colonies (ABC) [12], gray wolf algorithm (GWA) [13], fruit fly algorithm [14], bat algorithm [15,16], improved grey wolf optimizer (IGWO) [17], firefly algorithm (FA) [18], and particle swarm optimization [19,20,21,22,23,24,25,26,27,28] to the inverse solution of robots.
Particle swarm optimization has gained considerable attention in academia due to its multi-information exchange, which effectively reduces computational load and mapping complexity while efficiently achieving optimal solutions. Currently, numerous researchers have sought to enhance the PSO algorithm to improve its solving capabilities and speed. For example, Omkar et al. proposed a model for composite design optimization based on Quantum behaved PSO (QPSO) for handling the discrete variables in the multi-objective design optimization of composites [19]. Alkayyali et al. proposed the PSO with multi-objective fitness function to solve the inverse kinematics of a Kuka manipulator [20]. Shastri et al. proposed a modified segmented particle swarm optimization (MSPSO) to optimize the weight and bias parameters of the neural network [21]. An et al. add terms with globally optimal positions to the traditional PSO algorithm to guide the particle speed update, thereby improving the performance of the algorithm [22]. Deng et al. proposed an adaptive PSO algorithm (APSO), which has an adaptive weight strategy and proposed a new fitness function, and adopted boundary processing to avoid boundary traps and improve the success rate of finding global optimal [23]. Yiyang et al. introduced a nonlinear dynamic inertial weight adjustment method based on the concept of similarity to enhance its robustness, and migration operators are proposed to increase the diversity of particle populations in iteration [24]. Rokbani et al. proposed fitness-based PSO (m-PSO), in which population particles evolve differently according to their fitness [25]. Zhao proposed a PSO algorithm based on the limit joint condition setting and introduced the position coefficient into the velocity factor [26]. Ghosh proposed a boundary restricted PSO (BRPSO) to constrain the boundary of decision variables to avoid the infeasible solution caused by boundary violation [27].
In light of the limitations inherent in traditional methods, as well as the demand for accelerated solution speeds to satisfy real-time control requirements, there has been a growing interest in leveraging neural networks. Given their strong approximation capabilities for addressing nonlinear mapping challenges, recent studies have explored the integration of neural networks with optimization algorithms to enhance both solving speed and accuracy. For example, Bai et al. proposed an inverse kinematics algorithm based on the fruit fly optimization algorithm for the BP neural network. It overcomes the disadvantages of the BP neural network, such as low convergence accuracy, slow convergence speed, and ease of falling into local minima [10]. Luo et al. proposed a multi-objective full-parameter optimization particle swarm optimization algorithm and comprehensively analyzed all factors affecting the global and local searching abilities to improve PSO [29]. Soleimani Amiri proposed a hybrid optimal genetic swarm algorithm for inverse kinematics of manipulators. Each joint is controlled by a proportional-integral-derivative (PID) controller, which is optimized using genetic algorithms (GA) and PSO, known as Genetic–Swarm Optimization (GSO) [30]. Lin et al. put forward an inverse solution algorithm based on an adaptive spider wasp optimization and BP neural network to address the issue of insufficient end positioning accuracy of a large hydraulic robotic manipulator [31]. Jiang proposed a 6-DOF PSO–BP neural network algorithm, which overcomes some shortcomings of BP neural networks [32].
However, despite the existence of numerous variants of PSO, the search time and success rate of most existing algorithms are unsatisfactory. In complex search environments with many local solutions, if the current global best particle is far from the global optimal solution, other particles are easily attracted to and trapped in local optimal values. This highlights the need to consider dividing the search area offline and improving the search efficiency by finding in smaller, potentially asymmetric target areas online. The former reduces search time, while the latter decreases the number of searches and improves the success rate of particle search. Therefore, a novel and efficient algorithm for addressing the inverse kinematics of a manipulator based on multi-level network optimization is proposed. This algorithm is a combination of online and offline algorithms, which further enhances the speed and accuracy of inverse kinematics. In Section 2, we initially introduce the process of solving the inverse kinematics of the traditional PSO algorithm, and subsequently propose a new particle swarm optimizer that integrates Self-Organizing Maps (SOM) and K-means clustering (SK-PSO). In Section 3, a 6-DOF manipulator is adopted as the research object, and the modeling and kinematics analysis of the manipulator are conducted. In Section 4, the speed and accuracy of SK-PSO and other five algorithms are compared and analyzed in two different scenarios. Section 5 discusses this work and potential future research. Section 6 is a summary of the SK-PSO algorithm.

2. Presentation of the SK-PSO

2.1. Standard Particle Swarm Optimization

The PSO algorithm is an evolutionary computation method proposed by Kennedy and Eherhart [33], and its basic concept is derived from the study of the foraging behavior of birds. Each particle can be regarded as a search individual in the n-dimensional search space, the current position of the particle is a candidate solution of the corresponding optimization problem, and the flight process of the particle is the search process of the individual. The particle speed can be dynamically adjusted according to the historical optimal position of the particle and the historical optimal position of the population. A particle has two properties: velocity, which represents how fast it is moving, and position, which represents the direction it is moving. The optimal solution searched by each particle individually is called the individual extreme value, and the optimal individual extreme value in the particle swarm is the current global optimal solution. After continuous iteration, updating speed and position, the optimal solution satisfying the termination condition is finally obtained.
The intelligent optimization algorithm is designed to solve the IK problem by transforming it into an optimization control problem. In order to do so effectively, it is crucial to establish a suitable optimization objective function. The fitness function, which determines the optimal solution for the particle position, consists of two sub-terms: posture error and position error. The posture error is a combination of sine and cosine functions, while the position error is represented by Euclidean distance. This function should aim to minimize both position and posture errors, which can be measured in millimeters and radians, respectively. However, since these two types of errors are not in the same dimension, weight coefficients must be assigned to normalize them.
Suppose P i = [ α i β i γ i p i x p i y p i z ] represents the pose for joint angle vector θ i derived from the forward kinematics (FK), L is the maximum working space radius of the manipulator, and a and b are the weight coefficients for posture error and position error, respectively, then for a desired pose P d = [ α d β d γ d p x d p y d p z d ] of the manipulator, the fitness function can be defined as
f ( I k ) = a × ( α i α d ) 2 + ( β i β d ) 2 + ( γ i γ d ) 2 1 / 2 + b × 1 L ( p i x p d x ) 2 + ( p i y p d y ) 2 + ( p i z p d z ) 2 1 / 2
In order to solve the inverse kinematics, the obtained particle position is substituted into the FK model, and the updated velocity and position make the value of the fitness function decrease continuously through continuous iteration. The solution to the inverse kinematics is the optimal solution that satisfies the termination condition after continuous iteration. For a given solving target point P, the process of PSO to solve the inverse kinematics is shown in Figure 1, and its solving steps are as follows:
(1) Forward kinematics model of the manipulator is established, and joint angle space and symmetric Cartesian space (working space at the end of the manipulator) of the manipulator are determined.
(2) Given the position P, the end of the manipulator is to be solved.
(3) The fitness function is established by the forward kinematics model f ( F k ) , and the PSO method is used to find the inverse solution of P in the joint space of the manipulator.

2.2. SK-PSO

In the learning process of natural organisms, the size and dimension of the search area have an important influence on the search efficiency. In this paper, a networked PSO method based on Self-Organizing Mapping (SOM) and K-mean (SK-PSO) is proposed, which is expected to improve the learning efficiency of searching particles from two aspects of size and dimension.
SOM were proposed by Kohonen in 1982 [34]. Through SOM, the data in the higher-dimensional space are projected into the lower-dimensional space, and the input signal that retains the same characteristics corresponds to the neighboring region in the projected space. SOM form a nonlinear dimensionality reduction algorithm that attempts to find principal curves or surfaces in high dimensional data. For the pose space of the manipulator, the reference pose in the corresponding low-dimensional structure space is found through SOM. Each reference pose represents a cluster center of the original data.
The solution process is a combination of online and offline process. The solving process is shown in Figure 2:
(1) The N group of robot joint angles are randomly generated in the joint space, and the mapping between the joint space and the task space is obtained by solving the forward kinematics; thus, the N sample of the manipulator end points in the task space are obtained;
(2) Perform K-mean clustering on the end points of the manipulator in the task space to obtain the task subspace of K-group and the center points of each asymmetric subspace; each subspace has N/K group sample data. According to the grouping of K group sample array, the corresponding grouping of joint angles is obtained;
(3) N/K sets of sample data of each subspace were trained by SOM network of n × n competing units in joint space, and n 2 pose clusters and n 2 pose center points are obtained in each asymmetric subspace.
Among them, steps 1–3 are carried out offline, and are saved in the form of a database after running once, which can be accessed when solving online steps 4–6;
(4) Calculate the distance between the position P of the task space to be solved and each subspace, and judge the corresponding subspace of the task space;
(5) The nearest pose center point S p is further obtained in the subspace. If the corresponding original index exists in the database, the result is directly output; if no corresponding original index exists, g nearest particle points in the pose cluster Q p are found;
(6) The optimal solution of PSO is obtained by taking the g nearest particles as the initial position of PSO.
The detailed step-by-step solving algorithm is shown in Figure 3.

3. Kinematic Analysis of Manipulator

In this study, a manipulator manufactured by Universal Robots A/S, named UR5, which is widely used in industry, is selected as the test object. UR5 is a 6R series manipulator; its structure diagram is shown in Figure 4 and DH parameters are shown in Table 1.
In the field of robotics, the transformation matrix of a manipulator is established by applying the transformation matrix between joints. This procedure is aimed at calculating the forward kinematics of the manipulator. The obtained transformation matrix is presented as follows:
f ( θ ) = R 6 0 = R 1 1 0 R 2 2 R 3 3 R 4 4 R 5 5 R 6 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
where R 1 0 = C θ 1 0 S θ 2 0 S θ 1 0 C θ 2 0 0 1 0 d 1 0 0 0 1 , R 2 1 = C θ 2 S θ 2 0 a 2 C θ 2 S θ 2 C θ 2 0 a 2 S θ 2 0 0 1 0 0 0 0 1 , R 3 2 = C θ 3 S θ 3 0 a 3 C θ 3 S θ 3 C θ 3 0 a 3 S θ 3 0 0 1 0 0 0 0 1 , R 4 3 = C θ 4 0 S θ 4 0 S θ 4 0 C θ 4 0 0 1 0 d 4 0 0 0 1 , R 5 4 = C θ 5 0 S θ 5 0 S θ 5 0 C θ 5 0 0 1 1 d 5 0 0 0 1 , R 6 5 = C θ 6 S θ 6 0 0 S θ 6 C θ 6 0 0 0 0 1 d 6 0 0 0 1 , C θ i = cos θ i , S θ i = sin θ i .
Suppose α β γ is the Euler Angle to represent the posture of the manipulator, and P x P y P z is the position vector of the manipulator, then the pose of the manipulator can be expressed as P = α β γ p x p y p z . Where α = a c tan a y / a z , β = a c tan a x / n x 2 + o x 2 , γ = a c tan o x / n x .

4. Simulation Analysis

To verify the effectiveness of the SK-PSO algorithm, the proposed method was tested on two different scenarios using the UR5 robotic arm as the testing platform.

4.1. Scenario 1

Owing to the asymmetric distribution of data within the workspace, in the first scenario, a point is randomly determined in the workspace of the robot, and the inverse kinematics of the point are solved using the proposed algorithm and other five comparison algorithms, including PSO [33], QPSO [19], IGWO [17], ABC [12], and FA [18]. All the algorithms are run 50 times in the Matlab (version: R2021a) program, and their respective optimal results and the average of all the running results are utilized for comparison. Figure 5 shows the initial posture of the manipulator. Figure 6 shows the desired position of the end effector of the manipulator randomly selected in the workspace, with joint angles of [60° −45° 60° −110° 10° 20°].
T a r g e t _ P o s e = 0.2713 0.4313 0.8604 221.1339 0.1436 0.8658 0.4793 764.1083 0.9517 0.2536 0.1730 310.7928 0 0 0 1
The parameter settings for each algorithm are presented in Table 2. The population size of the PSO algorithm is set at 80, and the termination condition of the algorithm flow is set to a maximum iteration count of 1000 or a fitness value less than 0.001.
As can be observed from the iterative process in Figure 7 and the solution time in Figure 8, particles in the swarm after clustering can rapidly locate the global optimal position, contrary to PSO and QPSO, which have to search and iterate continuously in an asymmetric space to find the local and global optimal positions. Owing to the reduction in the search process in space, the solution time of SK-PSO is significantly lower than that of other algorithms. Among these algorithms, the SK-PSO algorithm also exhibits a rapid solution speed under the precondition of meeting a certain precision. Whereas other algorithms, such as QPSO, ABC, FA, and IGWO algorithms, although they can also achieve a certain precision, their solution time is considerably longer than that of the SK-PSO algorithm. Therefore, SK-PSO holds the advantages of high speed and high precision.
From the average fitness iteration process diagram in Figure 7, it can be seen that due to SK-PSO first judging the region where the target point is located and selecting the joint angle closest to the target point as the initial population, the fitness function value of SK-PSO algorithm can quickly decrease and be significantly lower than other algorithms in the early stage of the search. In the later stage of the search, the PSO algorithm falls into local optima, while the QPSO, FA, and ABC algorithms, due to their own performance limitations, have an unsatisfactory optimization process. Although IGWO achieved results similar to SK-PSO, it can be seen from the solution time shown in Figure 8 that its time consumption is much greater than that of the SK-PSO algorithm.
According to Figure 7 and Figure 8, various algorithms address the IK problem with varying levels of accuracy and time efficiency; however, SK-PSO demonstrates superior performance. In order to quantitatively analyze the performance of different algorithms, Table 3 summarizes the final results of each algorithm on the IK problem. From the table, it can be seen that the average fitness function values of SK-PSO and IGWO are similar, both significantly ahead of the PSO algorithm, which are 0.021 and 0.034 times that of PSO algorithm, respectively. However, the average solution time of IGWO is 31 times that of the SK-PSO algorithm. In terms of result distribution, the ABC function has the most concentrated results after multiple calculations, but its average optimal fitness function value is far inferior to SK-PSO and IGWO. Therefore, the SK-PSO algorithm is more efficient and fast in solving inverse kinematics problems compared to the other compared algorithms.

4.2. Scenario 2

In order to mitigate the effects of randomness in pose point selection, a second scenario involves generating 50 pose points randomly within the workspace of the UR5 manipulator, as illustrated in Figure 9. Each pose point consists of both a posture vector and a position vector. The algorithms employed include SK-PSO, PSO, QPSO, IGWO, ABC, and FA to tackle the IK problem for these 50 target points. After executing the algorithms 10 times for each point, optimal results are recorded, as depicted in Figure 10. The solution times required by each algorithm across all 50 points are presented in Figure 11.
As can be seen from Figure 10 and Figure 11, SK-PSO effectively avoids the issue of traditional PSO methods falling into local optima. It also accurately and quickly solves the inverse solution of the manipulator at 50 random points. Figure 10 displays the fitness function values obtained by solving 50 random points using different algorithms. It is evident that the PSO algorithm has the worst performance, yielding not only the worst results but also high volatility. Among the algorithms compared, IGWO is the most stable, followed by SK-PSO, FA, and ABC. In terms of optimal solutions, the SK-PSO algorithm and IGWO achieve similar results. However, as shown in Figure 11, the IGWO algorithm takes the longest time among the multiple solutions, while the SK-PSO algorithm takes the shortest time. In fact, the IGWO algorithm takes about 10 times longer than the SK-PSO algorithm. Therefore, compared to other algorithms, SK-PSO has significant advantages in terms of calculation accuracy and solving speed. Additionally, it requires much less time to meet the accuracy of 0.001 compared to other algorithms. It is evident that SK-PSO outperforms the other compared algorithms in both accuracy and speed when addressing the IK problem.

5. Discussion

This paper presents a novel algorithm for expeditiously solving the inverse kinematics problems of the robotic manipulator. This approach employs K-means and SOM to promptly identify the region where the target solution lies during the initial stage of resolution, thereby enhancing the speed and accuracy of the particle swarm optimization algorithm. In contrast to other PSO variants, which mainly focus on adopting diverse initialization strategies to improve the initial population or employing multiple populations or strategies during the search phase to boost the search performance of the algorithm, the SK-PSO algorithm is fundamentally distinct. The emphasis of the SK-PSO algorithm is to optimize the search area size of particles and precisely locate the optimal solution area during the initialization phase. To further enhance the method and broaden its adaptability, the following aspects merit discussion:
Firstly, this study utilizes K-means to divide the workspace into multiple regions; however, an asymmetric clustering pattern might emerge, which could be further investigated. Other more flexible methods of region partitioning can also be explored. These methods do not rely on minimizing the Euclidean distance and may possess broader applicability. For instance, density-based clustering methods can be employed to achieve region partitioning, or grid partitioning methods can be utilized to divide the workspace into regular grid cells. These partitioning strategies can effectively handle large-scale data and assist in locating the solution area more rapidly.
Secondly, this paper employs SOM for dimensionality reduction of the data, but when confronted with massive amounts of data, this method exhibits a high time complexity. For nonlinear and complex data, deep learning techniques can be introduced for dimensionality reduction. For example, constructing an autoencoder model and conducting feature extraction and dimensionality reduction can effectively handle large-scale nonlinear data. Additionally, the characteristics of autoencoders can also support decoding and reproducing data after dimensionality reduction, providing more accurate inputs for the subsequent processing of algorithms. The autoencoder can be designed with a symmetric architecture to better handle the data transformation.
Thirdly, in solving the algorithm, the basic particle swarm optimization algorithm was adopted in the study. Future research can endeavor to introduce improved particle swarm optimization algorithms such as QPSO and PLPSO, or other optimization algorithms with superior performance. Compared to the basic PSO, these algorithms have significantly enhanced computational speed and solution accuracy. These algorithms merely require adjusting the initial population and parameter configuration to seamlessly integrate into the existing frameworks, thereby further accelerating the speed of solving inverse kinematics problems. A symmetric evaluation metric could be established to objectively assess the performance of different algorithms in this context.
Finally, this study utilized the UR5 manipulator as the validation object, and in the future, we can explore the extension of this method to the robotic manipulator with higher degrees of freedom or complex non-traditional structures, which will bring broad prospects and substantial market value to the field of robotics and its industrial applications.

6. Conclusions

In this study, a PSO algorithm based on SOM and k-means was presented for solving the inverse kinematics problem of the manipulator. This approach initially generates a large quantity of joint angles offline and computes the corresponding end effector positions through forward kinematics to construct the workspace of the manipulator. Subsequently, the generated data were categorized using K-means clustering and mapped via SOM neural network. In the process of solving inverse kinematics online, due to the possible asymmetry in the distribution of the data within the workspace, the first step is to determine the region where the target point is situated and utilize the clustered data as the initial population for the particle swarm optimization algorithm. To assess the reliability of the proposed algorithm, SK-PSO was compared with PSO, QPSO, ABC, IGWO, and FA algorithms. The experiment is divided into two distinct scenarios. By measuring a single point in the first scenario, it can be observed that the SK-PSO algorithm is faster and more accurate than the other algorithms. In the second scenario, the SK-PSO algorithm exhibits high reliability while maintaining speed and accuracy. The average fitness value of the SK-PSO algorithm is 0.02–0.62 times that of the other five algorithms, while the asymmetric solving time is merely 0.03–0.34 times that of them. The overall test results suggest that the SK-PSO algorithm can be effectively applied to inverse kinematics tasks related to computation time and pose errors.

Author Contributions

Conceptualization, F.L. and C.G.; methodology, F.L.; software, F.L. and L.L.; validation, F.L., C.G. and L.L.; writing—original draft preparation, F.L.; writing—review and editing, F.L. and L.L.; supervision, L.L.; funding acquisition, F.L. and L.L. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by Shenzhen Polytechnic University Research Fund (Grant No. 6023310005K), and in part by Research Projects of Department of Education of Guangdong Province (Grant No. 2023KTSCX317).

Data Availability Statement

The original contributions presented in this study are included in the article. Further inquiries can be directed to the corresponding author.

Conflicts of Interest

The authors declare no conflicts of interest.

References

  1. Liu, F.; Xu, W.; Huang, H.; Ning, Y.; Li, B. Design and analysis of a high-payload manipulator based on a cable-driven serial-parallel mechanism. ASME J. Mech. Robot. 2019, 11, 1. [Google Scholar] [CrossRef]
  2. Xu, F.; Zi, B.; Yu, Z.; Zhao, J.; Ding, H. Design and implementation of a 7-DOF cable-driven serial spray-painting robot with motion-decoupling mechanisms. Mech. Mach. Theory 2024, 192, 105549. [Google Scholar] [CrossRef]
  3. Russo, M.; Sadati, S.M.H.; Dong, X.; Mohammad, A.; Walker, I.D.; Bergeles, C.; Xu, K.; Axinte, D.A. Continuum Robots: An Overview. Adv. Intell. Syst. 2023, 5, 2200367. [Google Scholar] [CrossRef]
  4. Liu, F.; Huang, H.; Li, B.; Xi, F. A parallel learning particle swarm optimizer for inverse kinematics of robotic manipulator. Int. J. Intell. Syst. 2021, 36, 6101–6132. [Google Scholar] [CrossRef]
  5. Dulźba, I.; Opalka, M. A comparison of Jacobian-based methods of inverse kinematics for serial robot manipulators. Int. J. Appl. Math. Comput. Sci. 2013, 23, 373–382. [Google Scholar] [CrossRef]
  6. Wang, X.; Zhang, D.; Zhao, C. The inverse kinematics of a 7R 6-degree-of-freedom robot with non-spherical wrist. Adv. Mech. Eng. 2017, 9, 168781401771498. [Google Scholar] [CrossRef]
  7. Aristidou, A.; Lasenby, J. FABRIK: A fast, iterative solver for the inverse kinematics problem. Graph. Model. 2011, 73, 243–260. [Google Scholar] [CrossRef]
  8. Cagigas-Muñiz, D. Artificial Neural Networks for inverse kinematics problem in articulated robots. Eng. Appl. Artif. Intell. 2023, 126, 107175. [Google Scholar] [CrossRef]
  9. Kramar, V.; Kramar, O.; Kabanov, A. An artificial neural network approach for solving inverse kinematics problem for an anthropomorphic manipulator of robot SAR-401. Machines 2022, 10, 241. [Google Scholar] [CrossRef]
  10. Bai, Y.; Luo, M.; Pang, F. An algorithm for solving robot inverse kinematics based on FOA optimized BP neural network. Appl. Sci. 2021, 11, 7129. [Google Scholar] [CrossRef]
  11. Gao, R. Inverse kinematics solution of Robotics based on neural network algorithms. J. Ambient. Intell. Humaniz. Comput. 2020, 11, 6199–6209. [Google Scholar] [CrossRef]
  12. Dereli, S.; Köker, R. Simulation based calculation of the inverse kinematics solution of 7-DOF robot manipulator using artificial bee colony algorithm. SN Appl. Sci. 2020, 2, 27. [Google Scholar] [CrossRef]
  13. Dereli, S. A new modified grey wolf optimization algorithm proposal for a fundamental engineering problem in robotics. Neural Comput. Appl. 2021, 33, 14119–14131. [Google Scholar] [CrossRef]
  14. 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, 2020, 1–13. [Google Scholar] [CrossRef]
  15. Sahu, P.K.; Balamurali, G.; Biswal, B.B. Robotic manipulator trajectory optimisation using an improved modified bat algorithm. Int. J. Mechatron. Autom. 2020, 7, 11–22. [Google Scholar] [CrossRef]
  16. Slim, M.; Rokbani, N.; Neji, B.; Terres, M.A.; Beyrouthy, T. Inverse Kinematic Solver Based on Bat Algorithm for Manipulator Path Planning. Robotics 2023, 12, 38. [Google Scholar] [CrossRef]
  17. Wen, L. Grey Wolf Optimizer Based on Nonlinear Adjustment Control Parameter. In Proceedings of the 2016 4th international conference on sensors, mechatronics and automation (ICSMA 2016), Zhuhai, China, 12–13 November 2016; Volume 136, pp. 643–648. [Google Scholar]
  18. Dereli, S.; Köker, R. Calculation of the inverse kinematics solution of the 7-DOF redundant robot manipulator by the firefly algorithm and statistical analysis of the results in terms of speed and accuracy. Inverse Probl. Sci. Eng. 2020, 28, 601–613. [Google Scholar] [CrossRef]
  19. Omkar, S.N.; Khandelwal, R.; Ananth, T.V.S.; Narayana Naik, G.; Gopalakrishnan, S. Quantum behaved Particle Swarm Optimization (QPSO) for multi-objective design optimization of composite structures. Expert Syst. Appl. 2009, 36, 11312–11322. [Google Scholar] [CrossRef]
  20. Alkayyali, M.; Tutunji, T.A. PSO-Based Algorithm for Inverse Kinematics Solution of Manipulator Manipulators. In Proceedings of the 2019 20th International Conference on Research and Education in Mechatronics (REM), Wels, Austria, 23–24 May 2019; IEEE: Piscataway, NJ, USA, 2019. [Google Scholar]
  21. Shastri, S.; Parvez, Y.; Chauhan, N.R. Inverse kinematics for a 3-R robot using artificial neural network and modified particle swarm optimization. J. Inst. Eng. India Ser. C 2020, 101, 355–363. [Google Scholar] [CrossRef]
  22. An, J.; Li, X.; Zhang, Z.; Man, W.; Zhang, G.; Ding, W. Application of an Improved Particle Swarm Optimization Algorithm in Inverse Kinematics Solutions of Manipulators. In Proceedings of the 2020 IEEE 9th Joint International Information Technology and Artificial Intelligence Conference (ITAIC), Chongqing, China, 11–13 December 2020; IEEE: Piscataway, NJ, USA, 2020; Volume 9, pp. 1680–1684. [Google Scholar]
  23. Deng, H.; Xie, C. An improved particle swarm optimization algorithm for inverse kinematics solution of multi-DOF serial robotic manipulators. Soft Comput. 2021, 25, 13695–13708. [Google Scholar] [CrossRef]
  24. Liu, Y.; Xi, J.; Bai, H.; Wang, Z.; Sun, L. A general robot inverse kinematics solution method based on improved PSO algorithm. IEEE Access 2021, 9, 32341–32350. [Google Scholar]
  25. Rokbani, N.; Neji, B.; Slim, M.; Mirjalili, S.; Ghandour, R. A multi-objective modified PSO for inverse kinematics of a 5-DOF robotic arm. Appl. Sci. 2022, 12, 7091. [Google Scholar] [CrossRef]
  26. Zhao, G.; Jiang, D.; Liu, X.; Tong, X.; Sun, Y.; Tao, B.; Kong, J.; Yun, J.; Liu, Y.; Fang, Z. A Tandem Robotic Arm Inverse Kinematic Solution Based on an Improved Particle Swarm Algorithm. Front. Bioeng. Biotechnol. 2022, 10, 832829. [Google Scholar] [CrossRef]
  27. Ghosh, A.; Singh, O.; Ray, A.K. Inverse kinematic solution of a 7 DOF robotic manipulator using boundary restricted particle swarm optimization. IFAC -Pap. 2022, 55, 101–105. [Google Scholar] [CrossRef]
  28. Zhao, G.; Tao, B.; Jiang, D.; Yun, J.; Fan, H. Improved Bald Eagle Search Optimization Algorithm for the Inverse Kinematics of Robotic Manipulators. Biomimetics 2024, 9, 627. [Google Scholar] [CrossRef]
  29. Luo, S.; Chu, D.; Li, Q.; He, Y. Inverse Kinematics Solution of 6-DOF Manipulator Based on Multi-Objective Full-Parameter Optimization PSO Algorithm. Front. Neurorobotics 2022, 16, 791796. [Google Scholar] [CrossRef]
  30. Soleimani Amiri, M.; Ramli, R. Intelligent Trajectory Tracking Behavior of a Multi-Joint Robotic Arm via Genetic–Swarm Optimization for the Inverse Kinematic Solution. Sensors 2021, 21, 3171. [Google Scholar] [CrossRef] [PubMed]
  31. Lin, Y.; Xu, Q.; Ju, W.; Zhang, T. Inverse Kinematics of Large Hydraulic Manipulator Arm Based on ASWO Optimized BP Neural Network. Appl. Sci. 2024, 14, 5551. [Google Scholar] [CrossRef]
  32. Jiang, G.; Luo, M.; Bai, K.; Chen, S. A Precise Positioning Method for a Puncture Robot Based on a PSO-Optimized BP Neural Network Algorithm. Appl. Sci. 2017, 7, 969. [Google Scholar] [CrossRef]
  33. Kennedy, J.; Eberhart, R. Particle swarm optimization. In Proceedings of the ICNN’95—International Conference on Neural Networks, Perth, WA, Australia, 27 November–1 December 1995; IEEE: Piscataway, NJ, USA, 1995; Volume 4, pp. 1942–1948. [Google Scholar] [CrossRef]
  34. Kohonen, T. Self-organized formation of topologically correct feature maps. Biol. Cybern. 1982, 43, 59–69. [Google Scholar] [CrossRef]
Figure 1. Illustration of PSO for solving inverse kinematics.
Figure 1. Illustration of PSO for solving inverse kinematics.
Symmetry 16 01667 g001
Figure 2. Illustration of SK-PSO for solving inverse kinematics.
Figure 2. Illustration of SK-PSO for solving inverse kinematics.
Symmetry 16 01667 g002
Figure 3. The step-by-step solving process of SK-PSO.
Figure 3. The step-by-step solving process of SK-PSO.
Symmetry 16 01667 g003
Figure 4. Structure diagram of the UR5 manipulator.
Figure 4. Structure diagram of the UR5 manipulator.
Symmetry 16 01667 g004
Figure 5. Initial posture of the manipulator.
Figure 5. Initial posture of the manipulator.
Symmetry 16 01667 g005
Figure 6. Desired posture of the manipulator.
Figure 6. Desired posture of the manipulator.
Symmetry 16 01667 g006
Figure 7. Iterative process of the SK-PSO and compared algorithms.
Figure 7. Iterative process of the SK-PSO and compared algorithms.
Symmetry 16 01667 g007
Figure 8. Solution time of the SK-PSO and compared algorithms.
Figure 8. Solution time of the SK-PSO and compared algorithms.
Symmetry 16 01667 g008
Figure 9. Fifty points randomly within the workspace of the UR5 manipulator.
Figure 9. Fifty points randomly within the workspace of the UR5 manipulator.
Symmetry 16 01667 g009
Figure 10. Optimal result by SK-PSO and other compared algorithms.
Figure 10. Optimal result by SK-PSO and other compared algorithms.
Symmetry 16 01667 g010
Figure 11. Solution time of SK-PSO and other compared algorithms.
Figure 11. Solution time of SK-PSO and other compared algorithms.
Symmetry 16 01667 g011
Table 1. DH Parameters of the UR5 manipulator.
Table 1. DH Parameters of the UR5 manipulator.
i d i a i a i θ i
189.20 π / 2 π < θ 1 < π
20−4250 π < θ 2 < π
30−3920 π < θ 3 < π
4109.30 π / 2 π < θ 4 < π
594.750 π / 2 π < θ 5 < π
682.500 π < θ 6 < π
Table 2. Parameter settings of compared algorithms.
Table 2. Parameter settings of compared algorithms.
AlgorithmParameter Setting
SK-PSOW = 1 × 0.99, c1 = 2, c2 = 2, a = 0.5, b = 0.5, L = 850
PSOW = 1 × 0.99, c1 = 1.49445, c2 = 1.49445
QPSOBeta = (1 − 0.5) × (Maxiterm-iterm)/Maxiterm + 0.5
Mbest = sum(pbest)/popsize
IGWOa = 2 − iterm × ((2)/Maxiterm)
ABCL = round(0.6 × nVar × nPop), a = 1
FAA = 0.3, β = 0.9, γ = 0.9
Table 3. Comparison of the SK-PSO and compared algorithms.
Table 3. Comparison of the SK-PSO and compared algorithms.
AlgorithmMean Fitness ValueMinimum Fitness ValueMaximum Fitness ValueVariance of Fitness ValuesAverage Solution Time (s)
SK-PSO0.0042470.0003550.0533100.0119710.090625
PSO0.1992490.0634430.4048530.0878940.269063
QPSO0.0273340.0009910.0717120.0188880.33125
IGWO0.0068440.0010050.0387440.0085142.81125
ABC0.0178290.0107410.0294340.0031102.33375
FA0.0198900.0007480.0540670.0165221.728125
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Liu, F.; Gao, C.; Liu, L. SK-PSO: A Particle Swarm Optimization Framework with SOM and K-Means for Inverse Kinematics of Manipulators. Symmetry 2024, 16, 1667. https://doi.org/10.3390/sym16121667

AMA Style

Liu F, Gao C, Liu L. SK-PSO: A Particle Swarm Optimization Framework with SOM and K-Means for Inverse Kinematics of Manipulators. Symmetry. 2024; 16(12):1667. https://doi.org/10.3390/sym16121667

Chicago/Turabian Style

Liu, Fei, Changqin Gao, and Lisha Liu. 2024. "SK-PSO: A Particle Swarm Optimization Framework with SOM and K-Means for Inverse Kinematics of Manipulators" Symmetry 16, no. 12: 1667. https://doi.org/10.3390/sym16121667

APA Style

Liu, F., Gao, C., & Liu, L. (2024). SK-PSO: A Particle Swarm Optimization Framework with SOM and K-Means for Inverse Kinematics of Manipulators. Symmetry, 16(12), 1667. https://doi.org/10.3390/sym16121667

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