LMIs in Control/Click here to continue/Controller synthesis/Static-State Feedback Problem

We are attempting to stabilizing The Static State-Feedback Problem

The System
Consider a continuous time Linear Time invariant system

\begin{align} \dot x(t) = Ax(t)+Bu(t)\\ \end{align} $$

The Data
$$A,B$$ are known matrices

The Optimization Problem
The Problem's main aim is to find a feedback matrix such that the system

\begin{align} \dot x(t) = Ax(t)+Bu(t)\\ \end{align} $$ and

\begin{align} u(t) = Kx(t)\\ \end{align} $$ is stable Initially we find the $$K$$ matrix such that $$(A+BK)$$ is Hurwitz.

The LMI: Static State Feedback Problem
This problem can now be formulated into an LMI as Problem 1:
 * $$ X(A+BK)+(A+BK)^TX<0 $$

From the above equation $$ X>0 $$ and we have to find K

The problem as we can see is bilinear in $$ K,X$$ Problem 2:
 * The bilinear in X and K is a common paradigm
 * Bilinear optimization is not Convex. To Convexify the problem, we use a change of variables.
 * $$ AP+BZ+PA^T+Z^TB^T < 0 $$

where $$ P > 0$$ and we find $$Z$$ $$ K = ZP^{-1} $$

The Problem 1 is equivalent to Problem 2

Conclusion
If the (A,B) are controllable, We can obtain a controller matrix that stabilizes the system.

Implementation
A link to the Matlab code for a simple implementation of this problem in the Github repository:

https://github.com/yashgvd/ygovada

Related LMIs
Hurwitz Stability