BrainCraft Challenge: 뇌과학에서 영감을 받은 미니 브레인(mini-brain) 만들기 챌린지

BrainCraft Challenge소개

BrainCraft Challenge 프로젝트는 계산 신경과학의 다양한 뇌 구조 모델들을 실제 ‘작동하는 작은 두뇌(mini-brain)’로 발전시키려는 시도에서 출발했습니다. 지금까지 많은 연구자들이 해마, 기저핵, 시상, 전두엽과 같은 뇌 부위의 특정 기능을 모델링해 왔습니다. 예를 들어, 기저핵은 의사결정, 해마는 공간 탐색과 기억, 시각 피질은 시각 처리와 연결됩니다. 그러나 이러한 모델은 대부분 추상적이고 단순화되어 있어 실제 환경에서 에이전트를 제어하는 데에는 한계가 있었습니다.

BrainCraft Challenge는 바로 이 간극을 메우려는 실험적 플랫폼입니다. 참가자들은 생물학적으로 영감을 받은 신경망을 설계해 간단한 의사결정 문제를 해결하는 에이전트를 만드는 것이 목표입니다. 이 에이전트는 연속적이고 단순한 환경에서 에너지원을 찾아내 생존을 유지해야 하며, 이를 위해 신경망이 감각과 운동 제어를 통합적으로 수행해야 합니다. 단순해 보이지만, 이 문제는 신경과학 모델이 실제 embodied cognition(체화된 인지)을 구현할 수 있는지를 검증하는 의미 있는 시험대가 됩니다.

이 프로젝트가 중요한 이유는 단순히 성능이 좋은 AI를 만드는 것이 아니라, 신경과학적 원리를 활용하여 ‘작동 가능한 뇌 모델’을 탐구하는 데 있습니다. 강화학습, 진화 알고리즘, 비지도 학습 등 다양한 접근법을 동일한 환경에서 시험할 수 있으며, 그 과정에서 생물학적 신경망의 유용성과 한계를 동시에 살펴볼 수 있습니다.

BrainCraft는 일반적인 강화학습 환경(OpenAI Gym, DeepMind Control Suite 등)과는 성격이 다릅니다. 기존 환경은 주로 딥러닝 기반의 신경망이 고성능 GPU 자원을 활용하여 수십만 에피소드 동안 학습하는 것을 전제로 하지만, BrainCraft는 100초라는 제한된 학습 시간 안에서 동작 가능한 신경망을 만들어야 합니다. 또한 사용되는 신경망은 Leaky Rate Unit 기반의 단순한 구조(에코 상태 네트워크 유사)로 제한되어 있어, 복잡한 딥러닝 아키텍처보다는 신경과학적 직관과 단순한 수학적 모델링이 더 중요합니다. 이 점에서 BrainCraft는 “AI 성능 최적화”보다는 “신경과학적 설명력”에 방점을 두고 있다고 볼 수 있습니다.

BrainCraft Model Architecture

BrainCraft의 모델은 다음과 같은 구조를 가집니다:

  • 입력층(Input layer) → 은닉층(Leaky rate neurons, 최대 1000개) → 출력층(Output)
  • 출력은 매 시점에서 에이전트의 진행 방향을 -5° ~ +5° 범위 내에서 조정합니다.
  • 수식은 에코 상태 네트워크(ESN; Echo State Network)와 유사하며, 입력 행렬(Win), 은닉 가중치(W), 출력 가중치(Wout), 누출 비율(λ), 활성화 함수(f, g)로 정의됩니다.

