Lineaire Algebra

advertisement
Lineaire algebra
Wiskundige technieken
2009/2010
Vandaag
• Vectoren en matrices
• Oplossen van stelsels vergelijkingen
• Aantal belangrijke begrippen uit de lineaire
algebra
• Soms zonder, af en toe met bewijsjes
• En een enkel algoritme
2
Lineaire algebra
Matrices
• Belangrijk in veel toepassingen:
–
–
–
–
–
–
–
–
–
3
Oplossen van lineaire vergelijkingen
Graphics, beeldverwerking (o.a. compressie)
Natuurkunde
Optimalisering
Weergave van mogelijke toestanden van systeem en
overgangen
Graafalgoritmen
Muziek (o.a., compressie)
Planning
En nog veel meer
Lineaire algebra
Wat is een matrix
• 2-dimensionaal array
van getallen (integers,
reals, …)
• Notatie:
3 6  1
2 3 5 


4 2 2 
1
2
2
4

9
0


5 12
0


4

1
/
2
6


7 77
 3
3 bij 3 matrix, vierkant
4
5 bij 3 matrix
Lineaire algebra
Vector
• n bij 1 matrix
• Ook “liggende vectoren” (1 bij n)
• n heet dimensie van de vector
5
Lineaire algebra
Vectoren en 2d en 3d
• Punt op platte vlak: vector
met dimensie 2
– R2
• Punt in de ruimte: vector
met dimensie 3
0
– R3
• Toepassingen o.a. in
natuurkunde: snelheid,
versnelling, krachten, …
6
y
Lineaire algebra
x
 x
 y
 
Optellen van vectoren
• Tel overeenkomstige elementen op
7
Lineaire algebra
Scalair product van vector
• ax met a een getal en x
een vector:
vermenigvuldig alle
waarden in x met a
8
Lineaire algebra
1   3




3   2   6 
 3 9 
Nulvector
• Is overal 0
0 
  
0  
0 
9
Lineaire algebra
Lineaire combinaties
• Stel x1 , …, xn zijn vectoren van dezelfde dimensie
d, en a1, …, an zijn getallen
• Lineaire combinatie:
• a1x1+a2x2 + … anxn
• Als vectoren een lineaire combinatie hebben die
de 0-vector is (waarbij sommige ai  0), dan zijn
ze afhankelijk
– Betekent dat ze in hetzelfde vlak liggen (bijv., in 2d, op
dezelfde lijn)
• Anders: onafhankelijk
10
Lineaire algebra
Ieder punt is lineaire combinatie van
eenheidsvectoren
• Eenheidsvectoren in
2d: (0,1) en (1,0)
• Deze eenheidsvectoren
vormen basis: elk punt
in 2d is lineaire
combinatie van deze
vectoren
11
0 
1 
 
Lineaire algebra
1 
0 
 
Andere bases
• Als stel van d vectoren van dimensie d
onafhankelijk is, dan vormen ze een
(alternatieve) basis:
– We kunnen punten ook opschrijven met behulp
van deze vectoren
12
Lineaire algebra
Voorbeeld
• In FM-stereo worden niet linkergeluid L en
rechtergeluid R verzonden, maar
monosignaal L+R en stereoverschilsignaal
S=L-R
• Alternatieve basis:
1
1

13
1
 1
 
Lineaire algebra
Vraagjes
• Hoe weet je of een stelsel onafhankelijk is?
• Als je weet hoe je omrekent van 1e basis
naar 2e basis, hoe reken je terug om?
• Matrices, inversen, determinanten, ...
14
Lineaire algebra
Definities en notaties
• i-de rij van n bij n matrix: 1 bij n matrix
• i-de kolom van n bij n matrix: n bij 1 matrix
• aij is het (i,j)-de element van matrix A: staat
op rij i en kolom j
• A = [aij]
15
Lineaire algebra
Operaties op matrices:I
Optellen
• A+B
16
Lineaire algebra
Operaties II: Inproduct van liggende
en staande vector
• Inproduct van 1 bij n vector (rij) en n bij 1 vector
(kolom)
• Moeten even lang zijn – anders niet gedefinieerd
a1
17
 b1  n
 an       ai  bi
