'KGC 2014' 첫째 날, 한국전자통신연구원 양성일 책임 연구원은 온라인 게임에서의 게임봇 탐지 및 대응기술에 대한 소개와 과제 진행에 따른 문제점 해결에 대한 경험담을 공유했다. 게임봇 탐지를 게임 인공지능 기술의 한가지 응용 사례로서 조망하고, 관련 기술 이슈들과 함께 응용 분야 전반에 걸쳐 종합적인 연구 개발 환경과 성과에 대해 종합적으로 짚어보는 시간이었다.


▲ 한국전자통신연구원 양성일 책임 연구원


양성일 연구원은 게임 기술을 4가지 부류로 분류했다. 기능 구현 측면, 다자간 환경, 서비스 운영 측면, 개인 환경 측면으로 분류한 양 연구원은 이를 기술적 이슈로 나누어 설명했다.

"그래픽, 사운드는 실감 환경. 서버와 클라이언트는 네트워크 환경 구축 측면이다. 사용자 관리 DB는 서비스 환경 구축 측면에서 접근한다. 게임봇은 인공지능과 관련된 환경이다. 이는 개인 환경과 서비스 운영 측면을 모두 품고 있다."

그는 게임봇을 '사람의 도움이 없이 게임에 자동 참가하여 게임 속의 재화를 얻기 위해 시간이 오래 걸리는 지루한 반복 게임 행동을 대행시키기 위한 하드웨어 또는 소프트웨어'로 정의했으며 게임봇을 운영하여 게임 속 재화를 모으는 집단으로 주로 중국에 소재한 '작업장'도 언급했다.

"게임봇은 서비스 측면에서 게임의 질을 떨어트리는 요소다. 하지만 게임봇을 차단한다고 해도 더 강력한 봇이 등장하기 때문에 악순환이 계속된다. 이에 따른 피해는 유저들에게 고스란히 돌아간다. 콘텐츠를 즐기면서 상실감이 커지고 결국 게임을 그만두게 되기 때문이다. 국가적으로는 외화의 유출이며 개발사는 게임봇을 막느라 양질의 콘텐츠를 생산하지 못하게 된다."




양질의 콘텐츠 생산을 막는 게임봇에게 철퇴를 내리기 위해 게임봇 탐지 및 대응 기술에 개발에 나선 공공기관, 한국전자통신연구원은 동시 접속자 3,000명 서버에서 게임봇을 탐지하고 대응할 수 있는 솔루션을 개발하게 됐다.

개념은 간단했다. 정상적인 유저와 작업장의 플레이 데이터를 수집하여 특성을 분석해 패턴을 인식해서 검출하는 것 이었다. 게임 로그 데이터를 수집해서 게임 속성과 게임봇 연관 속성을 분석해서 게임봇의 패턴을 인식 검출하는 기능이 핵심이었다. 이를 통해 도출한 게임봇 자동 검출 규칙과 수동 규칙을 생성해서 게임마스터가 쉽고 편리하게 사용할 수 있는 게임봇, 탐지 대응 솔루션의 개발이 최종 목표로 삼았다.

"온라인 게임의 게임 속성 및 게이머의 플레이 패턴을 분석하여 게임봇을 탐지하고 게임봇에 대응하기 위한 기술을 연구하기 시작했다. 게임 데이터 분석을 통해 게임봇과 인과 관계 높은 속성 9종 및 플레이 유형 18종 이상을 분류할 수 있게 하는 것이 연구 목표였다."




연구는 3년에 걸쳐 진행됐다. 1년 차에 게임 속성 분석 및 게임봇 규칙 기반 검출 기술을 구현하는 데 성공했다. 분석용 로그 추출 및 게임 속성을 통한 층화 표본 분석 기술과 검출용 로그 자동 추출 및 게임 봇 규칙 기반 검출 기술이 포함된다.

2년 차에는 상황 인지 기반 게임봇 행동 패턴 탐지 기술을 구현했다. 환경에 따른 행동 패턴 분석기술과 변화하는 게임봇 인식을 위한 런타임 패턴 학습 기술을 구현했으며 게임봇 추세 및 시공간적 특징에 대한 게임봇 통계 분석 리포팅 기술 개발도 이룰 수 있었다.

3년 차에는 계층구조기반 대규모 게임봇 탐지 기술과 게이머 피드백을 통한 게임봇 검증 및 DB 자동 업데이트 기술이 포함된 대규모 게임봇 탐지 및 패턴 추적 대응 기술을 구현했다. 비정형 텍스트 형식의 로그와 빅데이터 기반 게임 로그 속성 추출 및 데이터 전처리 등의 세부 기능도 구현했다.




양 연구원은 3년의 경험을 풀어놓고서는 "게임봇은 일종의 인공지능이다. 과거에는 사람만이 할 수 있다고 여겨지던 대상이, 근래에는 '사람보다 뛰어난' 성능의 인공지능 적용 사례가 늘어나고 있다."며 화제를 전환했다.

추론 엔진의 경우 이미 인간만 할 수 있다는 창조의 영역에 들어선 것을 예로 들며 인공지능 발전을 설명했다. 게임봇이 과거 과도한 패킷을 발생시키던 단순한 매크로에서 색상변화 탐지 기반 자동사냥과 수백 개 계정을 동시에 로그인할 수 있는 Non-Client 봇까지 발전한 건 인공지능의 발전과 맞닿아 있다는 설명을 덧붙였다.

즉, 인공지능의 관점에서 게임봇은 사람의 도움이 없이 게임에 자동참가(자의적 판단)하여 게임 속의 재화를 위해(목적 설정) 시간이 오래 걸리는 지루한 반복 게임 행동을 대행(운영 형태)시키기 위한 하드웨어 혹은 소프트웨어 장치라 정의할 수 있다.




사람 같은 스마트 NPC가 상황을 인식해 자의적으로 판단하는 것이 인공지능의 핵심인 것이다. 다만 게임봇의 경우 협업하지 않으며 재화 수집용 상황인식만 하는 부정적인 면이 도드라진 인공지능이다. 다시 말해 '악의적 목적'을 잠시 접어두면 게임봇의 기술적 이슈는 인공지능의 기술적 이슈와 상동하다는 말이다.

생각하고, 학습하고, 판단하는 인간 고유의 지식활동을 하는 컴퓨터 시스템인 인공지능은 근본적으로 '지능을 인공적으로 실현'하는 기술이며 이는 뉴럴 네트워크, 기계학습, 패턴인식과 맞물려 있다.

하나의 인공지능 엔진으로 여러 게임을 동시에 플레이할 수 있는 'GGP(General Game Playing)'과 게임 플레이 데이터를 수집하여 학습하는 '플레이어 모델링기술', 게임 관련 콘텐츠를 자동 생성하는 기술인 'PCG(Procedural Content Generation)' 가 그것이다.

양 연구원은 "게임 서비스의 품질을 향상시키기 위해서는 로그 데이터를 활용할 필요가 있다. 다만 다양한 게임의 산재된 데이터 형식을 표준화할 방법을 고민해야 한다."라는 말로 강연을 마쳤다.