ML-Agents를 활용한 실전 예제 - MummyBasic(3/3)

MaxStep 설정

Agent에 추가한 MummyAgent의 MaxStep 속성은 에이전트가 한 에피소드(학습단위)내에서 무작위로 액션(이동)을 시도해보는 최대 횟수를 의미한다. 이 횟수동안 액션을 취했지만 아무런 보상이 없다면 더이상 학습의 의미가 없기에 에피소드를 종료하고 다시 시작한다. MaxStep의 수치는 환경의 복잡도에 따라서 가장 적절한 값을 찾아야 한다.

자세히 보기

ML-Agents를 활용한 실전 예제 - MummyBasic(2/3)

에에전트 구성

Agent에 추가할 스크립트를 작성해보자. 프로젝트 뷰의 02.Scripts 폴더에 C# 스크립트를 생성하고 MummyAgent로 스크립트 이름을 지정한다. 강화학습에 있어서 에이전트의 역할은 크게 다음과 같이 정의할 수 있다.

  • 주변 환경을 관측(Observations)
  • 정책에 의한 행동(Actions)
  • 보상(Reward)
자세히 보기

ML-Agents를 활용한 실전 예제 - MummyBasic(1/3)

프로젝트 개요

머신러닝(강화학습)이 처음이거나 막 공부를 시작한 유니티 개발자의 경우 유니티 ML-Agents 패키지를 설치하고나서 샘플 프로젝트를 바로 분석하기란 상당히 어렵다. 따라서, 본 포스팅에서 소개하는 프로젝트는 필자가 진행하는 오프라인 강의 내용으로서 ML-Agents의 기본적인 컴포넌트의 사용법과 훈련방법을 익힐 수 있도록 빈 프로젝트 부터 차근차근 진행하고자 한다.

제작할 프로젝트는 에이전트가 특정 타겟까지 이동해 취득하는 것을 간단한 학습하는 예제이다.

개발 환경설정

프로젝트를 진행하기 이전에 먼저 파이썬과 텐서플로 및 추가적인 파이썬 패키지가 설치되어야 한다. 아직 개발환경이 설정이 되지 않았다면 다음 문서를 참조해 자신에 맞는 개발 환경을 설정하고 진행한다.

자세히 보기

ML-Agent 설치 for macOS

유니티 머신러닝 에이전트(줄여서 ML-Agents)는 머신러닝, 특히 강화학습을 위한 툴킷으로 2017년에 처음 소개됐으며 정식 버전(Release 1)은 2020-04-30에 출시됐다.(2020-05-12 정식발표) 여러 베타 버전을 거치면서 사용법이 초기 버전과는 많이 변경되어 ML-Agents를 공부하는 입장에서는 상당히 곤욕스러웠다.

자세히 보기