Products & Services Solutions Academia Support User Community Company


feasp

Purpose

Compute solution to given system of LMIs

Syntax

Description

The function feasp computes a solution xfeas (if any) of the system of LMIs described by lmisys. The vector xfeas is a particular value of the decision variables for which all LMIs are satisfied.

Given the LMI system

     (6-5)  

xfeas is computed by solving the auxiliary convex program:

The global minimum of this program is the scalar value tmin returned as first output argument by feasp. The LMI constraints are feasible if tmin 0 and strictly feasible if tmin < 0. If the problem is feasible but not strictly feasible, tmin is positive and very small. Some post-analysis may then be required to decide whether xfeas is close enough to feasible.

The optional argument target sets a target value for tmin. The optimization code terminates as soon as a value of t below this target is reached. The default value is target = 0.

Note that xfeas is a solution in terms of the decision variables and not in terms of the matrix variables of the problem. Use dec2mat to derive feasible values of the matrix variables from xfeas.

Control Parameters

The optional argument options gives access to certain control parameters for the optimization algorithm. This five-entry vector is organized as follows:

Setting option(i) to zero is equivalent to setting the corresponding control parameter to its default value. Consequently, there is no need to redefine the entire vector when changing just one control parameter. To set the maximum number of iterations to 10, for instance, it suffices to type

Memory Problems

When the least-squares problem solved at each iteration becomes ill conditioned, the feasp solver switches from Cholesky-based to QR-based linear algebra (see Memory Problems for details). Since the QR mode typically requires much more memory, MATLAB® may run out of memory and display the message

You should then ask your system manager to increase your swap space or, if no additional swap space is available, set options(4) = 1. This will prevent switching to QR and feasp will terminate when Cholesky fails due to numerical instabilities.

Examples

Consider the problem of finding P > I such that

     (6-6)  

     (6-7)  

     (6-8)  

with data

This problem arises when studying the quadratic stability of the polytope of matrices Co{A1, A2, A3}.

To assess feasibility with feasp, first enter the LMIs (9-8)-(9-10) by:

Then call feasp to find a feasible decision vector:

This returns tmin = -3.1363. Hence (9-8)-(9-10) is feasible and the dynamical system = A(t)x is quadratically stable for A(t) Co{A1, A2, A3}.

To obtain a Lyapunov matrix P proving the quadratic stability, type

This returns

It is possible to add further constraints on this feasibility problem. For instance, you can bound the Frobenius norm of P by 10 while asking tmin to be less than or equal to -1. This is done by

The third entry 10 of options sets the feasibility radius to 10 while the third argument -1 sets the target value for tmin. This yields tmin = -1.1745 and a matrix P with largest eigenvalue lambdamax(P) = 9.6912.

References

The feasibility solver feasp is based on Nesterov and Nemirovski's Projective Method described in

Nesterov, Y., and A. Nemirovski, Interior Point Polynomial Methods in Convex Programming: Theory and Applications, SIAM, Philadelphia, 1994.

Nemirovski, A., and P. Gahinet, "The Projective Method for Solving Linear Matrix Inequalities," Proc. Amer. Contr. Conf., 1994, Baltimore, Maryland, p. 840-844.

The optimization is performed by the C-MEX file feaslv.mex.

See Also

mincx       Minimize a linear objective under LMI constraints

gevp        Generalized eigenvalue minimization under LMI constraints

dec2mat     Given values of the decision variables, derive the corresponding values of the matrix variables


 Provide feedback about this page 

Previous page evallmi fitfrd Next page

Recommended Products

Includes the most popular MATLAB recorded presentations with Q&A sessions led by MATLAB experts.

 © 1984-2009- The MathWorks, Inc.    -   Site Help   -   Patents   -   Trademarks   -   Privacy Policy   -   Preventing Piracy   -   RSS