Matriisitulo#

Matriisien tavallista kertolaskua kutsutaan matriisituloksi. Kahden matriisin tulosta muodostuu uusi matriisi. Se ei välttämättä ole samaa tyyppiä kuin kumpikaan kertolaskussa mukana olevista matriiseista.

Keskenään kerrottavien matriisien ei tarvitse olla samaa tyyppiä keskenään. On kuitenkin tärkeä sääntö: matriisien \(A\) ja \(B\) kertolasku eli matriisitulo \(AB\) voidaan laskea vain, jos matriisi \(A\) on tyyppiä \(m \times n\) ja matriisi \(B\) tyyppiä \(n \times p\).

Matriisin \(A\) sarakkeiden määrän on siis oltava yhtä suuri kuin matriisin \(B\) rivien määrän. Kertolaskun tuloksena on matriisi \(C=AB\), jonka tyyppi on \(m \times p\). Ennen kuin alkaa laskea matriisituloa, kannattaa tarkistaa matriisien tyypin seuraavan kuvan mukaisesti. Kirjoitetaan matriisien \(A\) ja \(B\) tyypit vierekkäin vastaavien matriisien nimien alle. Jos kaksi keskimmäistä lukua ovat samat, kertolasku on mahdollinen. Tuloksena muodostuvan matriisin tyypin näkee kahdesta reunimmaisesta luvusta.

Matriisien tyypit

Matriisin \(C=AB\) alkio \(c_{ij}\) saadaan kertomalla matriisin \(A\) rivin \(i\) alkiot matriisin \(B\) sarakkeen \(j\) alkioilla ja laskemalla tulojen summa. Tämän muistamista voi helpottaa se, että matriisin rivejä ja sarakkeita voidaan ajatella vektoreina. Tällöin rivin ja sarakkeen alkioiden kerto- ja yhteenlaskuja sisältävä laskutoimitus on täsmälleen sama kuin vektorien pistetulo.

Laskun periaate on esitetty seuraavassa kuvassa. Esimerkkiksi matriisin \(C\) sinisellä reunustettu alkio, eli 1. rivin ja 2. sarakkeen alkio, saadaan laskemalla pistetulo matriisin \(A\) 1. rivistä ja matriisin \(B\) 2. sarakkeesta.

Matriisitulon periaate

Octavella matriisitulo lasketaan kertomerkillä, lasku \(AB\) suoritetaan siis komennolla A*B. WolframAlphassakin kertolasku onnistuu samalla * -merkillä.

Esimerkki

Laske tulot \(AB\) ja \(BA\), kun \(A=\begin{bmatrix}2&3&1\\0&4&2\end{bmatrix}\) ja \(B=\begin{bmatrix}0&2&1\\3&1&2\\1&0&2\end{bmatrix}\).

Matriisitulossa tulokseksi muodostuvan matriisin tyyppi riippuu siitä, missä järjestyksessä kertolasku lasketaan. Pistetuloja laskettaessa on mahdollista, että laskutoimitus koostuu yhdestä ainoasta kertolaskusta. Toisaalta on myös mahdollista saada tulokseksi matriisi, jossa on vain yksi alkio.

Lisäksi vaikka matriisit olisivat samaa tyyppiä, niin lopputulos riippuu laskujärjestyksestä. Reaalilukujen kertolaskun vaihdannaisuus (esimerkiksi 2 kertaa 5 on lukuarvoltaan yhtä suuri kuin 5 kertaa 2) ei siis yleensä päde matriiseille! Laskusääntönä tämä kirjoitetaan \(AB \neq BA\). Erikoistapauksia kyllä on, ja niitä käsitellään myöhemmin.

Esimerkki

Laske matriisitulot \(AB\) ja \(BA\), kun

a) \(A=\begin{bmatrix}1 & 2 & 3\end{bmatrix}\) ja \(B=\begin{bmatrix}4\\5\\6\end{bmatrix}\)

b) \(A=\begin{bmatrix}1 & 2 \\ 3 & 4\end{bmatrix}\) ja \(B=\begin{bmatrix}5 & 6 \\ 7 & 8\end{bmatrix}\)

