Please report any problems to Gilles Ferreres (ferreres@onera.fr).
Overview
The aim of the Sedumi-based IQC solver of the SMAC toolbox is to analyze a closed loop in the presence of nonlinearities in a sector and LTI, LTV or bounded rate parametric uncertainties. One focuses on this case because of its practical interest: indeed, parametric uncertainties, and nonlinearities in a sector to a lesser extent, play a central role in robust control since they appear almost everywhere. Nevertheless, solving this IQC problem in practice is not an easy task because of computational requirements and possibly numerical conditioning, when considering non-trivial LFT models with (not so largely) repeated parametric uncertainties.
The sdp solver Sedumi is used in the software, because of its much higher computational efficiency than the LMI Control Toolbox solver. The reliability of the result is studied, based on the indicator info.numerr provided by the Sedumi solver: info.numerr = 2 means that serious numerical problems were encountered when solving the sdp problem, so that the result, whose reliability may appear questionable, needs to be validated.
The KYPD solver can also be used, i.e. a dual state-space problem is solved instead of the primal one, with an expected reduced computational burden, depending (in our experience) on the IQC problem to be solved.
Applicative example
The demo file presents the application to a closed loop LFT transport aircraft model. The transfer function to be studied is between the reference input qc and a tracking error. The uncertainty block is a SISO deadzone (corresponding to a rate limiter) and 4 parameters Center of Gravity (repeated 8 times), Mach (repeated 8 times), Mass (repeated 4 times) and Conventional Airspeed Vc (repeated 4 times). The non-rectangular flight domain in the space of Mach and Vc is normalized to become a square. Mass and CG are considered as LTI parameters, while Mach and Vc are LTI or LTV parameters, with or without a bound on the rate of variation. The deadzone is represented by a nonlinearity in a sector between 0 and 0.3.
First consider the case of LTV Mach and Vc, with an unbounded rate of variation. The robust performance level provided by the software when solving the primal state-space problem is 4.976, noting that the nominal performance level, obtained with a zero uncertainty block, was normalized to 1. 4.982 is obtained when using the IQC Toolbox associated to the LMI Control Toolbox. If the results are almost identical, the computational times are 17 s with our sofware, and 186 s with the IQC Toolbox associated to the LMI Control Toolbox. Indeed, the size of the optimization problem is non-negligible: the state-space model used by the IQC solver, after being augmented by the dynamic multipliers, is of order 39 (the order of the initial model, without multiplier, is 15). The number of optimization variables in the LMI problem is 1183 = 780 + 403, where 780 is the number of optimization variables associated to the Lyapunov matrix.
When considering the case of LTI Mach and Vc, the robust performance level provided by the software (resp. the IQC Toolbox associated to the LMI Control Toolbox) is 1.304 (resp. 1.306), and the computational time is 120 s, i.e. 2 minutes (resp. 2765 s, i.e. about 46 minutes). The number of optimization variables in the LMI problem is 2659 = 2016 + 643, where 2016 is the number of optimization variables associated to the Lyapunov matrix (63 states in the augmented model !).
Last, when considering the case of bounded rate Mach and Vc, the robust performance level provided by the software is 1.571, and the computational time is 124 s, i.e. about 2 minutes. The number of optimization variables in the LMI problem is 2739 = 2016 + 723, where 2016 is the number of optimization variables associated to the Lyapunov matrix (63 states in the augmented model).
License agreement, disclaimer
- You are free to use any of the files for personal or academic use. The express permission of the authors is required for any commercial use.
- You can redistribute the files without modification provided that it is for a non commercial purpose. Redistribution in any commercial form including CD-ROM or any other media is hereby forbidden, unless with the express written permission of the authors. Any of your software developments related to this download will be available under similar license conditions.
- Neither the authors nor ONERA accept any responsibility or liability with regard to this software that is licensed on an "as is" basis. There will be no duty on authors or ONERA to correct any errors or defects in the software.
Software requirement
When solving the primal state-space problem, only the Sedumi solver (sedumi.m and associated routines) needs to be available in the path. When solving the dual one, Yalmip and the KYPD solver (kypd_solver.m and associated routines) also need to be available in the path.