LMIs in Control/Tools/Maximum Singular Value of a Complex Matrix

From testwiki
Revision as of 07:32, 16 April 2020 by imported>DannyS712 (Update syntaxhighlight tags - remove use of deprecated <source> tags)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

LMIs in Control/Tools/Maximum Singular Value of a Complex Matrix


Maximum Singular Value of a Complex Matrix


The System

Consider An×m as well as γ. A maximum singular value of a matrix A is less than γ if and only if AAH<γ2I, where AH is the conjugate transpose or Hermitian transpose of the matrix A.

The Data

The matrix A is the only data required.

The Optimization Problem

The LMI: Maximum Singular Value of a Complex Matrix

Using the Shur complement procedure, the following LMIs can be constructed:

σ¯(A)<γ[γIAAHγI]>0

The following LMI is also equivalent:

σ¯(A)<γ[γIAHAγI]>0

Conclusion:

The results from this LMI will give the maximum complex value of the matrix A:

σ¯(A)<γ

Implementation

% Maximimum Singular Value of Complex Matrix
% -- EXAMPLE --

%Clears all variables
clear; clc; close all;

%SDPVAR variables
gam1 = sdpvar(1);
gam2 = sdpvar(1);

%Example Matrix A
A = rand(9,6)+rand(9,6)*1i;

%Constraint Matrix for LMI optimization
M1 = [gam1*eye(9) A; A' gam1*eye(6)];

%Equivalent counter Matrix
M2 = [gam2*eye(6) A';A gam2*eye(9)]; 

%Constraints
Fc1 = (M1 >= 0);
Fc2 = (M2 >= 0);

%Objective function
obj1=gam1;
obj2=gam2;

%options
opt = sdpsettings('solver','sedumi');

%Optimization
optimize(Fc1,obj1,opt)
optimize(Fc2,obj2,opt)

%Displays output
fprintf('\nValue of Max singular value (using first method): ')
disp(value(gam1))

fprintf('\nValue of Max singular value (using second method): ')
disp(value(gam2))

fprintf('\nMATLAB verified output: ')
disp(norm(norm(A)))

Return to Main Page:

Template:BookCat