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.
Key Features
-
Naturalistic Maze Framework: A Novel Labyrinth maze paradigm that elicits spontaneous, intrinsically motivated, and untrained navigation behavior in rodents, closely mimicking real-world foraging.
-
CoMPASS: A Hierarchical Probabilistic Framework integrating local movement dynamics with goal-directed cognitive states.
-
Latent State Inference: Identification of fine-grained cognitive states that underlie navigation strategies, beyond what is captured by task performance alone.
-
Neural-Behavioral Integration: Linking probabilistically inferred behavioral states with neural oscillatory signatures, reflecting how internal cognitive processes manifest in circuit-level dynamics.
-
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
Installation
You can install CoMPASS-Labyrinth directly with pip:
pip install compass-labyrinth
or from source for development:
git clone https://github.com/CoMPASS-Framework/CoMPASS-Labyrinth.git
cd CoMPASS-Labyrinth
# Core dependencies only
pip install -e .
# Or with development tools
pip install -e ".[dev]"
# Or with documentation tools
pip install -e ".[docs]"
# Or install all optional dependencies
pip install -e ".[dev,tests,docs]"
You can also use Conda to manage your environment:
conda env create -f environment.yml
conda activate compass-labyrinth
Usage
-
See individual README.md files within src\compass-labyrinth for detailed instructions for descriptions of individual modules and code elements.
-
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.
-
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
- Test datasets present in tests/assests
- 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.
Documentation
Documentation and package details can be found here: CoMPASS-Labyrinth
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
Metadata
Release files for compass-labyrinth 0.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| compass_labyrinth-0.2.0.tar.gz | 108.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| compass_labyrinth-0.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 229.8 kB
Release files / compass_labyrinth-0.2.0.tar.gz
| Download URL | compass_labyrinth-0.2.0.tar.gz |
|---|---|
| Size | 108.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
4eb06e42b02f2342ee94bb11062c8bdf6e55a7c1491a792426d8e6b765e5157f
|
|
BLAKE2b-256 checksum How to use checksums |
0649a524e5f1bf84c385e6a87c401d5c2b6caaa4c4fa771a7a1efdc30a5fe59b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.8
|
Release files / compass_labyrinth-0.2.0-py3-none-any.whl
| Download URL | compass_labyrinth-0.2.0-py3-none-any.whl |
|---|---|
| Size | 121.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7d1978100cc2b5679beb9b304dbe120259be3f4a7eb6682ddb50fa9f37c69813
|
|
BLAKE2b-256 checksum How to use checksums |
b5f8581a122c7d28ccf3d6271a44e5281c87b08b74f7d9b6e2ddee98c69f6fc2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.8
|