Skip to content

altoslabs/isrmm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

1 Commit
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

βš›οΈ ISR Mechanistic Model

Python Status

A comprehensive mechanistic model of the Integrated Stress Response (ISR) pathway


πŸ“‹ Overview

This repository contains a mechanistic model of the Integrated Stress Response (ISR) pathway, implemented using PySB (Python Systems Biology). The model simulates key cellular stress response mechanisms, including TC formation, PKR activation, eIF2Ξ± phosphorylation, and downstream gene expression regulation.

βš™οΈ Requirements

  • Python: 3.9 or 3.10 (recommended for best compatibility with scientific packages)

πŸ“¦ Dependencies

The project requires the following Python packages:

πŸ”¬ Core Scientific Computing

Package Version Description
numpy >=1.20.0,<2.0.0 Numerical computing (pinned to avoid compatibility issues)
scipy >=1.7.0 Scientific computing, including interpolation and statistics
pandas >=1.3.0 Data manipulation and analysis
matplotlib >=3.4.0 Plotting and visualization
seaborn >=0.11.0 Statistical data visualization

πŸ§ͺ Systems Biology Modeling

Package Version Description
pysb >=1.10.0 Python Systems Biology modeling framework
sympy >=1.8.0 Symbolic mathematics
bionetgen >=0.8.0 BioNetGen for PySB compatibility

πŸ” Optimization and Analysis

Package Version Description
simplepso >=1.0.0 Particle Swarm Optimization
SALib >=1.4.0 Sensitivity Analysis Library

πŸ› οΈ Development Tools

Package Version Description
jupyter >=1.0.0 Jupyter notebook support
ipykernel >=6.0.0 Jupyter kernel

πŸš€ Installation

πŸ“₯ Clone the Repository

First, clone this repository to your local machine:

git clone https://github.com/altos-labs/isrmm.git
cd isrmm

🐍 Option 1: Using Conda (Recommended)

Click to expand installation steps
  1. Create a conda environment from the provided environment file:

    conda env create -f environment.yml
  2. Activate the environment:

    conda activate isrmm

πŸ“ Note: The environment.yml tries to install BioNetGen from the alubbock conda channel first. If this fails, you can manually install it with pip:

pip install bionetgen

πŸ“¦ Option 2: Using Poetry

Click to expand installation steps
  1. Install Poetry if you haven't already:

    curl -sSL https://install.python-poetry.org | python3 -
  2. Install dependencies:

    poetry install
  3. Activate the virtual environment:

    poetry shell

πŸ”§ Option 3: Using pip

Click to expand installation steps
  1. Create a virtual environment:

    python -m venv isrmm_env
    source isrmm_env/bin/activate  # On Windows: isrmm_env\Scripts\activate
  2. Install dependencies:

    pip install -r requirements.txt

πŸ“ Project Structure

isrmm/
β”œβ”€β”€ data/                              # Experimental data and processed datasets
β”‚   β”œβ”€β”€ *.csv                          # Processed experimental data
β”‚   β”œβ”€β”€ *.tsv                          # Raw experimental data
β”‚   └── *.ipynb                        # Data processing notebooks
β”œβ”€β”€ notebooks/
β”‚   β”œβ”€β”€ model/                         # Core model implementations
β”‚   β”‚   β”œβ”€β”€ ISR_model.py               # Main ISR model
β”‚   β”‚   └── ISR_model_estimate_TH.py   # Simplified model for threshold estimation
β”‚   β”œβ”€β”€ model_calibration/             # Model calibration scripts
β”‚   β”‚   β”œβ”€β”€ calibration_pso.py         # PSO-based calibration
β”‚   β”‚   └── predict_peIf2a_threshold/  # Threshold prediction analysis
β”‚   └── post_calibration_analyses/     # Post-calibration analyses
β”‚       β”œβ”€β”€ plot_bestfit_model.ipynb   # Model visualization
β”‚       β”œβ”€β”€ sensitivity_analysis/      # Sensitivity analysis
└──     └── stress_amplitude_duration/ # In silico analyses
requirements.txt                       # pip requirements
environment.yml                        # conda environment
pyproject.toml                         # Poetry configuration
Altos-Labs-Academic-Research-License-Agreement.pdf # License

🎯 Usage

πŸ–₯️ Running Model Simulations

  1. Start Jupyter notebook:

    jupyter notebook
  2. Navigate to the desired notebook in the notebooks/ directory

  3. Run the cells to execute model simulations and analyses

πŸ”‘ Key Model Files

File Description
notebooks/model/ISR_model.py Main ISR model implementation
notebooks/model_calibration/calibration_pso.py Model parameter calibration using PSO
notebooks/post_calibration_analyses/ Various post-calibration analyses

πŸ§ͺ Model Description

The ISR model simulates the Integrated Stress Response pathway, including:

  • ⚑ PKR activation and dimerization
  • πŸ”„ eIF2Ξ± phosphorylation and dephosphorylation
  • 🧬 ATF4, CHOP, DR5, and GADD34 expression
  • 🏭 Protein synthesis regulation
  • πŸ“Š Stress response dynamics

πŸ”§ Troubleshooting

⚠️ BioNetGen Installation Issues

Click to expand troubleshooting steps

If conda installation fails, try pip installation:

# First try conda (preferred)
conda install -c alubbock bionetgen

# If conda fails, use pip
pip install bionetgen

πŸ› οΈ BioNetGen Path Issues

Click to expand path configuration

If pip-installed, PySB usually cannot find BioNetGen. Ensure the BNGPATH environment variable is set to the BioNetGen path on your machine:

import os
import bionetgen
bng_path = os.path.join(os.path.dirname(bionetgen.__file__), 'bng-mac', 'BNG2.pl')
os.environ['BNGPATH'] = os.path.dirname(bng_path)

πŸ“ Notes

  • πŸ”§ Built-in Python modules (bisect, pickle, random, os, sys) are included in the requirements for completeness but don't require installation
  • 🧬 The model uses PySB for rule-based modeling and ODE simulation
  • βš™οΈ BioNetGen is required for PySB to generate network equations. Conda installation automatically configures the path.
  • πŸ”’ NumPy is pinned to version <2.0.0 to avoid compatibility issues with other packages
  • πŸ“Š Sensitivity analysis is performed using SALib
  • 🎯 Parameter optimization uses Particle Swarm Optimization (PSO)

πŸ“š Citation

If you use this model in your research, please cite: to be added

πŸ“„ License

Copyright (c) 2025 Altos Labs, Inc.

This software is licensed under the Altos Lab’s Academic Research License (Non-Commercial Use Only). Use is permitted solely for internal, non-commercial research and educational purposes. By using this software, you agree to be bound by the terms of the license. Commercial use is strictly prohibited without a separate license from Altos Labs, Inc. Full license text is available here. For commercial licensing inquiries, contact Altos Labs, Inc.


About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors