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

상태천이행렬 (State Transition Matrix) 과 Floquet 정리

by 깊은대학 2023. 6. 30.

다음과 같이 선형 시불변 (LTI, linear time-invariant) 시스템이 있다.

 

(1)x˙(t)=Ax(t)

 

여기서 x(t)Rn 는 상태변수, ARn×n 는 상수 행렬이다. 이 시스템의 해는 다음과 같다 (https://pasus.tistory.com/234).

 

(2)x(t)=eA(tt0)x(t0)

 

 

 

이번에는 다음과 같은 선형 시변(LTV, linear time-varying) 시스템의 해를 구해보자.

 

(3)x˙(t)=A(t)x(t)

 

여기서 행렬 A(t)Rn×n 는 시간 연속 함수(continuous function)이다. 이 시스템의 해는 시불변 시스템과는 달리 그리 간단하게 얻어지지 않는다. 이 시스템의 해를 구하기 위해서 행렬 두 개를 정의한다.

먼저 기본행렬(fundamental matrix)이다. j 번째 성분만 1 이고 나머지 성분은 모두 0 인 기본 벡터 ej=[0    1    0]T 가 있을 때 ψj(t) 를 다음과 같은 미분 방정식의 해라고 정의하자.

 

(4)ψ˙j(t)=A(t)ψj(t),    ψj(t0)=ej

 

여기서 ψj(t0)ψj(t) 의 초기값을 의미한다. 그러면 초기값이 다음과 같을 때에는

 

(5)c1ψ1(t0)++cnψn(t0)=Ψ(t0)c=x(t0)

 

위 시스템 해는 중첩의 원리에 의해서

 

(6)c1ψ1(t)++cnψn(t)=Ψ(t)c=x(t)

 

로 주어질 것이다. 여기서 c=[c1  c2    cn]T 는 상수 벡터이고,

 

(7)Ψ(t)=[ψ1(t)  ψ2(t)    ψn(t)]

 

이다. 여기서 Ψ(t)Rn×n 를 시스템 x˙(t)=A(t)x(t) 의 기본행렬이라고 한다.

기본행렬의 정의에 의하면 Ψ(t0)=I 이고 다음 미분방정식이 성립한다.

 

(8)Ψ˙(t)=[ψ˙1(t)  ψ˙2(t)    ψ˙n(t)]=[A(t)ψ1(t)  A(t)ψ2(t)    A(t)ψn(t)]=A(t)[ψ1(t)  ψ2(t)    ψn(t)]=A(t)Ψ(t)

 

식 (6)에 의하면 임의의 시간 τ 에서 x(τ)=Ψ(τ)c 이므로 c=Ψ1(τ)x(τ) 가 되어서

 

(9)x(t)=Ψ(t)Ψ1(τ)x(τ)

 

로 표현할 수 있다.

다음은 상태천이행렬(STM, state transition matrix)이다. 시스템 x˙(t)=A(t)x(t) 의 기본행렬을 Ψ(t) 라고 할 때, 이 시스템의 상태천이행렬 Φ(t,τ) 를 다음과 같이 정의한다.

 

(10)Φ(t,τ)=Ψ(t)Ψ1(τ)

 

그러면 식 (9)에 의해서 어떤 시간 τ 에서 상태변수가 주어졌을 때 다른 시간 t 에서의 상태변수는 상태천이행렬을 이용하여 다음과 같이 표현할 수 있다. 상태천이행렬이라는 이름 그대로 두 싯점간의 상태변수를 매핑해준다.

 

(11)x(t)=Φ(t,τ)x(τ)

 

정의에 의하면 상태천이행렬은 다음 몇가지 특징을 갖는다.

먼저 상태천이행렬을 미분하면 다음과 같다.

 

(12)ddtΦ(t,τ)=Ψ˙(t)Ψ1(τ)=A(t)Ψ(t)Ψ1(τ)=A(t)Φ(t,τ)

 

위 미분방정식의 초기값은 Φ(τ,τ)=I 이다. 이는 상태천이행렬의 정의에 의해서 Φ(τ,τ)=Ψ(τ)Ψ1(τ)=I 이기 때문이다. Φ(t,τ)n×n 행렬이기 떄문에 위 식에 의하면 n2 개의 스칼라 미분방정식이 나온다.

또한 정의에 의하면, 상태천이행렬의 역행렬은

 

(13)Φ1(t,τ)=Ψ(τ)Ψ1(t)=Φ(τ,t)

 

이 된다. 또한 다음과 같이 연쇄법칙도 성립한다.

 

(14)Φ(t2,t0)=Ψ(t2)Ψ1(t0)=Ψ(t2)Ψ1(t1)Ψ(t1)Ψ1(t0)=Φ(t2,t1)Φ(t1,t0)

 

만약 선형시스템의 시불변이라면 식 (2)에 의해서 상태천이행렬은 다음과 같이 된다.

 

(15)x(t)=eA(tτ)x(τ)=Φ(t,τ)x(τ)=Φ(tτ)x(τ)

 

일반적으로 상태천이행렬을 계산하기는 어렵지만 시불변 선형시스템인 경우 상태천이행렬을 쉽게 계산할 수 있다. 또한 식 (15)에 의하면

 

(16)Φ(t,τ)=eA(tτ)=eAteAτ=eAt(eAτ)1=Ψ(t)Ψ1(τ)

 

이므로 시불변 시스템 x˙(t)=Ax(t) 의 기본행렬은 Ψ(t)=eAt 이다.

 

 

이제 식 (3)으로 주어지는 선형 시변 시스템에서 행렬 A(t) 가 주기(period) T 를 갖는 주기 함수라고 하자.

 

(17)x˙(t)=A(t)x(t),    A(t)=A(t+T)

 

 

 

이 시스템의 기본행렬은 다음과 같다.

 

(18)Ψ˙(t+T)=A(t+T)Ψ(t+T)=A(t)Ψ(t+T)

 

위 식을 식 (8)과 비교해 보면 다음과 같이 상수 비특이(non-singular) 행렬 M 이 존재함을 알 수 있다.

 

(19)Ψ(t+T)=Ψ(t)M

 

여기서 M=eA¯T 로 놓고, 행렬 P(t)P(t)=Ψ(t)eA¯t 로 정의하면,

 

(20)P(t+T)=Ψ(t+T)eA¯(t+T)=Ψ(t)MeA¯TeA¯t=Ψ(t)eA¯t=P(t)

 

가 되어서 P(t) 도 시스템의 주기와 동일한 주기를 갖는 주기 행렬이 된다. P(t) 를 이용하여 시스템의 상태변수 x(t)z(t) 로 변환해 보자.

 

(21)P(t)z(t)=x(t)

 

식 (21)을 식 (17)에 대입하면 다음과 같다.

 

(22)z˙(t)=P˙1(t)x(t)+P1(t)x˙(t)=[P˙1(t)+P1(t)A(t)] P(t)z(t)

 

위 식에서 P˙1(t) 는 다음과 같이 P1(t)P(t)=I 을 미분하여 구할 수 있다.

 

(23)P˙1(t)P(t)+P1(t)P˙(t)=0 P˙1(t)=P1(t)P˙(t)P1(t)

 

식 (23)을 식 (22)에 대입하면 시스템의 상태변수 x(t)z(t) 로 변환된 미분방정식을 얻을 수 있다.

 

(24)z˙(t)=[P1(t)P˙(t)P1(t)+P1(t)A(t)] P(t)z(t)=P1[A(t)P(t)P˙(t)] z(t)=eA¯tΨ1(t)[A(t)Ψ(t)eA¯tA(t)Ψ(t)eA¯t+Ψ(t)eA¯tA¯] z(t)=A¯z(t)

 

식 (24)에 의하면 원래 시스템이 선형 시불변 시스템으로 변환된 것을 알 수 있다. 이와 같이 주기적 선형 시변 시스템을 적절한 상태변수 변환을 통하여 신형 시불변 시스템으로 바꿀 수 있다는 것을 Floquet 정리라고 한다.

식 (19)에서 행렬 M 은 다음과 같이 계산할 수 있다.

 

(25)M=Ψ1(t)Ψ(t+T)

 

여기서 M 은 상수 행렬이므로 위 식은 모든 시간에서 동일한 값을 갖는다. 따라서 다음식이 성립한다.

 

(26)M=Ψ1(t0)Ψ(t0+T)=Ψ(t0+T)=Φ(t0+T,t0)

 

식 (26)으로 정의되는 행렬 M 을 모노드로미 행렬(monodromy matrix)이라고 한다.

식 (24)의 시스템 행렬 A¯ 는 모노드로미 행렬 M 과 다음과 같은 관계식을 갖는다.

 

(27)A¯=1TlogM