Orthonormal Vectors, Orthogonal Matrices and Gram-Schmidt Method

Posted by Amit Rajan on Saturday, April 2, 2022

14.1 Orthonormal Vectors & Orthogonal Matrices

A set of Orthonormal Vectors can be defined as:

$$\begin{align} q_i^Tq_j = \begin{cases} 0 ,& \text{if } i \neq j \\ 1 ,& \text{if } i=j \end{cases} \end{align}$$

When these set of $n$ orthonormal vectors are put into a matrix $Q$ such that $Q = \begin{bmatrix} q_1 & q_2 & … & q_n \end{bmatrix}$, then we get $Q^TQ = I$. It should be noted that $Q$ doesn’t have to be a square matrix. When $Q$ is a square matrix, we can call it Orthogonal. If $Q$ is a square matrix, $Q^TQ=I$ gives us $Q^T=Q^{-1}$. Hence, a square matrix whose columns are $\perp$ to each other and are of unit length is called as orthogonal matrix. One of the example of orthogonal matrix is given below.

$$\begin{align} Q = \frac{1}{2}\begin{bmatrix} 1 & 1 & 1 & 1 \\ 1 & -1 & 1 & -1 \\ 1 & 1 & -1 & -1 \\ 1 & -1 & -1 & 1 \end{bmatrix} \end{align}$$

A rectangular matrix with orthonormal columns is shown below.

$$\begin{align} Q = \frac{1}{3}\begin{bmatrix} 1 & -2 & 2 \\ 2 & -1 & -2 \\ 2 & 2 & 1 \end{bmatrix} \end{align}$$

One of the most important property of a rectangular matrix with orthonormal columns is the ease in the computation of projection matrix $P$. Projection matrix for any matrix $Q$ is given as $P=Q(Q^TQ)^{-1}Q^T$. As $Q$ has orthonormal columns, $Q^TQ = I$ and hence $P=Q(Q^TQ)^{-1}Q^T = QIQ^T = QQ^T$. For an orthogonal matrix $Q$ (square matrix with orthonormal columns), the projection matrix $P=I$.

Now for the solution of the equation $Ax=b$. If $A=Q$, the equation reduces to $Qx=b \implies Q^TQx=Q^Tb \implies x=Q^Tb$. This makes solving the equation less compue intensive as inverse of the matrix is not involved. Each individual components of $x$ can be given as $x_i = q_i^Tb$. Or we can say that the projection on the $i^{th}$ basis vector is just $q_i^Tb$.

14.2 Gram-Schmidt Method

The main goal of Gram-Schmidt Method is to convert any set of vectors into orthonormal vectors. Let $a,b$ be two vectors. We have to convert them into orthonormal set of vectors. The conversion steps are as follows, where $A,B$ are orthogonal vectors obtained from $a,b$ and $q_A,q_B$ are the final orthonormal vectors:

$$\begin{align} a,b \rightarrow A,B \rightarrow q_A = \frac{A}{\lVert A \rVert}, q_B = \frac{B}{\lVert B \rVert} \end{align}$$

We can take $A=a$. If we revisit the way we take projection of $b$ onto $a$, the error $e$ is $\perp$ to $a$ and hence can be taken as $B$. i.e. $B = e = b - \frac{A^Tb}{A^TA}A$. To confirm whether $A \perp B$, we should have $A^TB=0$. $A^TB = A^T(b - \frac{A^Tb}{A^TA}A) = 0$.

Similarly, for a set of three vectors $a,b,c$ the transformation steps are:

$$\begin{align} a,b,c \rightarrow A,B,C \rightarrow q_A = \frac{A}{\lVert A \rVert}, q_B = \frac{B}{\lVert B \rVert}, q_C = \frac{C}{\lVert C \rVert} \end{align}$$

We can compute $A,B$ and hence $q_A,q_B$ the same way as we did for a two vector case. To get $C$, we have to remove the projections of $c$ along the direction of $A$ and $B$ from it. Hence, $C = c - \frac{A^Tc}{A^TA}A - \frac{B^Tc}{B^TB}B$.

Example:

$$\begin{align} a = \begin{bmatrix} 1 \\ 1 \\ 1 \end{bmatrix}, b = \begin{bmatrix} 1 \\ 0 \\ 2 \end{bmatrix} \implies A = \begin{bmatrix} 1 \\ 1 \\ 1 \end{bmatrix}, B = \begin{bmatrix} 1 \\ 1 \\ 1 \end{bmatrix} - \frac{3}{3}\begin{bmatrix} 1 \\ 0 \\ 2 \end{bmatrix} = \begin{bmatrix} 0 \\ -1 \\ 1 \end{bmatrix} \end{align}$$

$$\begin{align} q_A = \frac{1}{\sqrt{3}}\begin{bmatrix} 1 \\ 1 \\ 1 \end{bmatrix}, B = \frac{1}{\sqrt{2}}\begin{bmatrix} 0 \\ -1 \\ 1 \end{bmatrix} \end{align}$$

Finally, a matrix $A$ whose columns are $a,b$ and is denoted as $A = \begin{bmatrix} a & b \end{bmatrix}$ can be decomposed as $A=QR$ where $Q = \begin{bmatrix} q_A & q_B \end{bmatrix}$ and $R$ is upper triangular. $R$ is upper triangular beacuse later columns of $Q$ are all perpendicular to the former ones.