Reed-CompBio / spras

Signaling Pathway Reconstruction Analysis Streamliner (SPRAS)
MIT License
11 stars 20 forks source link

Add PHONEMeS-ILP #104

Open agitter opened 1 year ago

agitter commented 1 year ago

PHONEMeS: Efficient Modeling of Signaling Networks Derived from Large-Scale Mass Spectrometry Data https://doi.org/10.1021/acs.jproteome.0c00958

https://github.com/saezlab/PHONEMeS-ILP

From the readme

PHONEMeS requires the interactive version of IBM Cplex or CBC-COIN solver as the network optimiser.

ctrlaltaf commented 1 year ago

@agitter @annaritz I've been reading up on this method and I have a few questions/points regarding the implementation of phonemes to spras which hopefully is a good start to researching this method and CPLEX compatibility.

agitter commented 1 year ago

A general comment for PHONEMeS and other methods is that these issues are an initial suggestion about pathway reconstruction algorithms we may want to include in SPRAS. After studying the method, we may conclude that their use case is too specialized or that SPRAS is not general enough to support their input data currently and that they then cannot be added.

Our approach to wrapping algorithms puts them all in a Docker container so that we don't have to consider interactions between our Python code and whatever language the pathway reconstruction algorithm in implemented in. Our Docker image would have an R environment to run PHONEMeS. The problem we find with some R packages is that they assume interactive analysis and do not provide a command line interface. That means we would have to write a small R script that is callable from the command line and include that in the Docker image too.

I would need to re-read the paper to remember what different data inputs each of these three modes requires. If we find that one or more of them is not compatible with SPRAS (e.g. the multi-time point mode), we could initially one support those that are. Lisa's initial research into KeyPathwayMiner #110 indicates that it also expects a matrix of node scores for nodes X conditions as opposed to a vector of node scores.

The prior knowledge network is what SPRAS considers to be the background network. From their supplementary text:

In PHONEMeS, the interactions are considered to be directed (kinase-to-substrate) and unsigned.

So it appears to be an unsigned, directed graph, which we will be able to support after #107. However, we need to read more carefully to see whether the edges need to be annotated with substrate information that specifies the phosphorylation site. That would make this method more specialized that others in SPRAS.