+++ title = "Singular Value Decomposition" author = ["Thomas Dehaeze"] draft = false +++ Tags : ## SVD of a MIMO system {#svd-of-a-mimo-system} We are interested by the physical interpretation of the SVD when applied to the frequency response of a MIMO system \\(G(s)\\) with \\(m\\) inputs and \\(l\\) outputs. \begin{equation} G = U \Sigma V^H \end{equation} \\(\Sigma\\) : is an \\(l \times m\\) matrix with \\(k = \min\\{l, m\\}\\) non-negative **singular values** \\(\sigma\_i\\), arranged in descending order along its main diagonal, the other entries are zero. \\(U\\) : is an \\(l \times l\\) unitary matrix. The columns of \\(U\\), denoted \\(u\_i\\), represent the **output directions** of the plant. They are orthonormal. \\(V\\) : is an \\(m \times m\\) unitary matrix. The columns of \\(V\\), denoted \\(v\_i\\), represent the **input directions** of the plant. They are orthonormal. The input and output directions are related through the singular values: \begin{equation} G v\_i = \sigma\_i u\_i \end{equation} So, if we consider an input in the direction \\(v\_i\\), then the output is in the direction \\(u\_i\\). Furthermore, since \\(\normtwo{v\_i}=1\\) and \\(\normtwo{u\_i}=1\\), we see that **the singular value \\(\sigma\_i\\) directly gives the gain of the matrix \\(G\\) in this direction**. The **largest gain** for any input is equal to the **maximum singular value**: \\[\maxsv(G) \equiv \sigma\_1(G) = \max\_{d\neq 0}\frac{\normtwo{Gd}}{\normtwo{d}} = \frac{\normtwo{Gv\_1}}{\normtwo{v\_1}} \\] The **smallest gain** for any input direction is equal to the **minimum singular value**: \\[\minsv(G) \equiv \sigma\_k(G) = \min\_{d\neq 0}\frac{\normtwo{Gd}}{\normtwo{d}} = \frac{\normtwo{Gv\_k}}{\normtwo{v\_k}} \\] We define \\(u\_1 = \bar{u}\\), \\(v\_1 = \bar{v}\\), \\(u\_k=\ubar{u}\\) and \\(v\_k = \ubar{v}\\). Then is follows that: \\[ G\bar{v} = \maxsv \bar{u} ; \quad G\ubar{v} = \minsv \ubar{u} \\] ## SVD to pseudo inverse rectangular matrices {#svd-to-pseudo-inverse-rectangular-matrices} This is taken from [Singular Value Decomposition]({{< relref "preumont18_vibrat_contr_activ_struc_fourt_edition" >}}). The **Singular Value Decomposition** (SVD) is a generalization of the eigenvalue decomposition of a rectangular matrix: \\[ J = U \Sigma V^T = \sum\_{i=1}^r \sigma\_i u\_i v\_i^T \\] With: - \\(U\\) and \\(V\\) orthogonal matrices. The columns \\(u\_i\\) and \\(v\_i\\) of \\(U\\) and \\(V\\) are the eigenvectors of the square matrices \\(JJ^T\\) and \\(J^TJ\\) respectively - \\(\Sigma\\) a rectangular diagonal matrix of dimension \\(m \times n\\) containing the square root of the common non-zero eigenvalues of \\(JJ^T\\) and \\(J^TJ\\) - \\(r\\) is the number of non-zero singular values of \\(J\\) The pseudo-inverse of \\(J\\) is: \\[ J^+ = V\Sigma^+U^T = \sum\_{i=1}^r \frac{1}{\sigma\_i} v\_i u\_i^T \\] The conditioning of the Jacobian is measured by the **condition number**: \\[ c(J) = \frac{\sigma\_{max}}{\sigma\_{min}} \\] When \\(c(J)\\) becomes large, the most straightforward way to handle the ill-conditioning is to truncate the smallest singular value out of the sum. This will have usually little impact of the fitting error while reducing considerably the actuator inputs \\(v\\). <./biblio/references.bib>