Loading [MathJax]/jax/output/CommonHTML/jax.js
This course has already ended.

Pienimmän neliösumman menetelmä

Palataan hetkeksi ratkaisemaan yhtälöryhmää Ax=b, missä A on matriisi ja b tunnettu vektori. Insinöörien elämässä tulee usein vastaan ongelmia, missä tällä yhtälöryhmällä ei yksinkertaisesti ole ratkaisua. Yksi yleinen syy on se, että reaalimaailman mittaukset eivät ole virheettömiä ja tämän vuoksi tuottavat ristiriitoja käytössä olevaan malliin. Tällöin yhtälöryhmälle Ax=b voidaan tarkan ratkaisun sijaan etsiä ”paras mahdollinen” ratkaisu, jota kutsutaan pienimmän neliösumman ratkaisuksi.

Määritelmä.

Olkoon A jokin m×n-matriisi ja b avaruuden Rm vektori. Tällöin yhtälöryhmän Ax=b pienimmän neliösumman ratkaisu (least squares solution) on avaruuden Rn vektori ¯x, joka toteuttaa epäyhtälön

bA¯xbAx

aina, kun xRn.

Jos yhtälöryhmällä Ax=b ei ole ratkaisua, niin bR(A). Pienimmän neliösumman ratkaisu on sellainen vektori ¯x, että vektori A¯xR(A) on ikään kuin lähimpänä vektoria b. Nyt kun periaate on selvä, tarvitsee enää tietää, miten ¯x lasketaan.

Merkitään virhevektoria, eli residuaalia e=bAx, jolloin komponenteittain

e=[e1e2em]=[b1(a11x1+a12x2++a1nxn)b2(a21x1+a22x2++a2nxn)bm(am1x1+am2x2++amnxn)]=bAx.

Pienimmän neliösumman ratkaisun ajatuksena on minimoida normi e. Samanaikaisesti minimoidaan myös normin neliö

e2=e21+e22++e2m,

sillä normi on ei-negatiivinen reaaliluku. Tässä summassa jokainen termi on ei-negatiivinen, ja siksi se saavuttaa minimiarvonsa täsmälleen silloin, kun jokainen yhteenlaskettavista termeistä e2i, i=1,2,,m minimoituu.

Pidetään summaa e2=e21+e22++e2m vuorotellen muuttujavektorin x komponenttien xj, j=1,2,,n funktiona. Nähdään, että

deidxj=aij,

jolloin ketjusäännön nojalla

de2dxj=2e1de1dxj+2e2de2dxj++2emdemdxj=2(a1je1+a2je2++amjem).

Matriisitulon avulla kirjoitettuna

de2dxj=2[a1ja2jamj][e1e2em]=2aTje,

missä aj on matriisin A sarake j. Kun kaikki tällaiset derivaatat kerätään pystyvektoriin, saadaan

[de2dx1de2dx2de2dxn]=[2aT1e2aT2e2aTne]=2[aT1aT2aTn]e=2ATe=2AT(bAx).

Asiaa sen tarkemmin todistamatta väitetään, että virhevektorin normin neliö e2 minimoituu silloin, kun kaikki derivaatat ovat yhtä aikaa nollia, eli kun 2AT(bAx)=0. Tämä ehto on yhtäpitävä yhtälön

ATAx=ATb

kanssa.

Määritelmä.

Yhtälöryhmän Ax=b normaaliryhmä on ATAx=ATb.

Pienimmän neliösumman menetelmää voidaan lähestyä myös teoreettisemmin seuraavasta näkökulmasta. Jos matriisiyhtälössä Ax=b matriisi A ei ole kääntyvä, voidaan silti yrittää löytää mahdollisimman hyvin käänteismatriisin käyttäytymistä imitoiva matriisi. Tällaista matriisia kutsutaan pseudoinverssiksi. Seuraava tulos otetaan käyttöön todistamatta.

Lause.

Jos A on m×n-matriisi, niin on olemassa yksikäsitteinen n×m-matriisi A+, joka toteuttaa ehdot

  1. AA+A=A,
  2. A+AA+=A+,
  3. (AA+)T=AA+
  4. (A+A)T=A+A.

Matriisia A+ sanotaan matriisin A Moore-Penrosen pseudoinverssiksi.

Lemma.

Jos A on m×n-matriisi, niin R(ATA)=R(AT).

Todistus.

Oletetaan, että yR(ATA). Tällöin y=ATAx jollekin avaruuden Rn vektorille x ja Ax=z on avaruuden Rm vektori. Täten y=ATz jollekin avaruuden Rm vektorille z, eli yR(AT).

Oletetaan sitten, että yR(AT), eli y=ATx jollekin avaruuden Rm vektorille x. Sijoitetaan matriisin A paikalle Moore-Penrosen pseudoinverssin A+ sisältävä matriisitulo edellisen lauseen ensimmäisen ehdon mukaisesti ja sovelletaan muitakin pseudoinverssin ominaisuuksia.

y=(AA+A)Tx=AT(AA+)Tx=AT(AA+)x=(ATA)A+x

Tässä A+x=z on avaruuden Rn vektori, jolle y=ATAz, ja täten yR(ATA).

Edellä olevista päättelyistä seuraa, että R(ATA)R(AT) ja R(AT)R(ATA), joten R(ATA)=R(AT).

