# Using the Bezier Curve and Particle Swarm Optimization in Trajectory Planning for Overhead Cranes to Suppress the Payloads’ Residual Swing

Authors: Huasen Liu; Wenming Cheng
Journal: Mathematical Problems in Engineering
 (2018)

---

## Abstract

An overhead crane is an underactuated system, which leads to residual swing of the crane’s payload when the crane accelerates or decelerates. This paper proposes a trajectory planning approach which uses the Bezier curve and particle swarm optimizer (PSO-BC) to limit the residual swing of a payload. The dynamic equation for an overhead crane is discredited, and a five-order Bezier curve is generated as the trolley’s displacement. The trolley’s desired position is set as the last control point of the Bezier curve, which guarantees that the trolley reaches the desired position accurately. Various constraints, including restricting the swing angle, the allowable trolley velocity, and the allowable trolley acceleration, are then taken into consideration as the constraints. In order to make the trolley reach its desired position whilst suppressing the payload’s swing under the constraints, a particle swarm optimizer is used to determine the optimal control point positions of the Bezier curve. Finally, the PSO-BC simulation results are compared to some existing approaches and are presented to show the feasibility and robustness of the proposed PSO-BC method. The simulation results indicate that the trolley moved to the desired position accurately whilst the payload’s swing angle is kept to an allowable level.


---

## Body

## 1. Introduction

Overhead cranes are widely used in various fields, such as factories, seaports, and manufacturing workshops. They also play a significant role in the modern logistics engineering, industry, and the transportation of massive goods. The manufacturing industry now requires that overhead cranes become faster, larger, and heavier, which has led to the new challenge of the crane’s operators having to guarantee a fast turn-over time whenever they operate the overhead cranes. However, an overhead crane is typical of a nonlinear underactuated mechanical system which means that the crane’s trolley motion normally induces an undesirable payload swing [1]. Kecik et al. [2] present an energy harvester that is dependent on pendulum motion when the model is vertically excited. The pendulum swing is able to be suppressed whilst the energy is harvested and stored. The problem is that an unexpected large payload swing angle can lead to hazardous situations and cause serious accidents, such as damaging the overhead crane or harming people nearby. In addition, it is hard to achieve both simultaneous objectives of fast accurate trolley transportation and payload swing suppression, to ensure the safe and efficient transportation of payloads.Much work and effort has been expended on limiting the undesirable swing of payloads [3]. In general, the considered control strategies can be categorized into two groups: the open loop [4] and the closed loop [5, 6] techniques. The article in [7] presented an anti-sway and anti-skew control system for a container crane which uses a model-based Proportional and Integral and Derivative (PID) control method. Simulation results for this system show that any spreader motion is stabilized under external disturbances within a few seconds. Mahmud et al. [6] proposed a fuzzy-tuned PID which utilizes a fuzzy system as the PID gain tuners to help robustly control variations in the parameters of gantry cranes. These control methods need accurate sensors to measure the trolley positions and velocities as well as payload swing angles.Feedback control methods [8, 9] utilize measurements of the system in reducing the payload swing whereas feedforward approaches work by altering the actuator commands so that system’s vibration is suppressed. One of the useful approaches for reducing motion-induced vibration in underactuated systems is input shaping. In this technique, the residual vibration of the payload induced by a former input impulse is canceled out by the vibration induced by a later input impulse [10]. This frequency-modulation input shaping technology [11] was developed with the aim of tuning the resonant frequencies of a system to a set of frequencies that can then be eliminated through the use of a single-mode primary input shaper. The Command smoother [12] is another effective control method for driving flexible systems and suppressing residual vibrations. The proposed smoothers were designed to be functions of the systems’ natural frequencies and damping ratios.Unfortunately, the maximum swing angles of payloads cannot be predicted and thus evaluated in advance. Trajectory planning, mentioned in [13, 14], is the procedure for obtaining a sequence of action curves that moves an object from an initial position to a target position whilst satisfying certain constraints. Boscariol et al. [14] proposed a robust model-based trajectory planning algorithm for underactuated nonlinear systems by exploiting an indirect variational formulation method. An underactuated double-pendulum crane was modeled as a differential Two-Point Boundary Value Problem (TPBVP). A separate offline trajectory planning method [15], based on the geometrical analysis of the phase plane, presented horizontal transference tasks for underactuated overhead cranes. Sun et al. [16] used a positioning reference trajectory component to guide the trolley to the desired location and a swing-eliminating component to eliminate the payload swing without affecting the trolley position.Optimal control [17, 18] is a useful method for designing the profile of control inputs within given optimal performance indices. Kolar et al. [19] set the payload transition time, the time it took to start from an initial rest position to that of the final rest position, as the control objective and presented this approach for the design of time-optimal reference trajectories. Zhang et al. [20] proposed an offline minimum time trajectory planning approach for underactuated overhead cranes, which took into account the various constraints, and included the bounded swing angle of the payload, bounded velocity, and the acceleration of the trolley. Smoczek et al. [21] presented a control approach which used a particle swarm optimizer for limiting the transient and residual swing of a payload. A particle swarm optimizer was used to determine the optimal sequence for the control increments when considering the input and output variable constraints. Optimal control methods look for optimal solutions to minimize (or maximize) the values of the defined objectives.The trolley acceleration curve is the key factor which controls the ability to suppress residual payload swing. Therefore, the payload residual swing is able to be suppressed by generating a proper trolley acceleration curve as an input signal. Due to their being both smooth and continuous, Bezier curves [22–24] have been used to create mobile robot paths for trajectory planning in recent years. Instead of using reference trajectories [16], the trolley displacement is generated directly in this paper through using a Bezier curve, and the shape of the curve is able to be adjusted by moving the position of the control points of the Bezier curve. In [20], the desired position of trolley was used as a constraint to guarantee that the trolley moved to the desired position accurately. In this paper, a five-order Bezier curve is generated as the trolley displacement, and the desired position of trolley is set as the last of the control points in the Bezier curve, which ensures that the trolley moves to the desired position accurately. The acceleration of the trolley, which can be obtained through the use of second-order derivatives with respect to the timetof the trolley’s displacement curve, is then used as the input signal for the crane system. The maximal swing angle, the mean swing angle, and the normalized energy are set as the objective functions. The other control points for the Bezier curve are adjusted by using the particle swarm optimization method [25, 26] to ensure that the curve meets certain constraints. The control scheme was successfully simulated for different constraints and different initial conditions, and the results showed that the trolley moved to the desired position accurately whilst the payload’s swing angle was kept to an acceptable level.This paper is organized as follows. Section2 presents a dynamic model of an overhead crane system which is then discredited. In Section 3, an optimized displacement curve for a trolley is generated, by combining the Bezier curve method and the particle swarm optimization method, for suppressing payload residual swing. Section 4 presents numerical simulations results which verify the effectiveness of the trajectory planning method. Finally, Section 5 concludes the paper.


## 2. The Dynamic Model

