Difference between revisions of "Matrix inversion"

From Robotics
Jump to: navigation, search
 
(34 intermediate revisions by the same user not shown)
Line 1: Line 1:
This article describes the inversion of matrices. It starts with a short explanation of what the inverse of a matrix actually is. Afterwards subarticles present some matrix features and two different approaches to compute the inverse of a matrix based on these features. <br/><br/>
+
{{Navigation|before=[[Minors and cofactors]]|overview=[[Matrix inversion]]|next=[[Gauß-Jordan-Algorithm]]}}
  
The inverse of an n-by-n square matrix <math>\mathbf{A}</math> is denoted as <math>\mathbf{A}^{-1}</math> and defined such that<br/><br/>
+
The inverse of an n-by-n square matrix <math>\mathbf{A}</math> is denoted as <math>\mathbf{A}^{-1}</math> and defined such that
<math>\mathbf{A}\mathbf{A}^{-1}=\mathbf{A}^{-1}\mathbf{A}=\mathbf{I}_n</math><br/><br/>
+
:<math>\mathbf{A}\mathbf{A}^{-1}=\mathbf{A}^{-1}\mathbf{A}=\mathbf{I}_n</math>
where <math>\mathbf{I}_n</math> is the n-by-n identity matrix.<br/>
+
where <math>\mathbf{I}_n</math> is the n-by-n identity matrix.
Prerequesite for the inversion is, that <math>\mathbf{A}</math> is an n-by-n square matrix and that <math>\mathbf{A}</math> is regular. Regular means that the row and column vectors are linearly independent and so the determinant is nonzero:<br/><br/>
+
 
<math>det(\mathbf{A})\ne0</math><br/><br/>
+
Prerequesite for the inversion is, that <math>\mathbf{A}</math> is an n-by-n square matrix and that <math>\mathbf{A}</math> is regular. Regular means that the row and column vectors are linearly independent and so the determinant is nonzero:
Otherwise the matrix is called singular. <br/><br/>
+
:<math>det(\mathbf{A})\ne0</math>
 +
Otherwise the matrix is called singular.
 
    
 
    
Before determining the inverse of a matrix it is always useful to compute the determinant and check whether the matrix is regular or singular. If it is singular it is not possible to determine the inverse because there is no inverse. For 3-by-3 and smaller matrices there are simple formulas to compute the determinant. To compute the determinant of larger matrices the following paragraph describes an example formula for a 4-by-4 matrix.<br/><br/>
+
Before determining the inverse of a matrix it is always useful to compute the [[Determinant of a matrix|determinant]] and check whether the matrix is regular or singular. If it is singular it is not possible to determine the inverse because there is no inverse. The following two subarticles describe two of the common procedures to determine the inverse of a matrix.
To determine the inverse of a matrix there are several alternatives. Two of the common procedures are the Gauß-Jordan-Algorithm and the Adjugate Formula that are explained afterwards.
 
  
# [[Minors and cofactors]]
 
# [[Computing the determinant of a 4-by-4 matrix]]
 
 
# [[Gauß-Jordan-Algorithm]]
 
# [[Gauß-Jordan-Algorithm]]
 
# [[Adjugate Formula]]
 
# [[Adjugate Formula]]
  
<br/>
+
Transformation matrices have a special structure, that is described in the [[Transformations|transformations]] chapter. For this special matrix structure an easier method to invert the matrix exists. This method is presented in
 +
 
 +
