Q-Table 업데이트: 미래 가치 반영

40 P
QUESTION 04 #356
행동의 가치를 저장하는 Q-Table의 값을 수정하는 코드입니다. 현재 보상에 미래의 기대치를 더하는 로직을 완성하세요.
main.py
q_table = {"현재상태": 0.5}
learning_rate = 0.1
reward = 1.0
max_future_q = 0.8 # 다음 상태에서 얻을 수 있는 최대 가치

# 새로운 Q값 = 현재 Q + 학습률 * (보상 + 미래가치 - 현재 Q)
new_q = q_table["현재상태"] +  * ( + max_future_q - q_table["현재상태"])

q_table["현재상태"] = new_q
print(f"업데이트된 Q-Value: {q_table['현재상태']}")
실행 결과 예시
learning_rate, reward
INTERACTIVE SHELL Shift + Enter 로 즉시 실행

🧠 Q-러닝(Q-Learning)의 핵심 공식

Q-러닝은 특정 상태에서 특정 행동을 했을 때의 "품질(Quality)"을 표(Table)에 기록하는 방식입니다.

$$Q(s, a) \leftarrow Q(s, a) + \alpha [R + \gamma \max Q(s', a') - Q(s, a)]$$

인공지능은 당장의 보상($R$)만 보는 것이 아니라, 그 길로 갔을 때 나중에 얻을 수 있는 이득($\max Q(s', a')$)까지 미리 계산하여 현재의 행동 가치를 평가합니다. 이것이 인공지능이 "멀리 내다보는 안목"을 갖게 되는 원리입니다.