Fast implementations of NMPC are important when addressing real-time control of systems exhibiting features like fast dynamics, large dimension, and long prediction horizon, as in such situations the computational burden of the NMPC may limit the achievable control bandwidth. For that purpose, this thesis addresses both algorithms and applications. First, fast NMPC algorithms for controlling continuous-time dynamic systems using a long prediction horizon have been developed. A bridge between linear and nonlinear MPC is built using partial linearizations or sensitivity update. In order to update the sensitivities only when necessary, a Curvature-like measure of nonlinearity (CMoN) for dynamic systems has been introduced and applied to existing NMPC algorithms. Based on CMoN, intuitive and advanced updating logic have been developed for different numerical and control performance. Thus, the CMoN, together with the updating logic, formulates a partial sensitivity updating scheme for fast NMPC, named CMoN-RTI. Simulation examples are used to demonstrate the effectiveness and efficiency of CMoN-RTI. In addition, a rigorous analysis on the optimality and local convergence of CMoN-RTI is given and illustrated using numerical examples. Partial condensing algorithms have been developed when using the proposed partial sensitivity update scheme. The computational complexity has been reduced since part of the condensing information are exploited from previous sampling instants. A sensitivity updating logic together with partial condensing is proposed with a complexity linear in prediction length, leading to a speed up by a factor of ten. Partial matrix factorization algorithms are also proposed to exploit partial sensitivity update. By applying splitting methods to multi-stage problems, only part of the resulting KKT system need to be updated, which is computationally dominant in on-line optimization. Significant improvement has been proved by giving floating point operations (flops). Second, efficient implementations of NMPC have been achieved by developing a Matlab based package named MATMPC. MATMPC has two working modes: the one completely relies on Matlab and the other employs the MATLAB C language API. The advantages of MATMPC are that algorithms are easy to develop and debug thanks to Matlab, and libraries and toolboxes from Matlab can be directly used. When working in the second mode, the computational efficiency of MATMPC is comparable with those software using optimized code generation. Real-time implementations are achieved for a nine degree of freedom dynamic driving simulator and for multi-sensory motion cueing with active seat.

Implementazioni rapide di NMPC sono importanti quando si affronta il controllo in tempo reale di sistemi che presentano caratteristiche come dinamica veloce, ampie dimensioni e orizzonte di predizione lungo, poiché in tali situazioni il carico di calcolo dell'MNPC può limitare la larghezza di banda di controllo ottenibile. A tale scopo, questa tesi riguarda sia gli algoritmi che le applicazioni. In primo luogo, sono stati sviluppati algoritmi veloci NMPC per il controllo di sistemi dinamici a tempo continuo che utilizzano un orizzonte di previsione lungo. Un ponte tra MPC lineare e non lineare viene costruito utilizzando linearizzazioni parziali o aggiornamento della sensibilità. Al fine di aggiornare la sensibilità solo quando necessario, è stata introdotta una misura simile alla curva di non linearità (CMoN) per i sistemi dinamici e applicata agli algoritmi NMPC esistenti. Basato su CMoN, sono state sviluppate logiche di aggiornamento intuitive e avanzate per diverse prestazioni numeriche e di controllo. Pertanto, il CMoN, insieme alla logica di aggiornamento, formula uno schema di aggiornamento della sensibilità parziale per NMPC veloce, denominato CMoN-RTI. Gli esempi di simulazione sono utilizzati per dimostrare l'efficacia e l'efficienza di CMoN-RTI. Inoltre, un'analisi rigorosa sull'ottimalità e sulla convergenza locale di CMoN-RTI viene fornita ed illustrata utilizzando esempi numerici. Algoritmi di condensazione parziale sono stati sviluppati quando si utilizza lo schema di aggiornamento della sensibilità parziale proposto. La complessità computazionale è stata ridotta poiché parte delle informazioni di condensazione sono sfruttate da precedenti istanti di campionamento. Una logica di aggiornamento della sensibilità insieme alla condensazione parziale viene proposta con una complessità lineare nella lunghezza della previsione, che porta a una velocità di un fattore dieci. Sono anche proposti algoritmi di fattorizzazione parziale della matrice per sfruttare l'aggiornamento della sensibilità parziale. Applicando metodi di suddivisione a problemi a più stadi, è necessario aggiornare solo parte del sistema KKT risultante, che è computazionalmente dominante nell'ottimizzazione online. Un miglioramento significativo è stato dimostrato dando operazioni in virgola mobile (flop). In secondo luogo, sono state realizzate implementazioni efficienti di NMPC sviluppando un pacchetto basato su Matlab chiamato MATMPC. MATMPC ha due modalità operative: quella si basa completamente su Matlab e l'altra utilizza l'API del linguaggio MATLAB C. I vantaggi di MATMPC sono che gli algoritmi sono facili da sviluppare e eseguire il debug grazie a Matlab e le librerie e le toolbox di Matlab possono essere utilizzate direttamente. Quando si lavora nella seconda modalità, l'efficienza computazionale di MATMPC è paragonabile a quella del software che utilizza la generazione di codice ottimizzata. Le realizzazioni in tempo reale sono ottenute per un simulatore di guida dinamica di nove gradi di libertà e per il movimento multisensoriale con sedile attivo.

Algorithms and Applications for Nonlinear Model Predictive Control with Long Prediction Horizon / Chen, Yutao. - (2018 Jan 15).

Algorithms and Applications for Nonlinear Model Predictive Control with Long Prediction Horizon

Chen, Yutao
2018

Abstract