&nbsp; &nbsp; &nbsp; 3. [[Inverse transformation]].
 +
 
 
{{Example
 
{{Example
 +
|Title=inverse of a 2-by-2 matrix
 +
|Contents=
 +
This is a simple example for the inverse of a 2-by-2 matrix:<br/><br/>
 +
:<math>
 +
\mathbf{A}_2 =
 +
\left[\begin{array}{cc}
 +
2 & 3\\
 +
1 & 2
 +
\end{array}\right]
 +
,\quad
 +
{\mathbf{A}_2}^{-1}  =
 +
\left[\begin{array}{cc}
 +
2 & -3\\
 +
-1 & 2
 +
\end{array}\right]
 +
</math><br/><br/>
 +
:<math>\begin{align}
 +
{\mathbf{A}_2}{\mathbf{A}_2}^{-1}  &=
 +
\left[\begin{array}{cc}
 +
2 & 3\\
 +
1 & 2
 +
\end{array}\right]\cdot
 +
\left[\begin{array}{cc}
 +
2 & -3\\
 +
-1 & 2
 +
\end{array}\right]\\&=
 +
\left[\begin{array}{cc}
 +
2\cdot2+3\cdot(-1) & 2\cdot(-3)+3\cdot2\\
 +
1\cdot2+2\cdot(-1) & 1\cdot(-3)+2\cdot2
 +
\end{array}\right]\\&=
 +
\left[\begin{array}{cc}
 +
4-3 & -6+6\\
 +
2-2 & -3+4
 +
\end{array}\right]\\&=
 +
\left[\begin{array}{cc}
 +
{\color{Green}\mathbf{1}} & 0\\
 +
0 & {\color{Green}\mathbf{1}}
 +
\end{array}\right]=
 +
\mathbf{I}_2
 +
\end{align}</math>}}
 +
 +
{{Example
 +
|Title=inverse of a 3-by-3 matrix
 +
|Contents=
 +
This is an example for the inverse of a 3-by-3 matrix:<br/><br/>
 +
:<math>
 +
\mathbf{A}_3 =
 +
\left[\begin{array}{ccc}
 +
1&0&1\\
 +
3&1&0\\
 +
1&0&2
 +
\end{array}\right]
 +
,\quad
 +
{\mathbf{A}_3}^{-1}  =
 +
\left[\begin{array}{ccc}
 +
2&0&-1\\
 +
-6&1&3\\
 +
-1&0&1
 +
\end{array}\right]
 +
</math><br/><br/>
 +
:<math>\begin{align}
 +
{\mathbf{A}_3}{\mathbf{A}_3}^{-1}  &=
 +
\left[\begin{array}{ccc}
 +
1&0&1\\
 +
3&1&0\\
 +
1&0&2
 +
\end{array}\right]\cdot
 +
\left[\begin{array}{ccc}
 +
2&0&-1\\
 +
-6&1&3\\
 +
-1&0&1
 +
\end{array}\right]\\&=
 +
\left[\begin{array}{ccc}
 +
1\cdot2+0\cdot(-6)+1\cdot(-1) & 1\cdot0+0\cdot1+1\cdot0 & 1\cdot(-1)+0\cdot3+1\cdot1\\
 +
3\cdot2+1\cdot(-6)+0\cdot(-1) & 3\cdot0+1\cdot1+0\cdot0 & 3\cdot(-1)+1\cdot3+0\cdot1\\
 +
1\cdot2+0\cdot(-6)+2\cdot(-1) & 1\cdot0+0\cdot1+2\cdot0 & 1\cdot(-1)+0\cdot3+2\cdot1
 +
\end{array}\right]\\&=
 +
\left[\begin{array}{ccc}
 +
2+0-1 & 0+0+0 & -1+0+1\\
 +
6-6+0 & 0+1+0 & -3+3+0\\
 +
2+0-2 & 0+0+0 & -1+0+2
 +
\end{array}\right]\\&=
 +
\left[\begin{array}{ccc}
 +
{\color{Green}\mathbf{1}} & 0 & 0\\
 +
0 & {\color{Green}\mathbf{1}} & 0\\
 +
0 & 0 & {\color{Green}\mathbf{1}}
 +
\end{array}\right]=
 +
\mathbf{I}_3
 +
\end{align}</math>}}
 +
 +
{{Example
 +
|Title=inverse of a 4-by-4 matrix
 +
|Contents=
 +
This example is a proof of equation 3.40 in the robotics script (see page 3-61):<br/><br/>
 +
:<math>
 +
^R\mathbf{T}_N  =
 +
\left[\begin{array}{cccc}
 +
0 & 1 & 0 & 2a\\
 +
0 & 0 & -1 & 0\\
 +
-1 & 0 & 0 & 0\\
 +
0 & 0 & 0 & 1
 +
\end{array}\right]
 +
,\quad
 +
{^R\mathbf{T}_N}^{-1}  =
 +
\left[\begin{array}{cccc}
 +
0 & 0 & -1 & 0\\
 +
1 & 0 & 0 & -2a\\
 +
0 & -1 & 0 & 0\\
 +
0 & 0 & 0 & 1
 +
\end{array}\right]
 +
</math><br/><br/>
 +
:<math>\begin{align}
 +
{^R\mathbf{T}_N}{^R\mathbf{T}_N}^{-1}  &=
 +
\left[\begin{array}{cccc}
 +
0 & 1 & 0 & 2a\\
 +
0 & 0 & -1 & 0\\
 +
-1 & 0 & 0 & 0\\
 +
0 & 0 & 0 & 1
 +
\end{array}\right]\cdot
 +
\left[\begin{array}{cccc}
 +
0 & 0 & -1 & 0\\
 +
1 & 0 & 0 & -2a\\
 +
0 & -1 & 0 & 0\\
 +
0 & 0 & 0 & 1
 +
\end{array}\right]\\&=
 +
\left[\begin{array}{cccc}
 +
0\cdot0+1\cdot1+0\cdot0+2a\cdot0 & 0\cdot0+1\cdot0+0\cdot(-1)+2a\cdot0 & 0\cdot(-1)+1\cdot0+0\cdot0+2a\cdot0 & 0\cdot0+1\cdot(-2a)+0\cdot0+2a\cdot1\\
 +
0\cdot0+0\cdot1+(-1)\cdot0+0\cdot0 & 0\cdot0+0\cdot0+(-1)\cdot(-1)+0\cdot0 & 0\cdot(-1)+0\cdot0+(-1)\cdot0+0\cdot0 & 0\cdot0+0\cdot(-2a)+(-1)\cdot0+0\cdot1\\
 +
(-1)\cdot0+0\cdot1+0\cdot0+0\cdot0 & (-1)\cdot0+0\cdot0+0\cdot(-1)+0\cdot0 & (-1)\cdot(-1)+0\cdot0+0\cdot0+0\cdot0 & (-1)\cdot0+0\cdot(-2a)+0\cdot0+0\cdot1\\
 +
0\cdot0+0\cdot1+0\cdot0+1\cdot0 & 0\cdot0+0\cdot0+0\cdot(-1)+1\cdot0 & 0\cdot(-1)+0\cdot0+0\cdot0+1\cdot0 & 0\cdot0+0\cdot(-2a)+0\cdot0+1\cdot1\\
 +
\end{array}\right]\\&=
 +
\left[\begin{array}{cccc}
 +
{\color{Green}\mathbf{1}} & 0 & 0 & 0\\
 +
0 & {\color{Green}\mathbf{1}} & 0 & 0\\
 +
0 & 0 & {\color{Green}\mathbf{1}} & 0\\
 +
0 & 0 & 0 & {\color{Green}\mathbf{1}}
 +
\end{array}\right]=
 +
\mathbf{I}_4
 +
\end{align}</math>}}
 +
 +
<!--{{Example
 
|Title=inverse of matrix
 
|Title=inverse of matrix
|Contents=
+
|Contents=<br/>
<br/><math>
+
:<math>
 
\mathbf{A}_e  =  
 
\mathbf{A}_e  =  
 
\left[\begin{array}{cccc}
 
\left[\begin{array}{cccc}
Line 37: Line 179:
 
\end{array}\right]
 
\end{array}\right]
 
</math><br/><br/>
 
</math><br/><br/>
<math>\begin{align}
+
:<math>\begin{align}
 
\mathbf{A}_e\mathbf{A}_e^{-1}  &=  
 
\mathbf{A}_e\mathbf{A}_e^{-1}  &=  
 
\left[\begin{array}{cccc}
 
\left[\begin{array}{cccc}
Line 64: Line 206:
 
\end{array}\right]=
 
\end{array}\right]=
 
\mathbf{I}_n
 
\mathbf{I}_n
\end{align}</math>}}
+
\end{align}</math>}}-->
 +
 
 +
