일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 수식삽입
- LaTeX
- MATLAB
- Julia
- 논문작성법
- 우분투
- teps
- 딥러닝
- Statics
- IEEE
- pytorch
- 생산성
- matplotlib
- 옵시디언
- 고체역학
- JAX
- WOX
- 논문작성
- Zotero
- ChatGPT
- 인공지능
- 수치해석
- 에러기록
- 텝스
- 텝스공부
- Numerical Analysis
- obsidian
- Linear algebra
- Dear abby
- Python
- Today
- Total
뛰는 놈 위에 나는 공대생
[고등자동제어] 제어에서 필요한 수학 개념 본문
제어에서 많이 쓰이는 수학에 대해서 간단하게 정리합니다.
사실 상 전부 linear algebra 내용입니다.
1. Field F
Definition : a set of elements called scalars together with two binary operations, addition(+) and multiplication(·) such that for all $\alpha,\beta,\gamma \in F$
1) Closure : $\alpha\cdot\beta\in F, \alpha+\beta\in F$
2) Commutativity : $\alpha\cdot\beta=\beta\cdot\alpha, \alpha+\beta=\beta+\alpha$
3) Associativity
4) Distribution
5) Identities
5-1) additive $0\in F \text{ such that }\alpha+0=\alpha$
5-2) multiplicative $1\in F \text{ such that }\alpha\cdot 1=\alpha$
6) Inverses : For all $\alpha\in F$ there exist
6-1) additive : $\alpha+(-\alpha)=0$
6-2) multiplicative : $\alpha\cdot\alpha^{-1}=1$
Example)
$\mathbb{R}$ = the set of real numbers
$\mathbb{C}$ = the set of complex numbers
$\mathbb{Q}$ = the set of rational numbers
$R(s)$ = the set of rational functions
$G(s)=\displaystyle\frac{s+1}{s^{2}+3s+2}$
$Z$(the set of interger)는 fields가 아니다. inverse property를 만족하지 않음.
$R^{2\times2}$(the set of real 2x2 matrix)는 fields가 아니다. commutativity property를 만족하지 않음.
2. Vector Spaces
Definition : A vector space(V;F) is a set of vectors V together with a field F and two operations vector-vector addition(+) and vector-scalar multiplication($\circ$) such that for all $\alpha, \beta \in F$ and all $v_{1},v_{2},v_{3} \in V$
field에서 scalar를 가져와서 vector와 함께 addition과 multiplication이 가능하다면, 이 field와 vector를 vector space라고 합니다. 다르게 표현하자면, 내가 정한 vector를 선형조합하여 만들 수 있는 공간(이자 범위)을 vector space라고 합니다.
1) Closure : $v_{1}+v_{2} \in V$, $\alpha\circ v_{1}\in V$
2) Commutativity : $v_{1}+v_{2}=v_{2}+v_{1}$
3) Associativity : $(v_{1}+v_{2})+v_{3}=v_{1}+(v_{2}+v_{3})$
4) Distribution : $\alpha \circ(\beta\circ v_{1})=(\alpha\cdot \beta)\circ v_{1}, \alpha\circ(v_{1}+v_{2})=a\circ v_{1}+a\circ v_{2}$
5) Additive Identities : $0\in V\text{ such that }v+0=v$
6) Additive Inverses : $\text{For all }v\in V \text{ there exist }v+(-v)=0$
일반적으로 field로 real number $\mathbb{R}$이나 complex number $\mathbb{C}$를 사용합니다.
Example)
$(\mathbb{R};\mathbb{R}), (\mathbb{C};\mathbb{C})$
field는 자기 자신을 이용한 vector space로도 볼 수 있습니다. real number는 일차원 벡터로도 볼 수 있습니다.
$(\mathbb{R}^{n}; \mathbb{R}); (\mathbb{C}^{n}; \mathbb{C})$
N차원 벡터인데 그 요소가 real 또는 complex인 경우
$(R[s];\mathbb{R})\text{, where R[s] is the set of polynomials in s with real coefficients}$
$(\mathbb{R};\mathbb{R})$
3. Linear independence
지금까지는 field와 vector space의 개념을 알아보았습니다. 이 vector space 안에서 각 vector들이 어떤 관계를 맺고, 이 벡터들로부터 알 수 있는 vector space의 특징들에 대해서 알아볼 것입니다.
1) Linear Independence
Definition :
A set of $S =\left\{v_{i} : i \in I\right\}\text{ of vectors from V}$ is called linearly dependent if there exist scalars $\alpha_{i}$ not all zero such that $\sum_{i\in I}\alpha_{i}v_{i}=0$
Otherwise, the set of vectors S is said to be linearly independent.
한국말로 풀어쓰자면, vector space 안에 있는 vector들로 이루어진 set이 있을 때, 이 set을 이루는 vector들의 선형조합으로 0을 만들 수 있으면 linearly dependent하다고 말할 수 있습니다.
만약 vector들의 모두 linearly independent하다면, 어떻게 조합해도 0으로 만들 수 없으므로, 선형조합을 했을 때 모든 scalar가 0이 될 수밖에 없습니다.
예를 들어 2차원 공간에서 $[1,0]^{T}$ 벡터와 $[0,1]^{T}$벡터가 있다면 둘을 어떻게 조합하든 간에 $[0,0]^{T}$로 만들 수 없습니다. 따라서 이 2차원 공간에 있는 저 두 벡터는 linearly independent합니다.
추가 example
2) Bases
A set of B of linearly independent vectors in a vector space V is called a basis for V if every vector in V can be uniquely expressed as a finite linear combination of vectors in B.
linear independence 개념을 안다면, 이제 basis라는 개념에 대해서 알 수 있습니다.
vector space V에 있는 vector set 중에서 V 안에 있는 모든 백터를 선형조합으로 표현할 수 있는 vector set을 B라고 합니다.
위에서 봤던 예에서, 2차원 vector space $(\mathbb{R}^{2};\mathbb{R})$일 때, 두 벡터 $[1,0]^{T}$와 $[0,1]^{T}$로 모든 벡터를 표현할 수 있는 것과 같습니다. X-Y 평면이 있을 때 모든 점을 X축 값과 Y축 값의 조합으로 나타낼 수 있는 것처럼 생각하면 됩니다. 그러나 꼭 $[1,0]^{T}$와 $[0,1]^{T}$인 두 벡터 뿐 아니라
$[2,0]^{T}$와 $[0,3]^{T}$로도 선형조합을 통해 모든 벡터를 표현할 수 있습니다.
$\blacktriangleright$ Basis는 vector space 안에서 하나만 존재하는 것이 아닙니다. 즉, unique하지 않습니다.
3) Dimension
basis를 알면 이제 vector space의 dimension에 대해서도 이해할 수 있습니다.
vector space의 dimension은 곧 basis의 linearly independent vector의 수와 일치하기 때문입니다.
basis의 linearly independent vector 수가 2개라면, 그 vector space는 2차원인 것입니다.
기본적으로 vector space V가 n-dimensional vector space일 때 basis인 B는 다음과 같습니다.
$\text{B(the set of vectors in vector space) is a basis if and only if B contains n linearly independent vectors}$
또한 span이라는 개념도 있습니다.
$\text{Span of S}={v_{i}: i \in I}$는 the set of all finite linear combination of vectors in S입니다.
따라서 Span of basis는 vector space V라고 추론해볼 수 있습니다.
왜냐하면 basis 정의 자체가 vector space의 모든 벡터를 만들 수 있는 linearly independent vector들의 set이기 때문입니다. 그리고 그 벡터의 개수는 vector space의 dimension과 일치합니다.
4. Norm
1) norm
vector space가 있을 때 norm이라는 function을 적용할 수 있습니다.
norm이라는 function에 대한 정의는 다음과 같습니다.
주목해야할 것은, 이 함수가 vector에서 양의 실수로 변환해준다는 점입니다. 이 성질을 만족하는 모든 function을 norm이라고 할 수는 있겠지만
대체로는 $\mathbb{R}^{n}$과 $\mathbb{C}^{n}$인 vector space에서 쓰이는 norm이 몇 개 있습니다.
1) 1-norm
$\left \| v \right \|_{1}=\sum_{i=1}^{n}\left | v_{i} \right |$
2) euclidean norm
$\left \| v \right \|_{2}=(\sum_{i=1}^{n}\left | v_{i} \right |^{2})^{\frac{1}{2}}$
3) p-norm
$\left \| v \right \|_{p}=(\sum_{i=1}^{n}\left | v_{i} \right |^{p})^{\frac{1}{p}}$
4) $\infty$-norm
$\left \| v_{i} \right \|_{\infty}=\underset{i}{max}|v_{i}|$
function space에 대해서도 norm을 정의한 것이 있는데 그림만 첨부하고 넘어갑니다.
2) inner product
inner product의 정의는 다음과 같습니다. 두 벡터가 input으로 들어가면 어떤 복소수(또는 vector space에 따라 )
vector space에 따라 inner product가 다릅니다.
In $\mathbb{R}^{n}, \left \langle v,w \right \rangle = v^{T}w$
In $\mathbb{C}^{n}, \left \langle v,w \right \rangle = v^{*}w = \overline{v}^{T}w$
complex number일 때는 real number일 때의 transpose와 달리 complex conjugate를 해줘야 합니다.
이렇게 inner product를 정의한 데에는, norm과 연관이 있기 때문입니다.
V가 inner product가 정의된 vector space일 때, norm은 다음과 같이 정의됩니다.
$\left \| v \right \| \triangleq \left \langle v,v \right \rangle^{\frac{1}{2}}$
이렇게 되는 것은, 우리가 위에서 정의한 많은 norm들 중 보통 euclidean norm을 사용하며, 위의 inner product도 엄밀히 말하면 euclidean inner product로 볼 수 있습니다.
3) orthogonality
만약 두 벡터 $v,w$의 inner product가 0이라면 두 벡터는 orthogonal하다고 말합니다.
두 벡터의 관계를 $v\perp w$라고 문자로 표현할 수 있습니다.
추가로
$\text{A set of vectors S is called orthogonal if }v\perp w\text{ for all }v,w\in S, v\neq w$
set of vectors가 orthogonality를 가진다는 것은 그 set에 속한 모든 벡터가 orthogonal하다는 뜻입니다.
또한 set of vectors가 orthonormal일 때는 set 안에 있는 벡터의 norm이 1일 때($\left\|v\right\|=1$)를 말합니다.
5. Linear operator
V와 W가 vector spaces over the same base field F를 가질 때
A linear operator is a mapping
$\phi : V \rightarrow W\text{ such that for all }v_{1},v_{2}\in V\text{ and all}\alpha \in F$
$\text{Additivity : }\phi(v_{1}+v_{2})=\phi(v_{1})+\phi(v_{2})$
$\text{Homogeneity : }\phi(\alpha v)=\alpha \phi(v)$
한 vector space V의 vector v를 다른 vector space W의 vector w로 변환시키는 함수(additivity와 homogeneity 만족)를 linear operator라고 한다.
example)
예를 들어 v가 2차원 벡터이고, w가 3차원 벡터일 때 이 둘을 연결해주는 matrix A는
$w = A\cdot v\text{, where }A=R^{3\times 2}$
vector라는 개념에서 matrix라는 개념으로 확장할 때, linear operator라는 관점에서 볼 수 있다는 것을 알 수 있습니다.
1) Coordinate Transformation / Similarity Transformation
2) Subspace / Orthogonal complement
subspace는 vector space V 안에 속하면서 addition, scalar multiplication에 대하여 닫혀있고 zero vector를 보함하는 vector space를 말합니다. 좀 더 넓게 말하면 vector space의 operation을 만족하면서 vector space에 포함되어 있는 공간을 말합니다.
예를 들어 $\mathbb{R}^{2}$의 subspaces 중에는
(1). ${(0,0)}$ : 영벡터
(2). $\mathbb{R}^{2}$ : 자기자신
(3). ${\begin{bmatrix}x\\y\end{bmatrix}:ax+by=0}$
S be a subspace of a vector space V 일 때,
The orthogonal complement of S는 the set $S^{\perp}$
$S^{\perp}={v \in V : v \perp S}$
따라서 $\forall v\in S^{\perp}$와 $\forall w \in S^{\perp}$
$\left \langle v,w \right \rangle=0$
또한 vector space V가 finite dimensional vector space일 때
$V=S+S^{\perp}$
$S=(S^{\perp})^{\perp}$
즉 vector space에 있는 어떤 벡터든 간에 S에 속한 벡터와 $S^{\prep]$에 속한 벡터의 합으로 나타낼 수 있습니다.
예를 들면 3차원 공간에서, xy평면을 span of S라고 생각할 때, 3차원 공간의 벡터는 xy평면 상의 벡터와 높이 벡터로 분해할 수 있습니다.
3) Null space / Range space(Column space)
linear operator $A:V\subset \mathbb{R}^{n}\rightarrow W\subset \mathbb{R}^{m}$
$w=Av, where A \in R^{m \times n}$
Null space of A $\mathbb{N}(A)={x\in V : Ax=0}$
null space of A는 the set of all vectors $x\in\mathbb{R}^{n}\text{ such that }Ax=0$입니다.
Range space(Column space) of A $\mathbb{R}(A)={y\in W\text{ : Ax=y for some x}\in V}$
range space of A는 the set of all linear combinations of the columns of A, i.e. the span of the columns of A
지금까지
* vector space V
* vector space 안의 vector들의 집합인 set S(그 중에서 특별한 vector들의 set Basis B)
* vector space와 vector space를 mapping하는 linear operator
까지 배웠습니다.
여기서 많이 혼동스러운 것은, 이 linear operator A에 대한 space입니다.
아무생각없이 따라오다보면, vector space와 null space, column space가 잔뜩 꼬일 수 있다는 생각이 듭니다.
하지만 정의를 다시 되짚어보겠습니다. null space는 mapping을 할 때, vector space에서 0이 나오게 하는 지금의 vector space 안의 vector들의 집합입니다. 또한 linear operator A의 column을 선형으로 조합하여 0을 만드는 벡터들의 집합입니다.
column space는 V에 속한 모든 vector들이 linear operator A를 통해 만들 수 있는 모든 벡터 $w \in W$을 말합니다. 다른 방식으로 생각해보면 linear operator A의 column들을 선형 조합하여 만들 수 있는 모든 벡터들의 집합입니다.
즉, 우리가 배웠던 linear operator A를 다른 방식으로 바라볼 수 있음을 이번에 알게 됩니다. (그 전에는 두 vector space를 mapping하는 연산자의 의미로 해석했습니다.)
벡터 v는 A의 column에 대한 가중치이자, scalar 곱이고 그 결과로, 벡터 w를 표현할 수 있는 것입니다. 아래의 손필기를 참고해주세요.
이제 null space와 column space의 관계 및 성질을 살펴보겠습니다.
# Properties of null space & column space
1. $N(A^{T})=R^{\perp}(A)$
complex number를 사용하는 vector space일 때 $A^{T}$ 대신 A의 Hermitian matrix $A^{*}=A^{H}$로 사용해야합니다.
위 성질은 Column space of A와 Null space of $A^{T}$는 orthogonal 관계라는 의미입니다.
2. $R^{m}=R(A)+N(A^{T})$
1번이 증명이 되었다면 당연한 결과입니다. $R(A)$와 $N(A^{T})$이 orthogonal이므로 vector space $R^{m}$를 구성하는 각 subspace가 되는 것이다.
3. $N(A^{T}A)=N(A)$
4. $R(AA^{T})=R(A)$
# row space와 left null space 개념
row space는 A의 row로 만드는 벡터들의 집합 ${y:A^{T}x=y}$이고, left null space $\mathbb{N}(A^{T})={y:A^{T}y=0}$을 의미합니다.
# column space, null space, row space, left null space 예시
$A=\begin{bmatrix} 1&1&1\\3&3&3\end{bmatrix}$일 때
각각 column space $C(A)$, null space $N(A)$, row space $C(A^{T})$, left null space $N(A^{T})$를 구할 때, $N(A)\perp C(A^{T})$
$N(A^{T})\perp C(A)$
임을 확인할 수 있습니다.
# Rank / Nullity of a matrix
$A\in \mathbb{C}^{m\times n}$에서
The rank of a matrix A is the dimension of $\mathbb{R}(A)$
즉 A의 columns에서 얻을 수 있는 linearly independent vectors의 수를 rank of a matrix A라고 합니다.
$\text{rank of A = rank of }A^{T}=r$
The nullity of a matrix A is the dimension of $\mathbb{N}(A)$
$\text{nullity of }A=n-r$
$\text{nullity of }A^{T}=m-r$
선형대수학 내용이라서 다음에 응용선형대수 내용을 정리하면 관련된 내용을
이 글에 링크로 올리도록 하겠습니다.
'연구 Research > 제어 Control' 카테고리의 다른 글
[고등자동제어] LTI 시스템의 state equation 풀기 (2) (0) | 2020.12.16 |
---|---|
[고등자동제어] LTI 시스템의 state equation 풀기 (1) (0) | 2020.12.15 |
[고등자동제어] System modeling (0) | 2020.12.03 |
[고등자동제어] State space와 transfer function의 관계 (2) | 2020.11.19 |
[고등자동제어] State space model (0) | 2020.11.18 |