전술을 가르치지 않아도 전투를 배운다: 마린 컨트롤 실험에서 본 강화학습의 구조
영상에서 던지는 질문
마린 컨트롤을 AI한테 45분 학습시켰더니 프로게이머급이 되었습니다라는 영상은 사람이 직접 백무빙이나 산개를 규칙으로 입력하지 않아도, 단순한 보상 설계와 반복 시뮬레이션만으로 전투 행동이 개선될 수 있음을 보여준다.
이 글은 영상의 설명·자막에서 확인되는 실험 내용을 바탕으로, 무엇을 AI에 가르쳤고 무엇은 가르치지 않았는지, 그리고 이 방식이 다른 AI 학습 문제에 주는 시사점을 정리한다. 영상의 성능 수치는 제작자가 제시한 실험 결과이며, 독립 재현이나 프로게이머와의 공정한 대결을 의미하지 않는다.
1. 핵심 구조: 게임을 관찰하고 행동하고 보상받는다
실험은 일반적인 스타크래프트 클라이언트에 마우스·키보드 입력을 흉내 내는 방식이 아니다. 영상 설명에 따르면 블리자드의 AI 연구용 게임 파일과 스타크래프트 브루드워 엔진의 오픈소스 재구현인 OpenBW를 연결해 외부에서 게임 상태와 행동을 제어할 수 있는 연구 환경을 구성했다.
게임 상태 관찰
→ 신경망이 행동 선택
→ 게임 엔진에서 행동 실행
→ 전투 결과로 보상 계산
→ 정책 업데이트
→ 수십만 판 반복
이 구조의 본질은 화려한 그래픽이나 거대한 모델이 아니라, 상태·행동·보상·시뮬레이션 루프를 짧고 빠르게 닫은 것이다.
2. 입력과 출력: 작은 상태 공간과 행동 공간
영상에서 설명한 입력은 39개 상태값이다.
아군 유닛 위치
적군 유닛 위치
유닛 체력(HP)
공격 재장전까지 남은 시간
기타 전투 상태값
출력은 12개 행동 중 하나를 선택하는 구조다. 영상만으로 각 12개 행동의 정확한 목록이나 네트워크의 모든 계층 구성은 확인할 수 없으므로, 이를 임의로 이동·공격·정지 등의 세부 명령으로 확정해서는 안 된다.
신경망 규모는 약 23,000개 파라미터로 설명되며 GPU 없이 MacBook CPU에서 학습했다. 이 선택은 범용 게임 전체를 이해하려는 것이 아니라, 제한된 전투 시나리오에서 빠르게 정책을 반복 평가하기 위한 설계로 해석할 수 있다.
3. 사람이 가르친 것과 가르치지 않은 것
사람이 준 것
적 체력을 깎으면 + 보상
내 유닛이 죽으면 - 보상
사람이 직접 주지 않은 것
백무빙
맞은 유닛만 뒤로 빼기
마린 산개
럴커 공격 유도
전방·후방 역할 분담
저글링을 끌고 다니는 움직임
중요한 구분은 전술을 코드로 작성하지 않았다는 것과 학습 환경을 설계하지 않았다는 것은 다르다는 점이다. 사람은 이미 다음을 설계했다.
어떤 게임 엔진을 사용할지
어떤 상태를 관찰할지
어떤 행동을 허용할지
무엇을 보상·벌점으로 볼지
언제 한 판을 끝낼지
즉 AI가 전술을 직접 받지 않았더라도, 학습 가능한 세계의 경계는 사람이 정의했다.
4. 강화학습에서 실제로 일어난 일
영상은 PPO(Proximal Policy Optimization)와 23,000개 파라미터의 신경망을 사용했다고 설명한다. 한 판이 끝날 때마다 보상이 높았던 행동을 다음에 선택할 확률을 높이고, 결과가 낮았던 행동의 확률을 낮추는 방식으로 반복 학습했다.
이를 개념적으로 쓰면 다음과 같다.
관측 s_t
→ 정책 π(a_t | s_t)가 행동 a_t 선택
→ 환경이 다음 상태 s_(t+1)과 보상 r_t 반환
→ 누적 보상이 높은 정책을 보존하는 방향으로 업데이트
여기서 보상은 잘 싸워라라는 자연어 지시가 아니다. 적 체력 감소와 아군 사망이라는 결과 신호를 통해 어떤 행동 순서가 장기적으로 유리했는지 정책이 탐색하게 만든다.
5. 시나리오별로 본 학습
마린 8기 vs 질럿 3기
영상 설명과 자막에 따르면 제작자 코드의 승률은 10%, 학습한 AI는 67%였다. 약 15만 판 학습 시점에 AI는 뒤로 이동하면서 공격하고, 피해를 받는 마린을 개별적으로 빼는 행동을 보였다.
관찰된 행동:
전체 후퇴가 아님
피해 유닛만 분리
공격 가능한 유닛은 계속 공격
이 결과는 보상 함수가 단순해도 상태 입력에 체력과 위치가 포함되고, 행동을 개별 유닛 수준으로 선택할 수 있으면 세밀한 행동이 출현할 수 있음을 시사한다.
벌처 1대 vs 저글링 6기
두 번째 시나리오에서는 제작자가 먼저 쏠 수 있으면 쏘고 재장전 중에는 물러나는 규칙 기반 코드를 만들었고, 그 기준 승률은 50%였다. 학습한 AI는 약 12만 판에서 저글링을 끌고 다니며 무빙샷을 수행했고, 영상에서 제시한 AI 승률은 87%였다.
다만 영상의 추가 실험은 중요한 제한도 보여준다. 같은 전략이라도 명령 주기, 즉 APM을 바꾸자 제시된 승률이 179 APM에서 98%, 357 APM에서 87%, 714 APM에서 30%로 달라졌다. 이는 전략 품질과 실행 빈도·제어 주기가 서로 얽혀 있음을 뜻한다.
마린 10기 vs 럴커 2기
럴커 시나리오에서는 뭉치면 관통 공격에 함께 맞고, 사거리가 짧아 접근 중 피해를 입는 문제가 있다. 영상에서 제작자 코드의 승률은 46%, 학습 AI의 제시 승률은 60%였다.
약 16만 판 학습 이후 영상에서 관찰되는 행동은 다음과 같다.
앞쪽 마린:
공격을 유도하며 계속 이동
뒤쪽 마린:
상대적으로 안전한 위치에서 공격
전체 편대:
산개하여 한 번의 관통 공격 피해를 줄임
이것은 사람이 앞 조 유도조, 뒤 조 화력조라는 역할을 명시하지 않아도, 보상과 공간·체력 상태의 상호작용에서 역할 분담이 나타날 수 있음을 보여주는 사례다. 다만 세 시나리오가 제한된 맵·유닛·상대 조합에서 실행됐다는 점은 반드시 함께 봐야 한다.
6. Quality: 결과의 화려함보다 평가 설계
이 실험에서 가장 중요한 학습은 AI가 프로게이머급이라는 표현 자체가 아니라, 결과를 평가할 수 있는 시나리오를 좁게 정의했다는 점이다.
시나리오 고정
상대 조합 고정
승률 측정
학습 판수 기록
APM 조건 비교
그러나 품질을 일반화하려면 더 많은 검증이 필요하다.
훈련에 사용하지 않은 맵
다른 유닛 조합
다른 초기 배치
행동 지연과 관측 노이즈
반복 seed별 분산
규칙 기반·무작위 baseline
따라서 이 영상의 수치는 정해진 세 시나리오에서의 실험 승률로 읽는 것이 정확하다. 프로게이머급이라는 표현을 모든 스타크래프트 상황에 대한 일반 능력으로 확대하면 안 된다.
7. Speed: 큰 모델보다 빠른 환경
45분이라는 학습 시간은 모델 크기보다 환경 실행 속도의 영향을 크게 받는다.
23,000 파라미터
GPU 없음
MacBook CPU
수십만 판 시뮬레이션
실제 문제에서 중요한 질문은 다음이다.
한 판을 얼마나 빠르게 돌릴 수 있는가?
상태를 얼마나 작게 표현할 수 있는가?
행동 결과를 얼마나 빨리 평가할 수 있는가?
실패한 정책을 얼마나 저렴하게 버릴 수 있는가?
현실 업무에서도 거대한 모델 하나를 오래 추론시키는 것보다, 작은 정책·빠른 simulator·결정적 평가기를 조합하는 편이 효과적인 경우가 있다.
8. Cost: 모델 비용보다 시뮬레이션 비용
이 실험은 GPU와 대형 신경망 없이 CPU에서 수행됐다. 이것은 강화학습의 비용 구조를 생각하게 한다.
총 학습비용
= 모델 추론 비용
+ 환경 실행 비용
+ 상태 생성 비용
+ 정책 업데이트 비용
+ 실험·검증 비용
파라미터 수가 작아도 환경이 느리면 비용이 커진다. 반대로 환경이 빠르고 상태·행동 공간이 작으면 작은 컴퓨터에서도 정책을 충분히 탐색할 수 있다.
9. AI 학습 시스템 설계에 주는 원칙
원칙 1: 보상은 적게, 평가 기준은 정확하게
보상 항목을 많이 넣으면 사람이 원하는 행동을 과도하게 고정할 수 있다. 반대로 너무 단순한 보상은 목표의 빈틈을 악용하는 reward hacking을 만들 수 있다. 보상은 단순하게 시작하되, 평가 세트는 훈련 세트 밖까지 확장해야 한다.
원칙 2: 전술보다 상태 표현이 먼저다
체력·위치·재장전 시간이 없으면 피해 유닛을 골라 빼거나 공격 타이밍을 학습하기 어렵다. AI에게 무엇을 가르칠지 고민하기 전에, 어떤 상태를 관찰할 수 있게 할지 결정해야 한다.
원칙 3: 행동 공간을 줄이면 학습은 쉬워진다
12개 행동이라는 제한된 출력 공간은 탐색을 쉽게 만든다. 현실의 업무 자동화에서도 모든 API와 모든 파일을 한 번에 노출하기보다, 작업별 허용 행동을 제한하는 편이 품질과 안전성에 유리하다.
원칙 4: 시뮬레이터가 곧 데이터 생성기다
사람이 모든 정답 데이터를 라벨링하지 않아도, 환경이 상태·행동·결과를 생성하면 반복 학습이 가능하다. 다만 simulator와 현실 사이의 차이가 크면 시뮬레이션에서만 잘하는 정책이 된다.
원칙 5: 빠른 학습과 일반화는 별도 목표다
45분 안에 특정 시나리오에서 승률이 오른 것은 학습 효율의 증거일 수 있다. 하지만 새로운 상황에서도 잘한다는 일반화의 증거는 아니다. 둘을 하나의 지표로 합치지 말아야 한다.
10. Task Agent에 적용하면
이 실험의 구조는 Task Agent에도 대응시킬 수 있다.
| 전투 AI 요소 | Task Agent 대응 |
|---|---|
| 게임 상태 | 저장소·이슈·로그·환경 상태 |
| 행동 12개 | 허용된 도구·명령·workflow |
| 적 체력 감소 | 목표 달성·검증된 artifact |
| 아군 사망 | 실패·부작용·재작업 |
| 게임 승률 | Task success rate |
| 수십만 판 | 반복 가능한 테스트·시뮬레이션 |
| CPU 학습 | 저비용 worker·결정적 평가기 |
Task 상태 관찰
→ 허용된 도구 선택
→ 작업 실행
→ artifact·테스트·사용자 결과 평가
→ 성공 정책 강화
→ 실패 정책 억제
다만 업무 Agent에서는 게임의 승패처럼 하나의 보상으로 끝나지 않는다.
Quality:
정확성·테스트·출처·artifact
Speed:
완료 시간·대기·재작업
Cost:
토큰·컴퓨트·도구·실패비용
Safety:
승인·권한·부작용·비밀정보
그래서 실제 Task Agent는 단일 reward보다 품질 게이트와 증거 기반 평가를 함께 두어야 한다.
결론
이 영상에서 배울 핵심은 AI에게 마린 컨트롤 전술을 직접 주입했다는 것이 아니다.
작은 상태 표현
+ 제한된 행동 공간
+ 단순한 결과 보상
+ 빠른 시뮬레이션
+ 수많은 반복
+ 명확한 평가 시나리오
이 조합이 사람이 예상하지 못한 백무빙·산개·역할 분담을 만들어냈다.
동시에 한계도 분명하다.
특정 시나리오 결과
≠ 일반 게임 지능
높은 승률
≠ 프로게이머와 동일한 실력
단순한 보상
≠ 안전한 목표 설계
빠른 학습
≠ 현실 환경 일반화
AI 학습 시스템을 만들 때의 실용적인 지혜는 다음과 같다.
전술을 먼저 코딩하기보다, 관찰할 상태·허용할 행동·측정할 결과·반복 가능한 환경을 먼저 설계하라.