[[Category:Article]]
 +
[[Category:Matrices]]

Latest revision as of 18:12, 13 November 2015

← Back: Minors and cofactors Overview: Matrix inversion Next: Gauß-Jordan-Algorithm

The inverse of an n-by-n square matrix \mathbf{A} is denoted as \mathbf{A}^{-1} and defined such that

\mathbf{A}\mathbf{A}^{-1}=\mathbf{A}^{-1}\mathbf{A}=\mathbf{I}_n

where \mathbf{I}_n is the n-by-n identity matrix.

Prerequesite for the inversion is, that \mathbf{A} is an n-by-n square matrix and that \mathbf{A} is regular. Regular means that the row and column vectors are linearly independent and so the determinant is nonzero:

det(\mathbf{A})\ne0

Otherwise the matrix is called singular.

Before determining the inverse of a matrix it is always useful to compute the determinant and check whether the matrix is regular or singular. If it is singular it is not possible to determine the inverse because there is no inverse. The following two subarticles describe two of the common procedures to determine the inverse of a matrix.

  1. Gauß-Jordan-Algorithm
  2. Adjugate Formula

Transformation matrices have a special structure, that is described in the transformations chapter. For this special matrix structure an easier method to invert the matrix exists. This method is presented in

      3. Inverse transformation.

