2025-11-22T09:37:22.788326

Foragax: An Agent-Based Modelling Framework Based on JAX

Chaturvedi, El-Gazzar, van Gerven
Foraging for resources is a ubiquitous activity conducted by living organisms in a shared environment to maintain their homeostasis. Modelling multi-agent foraging in-silico allows us to study both individual and collective emergent behaviour in a tractable manner. Agent-based modelling has proven to be effective in simulating such tasks, though scaling the simulations to accommodate large numbers of agents with complex dynamics remains challenging. In this work, we present Foragax, a general-purpose, scalable, hardware-accelerated, multi-agent foraging toolkit. Leveraging the JAX library, our toolkit can simulate thousands of agents foraging in a common environment, in an end-to-end vectorized and differentiable manner. The toolkit provides agent-based modelling tools to model various foraging tasks, including options to design custom spatial and temporal agent dynamics, control policies, sensor models, and boundary conditions. Further, the number of agents during such simulations can be increased or decreased based on custom rules. While applied to foraging, the toolkit can also be used to model and simulate a wide range of other multi-agent scenarios.
academic

Foragax: JAX 기반 에이전트 기반 모델링 프레임워크

기본 정보

초록

채식은 공유 환경에서 항상성을 유지하기 위해 생물체가 수행하는 보편적인 활동입니다. 컴퓨터 모델링을 통해 다중 에이전트 채식 행동을 시뮬레이션하면 개별 및 집단 창발 행동을 다루기 쉬운 방식으로 연구할 수 있습니다. 에이전트 모델링은 이러한 작업을 시뮬레이션하는 데 효과적임이 입증되었지만, 복잡한 동역학을 가진 많은 수의 에이전트를 수용하도록 시뮬레이션을 확장하는 것은 여전히 도전적입니다. 본 논문은 범용적이고 확장 가능하며 하드웨어 가속화된 다중 에이전트 채식 도구 모음인 Foragax를 제시합니다. JAX 라이브러리를 활용하여, 이 도구 모음은 공통 환경에서 수천 개의 에이전트의 채식 행동을 종단 간 벡터화 및 미분 가능한 방식으로 시뮬레이션할 수 있습니다. 이 도구 모음은 자정의 공간 및 시간 에이전트 동역학, 제어 전략, 센서 모델 및 경계 조건을 설계하는 옵션을 포함하여 다양한 채식 작업을 모델링하기 위한 에이전트 모델링 도구를 제공합니다. 또한 시뮬레이션 중에 사용자 정의 규칙에 따라 에이전트를 추가하거나 제거할 수 있습니다. 채식에 적용되지만, 이 도구 모음은 광범위한 다른 다중 에이전트 시나리오의 모델링 및 시뮬레이션에도 사용될 수 있습니다.

연구 배경 및 동기

문제 정의

채식은 모든 생물체가 생존하기 위해 해결해야 하는 가장 오래되고 중요한 행동 최적화 문제 중 하나입니다. 가장 단순한 박테리아에서 고도로 사회화된 영장류에 이르기까지, 효율적인 채식의 본능은 진화의 모든 단계에서 널리 퍼져 있습니다. 자연에서의 채식은 본질적으로 다중 에이전트 활동입니다. 인접한 생물체가 동일한 채식 환경을 공유하기 때문입니다.

기존 방법의 한계

  1. 확장성 문제: 기존의 에이전트 모델링 방법은 많은 수의 에이전트를 처리할 때 계산 병목 현상에 직면합니다
  2. 생물학적 현실성 부족: 기존 시뮬레이션에서 에이전트 수의 제한으로 인해 자연에서 관찰되는 채식 행동과의 불일치가 발생합니다
  3. 계산 복잡성: 각 에이전트의 상태는 다른 모든 에이전트의 행동에 의존하므로, 에이전트 수가 증가함에 따라 시뮬레이션이 극도로 어려워집니다

연구 동기

저자들은 채식 작업 모델러에게 단일 환경에서 동시에 많은 수(수천 개)의 에이전트를 시뮬레이션할 수 있는 능력을 제공하고자 합니다. 이러한 대규모 시뮬레이션 능력은 복잡한 집단 행동의 창발를 이해하는 데 중요하며, 이론 연구와 자연 관찰 사이의 격차를 좁힐 수 있습니다.

핵심 기여

  1. Foragax 프레임워크 제시: JAX 기반의 범용적이고 확장 가능하며 하드웨어 가속화된 다중 에이전트 채식 모델링 도구 모음
  2. 대규모 병렬 시뮬레이션 구현: 종단 간 벡터화 방법을 통해 수천 개의 에이전트를 시뮬레이션할 수 있음
  3. 유연한 모델링 인터페이스 제공: 자정의 공간 및 시간 동역학, 제어 전략, 센서 모델 및 경계 조건 지원
  4. 동적 에이전트 관리 지원: 시뮬레이션 중에 사용자 정의 규칙에 따라 에이전트 추가 또는 제거 가능
  5. 비에피소드 연속 시뮬레이션 구현: 환경 및 에이전트 상태를 재설정하지 않는 장기 시뮬레이션 지원

