본문 바로가기

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

[PSOC-7] 유사 스펙트럴 방법 예제 유사 스펙트럴(pseudospectral) 방법은 다음과 같이 경계조건을 갖는 미분방정식이 있을 때, \[ \begin{align} & \mathcal{D} \mathbf{x}(t)=\mathbf{g}(t), \ \ \ \mathbf{x} \in V \subset \mathbb{R}^n \tag{1} \\ \\ & \mathcal{B} \mathbf{x}(t)=0, \ \ \ \mathbf{x} \in \partial V \end{align} \] 방정식의 미지해 \(\mathbf{x}(t)\) 를 다음과 같은 형식을 갖는 \(\mathbf{X}(t)\) 로 근사적으로 구하는 방법이다. \[ \mathbf{x}(t) \approx \mathbf{X}(t)= \sum_{i=1}^N \mathbf{c}_i .. 2022. 4. 24.
[PSOC-6] 유사 스펙트럴 방법 (Pseudospectral Method) 다음과 같이 경계조건을 갖는 미분방정식이 있다고 하자. \[ \begin{align} & \mathcal{D} \mathbf{x}(t)= \mathbf{g}(t), \ \ \ \mathbf{x} \in V \subset \mathbb{R}^n \tag{1} \\ \\ & \mathcal{B} \mathbf{x}(t)=0, \ \ \ \mathbf{x} \in \partial V \end{align} \] 여기서 \(\mathcal{D}\) 는 미분, \(\mathcal{B}\) 는 경계조건을 뜻하는 연산자이다. 위 미분방정식의 미지해 \(\mathbf{x}(t)\) 를 근사적으로 구한 해(approximate solution) \(\mathbf{X}(t)\) 를 다음과 같은 형식으로 구하고자 한다. \[.. 2022. 4. 23.
[PSOC-5] 가우시안 쿼드래처 (Gaussian Quadrature) 가우시안 쿼드래처(Gaussian quadrature)는 구간 \([-1, 1]\) 에서 어떤 함수 \(f(\tau)\) 의 적분값을 적분 구간내의 특정 지점에서의 함수값의 가중치 합으로 계산하는 수치적분 방법이다. \[ \int_{-1}^1 f(\tau) \ d \tau \approx \sum_{i=1}^N w_i f(\tau_i) \tag{1} \] 여기서 적분 구간내의 특정 지점인 \(\tau =\tau_1, \tau_2, ..., \tau_N\) 을 쿼드래처 포인트라고 하고, \(w_i\) 를 쿼드래처 포인트의 가중치(weighting)이라고 한다. 가우시안 쿼드래처의 정확도는 쿼드래처 포인트의 갯수와 점 사이의 간격에 달려있다. 함수 \(f(\tau)\) 를 \((N-1)\) 차 라그랑지 보간 .. 2021. 12. 18.
[PSOC-4] 라그랑지 보간 다항식 \(N\) 개의 임의의 점 \(t_i\) 에서 함수 \(f(t)\) 의 값 \(f(t_i)\) 가 주어졌을 때, \(N\) 개의 점 \(f(t_i)\) 를 지나는 \((N-1)\) 차 라그랑지 보간 다항식(Lagrange interpolation polynomials) \(p(t)\) 는 다음과 같이 주어진다. \[ f(t) \approx p(t) = \sum_{i=1}^N f(t_i ) L_i (t) \tag{1} \] 여기서 \(t_i\) 를 보간점(interpolating point)라고 한다. 또한 \(L_i (t)\) 를 \((N-1)\) 차 라그랑지 기저 다항식(Lagrange basis polynomials) 또는 라그랑지 다항식이라고 하며 다음과 같이 정의한다. \[ L_i (t)= \pr.. 2021. 12. 17.
[PSOC-3] 가우스 포인트 (Gauss Points) 가우스 포인트(Gauss points)는 \([-1, 1]\) 의 구간에서 정의되는 점들의 집합으로서 점(point)간의 간격이 서로 다르다는 특징이 있다. 가우스 포인트는 라그랑지 보간 다항식(Lagrange interpolation polynomials)의 보간점(interpolating point), 가우스 쿼드래처(Gauss quadrature)의 쿼드래처 포인트(quadrature point), 그리고 유사 스펙트럴 방법(pseudospectral method)의 콜로케이션 포인트(collocation point)로 사용된다. 가우스 포인트는 다음 3가지가 있으며, 각각 다음과 같이 정의된다. (a) LGL (Legendre-Gauss-Lobatto) 포인트: LGL 포인트는 \((N-1)\) .. 2021. 12. 16.
[PSOC-2] 르장드르 다항식 (Legendre Polynomials) 르장드르 다항식(Legendre polynomials)은 다음 르장드르 미분방정식을 만족하는 다항식 \(P_N (\tau)\) 이다. \[ (1-\tau^2 ) \ddot{P}_N (\tau)-2 \tau \dot{P}_N (\tau)+N(N+1) P_N (\tau)=0, \ \ \ \ N=0, 1, 2, ... \tag{1} \] 여기서 독립변수 \(\tau\) 는 \([-1, 1]\) 의 범위를 갖는다. \(P_N (\tau)\) 을 \(N\) 차 르장드르 다항식이라고 한다. \(N=0\) 일 때의 미분 방정식의 해, 즉 \(0\) 차 르장드르 다항식은 \(P_0 (\tau)=1\) 이고, \(N=1\) 일 때의 해는 \(P_1 (\tau)=\tau\) 이다. \(N \ge 2\) 일 때는 다음과 같.. 2021. 12. 15.
[PSOC-1] 유사 스펙트럴 기반 최적제어 개요 대부분의 연속시간 최적제어 문제는 해석적으로 풀기가 매우 어렵기 때문에 수치적인 방법이 사용된다. 최적제어에 사용되는 두 가지 유형의 수치적 방법에는 간접방법(indirect method)과 직접방법(direct method)이 있다. 간접방법에서는, 우선 변분법(calculus of variation)을 사용하여 최적 필요조건을 유도한 후, 2점 경계값 문제(TPBVP, two-point boundary value problem) 또는 다중점 경계값 문제(MPBVP, multi-point boundary value problem)를 푼다. 이 방법의 주요 장점은 높은 정확도와 빠른 수렴이다. 그러나 몇 가지 단점이 있다. 첫째, 복잡한 제약 조건을 고려할 때, 필요한 조건에 대한 해석식을 도출하는 것이.. 2021. 12. 15.
오일러-라그랑지 방정식과 브라키스토크론 문제의 풀이 상단 지점 \((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.