본문 바로가기

유도항법제어47

[MPC-2] MPC를 위한 두가지 QP 모델 - 1 MPC는 다음과 같은 제약조건을 갖는 선형 시스템에서 \[ \begin{align} & \mathbf{x}_{t+1}=A \mathbf{x}_t+B \mathbf{u}_t \tag{1} \\ \\ & \mathbf{y}_t=C \mathbf{x}_t \\ \\ & \ \ \ \ \ \mathbf{u}_{min} \le \mathbf{u}_{t+i} \le \mathbf{u}_{max}, \ \ \ i=0, ... , N-1 \tag{2} \\ \\ & \ \ \ \ \ \mathbf{y}_{min} \le \mathbf{y}_{t+i} \le \mathbf{y}_{max}, \ \ \ i=1, ... , N \end{align} \] 매 시간 스텝마다 다음 목적함수가 일정 성능 예측구간 \([t, \ t.. 2022. 11. 30.
[MPC-1] 모델예측제어 개요 동적 최적화(dynamic optimization) 문제는 최적제어(optimal control) 문제라고도 하는데 매우 광범위한 영역에서 사용되고 있다. 예를 들면 인공위성을 궤도에 올리는 위한 가장 효율적인 연료 사용 전략이나 화학 공정 시설을 가동하는 가장 경제적인 방법을 찾는 문제 등을 들 수 있다. 이러한 동적 최적화 문제의 기본 가정은 동적 모델(dynamic model)이 주어진다는데 있다. 동적 모델의 예로서 다음과 같이 이산시간(discrete-time) 차분 방정식(difference equation)으로 표현된 비선형 시스템을 들 수 있다. \[ \mathbf{x}_{t+1}=\mathbf{f}(\mathbf{x}_t, \mathbf{u}_t) \tag{1} \] 여기서 \(\math.. 2022. 11. 28.
[DMD-3] DMDior 입출력이 포함된 확장 DMD인 DMDio (DMD with input/output) 알고리즘을 유도해 보았다 (https://pasus.tistory.com/225). 원래 시스템을 식별한 후에 축소 모델 (ROM, reduced order model)로 근사화 하는 순서였다. 이번에는 이와 약간 다른 접근 방법을 사용해 보고자 한다. 바로 축소 모델을 식별하는 방법이다. 이러한 방법을 DMDior (DMDio for reduced order model)라고 한다. 식별하고자 하는 미지의 이산시간 시스템이 식 (1)과 같이 표현된다고 하자. \[ \begin{align} \mathbf{x}_{k+1} &= A \mathbf{x}_k+B \mathbf{u}_k \tag{1} \\ \\ \mathbf{y}_.. 2022. 11. 8.
[DMD-2] DMDio 표준 DMD의 한 가지 제한 사항은 시스템의 운동을 바꾸거나 측정할 수 있는 외부 입력과 출력이 포함된 모델을 생성할 수 없다는 것이다. 이제 표준 DMD 방법을 확장하여 입력과 출력이 포함된 시스템 모델을 식별해 보도록 한다. 이와 같이 입출력이 포함된 확장 DMD를 DMDio (DMD with input/output)이라고 한다. 모델 입력과 출력이 포함된 시스템의 동적 특성을 이해하는 것은 제어기 설계 및 센서 배치 문제의 기본 전제 사항이다. 식별하고자 하는 미지의 이산시간 시스템이 식 (1)과 같이 표현된다고 하자. \[ \begin{align} & \mathbf{x}_{k+1}=A \mathbf{x}_k+B \mathbf{u}_k \tag{1} \\ \\ & \mathbf{y}_k=C \mat.. 2022. 10. 31.
[DMD-1] 동적모드분해 (Dynamic Mode Decomposition) 전통적인 제어이론은 시스템의 수학적인 운동 모델을 요구한다. 운동 모델은 물리 법칙으로부터 해석적으로 유도할 수 있지만 입출력 데이터에 기반해서 수치적으로 얻을 수도 있다. 수치 데이터로부터 시스템의 운동 모델을 구하는 것을 시스템 식별(system identification) 또는 모델 식별이라고 한다. 시스템 식별 방법에는 ERA, OKID, QMC등 몇 가지가 있는데, 그 중 하나가 동적모드분해 (DMD, dynamic mode decomposition)이다. DMD는 수치 시뮬레이션 또는 스냅샷(snapshot) 측정 데이터를 사용하여 선형 시스템의 수학적 모델을 식별하고 동적 특성을 추출하는 기법이다. 식별하고자 하는 미지의 이산시간 시스템이 식 (1)과 같이 표현된다고 하자. 일단 자율 시스템.. 2022. 10. 26.
리야프노프 안정성 (Lyapunov stability) 이론 시불변 시스템 \(\dot{\mathbf{x}} = \mathbf{f}(\mathbf{x})\) 의 안정성에 대한 정의에 이어서 이번에는 시스템의 안정성을 판별할 수 있는 이론에 대해서 알아보겠다. 시스템이 선형 시불변이라면 시스템의 고윳값(eigenvalue)을 이용하여 쉽게 안정성을 판별할 수 있다. 시스템이 비선형일 경우에도 평형상태에 대해서 선형화를 한 후에 평형상태 근방에서 로컬 안정성을 판별할 수 있을 것이다. 이와 같은 안정성 판별 방법을 간접방법(indirect method)이라고 한다. 그러나 선형화를 사용하여 비선형 시스템의 로컬 안정성을 파악할 수 없는 상황이 있을 수 있다. 또한 선형화는 그 속성상 비선형 시스템의 전역(global) 안정성에 대해서는 알려줄 수가 없다. 물론 비선형.. 2022. 9. 30.
리야프노프 안정성 (Lyapunov stability) 개념 수학에서 자율 미분방정식(autonomous differential equation) 또는 자율 시스템은 명시적으로 독립변수의 함수가 아닌 미분방정식 또는 시스템을 말한다. 독립변수가 시간이라면 시불변(time-invariant) 시스템이라고도 한다. 독립변수가 시간인 비선형 비자율 미분방정식은 \(\dot{\mathbf{x}}=\mathbf{f}(\mathbf{x}, t)\) 로, 자율 시스템 또는 시불변 시스템은 \(\dot{\mathbf{x}}=\mathbf{f}(\mathbf{x})\) 로 표기한다. 어떤 시불변 시스템 \(\dot{\mathbf{x}}=\mathbf{f}(\mathbf{x})\) 의 한 평형상태(equilibrium state)를 \(\mathbf{x}_e\) 라고 하자. 평형상.. 2022. 9. 27.
[Continuous-Time] LTI 시스템과 인과 시스템 LTI시스템의 출력은 다음과 같이 입력과 임펄스 반응의 컨볼루션으로 주어진다. \[ y(t)= \int_{-\infty}^{\infty} u(\tau) h(t-\tau) \ d\tau \] 여기서 \(h(t-\tau)\) 는 시간 \(\tau\) 에서 시스템에 임펄스를 입력으로 가했을 때 시간 \(t\) 에서의 출력이다. 그런데 여기서 \( t \lt \tau\) 일 때 \(h(t-\tau)\) 의 값이 \(0\) 이 아니라면 조금 이상한 일이 벌어진다. 임펄스를 입력으로 가하기 이전에 그 결과인 임펄스 반응이 시간적으로 먼저 나오는 것으로 해석되기 때문이다. 이것은 인과 법칙에 위배된다. 원인이 앞서고 결과가 뒤따르는게 순리적으로 맞기 때문이다. 원인이 결과에 앞서는 시스템을 인과(causal) 시스템.. 2022. 9. 13.
[Continuous-Time] LTI 시스템과 컨볼루션 입력과 출력의 관계식으로 표현하는 방법을 시스템의 외부적 표현 방법이라고도 하는데 다음과 같이 연산자(operator)를 이용하여 입출력 관계식을 함수로 나타낸다. \[ \mathbf{y}(t)= \mathcal{F} \{ \mathbf{u}(t), t\} \] 여기서 \(t\) 는 시간, \(\mathbf{u}(t)\) 는 입력, \(\mathbf{y}(t)\) 는 출력이다. 시불변 시스템의 경우 입력을 가한 싯점에 관계없이 출력이 동일해야 하므로 입출력 관계식은 다음과 같이 된다. \[ \mathbf{y}(t)= \mathcal{F} \{ \mathbf{u}(t) \} \] 한편 시불변이면서 동시에 선형인 경우에는 중첩의 원리가 적용되므로 시스템은 다음과 같은 특성을 가져야 한다. \[ \begin{.. 2022. 9. 13.
[Continuous-Time] LTI 시스템 선형 시스템에 이어서 이번에는 시불변(time-invariant) 시스템이 무엇인지 알아보자. 시불변 시스템은 초기값 \(\mathbf{x}(0 )\) 을 시간 \(\tau\) 만큼 늦추고 입력 \(\mathbf{u}(t)\) 도 \(\tau\) 만큼 늦춰서 똑같은 형태로 시스템에 인가했을 때, 출력 \( \mathbf{y}(t)\) 도 \(\tau\) 만큼 늦춰진 채 똑같은 형태로 나오는 시스템이다. 즉 시스템의 초기값과 입력의 시점 따라 시스템의 출력이 바뀌지 않는 시스템을 말한다. 예를 들어서 '어제' A라는 초기값과 패턴을 갖는 신호를 시스템에 입력으로 주었더니 B라는 출력 신호가 나왔다고 했을 때, '오늘' 동일한 A라는 초기값과 입력 신호를 시스템에 가했더니 어제와 동일한 B라는 출력 신호가 .. 2022. 9. 13.