방법론 상세 설명

작업 정의

Foragax는 공통 환경에서 많은 수의 에이전트의 채식 행동을 시뮬레이션하면서 항상성을 유지하는 데 중점을 둡니다. 작업의 특징은 다음과 같습니다:

  • 입력: 에이전트 초기 상태, 환경 구성, 자원 분포
  • 출력: 에이전트 행동 궤적, 집단 창발 행동 패턴
  • 제약: 자원 제한성, 에이전트 간 상호작용, 환경 경계 조건

프레임워크 아키텍처

Foragax는 5개의 주요 추상화 계층의 클래스 설계를 기반으로 합니다:

1. Policy(정책)

  • 상태 변수 및 매개변수 집합으로 표현됨
  • 환경에서 에이전트 행동을 생성하는 데 사용됨
  • 여러 모델 지원: Wilson-Cowan 모델, 순환 신경망, 다층 퍼셉트론
  • 결정론적 또는 확률적 특성으로 모델링 가능

2. Agent(에이전트)

  • 상태 변수 및 매개변수 집합으로 표현됨
  • 자정의 시간 및 공간 동역학 지원
  • 고유 인덱스 및 활성 상태 유지(1은 활성, 0은 비활성)
  • 동역학은 정책에 의해 조작될 수 있음

3. Agent-set(에이전트 집합)

  • 에이전트의 집합 표현
  • 모든 에이전트는 동일한 상태 변수, 매개변수 및 정책 구조를 공유
  • 선택, 정렬, 추가 또는 삭제 에이전트 작업 지원
  • 0 패딩을 통해 데이터 구조 형태를 일정하게 유지하여 JAX의 JIT 및 자동 벡터화 특성 유지

4. Learning Algorithms(학습 알고리즘)

  • 정책 및 에이전트 매개변수를 조정하기 위한 알고리즘 집합 제공
  • 현재 구현은 기울기 없는 신경진화 방법 기반
  • 기울기 기반 강화학습 방법으로의 확장 계획

5. Tasks(작업)

  • 자정의 경계 조건 및 벽 배치를 가진 채식 환경 설계 허용
  • 광선 투사 알고리즘을 기반으로 충돌 감지 수행

기술 혁신 포인트

1. JAX 백엔드 최적화

  • JAX의 적시 컴파일(JIT) 및 자동 벡터화(AV) 활용
  • 종단 간 벡터화 및 미분 가능 계산 구현
  • 하드웨어 가속(GPU/TPU) 지원

2. 0 패딩 전략

  • 최대 크기의 데이터 구조를 미리 할당하여
  • 0 패딩을 사용하여 일정한 형태 유지
  • 에이전트 집합 작업에서 JAX 최적화 특성 유지

3. 연속 비에피소드 시뮬레이션

  • 환경 및 에이전트 상태를 재설정하지 않음
  • 종 규모 변동 지원
  • 개방형 적응 행동의 창발 촉진

실험 설정

실험 구성

  • 에이전트 수: 1,000개 에이전트
  • 신경망 규모: 각 에이전트당 50개 뉴런의 속도 기반 신경 집단 모델
  • 자원 수: 300개 자원 패치
  • 시뮬레이션 단계: 100만 단계
  • 계산 플랫폼: 클러스터 컴퓨터

동역학 모델

자원 동역학

자원 가치는 Lotka-Volterra 동역학을 따릅니다:

ṡn = ϵsn - αs²n - Σ w(xn, xm)

여기서:

  • ϵ 및 α는 각각 자원의 성장 및 감소율
  • w(xn, xm)은 n번째 자원 위치 xn과 m번째 에이전트 위치 xm 사이의 거리에 반비례하는 함수

에이전트 운동 모델

에이전트 위치 및 속도는 이중 적분기 모델을 채택합니다:

q̇m = [0 1; 0 0]qm + [0; 1]um

여기서:

  • qm = xm, ẋmᵀ는 에이전트 상태 벡터
  • um ∈ ℝ는 가속도 입력
  • 가속도는 50개 뉴런의 순환 신경망에서 선형으로 읽은 평균값에 의해 결정됨

실험 결과

주요 결과

  • 계산 효율성: 1,000개 에이전트, 300개 자원, 100만 단계의 시뮬레이션이 40분 내에 완료됨
  • 확장성 검증: 600개 자원 중 600개 에이전트의 채식 행동을 성공적으로 시연
  • 시스템 안정성: 시뮬레이션 중 에이전트 및 자원의 공간 분포가 합리적으로 유지됨

성능 표현