i 1
bn 
Lineaire algebra
Operaties III
Product van twee matrices
• A is n bij k matrix
• B is k bij m matrix
• Product van A en B: A*B wordt een n bij m
matrix
• AB = [cij] met
– cij = ai1b1j + ai2b2j + … + aikbkj
18
Lineaire algebra
Over matrixvermenigvuldiging
• Belangrijk in veel
toepassingen
• Let op dat de formaten
kloppen!
1 1 2 1 2 1 1 1
2 1  1 1  1 1  2 1
• Steeds “rij keer

 
 
 

kolom”
• Niet commutatief
19
Lineaire algebra
Pseudocode 
• for i = 1 to m
– for j = 1 to n
• cij = 0;
• for q = 1 to k do
– cij = cij + aiq * aqj
20
Lineaire algebra
Hoeveel werk
• O(m*n*k)
• A*B*C: de hoeveelheid werk kan
verschillen afhankelijk of je (A*B)*C of
A*(B*C) uitrekent
– Resultaat blijft wel hetzelfde
21
Lineaire algebra
Product van matrix en vector
•
•
•
•
A is m bij n matrix
x is vector van lengte n (n bij 1 matrix)
Ax wordt een vector van lengte m
Wat betekent Ax=b?
– Stelsel lineaire vergelijkingen


Ax  b
22
Lineaire algebra
Identiteitsmatrix
1
0
I4  
0

Of noteer: I
0
23
0 0 0

1 0 0
0 1 0

0 0 1
Lineaire algebra
Over identiteit
• Als A een n bij n matrix is:
• AIn=InA=A
24
Lineaire algebra
Nulmatrix
• 0n : n bij n matrix die overal 0 is
• A0n = 0nA = 0n
• A+0n = 0n +A = A
25
Lineaire algebra
Inverse
• Inverse van n bij n matrix A: een matrix B
met AB = In en BA = In
• Stelling: Als AB=In en CA=In dan is B=C
• Bewijs:
• C = CIn = CAB = InB = B
• Er is dus maximaal 1 matrix die de inverse
is
• Notatie: A-1
26
Lineaire algebra
Inverse gebruik voor
oplossen stelsel vergelijkingen
• Ax=b dan en slechts dan als x = A-1b
– Want x = Inx = A-1Ax = A-1b
27
Lineaire algebra
2 bij 2: determinant
a b 
A

c d 
• Determinant van een 2
bij 2 matrix A is
det(A) = ad – bc
• Als de determinant 0
is, dan heeft A geen
inverse
1 d
• Als de determinant
1
A 

niet 0 is, dan:
det( A)  c
28
Lineaire algebra
 b
a 
Voorbeeld
• 2x1 + 5 x2 = 11
• x 1 + 3 x2 = 6
29
Lineaire algebra
Vegen
• Vegen: methode om stelsel vergelijkingen
op te lossen
• Idee:
– Herhaal:
• Neem een variabele zeg xi
• Zorg dat er maar 1 vergelijking is waar xi in
voorkomt, door een van de vergelijkingen een aantal
keren van de andere af te trekken
30
Lineaire algebra
Stelsel
•
•
•
•
a11x1+ a12x2+ … a1nxn= b1
a21x1+ a22x2+ … a1nxn= b2
…
an1x1+ an2x2+ … annxn= bn
• Oftewel Ax=b
31
Lineaire algebra
Pseudocode
• For i = 1 to n do
– {Veeg met variabele xi}
– Kies j met aji  0 die niet al eerder gekozen
– Voor elke k  j
• Trek vergelijking j aki/aji keer van vergelijking k af
32
Lineaire algebra
Opmerkingen
• Je krijgt steeds meer variabelen die maar 1
keer met een niet-0 worden
vermenigvuldigd.
• Als je klaar bent met vegen kan je
makkelijk de oplossing vinden…
33
Lineaire algebra
Determinant van n bij n matrix
 1 2 3
