- AI Dev - 인공지능 개발자 모임
- 정보공유
- 챗봇 딥러닝
사실 제가 대학원 인공지능 연구실로 진학한 이유는 게임 때문이었습니다. 대학 졸업 후 게임회사에 취업했는데요. 그때 NPC AI를 담당했습니다. 가상의 캐릭터가 스스로 환경을 인지하고 움직이는게 너무 신기했습니다. 그래서 본격적으로 인공지능을 공부하고 싶었습니다.
게임의 NPC들은 지금도 대부분 유한상태기계(Finite State Machine)나 행동 트리(Behavior Tree) 방식을 씁니다. 특정한 상태를 미리 정의하고 외부 환경이나 내부 인자에 따라 다음 상태로 이동합니다. 각 상태에서는 그에 맞는 규칙에 따라 행동을 결정합니다. 예를 들어, 휴식 상태에서 적이 다가오면 공격 상태로 바뀌어 공격 행동을 수행합니다. 그리고 적을 물리치면 다시 휴식 상태로 돌아갑니다.
시스템 자원에 따라 다르겠지만 보통 1초에 한번씩 루프를 돌면서 각 NPC들의 행동을 결정합니다. 그래서 자율적으로 움직이는 것처럼 보이게 됩니다. 올해 4월에 공개된 Generative Agents는 LLM 기반의 AI NPC입니다. FSM과 비슷하게 10분 단위로 루프를 돌면서 다음에 할 행동을 선택합니다.
하지만 큰 차이점이 있습니다. FSM은 모든 규칙을 개발자가 변수를 지정하고 코드로 구현해야 합니다. 반면에 GA는 ChatGPT를 기반으로 하기 때문에 동작 과정이 전부 텍스트로 이루어집니다. 주변에 몬스터가 있거나 내 HP가 100이다 등의 모든 정보를 그냥 말로 풀어서 설명합니다. 그리고 ChatGPT에게 다음에 내가 취해야 할 행동을 알려달라고 합니다. 행동 뿐만이 아니라 대화까지 ChatGPT로 자연스럽게 통합되어 돌아갑니다.
GA 논문의 저자가 한 인터뷰를 봤는데요. 지금은 계산 리소스 때문에 당장 이런 기법을 상용화하기는 어렵다고 합니다. 다만 향후 5~10년 안에는 이렇게 자율적인 AI가 대중화될 것이라 말했습니다. 게임만이 아니라 로봇, 개인비서, 앱서비스 등 다양한 곳에 응용이 가능할 테니까요.
(첫 번째 사진은 제가 예전에 만들었던 FSM 테스트 프로그램입니다^^;)