### 2.1. The Dynamic System of an Overhead Crane

A two-dimensional model of an underactuated overhead crane is presented in Figure1. The crane model consists of a payload and an overhead trolley. The trolley hoists the payload via a suspension cable. The payload is assumed to oscillate around a point O on the XY plane, and the swing angle θ is measured on the XY plane. The trolley is modeled as a point mass with a mass of mc. The payload is modeled as a rigid body of mass mp. The suspension cable is simplified as a massless cable and its length is l. Additionally, as this paper focuses on trajectory planning for horizontal transportation, hoisting and wind disturbances are not considered. Gravitational acceleration is represented as g.Figure 1
Sketch of an underactuated overhead crane structure.For a 2D underactuated overhead crane system with a constant cable length, the dynamic equations are described as the following:(1)mc+mpx¨+mplθ¨cos⁡θ-mplθ˙2sin⁡θ=Fx-fr(2)mpl2θ¨+mplx¨cos⁡θ+mplgsin⁡θ=0where Fx stands for the actuating force of the trolley and fr denotes the friction force. As usual, the dot and double dots above a variable represent the first and second time derivatives, respectively.As the swing angle is assumed to be small (θ<5∘), the following assumptions can be made: sin⁡θ≈θ, cos⁡θ≈1. Therefore, (2) can be rewritten as(3)θ¨+glθ+x¨l=0The system’s dynamic in (3) shows that there is a kinematic relationship between the payload’s swing angle and the acceleration of the trolley.


### 2.2. System Discretization

To facilitate the subsequent analysis, we need to rewrite (3) as the state-space representation:(4)q˙=Aq+Buwhere(5)q=xx˙θθ˙T,A=01000000000100-gl0,B=010-1land where the control input u(t) represents the acceleration of the trolley. q(t) is referred to as the system’s state vector, with matrices A and B being the state matrix and the input matrix, respectively.The dynamic system needs to be discretized to correspond to an exact discrete-time model of a computer-based control system. We thus create an input vector that represents the trolley’s acceleration at different time steps, where the total number of time steps isk. We letTdenote the sampling period, and the acceleration of trolley uk remains constant betweenkTand (k+ 1)T. This acceleration vector can be represented by (u0,u1,...uk), where uk is the input acceleration at the time intervalk. Hence, (4) is discretized as follows:(6)qk+1=GTqk+HTukwith(7)GT=eAT,HT=∫0TeATdtBwhereG(T) andH(T) represent the corresponding discrete-time state matrix and input matrix for a fixed sampling timeT, respectively. Using the backward recurrence algorithm from (6), we obtain(8)qk=Gkq0+Gk-iHu0+⋯+Huk-1=Gkq0+∑i=1kGk-iHui-1which shows the state of the transition process. It is clear that the system’s state at a specified timekTis affined to the exerted control sequence (u0,u1,...,uk-1). This equation indicates that the acceleration of trolley ((u0,u1,...,uk)) influences the payload’s swing angel θ. Therefore, it is important to design an optimized trolley acceleration curve that leads to the trolley moving to its desired position accurately, whilst keeping the payload’s swing angle small.


## 2.1. The Dynamic System of an Overhead Crane

A two-dimensional model of an underactuated overhead crane is presented in Figure1. The crane model consists of a payload and an overhead trolley. The trolley hoists the payload via a suspension cable. The payload is assumed to oscillate around a point O on the XY plane, and the swing angle θ is measured on the XY plane. The trolley is modeled as a point mass with a mass of mc. The payload is modeled as a rigid body of mass mp. The suspension cable is simplified as a massless cable and its length is l. Additionally, as this paper focuses on trajectory planning for horizontal transportation, hoisting and wind disturbances are not considered. Gravitational acceleration is represented as g.Figure 1
Sketch of an underactuated overhead crane structure.For a 2D underactuated overhead crane system with a constant cable length, the dynamic equations are described as the following:(1)mc+mpx¨+mplθ¨cos⁡θ-mplθ˙2sin⁡θ=Fx-fr(2)mpl2θ¨+mplx¨cos⁡θ+mplgsin⁡θ=0where Fx stands for the actuating force of the trolley and fr denotes the friction force. As usual, the dot and double dots above a variable represent the first and second time derivatives, respectively.As the swing angle is assumed to be small (θ<5∘), the following assumptions can be made: sin⁡θ≈θ, cos⁡θ≈1. Therefore, (2) can be rewritten as(3)θ¨+glθ+x¨l=0The system’s dynamic in (3) shows that there is a kinematic relationship between the payload’s swing angle and the acceleration of the trolley.


## 2.2. System Discretization

To facilitate the subsequent analysis, we need to rewrite (3) as the state-space representation:(4)q˙=Aq+Buwhere(5)q=xx˙θθ˙T,A=01000000000100-gl0,B=010-1land where the control input u(t) represents the acceleration of the trolley. q(t) is referred to as the system’s state vector, with matrices A and B being the state matrix and the input matrix, respectively.The dynamic system needs to be discretized to correspond to an exact discrete-time model of a computer-based control system. We thus create an input vector that represents the trolley’s acceleration at different time steps, where the total number of time steps isk. We letTdenote the sampling period, and the acceleration of trolley uk remains constant betweenkTand (k+ 1)T. This acceleration vector can be represented by (u0,u1,...uk), where uk is the input acceleration at the time intervalk. Hence, (4) is discretized as follows:(6)qk+1=GTqk+HTukwith(7)GT=eAT,HT=∫0TeATdtBwhereG(T) andH(T) represent the corresponding discrete-time state matrix and input matrix for a fixed sampling timeT, respectively. Using the backward recurrence algorithm from (6), we obtain(8)qk=Gkq0+Gk-iHu0+⋯+Huk-1=Gkq0+∑i=1kGk-iHui-1which shows the state of the transition process. It is clear that the system’s state at a specified timekTis affined to the exerted control sequence (u0,u1,...,uk-1). This equation indicates that the acceleration of trolley ((u0,u1,...,uk)) influences the payload’s swing angel θ. Therefore, it is important to design an optimized trolley acceleration curve that leads to the trolley moving to its desired position accurately, whilst keeping the payload’s swing angle small.


## 3. Optimal Control of the Trajectory Planning

### 3.1. Using the Bezier Curve to Generate Trolley Acceleration