Example: inverse of a 2-by-2 matrix

This is a simple example for the inverse of a 2-by-2 matrix:


\mathbf{A}_2 = 
\left[\begin{array}{cc}
2 & 3\\
1 & 2
\end{array}\right]
,\quad
{\mathbf{A}_2}^{-1}  = 
\left[\begin{array}{cc}
2 & -3\\
-1 & 2
\end{array}\right]

\begin{align}
{\mathbf{A}_2}{\mathbf{A}_2}^{-1}  &= 
\left[\begin{array}{cc}
2 & 3\\
1 & 2
\end{array}\right]\cdot
\left[\begin{array}{cc}
2 & -3\\
-1 & 2
\end{array}\right]\\&=
\left[\begin{array}{cc}
2\cdot2+3\cdot(-1) & 2\cdot(-3)+3\cdot2\\
1\cdot2+2\cdot(-1) & 1\cdot(-3)+2\cdot2
\end{array}\right]\\&=
\left[\begin{array}{cc}
4-3 & -6+6\\
2-2 & -3+4
\end{array}\right]\\&=
\left[\begin{array}{cc}
{\color{Green}\mathbf{1}} & 0\\
0 & {\color{Green}\mathbf{1}}
\end{array}\right]=
\mathbf{I}_2
\end{align}
Example: inverse of a 3-by-3 matrix

This is an example for the inverse of a 3-by-3 matrix:


\mathbf{A}_3 = 
\left[\begin{array}{ccc}
1&0&1\\
3&1&0\\
1&0&2
\end{array}\right]
,\quad
{\mathbf{A}_3}^{-1}  = 
\left[\begin{array}{ccc}
2&0&-1\\
-6&1&3\\
-1&0&1
\end{array}\right]