det  1 0 1  2
 2 3 5
• Notatie: Ai,j is de
matrix die je krijgt
door uit A de i-de rij
en de j-de kolom weg
te laten
n
det( A)    1 ai1 det( Ai , j )
i 1
i 1
34
Lineaire algebra
Determinant: gebruik
• Matrix A heeft een inverse als det(A) 0
• Als A geen inverse heeft, heeft het stelsel
geen unieke oplossing
– Oneindig veel oplossingen OF
– Helemaal geen oplossing
• Er is ook een formule voor de inverse die
alleen determinanten (van A en
deelmatrices) gebruikt: onpraktisch
35
Lineaire algebra
Terug naar de vectoren
• Is een stelsel vectoren afhankelijk? Dat is
“gewoon” de vraag of een stelsel
vergelijkingen Ax=0 meer dan 1 oplossing
heeft (x=0 is altijd oplossing)
• Dus… hangt af of de determinant van de
matrix die je van de basis maakt 0 is!
• Terugrekenen: bereken de inverse!
36
Lineaire algebra
Over de determinant
• Als je kolommen of rijen verwisselt wordt de determinant
met -1 vermenigvuldigd
• Als je de matrix spiegelt blijft de determinant hetzelfde
• Als je een kolom met een getal r vermenigvuldigd wordt
de determinant ook met een getal r vermenigvuldigd
– Variabele in oplossing wordt r keer zo klein
• Als je een rij met een getal r vermenigvuldigd wordt de
determinant ook met een getal r vermenigvuldigd
– Als r  0, dan houd je dezelfde oplossingen
37
Lineaire algebra
En nog meer over de determinant
• Bij het vegen
verandert de
determinant niet!
• Als de determinant 0
is, dan kan je bij het
vegen een hele
vergelijking
wegpoetsen…
38
1 1 1  x1  1
2 1 3  x   1

 2   
4 3 5  x3  1
Lineaire algebra
Bovendriehoeksmatrix
• Kan je altijd met
vegen krijgen
• Determinant is product
diagonaalelementen
n
a11 a12
0 a
22

0
0

0
0
det( A)   aii
i 1
39
Lineaire algebra
a13
a23
a33
0
a14 

a24 
a34 

a44 
Voorbeeld
• Kleuren van pixels in een plaatje worden op verschillende
manieren gecodeerd
• RGB: hoeveelheid rood, groen, en blauw
• Voor compressie wordt dit soms omgezet naar Y, Cb, Cr,
met
– Y = 0.299R + 0.587G + 0.114B
– Cb = B – Y
– Cr = R – Y
• Toepassing: voor scherpte van plaatje is Y vooral
belangrijk; bij opslag worden er minder bits gebruikt voor
Cb en Cr
40
Lineaire algebra
In matrixvorm
0.587
0.114   R 
 Y   0.299
Cb   0.299  0.587  0.886 G 
  
 
Cr   0.701  0.587  0.114  B 
41
Lineaire algebra
Inverse
1
0.587
0.114 
0
1 
 0.299
1
 0.299  0.587 0.886   0  0.194  0.509




 0.701  0.587  0.114
1
1
0 
42
Lineaire algebra
Eigenwaarden en eigenvectoren
• Een eigenvector van een matrix A is een
vector x, zodat er een (reëel) getal r is met
Ax = rx.
• r heet dan een eigenwaarde
43
Lineaire algebra
Optimaliseren
• Veel planningsproblemen zijn te schrijven als “lineair programma”
•
•
•
•
•
•
Produceren van product 1 kost 3 minuten
Produceren van product 2 kost 5 minuten
Product 1 levert 5 winst, product 2 geeft 4 winst
Maximale vraag is resp. 130 en 607
Tijd is 202
Wat is de maximale winst?
• Eerst als matrix schrijven, en dan … extra technieken nodig …
44
Lineaire algebra
Conclusies
• Een inleiding in de lineaire algebra
• Allerlei plekken in de informatica gebruiken
matrices en vectoren
45
Lineaire algebra
Download