카테고리 없음

패스트캠퍼스 환급챌린지 7일차 : 스크래치부터 시작하는 강화학습의 모든 것 강의 후기

dev-self 2025. 3. 11. 20:57

 

*본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성하였습니다.

 

|내용 정리|

<마코프 의사결정 과정(MDP)에서의 보상 함수>

6일 날 학습한 벨만 방정식과는 달리 MDP의 보상함수는 행동(action)을 명시적으로 고려하며, 정책 π(a_t|s_t)가 중요한 역할을 하게 된다. 이는 에이전트가 각 상태에서 어떤 행동을 선택할지에 대한 확률 분포로, 정책 기반 강화학습의 핵심이 된다.

 

 

  • 정책 π\pi: 현재 상태에서 어떤 행동을 선택할 확률
  • 전이 확률 pp: 행동 이후 다음 상태로 전이될 확률
  • 보상 RR: 상태와 행동, 전이된 상태에 따른 보상

 

정책이 이미 고정되어 있거나, 각 상태에서 단 하나의 행동만 가능하다고 가정했던 벨만 방정식에서 에이전트가 각 상태(state)에서 취할 수 있는 행동(action)들이 명확하게 정의된다.

 

 

|후기 및 확장|

 

수식에 대해서 코드로 살펴보자. 

 

이 코드는 주어진 정책(policy)에 따라 각 상태(state)의 가치(value)를 계산하고 있다. 구체적으로:

  1. 모든 상태 s에 대해 반복.
  2. 각 상태에서 가능한 모든 행동 a에 대해:
    • 해당 행동을 취할 확률(정책에 따른)을 산출.
    • 그 행동의 가치를 계산:
      • 모든 가능한 다음 상태 s_next로의 전이 확률과 보상, 그리고 다음 상태의 가치를 고려.
  3. 가중 평균을 통해 상태 s의 새로운 가치를 계산.

 

--

로봇 강화학습을 예로 들어 만약 로봇 청소기가 최적의 청소 경로를 찾기 위해 각 위치의 가치를 계산하고 있다면

  1. 로봇이 있을 수 있는 모든 위치(방의 각 구역)에 대해 반복한다.
  2. 각 위치에서 로봇이 할 수 있는 모든 행동(전진, 후진, 좌회전, 우회전, 청소하기)에 대해:
    • 현재 프로그램된 청소 패턴에 따라 각 행동을 선택할 확률을 확인한다.
    • 그 행동의 가치를 계산한다:
      • 로봇이 해당 행동을 취했을 때 도달할 수 있는 모든 다음 위치와, 그곳에 도달할 확률, 그리고 청소 성공 시 얻는 보상(예: 먼지 제거량)과 이미 계산된 다음 위치의 가치를 종합적으로 고려한다.
  3. 각 행동의 확률과 가치를 곱한 뒤 합산하여 현재 위치의 새로운 가치를 계산한다.

--

좀 더 자세하게 로봇이 거실 중앙에 있다고 가정해 보자:

  1. 거실 중앙의 초기 가치는 0이다.
  2. 로봇이 '전진' 행동을 선택할 확률이 0.3이라면:
    • 전진 시 소파 앞으로 갈 확률이 0.9, 장애물에 막혀 제자리에 있을 확률이 0.1이다.
    • 소파 앞으로 가면 먼지를 5만큼 제거하고, 소파 앞 위치의 현재 가치는 10이다.
    • 따라서 전진 행동의 가치는: 0.9 × (5 + 0.9 × 10) + 0.1 × (0 + 0.9 × 0) = 0.9 × 14 = 12.6이다.
  3. 유사하게 다른 모든 행동(후진, 좌회전, 우회전, 청소하기)의 가치를 계산한 후, 각 행동의 확률을 곱해 합산한다.
    • 전진: 0.3 × 12.6 = 3.78
    • 후진: 0.2 × 8.1 = 1.62
    • 좌회전: 0.15 × 7.2 = 1.08
    • 우회전: 0.15 × 9.0 = 1.35
    • 청소하기: 0.2 × 10.8 = 2.16
    • 합계: 3.78 + 1.62 + 1.08 + 1.35 + 2.16 = 9.99
  4. 따라서 거실 중앙의 새로운 가치는 9.99가 된다.

이런 계산을 방의 모든 위치에 대해 반복적으로 수행하면, 로봇은 각 위치의 가치를 점점 더 정확하게 파악하게 되고, 이를 기반으로 더 효율적인 청소 경로를 선택할 수 있게 된다.

 

----

 

|인증|

 


-------

패스트캠퍼스 링크

https://bit.ly/4hTSJNB