본문 바로가기

유도항법제어/최적제어7

오일러-라그랑지 방정식과 브라키스토크론 문제의 풀이 상단 지점 \((0,0)\)에 정지해 있던 물체가 경로 \(y(x)\)를 따라 마찰없이 중력의 영향으로만 미끄러져서 하단 지점 \((x_f,y_f)\)까지 도착하는데 걸리는 시간은 다음과 같이 계산된다. \[ t= \int_0^{x_f} \frac{ \sqrt{ 1+ \left( \frac{dy}{dx} \right)^2 } }{ \sqrt{2gy} } \ dx \] 여기서 시간 \(t\)를 최소로 만드는 경로 함수 \(y(x)\)를 계산하는 것이 브라키스토크론(Brachistochrone) 문제다. 시간 \(t\)는 함수 \(y(x)\)를 변수로 하는 functional이다. 이 값을 최소화하는 함수 \(y(x)\)를 찾는 문제이므로 변분법의 문제이다. 다음과 같은 functional \(F(y, y^.. 2021. 1. 13.
변분법과 오일러-라그랑지 방정식 오일러-라그랑지 방정식(Euler-Lagrange equation)은 어떤 함수와 그 도함수(derivative)의 함수인 functional의 값을 최대화 또는 최소화하는 함수를 유도하기 위한 미분 방정식이다. 수식으로 살펴보자. 다음과 같은 functional \(F(y, y^\prime)\)가 있다고 하자. \[ F(y, y^\prime)= \int_{x_0}^{x_f} h(y(x), y^\prime (x)) \ dx \] 여기서 \(y(x)\)는 \(x\)의 함수이고, \(y^\prime (x)= \frac{dy}{dx}\)는 \(y(x)\)의 도함수이며, 적분 구간의 양쪽 경계 \(y(x_0)\)와 \(y(x_f)\)는 고정된 값으로 가정한다. Functional \(F(y, y\prime)\).. 2021. 1. 12.
변분법 (calculus of variation) 최적화는 크게 정적 최적화(static optimization)와 동적 최적화(dynamic optimization)로 분류할 수 있다. 정적 최적화는 파라미터 최적화(parameter optimization)라고도 하며, 동적 최적화는 최적제어(optimal control) 문제라고 한다. 파라미터 최적화는 정적(static) 파라미터를 변수로 하는 어떤 함수(function)에서 최소값 또는 최대값을 산출하는 파라미터를 구하는 문제다. 반면에 동적 최적화는 '함수를 변수로 하는 함수' (함수의 함수로서 functional이라고 한다)에서 최소값 또는 최대값을 산출하는 함수를 구하는 문제다. 파라미터 최적화에 미분법이 필요하듯이 동적 최적화에는 변분법(calculus of variation)이 필요하다.. 2021. 1. 11.
브라키스토크론 문제와 변분법 같은 평면에 높이가 다른 두 지점 \(A\)와 \(B\)가 있다. 지점 \(A\)는 지점 \(B\)보다 높은 곳에 위치해 있다. 이 때 상단 지점 \(A\)에 정지해 있던 물체가 마찰없이 중력의 영향으로만 미끄러져서 가장 짧은 시간에 하단 지점 \(B\)까지 도착할 수 있는 경로는 무엇일까? 지점 \(A\)와 \(B\)를 잇는 경로는 무수히 많다. 언뜻 생각하면 두 지점을 직선으로 연결한 경로(위 그림에서 녹색 경로)가 두 지점 \(A\)와 \(B\)를 연결하는 최단 경로이기 때문에 최단 시간에 이동할 수 있는 경로도 되지 않을까 싶지만, 그렇지 않다. 중력 때문에 생기는 물체의 속도도 고려해야 한다. >수평 방향을 \(x\)축, 수직 방향을 \(y\)축으로 한다면, 경로는 \(x\)를 변수로 하는 함수.. 2021. 1. 8.
[Discrete-Time] LQR과 피드백 제어 다음과 같은 선형 시스템에 대해서 \[ \mathbf{x}_{t+1}=F_t \mathbf{x}_t+G_t \mathbf{u}_t \] 성능지수가 다음과 같이 2차함수로 주어지는 \[ J_t = \frac{1}{2} \mathbf{x}_N^T S_N \mathbf{x}_N + \frac{1}{2} \sum_{t=i}^{N-1} \left( \mathbf{x}_t^T Q_t \mathbf{x}_t + \mathbf{u}_t^T R_t \mathbf{u}_t \right) \] LQR 문제의 해는 다음과 같다 (https://pasus.tistory.com/38). \[ \begin{align} & \mathbf{x}_{t+1}=F_t \mathbf{x}_t+G_t \mathbf{u}_t \tag{1-1} .. 2020. 10. 31.
[Discrete-Time] LQR 문제 비선형 시스템에 대해서 매우 일반적인 성능지수를 적용한 최적제어 문제에 대한 해를 유도해 보았다 (https://pasus.tistory.com/35). 그러나 이러한 셋팅으로는 명시적인 제어법칙(control law)을 유도해 내기가 어렵다. LQR은 선형 시스템에 대해서 2차 함수로 주어진 성능지수를 이용한 최적제어 문제에서 도출되었으며 명시적인 제어법칙을 가지고 있는 제어기이다. LQR은 linear quadratic regulator의 약자로서 시스템이 선형(linear)이며 성능지수가 2차함수(quadratic)라는 의미이다. regulator는 시스템의 상태를 0 (또는 set point로 불리는 고정된 목표 상태변수)으로 만드는 제어기를 뜻한다. LQR은 PID 제어기와 함께 실제 응용 문제.. 2020. 10. 31.
[Discrete-Time] 최적제어 문제 다음과 같이 이산시간(discrete-time) 차분 방정식(difference equation)으로 표현된 비선형 시스템이 있다. \[ \mathbf{x}_{t+1} = \mathbf{f}_t (\mathbf{x}_t, \mathbf{u}_t) \] 여기서 아래 첨자 \( t \)는 시간스텝을 나타낸다. 일반적으로 시스템을 시변(time-varying)으로 간주하기 때문에 함수 \( \mathbf{f}_t \)에 아래 첨자로 시간 표시를 한다. 시불변 시스템일 경우에는 생략하면 된다. 상태변수는 \( \mathbf{x}_t \in R^n \), 제어변수는 \( \mathbf{u}_t \in R^m \)이다. 최적제어 문제는 시스템이 어떤 스칼라 성능지수(performance index)를 최소화하도록 .. 2020. 10. 27.