강화 학습

심층 강화 학습은 머신 러닝의 한 분야로, 로봇 및 자율 시스템과 같은 복잡한 시스템의 컨트롤러와 의사 결정 알고리즘을 구현할 수 있습니다. 심층 강화 학습을 사용하여, 시뮬레이션 모델에서 동적으로 생성된 데이터로 심층 신경망을 훈련시켜서 복잡한 동작을 학습하는 심층 신경망을 구현할 수 있습니다. 이를 위해 레이블 지정이 되었거나 되지 않은, 미리 정의된 훈련 데이터셋이 필요하지 않습니다. 제어하려는 상호 작용 중인 환경을 나타내는 시뮬레이션 모델만 있으면 됩니다.

MATLAB®과 Simulink®는 강화 학습 기반 컨트롤러를 설계하고 배포하는 전체 워크플로를 지원합니다. 다음을 수행할 수 있습니다.

  • 간단한 제어 시스템, 자율 시스템 및 로봇 예제를 사용하여 강화 학습 시작하기
  • 약간의 코드 변경만으로 널리 사용되는 여러 강화 학습 알고리즘을 빠르게 전환하고, 평가하고, 비교하기
  • 심층 신경망을 사용하여 이미지, 비디오 및 센서 데이터를 바탕으로 복잡한 강화 학습 정책 정의하기
  • 로컬 코어 또는 클라우드를 사용하여 여러 시뮬레이션을 병렬로 실행하여 정책을 더 빨리 훈련시키기
  • 임베디드 기기에 강화 학습 컨트롤러 배포하기

강화 학습 에이전트

강화 학습 에이전트는 입력 상태에서 출력 동작으로 매핑을 수행하는 정책과 이 정책의 업데이트를 담당하는 알고리즘으로 구성됩니다. 널리 사용되는 알고리즘 예로 Deep Q-Network, Actor Critic, Deep Deterministic Policy Gradients를 들 수 있습니다. 알고리즘은 환경에 의해 제공되는 장기 보상 신호가 극대화되도록 정책을 업데이트합니다.

정책은 심층 신경망, 다항식 및 룩업 테이블로 표현할 수 있습니다. 그런 다음 내장 사용자 지정 에이전트를 MATLAB 객체 또는 Simulink 블록으로 구현할 수 있습니다.

자세히 알아보기

MATLAB 및 Simulink에서의 환경 모델링

에이전트는 주변 환경과 상호 작용하므로 강화 학습 알고리즘을 사용하여 훈련시키는 것은 동적인 과정입니다. 로봇 및 자율 시스템과 같은 활용 분야의 경우 실세계에서 실제 하드웨어로 훈련을 수행하려면 비용이 많이 들고 위험할 수 있습니다. 따라서 강화 학습에서는 시뮬레이션을 통해 데이터를 생성하는 환경의 가상 모델이 선호됩니다.

MATLAB과 Simulink에서 시스템 역학, 에이전트의 동작에 따라 시스템이 영향을 받는 방식, 그리고 수행된 동작의 적합도를 평가하는 보상을 설명하는 환경 모델을 빌드할 수 있습니다. 이러한 모델은 연속 또는 이산일 수 있으며, 여러 정확도 수준으로 시스템을 표현할 수 있습니다. 시뮬레이션을 병렬 실행하여 훈련 속도를 높일 수도 있습니다. 경우에 따라 시스템의 기존 MATLAB 및 Simulink 모델을 약간만 수정하여 강화 학습용으로 재사용할 수 있습니다.

자세히 알아보기

예제 및 참조 활용 분야

도립 진자 균형 조정, 그리드-월드 문제 탐색, Cart-pole 시스템 균형 조정과 같은 문제를 위한 컨트롤러를 구현하여 강화 학습을 시작하십시오. 자율 주행 차량의 적응형 주행 제어 시스템과 차선 유지 지원 시스템을 설계할 수도 있습니다. 강화 학습은 궤도 계획과 같은 로봇 활용 분야와 보행과 같은 동작 학습에도 사용할 수 있습니다.

자세히 알아보기