맨위로가기

마르코프 결정 과정

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

마르코프 결정 과정(Markov decision process, MDP)은 순차적 의사 결정 문제를 수학적으로 모델링하는 프레임워크로, 에이전트가 환경과 상호 작용하며 보상을 최대화하는 방법을 학습하는 데 사용된다. MDP는 상태 공간, 행동 공간, 상태 전이 확률, 보상 함수, 할인율로 구성되며, 정책을 통해 각 상태에서 어떤 행동을 선택할지 결정한다. MDP의 핵심 문제는 주어진 상태에서 의사 결정자가 취할 행동을 규정하는 최적 정책을 찾는 것이며, 동적 계획법, 가치 반복법, 정책 반복법, 강화 학습 등의 알고리즘을 사용하여 해결할 수 있다. MDP는 강화 학습, 학습 오토마타, 범주론적 해석 등 다양한 분야에 응용되며, 부분 관측 마르코프 결정 과정(POMDP) 및 제약 마르코프 결정 과정(CMDP)과 같은 확장된 형태로도 연구된다.

더 읽어볼만한 페이지

  • 마르코프 과정 - 마르코프 연쇄
    마르코프 연쇄는 현재 상태가 주어졌을 때 과거와 미래 상태가 독립적인 확률 변수 순서열로, 시간 동질성, 상태 공간 유형, 시간 매개변수 유형에 따라 다양한 유형으로 분류되며 여러 분야에서 활용되는 확률적 모델링 방법이다.
  • 마르코프 과정 - 대기행렬이론
    대기행렬 이론은 1909년 에를랑에 의해 연구된 수학 이론으로, 서버, 대기실, 고객으로 구성된 시스템을 분석하며, 켄달의 표기법을 사용하여 대기열 모델의 특징을 나타내고, 컴퓨터 과학 등 다양한 분야에 응용되어 시스템 성능 분석 및 최적화에 활용된다.
  • 최적 결정 - 손실 함수
    손실 함수는 통계학, 의사결정 이론, 경제학 등에서 추정치와 실제값의 차이를 나타내는 함수로, 예측 손실은 손실 함수와 확률 변수 등의 곱을 적분하여 계산하며, 결정 이론, 통계학, 경제학 등에서 다양한 방식으로 활용된다.
  • 최적 결정 - 효용 극대화
    효용 극대화는 소비자가 제한된 예산으로 상품 구매를 통해 얻는 만족을 최대로 하려는 경제 행위이며, 한계효용균등의 법칙에 따라 지출 배분을 결정하고 생산자의 이윤 극대화에도 적용된다.
  • 기계 학습 - 비지도 학습
    비지도 학습은 레이블이 없는 데이터를 통해 패턴을 발견하고 데이터 구조를 파악하는 것을 목표로 하며, 주성분 분석, 군집 분석, 차원 축소 등의 방법을 사용한다.
  • 기계 학습 - 지도 학습
    지도 학습은 레이블된 데이터를 사용하여 입력 데이터와 출력 레이블 간의 관계를 학습하는 기계 학습 분야로, 예측 모델 생성, 알고리즘 선택, 모델 최적화, 정확도 평가 단계를 거치며, 회귀 및 분류 문제에 적용되고 다양한 확장 기법과 성능 평가 방법을 활용한다.
마르코프 결정 과정

2. 정의

세 개의 상태(녹색 원)와 두 개의 행동(주황색 원), 두 개의 보상(주황색 화살표)이 있는 간단한 마르코프 결정 과정(MDP)의 예시.


마르코프 결정 과정(Markov Decision Process, MDP)은 이산적인 시간 단계에서 의사결정을 내리는 과정을 수학적으로 모델링하는 틀이다. 각 시점에서 시스템은 특정 상태에 있으며, 의사결정자는 해당 상태에서 가능한 행동 중 하나를 선택한다. 이 행동에 따라 시스템은 확률적으로 다음 상태로 전이하고, 의사결정자는 그 결과로 즉각적인 보상을 받는다. MDP의 핵심 특징은 다음 상태와 보상이 오직 현재 상태와 선택된 행동에만 의존한다는 마르코프 성질을 만족한다는 점이다.

일반적으로 마르코프 결정 과정은 다음 다섯 가지 요소의 5중쌍 (S, A, P, R, \gamma) 또는 네 가지 요소의 튜플 (S, A, P, R)로 정의된다.

  • S는 가능한 모든 상태들의 집합으로, 상태 공간(state space)이라고 불린다. 상태 공간은 유한하거나 무한할 수 있다 (예: 실수 집합).
  • A는 가능한 모든 행동들의 집합으로, 행동 공간(action space)이라고 불린다. 특정 상태 s에서 취할 수 있는 행동들의 집합을 A_s로 표기하기도 한다. 행동 공간 역시 유한하거나 무한할 수 있다.
  • P상태 전이 확률 함수이다. P_a(s,s') 또는 T(s, a, s')로 표기하며, 시점 t에 상태 s에서 행동 a를 취했을 때, 다음 시점 t+1에 상태 s'으로 전이할 확률 \mathrm{Pr}(s_{t+1}=s'\ |\ s_t=s,a_t=a)을 나타낸다.
  • 상태 공간이 이산적인 경우, P_a(s, s')는 직접적인 확률값을 가진다.
  • 상태 공간이 연속적인 경우 (예: S\subseteq \mathbb R^d), 전이 확률은 확률 밀도 함수로 정의되며, 특정 가측 집합 S' \subseteq S로 전이할 확률은 \Pr(s_{t+1}\in S' \mid s_t = s, a_t=a)=\int_{S'} P_a(s, s')ds' (주로 르베그 측도에 대한 적분)로 계산된다.
  • R보상 함수이다. R_a(s,s') 또는 R(s, a, s')로 표기하며, 상태 s에서 행동 a를 취해 상태 s'으로 전이했을 때 즉시 받게 되는 보상 (또는 보상의 기댓값)을 나타낸다. 보상은 실수 값 \mathbb{R}이다.
  • \gamma할인 인자(discount factor)로, 0 \le \gamma \le 1의 값을 가진다. 미래에 받을 보상의 가치를 현재 시점에서 얼마나 할인하여 평가할지를 나타낸다. \gamma가 0에 가까우면 즉각적인 보상만을 중요하게 여기고, 1에 가까우면 미래의 보상도 현재의 보상만큼 중요하게 여긴다. 할인 인자는 주로 무한한 시간 동안의 누적 보상을 다룰 때 사용된다.


