Quadrados mínimos e sistemas sobredeterminados
Como encontrar a solução de um sistema linear que não tem solução?
Vamos lá?
Já vimos um exemplo trabalhado e construímos a teoria. Nesta aula vamos aplicar tudo isto a um exemplo real. Nesta aula vamos relacionar o problema de ajuste de curvas pelo método de quadrados mínimos à tentativa de resolver um sistema linear sobredeterminado.
- 1
- 2
- 3
- 4
- 5
- 6
O que é o resíduo em um problema de ajuste?
Sobre o sistema linear $\mathsf{\Phi}c=y,$ podemos dizer que
A solução de quadrados mínimos de um sistema sobredeterminado $Ax=b$ é
No Octave, a função $\phi_1(x) = 1$ foi definida como phi1 = @(x) ones(length(x),1)
. Podemos afirmar que...
No Octave, para que serve o operador \
(barra invertida)?
Vimos, em um exemplo e no caso geral, que a resolução do problema de ajuste de curva recai em buscar o vetor de coeficientes $c^*$ para o qual a combinação linear de funções escolhidas, $\phi_1,\phi_2, \ldots,\phi_n,$ resulta na menor norma possível para o vetor diferença $(\phi - y).$
Como o vetor $\phi = (\phi(x_1),\phi(x_2),\ldots,\phi(x_m))^T$ pode ser escrito como $\phi = \mathsf{\Phi}c,$ temos que o vetor $c^*,$ solução de quadrados mínimos, também tem a propriedade de que $$\|\mathsf{\Phi}c^* -y\|_2^2 = \min_{c}\|\mathsf{\Phi}c-y\|_2^2,$$ ou seja, $c^*$ é o vetor o qual o resíduo do sistema linear sobredeterminado $\mathsf{\Phi}c=y$ é o menor possível. Dizemos que esse vetor é a solução, no sentido de quadrados mínimos, para o sistema linear $\mathsf{\Phi}c=y.$
Esquecendo a motivação inicial (o ajuste de curvas), podemos considerar um sistema linear sobredeterminado $Ax=b,$ onde $A$ é uma matriz $m\times n,$ com $m>n.$ Sistemas como este, em geral, não têm solução. Entretanto, como fizemos acima, podemos procurar o vetor que melhor desempenharia o papel de vetor solução, no sentido de quadrados mínimos. Esse vetor, $x^*,$ é definido como aquele que minimiza o resíduo na norma euclidiana. Ou seja, $x^*$ é tal que $$\|Ax^* -b\|_2^2 = \min_{x}\|Ax-b\|_2^2.$$ Para computar $x^*$ basta construir o sistema normal, $A^TAx=A^Tb,$ e resolvê-lo.
No vídeo, vimos também que o Octave tem um operador muito conveniente para resolver sistemas lineares. Para um sistema linear $Ax=b,$ o operador \
(barra invertida), usado como A\b
, fornece a solução do sistema linear, caso este tenha solução, ou a solução de quadrados mínimos quando o sistema não tiver solução. A vantagem em usar o operador \
é não precisar montar o sistema normal. Internamente, o Octave analisará o sistema linear e decidirá qual método é mais adequado para proceder, do ponto de vista numérico. Por conta desta facilidade, certo cuidado deve ser tomado ao usar esse operador. Não necessariamente o vetor computado por A\b
é solução do sistema linear, no sentido clássico.
Considere os sistemas lineares a seguir. Para cada um deles, construa o sistema normal, encontre a solução de quadrados mínimos e compute o resíduo quadrático, isto é, $\|Ax-b\|_2^2.$
- $\displaystyle{\begin{pmatrix}1&2\\ 2&1\\ 1&1\end{pmatrix} \begin{pmatrix}x_1\\x_2\end{pmatrix} = \begin{pmatrix}3 \\ 3\\ 1\end{pmatrix}}$
- $\displaystyle{\left(\begin{array}{rr}1&3\\ -2&1\\ 1&1\end{array}\right) \begin{pmatrix}x_1\\x_2\end{pmatrix} = \left(\begin{array}{r}1 \\ 5\\ -1\end{array}\right)}$
- $\displaystyle{\begin{pmatrix}1\\ 2\\ 3\end{pmatrix} x = \begin{pmatrix}1 \\ 1\\ 1\end{pmatrix}}$
- $\displaystyle{\begin{pmatrix}1\\ 1\end{pmatrix} x = \begin{pmatrix}1 \\ 2\end{pmatrix}}$