안녕하세요!
요즘 강화학습에 대해서 개인 프로젝트와 팀 토이 프로젝트를 진행중 입니다.
바이브 코딩이나 기타 AI한테 물어보면 요즘 유명한 PPO 알고리즘에 대해서만 다룹니다. 아무리 좋다고 해도 저의 생각은 AI는 각 프로젝트 목표에 맞는 방법을 사용해야 된다고 생각합니다. 그래서 저희 프로젝트에 사용할 알고리즘을 먼저 찾아보고 공부 후 적용하면서 연습을 진행할 것 입니다.
1. DQN (Deep Q-Network): 강화학습과 딥러닝의 만남
전통적인 Q-러닝(Q-Learning)은 상태(State)와 행동(Action)에 대한 보상을 'Q-테이블'이라는 표에 기록하여 학습합니다. 하지만 게임처럼 상태의 수가 무한대에 가까운 복잡한 환경에서는 표를 만드는 것 자체가 불가능합니다. DQN은 이 Q-테이블을 심층 신경망(Deep Neural Network)으로 대체한 획기적인 알고리즘입니다.
핵심 메커니즘
- 경험 재생 (Experience Replay):
- 에이전트가 탐험하며 얻은 데이터(상태, 행동, 보상, 다음 상태)를 '재생 버퍼(Replay Buffer)'에 저장하고, 무작위로 추출하여 학습합니다. 이는 데이터 간의 상관관계를 끊어 신경망이 한쪽으로 치우쳐 학습되는 현상(Overfitting)을 방지합니다.
- 타겟 네트워크 (Target Network):
- 학습이 진행되는 동안 목표값(Target)이 계속 변하면 학습이 불안정해집니다. DQN은 Q값을 예측하는 본체 네트워크와 목표값을 계산하는 타겟 네트워크를 분리하고, 타겟 네트워크의 가중치는 주기적으로만 업데이트하여 학습의 안정성을 크게 높였습니다.
수학적 최적화 목표
DQN의 손실 함수(Loss Function)는 다음과 같이 정의됩니다.
여기서 $\theta$는 메인 네트워크의 가중치, $\theta^-$는 타겟 네트워크의 가중치, $D$는 경험 재생 버퍼, $\gamma$는 미래 보상에 대한 할인율(Discount factor)입니다.
2. DDPG (Deep Deterministic Policy Gradient): 연속적인 제어의 완성
DQN은 좌, 우, 점프 등 이산적인(Discrete) 행동 공간에서는 강력하지만, 핸들의 각도나 가속 페달의 정도처럼 연속적인(Continuous) 행동을 제어해야 하는 환경에서는 사용하기 어렵습니다. DDPG는 이 한계를 극복하기 위해 결정론적 정책 그래디언트(DPG)를 딥러닝과 결합했습니다.
핵심 메커니즘
- 액터-크리틱(Actor-Critic) 구조:
- Actor (배우): 현재 상태에서 어떤 행동을 취할지 구체적인 실수값(예: 핸들 각도 15.3도)을 직접 출력합니다.
- Critic (비평가): Actor가 취한 행동이 얼마나 좋은지 Q값을 통해 평가합니다.
- 소프트 타겟 업데이트 (Soft Target Update):
- DQN처럼 타겟 네트워크를 주기적으로 갱신하는 대신, 매 스텝마다 타겟 네트워크의 가중치를 미세하게(예: 0.1%씩) 업데이트하여 훨씬 안정적인 학습을 유도합니다.
제가 진행하고 있는 귀멸의 칼날 디펜스 게임에서 유닛의 이동 속도나 타워의 포신 각도를 미세하게 조절해야 할 때 DDPG가 핵심적인 역할을 한다고 합니다. 한 번 구현해 볼 가치가 있습니다.
3. PPO (Proximal Policy Optimization): 현재 AI 산업의 표준
PPO는 OpenAI에서 발표한 이후 현재 게임 AI, 로봇 제어, 심지어 ChatGPT와 같은 거대 언어 모델(LLM)의 강화학습(RLHF)에도 사용되는 가장 대중적이고 강력한 알고리즘입니다. 기존의 정책 경사법(Policy Gradient)이 한 번에 정책을 너무 크게 업데이트하여 학습이 붕괴되는 현상을 막기 위해 개발되었습니다.
핵심 메커니즘
- 클리핑 (Clipping):
- 새로운 정책이 이전 정책에서 너무 멀어지지 않도록 업데이트 범위를 제한(Clip)합니다. 안전 구역(Trust Region) 내에서만 학습이 이루어지게 하여, 급격한 성능 저하 없이 꾸준히 우상향하는 학습 곡선을 만듭니다.
수학적 최적화 목표
PPO의 핵심인 클리핑된 목적 함수는 다음과 같습니다.
여기서 $r_t(\theta)$는 이전 정책 대비 새로운 정책의 확률 비율이며, $\epsilon$은 보통 0.2와 같은 작은 하이퍼파라미터입니다. $\hat{A}_t$는 해당 행동이 평균보다 얼마나 더 좋았는지를 나타내는 어드밴티지(Advantage)입니다.
4. 유전자 알고리즘 (Genetic Algorithm): 진화 생물학의 모방
유전자 알고리즘은 강화학습의 범주에 속하진 않지만, 복잡한 최적화 문제를 푸는 강력한 메타휴리스틱(Meta-heuristic) 방법입니다. 다윈의 자연선택설과 유전학 원리를 컴퓨팅에 적용했습니다. 게임에서는 방대한 타워 배치 조합 중 최적의 진형을 찾거나, 적대적 NPC의 스탯을 자동으로 조율할 때 자주 쓰입니다.
핵심 메커니즘
- 초기 세대 생성 (Population): 무작위 속성을 가진 다양한 개체(예: 타워 배치 100가지)를 만듭니다.
- 적합도 평가 (Fitness Evaluation): 각 개체가 목표를 얼마나 잘 달성했는지 점수를 매깁니다. (예: 방어 성공률, 적에게 입힌 피해량).
- 선택 (Selection): 적합도가 높은 우수한 개체들을 부모로 선택합니다.
- 교차 (Crossover): 선택된 부모들의 유전자(배치 정보 등)를 섞어 새로운 자식 세대를 만듭니다.
- 돌연변이 (Mutation): 낮은 확률로 유전자를 무작위 변이시켜, 지역 최적해(Local Minima)에 빠지지 않고 다양한 가능성을 탐색하게 합니다.
요약 비교 테이블
| 알고리즘 | 주 행동 공간 | 방식 | 장점 | 주요 적용 분야 |
| DQN | 이산적 (Discrete) | Value 기반 | 직관적이고 구현이 비교적 쉬움 | 고전 아케이드, 단순 턴제 게임 |
| DDPG | 연속적 (Continuous) | Actor-Critic | 정밀한 수치 제어 가능 | 레이싱 게임, 물리 시뮬레이션 |
| PPO | 둘 다 가능 | Policy 기반 | 학습 안정성 최상, 튜닝이 쉬움 | 복잡한 3D 게임, 다중 에이전트, LLM |
| GA | 문제에 따라 다름 | 진화 최적화 | 병렬 처리가 쉽고 미분 불가능한 환경에 강함 |
5. A3C / A2C (Asynchronous/Advantage Actor-Critic): 병렬 처리의 마법사
경영 게임은 시뮬레이션 자체가 무거워 데이터를 모으는 데 시간이 오래 걸리는 경우가 많습니다. A3C는 '비동기(Asynchronous)'라는 이름처럼, 여러 명의 에이전트(분신)를 서로 다른 게임 환경에 동시에 투입하여 각자의 경험을 중앙의 글로벌 네트워크로 모으는 방식입니다. (A2C는 이를 동기적으로 맞춘 버전입니다.)
경영 게임에서의 활용 포인트
- 다양한 경제 위기 학습:
- 분신들이 각기 다른 시장 상황(예: 호황기, 불황기, 원자재 폭등 등)을 동시에 경험하게 하여, 어떤 상황에서도 대처할 수 있는 탄탄한 경영 전략을 빠르게 학습합니다.
- 학습 속도 극대화:
- 여러 스레드에서 동시에 학습하므로, 시간의 흐름이 중요한 타이쿤 게임의 물리적 시뮬레이션 시간을 획기적으로 단축할 수 있습니다.
수학적 핵심: 어드밴티지 (Advantage)
Actor-Critic 구조에서 평가는 '어드밴티지' 함수를 통해 이루어집니다. 특정 상태에서 한 행동이 '평균적인 기대치보다 얼마나 더 좋았는가'를 측정합니다.
여기서 $Q(s_t, a_t)$는 특정 상태($s$)에서 특정 행동($a$)을 했을 때의 총 보상 기대치이고, $V(s_t)$는 그 상태가 가진 평균적인 가치입니다.
6. SAC (Soft Actor-Critic): 창의적인 경영 전략의 발견
타이쿤 게임에서 제품의 가격을 10원 단위로 조절하거나, 공장의 생산 라인 가동률을 퍼센트(%)로 미세 조정해야 할 때가 있습니다. SAC는 이러한 연속적인 제어에 매우 탁월하며, '엔트로피(Entropy, 무작위성)'를 극대화하는 독특한 철학을 가집니다.
경영 게임에서의 활용 포인트
- 다양한 비즈니스 모델 발굴: 단순히 수익을 내는 '단 하나의 정답'만 찾는 것이 아니라, 박리다매 전략, 고가 프리미엄 전략 등 수익을 낼 수 있는 다양한 대안 전략을 모두 탐색하고 학습합니다.
- 데이터 효율성: 환경과 상호작용하며 얻은 데이터를 버리지 않고 재사용(Off-policy)할 수 있어, 시뮬레이션 비용이 비싼 경영 게임에서 매우 효율적입니다.
수학적 최적화 목표 (엔트로피 최대화)
SAC는 일반적인 보상뿐만 아니라, 에이전트의 행동이 얼마나 무작위적인지(엔트로피)를 보상에 더해줍니다.
$\alpha$는 엔트로피 $\mathcal{H}$의 중요도를 결정하는 온도 매개변수입니다. 이를 통해 AI는 뻔한 길만 고집하지 않고 끊임없이 새로운 투자 방식을 시도하게 됩니다.
7. MARL (Multi-Agent Reinforcement Learning): 경쟁과 협력의 생태계 구축
현실의 경영은 독불장군처럼 혼자 하는 것이 아닙니다. MARL은 여러 에이전트가 동시에 같은 환경에 존재하며 상호작용하는 환경을 위한 강화학습 분야입니다. (대표 알고리즘: MAPPO, QMIX 등)
경영 게임에서의 활용 포인트
- 시장 경쟁자 시뮬레이션: 에이전트 A는 내 회사, 에이전트 B와 C는 경쟁사로 설정하여 치열한 가격 치킨게임이나 마케팅 경쟁을 시뮬레이션할 수 있습니다.
- 부서별 AI 관리자: 도시 건설 게임에서 한 에이전트는 '교통망'을 설계하고, 다른 에이전트는 '주거 구역'을 배치하도록 역할을 분담시켜, 서로 타협하며 거대한 도시를 최적화하는 협력 AI를 만들 수 있습니다.
8. Model-Based RL (모델 기반 강화학습): 머릿속으로 그리는 장기 사업 계획
경영은 "지금 공장을 지으면 5년 뒤에 흑자 전환을 할 수 있을까?"를 예측하는 일입니다. 기존의 DQN이나 PPO(Model-Free)는 일단 저질러보고 배우는 방식이지만, MuZero나 Dreamer 같은 모델 기반 RL은 AI가 게임의 법칙(경제 규칙) 자체를 신경망 안에 학습합니다.
경영 게임에서의 활용 포인트
- 미래 시뮬레이션 (Planning): AI가 실제로 게임 시간을 흘려보내지 않고도, "이 기술에 투자하면 내년도 재무제표가 어떻게 변할까?"를 머릿속으로 수천 번 시뮬레이션하여 가장 안전하고 수익성이 높은 장기 테크트리를 찾아냅니다. 경영 전략 수립에 가장 이상적인 형태입니다.
'2. 자료구조와 알고리즘 > 2-2 강화학습 알고리즘' 카테고리의 다른 글
| [강화 학습] ACER(Actor-Critic with Experience Replay) 개념 정리 (0) | 2026.03.17 |
|---|---|
| [강화 학습] "SAC" 알고리즘 개인 공부 - 코드 비교 분석 (0) | 2026.03.09 |
