Skip to main content

A unified computational and behavioral framework for analyzing goal-directed navigation in complex maze environments using hierarchical probabilistic models.

Project description

CoMPASS-Labyrinth

CoMPASS-Labyrinth is a unified computational and behavioral framework for analyzing goal-directed navigation in complex, ethologically valid maze environments using hierarchical probabilistic models. This project integrates behavioral modeling with neural data analysis to uncover latent cognitive states and their underlying neural dynamics during complex decision-making tasks.

CoMPASS Logo     Watch Demo     Maze Layout


Framework

Key Features

  1. Naturalistic Maze Framework: A Novel Labyrinth maze paradigm that elicits spontaneous, intrinsically motivated, and untrained navigation behavior in rodents, closely mimicking real-world foraging.

  2. CoMPASS: A Hierarchical Probabilistic Framework integrating local movement dynamics with goal-directed cognitive states.

  3. Latent State Inference: Identification of fine-grained cognitive states that underlie navigation strategies, beyond what is captured by task performance alone.

  4. Neural-Behavioral Integration: Linking probabilistically inferred behavioral states with neural oscillatory signatures, reflecting how internal cognitive processes manifest in circuit-level dynamics.

  5. Translational Relevance: Sensitive detection of early cognitive deficits in models of neurodegenerative disease (e.g., App-KI mice), with broader implications for human cognition, learning, and memory.

Prerequisites

  • Python 3.11 or higher
  • R version 4.4.0 or lower

Installation

Option A: Using Conda

  1. Clone the repository

    git clone https://github.com/CoMPASS-Framework/CoMPASS-Labyrinth.git
    cd CoMPASS-Labyrinth
    
  2. Create Python environment

    conda env create -f environment.yml
    conda activate compass-labyrinth
    

    This automatically installs the package with all dependencies from pyproject.toml.

  3. Initialize R environment

    Rscript init_renv.R
    

    This installs all required R packages using renv. First run may take several minutes.

Option B: Using pip with pyproject.toml

  1. Clone the repository

    git clone https://github.com/CoMPASS-Framework/CoMPASS-Labyrinth.git
    cd CoMPASS-Labyrinth
    
  2. Create Python virtual environment

    python -m venv venv
    source venv/bin/activate  # On Windows: venv\Scripts\activate
    
  3. Install the package with all dependencies

    pip install -e ".[dev]"  # Includes Jupyter and development tools
    # or
    pip install -e .  # Core dependencies only
    
  4. Initialize R environment

    Rscript init_renv.R
    

Notes on Dependency Management

  • Python packages: Managed via pyproject.toml
  • R packages: Managed via renv
  • When you start R in this directory, renv will automatically activate

Usage

  1. See individual README.md files within src\compass-labyrinth for detailed instructions for descriptions of individual modules and code elements.

  2. See tutorials for examples of running the code and instructions for usage. The tutorials have been numbered in order of usage and contain a description on the code and how to run it.

  3. Tutorials included:

  • 00_dlc_processing_template : Custom processing using DLC (outside of the compass-labyrinth env)
  • 01_create_project : Initialization of project and concatenating post-DLC results
  • 02_task_performance : Task performance metrics
  • 03_simulated_agent_modeling : Simulated Agent modeling
  • 04_compass_level_1 : CoMPASS Level 1 model
  • 05_compass_level_1_post_analysis : CoMPASS Level 1 post analysis
  • 06_compass_level_2 : CoMPASS Level 2 model

Workflow

  1. Test datasets present in tests/assests

Citation

If you use this framework, please cite the below manuscript:

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

compass_labyrinth-0.1.1.tar.gz (104.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

compass_labyrinth-0.1.1-py3-none-any.whl (118.4 kB view details)

Uploaded Python 3

File details

Details for the file compass_labyrinth-0.1.1.tar.gz.

File metadata

  • Download URL: compass_labyrinth-0.1.1.tar.gz
  • Upload date:
  • Size: 104.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.8

File hashes

Hashes for compass_labyrinth-0.1.1.tar.gz
Algorithm Hash digest
SHA256 21aa699bca3dda4a25bac65a376f8a60a968a2b40628358e920fd073e640840d
MD5 85f7d5feeef2ae5804b74a41709845ac
BLAKE2b-256 07508de3db31d29d07b862872c77899c0b4de7b979c6d3594d74a4aa1c5392cc

See more details on using hashes here.

File details

Details for the file compass_labyrinth-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for compass_labyrinth-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d725ed9ad6cd11947db352b843487b327948646a840a62c1e00b1f05f088a662
MD5 a7457f329cbfdb39e647f5d3a0f579fc
BLAKE2b-256 bb8c6fba96d7df785bf4c467784ffeb3c97483d9bea9030553f8963f60ff05d5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page