According to (8), the acceleration curve of the trolley directly impacts the residual swing of the payload. Generating an appropriate acceleration curve for a trolley can help to suppress the residual swing of the payload. A Bezier curve is defined by several control points and it always passes through the first and the final control points, and its shape can be altered by moving the control points. A two-dimensional Bezier curve of order N is represented as(9)xτ=∑i=0NCNiτi1-τN-iPi=∑i=0NN!N-i!i!τi1-τN-iPi,τ∈0,1where τ is a parameter and xτ is a two-dimensional Bezier curve generated by the control points P0,P1,⋯,PN and is used as the horizontal displacement curve for a trolley.Equation (9) is a parametric equation of the trolley’s horizontal displacement curve. Since τ is the normalized time, for the trajectory execution time T1=te-ts, we define t=ts+τ·T1, where ts is the starting time of the first point P0 and te is the finishing time of last point PN.The velocity of the trolley can be obtained by using the first-order derivatives with respect to timet [27] and is shown as(10)x˙t=dxdτdτdt=NT1∑i=0N-1CN-1it-tsT1i1-t-tsT1N-i-1Pi+1-PiThe acceleration of the trolley can be obtained by using the second-order derivatives with respect to timet and is shown as (11)x¨t=d2x/dτ2dt/dτ-dx/dτd2t/dτ2dt/dτ3=NN-1T12∑i=0N-2CN-2it-tsT1i1-t-tsT1N-i-2Pi+2-2Pi+1+Piwhere CNi=N!/N-i!i! is the binomial coefficient of order N.The following properties of Bezier curves render them particularly suitable for trajectory generation:( 1 ) Bezier curves start at the first point P0 and end at the last point PN. They are continuous at any degree.( 2 ) The vectors tangential to the Bezier curves at the start and end points are parallel to the line that connects the first two (P0 and P1) and last two control points (PN and PN-1), respectively.According to (10) and (11), the velocity and acceleration of the trolley at the start point P0 and the end point PN are (12)x˙ts=NT1P1-P0(13)x˙te=NT1PN-PN-1(14)x¨ts=NN-1T12P2-2P1+P0(15)x¨te=NN-1T12PN-2PN-1+PN-2When a single Bezier curve is used for trajectory planning, there are several reasons why it may not be able to converge into a suitable trajectory for a trolley’s displacement. A Bezier curve constructed from numerous control points is numerically unstable; and moving one control point can alter the global shape of the curve. To overcome this problem, the entire Bezier curve is constructed though smoothly connecting several piecewise Bezier curves.In order to make the Bezier curve continuous and smooth at the connection points, we mainly focused on assuring the continuity of the first-order derivative and second-order derivative at the waypoints connecting the two curves. Figure2 gives an example of the displacement for a trolley curve connected by two Bezier curves. The abscissa is time, and the vertical coordinate is the displacement of the trolley. The points in Figure 2 are the control points of the Bezier curve, and the vertical coordinates of each control point can be changed to generate a Bezier curve with a different shape, so as to obtain different acceleration curves for the trolley. The two curves meet at a shared end point, termed the curve “midpoint”. In order to ensure that the curve is smooth at the midpoint, the velocity and acceleration of the trolley at the midpoint of the two piecewise Bezier curves need to be equal. According to (12)~(15), we can obtain(16)NT1PN-PN-1=NT1PN+1-PN(17)NN-1T12PN-2PN-1+PN-2=NN-1T12PN+2-2PN+1+PNFigure 2
The displacement curve of a trolley connected by two piecewise Bezier curves.For a curve constructed ofn segments Bezier curves and where the second-order derivative is continuous, n(N-3)+3 points are needed to shape the curve. As every point has two parameters, which includes the abscissa values and the ordinate values, 2n(N-3)+6 independent parameters are required for this kind of Bezier curve.The shape of the Bezier curve is significantly affected by the position of the control points(P0,P1,⋯,PN). The Bezier curve is generated as the trolley displacement and trolley acceleration can be calculated according to its displacement as in (9) and (11). Meanwhile, the residual swing of the payload is calculated by the trolley’s acceleration according to (8). In other words, the residual swing of the payload θ is a function of the control points (P0,P1,⋯,PN), which can be defined as θP0,P1,⋯,PN, and the residual swing of the payload can be suppressed through generating suitable control points on the Bezier curve.


### 3.2. The Constraints and Cost Functions of Trajectory Planning

#### 3.2.1. Constraints

According to the practical experience of operating an overhead crane, the following constraints need to be considered when carrying out trajectory planning for the trolley. The trolley reaches the desired locationpd within a finite time te. The maximum permitted payload swing, trolley velocity, and trolley acceleration all need to be kept within acceptable limits. There should be no swing when the trolley stops at the destination. That is,(18)xte=pd,∀t≥tex˙t≤vmax,x¨t≤amaxθt≤θmaxθte=0,x¨te=0v m a x and amax are the permitted maximum velocity and the acceleration of trolley, respectively. θmax is the maximum allowable swing amplitude.


#### 3.2.2. Objective Functions

The energy of the payload is an important indicator for evaluating payload swing. The kinetic energy and potential energy of the payload are(19)E=12mplθ˙2+mpgl1-cos⁡θThe normalized total energy of the payload is(20)E-=Empgl=l2gθ˙2+1-cos⁡θThe objective function of trajectory planning is to ensure safety during the horizontal transportation of the payload. The safety of an overhead crane can be reflected in the following three metrics: the maximum swing angle of the payload, the mean swing angle of the payload, and the normalized energy of the payload at the finish timete. The objective function which combines three of the metrics is(21)JP0,P1,⋯,PN=min⁡amaxi∈1,2,⋯,kθiP0,P1,⋯,PN+1-a∑i=1kθiP0,P1,⋯,PNk+βE-kk is the number of samples in the evaluated planning period. θiP0,P1,⋯,PN is the payload swing angle at the ith period when the control points on the Bezier curve are P0,P1,⋯,PN. The first component is the maximum swing angle, and the second component is the mean swing angle of the payload. The third component guarantees the value of the payload’s swing angle is kept small when the trolley moves to the desired location. The weight coefficient a is set at 0.5 in this paper, and the weight coefficient β is set at 25. The optimal variables are the control point’s locations P0,P1,⋯,PN on the Bezier curve.


### 3.3. Particle Swarm Optimization

Particle swarm optimization (PSO) is used to find the optimal control pointsP0,P1,⋯,PN on the Bezier curve. Particle swarm optimization is an evolutionary computation technique. The standard PSO algorithm consists of three steps: (1) First, initialize a population of particles P0,P1,⋯,PN with random initial values within the solution space. (2) Evaluate the optimization fitness function JP0,P1,⋯,PN: the movements of the particles are guided based on the information of their own current best known position (local) and the swarm's current best known position (global). When better positions are found, these will then be chosen to lead the movement of the swarm. (3) This process is repeated generation by generation until satisfactory control points P0,P1,⋯,PN on the Bezier curve are eventually found.Suppose the position and the velocity of theith particle at iterationj are represented by pij and vij, respectively. The update velocity of the ith particle then consists of three parts: a momentum of its previous velocity vij, velocity increments according to its best local pi,bestj, and the best global position gi,bestj. Their updates can be expressed as follows as determined by the PSO algorithm:(22)vij+1=wvij+c1r1pi,bestj-pij+c2r2gi,bestj-pijpij+1=pij+vij+1,i=1,2,⋯,mwhere m is the size of the populations. c1 and c2 are positive constants called learning factors and r1 and r2 are the uniformly distributed values in the interval [0,1]. The coefficient w is an inertia weight factor which effectively controls the scope of the search. A lower inertia weight leads to better exploitation, whilst a higher inertia weight implies better exploration of new search areas. Thus, the linear decrease of inertia weight from 0.9 to 0.4 during iteration ensures an efficient balancing between the global and local search.


