[제어] Lyapunov stability theorem 증명

2022. 9. 29. 10:13·연구 Research/제어 Control

조금이라도 제어에 대해 공부한 사람이라면 한 번쯤 들어볼 법한, Lyapunov stability theorem.

 

이 Lyapunov stability theorem에 대한 증명은 Khalil의 Nonlinear control에 잘 나와있다.

처음에 그냥 읽으면 무슨 소리인지 납득이 안되는 부분이 있는 것 같아서, 증명을 이해하는 연결다리를 써보고자 글을 쓴다.


Lyapunov stability theorem

 

$\text{If there is }V(x)\text{ such that }V(0)=0\text{ and }V(x)>0,\; \forall x\in D\text{ with }x\neq 0$

$\dot{V}(x)\leq 0\; \forall x\in D$

$\text{then the origin is a stable.}$

 

$\text{if }\dot{V}(x)<0, \; \forall x\in D \text{ with }x\neq 0$

$\text{then the origin is asymptotically stable.}$


여기서 stable의 정의를 알아야 한다.

$\text{The equilibrium point }x=0 \text{ of }\dot{x}=f(x)\text{ is}$

$\text{stable if for each }\varepsilon>0\text{ there is }\delta>0 (\text{dependent on }\varepsilon )\text{ such that}$

$\|x(0)\|<\delta \Rightarrow\|x(t)\|<\varepsilon, \quad \forall t \geq 0$

 

위의 theorem을 통해서 $V(x)$가 위 조건을 만족하면 stability 정의를 만족하는지 확인해야한다.

 

$x$는 n차원 state vector이다.

$0<r\leq \varepsilon$일 때, $\|x\|\leq r$ 조건을 가진 ball $B_{r}$이 있다고 하자.

이 set을 $B_{r}=\{ \|x\|\leq r\}$로 표기할 수 있다.

 

여기서 ball 안의 점들이 곧 state들의 집합이다. 이 ball의 boundary에서 가장 작은 $V(x)$ 값을 찾는다.

 

$\alpha=\min _{\|x\|=r} V(x)>0$

 

이 값보다 더 작은 $0<\beta<\alpha$를 잡고 set $\Omega_{\beta}$를 다음과 같이 정의할 수 있다.

 

$\Omega_\beta=\left\{x \in B_r \mid V(x) \leq \beta\right\}$

 

여기서 $\Omega_{\beta}$는 무조건 $B_{r}$ 안에 속할 수 밖에 없다. ($x$가 $B_{r}$에 포함되므로 바깥에 존재할 수 없고, 이 말은 boundary에 존재하는 원소가 없다는 뜻이다.) 이는 앞서 우리가 정한 $\alpha$의 정의로부터 증명할 수 있다.

예를 들어 $\Omega_{\beta}$의 원소 중에 어떤 것이 $B_{r}$의 boundary에 있는 $\hat{x}$가 있다고 하자. 이 때, $V(\hat{x})\geq\alpha$일 수 밖에 없다. 왜냐하면 $\alpha$가 $\min _{\|x\|=r} V(x)>0$으로 정의되었기 때문이다.

 

그런데 $V_{\hat{x}}\leq \beta$이므로 위의 $V(\hat{x})\geq\alpha$와 모순이 된다. 따라서 $\hat{x}$은 반드시 $B_{r}$ 내부에 존재하게 된다.

 

이렇게 했을 때 만약 Lyapunov stability theorem에서 조건으로 말한 것처럼

$\text{If there is }V(x)\text{ such that }V(0)=0\text{ and }V(x)>0,\; \forall x\in D\text{ with }x\neq 0$

$\dot{V}(x)\leq 0\; \forall x\in D$

 

$V(x)$가 위 조건을 만족한다면 $\Omega_{\beta}$에 속한 초기 state들은 시간이 지난 이후에도 계속 $\Omega_{\beta}$ 안에 머물게 된다.

 

$\dot{V}(x(t)) \leq 0 \; \Rightarrow \; V(x(t)) \leq V(x(0)) \leq \beta, \; \forall t\geq 0$

 

 

 

또한 $V(x)$는 continuous하고 $V(0)=0$이면 continuity 정의에 따라 $x=0$의 $\delta$ neighborhood가 있을 때 $V(x)$ 역시 $\epsilon$ 범위 안에 있음을 알 수 있다.

 

continuous 정의 : 위키피디아 참조 (또는 미적분학 교과서에는 반드시 있는 내용)

 

따라서 $\delta > 0$에 대하여 다음을 만족시킬 수 있다.

$\|x\| \leq 0 \; \Rightarrow V(x) < \beta$

 

ball $B_{\delta}\subset \Omega_{\beta} \subset B_{r}$ 관계가 성립된다.

이 말은 곧,

 

$\|x(0)\| \in B_{\delta} $이면 $x(0)\in \Omega_{\beta}$이다.

$\Omega_{\beta}$에 속한 state들은 계속 그 안에 머물기 때문에

