본문 바로가기

유도항법제어84

[PSOC-10] 라다우 유사 스펙트럴 (RPM) 기반 최적제어 라다우 유사 스펙트럴 방법(RPM, Radau pseudospectral method)에서는 \(N\) 개의 LGR(Legendre-Gauss-Radau) 포인트를 콜로케이션 포인트로 사용하고, LGR 포인트에 \(\tau_{N+1}=1\) 점을 포함한 것을 보간점으로 사용한다. LGR 포인트는 \(N\) 차 르장드르(Legendre) 다항식과 \((N-1)\) 차 르장드르 다항식의 합인 \(P_N (\tau)+P_{N-1} (\tau)\) 의 해로 구성되어 있다. 라다우 유사 스펙트럴 방법에서는 상태변수 \(\mathbf{x}(\tau)\) 를 \( N \) 차 라그랑지 다항식으로 근사화한다. \[ \mathbf{x}( \tau ) \approx \mathbf{X} (\tau)= \sum_{i=1}^{.. 2023. 7. 18.
[PSOC-9] 로바토 유사 스펙트럴 (LPM) 기반 최적제어 로바토 유사 스펙트럴 방법(LPM, Lobatto pseudospectral method)에서는 콜로케이션 포인트와 보간점이 동일하다. \(N\) 개의 LGL(Legendre-Gauss-Lobatto) 포인트를 콜로케이션 포인트와 보간점으로 모두 사용한다. LGL 포인트는 \((N-1)\) 차 르장드르(Legendre) 미분 다항식 \(\dot{P}_{N-1} (\tau)\) 의 해와 \(\tau=-1, \ \tau=1\) 로 구성되어 있다. 로바토 유사 스펙트럴 방법에서는 상태변수 \(\mathbf{x}(\tau)\) 를 \((N-1)\)차 라그랑지 다항식으로 근사화한다. \[ \mathbf{x}( \tau ) \approx \mathbf{X} (\tau)= \sum_{i=1}^N \mathbf{X}_.. 2023. 7. 17.
[PSOC-8] 유사 스펙트럴 기반 최적제어 문제 연속시간 최적제어에 사용되는 두 가지 유형의 수치적 방법 중 직접방법(direct method)은 최적제어 문제에서 상태변수와 제어입력을 이산화(discretization)시켜 비선형 프로그래밍 문제(NLP, nonlinear programming problem)로 바꾸는 것이다. 유사 스펙트럴 방법(pseudospectral method)은 지난 10여년 동안 최적제어 분야에서 널리 사용된 직접방법 중의 하나로서 콜로케이션 포인트(collocation point)와 보간점(interpolating point)을 이용하는 것이 핵심이다. 지금까지 살펴본 수학적 배경지식인 라그랑지 보간 다항식, 가우시안 쿼드래처, 유사 스펙트럴 방법 등을 간략히 요약한 다음에 연속시간 최적제어 문제를 비선형 프로그래밍 문.. 2023. 7. 17.
상태천이행렬 (State Transition Matrix) 과 Floquet 정리 다음과 같이 선형 시불변 (LTI, linear time-invariant) 시스템이 있다. \[ \dot{\mathbf{x}}(t)=A \mathbf{x}(t) \tag{1} \] 여기서 \(\mathbf{x}(t) \in \mathbb{R}^n\) 는 상태변수, \(A \in \mathbb{R}^{n \times n}\) 는 상수 행렬이다. 이 시스템의 해는 다음과 같다 (https://pasus.tistory.com/234). \[ \mathbf{x}(t)=e^{A(t-t_0)} \mathbf{x} (t_0) \tag{2} \] 이번에는 다음과 같은 선형 시변(LTV, linear time-varying) 시스템의 해를 구해보자. \[ \dot{\mathbf{x}}(t)=A(t) \mathbf{x}.. 2023. 6. 30.
동역학 문제의 최적제어 문제로의 변환 고전 동역학에서 해밀톤의 원리(Hamilton's principle) (https://pasus.tistory.com/155) 에 의하면 고정된 양 끝단을 연결하는 수많은 경로 중에서 실제 경로는 '작용(action)'을 최소화하는 경로다. 여기서 작용이란 운동 에너지와 포텐셜 에너지의 차이를 시간 적분한 것을 의미한다. 이 원리로부터 라그랑지 방정식(Lagrange's equation)이 유도되는데, 여기서는 이를 최적제어 문제를 이용하여 유도해 보도록 하겠다. 먼저 제어 대상 시스템의 운동 방정식을 다음과 같이 표현하자. \[ \frac{d\mathbf{q}}{dt} = \mathbf{u} \tag{1} \] 여기서 \(\mathbf{q}\) 는 일반화 좌표(generalized coordinate).. 2023. 6. 4.
[Continuous-Time] LQR 예제 : 비례항법유도 법칙 이전 포스트(https://pasus.tistory.com/259)와 동일한 문제를 풀어본다. 다만 최종시간에서 \(y(t_f )\) 는 주어지지만 \(\theta (t_f )\) 에 관한 제약조건은 없는 경우이다. 편의상 비행체의 선형화된 운동 방정식을 다시 쓴다. \[ \begin{align} & \dot{x} \approx V \tag{1} \\ \\ & \dot{y} \approx V \theta \\ \\ & \dot{\theta}= \frac{a}{V} \end{align} \] 여기서 \(a\) 는 비행체의 가속도로서 제어변수, \(\theta\) 는 x-축과 비행체의 속도벡터 사이의 비행 방향각으로서 매우 작다고 가정한 것이다. 비용함수와 제약조건은 다음과 같다. \[ \begin{alig.. 2023. 4. 23.
[Continuous-Time] LQR 예제 : 타격각 제어 일정한 속력 \(V\) 로 움직이는 비행체가 있다. 제어 목적은 출발지에서 출발하여 비행 시간 \(t_f\) 가 경과한 후 목적지에 최소의 에너지를 사용하여 특정한 방향각 \(\theta_f\) 로 비행체를 목적지 \((x_f, \ y_f)\) 에 도착시키는 것이다. 비행체가 미사일이라면 \(\theta_f\)를 타격각(impact angle)이라고 한다. 아래 그림에 비행체와 목적지, 출발지 간의 기하학적인 관계가 나와 있다. 비행체의 운동 방정식은 다음과 같다. \[ \begin{align} & \dot{x}= V \cos \theta \tag{1} \\ \\ & \dot{y} =V \sin \theta \\ \\ & \dot{\theta}= \frac{a}{V} \end{align} \] 여기서 \.. 2023. 4. 22.
[Continuous-Time] 고정최종상태 (Fixed-final-state) LQR 다음과 같이 선형 시스템이 있다. \[ \dot{\mathbf{x}}=A \mathbf{x}+B \mathbf{u} \tag{1} \] 이 시스템의 초기 시간 \(t_0\) 와 초기 상태변수 \(\mathbf{x}(t_0)\) 는 주어졌다고 가정한다. 또한 최종 시간 \(t_f\) 와 최종 상태변수 \(\mathbf{x}(t_f)\) 도 미리 원하는 값 \(\mathbf{x}_f\) 로 설정되었다고 가정한다. 따라서 \(dt_0=0\), \(d\mathbf{x}(t_0 )=0\), \(dt_f=0\), \(d\mathbf{x}(t_f )=0\) 이 되기 때문에 최적제어의 필요조건을 정리한 표에 의하면 경계조건은 자동으로 만족된다. 이 시스템의 비용함수도 다음과 같이 고정된 시간 구간 \([t_0, \ t.. 2023. 4. 13.
[Continuous-Time] 최종상태제약 (Final-state-constrained) LQR 다음과 같이 선형 시스템이 주어지고, \[ \dot{\mathbf{x}}=A\mathbf{x}+B \mathbf{u} \tag{1} \] 이 시스템의 목적함수도 다음과 같이 고정된 시간 구간 \([t_0, \ t_f]\) 에서 이차함수로 주어졌다고 하자. \[ J=\frac{1}{2} \mathbf{x}^T (t_f ) S_f \mathbf{x}(t_f )+ \frac{1}{2} \int_{t_0}^{t_f} \left( \mathbf{x}^T Q \mathbf{x}+ \mathbf{u}^T R \mathbf{u} \right) dt \tag{2} \] 최종 상태변수의 제약조건은 다음과 같이 설정되었다고 가정하자. \[ \psi (\mathbf{x}(t_f ), t_f )=C \mathbf{x}(t_f .. 2023. 4. 8.
OKID (Observer Kalman Filter Identification) OKID(Observer Kalman Filter Identification)는 시간 영역에서 비선형 시스템의 입력-출력 데이터를 이용하여 상태공간 이산시간(discrete-time) 선형 모델을 식별(identification)하는 알고리즘이다. OKID는 1990년대 초 NASA의 Juang에 의해 처음 개발된 이래 다양한 항공기 모델을 식별하는 데 이용되어 왔으며, 완벽한 트림 조건이 아닌 경우나 센서 노이즈가 있는 경우에도 매우 효과적으로 모델을 식별할 수 있는 것으로 알려졌다. OKID는 ERA(eigensystem realization algorithm)의 확장판으로서 ERA 알고리즘이 가진 두 가지 기본 제한 사항을 해결했다. 제한 사항이란 시스템의 초기값이 \(0\) 이어야 한다는 것과 시.. 2023. 3. 25.