*본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성하였습니다.
|내용 정리|
<Policy Iteration 파이썬 코드 구현 3>
그리드월드 환경 내 정책 반복 알고리즘 예제 2
아래 경로는 중앙의 장애물을 우회하면서 목표 지점들을 효율적으로 방문하는 방법을 보여주고 있다. 지금껏 배운 강화학습의 정책 반복(Policy Iteration) 알고리즘을 적용하여 최적 경로를 찾아보자.


- 환경 구성:
- 4x4 그리드 환경
- 에이전트 시작 위치(A): (0, 0) (좌측 상단)
- 직장(W) 위치: (0, 3) (우측 상단)
- 집(H) 위치: (3, 3) (우측 하단)
- 장애물(Park) 영역: 중앙 2x2 영역 (1,1), (1,2), (2,1), (2,2)
- 행동 공간:
- 0: 위로 이동
- 1: 오른쪽으로 이동
- 2: 아래로 이동
- 3: 왼쪽으로 이동
- 전이 모델:
- 70% 확률로 선택한 행동 실행
- 30% 확률로 다른 행동 중 무작위 선택
- 장애물 영역이나 그리드 경계를 넘어갈 수 없음
- 보상 체계:
- 기본 스텝 보상: -0.5
- 장애물 영역 진입 시: -1.0
- 직장(W)에 도달 시: +5
- 집(H)에 도달 시: +10
- 종료 조건:
- 직장(W)이나 집(H)에 도달하면 에피소드
코드 흐름 및 구현 특징





<주요 특징>
환경 구조 설계
환경은 시작점(A), 직장(W), 집(H), 그리고 장애물 영역으로 구성되며, NumPy 배열을 사용해 4x4 그리드 상태를 표현한다. 각 위치는 특정 값(에이전트=1, 직장=2, 집=3, 장애물=-1)으로 인코딩되어 있어 상태 식별이 용이하다.
확률적 전이 모델
이 환경의 핵심 특징은 확률적 전이 모델이다. 에이전트가 취한 행동이 70%의 확률로 의도대로 실행되고, 30%의 확률로 다른 무작위 행동으로 대체된다. 이 불확실성은 transition_probability 메서드에서 구현되어 있으며, 현실 세계의 불확실성을 모델링한다.
보상 체계
환경은 정교한 보상 체계를 가지고 있다. 기본적으로 매 스텝마다 -0.5의 작은 페널티를 부여하여 에이전트가 효율적으로 목표에 도달하도록 유도한다. 장애물 영역에 진입하면 -1.0의 더 큰 페널티를 부여하고, 직장에 도달하면 +5, 집에 도달하면 +10의 양의 보상을 제공한다.
종료 조건 및 특별 상태 처리
에이전트가 직장이나 집에 도달하면 에피소드가 종료된다. 또한, 직장이나 집에 도달한 후에는 해당 위치에 머무르게 된다. 이러한 특별 상태 처리는 is_correct_deterministic_transition 메서드와 step 메서드에서 구현되어 있다.
MDP(Markov Decision Process) 구성 요소
이 코드는 완전한 MDP를 구현한다. 상태 공간(state_space), 행동 공간(action_space), 전이 함수(transition_probability), 보상 함수(reward), 감가율(코드에 명시되지 않았지만 정책 반복에서 사용됨)의 모든 구성 요소를 갖추고 있어 다양한 강화학습 알고리즘을 적용할 수 있다.
이 환경은 정책 반복(Policy Iteration) 알고리즘을 통해 최적 정책을 학습하는 데 적합하며, 에이전트가 불확실한 환경에서 장애물을 피하고 효율적으로 목표를 달성하는 방법을 학습하는 과정을 시뮬레이션한다.
|인증|




-------
패스트캠퍼스 링크