Controllability

Jeongsu Ahn·2025년 7월 23일

ControlBootcamp

목록 보기
4/7

Reference: Prof Steve Brunton, Control Bootcamp
Youtube Link


Controllability (제어가능성)

Controllability는 시스템이 제어 가능한지 판별하는 지표이다.


다음과 같이 제어입력이 존재하는 선형 시스템을 가정하자:

x˙=Ax+Bu\dot{x} = Ax + Bu
y=Cxy = Cx

여기서 시스템의 차원은 다음과 같다:

xRn,uRqx \in \mathbb{R}^n, \quad u \in \mathbb{R}^q
ARn×n,BRn×qA \in \mathbb{R}^{n \times n}, \quad B \in \mathbb{R}^{n \times q}

가상의 제어입력(예: 최적제어)이 다음과 같이 설정되었다고 가정하자:

u=Kxu = -Kx

그러면 제어입력을 대입한 시스템은 다음과 같다:

x˙=(ABK)x\dot{x} = (A-BK)x

예시를 통한 이해

Case 1: Uncontrollable System

다음과 같은 시스템을 예시로 들어보자:

[x1˙x2˙]=[1002][x1x2]+[01]u\begin{bmatrix} \dot{x_1} \\ \dot{x_2} \end{bmatrix} = \begin{bmatrix} 1 & 0 \\ 0 & 2 \end{bmatrix} \begin{bmatrix} x_1 \\ x_2 \end{bmatrix} + \begin{bmatrix} 0 \\ 1 \end{bmatrix} u

이 시스템에서는 제어입력 uux2x_2에만 영향을 주므로 x1x_1을 직접 제어할 수 없다. 따라서 이 시스템은 Uncontrollable이다.

Case 2: Controllable System (추가 입력)

만약 다음과 같이 추가적인 제어입력이 있다면:

[x1˙x2˙]=[1002][x1x2]+[01]u+[1001][u1u2]\begin{bmatrix} \dot{x_1} \\ \dot{x_2} \end{bmatrix} = \begin{bmatrix} 1 & 0 \\ 0 & 2 \end{bmatrix} \begin{bmatrix} x_1 \\ x_2 \end{bmatrix} + \begin{bmatrix} 0 \\ 1 \end{bmatrix} u + \begin{bmatrix} 1 & 0 \\ 0 & 1 \end{bmatrix} \begin{bmatrix} u_1 \\ u_2 \end{bmatrix}

이제 x1x_1x2x_2 모두를 독립적으로 제어할 수 있으므로 전체 시스템은 Controllable하다.

Case 3: Controllable System (상태 결합)

혹은 다음과 같이 x1x_1x2x_2가 결합되어 있다면:

[x1˙x2˙]=[1102][x1x2]+[01]u\begin{bmatrix} \dot{x_1} \\ \dot{x_2} \end{bmatrix} = \begin{bmatrix} 1 & 1 \\ 0 & 2 \end{bmatrix} \begin{bmatrix} x_1 \\ x_2 \end{bmatrix} + \begin{bmatrix} 0 \\ 1 \end{bmatrix} u

이 경우 uux2x_2에 영향을 주고, x2x_2x1x_1에 결합되어 있으므로 간접적으로 x1x_1도 제어 가능하다.

제어가능성 판별법

이론적으로 제어 가능성을 판별하는 방법은 다음과 같다.

제어가능성 행렬(Controllability Matrix)을 구성한다:

C=[BABA2BAn1B]\mathcal{C} = [B \quad AB \quad A^2B \quad \cdots \quad A^{n-1}B]

판별 조건:

if rank(C)=nControllable\text{if } \text{rank}(\mathcal{C}) = n \Rightarrow \text{Controllable}
else Noncontrollable\text{else } \Rightarrow \text{Noncontrollable}

결론: 시스템이 제어가능하려면 제어가능성 행렬 C\mathcal{C}의 rank가 시스템의 차원 nn과 같아야 한다.

profile
될 때까지 하는 사람

0개의 댓글