×   HOME JAVA NETPLOT OCTAVE Traži ...
  matematika2
Numeričko računanje QR rastava     QR rastav     Ekonomični QR rastav


Rješavanje problema najmanjih kvadrata

Koristeći svojstvo ortogonalne matrice $ Q$ da je $ \Vert Q\mathbf{x}\Vert=\Vert\mathbf{x}\Vert$ možemo lako riješiti problem najmanjih kvadrata. Neka je $ A$ matrica tipa $ m\times n$ , $ m>n$ , neka je $ \mathop{\mathrm{rang}}\nolimits A=n$ i neka je $ A=QR$ rastav matrice $ A$ . Tada je

$\displaystyle \Vert A\mathbf{x} - \mathbf{b}\Vert^2= \Vert QR\mathbf{x}-Q Q^T \...
...\mathbf{x}-Q^T \mathbf{b})\Vert^2 = \Vert R\mathbf{x}-Q^T \mathbf{b} \Vert^2.
$

Matricu $ R$ možemo zapisati kao

$\displaystyle R=\begin{bmatrix}R_0  0 \end{bmatrix},$ (6.6)

gdje je $ R_0$ gornje trokutasta kvadratna matrica reda $ n$ , a vektor $ Q^T\mathbf{b}$ možemo zapisati kao

$\displaystyle Q^T \mathbf{b}=\begin{bmatrix}\mathbf{c} \mathbf{d}
\end{bmatrix},
$

gdje je $ \mathbf{c}$ dimenzije $ n\times 1$ i $ \mathbf{d}$ dimenzije $ (m-n)\times 1$ . Sada imamo

$\displaystyle \Vert A\mathbf{x} - \mathbf{b}\Vert^2=\Vert R\mathbf{x}-Q^T \math...
...right\Vert^2 = \Vert R_0 \mathbf{x}-\mathbf{c}\Vert^2+\Vert \mathbf{d}\Vert^2.
$

Kako je $ \mathop{\mathrm{rang}}\nolimits A=n$ , iz svojstva QR3. zaključujemo da trokutasti sustav $ R_0\mathbf{x}=\mathbf{c}$ ima jedinstveno rješenje $ \mathbf{x}$ za koje je $ \Vert R_0\mathbf{x}-\mathbf{c}\Vert=0$ . Kako $ \mathbf{d}$ ne ovisi o $ \mathbf{x}$ , vrijednost $ \Vert A\mathbf{x} - \mathbf{b}\Vert$ se ne može više smanjiti pa je $ \mathbf{x}$ upravo (jedinstveno) rješenje problema najmanjih kvadrata. Očito je

$\displaystyle \min_{\mathbf{x}} \Vert A\mathbf{x} - \mathbf{b}\Vert =\Vert\mathbf{d}\Vert.
$

Sljedeća funkcija rješava problem najmanjih kvadrata pomoću QR rastava:

   function x=mojLS(A,b)
      % Rješava problem najmanjih kvadrata || A*x - b || --> min
      % za matricu punog stupčanog ranga A koristeći QR rastav.
      [m,n]=size(A)
      [Q,R]=mojQR(A)
      b1=Q'*b
      c=b1(1:n)
      x=R(1:n,1:n)\c
   end

Zadatak 6.6   Riješite problem najmanjih kvadrata iz primjera 6.2 pomoću prethodnog potprograma i usporedite rješenje s rješenjima dobivenim korištenjem normalne jednadžbe i Matlabove naredbe x=A\b.



Octave On-line

     


[Octave On-line Home]    [Octave User's Guide]

Napomena 6.4   Vidjeli smo da problem najmanjih kvadrata možemo rješavati na dva načina: pomoću normalne jednadžbe i pomoću QR rastava. Rješavanje problema najmanjih kvadrata pomoću QR rastava je otprilike dva puta sporije, ali zato ima bolja numerička svojstva, odnosno u određenim situacijama daje točnije rješenje.


Numeričko računanje QR rastava     QR rastav     Ekonomični QR rastav