$\|x(t)\| \in \Omega_{\beta} \subset B_{r},\; \forall t\geq 0$를 만족한다.

 

이 증명을 시작할 때 $0<r\leq \varepsilon$이었던 것을 기억하자.

따라서 stability 정의대로

$\|x(0)\|<\delta \Rightarrow\|x(t)\|<\varepsilon, \quad \forall t \geq 0$을 만족하므로

Equilibrium point $x=0$는 stable하다.

 

여기서 $x=0$ 원점을 잡은 것은 변수를 다르게 잡아 원점 이동이 가능하기 때문에 어떤 equilibrium point라도 일반화시킬 수 있다. 즉 $x=3$이 원점이었어도 $\tilde{x}=x-3$으로 잡아서 원점이 stable함을 보이는 것과 동일하므로 $x=3$도 stable함을 Lyapunov로 보일 수 있다는 뜻이다.

 


 

참고로 $\Omega_{\beta}$가 compact set이라는 사실을 통해 $\dot{x}=f(x)$의 solution이 unique함을 증명할 수 있다. compact set은 closed and bounded set인데,

closed set인 것은 정의를 통해 알 수 있고, ($\Omega_\beta=\left\{x \in B_r \mid V(x) \leq \beta\right\}$)

bounded set인 것은 $B_{r}$ 내부에 속해 있어야한다는 점에서 알 수 있다.

 

이렇게 compact set인 것을 밝히면 다음 lemma를 통해 $\dot{x}=f(x)$가 unique solution을 가짐을 알 수 있다.

저작자표시 비영리 변경금지 (새창열림)

'연구 Research > 제어 Control' 카테고리의 다른 글

[비선형제어] Diffeomorphism  (0) 2022.12.20
[제어] eigenvalue와 stability 분석 (algebraic multiplicity와 geometric multiplicity의 차이)  (0) 2022.12.14
[MATLAB] 3차원 vector field diagram과 시뮬레이션 결과 mapping  (0) 2022.09.26
[제어] Phase portrait 프로그램과 예시  (0) 2022.09.16
Low pass filter에서 시상수(Time constant)의 의미  (0) 2022.08.16
'연구 Research/제어 Control' 카테고리의 다른 글
  • [비선형제어] Diffeomorphism
  • [제어] eigenvalue와 stability 분석 (algebraic multiplicity와 geometric multiplicity의 차이)
  • [MATLAB] 3차원 vector field diagram과 시뮬레이션 결과 mapping
  • [제어] Phase portrait 프로그램과 예시
보통의공대생
보통의공대생
수학,프로그래밍,기계항공우주 등 공부하는 기록들을 남깁니다.
  • 보통의공대생
    뛰는 놈 위에 나는 공대생
    보통의공대생
  • 전체
    오늘
    어제
    • 분류 전체보기 (460)
      • 공지 (1)
      • 영어 공부 English Study (40)
        • 텝스 TEPS (7)
        • 글 Article (21)
        • 영상 Video (10)
      • 연구 Research (99)
        • 최적화 Optimization (3)
        • 데이터과학 Data Science (7)
        • 인공지능 Artificial Intelligent (40)
        • 제어 Control (45)
      • 프로그래밍 Programming (103)
        • 매트랩 MATLAB (25)
        • 파이썬 Python (33)
        • 줄리아 Julia (2)
        • C++ (3)
        • 리눅스 우분투 Ubuntu (6)
      • 항공우주 Aeronautical engineeri.. (21)
        • 항법 Navigation (0)
        • 유도 Guidance (0)
      • 기계공학 Mechanical engineering (13)
        • 열역학 Thermodynamics (0)
        • 고체역학 Statics & Solid mechan.. (10)
        • 동역학 Dynamics (1)
        • 유체역학 Fluid Dynamics (0)
      • 수학 Mathematics (34)
        • 선형대수학 Linear Algebra (18)
        • 미분방정식 Differential Equation (3)
        • 확률및통계 Probability &amp; Sta.. (2)
        • 미적분학 Calculus (1)
        • 복소해석학 Complex Analysis (5)
        • 실해석학 Real Analysis (0)
      • 수치해석 Numerical Analysis (21)
      • 확률 및 랜덤프로세스 Random process (2)
      • 추론 & 추정 이론 Estimation (3)
      • 기타 (26)
        • 설계 프로젝트 System Design (8)
        • 논문작성 Writing (55)
        • 세미나 Seminar (2)
        • 생산성 Productivity (3)
      • 유학 생활 Daily (7)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    Julia
    Zotero
    텝스
    우분투
    옵시디언
    Statics
    matplotlib
    고체역학
    LaTeX
    Linear algebra
    JAX
    Python
    논문작성법
    WOX
    ChatGPT
    인공지능
    서버
    teps
    수치해석
    생산성
    에러기록
    pytorch
    논문작성
    Numerical Analysis
    MATLAB
    딥러닝
    Dear abby
    obsidian
    IEEE
    텝스공부
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
보통의공대생
[제어] Lyapunov stability theorem 증명
상단으로

티스토리툴바