게임 프로그래밍
Received: Sep. 10. 2019 Revised: Oct. 23. 2019 Accepted: Nov. 08. 2019
Corresponding Author: Sung Hyun Cho(Hongik University) E-mail: [email protected]
ISSN: 1598-4540 / eISSN: 2287-8211
Ⓒ The Korea Game Society. All rights reserved. This is an open-access article distributed under the terms of the Creative Commons Attribution Non-Commercial License (http://creativecommons.otg/licenses/by-nc/3.0), which permits unrestricted non-commercial use, distribution, and reproduction in any medium, provided the original work is properly cited.
경영 시뮬레이션 게임에서 PPO 알고리즘을 적용한 강화학습의 유용성에 관한 연구※
양의홍, 강신진, 조성현 홍익대학교 일반대학교 게임학과(공학)
[email protected], {directx, scho}@hongik.ac.kr
A Study about the Usefulness of Reinforcement Learning in Business Simulation Games using PPO Algorithm
Yi-Hong Liang, Sin-Jin Kang, Sung Hyun Cho School of Games, Hongik University
요 약
본 논문에서는 경영 시뮬레이션 게임 분야에서 강화학습을 적용하여 게임 에이전트들이 자율 적으로 주어진 목표를 달성하는지를 확인하고자 한다. 본 시스템에서는 Unity Machine Learning (ML) Agent 환경에서 PPO (Proximal Policy Optimization) 알고리즘을 적용하여 게 임 에이전트가 목표를 달성하기 위해 자동으로 플레이 방법을 찾도록 설계하였다. 그 유용성을 확인하기 위하여 5가지의 게임 시나리오 시뮬레이션 실험을 수행하였다. 그 결과 게임 에이전 트가 다양한 게임 내 환경 변수의 변화에도 학습을 통하여 목표를 달성한다는 것을 확인하였 다.
ABSTRACT
In this paper, we apply reinforcement learning in the field of management simulation game to check whether game agents achieve autonomously given goal. In this system, we apply PPO (Proximal Policy Optimization) algorithm in the Unity Machine Learning (ML) Agent environment and the game agent is designed to automatically find a way to play. Five game scenario simulation experiments were conducted to verify their usefulness. As a result, it was confirmed that the game agent achieves the goal through learning despite the change of environment variables in the game.
Keywords : Reinforcement Learning(강화학습), Proximal Policy Optimization Algorithm(근
위정책 최적화알고리즘), Game Agent(게임 에이전트)
1. 서 론
인공지능 기술 중 기계학습은 학습 방식에 따라 크게 지도 학습, 비지도 학습 그리고 강화학습으로 나눌 수 있다. 지도 학습과 비지도 학습의 경우 주 로 어떠한 물체를 구분하거나 데이터의 특성을 분 석, 가공하는데 사용되는 반면 강화학습은 주로 제 어나 상호작용을 통해 최적의 행동을 탐색하는 분 야에서 주로 사용된다[1]. 강화학습은 상태에 대한 행동을 매핑하는 방법을 학습하여 수치적인 보상을 극대화시킬 수 있는 행동을 선택한다[2].
본 연구의 목적은 경영 게임 시뮬레이션 분야에 서 강화학습을 적용하여 게임 에이전트가 최대의 보상을 얻을 수 있는 행동을 스스로 찾도록 하는 것이다. 강화학습 기법들은 주로 대전형 게임 혹은 퍼즐 게임류에서 그 유용성을 보여주었다. 특히 2018년 텐센트는 자사의 게임인 펜타스톰에 강화 학습 알고리즘을 적용하여 프로게이머 실력을 능가 하는 에이전트를 선보였다[3]. 본 연구에서는 기존 의 강화학습이 주로 적용된 대전형 게임이나 퍼즐 장르 이외에도 경영 시뮬레이션 장르에 강화학습 적용이 가능한지를 확인해 보고자 한다.
이를 위해 본 연구에서는 유니티를 활용하여 경 영 시뮬레이션의 핵심 시스템 요소인 투자, 관리, 손실 시스템을 가지고 있는 간단한 실험용 미니 경영 시뮬레이션 게임을 개발하였다. 그리고 여기 에 유니티 ML(Machine Learning)-Agent 환경에 서 PPO(Proximal Policy Optimization) 알고리즘 을 적용하여 경영 게임 내에서 에이전트가 강화학 습을 통해 학습이 이루어지는지 확인해 보았다.
구현된 시스템은 총 5개의 시뮬레이션 시나리오 를 만들었다. 각 시나리오에서 에이전트는 지정된 게임목표에 도달하기 위하여 강화학습을 통해 최적 의 행동 패턴을 찾아내도록 하였으며, 시뮬레이션 결과들을 비교 분석하였다.
2. 관련 연구
2.1 Policy Gradient (PG) 기법
강화학습에서 인공 신경망을 적용하여 최적 행동 의 행동 값을 직접적으로 얻는 기법으로 Policy Gradient(PG) 기법이 있다[2]. 이 기법은 인공 신경 망 학습을 통해 누적 보상을 최대로 하는 최적 정책 을 찾는 것이다. 누적 보상은 정책신경망을 통해 최 적화하고자 하는 목표 함수에 의해 얻어지며 최적화 대상은 인공신경망 내의 가중치 값들이다. 시뮬레이 션 환경에서 PG 기반 강화학습은 주로 에이전트의 제어에 초점이 맞추어져 왔다. 강화학습 환경에서 PG 알고리즘이 기존의 강화학습들에 비하여 빠른 학 습이 가능하다는 연구 결과가 있다[4]. 또한 빠른 수 렴성을 보장하기 위해 Actor의 학습을 위해 PG를 이용하는 Actor-Critic 기법이 최근에 제안되었다[5].
2.2 PPO 알고리즘
PPO 알고리즘은 2017년 OpenAI 팀에 의해 도 입된 PG 기법 중 하나이다. PPO 알고리즘은 에이 전트가 환경과의 상호작용을 통해 데이터를 샘플링 과 stochastic gradient ascent를 사용하여 surrogate objective function을 최적화하는 것을 번갈아 가면서 수행하는 방법이다[6]. 여기에서는 데이터를 샘플링 할 때마다 업데이트하는 기존의 방법과는 달리, mini-batch update의 multiple epochs를 가능하게 하는 새로운 목적 함수를 사용 한다. 자율 주행 분야에서 PPO 알고리즘은 다른 강화학습 알고리즘에 비해 좋은 성능을 보여 주었 다[7]. PPO 알고리즘을 이용하여 타워 디펜스 게 임에서 강화학습 에이전트 모델을 생성하려는 시도 도 있었으며[8], Unity 엔진으로 만든 가상 비행 환경에서 PPO 알고리즘을 사용하여 에이전트가 다양한 외부환경의 변화에도 목표지점에 도달하는 비행궤적을 찾을 수 있다는 것을 보여 주었다[9].
본 논문에서는 PPO 알고리즘을 경영 시뮬레이션
분야에 적용하여 그 유용성을 확인해 보고자 한다.
3. 시스템
3.1 게임 시스템
본 연구에서는 게임 및 디지털 컨텐츠 제작에서 주로 활용되는 Unity3D 게임 엔진으로 간단한 경 영 시뮬레이션 게임을 개발하였다. 본 시뮬레이션 게임의 목표는 박물관 관장을 담당하는 주인공이 박물관을 경영하여 고객들을 접대하거나, 도둑을 잡거나, 혹은 투자를 하여 일정 수치 이상의 돈을 모으는 것이다.
게임 플레이어는 관리자를 제어하여 박물관을 운영한다. 관리자들은 1) 전시품 관리자, 2) 부스 업그레이드 관리자, 3) 투자 관리자 4) 경비원, 총 4 종류가 있다. 플레이어는 관리자를 상하좌우 키 및 단축키로 제어한다. 박물관은 30 x 30 2차원 공간으로 구성되어 있다. [Fig. 1]은 본 시뮬레이션 에 사용된 게임 에이전트들과 인터랙션이 가능한 오브젝트들을 보여준다. 박물관 내 전시품은 부스 위에 전시되며 부스의 레벨은 3단계가 있다. 부스 가 업그레이드 될수록 전시품 앞에 고객이 접근하 면 더 많은 코인이 코인함에 입금된다.
관리자들은 각자 수행 가능한 행동이 다르다. 플 레이어가 전시품 관리자를 플레이하면 코인함을 클 릭하여 누적된 코인을 얻을 수 있다. 도둑 에이전 트가 코인함에 접근하면 코인을 훔쳐간다. 이를 막 기 위해서 플레이어는 경비원 관리자를 선택하여 도둑을 잡을 수 있다. 플레이어가 투자 관리자를 선택하면 투자 박스를 클릭하여 일정 수치 이상의 코인을 투자받아서 부스를 업그레이드 하는데 사용 할 수 있다. 제한된 시간 내에서 코인을 빠르게 획 득하기 위해서는 투자 박스에서 코인을 받아서 이 를 부스 업그레이드에 사용해야 한다. 부스 업그레 이드를 하면 돈을 고객들로부터 레벨에 따라서 기 본 부스의 2배 혹은 3배를 받을 수 있다. 하지만 이 과정에서 경비를 소홀히 하게 되면 도둑 에이 전트가 나타나 전시품을 훔쳐감으로써 수익이 감소 될 위험이 있다. 때문에 플레이어는 4개의 관리자 중 적절한 관리자를 계속 선택하면서 투자, 업그레
이드, 도둑 퇴치를 균형있게 플레이해야 한다.
[Fig. 2]는 관객들과 관리자들의 일반적인 진행 프로세스를 보여준다. 본 게임은 플레이어가 관리 자의 기능을 잘 이해하고, 제한된 시간 내에 관리 자들을 제어하여 돈을 많이 버는 것이 플레이 목 표이다.
[Fig. 1] Organization of Game Objects
3.2 강화학습 SDK
본 연구에서는 Unity ML-Agent를 사용하였으 며, 이는 Unity에 들어가는 오픈소스 플러그인이다 [9]. ML-Agent는 Unity엔진과 PPO 알고리즘을 포함한 다양한 강화 학습 알고리즘을 포함하거나 연동 가능하도록 되어 있다. ML-Agent에서 시뮬 레이션 환경 및 에이전트를 설계하면 자체적으로 강화학습을 수행하며 모델을 생성해 준다[10].
[Fig. 3]에서 보는 바와 같이 Unity3D에 구현된
학습 환경에서 수집되는 변수들을 External
Communicator 외부 통신으로 전송해주며 PPO
알고리즘으로 학습된 결과를 Unity 3D로 전송해준
다. 그리고 ML-Agents SDK를 사용하면 유니티 에디터로 제작한 게임을 손쉽게 Python 코드와 연 동시킬 수 있다[6].
[Fig. 2] Flow Charts of Player Character Agent (Left) and Customer NPC (Right)
[Fig. 3] Block Diagram of ML-Agents[9]
본 연구에서는 John Schulman이 제안한 Clipped Surrogate Objective 수식[11]을 사용하 고, Actor-Critic 방법의 PPO 알고리즘을 적용하 였다. 이 기법은 신경망을 두 개로 구성하여 최적 행동을 결정하고자 하는 기법이다. 이 때 Actor는 정책을 근사하고, 여기서 출력된 정책은 Critic을 통해 평가된다. Critic은 행동 가치 함수를 근사해, 현재 도출된 정책이 얼마나 우수한지를 평가한다 [12]. [Fig. 4]는 Actor-Critic 방법의 PPO 알고리
즘의 의사코드이다. For 반복문 내에서 actor들에 대한 정책
를 운영하여 환경에서 T번 타임스텝 을 진행한다. 받은 결과를 이용하여 추정 보상
을 계산한다. actor들의 타임스텝이 다 끝 나면 정책과 손실을 계산하여 정책을 갱신한다[13].
본 시스템에서 사용한 PPO 알고리즘은 정책의 변 화 비율을 고정하여 비율보다 높거나 낮아지는 것 을 막도록 설정하였다[14].
Algorithm 1 PPO, Actor-Critic Style 1 For iteration=1,2,... do
2 For actor=1,2,..,
do 3 Run policy
in environment for
timesteps
4 Compute advantage estimates
5 End For
6 Optimize surrogate L wrt
, with
epochs and minibatch size
≤ 7
←8 End For
[Fig. 4] PPO Algorithm[13]
3.3 게임 에이전트 브레인
게임 내 에이전트는 주변을 관측하여 행동을 실 행한다. ML-Agent에서 브레인은 에이전트의 행위 와 정책을 실제로 결정하는 역할을 한다[14].
ML-Agent를 통해 게임 내 에이전트를 제어하는 브레인은 External, Internal, Player 및 Heuristic 총 4 종류가 있다. External 브레인은 TensorFlow(또는 기타 원하는 ML 라이브러리)를 사용하여 파이썬 API를 통해 개방적인 소켓으로 통신하여 행동을 결정한다. Internal 브레인은 TensorFlowSharp를 통해 프로젝트에 탑재된 훈 련된 모델을 활용하여 행동을 결정한다. Player 브 레인은 플레이어의 입력을 통해 행동을 결정한다.
그리고 Heuristic 브레인은 직접 코딩한 동작을 기
반으로 행동을 결정한다.
본 시스템은 [Fig. 5]처럼 고객 에이전트, 관리 자 에이전트, 업그레이드 에이전트, 투자 에이전트, 경비원 에이전트 및 도둑 에이전트 총 6개 에이전 트를 구현하였다. 브레인 속성 값은 [Table 1]과 같이 설정했다. 여기서 Brain Parameters의 Vector Observation은 관측되는 벡터를 의미한다.
본 게임 시스템은 에이전트 및 목표의 상대 좌표 Vector2(X, Y), 각 장벽까지의 X축, Y축의 상대 거리 총 8개를 사용했으며 Space Size는 8로 설정 했다. Stacked Vectors는 한 번에 겹쳐서 네트워 크로 입력되는 크기이다. 에이전트들의 상태가 바 로 이동, 정지 및 작업 중인 상태 총 3개가 있으므 로 Vector Action의 Space Type는 분리형 (discrete) 타입을 선택하였다. Branch Size는 상 하좌우 방향을 사용하므로 4개를 설정하였다. 마지 막으로 모델 부분은 이미 학습된 모델을 설정한다.
본 연구에서 플레이어가 다양한 에이전트를 플 레이할 수 있다. 어느 한 에이전트를 학습시킬 때 에 다른 에이전트는 Heuristic 브레인, Internal 브 레인 혹은 Player 브레인으로 제어하였다. 예를 들 면, 투자 관리자 에이전트를 훈련할 때 투자 관리 자 에이전트는 External 브레인으로 설정하고, 다 른 에이전트는 Heuristic 브레인이나 그전에 훈련 생성된 모델을 이용하며 Internal 브레인으로 한다.
[Table 1] Learning Brain Properties
3.4 하이퍼 파라미터
PPO 알고리즘을 수행하기 위하여 게임 에이전 트 브레인과 관련된 하이퍼 파라미터(Hyper Parameter)의 값들은 [Table 2]와 같다. 각각의 파라미터들은 시뮬레이션 환경의 복잡도에 따라서 설정하게 된다. 여기서 batch-size값은 한번에 입 력되는 입력 데이터 수이다. beta값은 엔트로피의 변화에 대응하여 정책에 랜덤성을 부여한다.
[Fig. 5] Learning Brain Set of Agents
epsilon값은 기존 정책과 새로운 정책 사이에 허 용되는 기울기 업데이트의 한계치이다. gamma값 은 미래의 보상을 위한 할인 정도이다.
hidden-Unit 값은 신경망 내 레이어의 개수이다.
lambda 값이 일반화된 어드밴티지 평가를 계산할 때 사용된 람다 매개 변수이다. num_epoch값의 변화도가 떨어질 때 경험 버퍼를 통과하는 패스의 수이다. num_layer값은 관찰 입력 또는 시각 관찰 의 레이어 층수이다. time_horizon값은 경험 버퍼 를 추가하기 전에 per-agent를 수집해야 하는 경 험치이다. max_steps 값은 훈련 과정 동안 시뮬레 이션을 할 수 있는 최대한 단계 수이다[16].
[Table 2] Hyper Parameter
4. 시뮬레이션 방법
4.1 시뮬레이션 학습 주기
본 시뮬레이션 게임에 사용된 학습 주기는 [Fig. 6]
과 같다. 학습 주기와 학습에 사용된 각각의 요소는 다음과 같다. Action은 2차원 공간으로 위치를 변환하
는 이동 속도로, 방향은 2차원 공간의 모든 방향으로 무작위로 적용되었다. State는 에이전트의 위치, 이동 속도 그리고 목표물체와의 거리를 계산하여 에이전트 에 전송한다. Reward은 목표물체를 통과할 때 +0.1, 목표에 도달하면 +1을 얻는다. 반대로 장애물을 통과 할 때 -0.1, 장벽에 맞거나 제한한 시간까지 수집한 코인이 목표보다 부족한 경우는 -1의 페널티를 준다.
추가로 에피소드의 길이가 증가하는 것을 방지하기 위 하여 시간지연에 따른 -0.01의 페널티를 추가하였다.
[Fig. 6] Learning training cycle
[Fig. 7]에서 보는 바와 같이 PPO 알고리즘은 Actor-Critic 방법의 방식처럼 Actor Network와 Critic Network 두개로 나눠진 계산식 구조로 이우어 진 훈련 프로세스이다. Actor Network에서 에이전트 의 행동 및 상태를 입력하며 PPO 알고리즘으로 계산 해 준다. Critic Network는 advantage 함수가 계산 한 상태 가치를 받아 최소화하고 자신을 업데이트하 며 상태 값을 Actor Network에게 전송한다. Actor Network는 Critic Network에서 받은 데이터를 이용 하여 자신의 함수를 업데이트한다. 이전의 정책과 비 교하며
정책에 따라
와
을 예측하여 정규분포 값 을 출력한다. 정규분포를 통해 적당한 행동을 선택한 다. 그 행동을 환경에 적용한 후에 받은 데이터들을 다시 Actor-Critic Network에서 학습시킨다.
4.2 시뮬레이션 시나리오
본 실험의 목적은 경영 시뮬레이션 게임에서 에
이전트가 목표를 달성하기 위해 투자의 변화에 따
라 강화학습이 정상적으로 이루어지는지를 확인하
는 것이다. 이를 위하여 [Fig. 8]과 같은 5가지의
시나리오를 준비하였다.
시나리오 1은 모든 시나리오의 기준 환경 (Standard Environment)이다. 1개의 기준 관리자 에이전트, 6개 고객 에이전트, 4개 목표로 구성되어 있으며, 아무 변수가 없는 상태에서 최대 1000개의 코인을 모으는 목표에 도달하도록 설정하였다. 시나 리오 2는 부스 업그레이드(Booth Upgrade) 기능을 추가하는 환경이다. 1개의 부스 관리자 에이전트를 추가하게 되어 있다. 코인이 충분하고 각 부스를 업 그레이드하게 되는 경우에 부스 레벨의 2배가 되는 코인을 얻을 수 있도록 설정하였다. 시나리오 3은 투자(Invest Box) 요소를 추가하는 환경이다. 1개의 투자 관리자 에이전트를 추가하게 되어 있다. 투자 하는 코인을 매번 랜덤 함수로 2∼10범위의 코인을 생성하여 투자 에이전트를 통해 코인을 획득하게 설 정한다. 시나리오 4는 도둑을 추가하는 환경이다. 1 개의 도둑 에이전트, 1개 경비원 에이전트를 추가하 게 되어 있다. 도둑이 전시품을 가져간다면 코인을 받지 못하기 때문에 경비원이 도둑을 잡아야 정상 영업을 유지할 수 있게 설정하였다. 시나리오 5는 이와 같은 모두 구성요소들을 모두 배치한 환경이다.
5. 시뮬레이션 결과
환경 요소의 변화에 따른 학습 결과를 분석해 보면 다음과 같다. [Fig. 9]와 [Fig. 10]은 5가지 시나리오에 대한 학습 결과를 보여준다.
[Fig. 8] Simulation Scenarios
2개의 그림에서 cumulative_reward는 에이전트 가 받은 보상 및 페널티의 누적 값이다.
value_estimate는 에이전트를 통해 방문하는 모든
상태의 추정 값이다. policy_loss는 정책 함수의 손
실 값이다. value_loss는 손실 값이다. entropy는
훈련 모델의 결정 엔트로피 값이다. 이 6개의 강화
학습 변수들이 강화학습이 잘 이루어졌는지를 확인
할 수 있는 기준 변수가 된다[17]. 실험 결과를 보
[Fig.7] Reinforcement Learning Training Process
면 cumulative_reward는 훈련 과정 동안 점차 증 가하는 경향을 보인다. 부분적인 감소 구간이 존재 하긴 하지만 5개의 시나리오 모두에서 전반적으로 증가하는 경향을 보임으로써 각 네트워크가 정상적 인 학습을 수행하고 있음을 보여준다.
[Fig. 9] Experiment Results of Scenario No.1 to No.4
entropy, value_loss는 감소하는 경향을 보이고 있다. entropy 값이 감소하면 정책 결정의 랜덤성 이 줄어드는 것으로 볼 수 있고, 이는 최적의 정 책이 찾아졌음을 의미한다. 학습이 잘 되면 에이전 트가 받은 보상 값이 증가하고, value_loss 값은 감소한다. 다른 4개의 시나리오에서는 value_loss 값이 전반적으로 자연스럽게 감소하였으나 시나리 오5에서는 value_loss 값이 잘 수렴되지 않는 것을 볼 수 있다. 이는 시나리오 5에는 도둑이라는 방해 요소가 있기 때문으로 추정된다. value_estimate가 감소하는 이유는 게임 내의 상태 종류가 아직 많 지 않아 예측할 수 있는 값이 적기 때문이다. 각각 에이전트의 policy_loss는 서로 다른 패턴을 보여 주고 있고, 이는 에이전트들이 각기 다른 행동 패 턴을 학습한 것으로 이해할 수 있다.
[Fig. 10] Experiment Results of Scenario No.5
[Table 3]은 학습에 따른 누적 reward와 게임 score를 보여준다. 여기서 score는 코인의 수를 의 미한다. 시뮬레이션 결과를 보면 모든 시나리오 중 에 도둑을 추가하는 환경에서는 마지막 스텝까지 1000코인을 획득하지 못했지만, 다른 시나리오들은 1000코인을 획득하는데 성공하였다. 이는 게임 규 칙에 따라 도둑 에이전트가 전시품을 가져가서 게 임 코인을 못 받기 때문에 정상적이고 성공적인 결과이다. 기준 환경에서는 약 6분 36초 지나서 목 표에 도달하는 것을 보여준다. 하지만 다른 시나리 오는 여러 환경 변수가 추가되었기 때문에 학습 속도가 느려진다는 것을 알 수 있다. 기준 환경 학 습에서 reward가 점차 증가하고 있는 것을 보여준 다. 이는 학습이 성공적으로 진행되었기 때문이다.
다만 모든 것을 통합한 환경에서의 학습에서는 0
부터 50k구간에서 학습이 잘 진행되지 않는 모습
을 보여주고, 5개 시나리오 중에 제일 작은
reward인 -105.3 값을 보였다. 하지만 그 후에 학
습이 느리게 진행되지만 페널티가 감소하고
reward가 증가함을 알 수 있다. 이는 학습이 가장
어려운 환경에서도 목표를 성공적으로 달성한다는
것을 의미한다.
[Table 3] Simulation Results
6. 결 론
본 연구에서는 강화학습을 이용하여 경영 게임을 시뮬레이션하고 투자의 변화, 보상 값의 변화, 도둑 에이전트의 추가 등의 변수가 에이전트의 학습에 미 치는 영향에 대하여 연구하였다. 본 연구의 결과를 통하여 변수가 에이전트의 학습 속도에 영향은 주지 만, 결국 에이전트들이 게임목표에 달성할 수 있도 록 학습한다는 사실을 확인할 수 있었다. 본 연구는 경영 시뮬레이션 게임에서 주로 적용되는 멀티 에이 전트 환경, 투자, 손실 등의 시스템 규칙에서도 강화 학습이 효과적으로 적용할 수 있는지를 실험용 게임 을 제작하여 확인해 보고자 하였다. 그 결과 강화학 습 기술이 경쟁형 대전 게임 장르나 퍼즐 장르 외에 경영 시뮬레이션 장르에서도 적용 가능함을 보였다.
향후 연구는 범용적인 경영 시뮬레이션 게임에서도 적용 가능한지 확인하기 위해 좀 더 구체적인 경영 시뮬레이션 게임 구성 요소를 실험용 게임에 추가하 고자 한다. 그리고 이를 바탕으로 다양한 보상 함수를 설계해 볼 예정이다. 이후 학습된 모델을 다른 유사한
경영 시뮬레이션 게임에 적용하여 일반화시킬 수 있 을지를 확인해 보고자 한다. 이러한 과정이 잘 이루어 진다면 경영 시뮬레이션 게임에서 강화학습이 적용된 에이전트들의 창발적인 학습 과정을 통해 플레이어들 에게 새로운 재미를 줄 수 있을 것으로 생각한다.
ACKNOWLEDGEMENT
This work was supported by the National Research Foundation of Korea(NRF) grant funded by the Korea government(MSIT) (No.NRF-2019R1A2C1002525), and 2017 Hongik University Research Fund.
REFERENCES