실험 결과는 Foragax가 다음을 수행할 수 있음을 보여줍니다:

  1. 대규모 다중 에이전트 시뮬레이션을 효율적으로 처리
  2. 실시간 성능 요구사항 유지
  3. 생물학적으로 합리적인 채식 행동 패턴 생성

시각화 결과

논문은 600개 자원(빨간색 점) 중에 분산된 채식을 하는 600개 에이전트(파란색 점)의 시각화를 제공하며, 화살표는 에이전트 방향을 나타내고 시스템의 공간 조직 특성을 보여줍니다.

관련 연구

에이전트 모델링 프레임워크

  • Agents.jl: 고성능, 기능이 풍부한 에이전트 모델링 소프트웨어
  • Mesa: Python의 에이전트 모델링 프레임워크
  • 기존 프레임워크는 대규모 시뮬레이션에서 성능 병목 현상 존재

채식 이론 연구

  • 단순 박테리아에서 복잡한 영장류까지의 채식 행동 연구
  • 최적 채식 이론의 발전
  • 내부 에너지 저장소가 보상 반응성에 미치는 영향 연구

다중 에이전트 시스템 응용

  • 질병 전파 모델링
  • 군집 행동 시뮬레이션
  • 스케줄링 최적화 문제

결론 및 논의

주요 결론

  1. Foragax는 대규모 다중 에이전트 채식 행동의 효율적인 시뮬레이션을 성공적으로 구현했습니다
  2. JAX 백엔드는 계산 성능 및 확장성을 크게 향상시켰습니다
  3. 프레임워크는 다양한 채식 시나리오를 모델링할 수 있는 충분한 유연성을 제공합니다
  4. 연속 비에피소드 시뮬레이션은 흥미로운 창발 행동을 드러낼 수 있습니다

한계

  1. 사전 할당 제한: 데이터 구조의 최대 크기를 미리 알아야 함
  2. 메모리 소비: 0 패딩 전략으로 인해 메모리 사용 효율이 낮을 수 있음
  3. 알고리즘 범위: 현재 주로 신경진화 알고리즘을 지원하며, 강화학습 지원은 개선 필요
  4. 검증 부족: 실제 생물 채식 행동과의 정량적 비교 부족

향후 방향

  1. 기울기 기반 강화학습 알고리즘으로 확장
  2. 메모리 사용 효율 개선
  3. 더 많은 생물학적 현실성 검증 추가
  4. 더 풍부한 분석 도구 개발

심층 평가

장점

  1. 기술 혁신성 강함: JAX의 고성능 계산 능력을 다중 에이전트 모델링 분야에 도입
  2. 실용 가치 높음: 대규모 에이전트 시뮬레이션의 핵심 병목 문제 해결
  3. 설계 합리적: 5계층 추상화 아키텍처가 명확하고 확장 및 사용이 용이
  4. 성능 우수: 기능성을 유지하면서 현저한 성능 향상 달성

부족한 점

  1. 실험 검증 제한적: 주로 기술 가능성을 시연하고 심층적인 행동 분석 부족
  2. 생물학적 검증 부족: 실제 채식 행동과의 정량적 비교 미실시
  3. 이론적 기여 제한적: 주로 공학적 구현이며 이론적 혁신은 상대적으로 적음
  4. 문서 상세도 부족: 일부 기술 세부사항 설명이 충분하지 않음

영향력

  1. 분야 기여: 다중 에이전트 시스템 연구에 강력한 계산 도구 제공
  2. 실용 가치: 더 큰 규모, 더 복잡한 생태학 및 행동학 연구 지원 가능
  3. 재현성: 오픈소스 코드는 연구의 재현성 및 확장성 향상
  4. 학제 간 응용: 채식에 중점을 두지만 다른 다중 에이전트 시나리오로 확장 가능

적용 시나리오

  1. 생태학 연구: 대규모 동물 채식 행동 모델링
  2. 진화 생물학: 군집 진화 동역학 연구
  3. 인공지능: 다중 에이전트 강화학습 알고리즘 테스트
  4. 복잡 시스템: 창발 행동 및 자기 조직 현상 연구
  5. 사회과학: 대규모 사회 동역학 모델링

참고문헌

논문은 여러 중요 분야의 핵심 문헌을 인용하고 있습니다:

  • JAX 라이브러리의 기술 문서
  • 채식 이론의 고전 저작(Stephens & Krebs, 1986)
  • 기존 에이전트 모델링 프레임워크(Agents.jl, Mesa)
  • 신경진화 및 강화학습의 최신 진전

종합 평가: 이는 현대 고성능 계산 기술과 다중 에이전트 모델링을 결합하여 해당 분야의 중요한 기술 병목을 해결한 고품질의 시스템 논문입니다. 이론적 혁신 측면에서는 상대적으로 제한적이지만, 공학적 가치와 실용성으로 인해 다중 에이전트 시스템 연구에 중요한 기여가 됩니다.