Record/TIL

[Unity] ML-Agent 알고리즘 종류

석영 2024. 8. 1. 23:03
반응형

ML-Agent란?

Unity ML-Agents Toolkit은 Unity 엔진을 사용하는 게임 및 시뮬레이션 환경에서 인공지능(AI) 에이전트를 훈련하고 평가할 수 있도록 돕는 오픈 소스 도구이다. 이 툴킷은 강화 학습, 모니터링 및 시뮬레이션을 통해 다양한 AI 모델을 개발할 수 있는 기능을 제공한다. ML-Agents Toolkit을 사용하면 게임 캐릭터, 로봇, 자율주행 차량 등 다양한 에이전트를 훈련시키는 데 필요한 작업을 쉽게 수행할 수 있다.

 

 

ML-Agent 종류

 

1. Proximal Policy Optimization (PPO)

특징:

  • 정책 기반 알고리즘으로, 에이전트의 행동을 직접적으로 학습한다.
  • 단기 및 장기 목표를 균형 있게 학습한다.
  • 중요도 샘플링(Importance Sampling)을 통해 안정적인 학습을 보장한다.

사용 시나리오:

  • 복잡한 상태 공간을 가진 문제에서 적절한 성능을 발휘한다.
  • 환경이 동적일 때, 안정적인 학습을 요구할 때 유용하다.
  • 게임의 캐릭터 제어, 로봇의 조작 등에서 주로 사용된다.

2. Soft Actor-Critic (SAC)

특징:

  • 오프 폴리시 알고리즘으로, 과거의 경험을 활용하여 학습한다.
  • 정책과 가치 함수를 동시에 학습한다.
  • Entropy를 통해 탐색을 장려하며, 안정적인 학습을 지원한다.

사용 시나리오:

  • 연속적인 액션 공간을 가진 문제에 적합하다.
  • 높은 차원의 상태 공간과 연속적 행동이 필요한 환경에서 효과적이다.
  • 로봇 제어, 물리 시뮬레이션 등에서 많이 사용된다.

3. Deep Q-Network (DQN)

특징:

  • 값 기반 알고리즘으로, 상태-행동 값 함수(Q 함수)를 학습한다.
  • 딥 신경망을 사용하여 Q 값을 근사한다.
  • 경험 리플레이(Experience Replay)와 타겟 네트워크(Target Network)를 통해 학습의 안정성을 높인다.

사용 시나리오:

  • 디스크리트 액션 공간을 가진 환경에서 사용된다.
  • 간단한 게임 또는 시뮬레이션 환경에서 효과적이다.
  • Atari 게임과 같은 문제에서 성능을 발휘한다.

4. Multi-Agent Reinforcement Learning (MARL)

특징:

  • 다중 에이전트가 서로 상호작용하며 학습하는 방법이다.
  • 각 에이전트는 독립적이거나 협력적일 수 있다.
  • 상호작용 모델협력 모델을 적용할 수 있다.

사용 시나리오:

  • 팀워크나 경쟁을 기반으로 하는 복잡한 환경에서 유용하다.
  • 멀티플레이어 게임, 자율주행 차량 군집 제어 등에서 사용된다.

5. Curriculum Learning

특징:

  • 점진적 학습을 통해 에이전트가 점점 더 복잡한 태스크를 해결하도록 한다.
  • 초기에는 쉬운 문제부터 시작하여 점차 난이도를 높여간다.

사용 시나리오:

  • 학습이 어려운 환경에서 효과적이다.
  • 학습이 복잡한 태스크나 높은 난이도의 문제를 해결해야 할 때 사용된다.

요약

  • PPO: 안정적이고 일반적인 정책 기반 학습에 적합.
  • SAC: 연속적 행동 공간과 복잡한 상태 공간에서 유용.
  • DQN: 디스크리트 액션 공간에서 잘 작동.
  • MARL: 다중 에이전트가 상호작용하는 환경에 적합.
  • Curriculum Learning: 점진적인 학습이 필요한 복잡한 문제에서 사용.
반응형