Optimal PID Controller Autotuning Design for MIMO Nonlinear Systems Based on the Adaptive SLP Algorithm
Journal article
Authors/Editors
Strategic Research Themes
Publication Details
Author list: Pongfai J., Angeli C., Shi P., Su X., Assawinchaichote W.
Publisher: Springer
Publication year: 2021
Journal acronym: IJCAS
Volume number: 19
Issue number: 1
Start page: 392
End page: 403
Number of pages: 12
ISSN: 1598-6446
eISSN: 2005-4092
Languages: English-Great Britain (EN-GB)
View in Web of Science | View on publisher site | View citing articles in Web of Science
Abstract
In this paper, an adaptive swarm learning process (SLP) algorithm for designing the optimal proportional integral and derivative (PID) parameter for a multiple-input multiple-output (MIMO) control system is proposed. The SLP algorithm is proposed to improve the performance and convergence of PID parameter autotuning by applying the swarm algorithm and the learning process. The adaptive SLP algorithm improves the stability, performance and robustness of the traditional SLP algorithm to apply it to a MIMO control system. It can update the online weights of the SLP algorithm caused by the errors in the settling time, rise time and overshoot of the system based on a stable learning rate. The gradient descent is applied to update the weights. The stable learning rate is verified based on the Lyapunov stability theorem. Additionally, simulations are performed to verify the superiority of the algorithm in terms of performance and robustness. Results that compare the adaptive SLP algorithm with the traditional SLP, a neural network (NN), the genetic algorithm (GA), the particle swarm and optimization (PSO) algorithm and the kidney-inspired algorithm (KIA) based on a two-wheel inverted pendulum system are presented. With respect to performance and robustness, the adaptive SLP algorithm provides a better response than the traditional SLP, NN, GA, PSO and KIA. © 2021, ICROS, KIEE and Springer.
Keywords
Autotuning, inverted pendulum, multiple-input/multiple-output (MIMO), swarm algorithm