Stability of Nonlinear System

이번 글에서는 비선형 시스템의 안정성 분석을 하기 위해 공부한 내용에 대해 정리해 보겠습니다. 일단 먼저, 제어시스템이 아닌 그냥 다음과 같이 표현되는 비선형 시스템을 고려하기로 합니다. $$\dot{\mathbf{x}} = \mathbf{f}(\mathbf{x},t)$$ 저기에 $t$ 가 있으면 non-autonomous system, 없으면 autonomous system 이 됩니다. 일반적으로 $t$ 가 있는 경우에는 시스템의 안정성 분석 시 초기시각 $t_0$ 를 추가로 고려해 주어야 하기 때문에 non-autonomous system 의 안정성 분석이 autonomous system의 안정성 분석에 비해서 조금 더 까다롭겠지요. 일단 그래서 autonomous system 만을 고려합니다. 사실 제가 다룰 시스템도 autonomous system 으로 모델링한 시스템이 될 것 같네요. 한편 잘 아시다시피 선형 시스템은 비선형 시스템의 한 특수한 형태로 생각할 수도 있습니다. 그리고 선형 시스템은 LTI (Linear Time Invariant) system 과 LTV (Linear Time Variant) sysem 으로 구분할 수 있지요. 우리는 여기서 autonomous system 만을 다루기로 했으니까, LTV system 이 아닌 LTI system 만 생각하면 될 것 같습니다. I. Equilibrium Point 평형점 (equilibrium point) 이라고 하는 것은 시스템이 그 상태를 유지하는 지점을 말합니다. 즉, 상태공간상의 어떤 점 $\mathbf{x}^*$ 이 평형점이라고 하려면, $\mathbf{0}=\mathbf{f}(\mathbf{x}^*)$ 을 만족해야 한다는 것이죠. 보통 비선형 시스템은 이런 조건을 만족하는 점, 그러니까 평형점을 여러 개 갖고 있는 경우가 많습니다. 슬슬 시스템의 안정성 이야기를 한다고 해 놓고 갑자기 왜 평형점 이야기를 하는지 싶겠네요. 그 이유는 보통 시스템의 안정성은 그 시스템...

Feedback Linearization

이번 글에서는 비선형 제어기법의 한 갈래인 feedback linearization 에 대해 다루어 봅니다. 여기서는 궤환 선형화에 대해 자세한 이론적인 어쩌구저쩌고를 다 다루지는 않고, 숲을 보기 위한 개념과 특징에 대해서만 살펴봅니다. 일반적으로 linearization 이라고 하면, Taylor series expansion 을 이용한 어떤 특정 점에서의 선형화를 말합니다. 잘 모르시는 분들을 위해서 대략적인 비유를 하자면 함수의 특정 위치에서 접선을 그어놓고 그 접선의 함수를 원래 함수인 마냥 생각하는 거라고 할 수 있겠습니다. 당연히 접선을 긋는 '특정 위치' 근처에서만 원래 함수와 접선의 함수가 비슷하고 조금만 멀리 떨어지면 함수의 값이 상당히 달라지겠죠. 원래 함수가 어떤 함수인지에 따라, 그리고 같은 함수라도 '특정 위치' 가 어디인지에 따라 접선의 함수와 값이 많이 달라질수도 있고 거의 비슷할 수도 있습니다. 일반적으로 '비선형성이 강하다' 라는 표현이 어떤 의미인지 이런 맥락에서 생각해 보면 무슨 의미인지 대충 감이 올 거예요. 궤환선형화, feedback linearization 은 이런 일반적인 의미에서의 선형화와는 살짝 다른 개념입니다. 일단 궤환선형화는 앞에서 언급한 일반적인 의미에서의 선형화와는 달리 아무 함수나 선형화하는 게 아니고, 제어입력과 출력이 존재하는 동역학 시스템에 대한 선형화입니다. 조금 더 직접적으로 표현하면, 함수를 근사해서 선형 함수인 척 하는 일반적인 선형화와 달리 궤환선형화에서는 적절한 제어입력을 통해 어떤 시스템을 선형 시스템인 것처럼 만들어 버리는 기법입니다. 궤환선형화는 어떤 시스템을 선형 시스템으로 만들어 버리는 기법이라고 했는데, 그럼 왜 이런 기법을 쓰느냐? 당연히 선형 시스템을 다루는 게 어떤 잘 모르는 시스템을 다루는 것보다 쉬울 것 같기 때문이죠. 하지만 모든 일반적인 비선형 시스템을 죄다 궤환선형화를 통해 선형 시스템으로 변신시킬 수는 없...

Stability of Linear System