### 3.4. Combining the Particle Swarm Optimization Algorithm and the Bezier Curve Method

The trolley’s displacement is generated by a Bezier curve as shown in Figure2. The points in Figure 2 are the control points for the Bezier curve, and the vertical coordinate values of each of the control points can be changed to generate a Bezier curve with a different shape, so as to obtain different acceleration curves for the trolley. The particle swarm optimization algorithm is then used to optimize the shape of the Bezier curve from the initial population until the optimization process results can satisfy the given constraints.Trajectory planning for a trolley means finding a suitable displacement curve that will move an object from an initial position to the target position while satisfying certain constraints. In this paper, displacement curves are randomly directly generated through using the Bezier curve method, and then the PSO algorithm is used to obtain the optimum displacement curve which satisfies certain constraints. This hybrid optimization algorithm, which combines the PSO algorithm with the Bezier curve method, is abbreviated as the “PSO-BC” in this paper. The steps detailing this are summarized below.Step 1.
Rewrite the original problem equation (3) in a flat output space as (4) and then discretize the dynamic equation as in (8). The residual swing of the payload is affected by acceleration curve of the trolley.Step 2.
The control points of the Bezier curveP0,P1,⋯,PN are stochastically generated, and the Bezier curve is generated as the displacement curve of the trolley. The trolley’s acceleration can be obtained using the second-order derivative with respect to time for the trolley’s displacement, as in (11). In addition, the trolley’s acceleration is used as an input signal in (8). When the positions of the control points are moved, the shapes of acceleration curve of trolley also change.Step 3.
The control points of the Bezier curves are used as particles in the PSO algorithm. The size of the populations and the maximum number of iterationsitermax are given. The stopping criterion is whether the change between the current best particle fitness value and its previous one is smaller than a predefined value κ.Step 4.
Several constraints in (18) need to be satisfied when carrying out trajectory planning for the trolley. If these constraints are not met, the control points of Bezier curve need to be moved to make sure the trolley’s acceleration meets these constraints. The swing angle of the payload θiP0,P1,⋯,PN can be calculated according to (8). The objective function JP0,P1,⋯,PN which combines the maximum swing angle, the mean swing angle, and the normalized energy can be calculated as (21).Step 5.
In order to obtain optimal results, Particle Swarm Optimization is used to adjust the positions of the control points of the Bezier curve until the best control points are found. The best fitness valuegi,bestj needs to be compared with its previous one gi,bestj-1; if the change between the two is smaller than κ, then go to Step 6. If the results do not satisfy the precision requirement, then increase the number of Bezier curve control points, and go to Step 2, or else stop. This process is repeated generation by generation until a satisfactory solution gi,bestP0,P1,⋯,PN is eventually discovered.Step 6.
Obtain the optimal flat output variablesgi,best. Then, use those control points to generate the Bezier curve as the displacement curve for the trolley. Substitute the optimal Bezier curve into the system’s dynamic equation (8) and obtain the actual payload swing angle θP0,P1,⋯,PN using numerical integral calculations.


## 3.1. Using the Bezier Curve to Generate Trolley Acceleration

According to (8), the acceleration curve of the trolley directly impacts the residual swing of the payload. Generating an appropriate acceleration curve for a trolley can help to suppress the residual swing of the payload. A Bezier curve is defined by several control points and it always passes through the first and the final control points, and its shape can be altered by moving the control points. A two-dimensional Bezier curve of order N is represented as(9)xτ=∑i=0NCNiτi1-τN-iPi=∑i=0NN!N-i!i!τi1-τN-iPi,τ∈0,1where τ is a parameter and xτ is a two-dimensional Bezier curve generated by the control points P0,P1,⋯,PN and is used as the horizontal displacement curve for a trolley.Equation (9) is a parametric equation of the trolley’s horizontal displacement curve. Since τ is the normalized time, for the trajectory execution time T1=te-ts, we define t=ts+τ·T1, where ts is the starting time of the first point P0 and te is the finishing time of last point PN.The velocity of the trolley can be obtained by using the first-order derivatives with respect to timet [27] and is shown as(10)x˙t=dxdτdτdt=NT1∑i=0N-1CN-1it-tsT1i1-t-tsT1N-i-1Pi+1-PiThe acceleration of the trolley can be obtained by using the second-order derivatives with respect to timet and is shown as (11)x¨t=d2x/dτ2dt/dτ-dx/dτd2t/dτ2dt/dτ3=NN-1T12∑i=0N-2CN-2it-tsT1i1-t-tsT1N-i-2Pi+2-2Pi+1+Piwhere CNi=N!/N-i!i! is the binomial coefficient of order N.The following properties of Bezier curves render them particularly suitable for trajectory generation:( 1 ) Bezier curves start at the first point P0 and end at the last point PN. They are continuous at any degree.( 2 ) The vectors tangential to the Bezier curves at the start and end points are parallel to the line that connects the first two (P0 and P1) and last two control points (PN and PN-1), respectively.According to (10) and (11), the velocity and acceleration of the trolley at the start point P0 and the end point PN are (12)x˙ts=NT1P1-P0(13)x˙te=NT1PN-PN-1(14)x¨ts=NN-1T12P2-2P1+P0(15)x¨te=NN-1T12PN-2PN-1+PN-2When a single Bezier curve is used for trajectory planning, there are several reasons why it may not be able to converge into a suitable trajectory for a trolley’s displacement. A Bezier curve constructed from numerous control points is numerically unstable; and moving one control point can alter the global shape of the curve. To overcome this problem, the entire Bezier curve is constructed though smoothly connecting several piecewise Bezier curves.In order to make the Bezier curve continuous and smooth at the connection points, we mainly focused on assuring the continuity of the first-order derivative and second-order derivative at the waypoints connecting the two curves. Figure2 gives an example of the displacement for a trolley curve connected by two Bezier curves. The abscissa is time, and the vertical coordinate is the displacement of the trolley. The points in Figure 2 are the control points of the Bezier curve, and the vertical coordinates of each control point can be changed to generate a Bezier curve with a different shape, so as to obtain different acceleration curves for the trolley. The two curves meet at a shared end point, termed the curve “midpoint”. In order to ensure that the curve is smooth at the midpoint, the velocity and acceleration of the trolley at the midpoint of the two piecewise Bezier curves need to be equal. According to (12)~(15), we can obtain(16)NT1PN-PN-1=NT1PN+1-PN(17)NN-1T12PN-2PN-1+PN-2=NN-1T12PN+2-2PN+1+PNFigure 2
The displacement curve of a trolley connected by two piecewise Bezier curves.For a curve constructed ofn segments Bezier curves and where the second-order derivative is continuous, n(N-3)+3 points are needed to shape the curve. As every point has two parameters, which includes the abscissa values and the ordinate values, 2n(N-3)+6 independent parameters are required for this kind of Bezier curve.The shape of the Bezier curve is significantly affected by the position of the control points(P0,P1,⋯,PN). The Bezier curve is generated as the trolley displacement and trolley acceleration can be calculated according to its displacement as in (9) and (11). Meanwhile, the residual swing of the payload is calculated by the trolley’s acceleration according to (8). In other words, the residual swing of the payload θ is a function of the control points (P0,P1,⋯,PN), which can be defined as θP0,P1,⋯,PN, and the residual swing of the payload can be suppressed through generating suitable control points on the Bezier curve.


