Skip to main content

cyclic-gMISpy

A Python package for calculating Genetic Minimal Intervention Sets (gMIS) and Minimal Cut Sets (MCS) in metabolic networks with regulatory cycles.

Overview

cyclic-gMISpy is a computational tool designed for identifying minimal genetic interventions in metabolic networks that consider regulatory cycles and gene-protein-reaction (GPR) rules. The package extends traditional minimal cut set analysis by incorporating regulatory network dynamics and cyclic dependencies.

Features

  • Minimal Cut Set (MCS) Calculation: Find minimal sets of reactions that disrupt metabolic objectives
  • Genetic Minimal Intervention Sets (gMIS): Identify minimal gene knockouts considering GPR rules
  • Regulatory Cycles Support: Handle cyclic dependencies in gene regulatory networks
  • Parallel Computing: Multi-threaded calculations for improved performance
  • Multiple Solvers: Support for Gurobi and CPLEX optimization solvers

Installation

Prerequisites

  • Python ≥ 3.7
  • COBRApy
  • NumPy
  • SciPy
  • pandas
  • tqdm
  • bidict
  • bonesis
  • mpbn

Required Optimization Solvers

At least one of the following optimization solvers:

  • Gurobi (recommended for performance)
  • CPLEX

Install Package

# Clone the repository
git clone https://github.com/your-username/cyclic-gMISpy.git
cd cyclic-gMISpy

# Install dependencies
pip install -r requirements.txt

# Install the package
pip install -e .

Or use pip install via piptest

pip install --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple/ cyclic-gmispy

Quick Start

Basic MCS Calculation

import cobra
from cyclic_gmis import calculateMCS

# Load your metabolic model
model = cobra.io.read_sbml_model("your_model.xml")

gMIS with Regulatory Cycles

import pandas as pd
from cyclic_gmis import calculateGMIS

# Load metabolic model
model = cobra.io.read_sbml_model("your_model.xml")

# Load regulatory network data
regulatory_df = pd.read_csv("regulatory_network.csv")

from cyclic_gmis import calculateParallelGMIS

# Run parallel gMIS calculation
parallel_results = calculateParallelGMIS(
    cobraModel=model,
    regulatory_dataframe=regulatory_df,
    numWorkers=8,
    maxKOLength=3
)

Core Components

Main Functions

  • calculateParallelGMIS(): Calculate genetic minimal intervention sets with regulatory cycles
  • calculateReadjustmentParallel(): Calculate readjustment cycles efficiently

Utilities

  • buildGMatrix(): Build gene-protein-reaction matrix
  • checkGMCS(): Validate computed genetic minimal cut sets
  • saveSolutions(): Save results in various formats
  • setSolver(): Configure optimization solver settings

Problem Definitions

  • Support for different optimization problem formulations
  • Flexible constraint handling
  • Multiple objective functions

Configuration Options

Input Data Formats

Metabolic Models

  • SBML format (via COBRApy)
  • JSON format
  • MAT files

Regulatory Networks

  • CSV files with regulator-target relationships
  • Tab-separated files
  • Custom pandas DataFrame format

Citing

If you use cyclic-gMISpy in your research, please cite:

[Pending]

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Support

For questions and support:

  • Open an issue on GitHub
  • Contact: [cjrodriguezf@unav.es]

Acknowledgments

  • COBRApy community for metabolic modeling tools
  • Bonesis framework for regulatory network analysis
  • Optimization solver providers (Gurobi, CPLEX, SCIP)

Metadata

Release files for cyclic-gmispy 0.3.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for cyclic-gmispy 0.3.3
File Size Uploaded
cyclic_gmispy-0.3.3.tar.gz 49.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for cyclic-gmispy 0.3.3
File Interpreter ABI Platform
cyclic_gmispy-0.3.3-py3-none-any.whl Python 3 none any Details

Total release size: 159.2 kB

Release files / cyclic_gmispy-0.3.3.tar.gz

Download URL cyclic_gmispy-0.3.3.tar.gz
Size 49.7 kB
Tags Source
SHA-256 checksum
How to use checksums
9a414f3f3eda7ff19d5482ea45e5b3c56e72d82df2dd23306bf7a8a57677fe74
BLAKE2b-256 checksum
How to use checksums
094324ba611b5f3d21dfee3d35dfb9431742e52011ca0a54cfa510e463647c5d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.5.10

Release files / cyclic_gmispy-0.3.3-py3-none-any.whl

Download URL cyclic_gmispy-0.3.3-py3-none-any.whl
Size 109.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7b340731322cc9bac7ab0469559262e0f2fc2483068815f27258538070a9ae27
BLAKE2b-256 checksum
How to use checksums
c95b2b05cc69ed5008ee0df310b7e7a4c676b73bd59c759bf9648bd8b8a0d6f3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.5.10

Release history Release notifications | RSS feed

This release

0.3.3 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page