MARS: Modular Agent with Reflective Search for Automated AI Research
Paper

MARS: Modular Agent with Reflective Search for Automated AI Research

Jaehyun Nam
2026.02.08
·Arxiv·by 이호민
#AI Research#Automated Research#LLM Agents#MCTS#Modular Design

핵심 포인트

  • 1현재 LLM 에이전트는 높은 평가 비용과 복잡한 코드베이스 관리 문제로 인해 Automated AI Research 분야에서 상당한 어려움을 겪고 있습니다.
  • 2MARS는 이러한 문제를 해결하기 위해 Budget-Aware Planning, Modular Construction, Comparative Reflective Memory를 도입하여 AI 연구에서 효율성과 모듈성을 최적화합니다.
  • 3MLE-Bench 평가에서 MARS는 오픈소스 프레임워크 중 최고 수준의 성능을 달성했으며, 통찰력의 효과적인 일반화를 통해 "Aha!" moments를 보여줍니다.

MARS (Modular Agent with Reflective Search)는 자동화된 AI 연구(Automated AI Research)의 고유한 도전 과제, 즉 계산 비용이 큰 평가(computationally expensive evaluation), 불투명한 성능 기여(opaque performance attribution), 그리고 모놀리식(monolithic) 스크립트 생성과 같은 문제를 해결하기 위해 고안된 프레임워크이다. MARS는 AI 연구 프로세스를 최적의 소프트웨어 repository를 탐색하는 과정으로 재정의하며, 세 가지 핵심 기둥을 기반으로 한다.

  1. Budget-Aware Planning (예산 인식 계획):
이 시스템은 비용 제약이 있는 몬테카를로 트리 탐색(Monte Carlo Tree Search, MCTS)을 사용하여 성능 최대화와 실행 비용(execution expense) 사이의 균형을 명시적으로 맞춘다. MARS는 고비용 솔루션을 페널티화하며, 효율성을 중시하여 주어진 예산 내에서 최적의 발견 속도(discovery rate)를 추구한다.
  • Actions and Expansion (행동 및 확장): MCTS 탐색 공간을 위한 세 가지 고유한 연산자를 정의한다:
    • Drafting (Root Expansion): 완전히 새로운 솔루션 snews_{new}를 처음부터 생성한다.
    • Improvement: 유효하고 실행 가능한 노드에 적용되며, 목표 함수 O를 최대화하기 위해 부모 노드 sparents_{parent}의 모듈과 메인 스크립트를 수정한다.
    • Debugging: 실행에 실패한 노드에 적용되며, 런타임 오류를 해결하기 위해 sparents_{parent}의 솔루션 구조를 상속하고 특정 모듈 또는 orchestration 스크립트를 수정한다. 버그가 있는 자식 노드는 최대 NdN_d번의 디버깅 시도를 통해 자동 디버깅 루프에 진입한다.
  • Node Selection (노드 선택): Upper Confidence Bound for Trees (UCT) 알고리즘을 사용하여 고성능 솔루션의 활용(exploitation)과 새로운 솔루션의 탐색(exploration) 사이의 균형을 맞춘다. 특정 조건(예: 자식이 없거나, 최적 솔루션이 nsn_s개의 유효 노드 이후에도 개선되지 않거나, 버그 노드 또는 NiN_i개 이상의 자식을 가진 유효 노드)에서 루트 노드가 완전히 확장된(fully expanded) 상태가 된다.
  • Efficiency-Guided Reward Function (효율성 기반 보상 함수): 검색을 효율적으로 안내하기 위해 성능 향상에 보상을 주고 긴 실행 시간에 페널티를 부과하는 보상 함수 R(v)R(v)를 설계한다. 노드 vv의 성능 지표 M(v)M(v)와 실행 시간 t(v)t(v), 시간 제한 L(v)L(v)를 고려한다.
