본문 바로가기

optimal control11

[Continuous-Time] 자유최종상태 (Free-final-state) LQR 다음과 같은 선형 시스템이 있다. \[ \dot{\mathbf{x}}=A(t) \mathbf{x}+B(t) \mathbf{u} \tag{1} \] 이 시스템의 초기 시간 \(t_0\) 와 초기 상태변수 \(\mathbf{x}(t_0)\) 는 주어졌다고 가정한다. 또한 최종 시간 \(t_f\) 도 주어졌다고 가정한다. 하지만 최종 상태변수에 관한 제약조건이 없다고 가정한다. 이 시스템의 목적함수도 다음과 같이 고정된 시간 구간 \([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(t) \mathbf{x.. 2023. 12. 19.
[PSOC-8] 유사 스펙트럴 기반 최적제어 문제 연속시간 최적제어에 사용되는 두 가지 유형의 수치적 방법 중 직접방법(direct method)은 최적제어 문제에서 상태변수와 제어입력을 이산화(discretization)시켜 비선형 프로그래밍 문제(NLP, nonlinear programming problem)로 바꾸는 것이다. 유사 스펙트럴 방법(pseudospectral method)은 지난 10여년 동안 최적제어 분야에서 널리 사용된 직접방법 중의 하나로서 콜로케이션 포인트(collocation point)와 보간점(interpolating point)을 이용하는 것이 핵심이다. 지금까지 살펴본 수학적 배경지식인 라그랑지 보간 다항식, 가우시안 쿼드래처, 유사 스펙트럴 방법 등을 간략히 요약한 다음에 연속시간 최적제어 문제를 비선형 프로그래밍 문.. 2023. 7. 17.
동역학 문제의 최적제어 문제로의 변환 고전 동역학에서 해밀톤의 원리(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] 고정최종상태 (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.
[Continuous-Time] 최적제어 예제 간단한 최적제어 문제를 풀어보고자 한다. 최적제어 문제는 최종시간이 설정된(fixed) 값으로 주어지는지 아닌지, 그리고 최종 상태변수가 설정된 값으로 주어지는지 아닌지에 따라 다양하게 분류할 수 있다. 대개의 경우 초기시간과 상태변수 초기값은 설정된 값으로 주어진다. 먼저 최종시간과 최종 상태변수가 모두 주어진 경우다. 연속시간 비선형 시스템의 최적제어의 필요조건을 정리한 다음 표에 의하면, 이 경우 경계조건은 자동으로 만족된다. 일정한 속력 \(V\) 로 움직이는 비행체가 있다. 제어 목적은 비행체가 출발지에서 출발하여 비행 시간 \(t_f\) 가 경과한 후 목적지에 최소의 에너지를 사용하여 도착시키는 것이다. 그림에 비행체와 목적지, 출발지간의 기하하적인 관계가 나와 있다. 비행체의 운동 방정식은 .. 2022. 12. 14.
[Continuous-Time] 최적제어 문제 최적제어(optimal control)문제는 여러 가지 물리적인 제약조건을 만족하면서 어떤 성능지표(performance index) 또는 목적함수(objective function)를 최적화하도록 동적 시스템(dynamic system)의 제어변수(control variable)을 결정하는 문제이다. 제약조건(constraints)은 동적 시스템의 동역학과 함께 시스템 제어변수 및 상태변수의 경로 제약조건(path constraints), 상태변수의 초기값(initial value) 및 최종값(final value)에 관한 제약조건(constraint on the initial and final states)을 모두 포함한다. 목적함수는 설계자가 의도한대로 시스템을 움직이면서 의도한 성능을 발휘할 수 .. 2022. 12. 13.
[MPC] 모델예측제어 개요 동적 최적화(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.
브라키스토크론 문제와 변분법 같은 평면에 높이가 다른 두 지점 \(A\)와 \(B\)가 있다. 지점 \(A\)는 지점 \(B\)보다 높은 곳에 위치해 있다. 이 때 상단 지점 \(A\)에 정지해 있던 물체가 마찰없이 중력의 영향으로만 미끄러져서 가장 짧은 시간에 하단 지점 \(B\)까지 도착할 수 있는 경로는 무엇일까? 지점 \(A\)와 \(B\)를 잇는 경로는 무수히 많다. 언뜻 생각하면 두 지점을 직선으로 연결한 경로(위 그림에서 녹색 경로)가 두 지점 \(A\)와 \(B\)를 연결하는 최단 경로이기 때문에 최단 시간에 이동할 수 있는 경로도 되지 않을까 싶지만, 그렇지 않다. 중력 때문에 생기는 물체의 속도도 고려해야 한다. >수평 방향을 \(x\)축, 수직 방향을 \(y\)축으로 한다면, 경로는 \(x\)를 변수로 하는 함수.. 2021. 1. 8.
강화학습 문제 최적제어 문제는 다음과 같이 이산시간(discrete-time) 차분 방정식(difference equation)으로 표현된 비선형 시스템이 있을 때, \[ \mathbf{x}_{t+1} = \mathbf{f}_t ( \mathbf{x}_t, \mathbf{u}_t) \] 시스템이 어떤 스칼라 성능지수(performance index) \( J_i \)를 최소화하도록 제어변수 \( \mathbf{u}_t \in R^m \)를 결정하는 문제다. 성능지수의 일반적인 형태는 다음과 같다. \[ J_i = \phi (T, \mathbf{x}_T )+ \sum_{t=i}^{T-1} g_t ( \mathbf{x}_t, \mathbf{u}_t) \] 여기서 아래 첨자 \(t \)는 시간스텝을 나타내며 \( \math.. 2020. 11. 8.