이번 글에서는 선형 시불변 시스템 (LTI system) 의 안정성의 개념에 대해 간략하게 다루도록 하겠습니다. 안정성은 두 가지 측면에서의 안정성을 생각해 볼 수 있는데요, 바로 zero-input stability 와 zero-state stability 입니다. 첫 번째로 살펴볼 안정성은 zero-state stability 입니다.   1. Zero-state Stability Zero-state stability 를 살펴보기에 앞서 먼저 안정성을 고려하고자 하는 시스템에 대해 몇 가지 가정을 하고 넘어가야 하는데요, 주어진 시스템은 LTI, causal system 이고, 안정성을 따지고자 하는 초기 상태 $t=0$ 에서 initially relaxed 이어야 합니다. 대충 초기 상태가 평형점이라고 생각하시면 될 것 같습니다. 초기 상태가 평형점이 아니라면 시스템은 input이 없더라도 어디론가 흘러가 다른 상태변수 값을 갖게 되겠죠. 일단 SISO system 을 먼저 다루고 MIMO 에 대해 생각해 보려고 합니다. SISO system 의 output 은 다음과 같이 쓸 수 있습니다. $$y(t) = \int_0^t g(t-\tau)u(\tau) d\tau = \int_0^t g(\tau)u(t-\tau) d\tau$$ 이에 대해 시스템의 BIBO stability 를 다음과 같이 쓸 수 있습니다..   A SISO system is BIBO stable if and only if g(t)​ is absolutely integrable in $[0,\infty)$​ or $$\int_0^{\infty} |g(t)|dt \le M < \infty$$ for some constant M.   BIBO 는 Bounded Input, Bounded Output 의 약자로, 제어입력이 유계되어 있으면 출력도 유계된다는 뜻입니다. 즉 위의 조건을 만족한다면, 시스템에 유계 제어입력을 가한 경우 출력이...

Motion Planning Problem

이미지
이 포스트에서는 Motion Planning Problem 이란 무엇이며, 어떤 특징을 갖고 있는지에 대해 다루어 보겠습니다. Motion planning problem 이란, 어떤 로봇에 대해 정지한 장애물 사이를 통과하는 경로를 계산하는 문제입니다. 간단하게 말해서 여기서 저기까지 어떻게 갈까? 라는 질문을 하는 거죠. 여기서 '어떤 로봇' 은 관절 로봇이 될 수도 있고, 드론이나 무인항공기가 될 수도 있습니다. 위의 그림은 motion planning 의 예시입니다. 좁은 통로를 따라서 길쭉한 막대기를 옮긴다던가 피아노를 이 방에서 저 방으로 옮긴다던가 하는 문제가 바로 motion planning 의 좋은 예시가 되겠습니다. 이 문제를 풀기 위한 알고리즘 혹은 motion planner 가 있다고 할 때, 그 알고리즘의 입력과 출력은 다음과 같습니다. Input 로봇과 장애물의 geometry 로봇의 움직임을 나타내는 동역학 방정식 초기/최종 configuration (혹은 상태변수) Output 초기/최종 configurations 를 연결하는 collision-free configurations 의 연속적인 집합(경로) 관절로봇을 예로 들면, 로봇 팔이 꺾인 각도들을 configuration 이라고 할 수 있습니다. 그리고 관절이 많아서 configuration 이 복잡할수록 문제를 풀기가 어려워지겠죠. Configuration space 의 차원은 로봇 팔의 DOF (degree of freedom) 과 같다고 할 수 있습니다. DOF 에 따라서 해가 있다면 해를 찾는 시간이 지수적으로 증가하며, 해가 없다면 없다고 판단할 수 있는 알고리즘을 complete motion planner 라고 특별히 부릅니다. 장애물을 피하는 경로를 얻어야 하기 때문에, 먼저 장애물이 있는 configuration 과 장애물이 없는 free configuration 을 수학적으로 다음과 같이 표현할 수...

TEST02

이미지
TEST02 이 문서는 블로거 포스팅을 위한 테스트 문서입니다. 이 문서는 마크다운으로 작성되었으며, html 형식으로 복사-붙여넣기 하여 블로거에 업로드됩니다. 마크다운 에디터는 Typora 를 이용하였습니다. 다음은 예제 이미지 파일입니다. 다음은 예제 수식 $ax = b$ 입니다. $$\mathbf{x} \in \mathbb{R}^n$$

TEST01

TEST01.md TEST01 이 문서는 블로거 포스팅을 위한 테스트 문서입니다. 이 문서는 마크다운으로 작성되었으며, html 형식으로 내보내기 한 뒤 블로거에 업로드되는 방식으로 포스팅합니다. 마크다운 에디터는 Typora 를 이용하였습니다. 다음은 예제 이미지 파일입니다. 다음은 예제 수식 입니다.