## 3.2. The Constraints and Cost Functions of Trajectory Planning

### 3.2.1. Constraints

According to the practical experience of operating an overhead crane, the following constraints need to be considered when carrying out trajectory planning for the trolley. The trolley reaches the desired locationpd within a finite time te. The maximum permitted payload swing, trolley velocity, and trolley acceleration all need to be kept within acceptable limits. There should be no swing when the trolley stops at the destination. That is,(18)xte=pd,∀t≥tex˙t≤vmax,x¨t≤amaxθt≤θmaxθte=0,x¨te=0v m a x and amax are the permitted maximum velocity and the acceleration of trolley, respectively. θmax is the maximum allowable swing amplitude.


### 3.2.2. Objective Functions

The energy of the payload is an important indicator for evaluating payload swing. The kinetic energy and potential energy of the payload are(19)E=12mplθ˙2+mpgl1-cos⁡θThe normalized total energy of the payload is(20)E-=Empgl=l2gθ˙2+1-cos⁡θThe objective function of trajectory planning is to ensure safety during the horizontal transportation of the payload. The safety of an overhead crane can be reflected in the following three metrics: the maximum swing angle of the payload, the mean swing angle of the payload, and the normalized energy of the payload at the finish timete. The objective function which combines three of the metrics is(21)JP0,P1,⋯,PN=min⁡amaxi∈1,2,⋯,kθiP0,P1,⋯,PN+1-a∑i=1kθiP0,P1,⋯,PNk+βE-kk is the number of samples in the evaluated planning period. θiP0,P1,⋯,PN is the payload swing angle at the ith period when the control points on the Bezier curve are P0,P1,⋯,PN. The first component is the maximum swing angle, and the second component is the mean swing angle of the payload. The third component guarantees the value of the payload’s swing angle is kept small when the trolley moves to the desired location. The weight coefficient a is set at 0.5 in this paper, and the weight coefficient β is set at 25. The optimal variables are the control point’s locations P0,P1,⋯,PN on the Bezier curve.


## 3.2.1. Constraints

According to the practical experience of operating an overhead crane, the following constraints need to be considered when carrying out trajectory planning for the trolley. The trolley reaches the desired locationpd within a finite time te. The maximum permitted payload swing, trolley velocity, and trolley acceleration all need to be kept within acceptable limits. There should be no swing when the trolley stops at the destination. That is,(18)xte=pd,∀t≥tex˙t≤vmax,x¨t≤amaxθt≤θmaxθte=0,x¨te=0v m a x and amax are the permitted maximum velocity and the acceleration of trolley, respectively. θmax is the maximum allowable swing amplitude.


## 3.2.2. Objective Functions

The energy of the payload is an important indicator for evaluating payload swing. The kinetic energy and potential energy of the payload are(19)E=12mplθ˙2+mpgl1-cos⁡θThe normalized total energy of the payload is(20)E-=Empgl=l2gθ˙2+1-cos⁡θThe objective function of trajectory planning is to ensure safety during the horizontal transportation of the payload. The safety of an overhead crane can be reflected in the following three metrics: the maximum swing angle of the payload, the mean swing angle of the payload, and the normalized energy of the payload at the finish timete. The objective function which combines three of the metrics is(21)JP0,P1,⋯,PN=min⁡amaxi∈1,2,⋯,kθiP0,P1,⋯,PN+1-a∑i=1kθiP0,P1,⋯,PNk+βE-kk is the number of samples in the evaluated planning period. θiP0,P1,⋯,PN is the payload swing angle at the ith period when the control points on the Bezier curve are P0,P1,⋯,PN. The first component is the maximum swing angle, and the second component is the mean swing angle of the payload. The third component guarantees the value of the payload’s swing angle is kept small when the trolley moves to the desired location. The weight coefficient a is set at 0.5 in this paper, and the weight coefficient β is set at 25. The optimal variables are the control point’s locations P0,P1,⋯,PN on the Bezier curve.


## 3.3. Particle Swarm Optimization

Particle swarm optimization (PSO) is used to find the optimal control pointsP0,P1,⋯,PN on the Bezier curve. Particle swarm optimization is an evolutionary computation technique. The standard PSO algorithm consists of three steps: (1) First, initialize a population of particles P0,P1,⋯,PN with random initial values within the solution space. (2) Evaluate the optimization fitness function JP0,P1,⋯,PN: the movements of the particles are guided based on the information of their own current best known position (local) and the swarm's current best known position (global). When better positions are found, these will then be chosen to lead the movement of the swarm. (3) This process is repeated generation by generation until satisfactory control points P0,P1,⋯,PN on the Bezier curve are eventually found.Suppose the position and the velocity of theith particle at iterationj are represented by pij and vij, respectively. The update velocity of the ith particle then consists of three parts: a momentum of its previous velocity vij, velocity increments according to its best local pi,bestj, and the best global position gi,bestj. Their updates can be expressed as follows as determined by the PSO algorithm:(22)vij+1=wvij+c1r1pi,bestj-pij+c2r2gi,bestj-pijpij+1=pij+vij+1,i=1,2,⋯,mwhere m is the size of the populations. c1 and c2 are positive constants called learning factors and r1 and r2 are the uniformly distributed values in the interval [0,1]. The coefficient w is an inertia weight factor which effectively controls the scope of the search. A lower inertia weight leads to better exploitation, whilst a higher inertia weight implies better exploration of new search areas. Thus, the linear decrease of inertia weight from 0.9 to 0.4 during iteration ensures an efficient balancing between the global and local search.


## 3.4. Combining the Particle Swarm Optimization Algorithm and the Bezier Curve Method