Esimerkki

Ratkaise luku \(x\), kun \(A=\begin{bmatrix}1 & 2 \\ x & 0\end{bmatrix}\), \(B=\begin{bmatrix}x\\3\end{bmatrix}\), ja matriisin \(AB\) ensimmäisen rivin ja ensimmäisen sarakkeen alkio on \(10\). Mikä on tällöin matriisin \(AB\) puuttuva alkio?

Matriisitulossa lasketaan kerralla monta kerto- ja yhteenlaskua. Se on siis tehokas tapa laskea esimerkiksi kokonaiskustannuksia. Yksinkertaisen ongelman, kuten seuraavan esimerkiki, toki ratkaisee helpommin ilman matriiseja kuin matriiseja hyödyntämällä. Jos kuitenkin esimerkiksi tarvittavia raaka-aineita ja niiden mahdollisia ostopaikkoja olisi kymmeniä tai satoja, ongelma olisi mukavampaa antaa tietokoneen ratkaistavaksi matriisimuodossa.

Esimerkki

Artun kaupassa maito maksaa 1 €/litra, vehnäjauhot 0.60 €/kg ja munat 2.50 €/kenno. Bertan kaupassa maito maksaa 1.29 €/litra, vehnäjauhot 0.35 €/kg ja munat 2.19 €/kenno. Kummasta kaupasta on halvempaa ostaa ainekset lettutaikinaan, johon tulee 2 litraa maitoa, 0.4 kg jauhoja ja puoli kennoa munia? Muotoile ongelma matriisien kertolaskuksi!

Mistä edellisessä esimerkissä tiedettiin, mihin muotoon luvut pitää järjestää matriiseihin? Ainakin etukäteen oli tiedossa, että tulokseksi halutaan matriisi, jossa on 2 lukua, eli tuotteiden yhteishinta eri kaupoissa. Laskun tulos oli tyypin \(2 \times 1\) matriisi. Tällainen saatiin aikaan, kun kertolaskussa ensimmäinen matriisi oli tyyppiä \(2 \times 3\) ja toinen oli tyyppiä \(3 \times 1\).

Ei ole mitään “ulkoa opeteltavaa” sääntöä sille, miten sanalliset ongelmat muutetaan matriisilaskuiksi. Ongelman muotoilu laskuksi vaatii samanlaista ajattelua kuin yhtälöiden muodostaminen sanallisista tehtävistä muutenkin. Matriisitulossa matriisien tyypit voivat auttaa hahmottamaan ongelman rakennetta.

Edellisen esimerkiksi voi ratkaista niinkin, että muodostaa kertolaskuun matriisit, jotka ovat tyyppiä \(1\times 3\) ja \(3 \times 2\). Tällöin kertolasku tulos on tyyppiä \(1 \times 2\). Lopputuloksena ovat siis samat luvut kuin äsken, mutta vierekkäin eikä allekkain esitettynä. Kokeile vaikka!

Matriisitulon laskusääntöjä#

Jos matriisit \(A\), \(B\) ja \(C\) ovat keskenään sopivan kokoisia, niin niille ja reaaliluvulle \(p\) pätevät seuraavat laskusäännöt:

  • \((AB)C=A(BC)\)

  • \(A(B+C)=AB+BC\)

  • \((A+B)C=AC+BC\)

  • \(p(AB)=(pA)B=A(pB)\)

  • \((AB)^T=B^TA^T\)

  • \((B^TA^T)^T=AB\)

Osa laskusäännöistä näyttää hyvin samanlaisilta kuin reaalilukujen laskusäännöt, esimerkiksi osittelulaki. Alla on perusteltu eräs laskusäännöistä. Muiden laskusääntöjen perustelu tapahtuisi samalla tavalla, eli kirjoittamalla sääntöjen vasen ja oikea puoli auki mielivaltaisilla matriiseilla ja toteamalla lopuksi, että tuloksena olevien matriisien vastinalkiot ovat samat.