\begin{align}
{\mathbf{A}_3}{\mathbf{A}_3}^{-1}  &= 
\left[\begin{array}{ccc}
1&0&1\\
3&1&0\\
1&0&2
\end{array}\right]\cdot
\left[\begin{array}{ccc}
2&0&-1\\
-6&1&3\\
-1&0&1
\end{array}\right]\\&=
\left[\begin{array}{ccc}
1\cdot2+0\cdot(-6)+1\cdot(-1) & 1\cdot0+0\cdot1+1\cdot0 & 1\cdot(-1)+0\cdot3+1\cdot1\\
3\cdot2+1\cdot(-6)+0\cdot(-1) & 3\cdot0+1\cdot1+0\cdot0 & 3\cdot(-1)+1\cdot3+0\cdot1\\
1\cdot2+0\cdot(-6)+2\cdot(-1) & 1\cdot0+0\cdot1+2\cdot0 & 1\cdot(-1)+0\cdot3+2\cdot1
\end{array}\right]\\&=
\left[\begin{array}{ccc}
2+0-1 & 0+0+0 & -1+0+1\\
6-6+0 & 0+1+0 & -3+3+0\\
2+0-2 & 0+0+0 & -1+0+2
\end{array}\right]\\&=
\left[\begin{array}{ccc}
{\color{Green}\mathbf{1}} & 0 & 0\\
0 & {\color{Green}\mathbf{1}} & 0\\
0 & 0 & {\color{Green}\mathbf{1}}
\end{array}\right]=
\mathbf{I}_3
\end{align}
Example: inverse of a 4-by-4 matrix

This example is a proof of equation 3.40 in the robotics script (see page 3-61):


^R\mathbf{T}_N  = 
\left[\begin{array}{cccc}
0 & 1 & 0 & 2a\\
0 & 0 & -1 & 0\\
-1 & 0 & 0 & 0\\
0 & 0 & 0 & 1
\end{array}\right]
,\quad
{^R\mathbf{T}_N}^{-1}  = 
\left[\begin{array}{cccc}
0 & 0 & -1 & 0\\
1 & 0 & 0 & -2a\\
0 & -1 & 0 & 0\\
0 & 0 & 0 & 1
\end{array}\right]

\begin{align}
{^R\mathbf{T}_N}{^R\mathbf{T}_N}^{-1}  &= 
\left[\begin{array}{cccc}
0 & 1 & 0 & 2a\\
0 & 0 & -1 & 0\\
-1 & 0 & 0 & 0\\
0 & 0 & 0 & 1
\end{array}\right]\cdot
\left[\begin{array}{cccc}
0 & 0 & -1 & 0\\
1 & 0 & 0 & -2a\\
0 & -1 & 0 & 0\\
0 & 0 & 0 & 1
\end{array}\right]\\&=
\left[\begin{array}{cccc}
0\cdot0+1\cdot1+0\cdot0+2a\cdot0 & 0\cdot0+1\cdot0+0\cdot(-1)+2a\cdot0 & 0\cdot(-1)+1\cdot0+0\cdot0+2a\cdot0 & 0\cdot0+1\cdot(-2a)+0\cdot0+2a\cdot1\\
0\cdot0+0\cdot1+(-1)\cdot0+0\cdot0 & 0\cdot0+0\cdot0+(-1)\cdot(-1)+0\cdot0 & 0\cdot(-1)+0\cdot0+(-1)\cdot0+0\cdot0 & 0\cdot0+0\cdot(-2a)+(-1)\cdot0+0\cdot1\\
(-1)\cdot0+0\cdot1+0\cdot0+0\cdot0 & (-1)\cdot0+0\cdot0+0\cdot(-1)+0\cdot0 & (-1)\cdot(-1)+0\cdot0+0\cdot0+0\cdot0 & (-1)\cdot0+0\cdot(-2a)+0\cdot0+0\cdot1\\
0\cdot0+0\cdot1+0\cdot0+1\cdot0 & 0\cdot0+0\cdot0+0\cdot(-1)+1\cdot0 & 0\cdot(-1)+0\cdot0+0\cdot0+1\cdot0 & 0\cdot0+0\cdot(-2a)+0\cdot0+1\cdot1\\
\end{array}\right]\\&=
\left[\begin{array}{cccc}
{\color{Green}\mathbf{1}} & 0 & 0 & 0\\
0 & {\color{Green}\mathbf{1}} & 0 & 0\\
0 & 0 & {\color{Green}\mathbf{1}} & 0\\
0 & 0 & 0 & {\color{Green}\mathbf{1}}
\end{array}\right]=
\mathbf{I}_4
\end{align}