Cover
立即免费开始 2b_DT 2 - Linear algebra voor mobile robots.pdf
Summary
# Introductie tot vectoren en matrices
Dit gedeelte introduceert de basisconcepten van vectoren en matrices, hun representatie en structuur in lineaire algebra [1](#page=1) [7](#page=7).
### 1.1 Vectoren
Vectoren zijn fundamentele objecten in de lineaire algebra die gebruikt worden om punten of lijnen in een n-dimensionale ruimte te representeren. Ze worden gedefinieerd als arrays of lijsten van getallen [3](#page=3).
#### 1.1.1 Representatie van vectoren
Vectoren kunnen verschillende vormen aannemen, afhankelijk van de context. In een 3D-ruimte kunnen vectoren bijvoorbeeld worden weergegeven als:
* **Rijvectoren:** Een enkele rij getallen, zoals `2 1 1` [10](#page=10).
* **Kolomvectoren:** Een enkele kolom getallen, zoals:
$$
\begin{bmatrix}
2 \\
3 \\
1
\end{bmatrix}
$$
#### 1.1.2 Bewerkingen met vectoren
**Optellen en aftrekken:** Vectoren kunnen worden opgeteld of afgetrokken. De som van twee vectoren is commutatief, wat betekent dat de volgorde van optellen niet uitmaakt. Dit kan gevisualiseerd worden als het "ketenen" van de vectoren [5](#page=5).
**Scalair-vector product:** Het vermenigvuldigen van een vector met een scalair (een enkel getal) wijzigt de lengte van de vector, maar behoudt zijn richting [6](#page=6).
#### 1.1.3 Toepassingen van vectoren
Vectoren kunnen dienen om data te representeren. Een voorbeeld hiervan is een "pointcloud" in 3D, waarbij elke rij een punt in de ruimte definieert met x-, y- en z-coördinaten. Ook in hogere dimensies, zoals 4D, kunnen vectoren worden gebruikt om informatie zoals X, Y, Z-coördinaten en intensiteit te coderen [11](#page=11) [12](#page=12).
### 1.2 Matrices
Een matrix is een gestructureerde verzameling van getallen, georganiseerd in rijen en kolommen, vergelijkbaar met een tabel. Matrices kunnen worden gezien als verzamelingen van vectoren, waarbij de vectoren de kolommen of rijen van de matrix vormen [7](#page=7) [8](#page=8) [9](#page=9).
#### 1.2.1 Structuur van matrices
Een matrix wordt gedefinieerd door het aantal rijen ($m$) en het aantal kolommen ($n$). Dit wordt vaak aangeduid als een $m \times n$ matrix [7](#page=7).
* **Rijen:** Horizontale lijnen van getallen in de matrix [7](#page=7).
* **Kolommen:** Verticale lijnen van getallen in de matrix [7](#page=7).
#### 1.2.2 Matrices als verzamelingen van vectoren
Matrices kunnen worden geïnterpreteerd als een verzameling van kolomvectoren of rijvectoren.
**Matrices als verzameling kolomvectoren:**
$$
\begin{bmatrix}
1 & -2 & 3 \\
2 & 2 & 0
\end{bmatrix}
$$
Hier vormen de kolommen de vectoren:
$$
\begin{bmatrix}
1 \\
2
\end{bmatrix},
\begin{bmatrix}
-2 \\
2
\end{bmatrix},
\begin{bmatrix}
3 \\
0
\end{bmatrix}
$$
**Matrices als verzameling rijvectoren:**
$$
\begin{bmatrix}
2 & 1 \\
-2 & 2 \\
3 & 0
\end{bmatrix}
$$
Hier vormen de rijen de vectoren:
` `, `[-2 2]`, ` ` [1](#page=1) [2](#page=2) [3](#page=3) [9](#page=9).
#### 1.2.3 Voorbeeld van een matrix in 3D
Een matrix in 3D kan bijvoorbeeld de volgende structuur hebben, waarbij zowel rij- als kolomvectoren worden geïnterpreteerd:
$$
\begin{bmatrix}
2 & 1 & 1 \\
3 & -1 & 2 \\
1 & 3 & -1
\end{bmatrix}
$$
> **Tip:** Het begrip van matrices als verzamelingen van vectoren is cruciaal voor het begrijpen van matrixoperaties zoals matrixvermenigvuldiging en het oplossen van stelsels lineaire vergelijkingen.
> **Voorbeeld:** Een $3 \times 2$ matrix kan worden gezien als drie rijvectoren met twee elementen, of als twee kolomvectoren met drie elementen.
$$
\begin{bmatrix}
a_{11} & a_{12} \\
a_{21} & a_{22} \\
a_{31} & a_{32}
\end{bmatrix}
$$
---
# Speciale matrices en operaties
Dit gedeelte behandelt specifieke typen matrices, zoals rotatiematrices, en de algemene bewerkingen die op matrices kunnen worden toegepast, waaronder optellen, vermenigvuldigen en transponeren [13](#page=13) [15](#page=15).
### 2.1 Speciale matrices
#### 2.1.1 Rotatiematrices
Rotatiematrices worden gebruikt om rotaties in de ruimte te representeren [13](#page=13) [14](#page=14).
* **Rotatiematrix (2D)**: Beschrijft een rotatie in een tweedimensionaal vlak [13](#page=13).
* **Rotatiematrix (3D)**: Beschrijft rotaties rond de assen in een driedimensionale ruimte. Specifieke voorbeelden zijn [14](#page=14):
* Rotatiematrix (3D) - rond z-as [14](#page=14).
* Rotatiematrix (3D) - rond x-as [14](#page=14).
* Rotatiematrix (3D) - rond y-as [14](#page=14).
#### 2.1.2 Eenheidsmatrix
De eenheidsmatrix, ook wel de identiteitsmatrix genoemd, is een speciale vierkante matrix waarbij de diagonale elementen gelijk zijn aan 1 en alle andere elementen gelijk zijn aan 0. Wanneer een vector met de identiteitsmatrix wordt vermenigvuldigd, blijft de vector ongewijzigd, wat aangeeft dat deze transformatie geen effect heeft [21](#page=21).
Voor een $n \times n$ identiteitsmatrix $I$ geldt:
$$I_{ij} = \begin{cases} 1 & \text{if } i = j \\ 0 & \text{if } i \neq j \end{cases}$$
### 2.2 Matrixbewerkingen
Matrices kunnen op verschillende manieren worden bewerkt [15](#page=15).
#### 2.2.1 Optellen en aftrekken van matrices
Het optellen of aftrekken van twee matrices is mogelijk indien ze dezelfde afmetingen hebben, bijvoorbeeld $n \times m$. De som of het verschil van twee matrices $A = (a_{ij})$ en $B = (b_{ij})$ van grootte $n \times m$ wordt verkregen door de corresponderende elementen op te tellen of af te trekken [16](#page=16).
$$A + B = (a_{ij} + b_{ij})$$
$$A - B = (a_{ij} - b_{ij})$$
Als $A = (a_{ij})$ en $B = (b_{ij})$ twee $n \times m$ matrices zijn, dan is de som $A + B$ de matrix:
$$A + B = \begin{bmatrix} a_{11}+b_{11} & a_{12}+b_{12} & \dots & a_{1n}+b_{1n} \\ a_{21}+b_{21} & a_{22}+b_{22} & \dots & a_{2n}+b_{2n} \\ \vdots & \vdots & \ddots & \vdots \\ a_{m1}+b_{m1} & a_{m2}+b_{m2} & \dots & a_{mn}+b_{mn} \end{bmatrix}$$
Optellen is commutatief en associatief [15](#page=15).
#### 2.2.2 Vermenigvuldigen van een matrix met een scalar
Het vermenigvuldigen van een matrix met een scalar betekent dat elk element van de matrix met die scalar wordt vermenigvuldigd. Als $c$ een scalar is en $A = (a_{ij})$ een $n \times m$ matrix, dan is de resulterende matrix $cA$ [15](#page=15):
$$cA = (c \cdot a_{ij})$$
#### 2.2.3 Vermenigvuldigen van matrices
Matrixvermenigvuldiging, hoewel niet altijd commutatief, is een fundamentele bewerking [15](#page=15).
##### 2.2.3.1 Matrix-vector vermenigvuldiging
Een matrix kan worden gezien als een functie die vectoren in een vlak transformeert. Wanneer een matrix werkt op een algemeen punt, transformeert het de x- en y-componenten van die vector. Een matrix is in wezen de verzameling coëfficiënten van een systeem van lineaire vergelijkingen [17](#page=17).
Beschouw de transformatie van een vector $\begin{bmatrix} x \\ y \end{bmatrix}$ door een matrix $M = \begin{bmatrix} a & b \\ c & d \end{bmatrix}$:
$$M \begin{bmatrix} x \\ y \end{bmatrix} = \begin{bmatrix} a & b \\ c & d \end{bmatrix} \begin{bmatrix} x \\ y \end{bmatrix} = \begin{bmatrix} ax + by \\ cx + dy \end{bmatrix} = \begin{bmatrix} x' \\ y' \end{bmatrix}$$
Hierbij zijn $x' = ax + by$ en $y' = cx + dy$ de getransformeerde componenten.
##### 2.2.3.2 Matrix-matrix vermenigvuldiging
Voor het vermenigvuldigen van twee matrices, zeg $M$ en $N$, om een resulterende matrix $L$ te verkrijgen ($L = M \cdot N$), moet het aantal kolommen van matrix $M$ gelijk zijn aan het aantal rijen van matrix $N$. Als $M$ een $p \times q$ matrix is en $N$ een $q \times r$ matrix, dan is de resulterende matrix $L$ een $p \times r$ matrix [18](#page=18) [19](#page=19) [20](#page=20).
Het element $l_{ij}$ van de productmatrix $L$ wordt berekend door het dotproduct te nemen van de $i$-de rij van $M$ en de $j$-de kolom van $N$ [18](#page=18).
Stel dat $M$ een $3 \times 3$ matrix is:
$$M = \begin{bmatrix} m_{11} & m_{12} & m_{13} \\ m_{21} & m_{22} & m_{23} \\ m_{31} & m_{32} & m_{33} \end{bmatrix}$$
En $N$ is een $3 \times 3$ matrix:
$$N = \begin{bmatrix} n_{11} & n_{12} & n_{13} \\ n_{21} & n_{22} & n_{23} \\ n_{31} & n_{32} & n_{33} \end{bmatrix}$$
Dan is het product $L = M \cdot N$ een $3 \times 3$ matrix:
$$L = \begin{bmatrix} l_{11} & l_{12} & l_{13} \\ l_{21} & l_{22} & l_{23} \\ l_{31} & l_{32} & l_{33} \end{bmatrix}$$
Een specifiek element, bijvoorbeeld $l_{12}$, wordt berekend als:
$$l_{12} = m_{11}n_{12} + m_{12}n_{22} + m_{13}n_{32}$$
De matrixvermenigvuldiging is over het algemeen niet commutatief, wat betekent dat $M \cdot N \neq N \cdot M$ [15](#page=15).
#### 2.2.4 Transpositie van een matrix
De getransponeerde van een matrix $A$, aangeduid als $A^T$, wordt verkregen door de rijen van de oorspronkelijke matrix te verwisselen met de kolommen. Als matrix $A$ de afmetingen $m \times n$ heeft, dan heeft de getransponeerde matrix $A^T$ de afmetingen $n \times m$ [22](#page=22).
Het principe is eenvoudig: de eerste rij van $A$ wordt de eerste kolom van $A^T$, de tweede rij van $A$ wordt de tweede kolom van $A^T$, enzovoort [23](#page=23).
> **Voorbeeld:**
> Als matrix $A$ is:
> $$A = \begin{bmatrix} 1 & 2 & 3 \\ 4 & 5 & 6 \end{bmatrix}$$
> Dan is de getransponeerde matrix $A^T$:
> $$A^T = \begin{bmatrix} 1 & 4 \\ 2 & 5 \\ 3 & 6 \end{bmatrix}$$
> [23](#page=23).
Kortom, transponeren houdt in dat rijen en kolommen worden verwisseld [23](#page=23).
**Nut van transpositie:**
De getransponeerde matrix is nuttig bij het vermenigvuldigen van matrices wanneer de dimensies aangepast moeten worden om de vermenigvuldiging mogelijk te maken. Dit is bijvoorbeeld essentieel bij de vermenigvuldiging van matrices [24](#page=24).
**Nut bij mobiele robotica:**
In de mobiele robotica speelt transpositie een belangrijke rol bij:
* Coördinatentransformaties (van wereld naar robotcoördinaten) [25](#page=25).
* Odometrie en kinematica [25](#page=25).
* Sensorfusie, zoals bij Kalman filters [25](#page=25).
* SLAM (Simultaneous Localization and Mapping) [25](#page=25).
* Trajectplanning en -regeling [25](#page=25).
#### 2.2.5 Inversie van een matrix
Een matrix kan worden geïnverteerd indien deze vierkant is en een volledige rang heeft. De inverse van een matrix $A$, genoteerd als $A^{-1}$, is de matrix zodanig dat $A \cdot A^{-1} = A^{-1} \cdot A = I$, waarbij $I$ de identiteitsmatrix is [15](#page=15).
> **Tip:** De inverse van een matrix is conceptueel vergelijkbaar met het omgekeerde van een getal. Net zoals $\frac{1}{x}$ het omgekeerde van $x$ is en $x \cdot \frac{1}{x} = 1$, is $A^{-1}$ de inverse van $A$ zodanig dat hun product de identiteitsmatrix is.
### 2.3 Overige bewerkingen
* **Vermenigvuldiging met een vector**: Zoals besproken onder matrix-vector vermenigvuldiging [17](#page=17).
* **Sommen**: Commutatief en associatief [15](#page=15).
* **Product**: Niet commutatief [15](#page=15).
---
# Inverse matrices en determinanten
Dit hoofdstuk introduceert het concept van de inverse matrix, de rol van de determinant bij het bepalen van de inverterbaarheid, en de toepassingen ervan, met name in de robotica.
### 3.1 Introductie tot inverse matrices
De inverse van een matrix, genoteerd als $A^{-1}$, is een matrix die de transformatie van matrix $A$ ongedaan maakt. Formeel geldt de definitie $AA^{-1} = I$, waarbij $I$ de identiteitsmatrix is [26](#page=26).
> **Tip:** Zie de inverse matrix als de "terugspoelfunctie" voor de oorspronkelijke transformatie die door de matrix $A$ werd uitgevoerd.
Een concrete toepassing is te vinden in robotica: als matrix $A$ de transformatie van een robotframe naar het wereldframe beschrijft, dan beschrijft $A^{-1}$ de transformatie van het wereldframe terug naar het robotframe [26](#page=26).
### 3.2 Inverterbaarheid en de determinant
Niet elke matrix bezit een inverse matrix. De determinant van een matrix, genoteerd als $\det(A)$ of $|\det(A)|$, is cruciaal om te bepalen of een matrix inverterbaar is [26](#page=26) [27](#page=27).
* Als $\det(A) = 0$, dan heeft matrix $A$ geen inverse en wordt deze een *singuliere* matrix genoemd [27](#page=27).
* Als $\det(A) \neq 0$, dan heeft matrix $A$ wel een inverse en wordt deze een *niet-singuliere* matrix genoemd [27](#page=27).
Een inverse matrix is alleen mogelijk voor vierkante matrices (waarbij het aantal rijen gelijk is aan het aantal kolommen, $m=n$). Bij niet-vierkante matrices spreken we van overbepaalde systemen (meer vergelijkingen dan onbekenden, $m>n$) of onderbepaalde systemen (meer onbekenden dan vergelijkingen, $m **Tip:** Een determinant van nul impliceert dat de matrix informatie verliest tijdens de transformatie, wat resulteert in een singuliere matrix [28](#page=28).
### 3.3 Determinantberekening
#### 3.3.1 Determinant van een 2x2 matrix
Voor een algemene 2x2 matrix:
$$
A = \begin{pmatrix} a & b \\ c & d \end{pmatrix}
$$
wordt de determinant berekend als:
$$
\det(A) = ad - bc
$$
#### 3.3.2 Determinant van een 3x3 matrix
Voor een algemene 3x3 matrix:
$$
A = \begin{pmatrix} a & b & c \\ d & e & f \\ g & h & i \end{pmatrix}
$$
kan de determinant worden berekend met de Sarrus-regel of door cofactor-expansie. Met de Sarrus-regel:
$$
\det(A) = a(ei - fh) - b(di - fg) + c(dh - eg)
$$
#### 3.3.3 Determinant van grotere matrices
Voor matrices groter dan 4x4 wordt het berekenen van de determinant handmatig complex en wordt dit overgelaten aan computerprogramma's, zoals Numpy [31](#page=31).
### 3.4 Voorbeelden en toepassingen
#### 3.4.1 Voorbeeld van een inverse matrixberekening
bevat voorbeelden van de berekening van inverse matrices [32](#page=32).
#### 3.4.2 Voorbeeld 2D & 3D transformaties
illustreert hoe inverse matrices worden toegepast op 2D en 3D transformaties [33](#page=33).
#### 3.4.3 Toepassingen in robotica en andere velden
Inverse matrices en determinanten vinden brede toepassingen:
* **Jacobian singularities (robotarmen, manipulators):** Wanneer de determinant van de Jacobiaan nul is, worden bepaalde bewegingsrichtingen onmogelijk, wat de analyse van robotarmen beïnvloedt [34](#page=34).
* **Sensor fusion (covariantiematrix):** Een singuliere covariantiematrix impliceert oneindig grote onzekerheden in bepaalde richtingen, wat belangrijk is bij het combineren van sensordata [34](#page=34).
* **Coördinatentransformaties:** Zuivere rotatiematrices zijn altijd omkeerbaar met $\det(R)=1$. Echter, transformaties met fouten of degeneraties, zoals projecties, kunnen leiden tot $\det(A)=0$, waardoor terugrekenen naar de originele ruimte onmogelijk wordt [34](#page=34).
* **Path planning / control:** Soms is het noodzakelijk om een matrix te inverteren om snelheden of krachten te berekenen in plannings- en controlesystemen [34](#page=34).
---
## Veelgemaakte fouten om te vermijden
- Bestudeer alle onderwerpen grondig voor examens
- Let op formules en belangrijke definities
- Oefen met de voorbeelden in elke sectie
- Memoriseer niet zonder de onderliggende concepten te begrijpen
Glossary
| Term | Definition |
|------|------------|
| Vector | Een geordende lijst van getallen, die een punt of richting in een meerdimensionale ruimte kan vertegenwoordigen. Vectoren worden gebruikt om grootheden zoals positie, snelheid of kracht in de lineaire algebra te modelleren. |
| Matrix | Een rechthoekige reeks getallen, georganiseerd in rijen en kolommen. Matrices worden gebruikt om lineaire transformaties te vertegenwoordigen, systemen van lineaire vergelijkingen op te lossen en verzamelingen van vectoren op te slaan. |
| Scalair Product | Het resultaat van het vermenigvuldigen van een scalair (een enkel getal) met een vector. Dit resulteert in een nieuwe vector die dezelfde richting behoudt, maar waarvan de lengte is aangepast door de scalair. |
| Rotatie Matrix (2D) | Een speciale 2x2 matrix die wordt gebruikt om een punt of vector in een tweedimensionaal vlak om een oorsprong te roteren. De elementen van de matrix bevatten cosinus en sinus van de rotatiehoek. |
| Rotatie Matrix (3D) | Een speciale 3x3 matrix die wordt gebruikt om rotaties uit te voeren rond de x-, y- of z-as in een driedimensionale ruimte. Deze matrices zijn essentieel voor 3D-transformaties in robotica en computer graphics. |
| Identiteitsmatrix (Eenheidsmatrix) | Een vierkante matrix met enen op de hoofddiagonaal en nullen elders. Wanneer een vector of matrix wordt vermenigvuldigd met de identiteitsmatrix, blijft deze onveranderd. Het is het neutrale element voor matrixvermenigvuldiging. |
| Transpositie van Matrix | Het proces waarbij de rijen van een matrix worden omgewisseld met de kolommen. Een matrix $A$ van grootte $m \times n$ wordt na transpositie een matrix $A^T$ van grootte $n \times m$, waarbij het element op positie $(i, j)$ van $A$ nu op positie $(j, i)$ van $A^T$ staat. |
| Inverse Matrix | Een matrix $A^{-1}$ zodanig dat wanneer deze wordt vermenigvuldigd met een oorspronkelijke matrix $A$, het resultaat de identiteitsmatrix $I$ is ($A \cdot A^{-1} = I$). De inverse matrix maakt de transformatie van de oorspronkelijke matrix ongedaan en bestaat alleen voor vierkante, niet-singuliere matrices. |
| Determinant | Een scalair getal dat wordt geassocieerd met een vierkante matrix. De determinant geeft informatie over de matrix, zoals of deze een inverse heeft. Als de determinant van een matrix nul is, is de matrix singulier en heeft deze geen inverse. |
| Singuliere Matrix | Een vierkante matrix waarvan de determinant nul is. Een singuliere matrix heeft geen inverse en transformeert een niet-nul vector naar de nulvector, wat betekent dat het informatie verliest. |
| Coördinatentransformaties | Het proces van het omrekenen van coördinaten van het ene coördinatensysteem naar het andere. Dit is cruciaal in robotica voor het omzetten van metingen van sensoren naar een globaal referentiekader of omgekeerd. |
| Jacobian | Een matrix van partiële afgeleiden van een vectorfunctie. In robotica beschrijft de Jacobian de relatie tussen de gewrichtssnelheden van een robot en de lineaire en angulaire snelheden van zijn eindeffector, en wordt gebruikt om singulariteiten te analyseren. |