상태 공간 S와 행동 공간 A가 모두 유한 집합인 경우, 해당 MDP를 유한 마르코프 결정 과정(finite MDP)이라고 부른다. 기본적인 MDP 알고리즘들은 대부분 유한 MDP를 가정하고 설계된다.

마르코프 결정 과정은 마르코프 연쇄에 행동 선택의 개념과 보상이라는 동기 부여 요소를 추가하여 확장한 것으로 볼 수 있다.

2. 1. 문제 설정

마르코프 결정 과정(MDP)은 이산적인 시간 단계에서 상태 변화와 보상이 확률적으로 결정되는 시스템에서 최적의 의사결정 규칙을 찾는 문제를 다룬다. 각 시점에서 시스템은 특정 상태(s)에 놓이며, 의사결정자는 해당 상태에서 가능한 행동(a) 중 하나를 선택한다. 선택된 행동에 따라 시스템은 확률적으로 다음 상태(s')로 전이하고, 의사결정자는 이에 해당하는 보상(r)을 받는다.[5]

MDP의 핵심 특징은 마르코프 성질을 만족한다는 점이다. 즉, 다음 상태 s'와 보상 r은 오직 현재 상태 s와 선택된 행동 a에만 의존하며, 과거의 상태나 행동 이력과는 무관하다. 이러한 점에서 MDP는 마르코프 연쇄에 행동 선택과 보상 개념을 추가하여 확장한 것으로 볼 수 있다. 반대로, 각 상태에서 취할 행동이 고정되면 MDP는 마르코프 연쇄와 동일하게 동작한다.

MDP의 근본적인 문제는 주어진 상황(상태)에서 어떤 행동을 취해야 하는지를 규정하는 최적의 정책(\pi)을 찾는 것이다. 정책은 각 상태 s에서 의사결정자가 선택할 행동 a를 지정하는 함수 또는 규칙이다. 정책은 다음과 같이 두 가지 형태로 나눌 수 있다.

  • 결정론적 정책: a = \pi(s). 특정 상태에서는 항상 정해진 하나의 행동을 선택한다.
  • 확률적 정책: \Pr(a_t = a \mid s_t = s) = \pi(s, a). 특정 상태에서 가능한 행동들을 확률적으로 선택한다.


정책을 평가하고 최적의 정책을 찾는 기준은 누적 보상의 기댓값을 최대화하는 것이다. 보상의 누적 방식을 계산하는 목표 함수에는 주로 두 가지 접근 방식이 사용된다.

1. 무한 시간 구간 (Infinite Horizon): 과정이 무한히 계속된다고 가정하고, 미래의 보상을 현재 가치로 할인하여 합산한다. 할인율 \gamma ( 0 \le \gamma \le 1 )는 미래 보상의 중요도를 조절하는 역할을 하며, 1에 가까울수록 미래 보상을 중요하게 생각한다. 할인율이 r일 경우 보통 \gamma = 1/(1+r)로 설정한다. 목표 함수는 다음과 같이 표현된다.

:E\left[\sum^{\infty}_{t=0} {\gamma^t R_{a_t} (s_t, s_{t+1})}\right] 또는 \mathbb{E}_{\pi} \bigg[ \sum_{\tau=0}^{\infty} \gamma^\tau r_{t+\tau+1} \mid s_t = s \bigg]

여기서 a_t = \pi(s_t)는 정책 \pi에 따라 상태 s_t에서 선택된 행동이며, 기대값 E[\cdot] 또는 \mathbb{E}_{\pi}[\cdot]는 상태 전이 확률 P_{a_t}(s_t, s_{t+1})과 정책 \pi 하에서의 평균적인 누적 보상을 의미한다.

2. 유한 시간 구간 (Finite Horizon): 정해진 시간 H 단계까지만 고려하며, 각 단계의 보상은 동일한 가중치를 가진다. 학습 이론 등에서 주로 사용된다. 목표 함수는 다음과 같다.

:E\left[\sum^{H-1}_{t=0} {R_{a_t} (s_t, s_{t+1})}\right] 또는 \mathbb{E}_{\pi} \bigg[ \sum_{\tau = 1}^{H} r_{t+\tau} \mid s_t = s \bigg]

위 목표 함수 중 하나를 최대화하는 정책을 최적 정책이라고 하며, 일반적으로 \pi^*로 표기한다. 마르코프 속성 덕분에 최적 정책은 오직 현재 상태 s에만 의존하는 함수로 표현될 수 있다. 하나의 MDP 문제에 대해 여러 개의 다른 최적 정책이 존재할 수도 있다.

MDP 문제를 풀기 위해서는 상태 전이 확률 분포 P_a(s, s')와 보상 함수 R_a(s, s')를 알아야 한다. 이를 모델이라고 부르며, 모델을 아는지 모르는지에 따라 문제 해결 방식이 달라진다.

  • 명시적 모델 (Explicit Model): 전이 확률과 보상 함수를 직접 알고 있는 경우. 동적 계획법과 같은 알고리즘을 사용하여 최적 정책을 계산할 수 있다.
  • 암시적 모델 (Implicit Model): 모델을 직접 알지 못하지만, 시뮬레이션을 통해 상태 전이와 보상 샘플을 얻을 수 있는 경우.
  • 생성 모델 (Generative Model): 임의의 상태 s와 행동 a를 입력하면, 다음 상태 s'와 보상 r의 샘플 (s', r \gets G(s, a))을 생성해주는 단일 단계 시뮬레이터. 몬테카를로 트리 탐색 등에 사용된다.[5]
  • 시뮬레이터 (Simulator) 또는 에피소드 환경 시뮬레이터: 초기 상태에서 시작하여 행동을 입력받으면 다음 상태와 보상을 반환하며, 이를 반복하여 상태, 행동, 보상의 시퀀스인 에피소드를 생성한다. 대부분의 강화 학습 알고리즘은 이 시뮬레이터만 필요로 한다.