먼저, 정규화된 전역 점수 G(v)G(v)는 다음과 같이 정의된다:
G(v):={0.5if Mmax=Mmin,M(v)MminMmaxMminotherwiseG(v) := \begin{cases} 0.5 & \text{if } M_{max} = M_{min}, \\ \frac{M(v) - M_{min}}{M_{max} - M_{min}} & \text{otherwise} \end{cases}
여기서 MmaxM_{max}MminM_{min}은 탐색된 노드 집합 V 내의 최대 및 최소 성능 지표이다.
그 다음, 효율성 기반 보상 R(v)R(v)는 다음 공식으로 계산된다:
R(v):=G(v)[t(v)/L(v)]wR(v) := G(v) \cdot [t(v)/L(v)]^w
여기서 ww는 페널티 가중치 하이퍼파라미터이다.

  1. Modular Construction (모듈식 구성):
모놀리식 스크립트 생성을 대체하여 "Design-Decompose-Implement" 파이프라인을 도입한다. 이는 복잡한 리서치 repository를 관리하며, 독립적이고 테스트 가능한 모듈로 솔루션을 구성한다. 이 접근 방식은 LLM 기반 코딩의 inherent한 한계(토큰 출력 한계, 낮은 정밀도, 낮은 재사용성, 어려운 테스트 가능성)를 극복한다.
  • Solution Representation (솔루션 표현): 노드 솔루션 sns_nll개의 독립적인 모듈 {Mj}j=1l\{M_j\}_{j=1}^l과 하나의 오케스트레이션(orchestration) 스크립트 πmain\pi_{main}으로 구성된 튜플로 정의된다: sn={Mj}j=1l,πmains_n = \langle \{M_j\}_{j=1}^l, \pi_{main} \rangle. 각 모듈 MjM_j는 특정 하위 작업(예: 데이터 전처리, 모델 구성)을 캡슐화하고, πmain\pi_{main}은 전체 파이프라인을 오케스트레이션한다.
  • Three-Stage Workflow (3단계 워크플로):
    • Idea Generation (아이디어 생성): Idea Generation Agent는 솔루션의 다양한 측면을 포괄하는 포괄적인 자연어 계획을 제시한다.
    • Module Decomposition (모듈 분해): Modular Agent는 계획을 파싱하고 솔루션을 논리적이고 독립적인 기능 모듈로 분해한다.
    • Component Implementation and Debugging (컴포넌트 구현 및 디버깅): Coding Agent는 각 모듈 MjM_j를 순차적으로 구현하고, validation 스크립트를 사용하여 기능을 디버깅하고 검증한다. 검증이 완료되면, agent는 메인 스크립트 πmain\pi_{main}을 통해 모듈들을 오케스트레이션한다.
  • Diff-Based Editing (Diff 기반 편집): 비효율적인 전체 repository 재생성을 방지하기 위해, 코드 수정은 표준화된 diff 형식으로 구조화된다. 이는 단일 추론 단계에서 원자적인(atomic), 다중 파일 업데이트를 가능하게 한다.
  1. Comparative Reflective Memory (비교 반사 기억):
신용 할당 문제(credit assignment problem)를 해결하기 위해, 현재 솔루션과 가장 잘 알려진 솔루션 간의 차이점을 분석하여 고신호(high-signal)의 원인 통찰력(causal insights)을 추출한다. 이는 표준 메모리 메커니즘이 제공할 수 없는 방식으로 성능 변화를 유도하는 특정 요소를 분리한다. Lesson Learning 메커니즘은 탐색 과정에서 얻은 고가치 통찰력을 압축된 'lesson pool'로 증류한다.
  • Solution Improvement Lessons (솔루션 개선 교훈): 유효한 솔루션에서 교훈을 합성하기 위한 2단계 프로세스를 사용한다. 첫째, Empirical Analysis Agent가 실행 로그를 검토하여 객관적인 결과(예: 손실 추세, 지표 유효성)를 추출한다. 둘째, Lesson Distillation Agent가 새로운 솔루션을 현재 최적의 솔루션과 비교하여, 알고리즘 변경사항, 영향 분석, 그리고 미래 반복을 위한 일반화된 규칙을 포함하는 구조화된 교훈을 증류한다.
  • Debugging Lessons (디버깅 교훈): 실패한 실행의 경우, 전용 에이전트가 버그가 있는 코드, 오류 로그 및 적용된 수정을 분석한다. 이 에이전트는 수정의 효능을 확인하고, 실패 원인 로직을 설명하며, 유사한 오류를 사전에 식별하기 위한 지침을 제공하는 교훈을 출력한다.
  • Lesson Management (교훈 관리): Review Agent가 LLM 기반 추론을 통해 새 교훈을 기존 풀과 비교하여 중복되는 통찰력을 필터링함으로써, 검색된 컨텍스트가 다양하고 관련성을 유지하도록 보장한다.
  • Lesson Utilization (교훈 활용): 솔루션 개선 또는 디버깅 작업을 실행할 때, 에이전트는 해당 교훈 범주에서 관련 지식을 활용한다. 컨텍스트 관리를 위해 에이전트 메모리에는 가장 최근의 KmK_m개 교훈이 유지되며, 에이전트는 교훈을 적용할 때 명시적으로 인용하도록 지시받는다.

이러한 세 가지 기둥을 통해 MARS는 MLE-Bench에서 오픈소스 프레임워크 중 최신 기술(state-of-the-art) 성능을 달성했으며, 각 제안된 메커니즘의 필요성을 검증하는 ablation study를 통해 그 효과가 입증되었다. 시스템은 또한 "Aha!" 순간과 같은 질적 발견을 보여주며, 이는 에이전트가 검색 경로 전반에 걸쳐 통찰력을 효과적으로 일반화함을 시사한다.