시작하기무료로 시작하기

Q-값 계산하기

목표는 아래 정책을 따를 때, 커스텀 MyGridWorld 환경의 각 상태-행동 쌍에 대한 행동가치(Q-값)를 계산하는 것이에요. RL에서 Q-값은 특정 상태에서 특정 행동을 수행하고 이후 정책을 따른다고 가정했을 때의 기대 효용을 나타내므로 매우 중요해요.

exercise_policy.png

이 환경은 env로 불러와져 있으며, compute_state_value() 함수와 함께 필요한 변수들(terminal_state, num_states, num_actions, policy, gamma)도 제공되어 있어요.

이 연습은 강의의 일부입니다

Python으로 배우는 Gymnasium 기반 Reinforcement Learning

강의 보기

연습 안내

  • 주어진 stateaction에 대한 행동가치를 계산하도록 compute_q_value() 함수를 완성하세요.
  • 각 키가 상태-행동 쌍을, 값이 해당 쌍의 Q-값을 나타내는 딕셔너리 Q를 생성하세요.

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

# Complete the function to compute the action-value for a state-action pair
def compute_q_value(state, action):
    if state == terminal_state:
        return None   
    probability, next_state, reward, done = ____
    return ____

# Compute Q-values for each state-action pair
Q = {(____, ____): _____ for ____ in range(____) for ____ in range(____)}

print(Q)
코드 편집 및 실행