Presentation is loading. Please wait.

Presentation is loading. Please wait.

SeDuMi Interface A tool for solving LMI problems with SeDuMi

Similar presentations


Presentation on theme: "SeDuMi Interface A tool for solving LMI problems with SeDuMi"— Presentation transcript:

1 SeDuMi Interface A tool for solving LMI problems with SeDuMi
Yann labit, Dimitri Peaucelle Didier Henrion LAAS-CNRS, Toulouse, France

2 Motivation Importance of Linear matrix Inequalities (LMI) in Control theory and applications Limitations of existing tools: Problem size Computation time Convivial, relevant display Build together an adapted software

3 Solver & Interface objectives
Selected solver : SeDuMi. Necessity to write an Interface. Not a GUI tool.

4 SeDuMi : not ideal nor definitive but
Low computational complexity Sparse data format Works with Matlab Free software LMI and equality constraints Complex valued constraints Work in progress Jos F. Sturm

5 Interface to build canonical expressions for optimisation tools
LMIs and LMEs are matrix dependent expressions. Optimisation tools use vectors of decision variables E.g.

6 Existing Interfaces/Parsers
LMIlab, LMITOOL, sdpsol, YALMIP Some critiques Lack of functionalities (LMIlab, sdpsol) Slow conversion (LMITOOL,sdpsol) Difficulties to create Matlab functions to generate LMI problems (LMITOOL, sdpsol) Difficulties to analyse the obtained solution… not a GUI and no symbolic declarations

7 Interface dedicated to LMIs
Simplified declaration Structured variables : symmetric, diagonal, Hermitian… Structured constraints : block decomposition, Kronecker… Predefined objectives : trace, log(det)… Analysis of the solution : margin on constraints, matrix format... Software constraints Speed : simple algebaric manipulations Memory space : sparse format Open to modifications : Matlab free source code

8 Using SeDuMi Interface : An example
- state feedback Optimal controller Optimal norm

9 Step 1 : Name the LM problem
The LM problem = a Matlab object >> quiz = sdmpb(‘Hinfty state feedback’) LM problem: Hinfty state feedback no matrix variable no equality constraint no inequality constraint no linear objective Unsolved >> whos quiz Name Size Bytes Class quiz 1x sdmpb object

10 Step 2 : declare matrix variables
>> [quiz, Yindex] = sdmvar(quiz, m, n, 'Y'); >> [quiz, gindex] = sdmvar(quiz, 1, 1, 'gamma'); >> [quiz, Qindex] = sdmvar(quiz, n, 's', 'Q=Q’’') LM problem: Hinfty state feedback matrix variables: index name Y gamma Q=Q’ no equality constraint no inequality constraint no linear objective unsolved Symmetric, diagonal, hermitian, structured…

11 Step 3 : declare inequalities
>> [quiz, lmi1] = sdmlmi(quiz, n, 'Q>0'); >> quiz = sdmineq(quiz, -lmi1, Qindex); >> [quiz, lmi2] = sdmlmi(quiz, [n p], 'Hinfty'); >> quiz = sdmineq(quiz, [lmi2 1 1], Qindex, A, 1); >> quiz = sdmineq(quiz, [lmi2 1 1], Yindex, B, 1); >> quiz = sdmineq(quiz, [lmi2 1 1], , Bi); >> quiz = sdmineq(quiz, [lmi2 2 1], Qindex, Ci, 1); >> quiz = sdmineq(quiz, [lmi2 2 1], Yindex, Di, 1); >> quiz = sdmineq(quiz, [lmi2 2 2], gindex); Symmetric terms automatically added Possible to define Kronecker products

12 Step 4 : declare the objective
>> quiz = sdmobj(quiz, gindex, 1, 1, ‘gamma’) LM problem: Hinfty state feedback matrix variables: index name Y gamma Q=Q’ no equality constraint inequality constraints: index meig name Inf Q>0 Inf Hinfty maximise objective: gamma unsolved Possible to define :

13 Step 5 : solve the LM problem
>> quiz = sdmsol(quiz) ... computation ... LM problem: Hinfty state feedback matrix variables: index name Y gamma Q=Q’ no equality constraint inequality constraints: index meig name eps Q>0 eps Hinfty maximise objective: gamma = -27.3 feasible

14 Step 6 : analyse the result
Feasibility margins on each constraints: inequality constraints: index meig name eps Q>0 eps Hinfty maximise objective: gamma = -27.3 feasible Matrix formatted result: >> K = quiz(Yindex)/quiz(Qindex) K = 1.0e+03 *

15 Other features of the Interface
Matrix equalities Complex valued constraints Complex valued variables Radius on the vector of decision variables Adapted tuning of SeDuMi options Acknowledgements to K. Taitz

16 Future evolutions Warm-start with feasible solution
Pre-conditioning of the optimisation problem Other predefined options (user’s feedback) Platform incorporating other solvers Predefined LM problems for Automatic control Robust analysis Performance (pole location, , …) State and Output feedback

17 Conclusion http://www.laas.fr/~peaucell/sedumiint


Download ppt "SeDuMi Interface A tool for solving LMI problems with SeDuMi"

Similar presentations


Ads by Google