The trolley’s displacement is generated by a Bezier curve as shown in Figure2. The points in Figure 2 are the control points for the Bezier curve, and the vertical coordinate values of each of the control points can be changed to generate a Bezier curve with a different shape, so as to obtain different acceleration curves for the trolley. The particle swarm optimization algorithm is then used to optimize the shape of the Bezier curve from the initial population until the optimization process results can satisfy the given constraints.Trajectory planning for a trolley means finding a suitable displacement curve that will move an object from an initial position to the target position while satisfying certain constraints. In this paper, displacement curves are randomly directly generated through using the Bezier curve method, and then the PSO algorithm is used to obtain the optimum displacement curve which satisfies certain constraints. This hybrid optimization algorithm, which combines the PSO algorithm with the Bezier curve method, is abbreviated as the “PSO-BC” in this paper. The steps detailing this are summarized below.Step 1.
Rewrite the original problem equation (3) in a flat output space as (4) and then discretize the dynamic equation as in (8). The residual swing of the payload is affected by acceleration curve of the trolley.Step 2.
The control points of the Bezier curveP0,P1,⋯,PN are stochastically generated, and the Bezier curve is generated as the displacement curve of the trolley. The trolley’s acceleration can be obtained using the second-order derivative with respect to time for the trolley’s displacement, as in (11). In addition, the trolley’s acceleration is used as an input signal in (8). When the positions of the control points are moved, the shapes of acceleration curve of trolley also change.Step 3.
The control points of the Bezier curves are used as particles in the PSO algorithm. The size of the populations and the maximum number of iterationsitermax are given. The stopping criterion is whether the change between the current best particle fitness value and its previous one is smaller than a predefined value κ.Step 4.
Several constraints in (18) need to be satisfied when carrying out trajectory planning for the trolley. If these constraints are not met, the control points of Bezier curve need to be moved to make sure the trolley’s acceleration meets these constraints. The swing angle of the payload θiP0,P1,⋯,PN can be calculated according to (8). The objective function JP0,P1,⋯,PN which combines the maximum swing angle, the mean swing angle, and the normalized energy can be calculated as (21).Step 5.
In order to obtain optimal results, Particle Swarm Optimization is used to adjust the positions of the control points of the Bezier curve until the best control points are found. The best fitness valuegi,bestj needs to be compared with its previous one gi,bestj-1; if the change between the two is smaller than κ, then go to Step 6. If the results do not satisfy the precision requirement, then increase the number of Bezier curve control points, and go to Step 2, or else stop. This process is repeated generation by generation until a satisfactory solution gi,bestP0,P1,⋯,PN is eventually discovered.Step 6.
Obtain the optimal flat output variablesgi,best. Then, use those control points to generate the Bezier curve as the displacement curve for the trolley. Substitute the optimal Bezier curve into the system’s dynamic equation (8) and obtain the actual payload swing angle θP0,P1,⋯,PN using numerical integral calculations.


## 4. Numerical Simulation

In this section, some numerical simulations were carried out to verify the validity of the proposed PSO-BC trajectory planning scheme. The physical parameters of the simulated overhead system were listed as follows:(23)mp=1.025kg,mc=7kg,l=0.75m,g=9.8m/s2The desired trolley locationpd in the simulation ranged from 0.6m to 4 m, and the practical constraints were given as(24)vmax=0.4m/s,amax=1.2m/s2,θmax=5deg,ts=0s,tf=10s.The trolley’s displacement was generated using a fifth-order Bezier curve with 6 control pointsP0,P1,P2,P3,P4,P5. In this paper, we connected 4 segments of the Bezier curves to create the trolley’s displacement curve, and the total number of control points for the Bezier curve was 21. The parameters involved for the PSO-BC were listed as follows: the population size for the simulation experiments was fixed at 100, and itermax=50, c1=c2=2,Table1 gives the optimized control point positions of the Bezier curve when the initial swing angle θ0 and the desired location pd are given values. Take the first row as an example: when the desired location of the trolley is 0.6 meters and the initial swing angle of the payload is -0.087 rad, then the control points of the optimal Bezier curve are (0, 0, 0, 0.065, 0, 0.055, 0.109, 0.283, 0.600, 0.461, 0.600, 0.739, 1.155, 0.045, 0.177, 0.322, 0.467, 0.626, 0.6, 0.6, 0.6).Table 1
The control points of the optimal Bezier curve.
p d (m) θ 0 (rad) Control points of the optimal Bezier curvegbest (P1,P2,...,P21) 0.6 -0.087 (0, 0, 0, 0.065, 0, 0.055, 0.109, 0.283, 0.600, 0.461, 0.600, 0.739, 1.155, 0.045, 0.177, 0.322, 0.467, 0.626, 0.6, 0.6, 0.6) 1 -0.087 (0, 0, 0.091, -0.223, -0.018, 0.278, 0.574, 0.96, 0.449, 0.66, 0.79, 0.920, 0.970, 0.754, 0.907, 0.808, 0.710, 0.361, 0.875, 1, 1) 1.4 -0.087 (0, 0.005, 0, 0, 0.281, 0.440, 0.599, 0.635, 1.400, 1.400, 1.400, 1.400, 1.400, 1.400, 1.400, 1.400, 1.400, 1.400, 1.4, 1.4, 1.4)(0, 0.009, 0, 0, 0.096, 0.516, 0.935, 1.678, 0.924, 1.363, 1.589, 1.814, 1.826, 1.800, 1.799, 1.800, 1.801, 1.803, 1.8, 1.8, 1.8) 1.8 -0.087 2.2 -0.087 (0, 0, 0, 0, 0.016, 0.424, 0.832, 1.634, 1.354, 1.588, 1.711, 1.835, 1.850, 2.200, 2.200, 2.194, 2.187, 2.175, 2.2, 2.2, 2.2) 2.6 -0.087 (0, 0, 0, 0, 0, 0.332, 0.663, 1.326, 1.313, 1.368, 1.578, 1.788, 2.153, 2.367, 2.104, 2.171, 2.237, 2.634, 2.6, 2.6, 2.6) 3 -0.087 (0, 0, 0, 0, 0.239, 0.746, 1.253, 2.028, 1.371, 1.824, 2.177, 2.530, 2.782, 2.926, 2.787, 2.809, 2.830, 3.014, 3, 3, 3) 3.4 -0.087 (0, 0.3, 0, 0.877, 1.004, 1.509, 2.013, 2.895, 0.661, 3.171, 3.400, 3.629, 1.578, 3.4, 3.4, 3.4, 3.4, 3.4, 3.4, 3.4, 3.4) 3.8 -0.087 (0, 0, 0.001, 0, 0.145, 0.515, 0.886, 1.483, 1.844, 1.764, 2.103, 2.441, 3.199, 3.304, 2.975, 3.114, 3.253, 3.861, 3.8, 3.8, 3.8) 4 -0.087 (0, 0, 0, 0.886, 0.927, 1.055, 1.183, 1.397, 1.713, 2.040, 2.468, 2.897, 3.428, 3.196, 2.839, 2.874, 2.909, 3.337, 4, 4, 4) 0.6 0 (0, 0, 0.132, 0, 0.108, 0.162, 0.217, 0.217, 0.331, 0.381, 0.426, 0.471, 0.511, 0.581, 0.579, 0.600, 0.621, 0.664, 0.6, 0.6, 0.6) 1 0 (0, 0.056, 0.113, 0.167, 0.227, 0.29, 0.353, 0.419, 0.518, 0.531, 0.6, 0.671, 0.799, 0.715, 0.828, 0.867, 0.907, 0.874, 1, 1, 1) 1.4 0 (0, 0, 0, 0.026, 0, 0.048, 0.097, 0.220, 0.257, 0.413, 0.494, 0.574, 0.579, 0.983, 0.981, 1.040, 1.099, 1.219, 1.4, 1.4, 1.4) 1.8 0 (0, 0.13, 0.271, 0.444, 0.541, 0.688, 0.835, 1.033, 1, 1.201, 1.314, 1.426, 1.47, 1.644, 1.647, 1.678, 1.7, 1.768, 1.8, 1.8, 1.8) 2.2 0 (0, 0.24, 0.446, 0.687, 1.03, 1.152, 1.272, 1.165, 2.2, 1.743, 1.863, 1.983, 2.679, 1.74, 2.08, 2.187, 2.29, 2.168, 2.2, 2.2, 2.2) 2.6 0 (0, 0.19, 0.38, 0.599, 0.756, 0.96, 1.168, 1.423, 1.523, 1.705, 1.855, 2, 2.123, 2.308, 2.354, 2.41, 2.469, 2.538, 2.6, 2.6, 2.6) 3 0 (0, 0.411, 0.832, 1.149, 1.503, 1.787, 2.071, 2.286, 2.636, 2.637, 2.750, 2.862, 3.087, 2.998, 3, 3, 3, 2.998, 3, 3, 3) 3.4 0 (0, 0.359, 0.717, 1.047, 1.457, 1.68, 1.905, 1.94, 3.185, 2.642, 2.83, 3.02, 3.942, 2.58, 3.235, 3.4, 3.565, 3.239, 3.4, 3.4, 3.4) 3.8 0 (0, 0.466, 1.07, 0.688, 1.887, 2.15, 2.418, 1.749, 3.754, 3.04, 3.295, 3.546, 4.759, 2.714, 3.543, 3.78, 4, 3.667, 3.8, 3.8, 3.8) 4 0 (0, 0.393, 0.718, 1.23, 1.498, 1.907, 2.316, 2.866, 2.647, 3.142, 3.399, 3.657, 3.677, 4, 3.930, 3.999, 4.069, 4.277, 4, 4, 4)Figure3 shows the corresponding simulation results when the desired location of trolley is at 0.6 m and the initial swing angle of payload is set to zero. Figure 3(a) is the optimized displacement of the trolley which is generated by the control points of the Bezier curve. The initial location of trolley is zero, and the desired location of trolley is 0.6 m. The red square points are the control points of the Bezier curve. The PSO-BC algorithm successfully found a solution gbest[0,0,0.132,0,0.108,0.162,0.217,0.217,0.331,0.381, 0.426,0.471,0.511,0.582,0.579,0.600,0.621,0.664,0.6, 0.6,0.6] that fulfils all the constraints. It is made up of four sections of the five-order Bezier curve. Figure 3(b) is the acceleration of the trolley calculated using (11), and the acceleration of the trolley is continuous at every midpoint. Figure 3(c) is the swing angle of the payload; the initial swing angle is zero, and the final swing angle is zero. There is no residual swing when the trolley stops at the destination. Figure 3(d) is the normalized energy of the payload which is an indicator of the swing energy of payload. The normalized energy of the payload rises dramatically at the beginning and drops down to zero when the trolley moves to the desired location.Figure 3
The results of the proposed trajectory planning for when the desired location of the trolley is set at 0.6m. (a) The trolley’s displacement and control points of the Bezier curve; (b) the trolley’s acceleration; (c) the swing angle of the payload; (d) the normalized energy of the payload.
(a) (b) (c) (d)Figure4 shows the corresponding simulation results when the desired location of the trolley is at 4 m and the initial swing angle of the payload is at 5 degrees. The red square points of Bezier curve are [0,0,0,0.886,0.927,1.055,1.183,1.397,1.713,2.040,2.468, 2.897,3.428,3.196,2.839,2.874,2.909,3.337,4,4,4]. At the beginning, the normalized energy of the payload is quite large, because the payload has an initial angle as shown in Figure 4(c). The normalized energy of the payload drops rapidly when the trolley moves to the desired location.Figure 4
The results of the proposed trajectory planning for when the desired location of trolley is set at 4m. (a) The trolley’s displacement and control points on the Bezier curve; (b) the trolley’s acceleration; (c) the swing angle of the payload; (d) the normalized energy of the payload.
(a) (b) (c) (d)Figure5 shows the convergences of the best fitness functions versus the number of iterations for the two PSO simulations. The fitness values decrease fairly rapidly which shows the searching power of the PSO-BC algorithm.Figure 5
The convergence of the best fitness evaluations (a) for when the desired location of the trolley ispd=0.6m and the initial angle is zero and (b) for when the desired location of the trolley is pd=4m and the initial angle is 5 degrees.
(a) (b)We presented two groups of numerical simulation results for the proposed PSO-BC scheme, as compared to existing approaches such as the online trajectory generating method (OTGM) [16] and the phase plane-based trajectory planning method (PPBM) [15]. The phase plane-based planning method (PPBM) does not take into account the bounded jerk constraint.For the first simulation, we supposed that the initial angle of the payload was zero. Figure6 shows a comparison of the simulation results for the various methods, which includes the OTGM, PPBM, and the proposed PSO-BC methods. Figure 6(a) shows the trolley displacement graphs for the three input signals. Figure 6(b) depicts the acceleration graphs for the trolleys. Figure 6(c) shows the payload swing angle curve graphs where the residual oscillations of the payloads are essentially suppressed after 10 seconds. Figure 6(d) shows the normalized energy change diagrams for the payloads, where the energies of the payloads are suppressed after 10 seconds of oscillation. It is clearly seen that all the trolleys reach their target positions accurately and the maximum accelerations of the trolleys are kept under the physical constraints during the overall transfer processes. It is also seen that the maximum payload swing angles never exceed the permitted range of 5 degrees, and there is no residual swinging when the trolley stops at the destination. However, it should be noted that although the PPBM control system shows the fastest convergence speed to the desired location, its maximum swing angle is larger than those of the other two methods during the planning process. The normalized energy graph of the PPBM control system in Figure 6(d) has four peaks which are nearly twice as large as the proposed PSO-BC method.Figure 6
A comparison of the proposed methods and the existing approaches for when the desired location of the trolley is at 3m. (a) The trolley displacements and the control points of the Bezier curves; (b) the trolley accelerations; (c) the swing angles of the payloads; (d) the normalized energies of the payloads.
(a) (b) (c) (d)Similarly, Figure7 shows the simulation results for the three input signals when the trolley’s desired position is at 1 meter. The control points for the optimal Bezier curve are (0, 0.056, 0.113, 0.167, 0.227, 0.29, 0.353, 0.419, 0.518, 0.531, 0.6, 0.671, 0.799, 0.715, 0.828, 0.867, 0.907, 0.874, 1, 1, 1). In Figure 7(a), all the three control methods reach the desired position, but the OTGM, PPBM methods are faster than the proposed PSO-BC method. The trolley’s acceleration in the proposed PSO-BC method is larger than that of the other two input signals for a short time. Figures 7(c) and 7(d) indicate that the maximum angle of the payload and the normalized energy graph for the proposed PSO-BC method is much smaller than that of the OTGM and PPBM methods, respectively.Figure 7
A comparison of the proposed methods and the existing approaches for when the desired location of trolley is at 1m. (a) The trolley displacements and control points of the Bezier curves; (b) the trolley accelerations; (c) the swing angles of the payloads; (d) the normalized energies of the payloads.
(a) (b) (c) (d)For each compared trajectory in Figures6 and 7, the results for the maximum swing angles and the average swing angles are listed in Table 2. The first three columns of Table 2 are the results for when the desired position of trolley is at 3 meters. The second three columns of Table 2 are the results for when the desired position of trolley is at 1 meter. It is seen that when the same state and control constraints are used, the proposed PSO-BC method is more efficient than that of the other two methods and its optimal-swing trajectory has the smallest maximal swing angle of 0.0136 rad. Although the average swing of its optimal 3-meter trajectory is larger than the OTGM and PPBM methods, the maximum swing value of the PSO-BC method is the smallest amongst the compared trajectories.Table 2
A comparison of the maximum swing angles and average angles.
trajectory PSO-BC OTGM PPBM PSO-BC∗ OTGM∗ PPBM∗ Maximum swing angle (rad) 0.0494 0.0882 0.0872 0.0136 0.0363 0.0872 Average angle (rad) 0.0249 0.0247 0.0194 0.0047 0.0089 0.0193To further verify that the proposed PSO-BC method works well for any initial state, we carried out a second simulation for when the initial swing angles were not set at zero. The initial configurations were selected asq0=[0,0,5(deg),0] and the other constraints were the same as those in (18). The PPBM method was unable to be directly used when the initial swing angle was not zero and so only the OTGM and the proposed PSO-BC methods were compared.Figure8 depicts the simulation results for the positions of the trolley, the trolley accelerations, the swing angles of the payloads, and the normalized energies of the payloads. Both the proposed PSO-BC method and the OTGM method were successful in reaching the target configurations when there were different starting angles. Figure 8(a) shows that the trolley using the OTGM method reached the destination position much faster than that of the proposed PSO-BC method. As shown in Figure 8(d), the normalized energy peak for the OTGM method was larger than that of the proposed PSO-BC method. This simulation demonstrates that the proposed approach could potentially act as an online trajectory planner, for when the initial state was a nonstatic system state. It is promising that, in a real-time online implementation of the proposed PSO-BC method, it is able to suppress payload swing.Figure 8
A comparison of the proposed methods and the existing approaches for when the desired location of the trolley is set at 3m. (a) The trolley displacements and control points of the Bezier curves; (b) the trolley accelerations; (c) the swing angles of the payloads; (d) the normalized energies of the payloads.
(a) (b) (c) (d)Figure9 shows the simulation results for when the trolleys desired position was set at 1 meter and the initial swing angle was negative 5 degrees. The control points of the PSO-BC method are (0, 0, 0.091, -0.223, -0.018, 0.278, 0.574, 0.960, 0.449, 0.660, 0.790, 0.920, 0.970, 0.754, 0.907, 0.808, 0.710, 0.361, 0.875, 1, 1). Figure 9(b) shows that the trolley’s acceleration in the OTGM method was smoother than that of the proposed PSO-BC method. In Figure 9(d), the maximum normalized energy of the OTGM method was larger than that of the proposed PSO-BC method.Figure 9
A comparison of the proposed methods and the existing approaches for when the desired locations of the trolleys are set at 1m. (a) The trolley displacements and control points of Bezier curves; (b) the trolley accelerations; (c) the swing angles of the payloads; (d) the normalized energies of the payloads.
(a) (b) (c) (d)The OTGM method and the proposed PSO-BC method are two different control schemes for trolley trajectory planning, each having its own set of advantages and disadvantages. For the OTGM method, the trajectory commands are generated and applied to the system in real time. However, these control methods need accurate sensors to measure the trolley positions and velocities as well as the payload swing angles. In general, it is quite difficult to measure all this data in real time in an outdoor environment due to the vibrations of the overhead cranes. For the proposed PSO-BC method, the trajectory commands are calculated in advance of implementation. The advantages of this are that the trolley’s stopping time can be set as a parameter, and variables, such as payload swing angle and trolley acceleration, can be limited during the whole control process. Increasing the number of segments of the Bezier curves means that the curves can be used for more complex control methods. However, doing this will also increase the burden on the computer, as it will take longer to generate the multisegments of the Bezier curves. Meanwhile, the intelligent optimization algorithm should avoid falling for any local optimal solutions.In Figures6–8, the proposed PSO-BC method performed better than the OTGM method when measured by the normalized energy indicator but was worse in the trolley acceleration indicator measurement. This occurred because the objective function in (21) only combines three of the indicators: the mean swing angle of the payload, the maximum swing angle, and the normalized energy of the payload. Additionally, the proposed PSO-BC method performed better than the OTGM method in last two indicator measurements as seen in Figures 6–8. In future studies, other indicators should be added to the objective function in (21) to make the proposed PSO-BC method perform better.


## 5. Conclusion

This paper proposed a trajectory planning method based on the Bezier curve and particle swarm optimization to suppress payload swing. A five-order Bezier curve was used to generate the trolley’s displacement. The desired position of the trolley was set at the last control point in the Bezier curve, which guaranteed that the trolley would reach the desired position accurately. Furthermore, the acceleration of the trolley, which is a second-order derivative with respect to timet of the trolley’s displacement, was used as the input signal for the system. In order to make the Bezier curve more numerically stable, the entire Bezier curve was constructed from smoothly connected piecewise Bezier curves. The shape of the trolley’s displacement would also change whenever the control points on the Bezier curve changed their position. Particle swarm optimization was then used to find the optimal control points on the Bezier curve to make the trolley reach the desired position whilst suppressing the payload’s swing under the trolley’s velocity and acceleration constraints. Simulation results with comparisons to existing approaches were then presented to show the superior performance of the proposed PSO-BC method.The main results and conclusions were as follows:(1)
The desired position of the trolley was set as the last control point of the Bezier curve, which ensured that the trolley reached its desired position accurately.(2)
Using the control points of the Bezier curve as the swarm in the particle swarm optimization process meant that the optimized Bezier curve of the trolley’s displacement was found by the particle swarm optimization method which satisfied constraints such as velocity or acceleration limits. The trolley was able to be moved to its desired position accurately whilst its payload’s swing angle was kept to a minimum.(3)
Each optimization result could be stored as a data source, which could then be used as an initial parameter on the list of Bezier curve control points. As data sources increase, the iterative process of the particle swarm optimization process will become faster and faster. As the initial state could be any nonstatic system state, it would therefore be possible to implement the proposed PSO-BC method in real-time online.



---

*Source: 3129067-2018-08-30.xml*