Implementazioni rapide di NMPC sono importanti quando si affronta il controllo in tempo reale di sistemi che presentano caratteristiche come dinamica veloce, ampie dimensioni e orizzonte di predizione lungo, poiché in tali situazioni il carico di calcolo dell'MNPC può limitare la larghezza di banda di controllo ottenibile. A tale scopo, questa tesi riguarda sia gli algoritmi che le applicazioni. In primo luogo, sono stati sviluppati algoritmi veloci NMPC per il controllo di sistemi dinamici a tempo continuo che utilizzano un orizzonte di previsione lungo. Un ponte tra MPC lineare e non lineare viene costruito utilizzando linearizzazioni parziali o aggiornamento della sensibilità. Al fine di aggiornare la sensibilità solo quando necessario, è stata introdotta una misura simile alla curva di non linearità (CMoN) per i sistemi dinamici e applicata agli algoritmi NMPC esistenti. Basato su CMoN, sono state sviluppate logiche di aggiornamento intuitive e avanzate per diverse prestazioni numeriche e di controllo. Pertanto, il CMoN, insieme alla logica di aggiornamento, formula uno schema di aggiornamento della sensibilità parziale per NMPC veloce, denominato CMoN-RTI. Gli esempi di simulazione sono utilizzati per dimostrare l'efficacia e l'efficienza di CMoN-RTI. Inoltre, un'analisi rigorosa sull'ottimalità e sulla convergenza locale di CMoN-RTI viene fornita ed illustrata utilizzando esempi numerici. Algoritmi di condensazione parziale sono stati sviluppati quando si utilizza lo schema di aggiornamento della sensibilità parziale proposto. La complessità computazionale è stata ridotta poiché parte delle informazioni di condensazione sono sfruttate da precedenti istanti di campionamento. Una logica di aggiornamento della sensibilità insieme alla condensazione parziale viene proposta con una complessità lineare nella lunghezza della previsione, che porta a una velocità di un fattore dieci. Sono anche proposti algoritmi di fattorizzazione parziale della matrice per sfruttare l'aggiornamento della sensibilità parziale. Applicando metodi di suddivisione a problemi a più stadi, è necessario aggiornare solo parte del sistema KKT risultante, che è computazionalmente dominante nell'ottimizzazione online. Un miglioramento significativo è stato dimostrato dando operazioni in virgola mobile (flop). In secondo luogo, sono state realizzate implementazioni efficienti di NMPC sviluppando un pacchetto basato su Matlab chiamato MATMPC. MATMPC ha due modalità operative: quella si basa completamente su Matlab e l'altra utilizza l'API del linguaggio MATLAB C. I vantaggi di MATMPC sono che gli algoritmi sono facili da sviluppare e eseguire il debug grazie a Matlab e le librerie e le toolbox di Matlab possono essere utilizzate direttamente. Quando si lavora nella seconda modalità, l'efficienza computazionale di MATMPC è paragonabile a quella del software che utilizza la generazione di codice ottimizzata. Le realizzazioni in tempo reale sono ottenute per un simulatore di guida dinamica di nove gradi di libertà e per il movimento multisensoriale con sedile attivo.
15-gen-2018
Fast implementations of NMPC are important when addressing real-time control of systems exhibiting features like fast dynamics, large dimension, and long prediction horizon, as in such situations the computational burden of the NMPC may limit the achievable control bandwidth. For that purpose, this thesis addresses both algorithms and applications. First, fast NMPC algorithms for controlling continuous-time dynamic systems using a long prediction horizon have been developed. A bridge between linear and nonlinear MPC is built using partial linearizations or sensitivity update. In order to update the sensitivities only when necessary, a Curvature-like measure of nonlinearity (CMoN) for dynamic systems has been introduced and applied to existing NMPC algorithms. Based on CMoN, intuitive and advanced updating logic have been developed for different numerical and control performance. Thus, the CMoN, together with the updating logic, formulates a partial sensitivity updating scheme for fast NMPC, named CMoN-RTI. Simulation examples are used to demonstrate the effectiveness and efficiency of CMoN-RTI. In addition, a rigorous analysis on the optimality and local convergence of CMoN-RTI is given and illustrated using numerical examples. Partial condensing algorithms have been developed when using the proposed partial sensitivity update scheme. The computational complexity has been reduced since part of the condensing information are exploited from previous sampling instants. A sensitivity updating logic together with partial condensing is proposed with a complexity linear in prediction length, leading to a speed up by a factor of ten. Partial matrix factorization algorithms are also proposed to exploit partial sensitivity update. By applying splitting methods to multi-stage problems, only part of the resulting KKT system need to be updated, which is computationally dominant in on-line optimization. Significant improvement has been proved by giving floating point operations (flops). Second, efficient implementations of NMPC have been achieved by developing a Matlab based package named MATMPC. MATMPC has two working modes: the one completely relies on Matlab and the other employs the MATLAB C language API. The advantages of MATMPC are that algorithms are easy to develop and debug thanks to Matlab, and libraries and toolboxes from Matlab can be directly used. When working in the second mode, the computational efficiency of MATMPC is comparable with those software using optimized code generation. Real-time implementations are achieved for a nine degree of freedom dynamic driving simulator and for multi-sensory motion cueing with active seat.
Nonlinear Model Predictive Control; Measure of Nonlinearity; Real-Time; Optimization Algorithm; Dynamic System
Algorithms and Applications for Nonlinear Model Predictive Control with Long Prediction Horizon / Chen, Yutao. - (2018 Jan 15).
File in questo prodotto:
File Dimensione Formato  
Thesis_Yutao_Chen.pdf

accesso aperto

Tipologia: Tesi di dottorato
Licenza: Non specificato
Dimensione 4.1 MB
Formato Adobe PDF
4.1 MB Adobe PDF Visualizza/Apri
Pubblicazioni consigliate

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/11577/3421957
Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus ND
  • ???jsp.display-item.citation.isi??? ND
social impact