MatrixLab tabulka, která něco dělá

Tohle je statická kopie kapitoly pro vyhledávače. Interaktivní verze má animované obrázky, kontrolní otázky a tlačítka, která příklad načtou do kalkulačky.

Matice není tabulka čísel — je to zobrazení

Skoro každý kurz zavede matici jako obdélník čísel a hned nato předvede pravidlo, jak se násobí: řádek krát sloupec, sečíst. Kdo se zeptá „proč zrovna takhle?“, dostane obvykle odpověď „protože to tak je definované“. To je pravda a je to k ničemu.

Celá tahle labka stojí na jedné jediné větě:

Matice je zobrazení. Sežere vektor a vrátí jiný.jediná myšlenka téhle labky

Z toho plyne úplně všechno ostatní — proč se násobí právě takhle, proč na pořadí záleží, proč je determinant zajímavý, co jsou vlastní vektory a proč je SVD tak užitečná. Nic z toho se nemusí pamatovat zvlášť.

xyŷA·x̂A·ŷ1,400,750,501,25A =sloupec 1 = A·x̂sloupec 2 = A·ŷdeterminant1,375= kolikrát se zvětší obsah
  1. A = [a b; c d] — a co s tím?

    Matice se skoro všude zavádí jako tabulka čísel. Tím se nedá vysvětlit vůbec nic — proč se násobí zrovna takhle, proč nezáleží na pořadí, proč je determinant zajímavý. Matice je zobrazení: sežere vektor a vrátí jiný.

  2. A · (1, 0) = (1,4, 0,5)

    Dej jí první bázový vektor x̂ = (1, 0). Odpověď je přesně první sloupec matice. Vynásob si to ručně — jednička vybere první sloupec a nula zahodí druhý.

  3. A · (0, 1) = (0,8, 1,3)

    Totéž s ŷ = (0, 1): vypadne druhý sloupec. Tohle není náhoda ani trik zápisu.

  4. A = [ A·x̂ | A·ŷ ]

    Matici nemusíte číst jako tabulku. Stačí vědět, kam poslala bázové vektory — a to je celá matice, zapsaná do sloupců. Odsud plyne úplně všechno ostatní v téhle labce.

  5. A · (x, y) = x·sloupec 1 + y·sloupec 2

    Každý vektor je lineární kombinace a ŷ — a zobrazení je lineární, takže obraz je táž kombinace obrazů. Násobení maticí není nic jiného než tohle: vážený součet sloupců.

  6. A přeohne celou rovinu

    Když se to udělá se všemi body naráz, zdeformuje se celá mřížka. Přímky zůstanou přímkami a počátek zůstane na místě — to jsou přesně ty dvě vlastnosti, kterým se říká linearita. Tenhle obrázek je celý zbytek téhle labky.

Šest kroků od čtyř čísel k deformované rovině. Klíčový je čtvrtý: sloupce matice JSOU obrazy bázových vektorů — nic víc v matici není.

Sloupce jsou obrazy bázových vektorů

Nakrmte matici vektorem = (1, 0) a vypadne první sloupec. Nakrmte ji ŷ = (0, 1) a vypadne druhý. Není to náhoda — jednička vybere sloupec a nula ho zahodí.

A = [ A·x̂ | A·ŷ ]co v matici doopravdy je

To znamená, že matici nemusíte číst jako tabulku. Stačí vědět, kam poslala bázové vektory, a je tím celá popsaná. A protože je zobrazení lineární, obraz libovolného vektoru je táž kombinace sloupců, jaká byl ten vektor kombinací báze:

A·(x, y)ᵀ = x·(první sloupec) + y·(druhý sloupec)násobení je vážený součet sloupců

Tohle je jediný pohled na násobení matice vektorem, který stojí za zapamatování. Pravidlo „řádek krát sloupec“ dává tatáž čísla a nic neříká.

Zkus s tím pohnout

xyA·x̂A·ŷ1,2−0,60,41,1A =det A1,560orientace zachovánahodnost2obsah čtverce byl 1teď je |det A|
det A = 1,5600  ·  hodnost 2  ·  obsah se násobí 1,560×
Čtyři jezdce, čtyři čísla matice. Sleduj tři věci najednou: kam jdou obě šipky, jak se deformuje mřížka, a co dělá determinant. Zkus nastavit sloupce tak, aby ležely na jedné přímce.

V tomhle jediném obrázku už je vidět všechno, čemu se budou věnovat další kapitoly:

  • Jednotkový čtverec se změní v rovnoběžník a jeho obsah je |det A| — kapitola 3.
  • Když se oba sloupce položí na jednu přímku, rovina se zhroutí do přímky, determinant je nula a hodnost klesne na jedna — kapitoly 3 a 6.
  • Při záporném determinantu se rovina převrátí jako v zrcadle.
  • Mřížka zůstane mřížkou: přímky zůstávají přímkami, rovnoběžky rovnoběžkami a počátek na místě. To jsou přesně ty dvě vlastnosti, kterým se říká linearita.

Co matice naopak neumí. Počátek zůstává na místě vždyckyA·0 = 0 pro každou matici. Posunout něco tedy maticí samotnou nejde, a to je zásadní praktický problém: robotická transformace potřebuje otočit i posunout. Řeší se to trikem, který přidá jeden rozměr navíc — homogenní souřadnice, a je to celá další labka téhle tratě.

Rozměry a co se s čím smí

Matice m × nm řádků a n sloupců a zobrazuje vektory z n-rozměrného prostoru do m-rozměrného. Pořadí písmen je matoucí přesně naopak, než by člověk čekal, a stojí za to si to jednou pořádně přebrat: n sloupců znamená n bázových vektorů na vstupu, každý sloupec je jejich obraz, a ten obraz má m složek.

A (m×n) · B (n×p) = C (m×p)vnitřní rozměry se musí potkat

Nesedící rozměry nejsou technická drobnost — znamenají, že se skládá zobrazení, jejichž výstup a vstup jsou v jiných prostorech, což nedává smysl.

Vzorce v této kapitole

A — matice jako zobrazení
A = [ A·x̂ | A·ŷ | A·ẑ ] [—] kap. 1
A·v — násobení = vážený součet sloupců
A·v = Σ vⱼ · (j-tý sloupec A) [—] kap. 1