주요 콘텐츠

dare

(권장되지 않음) 이산시간 대수 리카티 방정식 풀기

dare는 권장되지 않습니다. idare를 대신 사용하십시오. 자세한 내용은 버전 내역을 참조하십시오.

설명

[X,L,G] = dare(A,B,Q,R)은 다음과 같은 이산시간 대수 리카티 방정식의 유일한 안정화 해 X를 계산합니다.

ATXAXATXB(BTXB+R)1BTXA+Q=0

dare 함수는 이득 행렬 G와 폐루프 고유값으로 구성된 벡터 L도 반환합니다.

예제

[X,L,G] = dare(A,B,Q,R,S,E)는 다음과 같은 보다 일반적인 이산시간 대수 리카티 방정식을 풉니다.

ATXAETXE(ATXB+S)(BTXB+R)1(BTXA+ST)+Q=0

또는 R이 정칙인 경우 다음과도 동치입니다.

ETXE=FTXFFTXB(BTXB+R)1BTXF+QSR1ST

여기서 F=ABR1ST입니다.

[X,L,G,report] = dare(___)는 진단 리포트도 반환합니다.

[X1,X2,D,L] = dare(___,'factor')는 리카티 방정식의 분해된 해를 반환합니다.

예제

모두 축소

다음과 같은 행렬 집합을 고려하여 이산시간 대수 리카티 방정식을 풉니다.

A = [-0.9,-0.3;0.7,0.1];
B = [1;1];
Q = [1,0;0,3];
R = 0.1;

SE에는 디폴트 값을 사용하고 위 행렬에 대한 해를 구하기 위해 dare를 사용해 안정화 해를 구합니다.

[X,L,G,report] = dare(A,B,Q,R)
X =

    4.7687    0.9438
    0.9438    3.2369


L =

   -0.4460
   -0.0027


G =

   -0.2216   -0.1297


report =

   9.4192e-16

입력 인수

모두 축소

입력 행렬로, 행렬로 지정됩니다. R, S, E를 생략하면 함수는 디폴트 값 R = I, S = 0, E = I를 사용합니다.

출력 인수

모두 축소

이산시간 대수 리카티 방정식의 해로, 행렬로 반환됩니다.

해당 심플렉틱 행렬이 단위원에 고유값을 갖는 경우 dareX에 대해 []을 반환합니다.

폐루프 고유값으로, 행렬로 반환됩니다.

폐루프 고유값 L은 다음과 같이 계산됩니다.

L=eig(A-B*G,E)

상태-피드백 이득으로, 행렬로 반환됩니다.

상태-피드백 이득 G는 다음과 같이 계산됩니다.

G=(BTXB+R)1(BTXA+ST)

해당 심플렉틱 행렬이 단위원에 고유값을 갖는 경우 dareG에 대해 []을 반환합니다.

진단 리포트로, 다음 값 중 하나를 가진 스칼라로 반환됩니다.

  • -1: 관련 심플렉틱 펜슬이 단위원 또는 단위원 매우 가까이에 고유값을 갖는 경우.

  • -2: 유한한 안정화 해 X가 없는 경우.

  • 프로베니우스 노름: X가 존재하며 유한한 경우.

분해된 해 행렬로, 행렬로 반환됩니다. 함수는 X = D(X1/X2)D를 충족하는 X1, X2, 대각 스케일링 행렬 D를 반환합니다.

해당 심플렉틱 행렬이 단위원에 고유값을 갖는 경우 dareX1, X2, D를 빈 값으로 반환합니다.

제한 사항

(A, B) 쌍은 안정화 가능해야 합니다(즉, 단위 원판 외부에 있는 A의 모든 고유값이 제어 가능해야 함). 또한 관련 심플렉틱 펜슬이 단위원에 고유값을 갖지 않아야 합니다. 이것이 참이 되도록 하는 충분 조건은 S = 0이고 R > 0일 때는 (Q, A)가 검출 가능한 경우, 즉 다음이 성립하는 경우입니다.

[QSSTR]>0

알고리즘

dare[1]에 설명되어 있는 알고리즘을 구현합니다. 확장된 심플렉틱 펜슬을 수축하고 안정적인 불변 부분공간을 계산하려면 QZ 알고리즘을 사용합니다.

참고 문헌

[1] Arnold, W.F., and A.J. Laub. “Generalized Eigenproblem Algorithms and Software for Algebraic Riccati Equations.” Proceedings of the IEEE 72, no. 12 (1984): 1746–54. https://doi.org/10.1109/PROC.1984.13083.

버전 내역

R2006a 이전에 개발됨

모두 축소

참고 항목