BrainCraft Challenge의 주요 내용

  • 챌린지 개요: BrainCraft Challenge는 다섯 가지 과제로 구성되어 있으며, 각 과제는 두 달 동안 진행됩니다. 2025년 7월 시작된 첫 번째 과제(Simple decision)는 현재 활성화 상태이며, 9월부터는 두 번째 과제(Cued decision)가 시작됩니다. 과제가 진행될수록 환경은 점점 더 복잡해지고, 단순한 탐색에서 색깔 단서 해석까지 요구됩니다.

  • Task 1: Simple Decision: 첫 번째 과제에서는 10x10 크기의 미로 환경에서 에너지원이 두 곳 중 한 곳에 무작위로 배치됩니다. 에이전트는 센서 정보를 기반으로 두 곳을 탐색하고, 실제 에너지원이 있는 위치를 찾아내 효율적으로 이동해야 합니다. 이 과정에서 단순히 무작위 탐색만으로는 성능이 낮게 나오므로, 신경망이 환경을 기억하고 전략적으로 이동해야 합니다.

    ┌─────────────────┐
    │                 │
    │   ┌──┐   ┌──┐   │  ▲ :   Bot start position & orientation (up)
    │   │  │   │  │   │  1/2 : Potential energy source location
    │ 1 │  │ ▲ │  │ 2 │         (one or the other)
    │   │  │   │  │   │
    │   └──┘   └──┘   │
    │                 │
    └─────────────────┘
    
  • Task 2: Cued Decision: 두 번째 과제에서는 환경에 파란색(열린 길)과 빨간색(막힌 길) 단서가 추가됩니다. 두 개의 에너지원이 모두 존재하지만, 빨간색 경로는 막혀 있어 실제로 접근할 수 없습니다. 최적의 전략은 처음부터 파란색 단서를 따라가고, 이후 등장하는 방해 단서(추가 파란색 블록)는 무시하는 것입니다. 이는 단순한 공간 탐색을 넘어 단서 기반의 의사결정을 요구합니다.

    ┌─────────────────┐
    │                 │
    │   ┌──┐   ┌──┐   │  ▲ :   Bot start position & orientation (up)
    │   │BB│   │RR│   │  1/2 : Potential energy source location
    │ 1 │  │ ▲ │  │ 2 │  B: Blue block
    │   │  │   │BB└───┤  R: Red block
    │   └──┘   └──────┤
    │                 │
    └─────────────────┘
    

BrainCraft Challenge의 평가 방식

모델 평가는 **훈련(Training)**과 테스트(Testing) 두 단계로 이루어집니다.

  • 훈련 단계는 100초 동안 주어진 알고리즘으로 신경망을 학습해야 하며, 외부 데이터셋이나 사전 학습 모델은 사용할 수 없습니다.
  • 테스트 단계에서는 학습된 신경망만으로 10번의 시뮬레이션을 수행하고, 이동 거리의 평균값을 점수로 산출합니다.

코드와 디버깅

참가자들은 Bot 클래스와 Environment 클래스를 활용해 모델을 개발할 수 있습니다. Bot은 카메라 센서(64개 거리 센서), 충돌 센서, 에너지 게이지 등을 제공하며, 학습 중에는 내부 상태를 읽고 수정할 수 있습니다. 디버깅 모드를 활용하면 에이전트의 움직임과 센서 입력을 시각적으로 확인할 수도 있습니다.

리더보드 현황

현재 첫 번째 과제(Simple decision)에서는 여러 참가자가 다양한 방법으로 모델을 제출했습니다. 현재까지의 리더보드 현황은 아래와 같습니다:

Author Date File Score Seed Description
@rougier 07/06/2025 manual.py 15.00 (single run) None Manual player (reference)
@rougier 24/07/2025 random.py 1.46 ± 0.54 12345 Stupid random bot
@tjayada 31/07/2025 evolution.py 12.70 ± 0.43 78 Genetic algorithm
@vforch 21/08/2025 simple.py 13.71 ± 0.46 78 Handcrafted weights 1
@snowgoon88 28/08/2025 switcher.py 11.39 ± 3.56 78 Handcrafted weights 2
@vforch, @snowgoon88 31/08/2025 switcher_alt.py 14.71 ± 0.46 78 Handcrafted weights 3

각 File 컬럼을 눌러 코드를 확인하실 수 있으며, Pull Request의 Description 링크에서 각 방법에 대한 설명을 확인하실 수 있습니다.

라이선스

BrainCraft Challenge 프로젝트는 GPL-3.0 License로 공개 및 배포되고 있습니다. 누구나 복제, 배포, 수정이 가능하지만, 배포 시에는 동일한 라이선스를 유지해야 하고, 상업적 이용도 가능하되 소스코드 공개 의무가 따릅니다. 따라서 폐쇄 소프트웨어에 통합하거나 독점적으로 사용할 수는 없습니다.

:github: BrainCraft GitHub 저장소




이 글은 GPT 모델로 정리한 글을 바탕으로 한 것으로, 원문의 내용 또는 의도와 다르게 정리된 내용이 있을 수 있습니다. 관심있는 내용이시라면 원문도 함께 참고해주세요! 읽으시면서 어색하거나 잘못된 내용을 발견하시면 덧글로 알려주시기를 부탁드립니다. :hugs:

:pytorch:파이토치 한국 사용자 모임:south_korea:이 정리한 이 글이 유용하셨나요? 회원으로 가입하시면 주요 글들을 이메일:love_letter:로 보내드립니다! (기본은 Weekly지만 Daily로 변경도 가능합니다.)

:wrapped_gift: 아래:down_right_arrow:쪽에 좋아요:+1:를 눌러주시면 새로운 소식들을 정리하고 공유하는데 힘이 됩니다~ :star_struck: