# Data-Driven Identification of Crane Dynamics Using Regularized Genetic Programming

^{*}

## Abstract

**:**

_{0}-regularized regression results in a sparse solution, thereby also reducing model complexity as well as reducing the probability of overfitting. Identification is performed on experimental data obtained from a laboratory-scale overhead crane. The proposed method is compared with multi-gene genetic programming (MGGP), NARX neural network, and Takagi-Sugeno fuzzy (TSF) ARX models in terms of model complexity, prediction accuracy, and sensitivity. The G3P-SR algorithm evolved a model with a maximum mean square error (MSE) of crane velocity and sway prediction of 1.1860 × 10

^{−4}and 4.8531 × 10

^{−4}, respectively, in simulations for different testing data sets, showing better accuracy than the TSF ARX and MGGP models. Only the NARX neural network model with velocity and sway maximum MSEs of 1.4595 × 10

^{−4}and 4.8571 × 10

^{−4}achieves a similar accuracy or an even better one in some testing scenarios, but at the cost of increasing the total number of parameters to be estimated by over 300% and the number of output lags compared to the G3P-SR model. Moreover, the G3P-SR model is proven to be notably less sensitive, exhibiting the least deviation from the nominal trajectory for deviations in the payload mass by approximately a factor of 10.

## 1. Introduction

_{0}regularization is used for promoting sparse solutions, although an l

_{0}-regularized problem is nonconvex and proven to be NP-hard. The most popular regularization methods are based on easier-to-solve, convex relaxations of the l

_{0}norm such as the l

_{1}norm, e.g., Lasso or its hybrids introduced in the Elastic Net [32] and Fast Function Extraction (FFX) [33] algorithms.

_{1}and l

_{2}regularization into GP, this paper presents the G3P-SR approach with the l

_{0}norm for crane dynamic identification. To the best of the authors’ knowledge, the combination of genetic programming and l

_{0}regularization has been previously adapted only for a static regression problem [34], and other evolutionary sparse regression algorithms are based on a combination of the l

_{1}and l

_{2}penalties. An l

_{0}pseudo-norm penalty is added to the objective function, and the subsequent sparse regression problem is solved by using the monotonically accelerated proximal gradient descent algorithm [35]. The sparse solution reduces the model complexity and decreases the probability of overfitting. The model structure optimization and prediction accuracy over a time-horizon are established as the main goals of identification. G3P-SR is employed to establish an overhead crane dynamic model and predict the sway angle. The proposed method is compared with the NARX-NN and TSF-ARX models, since these approaches are mostly reported in the literature for the data-driven modeling of underactuated crane dynamics. The MGGP method is also included in the comparison since only this method has recently addressed crane dynamics’ identification [31]. A comparative study is performed in terms of the models’ complexity, prediction accuracy, and sensitivity. The experimental data used for identification are obtained from a laboratory overhead crane for different operating conditions. The main contribution of this paper are as follows:

- (1)
- A data-driven offline identification approach for underactuated crane dynamics is developed using an MGP approach called G3P-SR, which uses grammar-guided genetic programming to bias the search space to produce a fixed set of candidate functions for each individual in the population, while the model term selection as well as their coefficients are obtained via sparse l
_{0}regression. - (2)
- A comparative study is performed with an MGGP, an NARX-NN, and a TSF-ARX model in terms of model complexity, accuracy, uncertainty, and sensitivity.

## 2. Materials and Methods

#### 2.1. Grammar-Guided Genetic Programming

#### 2.2. Genetic Operators

#### 2.3. Regularization

_{0}-penalized linear least squares problem is used:

Algorithm 1: mAPG |

Input: $\varphi ,y,\lambda $ |

Initialize: $\rho <1,\delta ,{\mathit{z}}_{1}={\mathit{\theta}}_{1}={\mathit{\theta}}_{0},{t}_{1}={1,t}_{0}=0,k=1$ |

while not converged do |

$k\leftarrow k+1$ |

${w}_{k}={\theta}_{k}+\frac{{t}_{k-1}}{{t}_{k}}\left({z}_{k}-{\theta}_{k}\right)+\frac{{t}_{k-1}-1}{{t}_{k}}\left({\theta}_{k}-{\theta}_{k-1}\right)$ |

Initialize step size ${\eta}_{w}$ and ${\eta}_{\theta}$ using Barzilai-Borwein method |

while $F\left({z}_{k+1}\right)\ge F\left({w}_{k}\right)-\delta {\Vert {z}_{k+1}-{w}_{k}\Vert}_{2}^{2}$ do |

${z}_{k+1}=\mathrm{p}\mathrm{r}\mathrm{o}{\mathrm{x}}_{{\eta}_{w}\lambda {\Vert \xb7\Vert}_{0}}\left({w}_{k}-{\eta}_{w}\nabla f\left({w}_{k}\right)\right)$ |

${\eta}_{w}={\rho \eta}_{w}$ |

end while |

while $F\left({v}_{k+1}\right)\ge F\left({\theta}_{k}\right)-\delta {\Vert {v}_{k+1}-{\theta}_{k}\Vert}_{2}^{2}$ do |

${v}_{k+1}=\mathrm{p}\mathrm{r}\mathrm{o}{\mathrm{x}}_{{\eta}_{\theta}\lambda {\Vert \xb7\Vert}_{0}}\left({\theta}_{k}-{\eta}_{\theta}\nabla f\left({\theta}_{k}\right)\right)$ |

${\eta}_{\theta}={\rho \eta}_{\theta}$ |

end while |

${t}_{k+1}=\frac{\sqrt{4{t}_{k}^{2}+1}+1}{2}$ |

${\theta}_{k+1}=\left\{\begin{array}{c}{z}_{k+1}\\ {v}_{k+1}\end{array}\right.\begin{array}{l}\mathrm{i}\mathrm{f}F\left({z}_{k+1}\right)\le F\left({v}_{k+1}\right)\\ \mathrm{o}\mathrm{t}\mathrm{h}\mathrm{e}\mathrm{r}\mathrm{w}\mathrm{i}\mathrm{s}\mathrm{e}\end{array}$ |

end while |

Output: $\theta $ |

#### 2.4. NARX-NN and TSF-ARX Models

^{−7}, or the MSE on the validation data set increases six times consecutively.

## 3. Experiment and Results

#### 3.1. λ Hyperparameter Selection

#### 3.2. Comparison with MGGP

_{1}and T

_{2}, respectively, for the velocity and sway submodels are given in Figure 10 and Figure 11, respectively, while the boxplot for the number of model terms included in the models is given in Figure 12.

#### 3.3. Comparison with NARX-NN and TSF-ARX Models

#### 3.4. Sensitivity Analysis

## 4. Conclusions

## Author Contributions

## Funding

## Institutional Review Board Statement

## Informed Consent Statement

## Data Availability Statement

## Conflicts of Interest

## References

- Gavula, A.; Hubinský, P.; Babinec, A. Damping of Oscillations of a Rotary Pendulum System. Appl. Sci.
**2023**, 13, 11946. [Google Scholar] [CrossRef] - Tang, W.; Ma, R.; Wang, W.; Gao, H. Optimization-Based Input-Shaping Swing Control of Overhead Cranes. Appl. Sci.
**2023**, 13, 9637. [Google Scholar] [CrossRef] - Li, H.; Hui, Y.; Ma, J.; Wang, Q.; Zhou, Y.; Wang, H. Research on Variable Universe Fuzzy Multi-Parameter Self-Tuning PID Control of Bridge Crane. Appl. Sci.
**2023**, 13, 4830. [Google Scholar] [CrossRef] - Gao, P.; Wang, Z.; Zhang, Y.; Li, M. Prediction System for Overhead Cranes Based on Digital Twin Technology. Appl. Sci.
**2023**, 13, 4696. [Google Scholar] [CrossRef] - Abdel-Rahman, E.M.; Nayfeh, A.H.; Masoud, Z.N. Dynamics and Control of Cranes: A Review. J. Vib. Control.
**2003**, 9, 863–908. [Google Scholar] [CrossRef] - Ramli, L.; Mohamed, Z.; Abdullahi, A.M.; Jaafar, H.I.; Lazim, I.M. Control Strategies for Crane Systems: A Comprehensive Review. Mech. Syst. Signal Process.
**2017**, 95, 1–23. [Google Scholar] [CrossRef] - Mojallizadeh, M.R.; Brogliato, B.; Prieur, C. Modeling and Control of Overhead Cranes: A Tutorial Overview and Perspectives. Annu. Rev. Control
**2023**, 56, 100877. [Google Scholar] [CrossRef] - Wang, X.; Karimi, H.R.; Shen, M.; Liu, D.; Li, L.-W.; Shi, J. Neural network-based event-triggered data-driven control of disturbed nonlinear systems with quantized input. Neural Netw.
**2022**, 156, 152–159. [Google Scholar] [CrossRef] [PubMed] - Wang, X.; Sun, J.; Wang, G.; Allgöwer, F.; Chen, J. Data-driven control of distributed event-triggered network systems. IEEE CAA J. Autom. Sin.
**2023**, 10, 351–364. [Google Scholar] [CrossRef] - Yang, T.; Sun, N.; Chen, H.; Fang, Y. Adaptive optimal motion control of uncertain underactuated mechatronic systems with actuator constraints. IEEE/ASME Trans. Mechatron.
**2023**, 28, 210–222. [Google Scholar] [CrossRef] - Zhang, H.; Zhao, C.; Ding, J. Online reinforcement learning with passivity-based stabilizing term for real time overhead crane control without knowledge of the system model. Control Eng. Pract.
**2022**, 127, 105302. [Google Scholar] [CrossRef] - Bao, H.; Kang, Q.; An, J.; Ma, X.; Zhou, M. A Performance-Driven MPC Algorithm for Underactuated Bridge Cranes. Machines
**2021**, 9, 177. [Google Scholar] [CrossRef] - Ma, S.F.; Leylaz, G.; Sun, J.-Q. Identification of Differentially Flat Output of Underactuated Dynamic Systems. Int. J. Control
**2022**, 95, 114–125. [Google Scholar] [CrossRef] - Petrehuş, P.; Lendek, Z.; Raica, P. Fuzzy Modeling and Design for a 3D Crane. IFAC Proc. Vol.
**2013**, 46, 479–484. [Google Scholar] [CrossRef] - Smoczek, J. Experimental Verification of a GPC-LPV Method with RLS and P1-TS Fuzzy-based Estimation for Limiting the Transient and Residual Vibration of a Crane System. Mech. Syst. Signal Process.
**2015**, 62–63, 324–340. [Google Scholar] [CrossRef] - Shao, X.; Zhang, J.; Zhang, X. Takagi-Sugeno Fuzzy Modeling and PSO-Based Robust LQR Anti-Swing Control for Overhead Crane. Math. Probl. Eng.
**2019**, 2019, 4596782. [Google Scholar] [CrossRef] - Li, C.; Xia, Y.; Wang, W. H
_{∞}Output-Feedback Anti-Swing Control for a Nonlinear Overhead Crane System with Disturbances Based on T-S Fuzzy Model. IEEE Access.**2021**, 9, 135571–135584. [Google Scholar] [CrossRef] - Precup, R.-E.; Filip, H.-I.; Rădac, M.-B.; Petriu, E.M.; Preitl, S.; Dragoş, C.-A. Online Identification of Evolving Takagi–Sugeno–Kang Fuzzy Models for Crane Systems. Appl. Soft Comput.
**2014**, 24, 1155–1163. [Google Scholar] [CrossRef] - Precup, R.-E.; Hedrea, E.-L.; Roman, R.-C.; Petriu, E.M.; Bojan-Dragos, C.-A.; Szedlak-Stinean, A.-I.; Hedrea, C. Evolving Fuzzy and Tensor Product-based Models for Tower Crane Systems. In Proceedings of the IECON 2022—48th Annual Conference of the IEEE Industrial Electronics Society, Brussels, Belgium, 17–20 October 2022; pp. 1–6. [Google Scholar] [CrossRef]
- Yang, T.; Sun, N.; Chen, H.; Fang, Y. Neural Network-Based Adaptive Antiswing Control of an Underactuated Ship-Mounted Crane With Roll Motions and Input Dead Zones. IEEE Trans. Neural Netw. Learn. Syst.
**2020**, 31, 901–914. [Google Scholar] [CrossRef] - Tuan, L.A.; Cuong, H.M.; Trieu, P.V.; Nho, L.C.; Thuan, V.D.; Anh, L.V. Adaptive Neural Network Sliding Mode Control of Shipboard Container Cranes Considering Actuator Backlash. Mech. Syst. Signal Process.
**2018**, 112, 233–250. [Google Scholar] [CrossRef] - Zhu, H.; Ouyang, H.; Xi, H. Neural Network-Based Time Optimal Trajectory Planning Method for Rotary Cranes with Obstacle Avoidance. Mech. Syst. Signal Process.
**2023**, 185, 109777. [Google Scholar] [CrossRef] - Tuan, L.A. Neural Observer and Adaptive Fractional-Order Backstepping Fast-Terminal Sliding-Mode Control of RTG Cranes. IEEE Trans. Ind. Electron.
**2021**, 68, 434–442. [Google Scholar] [CrossRef] - Jakovlev, S.; Eglynas, T.; Voznak, M. Application of Neural Network Predictive Control Methods to Solve the Shipping Container Sway Control Problem in Quay Cranes. IEEE Access.
**2021**, 9, 78253–78265. [Google Scholar] [CrossRef] - Rincon, L.; Kubota, Y.; Venture, G.; Tagawa, Y. Inverse Dynamic Control via “Simulation of Feedback Control” by Artificial Neural Networks for a Crane System. Control Eng. Pract.
**2020**, 94, 104203. [Google Scholar] [CrossRef] - Çakan, A.; Önen, Ü. Anti-Swing Control of an Overhead Crane by Using Genetic Algorithm Based LQR. Int. J. Eng. Comput. Sci.
**2017**, 6, 21612–21616. [Google Scholar] [CrossRef] - Smoczek, J.; Szpytko, J. Evolutionary Algorithm-Based Design of a Fuzzy TBF Predictive Model and TSK Fuzzy Anti-Sway Crane Control System. Eng. Appl. Artif. Intell.
**2014**, 28, 190–200. [Google Scholar] [CrossRef] - Zhu, X.; Wang, N. Hairpin RNA Genetic Algorithm Based ANFIS for Modeling Overhead Cranes. Mech. Syst. Signal Process.
**2022**, 165, 108326. [Google Scholar] [CrossRef] - Searson, D.P. GPTIPS 2: An Open-Source Software Platform for Symbolic Data Mining. In Handbook of Genetic Programming Applications; Gandomi, A.H., Alavi, A.H., Ryan, C., Eds.; Springer International Publishing: Cham, Switzerland, 2015; pp. 551–573. [Google Scholar] [CrossRef]
- La Cava, W.; Moore, J.H. Semantic Variation Operators for Multidimensional Genetic Programming. In Proceedings of the Genetic and Evolutionary Computation Conference, Melbourne, VIC, Australia, 14–18 July 2024; pp. 1056–1064. [Google Scholar] [CrossRef]
- Kusznir, T.; Smoczek, J. Multi-Gene Genetic Programming-Based Identification of a Dynamic Prediction Model of an Overhead Traveling Crane. Sensors
**2022**, 22, 339. [Google Scholar] [CrossRef] - Zou, H.; Hastie, T. Regularization and Variable Selection via the Elastic Net. J. R. Stat. Soc. B Stat.
**2005**, 67, 301–320. [Google Scholar] [CrossRef] - McConaghy, T. FFX: Fast, Scalable, Deterministic Symbolic Regression Technology. In Genetic Programming Theory and Practice IX. Genetic and Evolutionary Computation; Riolo, R., Vladislavleva, E., Moore, J., Eds.; Springer: New York, NY, USA, 2011; pp. 235–260. [Google Scholar] [CrossRef]
- Kusznir, T.; Smoczek, J. Soft-Computing-Based Estimation of a Static Load for an Overhead Crane. Sensors
**2023**, 23, 5842. [Google Scholar] [CrossRef] - Li, H.; Lin, Z. Accelerated Proximal Gradient Methods for Nonconvex Programming. In Proceedings of the 28th International Conference on Neural Information Processing Systems, Montreal, QC, Canada, 7–12 December 2015; pp. 379–387. [Google Scholar]
- Muñoz, L.; Trujillo, L.; Silva, S. Transfer Learning in Constructive Induction with Genetic Programming. Genet. Program. Evolvable Mach.
**2020**, 21, 529–569. [Google Scholar] [CrossRef] - Whigham, P. Grammatically-Based Genetic Programming. In Proceedings of the Workshop on Genetic Programming: From Theory to Real-World Applications, Morgan Kaufmann, San Mateo, CA, USA, June 1995; pp. 33–41. [Google Scholar]
- Luke, S. Two Fast Tree-Creation Algorithms for Genetic Programming. IEEE Trans. Evol. Comput.
**2000**, 4, 274–283. [Google Scholar] [CrossRef] - Natarajan, B.K. Sparse Approximate Solutions to Linear Systems. SIAM J. Comput.
**1995**, 24, 227–234. [Google Scholar] [CrossRef] - Schaeffer, H.; Tran, G.; Ward, R. Extracting Sparse High-Dimensional Dynamics from Limited Data. SIAM J. Appl. Math.
**2018**, 78, 3279–3295. [Google Scholar] [CrossRef] - Zheng, P.; Askham, T.; Brunton, S.L.; Kutz, J.N.; Aravkin, A.Y. A Unified Framework for Sparse Relaxed Regularized Regression: SR3. IEEE Access
**2019**, 7, 1404–1423. [Google Scholar] [CrossRef] - Beck, A.; Teboulle, M. Fast Gradient-Based Algorithms for Constrained Total Variation Image Denoising and Deblurring Problems. IEEE Trans. Image Process.
**2009**, 18, 2419–2434. [Google Scholar] [CrossRef] - Johnson, M.E.; Moore, L.M.; Ylvisaker, D. Minimax and Maximin Distance Designs. J. Stat. Plan. Inference
**1990**, 26, 131–148. [Google Scholar] [CrossRef]

**Figure 8.**Overhead crane dynamic model composed of two submodels, denoted as velocity and sway models.

**Figure 10.**Boxplots of velocity RMSE from 15 runs: (

**a**) 1-step-ahead prediction, (

**b**) 10-step-ahead prediction, and (

**c**) 20-step-ahead prediction.

**Figure 11.**Boxplots of sway RMSE for (

**a**) 1-step-ahead prediction, (

**b**) 10-step-ahead prediction, and (

**c**) 20-step-ahead prediction.

**Figure 13.**Prediction and simulation of crane velocity for testing data (operating point l = 1.7 [m], m = 10 [kg]): (

**a**) 10-step-ahead prediction, (

**b**) 20-step-ahead prediction, and (

**c**) simulation.

**Figure 14.**Prediction and simulation of crane velocity for testing data (operating point l = 1.1 [m], m = 50 [kg]): (

**a**) 10-step-ahead prediction, (

**b**) 20-step-ahead prediction, and (

**c**) simulation.

**Figure 15.**Velocity model population statistics: (

**a**) MSE for training and validation set, (

**b**) population mean, and (

**c**) population standard deviation.

**Figure 16.**Prediction and simulation of payload sway for testing data (operating point l = 1.7 [m], m = 10 [kg]): (

**a**) 10-step-ahead prediction, (

**b**) 20-step-ahead prediction, and (

**c**) simulation.

**Figure 17.**Prediction and simulation of payload sway for testing data (operating point l = 1.1 [m], m = 50 [kg]): (

**a**) 10-step-ahead prediction, (

**b**) 20-step-ahead prediction, and (

**c**) simulation.

**Figure 18.**Sway model population statistics: (

**a**) MSE for training and validation set, (

**b**) population mean, and (

**c**) population standard deviation.

Operating Point | Exp 1 | Exp 2 | Exp 3 | Exp 4 | Exp 5 | Exp 6 | Exp 7 | Exp 8 | Exp 9 | Exp 10 |
---|---|---|---|---|---|---|---|---|---|---|

l [m] | 0.8 | 1.4 | 2.0 | 2.0 | 1.7 | 1.4 | 0.8 | 1.1 | 1.7 | 1.1 |

m [kg] | 10 | 10 | 50 | 10 | 30 | 50 | 50 | 30 | 10 | 50 |

⟨S⟩ | ::= | ⟨exp_{b1}⟩|⟨T⟩ |
---|---|---|

⟨exp_{b1}⟩ | ::= | ×⟨exp_{b1}⟩⟨exp_{b1}⟩|×⟨exp_{p}⟩⟨exp_{b1}⟩|⟨exp_{u}⟩|⟨T⟩ |

⟨exp_{u}⟩ | ::= | tanh⟨exp_{b2}⟩|abs⟨exp_{b2}⟩ |

⟨exp_{b2}⟩ | ::= | +⟨exp_{b2}⟩⟨exp_{b2}⟩|−⟨exp_{b2}⟩⟨exp_{b2}⟩|×⟨exp_{b2}⟩⟨exp_{b2}⟩|×⟨int⟩⟨exp_{b2}⟩|⟨T⟩ |

⟨exp_{p}⟩ | ::= | ×⟨exp_{p}⟩⟨exp_{p}⟩|inv⟨exp_{p}⟩|⟨T_{p}⟩ |

⟨int⟩ | ::= | ×⟨int⟩⟨int⟩|+⟨int⟩⟨int⟩|÷⟨int⟩⟨int⟩|√⟨int⟩|⟨T_{I}⟩ |

⟨T⟩ | ::= | v_{k−}_{1}|v_{k−}_{2}|…|v_{k−}_{4}|u_{k−}_{1}|u_{k−}_{2}|…|u_{k−}_{9} |

⟨T_{I}⟩ | ::= | 1|2|3|5|10 |

⟨T_{p}⟩ | ::= | m|l |

⟨S⟩ | ::= | ⟨exp_{b1}⟩|⟨T⟩ |
---|---|---|

⟨exp_{b1}⟩ | ::= | ×⟨exp_{b1}⟩⟨exp_{b1}⟩|×⟨exp_{p}⟩⟨exp_{b1}⟩|⟨exp_{u}⟩|⟨T⟩ |

⟨exp_{u}⟩ | ::= | tanh⟨exp_{b2}⟩|sin⟨exp_{b2}⟩|cos⟨exp_{b2}⟩|tan⟨exp_{b2}⟩ |

⟨exp_{b2}⟩ | ::= | +⟨exp_{b2}⟩⟨exp_{b2}⟩|−⟨exp_{b2}⟩⟨exp_{b2}⟩|×⟨exp_{b2}⟩⟨exp_{b2}⟩|×⟨int⟩⟨exp_{b2}⟩|⟨T⟩ |

⟨exp_{p}⟩ | ::= | ×⟨exp_{p}⟩⟨exp_{p}⟩|inv ⟨exp_{p}⟩|⟨T_{p}⟩ |

⟨int⟩ | ::= | ×⟨int⟩⟨int⟩|+⟨int⟩⟨int⟩|÷⟨int⟩⟨int⟩|√⟨int⟩|⟨T_{I}⟩ |

⟨T⟩ | ::= | α_{k}_{−1}|α_{k}_{−2}|…|α_{k}_{−4}|v_{k}_{−1}| v_{k}_{−2}|…|v_{k}_{−8} |

⟨T_{I}⟩ | ::= | 1|2|3|5|10 |

⟨T_{p}⟩ | ::= | m|l |

Parameters | Values |
---|---|

Population size | 100 |

Number of generations | 500 |

Initialization method | PTC2 |

Max tree depth during initialization | 6 |

Max number of candidate model terms | 50 |

Tournament size | 2 |

Subtree crossover probability | 0.75 |

High-level crossover probability | 0.15 |

Mutation probability | 0.1 |

Max number of prox. evaluations iterations | 5000 |

l = 1.7 [m], m = 10 [kg] | l = 1.1 [m], m = 50 [kg] | |
---|---|---|

1-step ahead | 1.000 | 0.9097 |

10-step ahead | 0.6776 | 0.2730 |

20-step ahead | 0.4274 | 0.3075 |

Parameters | Velocity Model | Sway Model |
---|---|---|

Function set | $\times ,+,-,\xf7,\mathrm{t}\mathrm{a}\mathrm{n}\mathrm{h},\sqrt{},\left|\right|$ | $\times ,+,-,\xf7,\mathrm{t}\mathrm{a}\mathrm{n}\mathrm{h},$ $\sqrt{},\mathrm{s}\mathrm{i}\mathrm{n},\mathrm{c}\mathrm{o}\mathrm{s},\mathrm{tan}$ |

Terminal set | ${u}_{k-1},\dots ,{u}_{k-9},$ ${v}_{k-1},\dots ,{v}_{k-4},$ $m,l$ | ${v}_{k-1},\dots ,{v}_{k-8},$ ${\alpha}_{k-1},\dots ,{\alpha}_{k-4},$ $m,l$ |

Population size | 100 | |

Number of generations | 500 | |

Initialization | Ramped Half-and-Half | |

Maximum number of genes | 50 | |

Maximum tree depth | 5 | |

Tournament size | 5 | |

Elitism | 0.01 | |

Crossover probability | 0.84 | |

Mutation probability | 0.14 | |

Direct reproduction | 0.02 | |

Ephemeral random constant | [−10, 10] |

Velocity Submodel | Sway Submodel | |||
---|---|---|---|---|

l = 1.7 [m] m = 10 [kg] | l = 1.1 [m] m = 50 [kg] | l = 1.7 [m] m = 10 [kg] | l = 1.1 [m] m = 50 [kg] | |

1-step ahead | 9.0465 × 10^{−4} | 0.0512 | 7.7915 × 10^{−4} | 0.0014 |

10-step ahead | 0.0279 | 0.0025 | 0.4067 | 0.0225 |

20-step ahead | 0.0251 | 0.0054 | 0.5614 | 0.0042 |

Velocity Submodel | Sway Submodel | ||
---|---|---|---|

Coefficients | Model Terms | Coefficients | Model Terms |

0.0336 | $\mathrm{tanh}\left(6\left({u}_{k-2}+{u}_{k-3}\right)\right)$ | 0.4363 | ${\alpha}_{k-2}$ |

0.0220 | $\mathrm{tanh}\left({v}_{k-2}+10{v}_{k-7}\right)$ | 4.7829 × 10^{−4} | ${l}^{2}{v}_{k-5}$ |

−0.0362 | $\mathrm{tanh}\left({u}_{k-1}+13\left({v}_{k-2}-{u}_{k-5}\right)\right)$ | −6.8103 × 10^{−4} | ${l}^{2}\mathrm{cos}\left({\alpha}_{k-1}\right)$ |

0.2790 | $\mathrm{tanh}\left({v}_{k-1}+{u}_{k-8}\right)$ | −1.4753 | $\mathrm{tanh}\left(\frac{\sqrt{2}{\alpha}_{k-2}}{9}\right)$ |

0.1168 | ${v}_{k-2}$ | 0.0992 | $m{\alpha}_{k-1}{\alpha}_{k-3}\mathrm{sin}\left({\alpha}_{k-1}\right)$ |

0.0037 | ${u}_{k-4}{u}_{k-6}$ | −0.0023 | $\mathrm{tanh}\left(10\left({v}_{k-1}-{v}_{k-2}\right)\right)$ |

−0.0106 | $\left|{u}_{k-6}-{u}_{k-9}\right|$ | −0.0510 | ${l}^{-1}\mathrm{cos}\left({\alpha}_{k-1}\right)\mathrm{tanh}\left({v}_{k-1}-{v}_{k-2}\right)$ |

−0.0255 | $\mathrm{tanh}\left(5{v}_{k-3}\right)$ | −0.0056 | $\mathrm{tanh}\left(2{\alpha}_{k-4}-{v}_{k-2}+2{v}_{k-4}\right)$ |

−0.0863 | $\mathrm{tanh}\left(6\left({u}_{k-2}+{v}_{k-1}\right)\right)$ | 1.0111 | $\mathrm{tan}\left({\alpha}_{k-1}\right)$ |

0.6076 | ${v}_{k-1}$ | 0.0034 | ${l}^{-1}{v}_{k-1}$ |

−0.1075 | ${u}_{k-1}\mathrm{tanh}\left({u}_{k-3}\right)\mathrm{tanh}\left({u}_{k-6}\right)$ | −0.1581 | ${l}^{-1}{\alpha}_{k-2}$ |

0.0248 | $\mathrm{tanh}\left({{u}_{k-1}u}_{k-3}{u}_{k-9}-\frac{8}{3}{u}_{k-8}\right)$ | −0.0015 | ${l}^{-2}\mathrm{cos}\left({\alpha}_{k-1}\right)$ |

0.0045 | $\mathrm{tanh}\left(4{u}_{k-2}\right)$ | −0.2316 | ${\alpha}_{k-4}$ |

0.0313 | ${u}_{k-9}$ | −0.0941 | $m{\alpha}_{k-1}\mathrm{sin}\left({\alpha}_{k-1}\right)\mathrm{tanh}\left({\alpha}_{k-2}\right)$ |

−0.1743 | ${u}_{k-8}$ | −0.0011 | ${l}^{-1}\mathrm{cos}\left({\alpha}_{k-1}\right)$ |

0.0067 | $\mathrm{t}\mathrm{a}\mathrm{n}\mathrm{h}\left({u}_{k-1}{v}_{k-2}\right(100{v}_{k-2}+{u}_{k-9}\left)\right)$ | −0.0123 | $m\mathrm{sin}\left({\alpha}_{k-1}\right)\mathrm{tanh}\left(10{v}_{k-1}{\alpha}_{k-1}\right)\mathrm{tanh}\left(\frac{\sqrt{2}{\alpha}_{k-4}}{9}\right)$ |

0.0582 | ${u}_{k-6}$ | 8.4577 × 10^{−4} | $\mathrm{tanh}\left(3{v}_{k-1}{\alpha}_{k-1}\right)$ |

−2.2057 × 10^{−5} | $m{l}^{2}{v}_{k-1}{v}_{k-2}{u}_{k-1}{u}_{k-4}{u}_{k-5}$ | 0.4044 | $\mathrm{sin}\left({\alpha}_{k-1}\right)\mathrm{tanh}\left(\frac{\sqrt{2}{\alpha}_{k-4}}{9}\right)\mathrm{tanh}\left(4{v}_{k-5}\right)$ |

0.1596 | ${v}_{k-1}{u}_{k-8}{u}_{k-9}$ | 0.0013 | $\mathrm{tanh}\left(10{v}_{k-1}{v}_{k-2}{v}_{k-4}\right)$ |

−0.0210 | $\mathrm{tanh}\left(\frac{9}{2}\sqrt{3}{u}_{k-5}\right)$ | 4.6043 × 10^{−7} | ${m}^{2}\mathrm{cos}\left({\alpha}_{k-1}\right)$ |

−0.0176 | $\mathrm{tanh}\left(5{u}_{k-5}-100{u}_{k-9}+{u}_{k-2}\right)$ | 0.0043 | ${\left(\sqrt{\frac{l}{m}}\mathrm{cos}\left({\alpha}_{k-1}\right)\right)}^{-1/2}$ |

0.0237 | $\mathrm{tanh}\left(13\left({v}_{k-2}-20{u}_{k-9}\right)+{u}_{k-1}\right)$ | 0.0023 | $\frac{1}{\sqrt{m}}\mathrm{cos}\left({\alpha}_{k-1}\right)$ |

0.0455 | $\mathrm{tanh}\left(6{u}_{k-2}{u}_{k-4}\right)$ | −0.0047 | $m{\alpha}_{k-1}\mathrm{sin}\left({\alpha}_{k-1}\right)\mathrm{tanh}\left({v}_{k-6}\right)$ |

0.0828 | $\mathrm{tanh}\left({v}_{k-2}{u}_{k-1}\left({u}_{k-7}+{u}_{k-9}\right)\right)$ |

Crane Velocity Prediction | Payload Sway Prediction | |||||||
---|---|---|---|---|---|---|---|---|

l = 1.7 [m] m = 10 [kg] | l = 1.1 [m] m = 50 [kg] | l = 1.7 [m] m = 10 [kg] | l = 1.1 [m] m = 50 [kg] | |||||

MSE | P | MSE | P | |||||

1-step-ahead | G3P-SR | 3.0291 × 10^{−5} | 5.2661 × 10^{−5} | 24 | G3P-SR | 6.4286 × 10^{−6} | 4.9985 × 10^{−6} | 23 |

10-step-ahead | 1.3830 × 10^{−4} | 2.7134 × 10^{−4} | 6.4842 × 10^{−5} | 5.3106 × 10^{−5} | ||||

20-step-ahead | 1.4942 × 10^{−4} | 2.7561 × 10^{−4} | 6.0479 × 10^{−5} | 1.2444 × 10^{−4} | ||||

simulation | 1.0225 × 10^{−4} | 1.1860 × 10^{−4} | 4.8531 × 10^{−4} | 3.0533 × 10^{−4} | ||||

1-step-ahead | NARX-NN3 | 7.8298 × 10^{−5} | 9.8596 × 10^{−5} | 52 | NARX-NN3 | 9.3471 × 10^{−6} | 1.0445 × 10^{−5} | 52 |

10-step-ahead | 2.9076 × 10^{−4} | 4.1626 × 10^{−4} | 5.6156 × 10^{−5} | 8.2768 × 10^{−5} | ||||

20-step-ahead | 3.0742 × 10^{−4} | 4.3185 × 10^{−4} | 7.5216 × 10^{−5} | 2.6174 × 10^{−4} | ||||

simulation | 2.9124 × 10^{−4} | 4.0581 × 10^{−4} | 0.0019 | 0.0038 | ||||

1-step-ahead | NARX-NN4 | 4.3865 × 10^{−5} | 7.0114 × 10^{−5} | 69 | NARX-NN5 | 9.3449 × 10^{−6} | 7.3236 × 10^{−6} | 86 |

10-step-ahead | 1.7400 × 10^{−4} | 2.1771 × 10^{−4} | 5.3269 × 10^{−5} | 2.4832 × 10^{−5} | ||||

20-step-ahead | 1.9878 × 10^{−4} | 2.1986 × 10^{−4} | 5.8469 × 10^{−5} | 5.2031 × 10^{−5} | ||||

simulation | 1.8707 × 10^{−4} | 2.0629 × 10^{−4} | 0.0018 | 8.8766 × 10^{−4} | ||||

1-step-ahead | NARX-NN5 | 4.3021 × 10^{−5} | 6.6277 × 10^{−5} | 86 | NARX-NN6 | 1.1624 × 10^{−5} | 1.2822 × 10^{−5} | 103 |

10-step-ahead | 1.4043 × 10^{−4} | 1.5458 × 10^{−4} | 1.4221 × 10^{−4} | 1.4785 × 10^{−4} | ||||

20-step-ahead | 1.4161 × 10^{−4} | 1.5593 × 10^{−4} | 4.5941 × 10^{−5} | 4.3153 × 10^{−5} | ||||

simulation | 1.3297 × 10^{−4} | 1.4595 × 10^{−4} | 4.8571 × 10^{−4} | 1.1371 × 10^{−4} | ||||

1-step-ahead | TSF-ARX | 4.4354 × 10^{−5} | 4.7230 × 10^{−5} | 30 | TSF-ARX | 5.7590 × 10^{−6} | 5.3920 × 10^{−6} | 48 |

10-step-ahead | 6.3366 × 10^{−4} | 6.8210 × 10^{−4} | 5.9411 × 10^{−5} | 1.3500 × 10^{−4} | ||||

20-step-ahead | 6.3176 × 10^{−4} | 6.5438 × 10^{−4} | 1.2428 × 10^{−4} | 4.0738 × 10^{−4} | ||||

simulation | 6.4512 × 10^{−4} | 6.5970 × 10^{−4} | 8.2410 × 10^{−4} | 0.0025 |

l = 1.7 [m], m = 10 [kg] | l = 1.1 [m], m = 50 [kg] | ||||||||
---|---|---|---|---|---|---|---|---|---|

k | δl = 0.085 | δl = −0.085 | δl = 0.17 | δl = −0.17 | δl = 0.055 | δl = −0.055 | δl = 0.11 | δl = −0.11 | |

G3P-SR | 1 | 1.6511 × 10^{−4} | 1.8208 × 10^{−4} | 3.1579 × 10^{−4} | 3.8420 × 10^{−4} | 2.5687 × 10^{−4} | 2.8435 × 10^{−4} | 4.9001 × 10^{−4} | 6.0077 × 10^{−4} |

10 | 0.0021 | 0.0023 | 0.0042 | 0.0047 | 0.0021 | 0.0022 | 0.0042 | 0.0046 | |

20 | 0.0033 | 0.0036 | 0.0062 | 0.0077 | 0.0044 | 0.0046 | 0.0085 | 0.0094 | |

NARX-NN3 | 1 | 6.7951 × 10^{−4} | 6.8430 × 10^{−4} | 0.0014 | 0.0014 | 4.3978 × 10^{−4} | 4.3818 × 10^{−4} | 8.8091 × 10^{−4} | 8.7452 × 10^{−4} |

10 | 0.0041 | 0.0039 | 0.0083 | 0.0075 | 0.0016 | 0.0016 | 0.0032 | 0.0031 | |

20 | 0.0062 | 0.0063 | 0.0121 | 0.0127 | 0.0031 | 0.0031 | 0.0064 | 0.0061 | |

NARX-NN5 | 1 | 2.2168 × 10^{−4} | 3.1165 × 10^{−4} | 3.5197 × 10^{−4} | 7.1061 × 10^{−4} | 5.7628 × 10^{−4} | 5.9687 × 10^{−4} | 0.0011 | 0.0012 |

10 | 0.0013 | 0.0018 | 0.0020 | 0.0040 | 0.0022 | 0.0022 | 0.0043 | 0.0044 | |

20 | 0.0021 | 0.0029 | 0.0033 | 0.0067 | 0.0044 | 0.0044 | 0.0088 | 0.0087 | |

NARX-NN6 | 1 | 3.0830 × 10^{−4} | 3.1832 × 10^{−4} | 6.7634 × 10^{−4} | 7.2318 × 10^{−4} | 6.8912 × 10^{−4} | 7.3672 × 10^{−4} | 0.0013 | 0.0015 |

10 | 0.0016 | 0.0016 | 0.0036 | 0.0037 | 0.0024 | 0.0024 | 0.0047 | 0.0048 | |

20 | 0.0025 | 0.0028 | 0.0052 | 0.0066 | 0.0049 | 0.0049 | 0.0096 | 0.0098 | |

TSF-ARX | 1 | 5.6238 × 10^{−4} | 5.6238 × 10^{−4} | 0.0011 | 0.0011 | 4.0111 × 10^{−4} | 4.0111 × 10^{−4} | 8.0222 × 10^{−4} | 8.0222 × 10^{−4} |

10 | 0.0039 | 0.0039 | 0.0078 | 0.0079 | 0.0044 | 0.0042 | 0.0089 | 0.0082 | |

20 | 0.0052 | 0.0055 | 0.0100 | 0.0113 | 0.0081 | 0.0079 | 0.0163 | 0.0155 |

l = 1.7 [m], m = 10 [kg] | l = 1.1 [m], m = 50 [kg] | ||||||||
---|---|---|---|---|---|---|---|---|---|

k | δm = 1 | δm = −1 | δm = 2 | δm = −2 | δm = 5 | δm = −5 | δm = 10 | δm = −10 | |

G3P-SR | 1 | 1.8468 × 10^{−6} | 1.8461 × 10^{−6} | 3.6942 × 10^{−6} | 3.6915 × 10^{−6} | 9.2741 × 10^{−6} | 9.2717 × 10^{−6} | 1.8551 × 10^{−5} | 1.8541 × 10^{−5} |

10 | 3.3327 × 10^{−5} | 3.6132 × 10^{−5} | 6.4497 × 10^{−5} | 7.6009 × 10^{−5} | 1.1207 × 10^{−4} | 1.0146 × 10^{−4} | 2.3843 × 10^{−4} | 1.9562 × 10^{−4} | |

20 | 7.1889 × 10^{−5} | 8.4979 × 10^{−5} | 1.3380 × 10^{−4} | 1.8763 × 10^{−4} | 1.5641 × 10^{−4} | 1.4241 × 10^{−4} | 3.3105 × 10^{−4} | 2.7461 × 10^{−4} | |

NARX-NN3 | 1 | 4.2432 × 10^{−5} | 4.2454 × 10^{−5} | 8.4841 × 10^{−5} | 8.4930 × 10^{−5} | 2.0081 × 10^{−4} | 2.0173 × 10^{−4} | 4.0069 × 10^{−4} | 4.0437 × 10^{−4} |

10 | 2.4581 × 10^{−4} | 2.4692 × 10^{−4} | 4.9052 × 10^{−4} | 4.9494 × 10^{−4} | 7.3082 × 10^{−4} | 7.3746 × 10^{−4} | 0.0015 | 0.0015 | |

20 | 3.8836 × 10^{−4} | 3.8834 × 10^{−4} | 7.7671 × 10^{−4} | 7.7664 × 10^{−4} | 0.0014 | 0.0014 | 0.0028 | 0.0029 | |

NARX-NN5 | 1 | 1.8319 × 10^{−5} | 1.8593 × 10^{−5} | 3.6364 × 10^{−5} | 3.7457 × 10^{−5} | 1.7646 × 10^{−4} | 1.7558 × 10^{−4} | 3.5446 × 10^{−4} | 3.5109 × 10^{−4} |

10 | 1.1347 × 10^{−4} | 1.1558 × 10^{−4} | 2.2484 × 10^{−4} | 2.3327 × 10^{−4} | 6.6789 × 10^{−4} | 6.6725 × 10^{−4} | 0.0013 | 0.0013 | |

20 | 1.5143 × 10^{−4} | 1.5246 × 10^{−4} | 3.0175 × 10^{−4} | 3.0586 × 10^{−4} | 0.0013 | 0.0013 | 0.0026 | 0.0026 | |

NARX-NN6 | 1 | 3.7946 × 10^{−5} | 3.9408 × 10^{−5} | 7.4434 × 10^{−5} | 8.0284 × 10^{−5} | 1.1095 × 10^{−4} | 1.0305 × 10^{−4} | 2.3782 × 10^{−4} | 2.0470 × 10^{−4} |

10 | 1.7452 × 10^{−4} | 1.8063 × 10^{−4} | 3.4288 × 10^{−4} | 3.6734 × 10^{−4} | 6.7990 × 10^{−4} | 5.7455 × 10^{−4} | 0.0015 | 0.0011 | |

20 | 2.9181 × 10^{−4} | 3.0245 × 10^{−4} | 5.7288 × 10^{−4} | 6.1542 × 10^{−4} | 0.0011 | 8.7958 × 10^{−4} | 0.0023 | 0.0016 | |

TSF-ARX | 1 | 6.1114 × 10^{−5} | 0 | 1.2223 × 10^{−4} | 0 | 0 | 2.3513 × 10^{−4} | 0 | 4.7027 × 10^{−4} |

10 | 2.0502 × 10^{−4} | 0 | 4.1326 × 10^{−4} | 0 | 0 | 5.0586 × 10^{−4} | 0 | 9.6763 × 10^{−4} | |

20 | 3.1634 × 10^{−4} | 0 | 6.3708 × 10^{−4} | 0 | 0 | 9.8803 × 10^{−4} | 0 | 0.0019 |

Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |

© 2024 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).

## Share and Cite

**MDPI and ACS Style**

Kusznir, T.; Smoczek, J.; Karwat, B.
Data-Driven Identification of Crane Dynamics Using Regularized Genetic Programming. *Appl. Sci.* **2024**, *14*, 3492.
https://doi.org/10.3390/app14083492

**AMA Style**

Kusznir T, Smoczek J, Karwat B.
Data-Driven Identification of Crane Dynamics Using Regularized Genetic Programming. *Applied Sciences*. 2024; 14(8):3492.
https://doi.org/10.3390/app14083492

**Chicago/Turabian Style**

Kusznir, Tom, Jarosław Smoczek, and Bolesław Karwat.
2024. "Data-Driven Identification of Crane Dynamics Using Regularized Genetic Programming" *Applied Sciences* 14, no. 8: 3492.
https://doi.org/10.3390/app14083492