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     Labyrinth 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
  2. Go through src/compass_labyrinth/compass/level_1/README.md and src/compass_labyrinth/compass/level_2/README.md for instructions on optimal model parameters. NOTE: Please test all and input all parameters to get optimal results.

Citation

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

Decoding hidden goal-directed navigational states and their neuronal representations using a novel labyrinth paradigm and probabilistic modeling framework. bioarxiv (2025)

Patrick S Honma*, Shreya C Bangera*, Reuben R Thomas, Nicholas Kaliss, Dan Xia, Jorge J Palop

doi: https://doi.org/10.1101/2025.11.13.688348

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.0.tar.gz (104.3 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.0-py3-none-any.whl (118.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: compass_labyrinth-0.1.0.tar.gz
  • Upload date:
  • Size: 104.3 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.0.tar.gz
Algorithm Hash digest
SHA256 c36c79f1899b5c30a57db1835939e205c2266549c2e0b0f122dc85ca199f7b51
MD5 417df7cd72495da4258719fb5f29f242
BLAKE2b-256 38b677ebb8b9245973f935729b4ab48d324cadee3edb12f6ece3fb83e0264537

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for compass_labyrinth-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 65e5123d641055eed8377228bf05f9eb7117607b0e4828eb2fcbb20c379bdacd
MD5 bd6263dadd2ddbf285da0cdd77597329
BLAKE2b-256 0141a2412889d5d0a87a9cf4fd1fa60fc4e6edec437c7f37c21e6e51f239c96c

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