강화학습의 경우, 에이전트가 다양한 경험을 수행하며 학습
강화학습은 1. 다양한 경험을 수행해야 하므로 학습 시간이 오래 걸리고, 2. 실패가 발생하면 안되는 환경에는 적용하기 어렵기 때문에, 강화학습의 경우 주로 시뮬레이션을 통해 학습 및 성능을 검증한다.
OpenAI GYM
Atari
Mujoco
GTA 5
Super Mario
Malmo
3D 및 2D 비디오 게임의 개발 환경을 제공하는 게임 엔진
물리법칙 구현
다양한 3D 모델 및 기능 구매 가능
비교적 간단하게 환경 제작이 가능
에이전트는 특정 상태에서 행동을 취하고, 이를 환경에 전달한다.
환경은 에이전트의 행동에 따른 다음 상태와 보상을 에이전트에게 전달한다.
이때 에이전트의 행동은 강화학습 알고리즘에 따라 결정되고, 환경은 유니티를 이용하여 C#으로 코드를 구성한다.
에이전트는 Python으로, 환경은 C#으로 코드가 구성되는데, 에이전트와 환경의 원활한 통신을 위해 만들어진 것이 machine learning agents이다.