스터디 노트
article thumbnail

Optimal Control은 Dynamic Control System에서 Goal state와 Current state의 error를 Cost function으로 표현하고 최소화하는 최적의 Control variable, 'u'를 찾는 문제이다.
여기서 state는  u를 포함한다.

Dynamic System은 State Equation에의해 정의할 수 있다.
(1). F=ma
(2). x'=f(x,t) 여기서 시스템이 control variable 'u'에 따라 변화를 가진다면 --> x' = f(x,u,t)

그렇다면 Control variable에 따라 시스템의 출력이 변한다면 어떻게 최적의 u를 찾아낼까
일반적으로 Deterministic optimal control 방법이 두 가지 존재한다고 한다.
1.Hamilton-jacobi-bellman equation : Dynamic Programming - 시간에 따라 목적을 향해 제어를 어떻게 할 것 인가
2.Pontrygin's Minimum Principle(원래는 Maximum이지만 우리는 최소값을 찾아야하므로)

Bellman's Principle of optimality

Assertion
시작점0 부터 경로a 경로b 혹은 b'을 지나 끝점 1이 존재할 때, a를 지나 b가 최적의 경로라고 한다면
b보다 더 나은 b'은 존재하지 않는다.
If a+b is the best, there is no b' is better than b.
f(b)<f(b'), which is always true if f(a,b) is the minimum.

Principle of optimality: 최적정책은 초기상태와 초기결정이 무엇이든, 나머지 결정들은 첫번째 결정의 상태 결과와 관련해 최적정책을 구성해야한다. (An optimal policy has the property that whatever the initial state and initial decision are, the remaining decisions must constitute an optimal policy with regard to the state resulting from the first decision.)

Dynamic Programming
의사결정(Decision making)이 이루어지는 각 지점을 Stage라고 하며 시작점0부터 끝점 1까지 최적의 경로를 찾는다고 할 때 Stage 1 -> N의 모든 경로(모든 경우의 수)를 다 고려하는 것이 아니라, 각 Stage마다 최선의 Decision을 한다면 최종적으로 Optimality를 가지는 것이다.


End Point로부터 Start Point까지 각 점(여기서 Stage)에서 최선의 선택을 하며 올라간 비용모든 경우의 수를 고려했을때 가장 최저가 되는 비용을 비교해본다면 동일하다.
이와 같은 방법이 Dynamic Programing 방법이고 Compuation load를 줄일 수 있다는 장점이 있다.


--> 다음장에서 ~.. 컴퓨터 정리는 귀찮네요
Concept
Functional and cost to go
-Definition of the functional
일반적으로 Space X-> real number 로의 매핑을 의미
제어문제에서 Cost value는 state x, control variable u에의해 기능한다.

profile

스터디 노트

@myeongkyun

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!