명시적 모델이 가장 많은 정보를 포함하며, 명시적 모델로부터 생성 모델을, 생성 모델로부터 시뮬레이터를 만들 수 있다. 반대로 암시적 모델에서 명시적 모델을 추정하려면 회귀 분석 등을 통한 학습이 필요하다. 어떤 종류의 모델을 사용할 수 있는지가 MDP 문제 해결을 위한 적절한 알고리즘을 선택하는 데 중요한 요소가 된다.

3. 가치 함수

마르코프 결정 과정(MDP)의 핵심 목표는 장기적으로 가장 많은 보상을 얻을 수 있는 최적의 행동 규칙, 즉 정책(\pi)을 찾는 것이다. 정책은 각 상태 s에서 어떤 행동 a를 선택할지를 결정하는 함수 \pi(s) 또는 확률 분포 \pi(s, a)로 정의된다.

어떤 정책이 좋은지를 평가하기 위해 가치 함수(value function)라는 개념을 사용한다. 가치 함수는 특정 상태에서 시작하여 특정 정책을 따랐을 때, 미래에 받을 것으로 기대되는 보상의 총합을 나타낸다. 일반적으로 미래의 보상은 현재의 보상보다 가치를 낮게 평가하기 위해 할인율(\gamma, 0 \le \gamma \le 1)을 적용하여 합산한다. 할인율이 1에 가까울수록 미래 보상을 중요하게 생각하고, 0에 가까울수록 즉각적인 보상만을 중요하게 여긴다.

무한한 시간 동안 얻게 될 할인된 보상의 총합에 대한 기대치를 최대화하는 것이 일반적인 목표이며, 이는 다음과 같은 수식으로 표현될 수 있다.

:E\left[\sum^{\infty}_{t=0} {\gamma^t R_{a_t} (s_t, s_{t+1})}\right]

여기서 a_t = \pi(s_t)는 정책 \pi에 따라 상태 s_t에서 선택된 행동이고, R_{a_t} (s_t, s_{t+1})는 상태 s_t에서 행동 a_t를 하여 상태 s_{t+1}로 전이했을 때 받는 즉각적인 보상이다. 기대값 E[\cdot]는 상태 전이 확률과 정책 \pi에 따라 계산된다.

이처럼 특정 정책 \pi를 따랐을 때 각 상태 s에서 기대되는 누적 할인 보상의 값을 상태 가치 함수(state-value function), V^\pi(s)라고 부른다. 상태 가치 함수는 특정 정책의 효율성을 상태별로 평가하는 척도이다. MDP의 궁극적인 목표는 모든 상태에서 가장 높은 가치 함수 값을 갖는 최적 정책(\pi^*)을 찾는 것이며, 이 최적 정책에 해당하는 가치 함수를 최적 상태 가치 함수(V^*(s))라고 한다. 이러한 최적 가치 함수를 찾는 방법과 그 특성은 벨만 방정식 섹션에서 더 자세히 다룬다.

3. 1. 벨만 방정식

마르코프 결정 과정 모델의 마르코프 속성에 따라, 특정 시점에서의 목적 함수 값은 정책 \pi를 고정한 상태에서 상태 s_t \in S의 함수로 볼 수 있다.

이러한 개념을 바탕으로, 특정 정책 \pi \colon S \times A \to [0, 1]에 대해 다음과 같이 정의되는 함수를 상태 가치 함수(state-value function)라고 부른다.



V^\pi(s) = \mathbb{E}_\pi \bigg[ \sum_{\tau=0}^{\infty} \gamma^{\tau} r_{t+\tau+1} \mid s_t = s \bigg]



상태 가치 함수는 현재 상태 s에서 시작하여 정책 \pi를 따라 행동했을 때 미래에 받을 것으로 기대되는 (할인율 \gamma가 적용된) 총 보상의 합을 의미한다. 이 상태 가치 함수 V^{\pi}(s)는 다음과 같은 재귀적인 관계, 즉 일관성 조건을 만족한다.



V^\pi(s) = \sum_{a \in A} \pi(s,a) \sum_{s' \in S} T(s, a, s') \Big( R(s, a, s') + \gamma V^\pi(s') \Big)



