infer-actively/pymdp

A Python implementation of active inference for Markov Decision Processes

해결하는 문제

pymdp는 활동적 인퍼런스(Active Inference)라는 지능 이론적 접근을 사용하는 에이전트의 시뮬레이션 프레임워크를 제공합니다. 활동적 인퍼런스는 에이전트가 예측 불가능성(변분 자유 에너지)을 최소화하기 위해 행동하는 이론입니다. 특히 이는 이산 상태 공간의 마르코프 결정 과정(MDP) 환경에서 환경에 대한 학습(인지적 가치)과 보상 최대화를 동시에 달성할 수 있는 에이전트를 만드는 도전 과제를 해결합니다.

작동 방식

이 라이브러리는 NumPy와 JAX를 사용하여 Python에서 활동적 인퍼런스의 수학적 연산을 구현합니다. 사용자는 세계에 대한 내부 모델(관측 행렬 A, 전이 행렬 B, 선호 행렬 C로 구성)을 정의한 후, 에이전트가 환경과 상호작용하는 모습을 시뮬레이션할 수 있습니다. 에이전트는 현재 상태를 추론한 후, 예상 자유 에너지를 최소화하는 행동을 선택하기 위해 정책을 추론합니다.

대상 사용자

이 도구는 인지 과학, 계산 신경과학, 그리고 탐구심 기반 탐색과 목표 지향적 행동을 보이는 AI 에이전트에 관심이 있는 연구자 및 개발자에게 적합합니다.

주요 특징

  • 인지적 동기: 명시적인 보상 설계 없이도 불확실성을 줄이기 위해 정보를 탐색하는(탐구심) 에이전트가 자연스럽게 작동합니다.
  • JAX 기반: 고성능 계산을 지원하며, 효율적인 시뮬레이션을 위한 JAX 최적화 구현을 제공합니다.
  • 검증 완료: 저수준 수학 연산은 SPM MATLAB 구현과 비교하여 벤치마킹 및 검증되었습니다.
  • 이산 상태 공간 전용: 이산 상태 공간에서의 활동적 인퍼런스에 특별히 최적화되어 있습니다.

관련

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