Nyt voidaan lopulta osoittaa, että yhtälöryhmän Ax=b normaaliryhmällä ATAx=ATb on aina vähintään yksi ratkaisu.

Lause.

Olkoon A m×n-matriisi ja bRm. Tällöin yhtälöryhmän Ax=b normaaliryhmällä on ratkaisu x=¯x, ja tämä on yhtälöryhmän Ax=b pienimmän neliösumman ratkaisu.

Todistus.

Vektori ATb kuuluu luonnollisesti matriisin AT sarakeavaruuteen R(AT). Edellisen lemman nojalla siis ATbR(ATA), ja täten normaaliryhmällä ATAx=ATb on ratkaisu ¯x. Osion alussa johdetun mukaisesti sijoituksella x=¯x minimoidaan virhevektorin bAx normi, joten

bA¯xbAx

aina, kun xRn.

Pienimmän neliösumman ratkaisu on siis aina olemassa, ja edellinen lause tarjoaa keinon löytää sen.

Huomautus.

Pienimmän neliösumman ratkaisun olemassaolo ei tarkoita sitä, että se olisi yksikäsitteinen. On hyvinkin mahdollista, että matriisi normaaliryhmän kerroinmatriisi ATA ei ole kääntyvä, ja tällöin normaaliryhmällä on ääretön määrä ratkaisuja.

Varmistetaan vielä, että pienimmän neliösumman ratkaisu toimii kuten yhtälön Ax=b tarkkakin ratkaisu ainakin seuraavan lauseen mielessä.

Lause.

Olkoon ¯x yhtälöryhmän Ax=b pienimmän neliösumman ratkaisu. Jos yhtälöryhmällä Ax=b on ratkaisuja, niin tällöin myös ¯x on sen ratkaisu.

Todistus.
Koska yhtälöryhmällä on ratkaisuja, löydetään vektori x, jolle bAx=0. Koska pienimmän neliösumman ratkaisu minimoi yhtälön vasemman puolen lausekkeen, on oltava bA¯x=0. Ainoastaan nollavektorin normi on nolla, joten bA¯x=0 ja edelleen A¯x=b.

Normaaliryhmä ATAx=ATb voidaan ratkaista Gaussin eliminoinnilla, kuten mikä tahansa muukin yhtälöryhmä. Erityisen kiintoisa tapaus syntyy silloin, kun ratkaisu on yksikäsitteinen, eli kerroinmatriisi ATA on kääntyvä. Tällöin pienimmän neliösumman ratkaisuksi tulee

¯x=(ATA)1ATb.

Moore-Penrosen pseudoinverssi sattuu tässä tapauksessa olemaan täsmälleen se matriisi, joka ”kääntää” matriisin A: jos ATA on kääntyvä, niin A+=(ATA)1AT ja pienimmän neliösumman ratkaisu on ¯x=A+b.

Lause.

Olkoon A m×n-matriisi. Tällöin seuraavat väitteet ovat voimassa.

  1. Jos ATA on kääntyvä, niin A+A=In.
  2. Jos A on kääntyvä, niin A+=A1.
Todistus.
Jätetään harjoitustehtäväksi.

Käänteismatriisia (ATA)1 kutsutaan yhtälöryhmän Ax=b normalisoivaksi kertoimeksi, ja sen olemassaololle löydetään riittävä ja välttämätön ehto.

Lause.

Normalisoiva kerroin (ATA)1 on olemassa täsmälleen silloin, kun matriisin A sarakkeet ovat lineaarisesti riippumattomat.

Todistus.

Tiedetään, että m×n-matriisin A sarakkeet ovat lineaarisesti riippumattomat täsmälleen silloin, kun rank(A)=n. Vastaavasti n×n-matriisi ATA on kääntyvä jos ja vain jos rank(ATA)=n. Mutta aikaisemman lemman nojalla R(ATA)=R(AT), joten

rank(ATA)=rank(AT)=rank(A)=n,

ja väite on todistettu.

Esimerkki.

Tutki yhtälöryhmän

{x+5y=32x2y=2x+y=5

ratkaisujen olemassaoloa. Jos ratkaisuja ei ole, etsi residuaalin normin minimoiva approksimaatio ryhmän ratkaisulle. Jos tämä arvio on yksikäsitteinen, etsi yhtälöryhmän kerroinmatriisille Moore-Penrosen pseudoinverssi.

Ratkaisu.

Viedään yhtälöryhmän kokonaismatriisi redusoituun riviporrasmuotoon.

[Ab]=[153222115]rref[Ab]=[100010001]

Tästä nähdään, että yhtälöryhmällä ei ole tarkkaa ratkaisua, joten etsitään pienimmän neliösumman ratkaisu. Normaaliryhmän kerroinmatriisi ja vakiovektori

ATA=[60030]jaATb=[216].

Matriisi ATA on selvästi kääntyvä, sillä se on kolmiomatriisi, jolla ei ole nolla-alkiota diagonaalillaan. Täten normaaliryhmällä ATAx=ATb on yksikäsitteinen pienimmän neliösumman ratkaisu

¯x=(ATA)1ATb=1180[30006][216]=[13815].

Kerroinmatriisin A pseudoinverssiksi saadaan tällöin

A+=(ATA)1AT=1180[30006][121521]=[16131616115130].
Posting submission...