[고등자동제어] Controllability in Continuous time

2021. 2. 25. 15:02·연구 Research/제어 Control

Remind : 

controllability : control input을 이용해 원하는 state로 만들 수 있는지 여부

 

이번에는 discrete time이 아닌 continuous time에서 controllability를 판별하는 방법에 대해서 알아보겠습니다.

discrete time과 거의 유사해서 설명 자체를 간소하게 할 수도 있을 것 같습니다.

 

참고 글 : normal-engineer.tistory.com/71


1. Definition of controllability

 

$\text{The LTI continous time system}$

$\dot{x}(t)=Ax(t)+Bu(t)\text{ is said to be controllable if,}$

$\text{for any initial state }x(0)=x_{0}\text{ and any target state }x_{1}$

$\text{there exists a finite time }t_{1}>0\text{ and a control }\{u(t); t\in [0,t_{1}]\}$

$\text{that will transfer the state }x_{0}\text{ to }x(t_{1})=x_{1}$

 

여기서 나오는 $x_{0},x_{1}$은 임의로 정해져도 위의 말이 성립되어야 합니다. 즉, 임의의 초기 조건과 임의의 target state가 있더라도 control input을 이용해서 처음 state에서 target state로 도달할 수 있어야 합니다.

 

또한 discrete time에서 그랬던 것처럼 finite time $t_{1}$ 이후에 시스템이 target state에 머물러있을지는 신경쓰지 않습니다.

 


2. Controllability theorem

 

 

$\text{(a). The LTI discrete time system of order n }$

$\dot{x}(t)=Ax(k)+Bu(k), A\in \mathbb{R}^{n\times n}, B\in\mathbb{R}^{n\times m}\text{ is controllable.}$

 

$\text{(b). The controllability grammian}$

$W_{c}(t_{1})=\int_{0}^{t_{1}}e^{At}BB^{T}e^{A^{T}t}dt$

$\text{ is positive definite, for some finite integer }t_{1}>0$

 

$\text{(c). Controllability matrix}$

$P=\begin{bmatrix}B & AB & A^{2}B & \cdots & A^{n-1}B\end{bmatrix} \text{ is rank n.}$

$\text{(i.e. there are n linearly independent columns)}$

 

여기서 P matrix는 square matrix가 아니라는 것에 주의해주세요.

 

$B,AB,A^{B},\cdots \in \mathbb{R}^{n\times m}$

$P \in \mathbb{R}^{n\times nm}$

 

$\text{Controllability grammian}$

$B=b \in R^{n\times 1}$

$f(t)=e^{At}b$

$W_{c}(t_{1})=\int_{0}^{t_{1}} f(t)f^{T}(t) dt \text{, where } f(t)f^{T}(t)\geq 0$

 

 


3. Controllability theorem comments

 

 

1. controllable cannonical pair

 

$A=\begin{bmatrix}0&1&0\\0&0&1\\-a_{0}&-a_{1}&-a_{2}\end{bmatrix}$

$B=\begin{bmatrix}0\\0\\1\end{bmatrix}$

 

은 항상 controllable합니다.

 

왜냐하면, controllable matrix를 구해보면

 

$\text{controllability matrix : }\begin{bmatrix}0&0&1\\0&1&-a_{2}\\1&-a_{2}&(-a_{1}+a_{2}^{2})\end{bmatrix}$

 

다음과 같은 full rank matrix이기 때문입니다.

 

 

 

2. discrete time에서 controllability grammian을 이용해 lyapunov equation을 만든 것처럼, continuous time에서도 동일하게 해볼 수 있습니다.

 

controllability grammian의 asymptotic value를 정의하도록 하겠습니다.$W_{c}=\underset{t_{1}\rightarrow \infty}{\lim}W_{c}(t_{1})=\int_{0}^{\infty}e^{At}BB^{T}e^{A^{T}t}dt$

 

$AW_{c}=\int_{0}^{\infty}Ae^{At}BB^{T}e^{A^{T}t}dt$

$W_{c}A^{T}=\int_{0}^{\infty}e^{At}BB^{T}e^{A^{T}t}A^{T}dt$

 

$AW_{c}+W_{c}A^{T}=\int_{0}^{\infty}\frac{\partial }{\partial x}(e^{At}BB^{T}e^{A^{T}t})dt$

$=[e^{At}BB^{T}e^{A^{T}t}]_{0}^{\infty}=-BB^{T}$

 

$\therefore AW_{c}+W_{c}A^{T}=-BB^{T}$

 

matrix A가 hurwitz이면 solution $W_{c}$는 위의 Lyapunov equation을 통해 구할 수 있고, positive definite이다.

또한 $W_{c}$가 PD이면 시스템은 controllable하다.

 

 

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

[고등자동제어] controllability/observability example  (1) 2021.02.25
[고등자동제어] Observability in Continuous time  (0) 2021.02.25
[고등자동제어] Observability in discrete time  (0) 2021.02.23
[고등자동제어] Controllability in discrete time  (0) 2021.02.22
[고등자동제어] Lyapunov stability in Discrete Time  (0) 2021.02.17
'연구 Research/제어 Control' 카테고리의 다른 글
  • [고등자동제어] controllability/observability example
  • [고등자동제어] Observability in Continuous time
  • [고등자동제어] Observability in discrete time
  • [고등자동제어] Controllability in discrete time
보통의공대생
보통의공대생
수학,프로그래밍,기계항공우주 등 공부하는 기록들을 남깁니다.
  • 보통의공대생
    뛰는 놈 위에 나는 공대생
    보통의공대생
  • 전체
    오늘
    어제
    • 분류 전체보기 (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 & 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)
  • 블로그 메뉴

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

  • 공지사항

  • 인기 글

  • 태그

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

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
보통의공대생
[고등자동제어] Controllability in Continuous time
상단으로

티스토리툴바