본문 바로가기
유도항법제어/비행제어

[Continuous-Time] 최소에너지 제어와 그래미안

by 깊은대학 2024. 7. 29.

다음과 같은 선형 시불변(LTI) 시스템이 있다.

 

(1)x˙=Ax+Bu

 

여기서 x(t)Rn 는 상태변수, u(t)Rp 는 제어입력이다. 방정식 (1)의 해는 다음과 같다.

 

(2)x(t)=eAtx(0)+0teA(tτ)Bu(τ) dτ

 

이 시스템이 제어가능(controllable)하다면 유한 시간 t1< 안에 임의의 초기 상태 x(0)=x0 에서 임의의 목표 상태(target state) x(t1)=x1 으로 시스템의 상태를 이동시키는 제어입력 u(t) 가 존재한다. 만약 입력의 크기에 제약이 없다면 아주 짧은 시간에도 임의의 상태로 이동시킬 수 있지만 시간이 짧을 수록 제어입력의 크기는 커진다. 만약 입력의 크기에 제약이 있다면 주어진 시간 안에 목표 상태로 상태를 이동시키지 못할 수도 있다.

최소에너지 제어(minimal energy control)는 주어진 시간 t1 동안 주어진 초기 상태 x(0)=x0 에서 주어진 목표 상태 x(t1)=x1 으로 시스템의 상태를 이동시킬 수 있는 제어입력 중에서 가장 작은 에너지를 사용하는 제어입력 u(t) 로 정의한다. 즉,

 

(3)0t1uT(t)u(t) dt0t1uT(t)u(t) dt

 

최소에너지 제어는 다음과 같이 계산할 수 있다.

 

(4)u(t)=BTeAT(t1t)Wc1(t1)[x1eAt1x0]

 

여기서 Wc(t) 는 제어가능성 그래미안 (controllability gramian)으로서 다음과 같다.

 

(5)Wc(t)=0teAτBBTeATτ dτ=0teA(ts)BBTeAT(ts) ds

 

이를 증명해 보자. 우선 식 (4)를 (2)에 대입하면 x(0)=x0 일 때 x(t1)=x1 임을 확인할 수 있다.

 

 

이제 주어진 시간 t1 동안 주어진 초기 상태 x(0)=x0 에서 주어진 목표 상태 x(t1)=x1 으로 시스템의 상태를 이동시킬 수 있는 또 다른 제어입력을 v(t) 라고 하자. 그러면 다음 식이 성립한다.

 

(6)x1=eAt1x0+0t1eA(t1t)Bu(t) dtx1=eAt1x0+0t1eA(t1t)Bv(t) dt

 

위 두 식을 뺴면 다음과 같다.

 

(7)0=eAt10t1eAtB[v(t)u(t)] dt

 

위 식의 전치(transpose)는 다음과 같이 된다.

 

(8)0=0t1[v(t)u(t)]TBTeATt dt

 

위 식의 양변에 Wc1(t1)[x1eAt1x0]를 곱하고 식 (4)를 대입하면 다음과 같다.

 

(9)0=0t1[v(t)u(t)]TBTeATtWc1(t1)[x1eAt1x0] dt=0t1[v(t)u(t)]Tu(t) dt

 

여기서 다음 부등식을 이용하도록 한다.

 

(10)00t1(v(t)u(t))T(v(t)u(t)) dt=0t1vT(t)v(t)dt20t1vT(t)u(t) dt+0t1uT(t)u(t) dt

 

식 (9)에 의하면

 

(11)0t1vT(t)u(t) dt=0t1uT(t)u(t) dt

 

이므로 위 식을 식 (10)에 대입하면 다음과 같다.

 

(12)0t1vT(t)v(t) dt20t1uT(t)u(t) dt+0t1uT(t)u(t) dt0

 

따라서

 

0t1vT(t)v(t) dt0t1uT(t)u(t) dt

 

이 되므로 식 (4)로 주어지는 제어입력이 최소에너지 제어라는 것이 증명되었다.

최적제어 방법을 이용하여 증명할 수도 있다. 이 최소에너지 제어 문제는

 

J=120t1uT(t)u(t) dt

 

를 최소화하는 제어입력을 계산하는 문제이므로, 고정최종상태 (fixed-final-state) LQR (https://pasus.tistory.com/258) 문제와 같다. 따라서 '고정최종상태 LQR 게시글'의 식 (14)와 (12)에서 R=I, tf=t1, t0=0 으로 놓으면,

 

u(t)=BTeAT(t1t)Wc1(t1)[x1eAt1x0]

 

이 된다.

 

 

초기 상태가 x(0)=0 이라면 시간 t 동안 상태 x(t)=x 까지 이동하는데 필요한 최소 제어 에너지는 식 (4)와 (5)를 이용하여 계산할 수 있다.

 

(13)u2=0tuT(τ)u(τ) dτ=0txTWc1(t)eA(tτ)BBTeAT(tτ)Wc1(t)x dt=xTWc1(t)0teA(tτ)BBTeAT(tτ) dt Wc1(t)x=xTWc1(t)x

 

만약 시스템이 안정하다면, 무한 제어가능성 그래미안 Wc와 그래미안 Wc(t) 가 다음과 같은 관계를 가지므로 (https://pasus.tistory.com/340),

 

(14)WcWc(t)

 

최소 제어입력 에너지는 다음과 같이 된다.

 

(15)u2=xTWc1(t)xxTWc1x

 

따라서 최소에너지 제어의 에너지 하한(lower bound)은 xTWc1x 로 주어진다.