여기서 \pi(s,a)는 상태 s에서 행동 a를 선택할 확률, T(s, a, s')는 상태 s에서 행동 a를 했을 때 다음 상태가 s'이 될 확률(상태 전이 확률), R(s, a, s')는 이때 받는 즉각적인 보상이다.

가능한 모든 정책 중에서 가장 높은 상태 가치 함수 값을 주는 정책을 최적 정책(optimal policy) \pi^*이라고 한다. 즉, 모든 상태 s \in S와 다른 임의의 정책 \pi'에 대해 V^{\pi^*}(s) \geq V^{\pi'}(s)를 만족한다.

최적 정책을 따랐을 때의 상태 가치 함수 V^*(s) = V^{\pi^{*}}(s)최적 상태 가치 함수(optimal state-value function)라고 부른다.

최적 상태 가치 함수는 다음의 벨만 방정식을 만족한다.



V^*(s) = \max_{a \in A} \sum_{s' \in S} T(s,a,s') \Big( R(s, a, s') + \gamma V^*(s') \Big)



이 방정식은 현재 상태 s에서의 최적 가치 V^*(s)가, 가능한 모든 행동 a 중에서 다음 상태 s'의 최적 가치와 즉각적인 보상을 고려했을 때 가장 큰 기댓값을 선택하는 것과 같다는 것을 의미한다. 즉, 최적 가치는 다음 상태의 최적 가치와 즉각적 보상으로 재귀적으로 표현될 수 있다. 벨만 방정식은 동적 계획법이나 강화 학습 알고리즘에서 최적 정책을 찾는 데 핵심적인 역할을 한다.

4. 알고리즘

마르코프 결정 과정(MDP)은 선형 계획법이나 동적 계획법을 사용하여 풀 수 있다. 이 섹션에서는 동적 계획법에 기반한 알고리즘들을 설명한다.

MDP 문제의 목표는 주어진 상태 전이 함수 P와 보상 함수 R을 바탕으로, 할인된 보상의 총계 기댓값을 최대화하는 정책 \pi를 찾는 것이다.

이러한 최적 정책을 찾는 표준적인 알고리즘들은 상태별로 인덱싱된 두 개의 배열을 필요로 한다. 첫 번째 배열 V는 각 상태의 기댓값(가치)을 저장하며, 두 번째 배열 \pi는 각 상태에서 취해야 할 최적의 행동(정책)을 저장한다. 알고리즘이 종료되면, \pi는 최적 정책을 나타내고, V(s)는 상태 s에서 시작하여 최적 정책을 따랐을 때 기대되는 할인된 보상의 총계를 저장하게 된다.

알고리즘은 기본적으로 다음 두 단계를 재귀적으로 반복하여 최적해를 찾아나간다.


  • 가치 갱신 (정책 평가): 현재 정책 \pi를 따를 때 각 상태 s의 가치 V(s)를 계산한다.

V(s) := \sum_{s'} P_{\pi(s)}(s,s') \bigg(R_{\pi(s)}(s,s')+\gamma V(s')\bigg)

  • 정책 갱신 (정책 개선): 현재 가치 함수 V를 기반으로 더 나은 정책 \pi(s)를 찾는다. 즉, 각 상태 s에서 기대 보상을 최대화하는 행동 a를 선택한다.

\pi(s) := \operatorname{argmax}_a \bigg\{ \sum_{s'} P_{a}(s, s') \left( R_{a}(s,s') + \gamma V(s') \right) \bigg\}

이 두 단계는 값(V)과 정책(\pi)이 더 이상 변하지 않고 수렴할 때까지 모든 상태에 대해 반복된다. 계산 순서나 상태별 갱신 방식은 알고리즘의 종류에 따라 다를 수 있다. 어떤 상태도 영구적으로 갱신에서 제외되지 않는 한, 알고리즘은 결국 올바른 해에 도달한다.

=== 값 반복법 ===

값 반복법(Value Iteration)[22]은 후진 유도(backward induction)라고도 불리며, 정책 배열 \pi를 명시적으로 저장하지 않는다. 대신, 정책 개선 단계와 가치 평가 단계를 하나로 결합하여 가치 함수 V를 직접 갱신한다. 즉, 각 상태 s에서 가능한 모든 행동 a에 대한 기대 보상을 계산하고, 그 중 최댓값을 다음 단계의 가치 V_{i+1}(s)로 사용한다.

V_{i+1}(s) := \max_a \bigg\{\sum_{s'} P_a(s,s') \bigg(R_a(s, s') + \gamma V_i(s')\bigg)\bigg\}

여기서 i는 반복 횟수를 의미하며, 알고리즘은 보통 V_0을 가치 함수의 초기 추정치로 설정하여 시작한다. 이 계산을 모든 상태 s에 대해 V가 수렴할 때까지 (즉, 좌변과 우변이 같아질 때까지) 반복한다. 이 과정은 해당 문제에 대한 벨만 방정식의 해를 찾는 과정과 같다. 최적 가치 함수 V^*가 구해지면, 이를 이용해 최적 정책 \pi^*를 계산할 수 있다.

로이드 섀플리는 1953년 확률적 게임(stochastic games)에 관한 논문에서 값 반복법의 특별한 경우를 다루었으나[23][7], 이것이 MDP 해법으로 인식된 것은 나중의 일이다.[24][8]

=== 정책 반복법 ===

정책 반복법(Policy Iteration)[21]은 정책 평가(Policy Evaluation)와 정책 개선(Policy Improvement) 단계를 명확히 구분하여 번갈아 수행한다.

1. 정책 평가: 현재 정책 \pi가 주어졌을 때, 이 정책을 따를 경우의 각 상태 가치 V^\pi를 계산한다. 이는 모든 상태 s에 대해 다음 연립 방정식을 푸는 것과 같다.

V^\pi(s) = \sum_{s'} P_{\pi(s)}(s,s') \bigg(R_{\pi(s)}(s,s')+\gamma V^\pi(s')\bigg)

이 단계는 V^\pi가 수렴할 때까지 반복 계산하거나, 연립일차방정식으로 직접 풀 수 있다. 연립 방정식을 반복적으로 푸는 것은 완화법을 사용하는 것으로 해석될 수 있다.

2. 정책 개선: 계산된 가치 함수 V^\pi를 사용하여 더 나은 정책 \pi'을 찾는다. 각 상태 s에서 V^\pi를 기준으로 기대 보상을 최대화하는 행동을 선택한다.

\pi'(s) \leftarrow \arg\max_{a \in A_s} \sum_{s'} P_{a}(s, s') \Big( R_{a}(s,s') + \gamma V^\pi(s') \Big)

이 두 단계를 정책 \pi가 더 이상 변하지 않을 때까지 반복한다. 정책 개선 단계에서 모든 상태에 대해 정책 \pi가 변경되지 않으면 알고리즘이 완료된다는 명확한 종료 조건이 있다. 이산적인 정책 공간을 가지므로 유한 시간 내 종료가 보장된다는 장점이 있다. 정책 반복법은 일반적으로 상태 수가 많을 경우 값 반복법보다 느릴 수 있다.[9]

=== 기타 변형 알고리즘 ===

  • 수정된 정책 반복법 (Modified Policy Iteration): 정책 평가 단계를 완전히 수렴시키지 않고 정해진 횟수만큼만 반복한 후 정책 개선 단계로 넘어가는 방식이다.[10][11]
  • 우선순위 스위핑 (Prioritized Sweeping): 모든 상태를 동일하게 갱신하는 대신, 어떤 방식으로든 중요한 상태(예: 최근 가치 변화가 컸던 상태, 시작 상태 근처 등)를 우선적으로 갱신하는 방식이다.


이러한 알고리즘들은 주로 유한한 상태와 행동 공간을 가진 MDP에 적용되며, 전이 확률과 보상 함수가 명시적으로 주어졌다고 가정한다. 하지만 기본적인 개념은 함수 근사(function approximation) 등의 기법과 결합하여 더 복잡하거나 연속적인 상태/행동 공간을 가진 문제에도 확장될 수 있다.

5. 확장 및 일반화

마르코프 결정 과정은 플레이어가 한 명뿐인 확률적 게임으로 볼 수 있다. 기본적인 마르코프 결정 과정 모델은 다양한 방식으로 확장 및 일반화될 수 있다.

'''부분 관측 마르코프 결정 과정 (POMDP)'''

기본적인 마르코프 결정 과정 해결책은 행동 \pi(s)를 계산할 때 현재 상태 s를 정확히 알고 있다고 가정한다. 하지만 실제 상황에서는 상태를 완벽하게 관측하기 어렵거나 관측에 불확실성이 따르는 경우가 많다. 이렇게 상태 정보가 불완전한 문제를 다루기 위해 확장된 모델이 부분 관측 마르코프 결정 과정(Partially Observable Markov Decision Process, POMDP)이다.

'''제약 마르코프 결정 과정 (CMDP)'''

제약 마르코프 결정 과정(Constrained Markov Decision Process, CMDP)은 마르코프 결정 과정(MDP)을 확장한 모델이다. MDP와 CMDP 사이에는 다음과 같은 세 가지 주요 차이점이 있다.[14]

MDP와 CMDP의 주요 차이점[14]
구분마르코프 결정 과정 (MDP)제약 마르코프 결정 과정 (CMDP)
비용 발생행동 적용 후 단일 보상/비용행동 적용 후 여러 제약 조건이나 비용이 발생 가능
해결 방법동적 계획법, 선형 계획법주로 선형 계획법 사용 (동적 계획법 적용 어려움)
최종 정책시작 상태에 의존하지 않음 (일반적 경우)시작 상태에 따라 달라짐



CMDP 문제를 풀기 위해서는 주로 라그랑주 승수 방법과 같은 선형 계획법 기법이 사용된다. 라그랑주 승수 기반의 다양한 알고리즘이 개발되었으며, 예를 들어 자연 정책 기울기 쌍대 방법(natural policy gradient primal-dual method) 등이 있다.[15] CMDP는 다양한 분야에 응용될 수 있으며, 최근에는 로봇 공학 분야의 동작 계획 문제 해결에 활용되고 있다.[16]

'''연속 시간 마르코프 결정 과정 (CT-MDP)'''

이산 시간 마르코프 결정 과정(Discrete-time MDP)에서는 정해진 시간 간격마다 결정을 내리지만, 연속 시간 마르코프 결정 과정(Continuous-time Markov Decision Process, CT-MDP)에서는 결정 주체가 원하는 시점에 언제든지 결정을 내릴 수 있다. CT-MDP는 시스템의 동역학상미분 방정식(ODE)으로 표현되는 연속 시간 시스템의 의사 결정 과정을 모델링하는 데 더 적합하다. 이러한 시스템은 대기열 시스템, 전염병 확산 과정, 개체군 과정 등에서 찾아볼 수 있다.

CT-MDP에서도 목표는 기대 누적 보상을 최대화하는 최적의 정책을 찾는 것이다. 다만 시간 변수가 연속적이므로, 보상의 합계를 구하는 대신 적분을 사용한다.

:\max \operatorname{E}_\pi\left[\left. \int_0^\infty\gamma^t r(s(t),\pi(s(t))) \, dt \;\right| s_0 \right]

여기서 0\leq\gamma< 1는 할인 인자이다.

상태 공간과 행동 공간이 유한하다면, 선형 계획법을 사용하여 최적 정책을 찾을 수 있다. 특히, 시스템이 에르고딕 특성을 가진다고 가정하면(즉, 고정된 정책 하에서 시스템이 에르고딕 연속 시간 마르코프 연쇄가 됨), 결정은 상태가 변하는 순간에만 내리는 것으로 충분하다. 일부 조건 하에서,[17] 최적 가치 함수 V^*가 상태 i와 무관한 상수 g(평균 보상)가 될 때, 다음과 같은 벨만 부등식이 성립한다.

:g\geq R(i,a)+\sum_{j\in S}q(j\mid i,a)h(j) \quad \forall i \in S \text{ and } a \in A(i)

여기서 h(j)는 상대 가치 함수이며, R(i,a)는 상태 i에서 행동 a를 했을 때의 즉각적인 보상률, q(j\mid i,a)는 상태 i에서 행동 a를 했을 때 상태 j로 전이하는 비율이다. 최적 평균 보상 \bar V^*는 위 부등식을 만족하는 가장 작은 g 값이다. 이를 찾기 위해 다음과 같은 선형 계획법 모델을 사용할 수 있다.


  • 원 문제 선형 계획법 (Primal Linear Program, P-LP)

:

\begin{align}

\text{최소화}\quad &g\\

\text{제약 조건} \quad & g-\sum_{j \in S}q(j\mid i,a)h(j)\geq R(i,a)\,\,

\forall i\in S,\,a\in A(i)

\end{align}


  • 쌍대 문제 선형 계획법 (Dual Linear Program, D-LP)

:

\begin{align}

\text{최대화} &\sum_{i\in S}\sum_{a\in A(i)}R(i,a)y(i,a)\\

\text{제약 조건} &\sum_{j\in S}\sum_{a\in A(i)} q(j\mid i,a)y(i,a)=0 \quad

\forall j\in S,\\

& \sum_{i\in S}\sum_{a\in A(i)}y(i,a)=1,\\

& y(i,a)\geq 0 \qquad \forall a\in A(i) \text{ and } \forall i\in S

\end{align}



여기서 y(i,a)는 상태-행동 쌍 (i,a)가 차지하는 정상 상태 확률(stationarity probability)에 해당한다. D-LP 문제의 최적 해 y^*(i,a)를 찾으면, 이를 이용해 최적 정책을 결정할 수 있다.

만약 상태 공간과 행동 공간이 연속적이라면, 최적 정책은 해밀턴-야코비-벨만 방정식(Hamilton-Jacobi-Bellman, HJB)이라는 편미분 방정식을 풀어 찾을 수 있다. HJB 방정식을 사용하기 위해 문제를 다음과 같이 재구성한다.

:\begin{align} V(s(0),0)= {} & \max_{a(t)=\pi(s(t))}\int_0^T r(s(t),a(t)) \, dt+D[s(T)] \\

\text{s.t.}\quad & \frac{ds(t)}{dt}=f[t,s(t),a(t)]

\end{align}



여기서 V(s(0),0)는 시간 0에서 상태 s(0)일 때의 최적 가치 함수, r(s(t),a(t))는 시간 t에서의 보상률, D[s(T)]는 최종 시간 T에서의 터미널 보상, s(t)는 시스템 상태 벡터, a(t)는 제어 벡터, f[t,s(t),a(t)]는 상태 벡터의 시간 변화를 나타내는 함수이다. HJB 방정식은 다음과 같다.

:0=\max_a ( r(t,s,a) +\frac{\partial V(t,s)}{\partial s}f(t,s,a))

이 방정식을 풀면 최적 제어(행동) a(t)와 최적 가치 함수 V^*를 얻을 수 있다.

6. 강화 학습

강화 학습기계 학습최적 제어의 학제 간 분야로, 주요 목표는 전이 확률과 보상이 알려지지 않은 MDP(마르코프 결정 과정)에 대한 대략적인 최적 정책을 찾는 것이다.[18]

강화 학습은 정책 반복을 수행하는 데 필요한 전이 확률을 명시적으로 지정하지 않고도 마르코프 결정 과정을 해결할 수 있다. 이 설정에서 전이 확률과 보상은 경험, 즉 에이전트가 주어진 단계 수 동안 MDP와 상호 작용함으로써 학습되어야 한다. 이론적 및 실용적 수준 모두에서 샘플 효율성을 최대화하는 데 노력을 기울이고 있으며, 즉, 성능이 최적의 성능에 \varepsilon- 근접한 정책을 학습하는 데 필요한 샘플 수를 최소화하는 데 노력을 기울인다(프로세스의 확률적 특성으로 인해, 유한한 수의 샘플로 최적 정책을 학습하는 것은 일반적으로 불가능하다).

상태 s에서 행동 a를 취한 다음, 최적 정책(또는 현재 정책)에 따라 행동했을 때 얻게 될 총 기대 보상을 나타내는 '''행동 가치 함수'''(action-value function) Q(s,a)를 정의하는 것이 유용하다.

:\ Q(s,a) = \sum_{s'} P_a(s,s') (R_a(s,s') + \gamma V(s')).\

여기서 P_a(s,s')는 상태 s에서 행동 a를 했을 때 상태 s'으로 전이될 확률, R_a(s,s')는 이때 받는 즉각적인 보상, \gamma는 할인 인자, V(s')는 상태 s'의 가치 함수이다.

Q 함수 역시 처음에는 알 수 없지만, 에이전트는 환경과의 상호작용을 통해 얻는 경험 (s, a, s', r) (상태 s에서 행동 a를 하여 상태 s'이 되고 보상 r을 받음)을 기반으로 Q(s,a) 값을 점진적으로 학습하고 업데이트한다. 이러한 방식을 Q-러닝이라고 한다. Q-러닝은 다음과 같은 업데이트 규칙을 따른다.



Q(s_t, a_t) \leftarrow Q(s_t, a_t) + \alpha [r_{t+1} + \gamma \max_{a'} Q(s_{t+1}, a') - Q(s_t, a_t)]



여기서 \alpha는 학습률(learning rate)이다. 최적의 행동 가치 함수 Q^*(s,a) = \max_\pi Q^\pi(s,a)를 학습하면, 각 상태 s에서 Q^*(s,a)를 최대화하는 행동 a를 선택함으로써 최적 정책 \pi^*를 얻을 수 있다 (V^*(s) = \max_{a} Q^*(s,a)). 실제 학습 과정에서는 모든 상태-행동 쌍을 충분히 탐험(exploration)하기 위해 확률적인 요소를 가미하여 행동을 선택하기도 한다 (예: 엡실론-탐욕 정책).

기계 학습 이론에서 MDP 프로세스의 또 다른 응용 분야는 학습 자동 장치(Learning Automata)이다. 환경이 확률적일 때, 이는 강화 학습의 한 형태로 볼 수 있다. 나렌드라와 타타차르(1974)는 학습 자동 장치를 유한 상태 자동 장치로 설명하는 초기 연구를 수행했다.[19] 강화 학습처럼 학습 자동 장치 알고리즘도 전이 확률이나 보상을 알지 못해도 문제를 해결할 수 있다. 하지만 Q-러닝과 달리 학습 자동 장치는 Q-값을 저장하는 대신 행동 선택 확률을 직접 업데이트하여 학습한다. 학습 자동 장치는 수렴성이 수학적으로 증명된 학습 방법이다.[20]

학습 자동 장치 이론에서 '''확률적 자동 장치'''는 다음 요소로 구성된다.


  • 가능한 입력 집합 ''x''
  • 가능한 내부 상태 집합 Φ = { Φ1, ..., Φ''s'' }
  • 가능한 출력 또는 행동 집합 α = { α1, ..., α''r'' } (단, ''r'' ≤ ''s'')
  • 초기 상태 확률 벡터 ''p''(0) = ≪ ''p''1(0), ..., ''ps''(0) ≫
  • 각 시간 단계 ''t''마다 현재 입력과 상태를 이용해 상태 확률 벡터 ''p''(''t'')를 ''p''(''t'' + 1)로 업데이트하는 계산 가능 함수 ''A''
  • 각 시간 단계에서 상태 Φ로부터 출력 α를 생성하는 함수 ''G'': Φ → α


이 자동 장치의 상태는 이산 시간 마르코프 과정의 상태에 해당한다. 매 시간 단계 ''t'' = 0, 1, 2, ... 마다 자동 장치는 환경으로부터 입력을 받고, 함수 ''A''를 통해 상태 확률 벡터를 업데이트하며, 업데이트된 확률에 따라 다음 상태를 무작위로 선택하고 해당 행동을 출력한다. 환경은 이 행동을 입력받아 다음 입력을 자동 장치에게 전달한다.[20]

강화 학습은 상태 전이 확률 T(s,a,s')과 보상 함수 R(s,a,s')가 알려지지 않은 환경과 상호작용하며 최적의 행동 정책을 학습하는 강력한 프레임워크를 제공한다. 상태 공간이나 행동 공간이 매우 큰 경우에는 신경망과 같은 함수 근사 기법을 결합하여 Q 함수나 정책을 근사하는 방법을 사용하기도 한다.

7. 기타 응용

마르코프 결정 과정(MDP)은 다양한 분야에서 응용될 수 있다. 대표적인 예로 기계 학습 이론에서 활용되는 학습 오토마톤(eng)이 있으며, 이는 환경이 확률적인 특성을 가질 때 사용되는 강화 학습의 한 형태이다. 또한 MDP는 범주론적 관점에서도 해석될 수 있다. 이러한 응용에 대한 자세한 내용은 이어지는 하위 섹션에서 다룬다.

7. 1. 학습 오토마타

기계 학습 이론에서 마르코프 결정 과정(MDP)의 또 다른 응용 분야는 학습 오토마타(Learning Automata)라고 불린다. 이는 환경이 확률적인 거동을 보일 때의 강화 학습 중 하나이기도 하다. 학습 오토마타에 관한 최초의 상세한 논문은 1974년 나렌드라와 타타차르(Thathachar)에 의해 정리되었는데, 여기서는 유한 상태 자동 장치로 명시적으로 설명되었다.[19]

강화 학습과 마찬가지로, 학습 오토마타 알고리즘은 환경의 확률이나 보상이 알려지지 않은 경우에도 문제를 해결할 수 있다는 장점이 있다. Q-러닝과의 주요 차이점은 학습 오토마타가 Q-값과 같은 가치 함수의 메모리를 유지하지 않고, 대신 행동 확률을 직접 업데이트하여 학습 결과를 찾는다는 것이다. 학습 오토마타는 수렴성이 엄격하게 증명된 학습 방식이다.[20]

학습 오토마타 이론에서 '''확률적 오토마타'''(stochastic automaton)는 다음과 같은 요소로 구성된다.

  • 가능한 입력의 집합 ''x''
  • 가능한 내부 상태의 집합 Φ = { Φ1, ..., Φ''s'' }
  • 가능한 출력 또는 행동의 집합 α = { α1, ..., α''r'' } (여기서 ''r'' ≤ ''s'')
  • 초기 상태 확률 벡터 ''p''(0) = ≪ ''p''1(0), ..., ''ps''(0) ≫
  • 각 시간 단계 ''t''마다 현재 입력과 현재 상태를 기반으로 상태 확률 벡터 ''p''(''t'')를 ''p''(''t'' + 1)로 업데이트하는 계산 가능 함수 ''A''
  • 각 시간 단계에서 상태에 따라 출력을 생성하는 함수 ''G'': Φ → α


이러한 오토마타의 상태는 "이산 상태 이산 매개변수 마르코프 과정"의 상태에 해당한다. 각 시간 단계 ''t'' = 0, 1, 2, 3, ... 에서 오토마타는 환경으로부터 입력을 읽고, 함수 ''A''를 사용하여 상태 확률 벡터 P(''t'')를 P(''t'' + 1)로 업데이트한다. 그런 다음, 업데이트된 확률 P(''t'' + 1)에 따라 다음 상태를 무작위로 선택하고 함수 ''G''를 통해 해당 행동을 출력한다. 환경은 이 행동을 읽고 다음 입력을 오토마타에게 전달하는 방식으로 상호작용한다.[20]

7. 2. 범주론적 해석

마르코프 결정 과정 (S,A,P)는 보상이라는 측면 외에도 범주론의 관점에서 이해될 수 있다. 행동 집합 ''A''를 생성 집합으로 하는 자유 모노이드를 \mathcal{A}라고 하자. 이때 '''Dist'''는 [https://ncatlab.org/nlab/show/Giry+monad 기리 모나드]의 클레이슬리 범주를 나타낸다. 그러면 함자 \mathcal{A}\to\mathbf{Dist}는 상태 집합 ''S''와 확률 함수 ''P''를 모두 포함하게 된다.

이러한 방식으로 마르코프 결정 과정은 하나의 객체만을 가진 범주인 모노이드에서 임의의 범주로 일반화될 수 있다. 그 결과로 얻어지는 (\mathcal{C}, F:\mathcal{C}\to \mathbf{Dist})를 "문맥 의존적 마르코프 결정 과정"이라고 부를 수 있다. 이는 범주 \mathcal{C} 안에서 한 객체에서 다른 객체로 이동하면 사용 가능한 행동의 집합과 가능한 상태의 집합이 변경되기 때문이다.

참조

[1] 서적 Markov decision processes: discrete stochastic dynamic programming Wiley 1994
[2] 서적 Papers presented at the February 26-28, 1957, western joint computer conference: Techniques for reliability on - IRE-AIEE-ACM '57 (Western) Association for Computing Machinery 1957-02-26
[3] 간행물 Dynamic programming and stochastic control processes https://linkinghub.e[...] 1958-09-01
[4] 서적 Reinforcement learning: an introduction The MIT Press 2018
[5] 간행물 A Sparse Sampling Algorithm for Near-Optimal Planning in Large Markov Decision Processes 2002
[6] 서적 Reinforcement Learning: Theory and Python Implementation China Machine Press
[7] 간행물 Stochastic Games
[8] 서적 Handbook of Markov decision processes: methods and applications Springer
[9] 문서 Comments on the Origin and Application of Markov Decision Processes https://pubsonline.i[...] Howard 2002
[10] 간행물 Modified Policy Iteration Algorithms for Discounted Markov Decision Problems
[11] 간행물 A set of successive approximation methods for discounted Markovian decision problems
[12] 간행물 The Complexity of Markov Decision Processes https://pubsonline.i[...] 2023-11-02
[13] 간행물 A Sparse Sampling Algorithm for Near-Optimal Planning in Large Markov Decision Processes 2002-11
[14] 서적 Constrained Markov decision processes CRC Press
[15] 학술회의 Natural policy gradient primal-dual method for constrained Markov decision processes
[16] 학술회의 Risk-aware path planning using hierarchical constrained Markov Decision Processes https://www.research[...] 2014-08-18
[17] 서적 Continuous-Time Markov Decision Processes https://link.springe[...] 2009
[18] 간행물 Multi-agent reinforcement learning: a critical survey http://jmvidal.cse.s[...] 2018-12-12
[19] 간행물 Learning Automata – A Survey
[20] 서적 Learning automata: An introduction https://archive.org/[...] Prentice Hall
[21] 서적 DYNAMIC PROGRAMMING AND MARKOV PROCESSES https://trid.trb.org[...] Massachusetts Institute of Technology Press 1960
[22] 간행물 A Markovian Decision Process http://www.jstor.org[...] Indiana University Mathematics Department 1957
[23] 간행물 Stochastic Games http://www.pnas.org/[...] 1953-10-01
[24] 서적 Finite State and Action MDPS https://link.springe[...] Springer, Boston, MA 2003



본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.

문의하기 : help@durumis.com