FilippoAiraldi/mpc-reinforcement-learning

Reinforcement Learning with Model Predictive Control

해결하는 문제

이 라이브러리는 모델 예측 제어(MPC)를 함수 근사로 사용하여 모델 기반 강화 학습(RL) 에이전트를 훈련하는 프레임워크를 제공합니다. MPC가 미래 환경 행동을 예측하고 최적의 행동을 계산하는 능력과 RL이 알 수 없는 복잡한 환경에 적응할 수 있는 유연성을 결합함으로써, 기저 동역학이나 비용이 완전히 알려지지 않은 시스템에서도 최적의 제어 정책을 학습할 수 있습니다.

작동 방식

이 프레임워크는 목적 함수, 예측 모델, 제약 조건을 파라미터화한 MPC 컨트롤러를 사용합니다. 이 컨트롤러는 행동을 생성하는 정책 제공자로서뿐만 아니라 상태 및 상태-행동 가치 함수의 함수 근사기로도 작동합니다. 이후 Q-러닝이나 결정론적 정책 기울기(DPG)와 같은 RL 알고리즘을 사용하여 이러한 MPC 파라미터를 조정하여 성능을 향상시킵니다. 라이브러리는 csnlp를 활용하여 MPC 컨트롤러의 파라미터에 대한 민감도를 계산하며, 이는 RL 업데이트를 계산하는 데 필수적입니다.

대상 사용자

특히 물리적 또는 시뮬레이션된 시스템(예: 선형 시간 불변 시스템)에서 연속적인 상태 및 행동 공간을 다루는 최적 제어 및 강화 학습 분야의 연구자 및 엔지니어에게 적합합니다.

주요 특징

  • 하이브리드 접근법: MPC와 RL을 하나의 데이터 기반 제어 기법으로 통합.
  • 다양한 RL 알고리즘: 온폴리시 및 오프폴리시 Q-러닝, DPG와 같은 기울기 기반 방법과 베이지안 최적화와 같은 기울기 자유 방법을 지원.
  • 통합성: gymnasium 환경과 호환되며, csnlp를 사용하여 민감도 분석을 수행.
  • 파라미터화된 제어: RL 학습 에이전트를 통해 예측 모델, 목적 함수, 제약 조건을 조정 가능.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • Dispatch
  • 프로젝트